Lines Matching refs:BitWidth
101 unsigned BitWidth = getBitWidth(); in sextInReg() local
102 assert(0 < SrcBitWidth && SrcBitWidth <= BitWidth && in sextInReg()
105 if (SrcBitWidth == BitWidth) in sextInReg()
108 unsigned ExtBits = BitWidth - SrcBitWidth; in sextInReg()
179 static unsigned getMaxShiftAmount(const APInt &MaxValue, unsigned BitWidth) { in getMaxShiftAmount() argument
180 if (isPowerOf2_32(BitWidth)) in getMaxShiftAmount()
181 return MaxValue.extractBitsAsZExtValue(Log2_32(BitWidth), 0); in getMaxShiftAmount()
183 return MaxValue.getLimitedValue(BitWidth - 1); in getMaxShiftAmount()
188 unsigned BitWidth = LHS.getBitWidth(); in shl() local
211 KnownBits Known(BitWidth); in shl()
212 unsigned MinShiftAmount = RHS.getMinValue().getLimitedValue(BitWidth); in shl()
224 unsigned MaxShiftAmount = getMaxShiftAmount(MaxValue, BitWidth); in shl()
235 if (MinShiftAmount == 0 && MaxShiftAmount == BitWidth - 1 && in shl()
236 isPowerOf2_32(BitWidth)) { in shl()
273 unsigned BitWidth = LHS.getBitWidth(); in lshr() local
284 KnownBits Known(BitWidth); in lshr()
285 unsigned MinShiftAmount = RHS.getMinValue().getLimitedValue(BitWidth); in lshr()
295 unsigned MaxShiftAmount = getMaxShiftAmount(MaxValue, BitWidth); in lshr()
319 unsigned BitWidth = LHS.getBitWidth(); in ashr() local
328 KnownBits Known(BitWidth); in ashr()
329 unsigned MinShiftAmount = RHS.getMinValue().getLimitedValue(BitWidth); in ashr()
333 if (MinShiftAmount == BitWidth) { in ashr()
343 unsigned MaxShiftAmount = getMaxShiftAmount(MaxValue, BitWidth); in ashr()
493 unsigned BitWidth = Res.getBitWidth(); in computeForSatAddSub() local
495 return K.Zero[BitWidth - 1] || K.One[BitWidth - 1]; in computeForSatAddSub()
574 APInt Mask = APInt::getHighBitsSet(BitWidth, LeadingKnown); in computeForSatAddSub()
598 C = LHS.isNegative() ? APInt::getSignedMinValue(BitWidth) in computeForSatAddSub()
599 : APInt::getSignedMaxValue(BitWidth); in computeForSatAddSub()
602 C = APInt::getMaxValue(BitWidth); in computeForSatAddSub()
605 C = APInt::getMinValue(BitWidth); in computeForSatAddSub()
618 Res.Zero.clearLowBits(BitWidth - 1); in computeForSatAddSub()
619 Res.One.clearLowBits(BitWidth - 1); in computeForSatAddSub()
649 unsigned BitWidth = LHS.getBitWidth(); in mul() local
650 assert(BitWidth == RHS.getBitWidth() && !LHS.hasConflict() && in mul()
725 unsigned ResultBitsKnown = std::min(SmallestOperand + TrailZ, BitWidth); in mul()
730 KnownBits Res(BitWidth); in mul()
736 if (NoUndefSelfMultiply && BitWidth > 1) { in mul()
746 unsigned BitWidth = LHS.getBitWidth(); in mulhs() local
747 assert(BitWidth == RHS.getBitWidth() && !LHS.hasConflict() && in mulhs()
749 KnownBits WideLHS = LHS.sext(2 * BitWidth); in mulhs()
750 KnownBits WideRHS = RHS.sext(2 * BitWidth); in mulhs()
751 return mul(WideLHS, WideRHS).extractBits(BitWidth, BitWidth); in mulhs()
755 unsigned BitWidth = LHS.getBitWidth(); in mulhu() local
756 assert(BitWidth == RHS.getBitWidth() && !LHS.hasConflict() && in mulhu()
758 KnownBits WideLHS = LHS.zext(2 * BitWidth); in mulhu()
759 KnownBits WideRHS = RHS.zext(2 * BitWidth); in mulhu()
760 return mul(WideLHS, WideRHS).extractBits(BitWidth, BitWidth); in mulhu()
805 unsigned BitWidth = LHS.getBitWidth(); in sdiv() local
807 KnownBits Known(BitWidth); in sdiv()
824 ? APInt::getSignedMaxValue(BitWidth) in sdiv()
860 unsigned BitWidth = LHS.getBitWidth(); in udiv() local
862 KnownBits Known(BitWidth); in udiv()
888 unsigned BitWidth = LHS.getBitWidth(); in remGetLowBits() local
892 APInt Mask = APInt::getLowBitsSet(BitWidth, RHSZeros); in remGetLowBits()
897 return KnownBits(BitWidth); in remGetLowBits()
972 unsigned BitWidth = getBitWidth(); in blsi() local
973 KnownBits Known(Zero, APInt(BitWidth, 0)); in blsi()
975 Known.Zero.setBitsFrom(std::min(Max + 1, BitWidth)); in blsi()
977 if (Max == Min && Max < BitWidth) in blsi()
983 unsigned BitWidth = getBitWidth(); in blsmsk() local
984 KnownBits Known(BitWidth); in blsmsk()
986 Known.Zero.setBitsFrom(std::min(Max + 1, BitWidth)); in blsmsk()
988 Known.One.setLowBits(std::min(Min + 1, BitWidth)); in blsmsk()
993 unsigned BitWidth = getBitWidth(); in print() local
994 for (unsigned I = 0; I < BitWidth; ++I) { in print()
995 unsigned N = BitWidth - I - 1; in print()