[IndVars] Eliminate op.with.overflow when possible (re-apply)

Description

[IndVars] Eliminate op.with.overflow when possible (re-apply)

Summary:
If we can prove that an op.with.overflow intrinsic does not overflow, we
can get rid of the intrinsic, and replace it with non-wrapping
arithmetic.

This was first checked in at r265913 but reverted in r265950 because it
exposed some issues around how SCEV handled post-inc add recurrences.
Those issues have now been fixed.

Reviewers: atrick, regehr

Subscribers: sanjoy, mcrosier, llvm-commits

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

Details

Committed
sanjoyMay 28 2016, 5:36 PM
Differential Revision
D18685: [IndVars] Eliminate op.with.overflow when possible
Parents
rL271152: [SCEV] See through op.with.overflow intrinsics (re-apply)
Branches
Unknown
Tags
Unknown