Lines Matching refs:DemandedElts
135 const APInt &DemandedElts, in getShuffleDemandedElts() argument
138 assert(DemandedElts == APInt(1,1)); in getShuffleDemandedElts()
139 DemandedLHS = DemandedRHS = DemandedElts; in getShuffleDemandedElts()
146 DemandedElts, DemandedLHS, DemandedRHS); in getShuffleDemandedElts()
149 static void computeKnownBits(const Value *V, const APInt &DemandedElts,
159 APInt DemandedElts = in computeKnownBits() local
161 ::computeKnownBits(V, DemandedElts, Known, Depth, Q); in computeKnownBits()
181 KnownBits llvm::computeKnownBits(const Value *V, const APInt &DemandedElts, in computeKnownBits() argument
186 V, DemandedElts, Depth, in computeKnownBits()
273 static bool isKnownNonZero(const Value *V, const APInt &DemandedElts,
325 static unsigned ComputeNumSignBits(const Value *V, const APInt &DemandedElts,
331 APInt DemandedElts = in ComputeNumSignBits() local
333 return ComputeNumSignBits(V, DemandedElts, Depth, Q); in ComputeNumSignBits()
353 bool NSW, const APInt &DemandedElts, in computeKnownBitsAddSub() argument
356 computeKnownBits(Op1, DemandedElts, KnownOut, Depth + 1, Q); in computeKnownBitsAddSub()
363 computeKnownBits(Op0, DemandedElts, Known2, Depth + 1, Q); in computeKnownBitsAddSub()
368 const APInt &DemandedElts, KnownBits &Known, in computeKnownBitsMul() argument
371 computeKnownBits(Op1, DemandedElts, Known, Depth + 1, Q); in computeKnownBitsMul()
372 computeKnownBits(Op0, DemandedElts, Known2, Depth + 1, Q); in computeKnownBitsMul()
816 const Operator *I, const APInt &DemandedElts, KnownBits &Known, in computeKnownBitsFromShiftOperator() argument
819 computeKnownBits(I->getOperand(0), DemandedElts, Known2, Depth + 1, Q); in computeKnownBitsFromShiftOperator()
820 computeKnownBits(I->getOperand(1), DemandedElts, Known, Depth + 1, Q); in computeKnownBitsFromShiftOperator()
826 isKnownNonZero(I->getOperand(1), DemandedElts, Depth + 1, Q)); in computeKnownBitsFromShiftOperator()
831 getKnownBitsFromAndXorOr(const Operator *I, const APInt &DemandedElts, in getKnownBitsFromAndXorOr() argument
890 computeKnownBits(Y, DemandedElts, KnownY, Depth + 1, Q); in getKnownBitsFromAndXorOr()
908 APInt DemandedElts = in analyzeKnownBitsFromAndXorOr() local
911 return getKnownBitsFromAndXorOr(I, DemandedElts, KnownLHS, KnownRHS, Depth, in analyzeKnownBitsFromAndXorOr()
935 const APInt &DemandedElts, in computeKnownBitsFromOperator() argument
949 computeKnownBits(I->getOperand(1), DemandedElts, Known, Depth + 1, Q); in computeKnownBitsFromOperator()
950 computeKnownBits(I->getOperand(0), DemandedElts, Known2, Depth + 1, Q); in computeKnownBitsFromOperator()
952 Known = getKnownBitsFromAndXorOr(I, DemandedElts, Known2, Known, Depth, Q); in computeKnownBitsFromOperator()
955 computeKnownBits(I->getOperand(1), DemandedElts, Known, Depth + 1, Q); in computeKnownBitsFromOperator()
956 computeKnownBits(I->getOperand(0), DemandedElts, Known2, Depth + 1, Q); in computeKnownBitsFromOperator()
958 Known = getKnownBitsFromAndXorOr(I, DemandedElts, Known2, Known, Depth, Q); in computeKnownBitsFromOperator()
961 computeKnownBits(I->getOperand(1), DemandedElts, Known, Depth + 1, Q); in computeKnownBitsFromOperator()
962 computeKnownBits(I->getOperand(0), DemandedElts, Known2, Depth + 1, Q); in computeKnownBitsFromOperator()
964 Known = getKnownBitsFromAndXorOr(I, DemandedElts, Known2, Known, Depth, Q); in computeKnownBitsFromOperator()
968 computeKnownBitsMul(I->getOperand(0), I->getOperand(1), NSW, DemandedElts, in computeKnownBitsFromOperator()
1061 unsigned NumElts = DemandedElts.getBitWidth(); in computeKnownBitsFromOperator()
1065 if (DemandedElts[i]) in computeKnownBitsFromOperator()
1097 computeKnownBitsFromShiftOperator(I, DemandedElts, Known, Known2, Depth, Q, in computeKnownBitsFromOperator()
1110 computeKnownBitsFromShiftOperator(I, DemandedElts, Known, Known2, Depth, Q, in computeKnownBitsFromOperator()
1123 computeKnownBitsFromShiftOperator(I, DemandedElts, Known, Known2, Depth, Q, in computeKnownBitsFromOperator()
1130 DemandedElts, Known, Known2, Depth, Q); in computeKnownBitsFromOperator()
1136 DemandedElts, Known, Known2, Depth, Q); in computeKnownBitsFromOperator()
1265 computeKnownBits(R, DemandedElts, Known2, Depth + 1, RecQ); in computeKnownBitsFromOperator()
1450 computeKnownBits(I->getOperand(0), DemandedElts, Known2, Depth + 1, Q); in computeKnownBitsFromOperator()
1455 computeKnownBits(I->getOperand(0), DemandedElts, Known2, Depth + 1, Q); in computeKnownBitsFromOperator()
1593 if (!getShuffleDemandedElts(Shuf, DemandedElts, DemandedLHS, DemandedRHS)) { in computeKnownBitsFromOperator()
1622 unsigned NumElts = DemandedElts.getBitWidth(); in computeKnownBitsFromOperator()
1631 if (DemandedElts[EltIdx]) { in computeKnownBitsFromOperator()
1638 APInt DemandedVecElts = DemandedElts; in computeKnownBitsFromOperator()
1674 II->getArgOperand(1), false, DemandedElts, in computeKnownBitsFromOperator()
1680 II->getArgOperand(1), false, DemandedElts, in computeKnownBitsFromOperator()
1686 DemandedElts, Known, Known2, Depth, Q); in computeKnownBitsFromOperator()
1702 KnownBits llvm::computeKnownBits(const Value *V, const APInt &DemandedElts, in computeKnownBits() argument
1705 ::computeKnownBits(V, DemandedElts, Known, Depth, Q); in computeKnownBits()
1733 void computeKnownBits(const Value *V, const APInt &DemandedElts, in computeKnownBits() argument
1736 if (!DemandedElts) { in computeKnownBits()
1754 FVTy->getNumElements() == DemandedElts.getBitWidth() && in computeKnownBits()
1757 assert(DemandedElts == APInt(1, 1) && in computeKnownBits()
1790 if (!DemandedElts[i]) in computeKnownBits()
1807 if (!DemandedElts[i]) in computeKnownBits()
1850 computeKnownBitsFromOperator(I, DemandedElts, Known, Depth, Q); in computeKnownBits()
2300 static bool isNonZeroAdd(const APInt &DemandedElts, unsigned Depth, in isNonZeroAdd() argument
2303 KnownBits XKnown = computeKnownBits(X, DemandedElts, Depth, Q); in isNonZeroAdd()
2304 KnownBits YKnown = computeKnownBits(Y, DemandedElts, Depth, Q); in isNonZeroAdd()
2309 if (isKnownNonZero(Y, DemandedElts, Depth, Q) || in isNonZeroAdd()
2310 isKnownNonZero(X, DemandedElts, Depth, Q)) in isNonZeroAdd()
2339 static bool isNonZeroSub(const APInt &DemandedElts, unsigned Depth, in isNonZeroSub() argument
2344 if (C->isNullValue() && isKnownNonZero(Y, DemandedElts, Depth, Q)) in isNonZeroSub()
2350 static bool isNonZeroShift(const Operator *I, const APInt &DemandedElts, in isNonZeroShift() argument
2382 computeKnownBits(I->getOperand(1), DemandedElts, Depth, Q); in isNonZeroShift()
2395 isKnownNonZero(I->getOperand(0), DemandedElts, Depth, Q)) in isNonZeroShift()
2402 const APInt &DemandedElts, in isKnownNonZeroFromOperator() argument
2464 return isNonZeroSub(DemandedElts, Depth, Q, BitWidth, I->getOperand(0), in isKnownNonZeroFromOperator()
2468 return isKnownNonZero(I->getOperand(1), DemandedElts, Depth, Q) || in isKnownNonZeroFromOperator()
2469 isKnownNonZero(I->getOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2484 computeKnownBits(I->getOperand(0), DemandedElts, Known, Depth, Q); in isKnownNonZeroFromOperator()
2488 return isNonZeroShift(I, DemandedElts, Depth, Q, Known); in isKnownNonZeroFromOperator()
2500 computeKnownBits(I->getOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2504 return isNonZeroShift(I, DemandedElts, Depth, Q, Known); in isKnownNonZeroFromOperator()
2511 return isKnownNonZero(I->getOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2515 computeKnownBits(I->getOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2522 computeKnownBits(I->getOperand(1), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2541 return isKnownNonZero(I->getOperand(1), DemandedElts, Depth, Q) || in isKnownNonZeroFromOperator()
2542 isKnownNonZero(I->getOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2544 return isNonZeroAdd(DemandedElts, Depth, Q, BitWidth, I->getOperand(0), in isKnownNonZeroFromOperator()
2552 return isKnownNonZero(I->getOperand(0), DemandedElts, Depth, Q) && in isKnownNonZeroFromOperator()
2553 isKnownNonZero(I->getOperand(1), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2558 computeKnownBits(I->getOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2560 return isKnownNonZero(I->getOperand(1), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2563 computeKnownBits(I->getOperand(1), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2566 isKnownNonZero(I->getOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2587 if (isKnownNonZero(Op, DemandedElts, Depth, Q)) in isKnownNonZeroFromOperator()
2637 return isKnownNonZero(U.get(), DemandedElts, NewDepth, RecQ); in isKnownNonZeroFromOperator()
2693 return isKnownNonZero(II->getArgOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2695 return isNonZeroSub(DemandedElts, Depth, Q, BitWidth, in isKnownNonZeroFromOperator()
2698 return isNonZeroAdd(DemandedElts, Depth, Q, BitWidth, in isKnownNonZeroFromOperator()
2703 return isKnownNonZero(II->getArgOperand(1), DemandedElts, Depth, Q) || in isKnownNonZeroFromOperator()
2704 isKnownNonZero(II->getArgOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2713 computeKnownBits(II->getArgOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2717 computeKnownBits(II->getArgOperand(1), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2726 return isKnownNonZero(II->getArgOperand(0), DemandedElts, Depth, Q) && in isKnownNonZeroFromOperator()
2727 isKnownNonZero(II->getArgOperand(1), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2729 return computeKnownBits(II->getArgOperand(0), DemandedElts, Depth, Q) in isKnownNonZeroFromOperator()
2732 return computeKnownBits(II->getArgOperand(0), DemandedElts, Depth, Q) in isKnownNonZeroFromOperator()
2738 return isKnownNonZero(II->getArgOperand(0), DemandedElts, Depth, Q); in isKnownNonZeroFromOperator()
2752 computeKnownBits(I, DemandedElts, Known, Depth, Q); in isKnownNonZeroFromOperator()
2762 bool isKnownNonZero(const Value *V, const APInt &DemandedElts, unsigned Depth, in isKnownNonZero() argument
2771 FVTy->getNumElements() == DemandedElts.getBitWidth() && in isKnownNonZero()
2774 assert(DemandedElts == APInt(1, 1) && in isKnownNonZero()
2790 if (!DemandedElts[i]) in isKnownNonZero()
2848 if (isKnownNonZeroFromOperator(I, DemandedElts, Depth, Q)) in isKnownNonZero()
2860 APInt DemandedElts = in isKnownNonZero() local
2862 return isKnownNonZero(V, DemandedElts, Depth, Q); in isKnownNonZero()
3237 const APInt &DemandedElts, in computeNumSignBitsVectorConstant() argument
3246 if (!DemandedElts[i]) in computeNumSignBitsVectorConstant()
3260 const APInt &DemandedElts,
3263 static unsigned ComputeNumSignBits(const Value *V, const APInt &DemandedElts, in ComputeNumSignBits() argument
3265 unsigned Result = ComputeNumSignBitsImpl(V, DemandedElts, Depth, Q); in ComputeNumSignBits()
3278 const APInt &DemandedElts, in ComputeNumSignBitsImpl() argument
3286 FVTy->getNumElements() == DemandedElts.getBitWidth() && in ComputeNumSignBitsImpl()
3289 assert(DemandedElts == APInt(1, 1) && in ComputeNumSignBitsImpl()
3540 if (!getShuffleDemandedElts(Shuf, DemandedElts, DemandedLHS, DemandedRHS)) in ComputeNumSignBitsImpl()
3591 computeNumSignBitsVectorConstant(V, DemandedElts, TyBits)) in ComputeNumSignBitsImpl()
3595 computeKnownBits(V, DemandedElts, Known, Depth, Q); in ComputeNumSignBitsImpl()
4294 void computeKnownFPClass(const Value *V, const APInt &DemandedElts,
4302 APInt DemandedElts = in computeKnownFPClass() local
4304 computeKnownFPClass(V, DemandedElts, InterestedClasses, Known, Depth, Q); in computeKnownFPClass()
4308 const APInt &DemandedElts, in computeKnownFPClassForFPTrunc() argument
4317 computeKnownFPClass(Op->getOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClassForFPTrunc()
4331 void computeKnownFPClass(const Value *V, const APInt &DemandedElts, in computeKnownFPClass() argument
4336 if (!DemandedElts) { in computeKnownFPClass()
4416 computeKnownFPClass(Op->getOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClass()
4459 computeKnownFPClass(LHS, DemandedElts, InterestedClasses & FilterLHS, Known, in computeKnownFPClass()
4463 computeKnownFPClass(RHS, DemandedElts, InterestedClasses & FilterRHS, in computeKnownFPClass()
4478 computeKnownFPClass(II->getArgOperand(0), DemandedElts, in computeKnownFPClass()
4488 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClass()
4490 computeKnownFPClass(II->getArgOperand(1), DemandedElts, InterestedClasses, in computeKnownFPClass()
4508 computeKnownFPClass(II->getArgOperand(2), DemandedElts, InterestedClasses, in computeKnownFPClass()
4523 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedSrcs, in computeKnownFPClass()
4554 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClass()
4566 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClass()
4568 computeKnownFPClass(II->getArgOperand(1), DemandedElts, InterestedClasses, in computeKnownFPClass()
4632 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClass()
4690 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedSrcs, in computeKnownFPClass()
4723 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClass()
4733 computeKnownFPClassForFPTrunc(Op, DemandedElts, InterestedClasses, Known, in computeKnownFPClass()
4757 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedSrcs, in computeKnownFPClass()
4780 computeKnownBits(Exp, isa<VectorType>(ExpTy) ? DemandedElts : APInt(1, 1), in computeKnownFPClass()
4797 computeKnownFPClass(II->getArgOperand(0), DemandedElts, fcNegative, in computeKnownFPClass()
4805 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClass()
4864 computeKnownFPClass(II->getArgOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClass()
4907 computeKnownFPClass(Op->getOperand(1), DemandedElts, InterestedSrcs, in computeKnownFPClass()
4916 computeKnownFPClass(Op->getOperand(0), DemandedElts, InterestedSrcs, in computeKnownFPClass()
4967 computeKnownFPClass(Op->getOperand(1), DemandedElts, NeedForNan, KnownRHS, in computeKnownFPClass()
4972 computeKnownFPClass(Op->getOperand(0), DemandedElts, NeedForNan, KnownLHS, in computeKnownFPClass()
5019 computeKnownFPClass(Op->getOperand(1), DemandedElts, in computeKnownFPClass()
5031 computeKnownFPClass(Op->getOperand(0), DemandedElts, in computeKnownFPClass()
5077 computeKnownFPClass(Op->getOperand(0), DemandedElts, InterestedClasses, in computeKnownFPClass()
5100 computeKnownFPClassForFPTrunc(Op, DemandedElts, InterestedClasses, Known, in computeKnownFPClass()
5160 unsigned NumElts = DemandedElts.getBitWidth(); in computeKnownFPClass()
5166 if (DemandedElts[EltIdx]) { in computeKnownFPClass()
5176 APInt DemandedVecElts = DemandedElts; in computeKnownFPClass()
5192 if (!Shuf || !getShuffleDemandedElts(Shuf, DemandedElts, DemandedLHS, DemandedRHS)) in computeKnownFPClass()
5229 computeKnownFPClass(II->getArgOperand(0), DemandedElts, in computeKnownFPClass()
5261 computeKnownFPClass(Src, DemandedElts, InterestedClasses, Known, Depth + 1, in computeKnownFPClass()
5291 computeKnownFPClass(IncValue, DemandedElts, InterestedClasses, KnownSrc, in computeKnownFPClass()
5314 const Value *V, const APInt &DemandedElts, const DataLayout &DL, in computeKnownFPClass() argument
5320 V, DemandedElts, InterestedClasses, KnownClasses, Depth, in computeKnownFPClass()