Lines Matching refs:DemandedMask

70   APInt DemandedMask(APInt::getAllOnes(Known.getBitWidth()));  in SimplifyDemandedInstructionBits()  local
71 Value *V = SimplifyDemandedUseBits(&Inst, DemandedMask, Known, in SimplifyDemandedInstructionBits()
90 const APInt &DemandedMask, in SimplifyDemandedBits() argument
101 if (DemandedMask.isZero()) { in SimplifyDemandedBits()
119 NewVal = SimplifyDemandedUseBits(VInst, DemandedMask, Known, Depth, Q); in SimplifyDemandedBits()
124 SimplifyMultipleUseDemandedBits(VInst, DemandedMask, Known, Depth, Q); in SimplifyDemandedBits()
158 const APInt &DemandedMask, in SimplifyDemandedUseBits() argument
164 uint32_t BitWidth = DemandedMask.getBitWidth(); in SimplifyDemandedUseBits()
190 unsigned NLZ = DemandedMask.countl_zero(); in SimplifyDemandedUseBits()
210 if (SimplifyDemandedBits(I, 1, DemandedMask, RHSKnown, Depth + 1, Q) || in SimplifyDemandedUseBits()
211 SimplifyDemandedBits(I, 0, DemandedMask & ~RHSKnown.Zero, LHSKnown, in SimplifyDemandedUseBits()
220 if (DemandedMask.isSubsetOf(Known.Zero | Known.One)) in SimplifyDemandedUseBits()
225 if (DemandedMask.isSubsetOf(LHSKnown.Zero | RHSKnown.One)) in SimplifyDemandedUseBits()
227 if (DemandedMask.isSubsetOf(RHSKnown.Zero | LHSKnown.One)) in SimplifyDemandedUseBits()
231 if (ShrinkDemandedConstant(I, 1, DemandedMask & ~LHSKnown.Zero)) in SimplifyDemandedUseBits()
238 if (SimplifyDemandedBits(I, 1, DemandedMask, RHSKnown, Depth + 1, Q) || in SimplifyDemandedUseBits()
239 SimplifyDemandedBits(I, 0, DemandedMask & ~RHSKnown.One, LHSKnown, in SimplifyDemandedUseBits()
251 if (DemandedMask.isSubsetOf(Known.Zero | Known.One)) in SimplifyDemandedUseBits()
256 if (DemandedMask.isSubsetOf(LHSKnown.One | RHSKnown.Zero)) in SimplifyDemandedUseBits()
258 if (DemandedMask.isSubsetOf(RHSKnown.One | LHSKnown.Zero)) in SimplifyDemandedUseBits()
262 if (ShrinkDemandedConstant(I, 1, DemandedMask)) in SimplifyDemandedUseBits()
278 if (SimplifyDemandedBits(I, 1, DemandedMask, RHSKnown, Depth + 1, Q) || in SimplifyDemandedUseBits()
279 SimplifyDemandedBits(I, 0, DemandedMask, LHSKnown, Depth + 1, Q)) in SimplifyDemandedUseBits()
282 if (DemandedMask == 1 && in SimplifyDemandedUseBits()
297 if (DemandedMask.isSubsetOf(Known.Zero | Known.One)) in SimplifyDemandedUseBits()
302 if (DemandedMask.isSubsetOf(RHSKnown.Zero)) in SimplifyDemandedUseBits()
304 if (DemandedMask.isSubsetOf(LHSKnown.Zero)) in SimplifyDemandedUseBits()
310 if (DemandedMask.isSubsetOf(RHSKnown.Zero | LHSKnown.Zero)) { in SimplifyDemandedUseBits()
313 if (DemandedMask.isAllOnes()) in SimplifyDemandedUseBits()
323 if (DemandedMask.isSubsetOf(RHSKnown.Zero|RHSKnown.One) && in SimplifyDemandedUseBits()
326 ~RHSKnown.One & DemandedMask); in SimplifyDemandedUseBits()
336 if ((*C | ~DemandedMask).isAllOnes()) { in SimplifyDemandedUseBits()
342 if (ShrinkDemandedConstant(I, 1, DemandedMask)) in SimplifyDemandedUseBits()
355 (LHSKnown.One & RHSKnown.One & DemandedMask) != 0) { in SimplifyDemandedUseBits()
356 APInt NewMask = ~(LHSKnown.One & RHSKnown.One & DemandedMask); in SimplifyDemandedUseBits()
370 if (SimplifyDemandedBits(I, 2, DemandedMask, RHSKnown, Depth + 1, Q) || in SimplifyDemandedUseBits()
371 SimplifyDemandedBits(I, 1, DemandedMask, LHSKnown, Depth + 1, Q)) in SimplifyDemandedUseBits()
380 const APInt &DemandedMask) { in SimplifyDemandedUseBits() argument
394 return ShrinkDemandedConstant(I, OpNo, DemandedMask); in SimplifyDemandedUseBits()
401 if ((*CmpC & DemandedMask) == (*SelC & DemandedMask)) { in SimplifyDemandedUseBits()
405 return ShrinkDemandedConstant(I, OpNo, DemandedMask); in SimplifyDemandedUseBits()
407 if (CanonicalizeSelectConstant(I, 1, DemandedMask) || in SimplifyDemandedUseBits()
408 CanonicalizeSelectConstant(I, 2, DemandedMask)) in SimplifyDemandedUseBits()
428 C->ule(DemandedMask.countl_zero())) { in SimplifyDemandedUseBits()
441 APInt InputDemandedMask = DemandedMask.zextOrTrunc(SrcBitWidth); in SimplifyDemandedUseBits()
462 APInt InputDemandedBits = DemandedMask.trunc(SrcBitWidth); in SimplifyDemandedUseBits()
466 if (DemandedMask.getActiveBits() > SrcBitWidth) in SimplifyDemandedUseBits()
476 DemandedMask.getActiveBits() <= SrcBitWidth) { in SimplifyDemandedUseBits()
489 if ((DemandedMask & 1) == 0) { in SimplifyDemandedUseBits()
528 unsigned NLZ = DemandedMask.countl_zero(); in SimplifyDemandedUseBits()
537 unsigned NTZ = (~DemandedMask & RHSKnown.Zero).countr_one(); in SimplifyDemandedUseBits()
555 C->isOneBitSet(DemandedMask.getActiveBits() - 1)) { in SimplifyDemandedUseBits()
571 unsigned NLZ = DemandedMask.countl_zero(); in SimplifyDemandedUseBits()
580 unsigned NTZ = (~DemandedMask & RHSKnown.Zero).countr_one(); in SimplifyDemandedUseBits()
607 if (DemandedMask.isPowerOf2()) { in SimplifyDemandedUseBits()
611 unsigned CTZ = DemandedMask.countr_zero(); in SimplifyDemandedUseBits()
622 if (I->getOperand(0) == I->getOperand(1) && DemandedMask.ult(4)) { in SimplifyDemandedUseBits()
638 DemandedMask, Known)) in SimplifyDemandedUseBits()
659 if (DemandedMask.countr_zero() >= ShiftAmt) { in SimplifyDemandedUseBits()
661 unsigned NumHiDemandedBits = BitWidth - DemandedMask.countr_zero(); in SimplifyDemandedUseBits()
686 APInt DemandedMaskIn(DemandedMask.lshr(ShiftAmt)); in SimplifyDemandedUseBits()
706 if (unsigned CTLZ = DemandedMask.countl_zero()) { in SimplifyDemandedUseBits()
740 if (DemandedMask.countl_zero() >= ShiftAmt) { in SimplifyDemandedUseBits()
743 unsigned NumHiDemandedBits = BitWidth - DemandedMask.countr_zero(); in SimplifyDemandedUseBits()
768 APInt DemandedMaskIn(DemandedMask.shl(ShiftAmt)); in SimplifyDemandedUseBits()
788 unsigned NumHiDemandedBits = BitWidth - DemandedMask.countr_zero(); in SimplifyDemandedUseBits()
796 if (DemandedMask.isOne()) { in SimplifyDemandedUseBits()
808 APInt DemandedMaskIn(DemandedMask.shl(ShiftAmt)); in SimplifyDemandedUseBits()
811 bool ShiftedInBitsDemanded = DemandedMask.countl_zero() < ShiftAmt; in SimplifyDemandedUseBits()
869 if (DemandedMask.ult(RA)) // srem won't affect demanded bits in SimplifyDemandedUseBits()
903 if (DemandedMask == 1) in SimplifyDemandedUseBits()
912 if (DemandedMask == 1 && VTy->getScalarSizeInBits() % 2 == 0 && in SimplifyDemandedUseBits()
923 unsigned NLZ = DemandedMask.countl_zero(); in SimplifyDemandedUseBits()
924 unsigned NTZ = DemandedMask.countr_zero(); in SimplifyDemandedUseBits()
951 if (SimplifyDemandedBits(I, 0, DemandedMask, LHSKnown, Depth + 1, Q) || in SimplifyDemandedUseBits()
953 I, 1, (DemandedMask & ~LHSKnown.Zero).zextOrTrunc(MaskWidth), in SimplifyDemandedUseBits()
967 if (DemandedMask.isSubsetOf(Known.Zero) && in SimplifyDemandedUseBits()
976 if (DemandedMask.isSubsetOf(RHSKnown.One | LHSKnown.Zero)) in SimplifyDemandedUseBits()
981 I, 1, (DemandedMask & ~LHSKnown.Zero).zextOrTrunc(MaskWidth))) in SimplifyDemandedUseBits()
1037 APInt DemandedMaskLHS(DemandedMask.lshr(ShiftAmt)); in SimplifyDemandedUseBits()
1038 APInt DemandedMaskRHS(DemandedMask.shl(BitWidth - ShiftAmt)); in SimplifyDemandedUseBits()
1075 unsigned CTZ = DemandedMask.countr_zero(); in SimplifyDemandedUseBits()
1087 unsigned CTZ = DemandedMask.countr_zero(); in SimplifyDemandedUseBits()
1096 *II, DemandedMask, Known, KnownBitsComputed); in SimplifyDemandedUseBits()
1120 DemandedMask.isSubsetOf(Known.Zero | Known.One)) in SimplifyDemandedUseBits()
1141 Instruction *I, const APInt &DemandedMask, KnownBits &Known, unsigned Depth, in SimplifyMultipleUseDemandedBits() argument
1143 unsigned BitWidth = DemandedMask.getBitWidth(); in SimplifyMultipleUseDemandedBits()
1163 if (DemandedMask.isSubsetOf(Known.Zero | Known.One)) in SimplifyMultipleUseDemandedBits()
1168 if (DemandedMask.isSubsetOf(LHSKnown.Zero | RHSKnown.One)) in SimplifyMultipleUseDemandedBits()
1170 if (DemandedMask.isSubsetOf(RHSKnown.Zero | LHSKnown.One)) in SimplifyMultipleUseDemandedBits()
1184 if (DemandedMask.isSubsetOf(Known.Zero | Known.One)) in SimplifyMultipleUseDemandedBits()
1191 if (DemandedMask.isSubsetOf(LHSKnown.One | RHSKnown.Zero)) in SimplifyMultipleUseDemandedBits()
1193 if (DemandedMask.isSubsetOf(RHSKnown.One | LHSKnown.Zero)) in SimplifyMultipleUseDemandedBits()
1207 if (DemandedMask.isSubsetOf(Known.Zero | Known.One)) in SimplifyMultipleUseDemandedBits()
1213 if (DemandedMask.isSubsetOf(RHSKnown.Zero)) in SimplifyMultipleUseDemandedBits()
1215 if (DemandedMask.isSubsetOf(LHSKnown.Zero)) in SimplifyMultipleUseDemandedBits()
1221 unsigned NLZ = DemandedMask.countl_zero(); in SimplifyMultipleUseDemandedBits()
1242 unsigned NLZ = DemandedMask.countl_zero(); in SimplifyMultipleUseDemandedBits()
1265 if (DemandedMask.isSubsetOf(Known.Zero | Known.One)) in SimplifyMultipleUseDemandedBits()
1275 unsigned BitWidth = DemandedMask.getBitWidth(); in SimplifyMultipleUseDemandedBits()
1279 DemandedMask.isSubsetOf(APInt::getLowBitsSet( in SimplifyMultipleUseDemandedBits()
1292 if (DemandedMask.isSubsetOf(Known.Zero|Known.One)) in SimplifyMultipleUseDemandedBits()
1320 const APInt &ShlOp1, const APInt &DemandedMask, KnownBits &Known) { in simplifyShrShlDemandedBits() argument
1335 Known.Zero &= DemandedMask; in simplifyShrShlDemandedBits()
1352 if ((BitMask1 & DemandedMask) == (BitMask2 & DemandedMask)) { in simplifyShrShlDemandedBits()
1959 Value *V, const FPClassTest DemandedMask, KnownFPClass &Known, in SimplifyDemandedUseFPClass() argument
1966 if (DemandedMask == fcNone) in SimplifyDemandedUseFPClass()
1977 getFPClassConstant(VTy, DemandedMask & Known.KnownFPClasses); in SimplifyDemandedUseFPClass()
1987 if (SimplifyDemandedFPClass(I, 0, llvm::fneg(DemandedMask), Known, in SimplifyDemandedUseFPClass()
1997 if (SimplifyDemandedFPClass(I, 0, llvm::inverse_fabs(DemandedMask), Known, in SimplifyDemandedUseFPClass()
2003 if (SimplifyDemandedFPClass(I, 0, DemandedMask, Known, Depth + 1)) in SimplifyDemandedUseFPClass()
2008 const FPClassTest DemandedMaskAnySign = llvm::unknown_sign(DemandedMask); in SimplifyDemandedUseFPClass()
2012 if ((DemandedMask & fcPositive) == fcNone) { in SimplifyDemandedUseFPClass()
2018 if ((DemandedMask & fcNegative) == fcNone) { in SimplifyDemandedUseFPClass()
2030 Known = computeKnownFPClass(I, ~DemandedMask, CxtI, Depth + 1); in SimplifyDemandedUseFPClass()
2038 if (SimplifyDemandedFPClass(I, 2, DemandedMask, KnownRHS, Depth + 1) || in SimplifyDemandedUseFPClass()
2039 SimplifyDemandedFPClass(I, 1, DemandedMask, KnownLHS, Depth + 1)) in SimplifyDemandedUseFPClass()
2042 if (KnownLHS.isKnownNever(DemandedMask)) in SimplifyDemandedUseFPClass()
2044 if (KnownRHS.isKnownNever(DemandedMask)) in SimplifyDemandedUseFPClass()
2052 Known = computeKnownFPClass(I, ~DemandedMask, CxtI, Depth + 1); in SimplifyDemandedUseFPClass()
2056 return getFPClassConstant(VTy, DemandedMask & Known.KnownFPClasses); in SimplifyDemandedUseFPClass()
2060 FPClassTest DemandedMask, in SimplifyDemandedFPClass() argument
2065 SimplifyDemandedUseFPClass(U.get(), DemandedMask, Known, Depth, I); in SimplifyDemandedFPClass()