1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 04:22:57 +02:00
llvm-mirror/test/Transforms/CorrelatedValuePropagation
Sanjoy Das eb77be5924 [CVP] Remove some {s|u}add.with.overflow checks.
Summary:
This adds logic to CVP to remove some overflow checks.  It uses LVI to remove
operations with at least one constant.  Specifically, this can remove many
overflow intrinsics immediately following an overflow check in the source code,
such as:

if (x < INT_MAX)
    ... x + 1 ...

Patch by Joel Galenson!

Reviewers: sanjoy, regehr

Reviewed By: sanjoy

Subscribers: fhahn, pirama, srhines, llvm-commits

Differential Revision: https://reviews.llvm.org/D39483

llvm-svn: 317911
2017-11-10 19:13:35 +00:00
..
2010-09-02-Trunc.ll
2010-09-26-MergeConstantRange.ll
add.ll [CVP] Process binary operations even when def is local 2017-10-12 22:39:52 +00:00
alloca.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
ashr.ll [CVP] Process binary operations even when def is local 2017-10-12 22:39:52 +00:00
basic.ll [IR] Make SwitchInst::CaseIt almost a normal iterator. 2017-03-26 02:49:23 +00:00
conflict.ll
crash.ll
guards.ll
icmp.ll
non-null.ll
overflows.ll [CVP] Remove some {s|u}add.with.overflow checks. 2017-11-10 19:13:35 +00:00
range.ll [LVI] Constant-propagate a zero extension of the switch condition value through case edges 2017-08-03 21:11:30 +00:00
sdiv.ll [CVP] Process binary operations even when def is local 2017-10-12 22:39:52 +00:00
select.ll
srem.ll [CVP] Process binary operations even when def is local 2017-10-12 22:39:52 +00:00