#
f4b14a2b |
| 19-Jul-2011 |
Jay Foad <jay.foad@gmail.com> |
Use ArrayRef in ConstantFoldInstOperands and ConstantFoldCall.
llvm-svn: 135477
|
#
229907cd |
| 18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
land David Blaikie's patch to de-constify Type, with a few tweaks.
llvm-svn: 135375
|
#
8ef3ad04 |
| 01-Jun-2011 |
Andrew Trick <atrick@apple.com> |
SCEV: missing null check fix for r132360, dragonegg crash.
llvm-svn: 132416
|
#
812276ee |
| 31-May-2011 |
Andrew Trick <atrick@apple.com> |
scev: Better sign-extend removal. Normalize postincrement recurrences so that their sign extended forms are congruent when no overflow occurs.
llvm-svn: 132360
|
#
0daf687e |
| 09-May-2011 |
Dan Gohman <gohman@apple.com> |
Change a few std::maps to DenseMaps.
llvm-svn: 131088
|
#
7d1eea86 |
| 27-Apr-2011 |
Andrew Trick <atrick@apple.com> |
Corrects an old, old typo in a case that doesn't seem to be reached in practice.
llvm-svn: 130316
|
#
01eff820 |
| 27-Apr-2011 |
Andrew Trick <atrick@apple.com> |
Test case and comment for PR9633.
llvm-svn: 130294
|
#
759ba080 |
| 27-Apr-2011 |
Andrew Trick <atrick@apple.com> |
Fix for PR9633 [indvars] Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed.
Added a type check in ScalarEvolution::computeSCEVAtScope to handle the case in which operands
Fix for PR9633 [indvars] Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed.
Added a type check in ScalarEvolution::computeSCEVAtScope to handle the case in which operands of an AddRecExpr in the current scope are folded.
llvm-svn: 130271
show more ...
|
#
6acd95b3 |
| 25-Apr-2011 |
Dan Gohman <gohman@apple.com> |
Fix an iterator invalidation bug.
llvm-svn: 130166
|
#
0ab5e2cd |
| 15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
Fix a ton of comment typos found by codespell. Patch by Luis Felipe Strano Moraes!
llvm-svn: 129558
|
Revision tags: llvmorg-2.9.0, llvmorg-2.9.0-rc3, llvmorg-2.9.0-rc2 |
|
#
87716c93 |
| 17-Mar-2011 |
Andrew Trick <atrick@apple.com> |
Added isValidRewrite() to check the result of ScalarEvolutionExpander.
SCEV may generate expressions composed of multiple pointers, which can lead to invalid GEP expansion. Until we can teach SCEV t
Added isValidRewrite() to check the result of ScalarEvolutionExpander.
SCEV may generate expressions composed of multiple pointers, which can lead to invalid GEP expansion. Until we can teach SCEV to follow strict pointer rules, make sure no bad GEPs creep into IR. Fixes rdar://problem/9038671.
llvm-svn: 127839
show more ...
|
#
a34f1b1f |
| 15-Mar-2011 |
Andrew Trick <atrick@apple.com> |
Remove getMinusSCEVForExitTest(). This function performed acrobatics to prove no-self-wrap, which we now have for free.
llvm-svn: 127643
|
#
f6b01ff4 |
| 15-Mar-2011 |
Andrew Trick <atrick@apple.com> |
Propagate SCEV no-wrap flags whenever possible. This needs review.
llvm-svn: 127638
|
#
e92dccea |
| 14-Mar-2011 |
Andrew Trick <atrick@apple.com> |
Negating a recurrence preserves no-self-wrap.
llvm-svn: 127593
|
#
f1781db6 |
| 14-Mar-2011 |
Andrew Trick <atrick@apple.com> |
HowFarToZero can compute a trip count as long as the recurrence has no-self-wrap.
llvm-svn: 127591
|
#
8b55b736 |
| 14-Mar-2011 |
Andrew Trick <atrick@apple.com> |
Added SCEV::NoWrapFlags to manage unsigned, signed, and self wrap properties. Added the self-wrap flag for SCEV::AddRecExpr. A slew of temporary FIXMEs indicate the intention of the no-self-wrap flag
Added SCEV::NoWrapFlags to manage unsigned, signed, and self wrap properties. Added the self-wrap flag for SCEV::AddRecExpr. A slew of temporary FIXMEs indicate the intention of the no-self-wrap flag without changing behavior in this revision.
llvm-svn: 127590
show more ...
|
#
2afa3258 |
| 09-Mar-2011 |
Andrew Trick <atrick@apple.com> |
When SCEV can determine the loop test is X < X, set ExactBECount=0. When ExactBECount is a constant, use it for MaxBECount. When MaxBECount cannot be computed, replace it with ExactBECount. Fixes PR9
When SCEV can determine the loop test is X < X, set ExactBECount=0. When ExactBECount is a constant, use it for MaxBECount. When MaxBECount cannot be computed, replace it with ExactBECount. Fixes PR9424.
llvm-svn: 127342
show more ...
|
#
2a3b7168 |
| 09-Mar-2011 |
Andrew Trick <atrick@apple.com> |
whitespace
llvm-svn: 127340
|
Revision tags: llvmorg-2.9.0-rc1 |
|
#
4f23f2be |
| 13-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
teach SCEV that the scale and addition of an inbounds gep don't NSW. This fixes a FIXME in scev-aa.ll (allowing a new no-alias result) and generally makes things more precise.
llvm-svn: 125449
|
#
7936a8a4 |
| 11-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
Per discussion with Dan G, inbounds geps *certainly* can have unsigned overflow (e.g. "gep P, -1"), and while they can have signed wrap in theoretical situations, modelling an AddRec as not having si
Per discussion with Dan G, inbounds geps *certainly* can have unsigned overflow (e.g. "gep P, -1"), and while they can have signed wrap in theoretical situations, modelling an AddRec as not having signed wrap is going enough for any case we can think of today. In the future if this isn't enough, we can revisit this. Modeling them as having NUW isn't causing any known problems either FWIW.
llvm-svn: 125410
show more ...
|
#
d9e6b4a8 |
| 26-Jan-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Fix memory corruption. If one of the SCEV creation functions calls another but doesn't return immediately after then the insert position in UniqueSCEVs will be out of date. No test because this is a
Fix memory corruption. If one of the SCEV creation functions calls another but doesn't return immediately after then the insert position in UniqueSCEVs will be out of date. No test because this is a memory corruption issue. Fixes PR9051!
llvm-svn: 124282
show more ...
|
#
3ac8cd61 |
| 24-Jan-2011 |
Dan Gohman <gohman@apple.com> |
Add a comment.
llvm-svn: 124126
|
#
d4192f71 |
| 23-Jan-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Simplify some code with no functionality change. Make the test a lot more robust against smarter optimizations, using the power of FileCheck.
llvm-svn: 124081
|
#
bc98f5b7 |
| 23-Jan-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Use value ranges to fold ext(trunc) in SCEV when possible.
llvm-svn: 124062
|
#
b32c8943 |
| 22-Jan-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Have SCEV turn sext(x) into zext(x) when x is s>= 0. This applies many times in "make check" alone.
llvm-svn: 124046
|