aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Analysis/ScalarEvolution.cpp
Commit message (Expand)AuthorAgeFilesLines
* SCEV: missing null check fix for r132360, dragonegg crash.Andrew Trick2011-06-011-3/+3
* scev: Better sign-extend removal. Normalize postincrement recurrencesAndrew Trick2011-05-311-31/+102
* Change a few std::maps to DenseMaps.Dan Gohman2011-05-091-2/+2
* Corrects an old, old typo in a case that doesn't seem to be reached in practice.Andrew Trick2011-04-271-1/+1
* Test case and comment for PR9633.Andrew Trick2011-04-271-2/+3
* Fix for PR9633 [indvars] Assertion `isa<X>(Val) && "cast<Ty>() argument of in...Andrew Trick2011-04-271-2/+7
* Fix an iterator invalidation bug.Dan Gohman2011-04-251-9/+16
* Fix a ton of comment typos found by codespell. Patch byChris Lattner2011-04-151-1/+1
* Added isValidRewrite() to check the result of ScalarEvolutionExpander.Andrew Trick2011-03-171-0/+30
* Remove getMinusSCEVForExitTest().Andrew Trick2011-03-151-106/+3
* Propagate SCEV no-wrap flags whenever possible.Andrew Trick2011-03-151-60/+72
* Negating a recurrence preserves no-self-wrap.Andrew Trick2011-03-141-0/+11
* HowFarToZero can compute a trip count as long as the recurrence has no-self-w...Andrew Trick2011-03-141-16/+20
* Added SCEV::NoWrapFlags to manage unsigned, signed, and self wrapAndrew Trick2011-03-141-126/+187
* When SCEV can determine the loop test is X < X, set ExactBECount=0.Andrew Trick2011-03-091-1/+17
* whitespaceAndrew Trick2011-03-091-18/+18
* teach SCEV that the scale and addition of an inbounds gep don't NSW.Chris Lattner2011-02-131-2/+5
* Per discussion with Dan G, inbounds geps *certainly* can haveChris Lattner2011-02-111-3/+14
* Fix memory corruption. If one of the SCEV creation functions calls another butNick Lewycky2011-01-261-0/+2
* Add a comment.Dan Gohman2011-01-241-0/+1
* Simplify some code with no functionality change. Make the test a lot moreNick Lewycky2011-01-231-12/+4
* Use value ranges to fold ext(trunc) in SCEV when possible.Nick Lewycky2011-01-231-0/+34
* Have SCEV turn sext(x) into zext(x) when x is s>= 0. This applies many times inNick Lewycky2011-01-221-0/+4
* Similarly, analyze truncate through multiply.Nick Lewycky2011-01-191-0/+14
* Add a missed SCEV fold that is required to continue analyzing the IR producedNick Lewycky2011-01-191-0/+14
* Add a missing SCEV simplification sext(zext x) --> zext x.Nick Lewycky2011-01-191-0/+4
* some comment improvements.Chris Lattner2011-01-111-3/+4
* Temporarily revert 123133, it's causing some regressions and I'm tryingEric Christopher2011-01-111-8/+4
* the GEP faq says that only inbounds geps are guaranteed to not overflow.Chris Lattner2011-01-111-2/+3
* add a fixme: ir isn't expressive enough.Chris Lattner2011-01-091-0/+1
* Step #4 in improving trip count analysis: HowFarToZero can analyzeChris Lattner2011-01-091-2/+11
* rearrange some code, no functionality change.Chris Lattner2011-01-091-41/+45
* Step #3 to improving trip count analysis: If we foldChris Lattner2011-01-091-4/+8
* Step #2 to improve trip count analysis for loops like this:Chris Lattner2011-01-091-6/+105
* teach SCEV analysis of PHI nodes that PHI recurences formedChris Lattner2011-01-091-0/+5
* reduce indentation. Print <nuw> and <nsw> when dumping SCEV AddRec'sChris Lattner2011-01-091-49/+54
* PR5207: Change APInt methods trunc(), sext(), zext(), sextOrTrunc() andJay Foad2010-12-071-2/+2
* PR5207: Rename overloaded APInt methods set(), clear(), flip() toJay Foad2010-12-011-1/+1
* Simplify code. No change in functionality.Benjamin Kramer2010-11-201-2/+2
* Silence warning about an uninitialized variable.Benjamin Kramer2010-11-191-1/+1
* Factor code for testing whether replacing one value with anotherDuncan Sands2010-11-181-17/+2
* Introduce memoization for ScalarEvolution dominates and properlyDominatesDan Gohman2010-11-181-58/+56
* Factor out the code for purging a SCEV from all the various memoization maps.Dan Gohman2010-11-171-26/+13
* Merge the implementations of isLoopInvariant and hasComputableLoopEvolution, andDan Gohman2010-11-171-71/+58
* Make SCEV::getType() and SCEV::print non-virtual. Move SCEV::hasOperandDan Gohman2010-11-171-105/+167
* Move SCEV::dominates and properlyDominates to ScalarEvolution.Dan Gohman2010-11-171-58/+91
* Move SCEV::isLoopInvariant and hasComputableLoopEvolution to be memberDan Gohman2010-11-171-81/+135
* Before replacing a phi node with a different value, itDuncan Sands2010-11-171-11/+15
* Verify SCEVAddRecExpr's invariant in ScalarEvolution::getAddRecExprDan Gohman2010-11-171-0/+3
* Fix ScalarEvolution's range memoization to avoid using aDan Gohman2010-11-171-44/+43