diff options
| author | Sanjoy Das <sanjoy@playingwithpointers.com> | 2017-04-25 00:09:19 +0000 |
|---|---|---|
| committer | Sanjoy Das <sanjoy@playingwithpointers.com> | 2017-04-25 00:09:19 +0000 |
| commit | bbebcb6c4d18b80a5bb0d0a3187624d61ebaa305 (patch) | |
| tree | 06619a27221ebc8926573bbbee4342167eda347d /llvm/lib/Analysis/MemDerefPrinter.cpp | |
| parent | 831c72f4a9b7f8830633e5fef30a7892a1acecf8 (diff) | |
| download | bcm5719-llvm-bbebcb6c4d18b80a5bb0d0a3187624d61ebaa305.tar.gz bcm5719-llvm-bbebcb6c4d18b80a5bb0d0a3187624d61ebaa305.zip | |
Teach SCEV normalization to de/normalize non-affine add recs
Summary:
Before this change, SCEV Normalization would incorrectly normalize
non-affine add recurrences. To work around this there was (still is)
a check in place to make sure we only tried to normalize affine add
recurrences.
We recently found a bug in aforementioned check to bail out of
normalizing non-affine add recurrences. However, instead of fixing
the bailout, I have decided to teach SCEV normalization to work
correctly with non-affine add recurrences, making the bailout
unnecessary (I'll remove it in a subsequent change).
I've also added some unit tests (which would have failed before this
change).
Reviewers: atrick, sunfish, efriedma
Reviewed By: atrick
Subscribers: mcrosier, mzolotukhin, llvm-commits
Differential Revision: https://reviews.llvm.org/D32104
llvm-svn: 301281
Diffstat (limited to 'llvm/lib/Analysis/MemDerefPrinter.cpp')
0 files changed, 0 insertions, 0 deletions

