Fix PR6165. The bug was that LHSKnownZero was being and'd with DemandedMask
authorDuncan Sands <baldrick@free.fr>
Thu, 28 Jan 2010 17:22:42 +0000 (17:22 +0000)
committerDuncan Sands <baldrick@free.fr>
Thu, 28 Jan 2010 17:22:42 +0000 (17:22 +0000)
commit2c47368a7d843486a59e12a08595297003e3cb2d
tree8cc8af56920b99aed45368d055c14ccfd363a009
parent21569cddc1a9df3bf4a3c9e06977273f1eba3e63
Fix PR6165.  The bug was that LHSKnownZero was being and'd with DemandedMask
when it should have been and'd with LowBits.  Fix that and while there beef
up the logic in the case of a negative LHS.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94745 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
test/Transforms/InstCombine/2010-01-28-NegativeSRem.ll [new file with mode: 0644]