1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
llvm-mirror/test/Transforms/CorrelatedValuePropagation
Florian Hahn 51e67e4aac [ConstantRange] Use APInt::or/APInt::and for single elements.
Currently ConstantRange::binaryAnd/binaryOr results are too pessimistic
for single element constant ranges.

If both operands are single element ranges, we can use APInt's AND and
OR implementations directly.

Note that some other binary operations on constant ranges can cover the
single element cases naturally, but for OR and AND this unfortunately is
not the case.

Reviewers: nikic, spatel, lebedev.ri

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D76446
2020-04-01 09:50:24 +01:00
..
2010-09-02-Trunc.ll
2010-09-26-MergeConstantRange.ll
add.ll
alloca.ll
and.ll
ashr.ll
basic.ll
conflict.ll
crash.ll
deopt.ll
guards.ll
icmp.ll
merge-range-and-undef.ll
mul.ll
non-null.ll
overflow_predicate.ll
overflows.ll
phi-common-val.ll
pointer.ll
pr35807.ll
profmd.ll
range.ll [ConstantRange] Use APInt::or/APInt::and for single elements. 2020-04-01 09:50:24 +01:00
sdiv.ll
select.ll
sext.ll
shl.ll
srem.ll
sub.ll
udiv.ll
urem.ll