summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/ScalarEvolutionNormalization.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Disable the asserts that check that normalization is perfectlyDan Gohman2010-09-031-2/+7
| | | | | | | | | invertible. ScalarEvolution's folding routines don't always succeed in canonicalizing equal expressions to a single canonical form, and this can cause these asserts to fail, even though there's no actual correctness problem. This fixes PR8066. llvm-svn: 113021
* Fix SCEV denormalization of expressions where the exit value fromDan Gohman2010-07-201-32/+55
| | | | | | | one loop is involved in the increment of an addrec for another loop. This fixes rdar://8168938. llvm-svn: 108863
* Change an argument from an Instruction* to a Value*, which is allDan Gohman2010-07-201-5/+5
| | | | | | that is needed here. llvm-svn: 108850
* Minor code cleanups.Dan Gohman2010-07-201-0/+5
| | | | llvm-svn: 108848
* Minor code simplification.Dan Gohman2010-07-201-6/+3
| | | | llvm-svn: 108793
* Fix normalization and de-normalization of non-affine SCEVs.Dan Gohman2010-06-041-6/+9
| | | | llvm-svn: 105480
* Generalize IVUsers to track arbitrary expressions rather than expressionsDan Gohman2010-04-071-0/+150
explicitly split into stride-and-offset pairs. Also, add the ability to track multiple post-increment loops on the same expression. This refines the concept of "normalizing" SCEV expressions used for to post-increment uses, and introduces a dedicated utility routine for normalizing and denormalizing expressions. This fixes the expansion of expressions which are post-increment users of more than one loop at a time. More broadly, this takes LSR another step closer to being able to reason about more than one loop at a time. llvm-svn: 100699
OpenPOWER on IntegriCloud