Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | When profiling an ExplodedNode, don't re-profile the state: they have | Ted Kremenek | 2009-08-06 | 1 | -1/+1 | |
| | | | | | | already been uniqued. llvm-svn: 78279 | |||||
* | Support nested-name-specifiers for C++ member access expressions, e.g., | Douglas Gregor | 2009-08-06 | 7 | -34/+143 | |
| | | | | | | | | this->Base::foo from James Porter! llvm-svn: 78278 | |||||
* | add support for FreeBSD's format(printf0,x,y) attribute; allows null format ↵ | Ryan Flynn | 2009-08-06 | 3 | -3/+20 | |
| | | | | | | string. llvm-svn: 78276 | |||||
* | First pass at friend semantics. | John McCall | 2009-08-06 | 8 | -43/+310 | |
| | | | | llvm-svn: 78274 | |||||
* | Completely remove the code using region cast. | Zhongxing Xu | 2009-08-06 | 1 | -59/+0 | |
| | | | | llvm-svn: 78273 | |||||
* | Add additional library paths for Linux distros on mixed 32/64-bit systems. | Daniel Dunbar | 2009-08-06 | 1 | -0/+9 | |
| | | | | | | - Patch by Carl-Daniel Hailfinger. llvm-svn: 78272 | |||||
* | As GRState seems general enough, it is time to merge some template classes | Zhongxing Xu | 2009-08-06 | 9 | -237/+245 | |
| | | | | | | | and their impl base classes. This can greatly simply some code of the core analysis engine. This patch merges ExplodedNodeImpl into ExplodedNode. llvm-svn: 78270 | |||||
* | Fix clang breakage, CGF can be null in this context. | Daniel Dunbar | 2009-08-06 | 1 | -1/+1 | |
| | | | | llvm-svn: 78269 | |||||
* | Implement lazy "copying" of structures and arrays in RegionStore. While | Ted Kremenek | 2009-08-06 | 3 | -38/+209 | |
| | | | | | | | | | | | | | | | | RegionStore already lazily abstracted the contents of arrays and structs, when doing an assignment from one array/struct to another we did an explicit element-wise copy, which resulted in a loss of laziness and huge performance problem when analyzing many code bases. Now RegionStoreManager handles such assignments using a new SVal could 'LazyCompoundSVal', which basically means the value of a given struct or array (a MemRegion*) in a specific state (GRState). When we do a load from a field whose encompassing struct binds to a LazyCompoundSVal, we essentially do a field lookup in the original structure. This means we have essentially zero copying of data for structs/arrays and everything stays lazy. llvm-svn: 78268 | |||||
* | Patch to optimize away copy constructor call when | Fariborz Jahanian | 2009-08-06 | 1 | -1/+14 | |
| | | | | | | appropriate. llvm-svn: 78267 | |||||
* | Fixup object layout when we have a primary base (it goes first). Start ↵ | Mike Stump | 2009-08-06 | 1 | -7/+11 | |
| | | | | | | | | preping for virtual base layout. llvm-svn: 78265 | |||||
* | Update for LLVM API change. | Owen Anderson | 2009-08-05 | 15 | -88/+113 | |
| | | | | llvm-svn: 78259 | |||||
* | Refactor some bits. | Mike Stump | 2009-08-05 | 1 | -1/+1 | |
| | | | | llvm-svn: 78254 | |||||
* | Calculate the primary base class better and use that when laying down | Mike Stump | 2009-08-05 | 3 | -19/+156 | |
| | | | | | | the vtable. Still a work in progress. llvm-svn: 78252 | |||||
* | Fix -fno-omit-frame-pointer bug Eli noticed. | Benjamin Kramer | 2009-08-05 | 1 | -2/+2 | |
| | | | | llvm-svn: 78233 | |||||
* | Get rid of "smart" quotes. Per report on cfe-dev. | Eli Friedman | 2009-08-05 | 5 | -25/+25 | |
| | | | | llvm-svn: 78230 | |||||
* | Use feedback from RegionStoreSubRegionMap::add() to prune off adding a super | Ted Kremenek | 2009-08-05 | 1 | -7/+11 | |
| | | | | | | region to the worklist used to create the subregion map. llvm-svn: 78228 | |||||
* | Fix canonical type construction for function types with the noreturn | Douglas Gregor | 2009-08-05 | 1 | -1/+2 | |
| | | | | | | attribute. Fixes PR4865. llvm-svn: 78224 | |||||
* | Handle destruction of temporaries used in default argument | Fariborz Jahanian | 2009-08-05 | 2 | -0/+2 | |
| | | | | | | construction of constructor calls. llvm-svn: 78222 | |||||
* | Patch to improve ir-gen for constructors with default argument | Fariborz Jahanian | 2009-08-05 | 5 | -17/+37 | |
| | | | | | | expressions and a test case. llvm-svn: 78213 | |||||
* | Translate -mcmodel=X to -code-model X and pass it to clang-cc. Patch by ↵ | Benjamin Kramer | 2009-08-05 | 1 | -0/+5 | |
| | | | | | | Pawel Worach! llvm-svn: 78190 | |||||
* | Add support for the -fno-omit-frame-pointer option. Patch by Roman Divacky! | Benjamin Kramer | 2009-08-05 | 1 | -1/+2 | |
| | | | | llvm-svn: 78188 | |||||
* | Introduce the canonical type smart pointers, and use them in a few places to | Douglas Gregor | 2009-08-05 | 8 | -38/+42 | |
| | | | | | | tighten up the static type system. llvm-svn: 78164 | |||||
* | Fix a bug in RegionStoreSubRegionManager::add() where multiple subregions ↵ | Ted Kremenek | 2009-08-05 | 1 | -2/+4 | |
| | | | | | | wouldn't correctly get registered in the SubRegion map. llvm-svn: 78162 | |||||
* | cgobjcgnu was making invalid common globals. | Chris Lattner | 2009-08-05 | 1 | -2/+2 | |
| | | | | llvm-svn: 78161 | |||||
* | weak globals that are const should get weak_odr linkage. | Chris Lattner | 2009-08-05 | 1 | -6/+19 | |
| | | | | | | add a fixme about C++ const. llvm-svn: 78159 | |||||
* | rdar://7119244 - globals with an explicit section specified don't get | Chris Lattner | 2009-08-05 | 1 | -1/+2 | |
| | | | | | | common linkage. llvm-svn: 78158 | |||||
* | If the UnaryOperator has non-location type, use its type to create the | Zhongxing Xu | 2009-08-05 | 1 | -2/+11 | |
| | | | | | | | | | constant value. If the UnaryOperator has location type, create the constant with int type and pointer width. This fixes the bug that all pointer increments 'p++' evaluated to Unknown. llvm-svn: 78147 | |||||
* | Remove an unused header. | Mike Stump | 2009-08-05 | 1 | -1/+0 | |
| | | | | llvm-svn: 78140 | |||||
* | Support for use of default argument in constructors. | Fariborz Jahanian | 2009-08-05 | 2 | -3/+28 | |
| | | | | | | work in progress. llvm-svn: 78132 | |||||
* | Move the template instantiation logic for template arguments into the | Douglas Gregor | 2009-08-04 | 2 | -50/+89 | |
| | | | | | | | | | | general tree transformation. Also, implement template instantiation for parameter packs. In addition, introduce logic to enter the appropriate context for subexpressions that are not potentially evaluated. llvm-svn: 78114 | |||||
* | vtable building for simple inheritance. Still in progress. | Mike Stump | 2009-08-04 | 1 | -1/+18 | |
| | | | | llvm-svn: 78110 | |||||
* | Canonicalize else. | Mike Stump | 2009-08-04 | 12 | -169/+114 | |
| | | | | llvm-svn: 78102 | |||||
* | Will I ever get used to CamelCase? Will I ever like capitols for | Mike Stump | 2009-08-04 | 1 | -7/+5 | |
| | | | | | | | | | random variables? --This line, and those below, will be ignored-- M lib/CodeGen/CGCXX.cpp llvm-svn: 78094 | |||||
* | Add armv7 support. | Mike Stump | 2009-08-04 | 1 | -2/+8 | |
| | | | | llvm-svn: 78092 | |||||
* | Revert the fix for PR3800, it broke things. | Anders Carlsson | 2009-08-04 | 1 | -2/+5 | |
| | | | | llvm-svn: 78084 | |||||
* | Some code refactoring. Be more generous in issuance of warning | Fariborz Jahanian | 2009-08-04 | 1 | -24/+34 | |
| | | | | | | on method type mismatches per Chris's comment. llvm-svn: 78075 | |||||
* | Refactor template instantiation for types into a generic tree | Douglas Gregor | 2009-08-04 | 3 | -444/+1206 | |
| | | | | | | | | | transformation template (TreeTransform) that handles the transformation and reconstruction of AST nodes. Template instantiation for types is a (relatively small) customization of the generic tree transformation. llvm-svn: 78071 | |||||
* | Simplify alignment handling in the record builder. | Anders Carlsson | 2009-08-04 | 1 | -12/+18 | |
| | | | | llvm-svn: 78069 | |||||
* | Update for LLVM API change | Daniel Dunbar | 2009-08-04 | 1 | -2/+1 | |
| | | | | llvm-svn: 78044 | |||||
* | Compare matching selectors in current and | Fariborz Jahanian | 2009-08-04 | 2 | -0/+37 | |
| | | | | | | | super class(s) and warn on any parameter type mismatch if potentially unsafe. llvm-svn: 78029 | |||||
* | Emit a special 'BUGMETAEND' comment to aid in the postprocessing of HTML bug ↵ | Ted Kremenek | 2009-08-03 | 1 | -39/+20 | |
| | | | | | | reports. llvm-svn: 78021 | |||||
* | Per advice that Doug Gregor gave me several months ago, clean up the | Ted Kremenek | 2009-08-03 | 3 | -57/+34 | |
| | | | | | | | | | | | | | implementation of '#pragma unused' by not constructing intermediate DeclRefExprs, but instead do the name lookup directly. The implementation is greatly simplified. Along the way, degrade '#pragma unused(undeclaredvariable)' to a warning instead of being a hard error. This implements: <rdar://problem/6761874> [sema] allow #pragma unused to reference undefined variable (with warning) llvm-svn: 78019 | |||||
* | Make sure UTF-16 strings end with a 16-bit null (as opposed to 8-bit). | Daniel Dunbar | 2009-08-03 | 1 | -0/+3 | |
| | | | | llvm-svn: 78001 | |||||
* | Handle disgusting corner case where a byte is loaded from the address of a ↵ | Ted Kremenek | 2009-08-03 | 1 | -1/+3 | |
| | | | | | | function. llvm-svn: 78000 | |||||
* | When generating cleanup blocks for Obj-C @finally, mark them as catch all blocks | Daniel Dunbar | 2009-08-03 | 1 | -1/+4 | |
| | | | | | | | | from the perspective of LLVM exception handling. Otherwise the C++ personality function may decide not to run them, if it only detects cleanup handlers. - Test case for this is exceptions.m in llvm-test. llvm-svn: 77999 | |||||
* | assert(nyi) on attempt to destruct an array of objects. | Fariborz Jahanian | 2009-08-03 | 1 | -2/+6 | |
| | | | | llvm-svn: 77993 | |||||
* | ir-gen for destructor calls. | Fariborz Jahanian | 2009-08-03 | 1 | -0/+12 | |
| | | | | llvm-svn: 77991 | |||||
* | Refactor methods on DeclSpec to take a diagnostic& parameter, and reflect this | John McCall | 2009-08-03 | 6 | -142/+209 | |
| | | | | | | | | elsewhere. Very slightly decouples DeclSpec users from knowing the exact diagnostics to report, and makes it easier to provide different diagnostics in some places. llvm-svn: 77990 | |||||
* | Minor renaming/refactoring. No change in functionality. | Fariborz Jahanian | 2009-08-03 | 4 | -12/+10 | |
| | | | | llvm-svn: 77985 |