InstCombine: Don't just copy known bits from the first operand of an srem.
authorBenjamin Kramer <benny.kra@googlemail.com>
Thu, 9 May 2013 16:32:32 +0000 (16:32 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Thu, 9 May 2013 16:32:32 +0000 (16:32 +0000)
commita6ff92a975f2d6ef6a0db7aeaee3ee9fd046307a
tree26ad2cbb1ac595d2837ddec0bbfd14ef507b1dca
parent4fcf82f3163f34ddc5c659ceb20e87057a287e10
InstCombine: Don't just copy known bits from the first operand of an srem.

That's obviously wrong. Conservatively restrict it to the sign bit, which
matches the original intention of this analysis. Fixes PR15940.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181518 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
test/Transforms/InstCombine/icmp.ll