| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Add Expr::EvaluateAsLValue which will (believe it or not) try to evaluate an ↵ | Anders Carlsson | 2009-04-10 | 1 | -0/+6 |
| | | | | | | | Expr as an LValue. llvm-svn: 68763 | ||||
| * | Fix thinko noticed by Chris. | Anders Carlsson | 2009-04-10 | 1 | -1/+1 |
| | | | | | llvm-svn: 68762 | ||||
| * | Use the same alignment for reference declarations as for pointer declarations. | Anders Carlsson | 2009-04-10 | 1 | -2/+5 |
| | | | | | llvm-svn: 68761 | ||||
| * | PCH serialization/deserialization of the source manager. With this | Douglas Gregor | 2009-04-10 | 3 | -0/+241 |
| | | | | | | | | | | | | | improvement, source locations read from the PCH file will properly resolve to the source files that were used to build the PCH file itself. Once we have the preprocessor state stored in the PCH file, source locations that refer to macro instantiations that occur in the PCH file should have the appropriate instantiation information. llvm-svn: 68758 | ||||
| * | Fix: <rdar://problem/6776949> Branch condition evaluates to an uninitialized ↵ | Ted Kremenek | 2009-04-10 | 1 | -1/+25 |
| | | | | | | | | | value (argc is guaranteed to be >= 1) The analyzer now adds the precondition that the first argument of 'main' is > 0. llvm-svn: 68757 | ||||
| * | Make messages consistent. | Chris Lattner | 2009-04-10 | 1 | -1/+1 |
| | | | | | llvm-svn: 68756 | ||||
| * | reject codegen of __thread variables as unimplemented, rdar://6775265 | Chris Lattner | 2009-04-10 | 3 | -4/+11 |
| | | | | | llvm-svn: 68755 | ||||
| * | Implement attribute "analyzer_noreturn" (<rdar://problem/6777003>). This allows | Ted Kremenek | 2009-04-10 | 3 | -6/+21 |
| | | | | | | | | clients of the analyzer to designate custom assertion routines as "noreturn" functions from the analyzer's perspective but not the compiler's. llvm-svn: 68746 | ||||
| * | Implementation of pre-compiled headers (PCH) based on lazy | Douglas Gregor | 2009-04-09 | 6 | -1/+1384 |
| | | | | | | | | | | | | | | | | | | | | de-serialization of abstract syntax trees. PCH support serializes the contents of the abstract syntax tree (AST) to a bitstream. When the PCH file is read, declarations are serialized as-needed. For example, a declaration of a variable "x" will be deserialized only when its VarDecl can be found by a client, e.g., based on name lookup for "x" or traversing the entire contents of the owner of "x". This commit provides the framework for serialization and (lazy) deserialization, along with support for variable and typedef declarations (along with several kinds of types). More declarations/types, along with important auxiliary structures (source manager, preprocessor, etc.), will follow. llvm-svn: 68732 | ||||
| * | - Move ownership of MemRegionManager into ValueManager. | Ted Kremenek | 2009-04-09 | 6 | -48/+31 |
| | | | | | | | | - Pull SVal::GetConjuredSymbol() and friends into ValueManager. This greatly simplifies the calling interface to clients. llvm-svn: 68731 | ||||
| * | Add @encode support for complex types. | Anders Carlsson | 2009-04-09 | 1 | -2/+5 |
| | | | | | llvm-svn: 68729 | ||||
| * | Propagate the ASTContext to various AST traversal and lookup functions. | Douglas Gregor | 2009-04-09 | 32 | -334/+420 |
| | | | | | | | No functionality change (really). llvm-svn: 68726 | ||||
| * | Add some FIXMEs for missing checks. | Eli Friedman | 2009-04-09 | 1 | -0/+7 |
| | | | | | llvm-svn: 68725 | ||||
| * | Simple DeclContext's internal representation by always storing a | Douglas Gregor | 2009-04-09 | 1 | -103/+14 |
| | | | | | | | | | 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. llvm-svn: 68715 | ||||
| * | Remove SVal::MakeZero and replace it with ValueManager::makeZeroVal. | Ted Kremenek | 2009-04-09 | 2 | -2/+3 |
| | | | | | llvm-svn: 68711 | ||||
| * | analyzer: Introduce a new class, ValueManager, that serves as an aggregate | Ted Kremenek | 2009-04-09 | 2 | -17/+13 |
| | | | | | | | | | | | | "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. llvm-svn: 68709 | ||||
| * | stop using loc::SymbolVal and clean up code with new API. | Zhongxing Xu | 2009-04-09 | 2 | -34/+21 |
| | | | | | llvm-svn: 68703 | ||||
| * | clean up code with new API. | Zhongxing Xu | 2009-04-09 | 1 | -4/+2 |
| | | | | | llvm-svn: 68701 | ||||
| * | clean up code with new API. | Zhongxing Xu | 2009-04-09 | 1 | -4/+2 |
| | | | | | llvm-svn: 68700 | ||||
| * | clean up code with new API. | Zhongxing Xu | 2009-04-09 | 1 | -4/+2 |
| | | | | | llvm-svn: 68699 | ||||
| * | clean up code with new API. | Zhongxing Xu | 2009-04-09 | 1 | -8/+2 |
| | | | | | llvm-svn: 68698 | ||||
| * | stop using loc::SymbolVal. | Zhongxing Xu | 2009-04-09 | 1 | -2/+3 |
| | | | | | llvm-svn: 68697 | ||||
| * | stop using loc::SymbolVal. | Zhongxing Xu | 2009-04-09 | 1 | -1/+3 |
| | | | | | llvm-svn: 68696 | ||||
| * | stop using loc::SymbolVal. | Zhongxing Xu | 2009-04-09 | 1 | -2/+4 |
| | | | | | llvm-svn: 68695 | ||||
| * | clean up code with new API. | Zhongxing Xu | 2009-04-09 | 1 | -6/+2 |
| | | | | | llvm-svn: 68694 | ||||
| * | clean up code with new API. | Zhongxing Xu | 2009-04-09 | 1 | -21/+5 |
| | | | | | llvm-svn: 68693 | ||||
| * | Add a new method because sometimes the type of the conjured symbol is not the | Zhongxing Xu | 2009-04-09 | 2 | -1/+14 |
| | | | | | | | type of the expression where we create the symbol. llvm-svn: 68692 | ||||
| * | make a conjured symbol as the original code. | Zhongxing Xu | 2009-04-09 | 1 | -2/+2 |
| | | | | | llvm-svn: 68691 | ||||
| * | clean up code with new API. | Zhongxing Xu | 2009-04-09 | 1 | -8/+4 |
| | | | | | llvm-svn: 68687 | ||||
| * | Fix a null pointer dereference error due to state caching in a loop involving | Ted Kremenek | 2009-04-09 | 1 | -7/+6 |
| | | | | | | | sending a message to a nil receiver. llvm-svn: 68686 | ||||
| * | Create a symbolic region instead of a loc::SymbolVal. This is a continued step | Zhongxing Xu | 2009-04-09 | 2 | -14/+12 |
| | | | | | | | to eliminate the use of loc::SymbolVal. llvm-svn: 68685 | ||||
| * | GRExprEngine: Don't try to reason about the size of 'void' for the return type | Ted Kremenek | 2009-04-09 | 1 | -33/+38 |
| | | | | | | | of messages sent to nil. llvm-svn: 68683 | ||||
| * | Another ParentMap bug: only the right side of a comma expression is consumed. | Ted Kremenek | 2009-04-09 | 1 | -2/+2 |
| | | | | | llvm-svn: 68680 | ||||
| * | Fix another regression introduced by changes to the analyzer's reasoning about | Ted Kremenek | 2009-04-09 | 1 | -11/+12 |
| | | | | | | | nil receivers in message expressions. llvm-svn: 68672 | ||||
| * | Refactor/cleanup reasoning of nil receivers in message expressions. | Ted Kremenek | 2009-04-09 | 1 | -28/+38 |
| | | | | | llvm-svn: 68661 | ||||
| * | Driver: Split out CPP specific options for clang so that we don't end | Daniel Dunbar | 2009-04-08 | 2 | -246/+264 |
| | | | | | | | | | up adding them twice when running with -no-integrated-cpp or -save-temps. - <rdar://problem/6766636> -save-temps falls over with prefix headers llvm-svn: 68660 | ||||
| * | Fix <rdar://problem/6770998> make cast of super illegal (again:-) | Steve Naroff | 2009-04-08 | 1 | -1/+1 |
| | | | | | llvm-svn: 68659 | ||||
| * | Use the new EmitCallArgs function. No indented functionality change. | Anders Carlsson | 2009-04-08 | 4 | -11/+7 |
| | | | | | llvm-svn: 68652 | ||||
| * | Added a FIXME. | Fariborz Jahanian | 2009-04-08 | 1 | -0/+2 |
| | | | | | llvm-svn: 68646 | ||||
| * | finish the implementation of -imacros. The driver still needs to be hooked up. | Chris Lattner | 2009-04-08 | 1 | -4/+10 |
| | | | | | llvm-svn: 68640 | ||||
| * | Add code for emitting call arguments (not used yet). | Anders Carlsson | 2009-04-08 | 2 | -0/+47 |
| | | | | | llvm-svn: 68639 | ||||
| * | We weren't generating correct code for calls to variadic member functions. | Anders Carlsson | 2009-04-08 | 1 | -6/+5 |
| | | | | | llvm-svn: 68635 | ||||
| * | Fix buffer overrun when laying out synthesized ivars. | Daniel Dunbar | 2009-04-08 | 1 | -1/+2 |
| | | | | | llvm-svn: 68634 | ||||
| * | Fixed a problem using property syntax on a 'super' | Fariborz Jahanian | 2009-04-08 | 1 | -3/+5 |
| | | | | | | | used as receiver. llvm-svn: 68631 | ||||
| * | Use presumed location to get line number info. | Devang Patel | 2009-04-08 | 1 | -3/+3 |
| | | | | | llvm-svn: 68630 | ||||
| * | Enhance analyzer reasoning about sending messages to nil. A nil receiver ↵ | Ted Kremenek | 2009-04-08 | 2 | -2/+35 |
| | | | | | | | returns 0 for scalars of size <= sizeof(void*). llvm-svn: 68629 | ||||
| * | Fix bug in ParentMap::isConsumedExpr. A BinaryOperator always "consumes" the | Ted Kremenek | 2009-04-08 | 1 | -1/+3 |
| | | | | | | | | value of its subexpressions unless it is a comma (in which case it doesn't consume the left subexpression). llvm-svn: 68628 | ||||
| * | reject the #__include_macros directive unless it comes from the | Chris Lattner | 2009-04-08 | 1 | -1/+20 |
| | | | | | | | predefines buffer. llvm-svn: 68627 | ||||
| * | Add initial support for -imacros. Right now it has the same semantics as | Chris Lattner | 2009-04-08 | 2 | -2/+6 |
| | | | | | | | -include, but that will be fixed soon. llvm-svn: 68625 | ||||
| * | More fixes to builtin preprocessor defines. | Daniel Dunbar | 2009-04-08 | 2 | -2/+23 |
| | | | | | | | | | | | | | | | | | | | | | | - 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. llvm-svn: 68621 | ||||

