Lines Matching refs:KnownZero
55 APInt KnownZero(BitWidth, 0), KnownOne(BitWidth, 0); in SimplifyDemandedInstructionBits() local
58 Value *V = SimplifyDemandedUseBits(&Inst, DemandedMask, KnownZero, KnownOne, in SimplifyDemandedInstructionBits()
70 APInt &KnownZero, APInt &KnownOne, in SimplifyDemandedBits() argument
73 Value *NewVal = SimplifyDemandedUseBits(U.get(), DemandedMask, KnownZero, in SimplifyDemandedBits()
104 APInt &KnownZero, APInt &KnownOne, in SimplifyDemandedUseBits() argument
113 KnownZero.getBitWidth() == BitWidth && in SimplifyDemandedUseBits()
120 KnownZero = ~KnownOne & DemandedMask; in SimplifyDemandedUseBits()
126 KnownZero = DemandedMask; in SimplifyDemandedUseBits()
130 KnownZero.clearAllBits(); in SimplifyDemandedUseBits()
146 computeKnownBits(V, KnownZero, KnownOne, Depth, CxtI); in SimplifyDemandedUseBits()
225 computeKnownBits(I, KnownZero, KnownOne, Depth, CxtI); in SimplifyDemandedUseBits()
238 computeKnownBits(I, KnownZero, KnownOne, Depth, CxtI); in SimplifyDemandedUseBits()
276 KnownZero = RHSKnownZero | LHSKnownZero; in SimplifyDemandedUseBits()
317 KnownZero = RHSKnownZero & LHSKnownZero; in SimplifyDemandedUseBits()
403 KnownZero= (RHSKnownZero & LHSKnownZero) | (RHSKnownOne & LHSKnownOne); in SimplifyDemandedUseBits()
430 KnownZero = RHSKnownZero & LHSKnownZero; in SimplifyDemandedUseBits()
435 KnownZero = KnownZero.zext(truncBf); in SimplifyDemandedUseBits()
437 if (SimplifyDemandedBits(I->getOperandUse(0), DemandedMask, KnownZero, in SimplifyDemandedUseBits()
441 KnownZero = KnownZero.trunc(BitWidth); in SimplifyDemandedUseBits()
443 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?"); in SimplifyDemandedUseBits()
463 if (SimplifyDemandedBits(I->getOperandUse(0), DemandedMask, KnownZero, in SimplifyDemandedUseBits()
466 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?"); in SimplifyDemandedUseBits()
473 KnownZero = KnownZero.trunc(SrcBitWidth); in SimplifyDemandedUseBits()
475 if (SimplifyDemandedBits(I->getOperandUse(0), DemandedMask, KnownZero, in SimplifyDemandedUseBits()
479 KnownZero = KnownZero.zext(BitWidth); in SimplifyDemandedUseBits()
481 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?"); in SimplifyDemandedUseBits()
483 KnownZero |= APInt::getHighBitsSet(BitWidth, BitWidth - SrcBitWidth); in SimplifyDemandedUseBits()
500 KnownZero = KnownZero.trunc(SrcBitWidth); in SimplifyDemandedUseBits()
502 if (SimplifyDemandedBits(I->getOperandUse(0), InputDemandedBits, KnownZero, in SimplifyDemandedUseBits()
506 KnownZero = KnownZero.zext(BitWidth); in SimplifyDemandedUseBits()
508 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?"); in SimplifyDemandedUseBits()
515 if (KnownZero[SrcBitWidth-1] || (NewBits & ~DemandedMask) == NewBits) { in SimplifyDemandedUseBits()
550 computeKnownBits(V, KnownZero, KnownOne, Depth, CxtI); in SimplifyDemandedUseBits()
560 KnownZero, KnownOne); in SimplifyDemandedUseBits()
576 if (SimplifyDemandedBits(I->getOperandUse(0), DemandedMaskIn, KnownZero, in SimplifyDemandedUseBits()
579 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?"); in SimplifyDemandedUseBits()
580 KnownZero <<= ShiftAmt; in SimplifyDemandedUseBits()
584 KnownZero |= APInt::getLowBitsSet(BitWidth, ShiftAmt); in SimplifyDemandedUseBits()
600 if (SimplifyDemandedBits(I->getOperandUse(0), DemandedMaskIn, KnownZero, in SimplifyDemandedUseBits()
603 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?"); in SimplifyDemandedUseBits()
604 KnownZero = APIntOps::lshr(KnownZero, ShiftAmt); in SimplifyDemandedUseBits()
609 KnownZero |= HighBits; // high bits known zero. in SimplifyDemandedUseBits()
645 if (SimplifyDemandedBits(I->getOperandUse(0), DemandedMaskIn, KnownZero, in SimplifyDemandedUseBits()
648 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?"); in SimplifyDemandedUseBits()
651 KnownZero = APIntOps::lshr(KnownZero, ShiftAmt); in SimplifyDemandedUseBits()
661 if (BitWidth <= ShiftAmt || KnownZero[BitWidth-ShiftAmt-1] || in SimplifyDemandedUseBits()
691 KnownZero = LHSKnownZero & LowBits; in SimplifyDemandedUseBits()
697 KnownZero |= ~LowBits; in SimplifyDemandedUseBits()
704 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?"); in SimplifyDemandedUseBits()
710 if (DemandedMask.isNegative() && KnownZero.isNonNegative()) { in SimplifyDemandedUseBits()
716 KnownZero.setBit(KnownZero.getBitWidth() - 1); in SimplifyDemandedUseBits()
731 KnownZero = APInt::getHighBitsSet(BitWidth, Leaders) & DemandedMask; in SimplifyDemandedUseBits()
795 KnownZero = APInt::getHighBitsSet(BitWidth, BitWidth - ArgWidth); in SimplifyDemandedUseBits()
799 KnownZero = APInt::getHighBitsSet(64, 32); in SimplifyDemandedUseBits()
803 computeKnownBits(V, KnownZero, KnownOne, Depth, CxtI); in SimplifyDemandedUseBits()
809 if ((DemandedMask & (KnownZero|KnownOne)) == DemandedMask) in SimplifyDemandedUseBits()
834 APInt &KnownZero, in SimplifyShrShlDemandedBits() argument
852 KnownZero = APInt::getBitsSet(KnownZero.getBitWidth(), 0, ShlAmt-1); in SimplifyShrShlDemandedBits()
853 KnownZero &= DemandedMask; in SimplifyShrShlDemandedBits()