summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/ValueTracking.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2017-04-14 06:43:29 +0000
committerCraig Topper <craig.topper@gmail.com>2017-04-14 06:43:29 +0000
commitf8631cd1deed13d45bf36b796dd4f27cf1439776 (patch)
tree82c546d12f8cfe33046b26cf52082457c8556cd4 /llvm/lib/Analysis/ValueTracking.cpp
parente668b1cd1e78cb244b79d987aef725cc76c30e64 (diff)
downloadbcm5719-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.cpp9
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: {
OpenPOWER on IntegriCloud