summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis
Commit message (Collapse)AuthorAgeFilesLines
* Use A.append(...) instead of A.insert(A.end(), ...) when A is aDan Gohman2010-06-212-11/+10
| | | | | | SmallVector, and other SmallVector simplifications. llvm-svn: 106452
* Do not directly use function names to construct new name for named metadata.Devang Patel2010-06-211-1/+8
| | | | | | "llvm.dbg.lv.~A" is not a valid name. llvm-svn: 106438
* Restore a call to rememberInstruction which was accidentally droppedDan Gohman2010-06-191-0/+1
| | | | | | in refactoring. llvm-svn: 106398
* Fix ScalarEvolution's "exhaustive" trip count evaluation code to avoidDan Gohman2010-06-191-2/+5
| | | | | | | | assuming that loops are in canonical form, as ScalarEvolution doesn't depend on LoopSimplify itself. Also, with indirectbr not all loops can be simplified. This fixes PR7416. llvm-svn: 106389
* Factor out duplicated code for reusing and inserting casts intoDan Gohman2010-06-191-54/+46
| | | | | | a helper function. llvm-svn: 106388
* Revert r106304 (105548 and friends), which are the SCEVComplexityCompareDan Gohman2010-06-181-38/+138
| | | | | | optimizations. There is still some nondeterminism remaining. llvm-svn: 106306
* Reapply 105540, 105542, and 105548, and revert r105732.Dan Gohman2010-06-181-138/+38
| | | | llvm-svn: 106304
* Reapply 105546.Dan Gohman2010-06-181-7/+13
| | | | llvm-svn: 106302
* Reapply 105544.Dan Gohman2010-06-181-2/+2
| | | | llvm-svn: 106301
* Remove getIntegerSCEV; it's redundant with getConstant, and getConstantDan Gohman2010-06-181-7/+0
| | | | | | is more consistent with the ConstantInt API. llvm-svn: 106281
* Eliminate unnecessary uses of getZExtValue().Dan Gohman2010-06-181-1/+1
| | | | llvm-svn: 106279
* Fix a typo in a comment.Dan Gohman2010-06-181-1/+1
| | | | llvm-svn: 106260
* Simplify this code.Dan Gohman2010-06-171-11/+3
| | | | llvm-svn: 106254
* A few more places where SCEVExpander bits need to skip over debug intrinsicsJim Grosbach2010-06-161-3/+4
| | | | | | when iterating through instructions. Yet more work for rdar://7797940 llvm-svn: 106149
* Check function pointer first, before comparing function names.Devang Patel2010-06-161-0/+2
| | | | llvm-svn: 106088
* Use separate named MDNode to hold each function's local variable info.Devang Patel2010-06-161-2/+6
| | | | | | This speeds up local variable handling in DwarfDebug. llvm-svn: 106075
* Support for nested functions/classes in debug output. (Again.) Radar 7424645.Stuart Hastings2010-06-111-3/+14
| | | | llvm-svn: 105828
* Delete duplicate function.Stuart Hastings2010-06-111-12/+0
| | | | llvm-svn: 105827
* Revert 105540, 105542, 105544, 105546, and 105548 to unbreak bootstrapping.Evan Cheng2010-06-091-53/+147
| | | | llvm-svn: 105740
* Pulled CodeMetrics out of InlineCost.h and made it a bit more general, so it ↵Kenneth Uildriks2010-06-091-7/+20
| | | | | | can be reused from PartialSpecializationCost llvm-svn: 105725
* The FoldingSet hash data includes pointer values, so it isn'tDan Gohman2010-06-071-21/+28
| | | | | | | determinstic. Instead, give SCEV objects an arbitrary sequence number. llvm-svn: 105548
* Optimize this code somewhat by taking advantage of the factDan Gohman2010-06-071-7/+13
| | | | | | that the operands are sorted. llvm-svn: 105546
* Micro-optimize this, to speed up this hotspot in debug builds a little.Dan Gohman2010-06-071-2/+2
| | | | llvm-svn: 105544
* Micro-optimize this.Dan Gohman2010-06-071-2/+4
| | | | llvm-svn: 105542
* Optimize ScalarEvolution's SCEVComplexityCompare predicate: don't goDan Gohman2010-06-071-123/+14
| | | | | | | | | | | scrounging through SCEVUnknown contents and SCEVNAryExpr operands; instead just do a simple deterministic comparison of the precomputed hash data. Also, since this is more precise, it eliminates the need for the slow N^2 duplicate detection code. llvm-svn: 105540
* Create new accessors to get arguments for call/invoke instructions. It breaksBill Wendling2010-06-071-4/+4
| | | | | | | | encapsulation to force the users of these classes to know about the internal data structure of the Operands structure. It also can lead to errors, like in the MSIL writer. llvm-svn: 105539
* Revert 105492 & 105493 due to a testcase regression. Radar 7424645.Stuart Hastings2010-06-051-18/+18
| | | | llvm-svn: 105511
* LSR needs to remember inserted instructions even in postinc mode, becauseDan Gohman2010-06-051-1/+3
| | | | | | | there could be multiple subexpressions within a single expansion which require insert point adjustment. This fixes PR7306. llvm-svn: 105510
* Support for nested functions/classes in debug output. Radar 7424645.Stuart Hastings2010-06-041-18/+18
| | | | llvm-svn: 105492
* Fix normalization and de-normalization of non-affine SCEVs.Dan Gohman2010-06-041-6/+9
| | | | llvm-svn: 105480
* Fix the noalias checking so that it doesn't worry aboutDan Gohman2010-06-011-12/+12
| | | | | | an argument aliasing itself. Thanks Duncan! llvm-svn: 105288
* Fix AliasDebugger to be aware of operand values too.Dan Gohman2010-05-281-2/+10
| | | | llvm-svn: 105012
* Add lint checks for function attributes.Dan Gohman2010-05-281-30/+91
| | | | llvm-svn: 105009
* Fix lint's memcpy and memmove checks, and its basic block traversal.Dan Gohman2010-05-281-5/+8
| | | | llvm-svn: 104970
* Detect self-referential values.Dan Gohman2010-05-281-6/+19
| | | | llvm-svn: 104957
* Revert 104841, 104842, 104876 due to buildbot failures. Radar 7424645.Stuart Hastings2010-05-281-0/+12
| | | | llvm-svn: 104953
* Eli pointed out that va_arg instruction result values don'tDan Gohman2010-05-281-4/+4
| | | | | | reference the stack. llvm-svn: 104951
* Teach lint how to look through simple store+load pairs and otherDan Gohman2010-05-281-10/+75
| | | | | | | effective no-op constructs, to make it more effective on unoptimized IR. llvm-svn: 104950
* Move FindAvailableLoadedValue isSafeToLoadUnconditionally out ofDan Gohman2010-05-282-0/+236
| | | | | | | lib/Transforms/Utils and into lib/Analysis so that Analysis passes can use them. llvm-svn: 104949
* ConstantFoldConstantExpression can theoretically return null.Dan Gohman2010-05-281-4/+8
| | | | llvm-svn: 104948
* Add a lint check for returning the address of stack memory.Dan Gohman2010-05-281-0/+6
| | | | llvm-svn: 104936
* Support for nested functions/classes in debug output. Radar 7424645.Stuart Hastings2010-05-271-12/+0
| | | | llvm-svn: 104841
* Avoid counting InlineAsm as a call - it prevents loop unrolling.Jakob Stoklund Olesen2010-05-261-1/+5
| | | | | | | PR7026 Patch by Pekka Jääskeläinen! llvm-svn: 104780
* Fix Lint printing warnings multiple times. Remove the ErrorStrDan Gohman2010-05-261-5/+2
| | | | | | | option from lintModule, which was an artifact from being based on Verifier code. llvm-svn: 104765
* Reinstate checking of stackrestore, with checking for both ReadDan Gohman2010-05-261-0/+8
| | | | | | and Write, and add a comment explaining this. llvm-svn: 104756
* Stackrestore is not a load.Dan Gohman2010-05-261-5/+0
| | | | llvm-svn: 104752
* Remove a TODO which isn't practical.Dan Gohman2010-05-261-1/+0
| | | | llvm-svn: 104748
* Implement checking of the tail keyword.Dan Gohman2010-05-261-1/+9
| | | | llvm-svn: 104744
* Rename variable. add comment.Devang Patel2010-05-201-2/+5
| | | | llvm-svn: 104274
* Add support to preserve type info for the variables that are removed by the ↵Devang Patel2010-05-141-2/+7
| | | | | | optimizer. llvm-svn: 103798
OpenPOWER on IntegriCloud