forked from OSchip/llvm-project
0d4fd5b668
This should bring signed div/rem analysis up to the same level as unsigned. We use icmp simplification to determine when the divisor is known greater than the dividend. Each positive test is followed by a negative test to show that we're not overstepping the boundaries of the known bits. There are extra tests for the signed-min-value special cases. Alive proofs: http://rise4fun.com/Alive/WI5 Differential Revision: https://reviews.llvm.org/D37713 llvm-svn: 313264 |
||
---|---|---|
.. | ||
2010-12-20-Boolean.ll | ||
2011-01-14-Thread.ll | ||
2011-02-01-Vector.ll | ||
2011-09-05-InsertExtractValue.ll | ||
2011-10-27-BinOpCrash.ll | ||
2011-11-23-MaskedBitsCrash.ll | ||
2013-04-19-ConstantFoldingCrash.ll | ||
AndOrXor.ll | ||
add-mask.ll | ||
addsub.ll | ||
and-icmps-same-ops.ll | ||
assume.ll | ||
bitcast-vector-fold.ll | ||
bitreverse.ll | ||
bswap.ll | ||
call-callconv.ll | ||
call.ll | ||
cast.ll | ||
compare.ll | ||
dead-code-removal.ll | ||
div.ll | ||
exact-nsw-nuw.ll | ||
fast-math.ll | ||
fdiv.ll | ||
floating-point-arithmetic.ll | ||
floating-point-compare.ll | ||
fold-builtin-fma.ll | ||
gep.ll | ||
icmp-bool-constant.ll | ||
icmp-constant.ll | ||
icmp-ranges.ll | ||
implies.ll | ||
load-relative-32.ll | ||
load-relative.ll | ||
load.ll | ||
maxmin.ll | ||
mul.ll | ||
negate.ll | ||
noalias-ptr.ll | ||
or-icmps-same-ops.ll | ||
or.ll | ||
past-the-end.ll | ||
phi.ll | ||
pr28725.ll | ||
pr33957.ll | ||
ptr_diff.ll | ||
reassociate.ll | ||
rem.ll | ||
require-dominator.ll | ||
returned.ll | ||
select.ll | ||
shift-128-kb.ll | ||
shift-knownbits.ll | ||
shr-nop.ll | ||
shufflevector.ll | ||
signed-div-rem.ll | ||
simplify-nested-bitcast.ll | ||
undef.ll | ||
vec-cmp.ll | ||
vector_gep.ll | ||
vector_ptr_bitcast.ll |