diff --git a/lib/Support/ConstantRange.cpp b/lib/Support/ConstantRange.cpp index 79a85b80d7e..71796493301 100644 --- a/lib/Support/ConstantRange.cpp +++ b/lib/Support/ConstantRange.cpp @@ -108,7 +108,7 @@ APInt ConstantRange::getUnsignedMin() const { /// ConstantRange. /// APInt ConstantRange::getSignedMax() const { - APInt SignedMax = APInt::getSignedMaxValue(getBitWidth()); + APInt SignedMax(APInt::getSignedMaxValue(getBitWidth())); if (!isWrappedSet()) { if (getLower().slt(getUpper() - 1)) return getUpper() - 1; @@ -130,7 +130,7 @@ APInt ConstantRange::getSignedMax() const { /// ConstantRange. /// APInt ConstantRange::getSignedMin() const { - APInt SignedMin = APInt::getSignedMinValue(getBitWidth()); + APInt SignedMin(APInt::getSignedMinValue(getBitWidth())); if (!isWrappedSet()) { if (getLower().slt(getUpper() - 1)) return getLower(); @@ -370,7 +370,7 @@ ConstantRange ConstantRange::signExtend(uint32_t DstTySize) const { ConstantRange ConstantRange::truncate(uint32_t DstTySize) const { unsigned SrcTySize = getBitWidth(); assert(SrcTySize > DstTySize && "Not a value truncation"); - APInt Size = APInt::getMaxValue(DstTySize).zext(SrcTySize); + APInt Size(APInt::getLowBitsSet(SrcTySize, DstTySize)); if (isFullSet() || getSetSize().ugt(Size)) return ConstantRange(DstTySize);