diff options
author | Craig Topper <craig.topper@gmail.com> | 2017-04-14 06:43:29 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2017-04-14 06:43:29 +0000 |
commit | f8631cd1deed13d45bf36b796dd4f27cf1439776 (patch) | |
tree | 82c546d12f8cfe33046b26cf52082457c8556cd4 /llvm/lib/Analysis/ValueTracking.cpp | |
parent | e668b1cd1e78cb244b79d987aef725cc76c30e64 (diff) | |
download | bcm5719-llvm-f8631cd1deed13d45bf36b796dd4f27cf1439776.tar.gz bcm5719-llvm-f8631cd1deed13d45bf36b796dd4f27cf1439776.zip |
[ValueTracking] Use APInt::sext instead of zext and setBitsFrom. NFC
llvm-svn: 300307
Diffstat (limited to 'llvm/lib/Analysis/ValueTracking.cpp')
-rw-r--r-- | llvm/lib/Analysis/ValueTracking.cpp | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/llvm/lib/Analysis/ValueTracking.cpp b/llvm/lib/Analysis/ValueTracking.cpp index 3f8f6457480..721c01be333 100644 --- a/llvm/lib/Analysis/ValueTracking.cpp +++ b/llvm/lib/Analysis/ValueTracking.cpp @@ -1078,15 +1078,10 @@ static void computeKnownBitsFromOperator(const Operator *I, APInt &KnownZero, KnownZero = KnownZero.trunc(SrcBitWidth); KnownOne = KnownOne.trunc(SrcBitWidth); computeKnownBits(I->getOperand(0), KnownZero, KnownOne, Depth + 1, Q); - KnownZero = KnownZero.zext(BitWidth); - KnownOne = KnownOne.zext(BitWidth); - // If the sign bit of the input is known set or clear, then we know the // top bits of the result. - if (KnownZero[SrcBitWidth-1]) // Input sign bit known zero - KnownZero.setBitsFrom(SrcBitWidth); - else if (KnownOne[SrcBitWidth-1]) // Input sign bit known set - KnownOne.setBitsFrom(SrcBitWidth); + KnownZero = KnownZero.sext(BitWidth); + KnownOne = KnownOne.sext(BitWidth); break; } case Instruction::Shl: { |