Benjamin Kramer
77d71ab3d7
SCEVExpander: Don't crash when trying to merge two constant phis.
...
Just constant fold them so they can't cause any trouble. Fixes PR12627.
llvm-svn: 166286
2012-10-19 16:37:30 +00:00
Andrew Trick
30b64bcc90
Remove redundant -enable-iv-rewrite=false flags from test cases.
...
llvm-svn: 153255
2012-03-22 17:09:04 +00:00
Andrew Trick
8a5a1e603e
Extended replaceCongruentPhis to handle mixed phi types.
...
llvm-svn: 147707
2012-01-07 01:12:09 +00:00
Andrew Trick
d36852e6b1
Move replaceCongruentIVs into SCEVExapander and bias toward "expanded"
...
IVs.
Indvars previously chose randomly between congruent IVs. Now it will
bias the decision toward IVs that SCEVExpander likes to create. This
was not done to fix any problem, it's just a welcome side effect of
factoring code.
llvm-svn: 141633
2011-10-11 02:28:51 +00:00
Andrew Trick
09cf4287c2
Rename -disable-iv-rewrite to -enable-iv-rewrite=false in preparation for default change.
...
llvm-svn: 139517
2011-09-12 18:28:44 +00:00
Andrew Trick
57280c0f11
indvars: Added getInsertPointForUses to find a valid place to truncate the IV.
...
llvm-svn: 135568
2011-07-20 05:32:06 +00:00
Andrew Trick
d2b268558b
indvars test case for r135558.
...
llvm-svn: 135559
2011-07-20 02:14:37 +00:00
Andrew Trick
ee2d72e5f1
indvars -disable-iv-rewrite fix: derived GEP IVs
...
llvm-svn: 135558
2011-07-20 02:08:58 +00:00
Andrew Trick
641b6e4222
indvars -disable-iv-rewrite: Added SimplifyCongruentIVs.
...
llvm-svn: 134530
2011-07-06 20:50:43 +00:00
Andrew Trick
ac38d56661
indvars -disable-iv-rewrite: bug fix involving weird geps and related cleanup.
...
llvm-svn: 134306
2011-07-02 02:34:25 +00:00
Andrew Trick
bcaaa0ae73
indvars -disable-iv-rewrite: handle cloning binary operators that cannot overflow.
...
llvm-svn: 134177
2011-06-30 19:02:17 +00:00
Andrew Trick
b074aa9e26
indvars -disable-iv-rewrite: handle an edge case involving identity phis.
...
llvm-svn: 134124
2011-06-30 01:27:23 +00:00
Andrew Trick
a79ebc3dbd
indvars -disable-iv-rewrite: insert new trunc instructions carefully.
...
llvm-svn: 134112
2011-06-29 23:03:57 +00:00
Andrew Trick
bc666880ad
indvars -disable-iv-rewrite: just because SCEV ignores casts doesn't
...
mean they can be removed.
llvm-svn: 134054
2011-06-29 03:13:40 +00:00
Andrew Trick
0aa40b2f8f
indvars: fixed IV cloning in -disable-iv-rewrite mode with associated
...
cleanup and overdue test cases.
llvm-svn: 132038
2011-05-25 04:42:22 +00:00