summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Change self/_cmd to be instances of ImplicitParamDecl instead of ParmVarDecl.Chris Lattner2008-06-1719-161/+203
| | | | | | Patch by David Chisnall! llvm-svn: 52422
* It's not safe to remove SUBREG_TO_REG that looks like identity copies, e.g. ↵Evan Cheng2008-06-171-11/+6
| | | | | | movl %eax, %eax on x86-64 actually does a zero-extend. llvm-svn: 52421
* Add one more 'magic' define :)Anton Korobeynikov2008-06-171-1/+2
| | | | llvm-svn: 52420
* Unbreak non-PPC buildsAnton Korobeynikov2008-06-171-4/+5
| | | | llvm-svn: 52419
* Provide generic hooks for icache invalidation. Add PPC implementation.Anton Korobeynikov2008-06-175-29/+16
| | | | | | Patch by Gary Benson! llvm-svn: 52418
* handle -arch and -isysroot correctly (like ccc-analyszer do).Nuno Lopes2008-06-171-7/+17
| | | | | | Patch by Filipe Cabecinhas llvm-svn: 52417
* revert recent patch which is causing widespread breakage.Chris Lattner2008-06-171-85/+53
| | | | llvm-svn: 52415
* Don't forget to initialize SymbolSearchingDisabled.Evan Cheng2008-06-171-0/+1
| | | | llvm-svn: 52414
* Fix typo that changed the logic to something wrong.Duncan Sands2008-06-171-1/+1
| | | | | | Spotted by Nick Lewycky. llvm-svn: 52411
* Split type expansion into ExpandInteger and ExpandFloatDuncan Sands2008-06-177-1500/+1611
| | | | | | | | rather than bundling them together. Rename FloatToInt to PromoteFloat (better, if not perfect). Reorganize files by types rather than by operations. llvm-svn: 52408
* Added link to Developer Meeting.Ted Kremenek2008-06-171-0/+6
| | | | llvm-svn: 52403
* Flush bullets in <ul>Ted Kremenek2008-06-171-0/+1
| | | | llvm-svn: 52402
* Forgot to commit the ValueTracking header file along with r52396.Matthijs Kooijman2008-06-171-0/+7
| | | | llvm-svn: 52401
* Convert <h4> to <h3>.Ted Kremenek2008-06-171-10/+10
| | | | llvm-svn: 52400
* Tighten <h2> padding.Ted Kremenek2008-06-171-1/+1
| | | | llvm-svn: 52399
* Simplify anchor.Ted Kremenek2008-06-171-1/+1
| | | | llvm-svn: 52398
* Learn IPConstProp to propagate arguments that are directly returned. StrictlyMatthijs Kooijman2008-06-171-2/+11
| | | | | | | | speaking these are not constant values. However, when a function always returns one of its arguments, then from the point of view of each caller the return value is constant (or at least a known value) and can be replaced. llvm-svn: 52397
* Learn IPConstProp to look at individual return values and propagate themMatthijs Kooijman2008-06-172-62/+106
| | | | | | | | | | | individually. Also learn IPConstProp how returning first class aggregates work, in addition to old style multiple return instructions. Modify the return-constants testscase to confirm this behaviour. llvm-svn: 52396
* 80 column fixes.Matthijs Kooijman2008-06-171-3/+3
| | | | llvm-svn: 52391
* Use a SmallVector instead of an array, since auto_ptr doesn't handle arraysMatthijs Kooijman2008-06-171-11/+8
| | | | | | properly. llvm-svn: 52390
* Remove margin above <h1>.Ted Kremenek2008-06-171-0/+1
| | | | llvm-svn: 52389
* Make "important notes" more succinct.Ted Kremenek2008-06-171-18/+13
| | | | llvm-svn: 52388
* Include the "latest build" checker link using SSI.Ted Kremenek2008-06-173-3/+8
| | | | llvm-svn: 52387
* Split static analysis page into two pages: a high-level information page ↵Ted Kremenek2008-06-172-288/+380
| | | | | | (with quick download links) and a usage page. llvm-svn: 52386
* Tweak font sizes.Ted Kremenek2008-06-171-4/+5
| | | | | | Color <h3> light blue, <h2> a dark grey. llvm-svn: 52385
* Convert <h2> -> <h3>. <h1> -> <h2> (more consistent with other pages)Ted Kremenek2008-06-171-16/+16
| | | | llvm-svn: 52384
* add a new -enable-value-prop flag for llcbeta, that enables propagationChris Lattner2008-06-173-14/+141
| | | | | | | | | | | of value info (sign/zero ext info) from one MBB to another. This doesn't handle much right now because of two limitations: 1) only handles zext/sext, not random bit propagation (no assert exists for this) 2) doesn't handle phis. llvm-svn: 52383
* Make this test actually pass, in addition to the previous patch Eli Friedman2008-06-171-6/+6
| | | | | | which made it work. llvm-svn: 52382
* Fix spelling.Duncan Sands2008-06-171-1/+1
| | | | llvm-svn: 52381
* Fix more strict-aliasing warnings.Ted Kremenek2008-06-174-176/+173
| | | | | | Fix indentation of class declarations in ExprCXX.h llvm-svn: 52380
* Only use colored output when the environment variable SCAN_BUILD_COLOR is set.Ted Kremenek2008-06-171-1/+2
| | | | llvm-svn: 52379
* This patch is motivated by numerous strict-aliasing warnings when compilingTed Kremenek2008-06-1711-269/+226
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | clang as a Release build. The big change is that all AST nodes (subclasses of Stmt) whose children are Expr* store their children as Stmt* or arrays of Stmt*. This is to remove strict-aliasing warnings when using StmtIterator. None of the interfaces of any of the classes have changed (except those with arg_iterators, see below), as the accessor methods introduce the needed casts (via cast<>). While this extra casting may seem cumbersome, it actually adds some important sanity checks throughout the codebase, as clients using StmtIterator can potentially overwrite children that are expected to be Expr* with Stmt* (that aren't Expr*). The casts provide extra sanity checks that are operational in debug builds to catch invariant violations such as these. For classes that have arg_iterators (e.g., CallExpr), the definition of arg_iterator has been replaced. Instead of it being Expr**, it is an actual class (called ExprIterator) that wraps a Stmt**, and provides the necessary operators for iteration. The nice thing about this class is that it also uses cast<> to type-checking, which introduces extra sanity checks throughout the codebase that are useful for debugging. A few of the CodeGen functions that use arg_iterator (especially from OverloadExpr) have been modified to take begin and end iterators instead of a base Expr** and the number of arguments. This matches more with the abstraction of iteration. This still needs to be cleaned up a little bit, as clients expect that ExprIterator is a RandomAccessIterator (which we may or may not wish to allow for efficiency of representation). This is a fairly large patch. It passes the tests (except CodeGen/bitfield.c, which was already broken) on both a Debug and Release build, but it should obviously be reviewed. llvm-svn: 52378
* Rather than avoiding to wrap ISD::DECLARE GV operand in X86ISD::Wrapper, ↵Evan Cheng2008-06-172-3/+22
| | | | | | simply handle it at dagisel time with x86 specific isel code. llvm-svn: 52377
* Silence uninitialized value warning in Release build.Ted Kremenek2008-06-161-4/+5
| | | | llvm-svn: 52376
* Silence uninitialized value warning during Release build.Ted Kremenek2008-06-161-4/+5
| | | | llvm-svn: 52375
* Add a missing ~ (dtor became ctor) which caused crashes on a bunch of stuff.Chris Lattner2008-06-161-2/+5
| | | | llvm-svn: 52374
* Do not issue identity copies.Evan Cheng2008-06-162-13/+36
| | | | llvm-svn: 52373
* Remove debugging message in ccc-analyzer.Ted Kremenek2008-06-162-20/+54
| | | | | | Add color diagnostics from scan-build, and indicate the number of bugs found (if any). llvm-svn: 52372
* Refine the change in r52258 for avoiding use-before-def conditionsDan Gohman2008-06-163-12/+43
| | | | | | | | | when changing the stride of a comparison so that it's slightly more precise, by having it scan the instruction list to determine if there is a use of the condition after the point where the condition will be inserted. llvm-svn: 52371
* Latest release is checker-37.Ted Kremenek2008-06-161-1/+4
| | | | llvm-svn: 52370
* Re-enable the analyzer.Ted Kremenek2008-06-161-1/+1
| | | | llvm-svn: 52367
* Remove Analysis-Apple.Ted Kremenek2008-06-161-1/+1
| | | | llvm-svn: 52366
* switch TypeHasCycleThroughItself from using an std::set to using a SmallPtrSet,Chris Lattner2008-06-161-5/+5
| | | | | | this speeds up the linking testcase in PR1860 by 44% (.379 -> 0.263) llvm-svn: 52365
* stop making PATypeHolder's so crazily.Chris Lattner2008-06-161-33/+33
| | | | llvm-svn: 52364
* Horizontal-add instructions are not commutative.Evan Cheng2008-06-162-12/+15
| | | | llvm-svn: 52363
* Move test case "uninit-msg-expr.m" from Analysis-Apple to Analysis (now ↵Ted Kremenek2008-06-162-20/+56
| | | | | | works on all platforms). llvm-svn: 52362
* Switch over to SetVector to ensure same order of iterations do not vary ↵Evan Cheng2008-06-161-8/+9
| | | | | | across runs. llvm-svn: 52361
* Move some documentation from the header file into ProgrammersManual. About ↵Gabor Greif2008-06-162-169/+183
| | | | | | to improve. llvm-svn: 52360
* Moved test case NoReturn.m from Analysis-Apple to Analysis (now works on all ↵Ted Kremenek2008-06-162-36/+78
| | | | | | platforms). llvm-svn: 52359
* use a real associative container for type association instead of usingChris Lattner2008-06-161-8/+94
| | | | | | | a vector with a linear search. This speeds up the linking testcase in PR1860 from 0.965s to 0.385s on my system. llvm-svn: 52357
OpenPOWER on IntegriCloud