aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/ScalarEvolution.cpp
AgeCommit message (Expand)Author
2010-10-29Make ScalarEvolution::forgetLoop forget all contained loops too, becauseDan Gohman
2010-10-19Get rid of static constructors for pass registration. Instead, every pass ex...Owen Anderson
2010-10-12Begin adding static dependence information to passes, which will allow us toOwen Anderson
2010-10-07Now with fewer extraneous semicolons!Owen Anderson
2010-10-04Don't add the operand count to SCEV uniquing data; FoldingSetNodeIDDan Gohman
2010-08-31Reapply r112432, now that the real problem is addressed.Dan Gohman
2010-08-31Reapply r112433, now that the real problem is addressed.Dan Gohman
2010-08-31Revert r110916. This patch is buggy because the code inside theDan Gohman
2010-08-31Revert r112432. It appears to be exposing a problem in the emacs build.Dan Gohman
2010-08-31Speculatively revert r112433.Dan Gohman
2010-08-29Restructure the {A,+,B}<L> * {C,+,D}<L> folding so that it foldsDan Gohman
2010-08-29Batch up subtracts along with adds, when analyzing long chains ofDan Gohman
2010-08-29Micro-optimize GroupByComplexity.Dan Gohman
2010-08-29Hold AddRec->getLoop() in a variable, to make the Mul code more consistentDan Gohman
2010-08-29Rename a variable, for consistency.Dan Gohman
2010-08-29Use iterators instead of indices.Dan Gohman
2010-08-28Fix an index calculation thinko.Dan Gohman
2010-08-27When merging adjacent operands, scan ahead and merge all equalDan Gohman
2010-08-27Make the {A,+,B}<L> + {C,+,D}<L> --> Other + {A+C,+,B+D}<L>Dan Gohman
2010-08-27Switch ScalarEvolution's main Value*->SCEV* map from std::mapDan Gohman
2010-08-27Optimize SCEVComplexityCompare. Use a 3-way return instead of a 2-wayDan Gohman
2010-08-16To create a copy of a SmallVector with an element removed from theDan Gohman
2010-08-16Tidy whitespace.Dan Gohman
2010-08-16Add a comment.Dan Gohman
2010-08-16Use const_iterator in a few places.Dan Gohman
2010-08-16Use iterators instead of indices in a few more places.Dan Gohman
2010-08-16Micro-optimize SCEVConstant comparison.Dan Gohman
2010-08-16Move SCEVNAryExpr's virtual member functions out of line, and convertDan Gohman
2010-08-16Use iterators instead of indices in simple cases.Dan Gohman
2010-08-16Avoid gratuitous inefficiency in ifndef NDEBUG code.Dan Gohman
2010-08-16Make one getAddExpr call when analyzing a+b+c+d+e+... instead of oneDan Gohman
2010-08-16Delete an unused function.Dan Gohman
2010-08-13Various optimizations. Don't compare two loops' depthsDan Gohman
2010-08-13When testing whether one loop contains another, test this directlyDan Gohman
2010-08-13Add a const.Dan Gohman
2010-08-13When creating a symmetric SCEV with a constant operand, putDan Gohman
2010-08-13An add recurrence is loop-invariant in any loop inside of itsDan Gohman
2010-08-12Optimize ScalarEvolution::getAddExpr's operand factoring code byDan Gohman
2010-08-12Hoist some loop-invariant code out of a hot loop.Dan Gohman
2010-08-12Optimize ScalarEvolution::getAddExpr's duplicate operand detectionDan Gohman
2010-08-11When analyzing loop exit conditions combined with and and or, don'tDan Gohman
2010-08-10Rename and reorder the arguments to isImpliedCond, for consistency and clarity.Dan Gohman
2010-08-06Reapply r110396, with fixes to appease the Linux buildbot gods.Owen Anderson
2010-08-06Revert r110396 to fix buildbots.Owen Anderson
2010-08-05Don't use PassInfo* as a type identifier for passes. Instead, use the addres...Owen Anderson
2010-08-04Fix a minor bug which resulted in intermediate calculationsDan Gohman
2010-08-02Make SCEVUnknown a CallbackVH, so that it can be notified directlyDan Gohman
2010-08-02Prefix `next' iterator operation with `llvm::'.Oscar Fuentes
2010-07-29Speculatively revert r109705 since it seems to be causing some build botEric Christopher
2010-07-29Factor out some of the code for updating old SCEVUnknown values, andDan Gohman