aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-04-09More cleanups.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68718 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Add link from internals manual to PTH documentation.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68717 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Minor cleanups. Added a blurb about the advantages of fast PTH file generation.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68716 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Simple DeclContext's internal representation by always storing aDouglas Gregor
StoredDeclsMap, instead of using the it's-an-array-or-its-a-map trick. I'll verify that performance isn't impacted later; for now, I need the common representation. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68715 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Remove SVal::MakeZero and replace it with ValueManager::makeZeroVal.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68711 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Add more builtin definitions, including strcmp.Daniel Dunbar
- PR3964. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68710 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09analyzer: Introduce a new class, ValueManager, that serves as an aggregateTed Kremenek
"manager of symbolic values", wrapping BasicValueFactory, SymbolManager, and MemRegionManager. While these individual managers nicely separate functionality in the analyzer, constructing symbolic values can sometimes be cumbersome because it requires using multiple managers at once. The goal of this class is to create some factory methods to create SVals that require the use of these different managers, thus (hopefully) simplifying the analyzer API for clients. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68709 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Update analyzer build.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68707 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09stop using loc::SymbolVal and clean up code with new API.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68703 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09clean up code with new API.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68701 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09clean up code with new API.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68700 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09clean up code with new API.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68699 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09clean up code with new API.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68698 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09stop using loc::SymbolVal.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68697 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09stop using loc::SymbolVal.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68696 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09stop using loc::SymbolVal.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68695 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09clean up code with new API.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68694 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09clean up code with new API.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68693 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Add a new method because sometimes the type of the conjured symbol is not theZhongxing Xu
type of the expression where we create the symbol. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68692 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09make a conjured symbol as the original code.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68691 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09clean up code with new API.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68687 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Fix a null pointer dereference error due to state caching in a loop involvingTed Kremenek
sending a message to a nil receiver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68686 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Create a symbolic region instead of a loc::SymbolVal. This is a continued stepZhongxing Xu
to eliminate the use of loc::SymbolVal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68685 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09GRExprEngine: Don't try to reason about the size of 'void' for the return typeTed Kremenek
of messages sent to nil. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68683 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Another ParentMap bug: only the right side of a comma expression is consumed.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68680 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Fix another regression introduced by changes to the analyzer's reasoning aboutTed Kremenek
nil receivers in message expressions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68672 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Make -include, -imacros paths absolute in Frontend.Daniel Dunbar
- Otherwise paths will be resolved relative to the main input file, which is incorrect. - I don't know how to make a reasonable test case for this with our testing infrastructure. - PR3395 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68665 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-09Refactor/cleanup reasoning of nil receivers in message expressions.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68661 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Driver: Split out CPP specific options for clang so that we don't endDaniel Dunbar
up adding them twice when running with -no-integrated-cpp or -save-temps. - <rdar://problem/6766636> -save-temps falls over with prefix headers git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68660 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Fix <rdar://problem/6770998> make cast of super illegal (again:-)Steve Naroff
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68659 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Use the new EmitCallArgs function. No indented functionality change.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68652 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Force triple for these tests.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68651 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08add driver support for -Wno-trigraphsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68650 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08add support for -Wtrigraphs and -Wno-trigraphs.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68649 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Added a FIXME.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68646 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08add driver headers to xcode projChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68642 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08implement -imacros support in driver.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68641 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08finish the implementation of -imacros. The driver still needs to be hooked up.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68640 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Add code for emitting call arguments (not used yet).Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68639 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08We weren't generating correct code for calls to variadic member functions.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68635 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Fix buffer overrun when laying out synthesized ivars.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68634 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08According to the GCC man page, all -imacros are included before any -include's.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68633 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08properly escape filenames when generating implicit #includes, this handlesChris Lattner
things like " in paths etc. Found by inspection. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68632 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Fixed a problem using property syntax on a 'super'Fariborz Jahanian
used as receiver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68631 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Use presumed location to get line number info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68630 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Enhance analyzer reasoning about sending messages to nil. A nil receiver ↵Ted Kremenek
returns 0 for scalars of size <= sizeof(void*). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68629 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Fix bug in ParentMap::isConsumedExpr. A BinaryOperator always "consumes" theTed Kremenek
value of its subexpressions unless it is a comma (in which case it doesn't consume the left subexpression). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68628 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08reject the #__include_macros directive unless it comes from the Chris Lattner
predefines buffer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68627 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08Add initial support for -imacros. Right now it has the same semantics asChris Lattner
-include, but that will be fixed soon. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68625 91177308-0d34-0410-b5e6-96231b3b80d8
2009-04-08More fixes to builtin preprocessor defines.Daniel Dunbar
- Add -static-define option driver can use when __STATIC__ should be defined (instead of __DYNAMIC__). - Don't set __OPTIMIZE_SIZE__ on Os, __OPTIMIZE_SIZE__ is tied to Oz. - Set __NO_INLINE__ following GCC 4.2. - Set __GNU_GNU_INLINE__ or __GNU_STDC_INLINE__ following GCC 4.2. - Set __EXCEPTIONS for Objective-C NonFragile ABI. - Set __STRICT_ANSI__ for standard conforming modes. - I added a clang style test case in utils for this, but its not particularly portable and I don't think it belongs in the test suite. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68621 91177308-0d34-0410-b5e6-96231b3b80d8