Benjamin Kramer
a225ed8d2b
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
db149f9e73
Remove redundant -enable-iv-rewrite=false flags from test cases.
...
llvm-svn: 153255
2012-03-22 17:09:04 +00:00
Andrew Trick
5adedf5d47
Extended replaceCongruentPhis to handle mixed phi types.
...
llvm-svn: 147707
2012-01-07 01:12:09 +00:00
Andrew Trick
f9201c572e
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
183013d8d4
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
638b355a16
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
f53622e129
indvars test case for r135558.
...
llvm-svn: 135559
2011-07-20 02:14:37 +00:00
Andrew Trick
c5dd3e976a
indvars -disable-iv-rewrite fix: derived GEP IVs
...
llvm-svn: 135558
2011-07-20 02:08:58 +00:00
Andrew Trick
3239055dee
indvars -disable-iv-rewrite: Added SimplifyCongruentIVs.
...
llvm-svn: 134530
2011-07-06 20:50:43 +00:00
Andrew Trick
6d12309475
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
efe89ad414
indvars -disable-iv-rewrite: handle cloning binary operators that cannot overflow.
...
llvm-svn: 134177
2011-06-30 19:02:17 +00:00
Andrew Trick
cc68605353
indvars -disable-iv-rewrite: handle an edge case involving identity phis.
...
llvm-svn: 134124
2011-06-30 01:27:23 +00:00
Andrew Trick
ecdd6e4c67
indvars -disable-iv-rewrite: insert new trunc instructions carefully.
...
llvm-svn: 134112
2011-06-29 23:03:57 +00:00
Andrew Trick
efe2b1963d
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
eb3c36e69c
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