[SCEV] make SCEV smarter about proving no-wrap.
authorSanjoy Das <sanjoy@playingwithpointers.com>
Wed, 4 Mar 2015 22:24:17 +0000 (22:24 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Wed, 4 Mar 2015 22:24:17 +0000 (22:24 +0000)
commit9e2c5010f6f3051e4c0a6cca492c17d213ac63f8
treebf6ddda4abcccab53c637dc0235ab81854523ce7
parent3f21e27ad343ae1e9c4616be54b00c911c99162f
[SCEV] make SCEV smarter about proving no-wrap.

Summary:
Teach SCEV to prove no overflow for an add recurrence by proving
something about the range of another add recurrence a loop-invariant
distance away from it.

Reviewers: atrick, hfinkel

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D7980

llvm-svn: 231305
llvm/include/llvm/Analysis/ScalarEvolution.h
llvm/lib/Analysis/ScalarEvolution.cpp
llvm/test/Analysis/ScalarEvolution/nowrap-preinc-limits.ll [new file with mode: 0644]