Home
last modified time | relevance | path

Searched refs:m_Specific (Results 1 – 25 of 57) sorted by relevance

123

/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineAndOrXor.cpp740 if (match(Cmp1Op0, m_SExtOrSelf(m_Specific(Input)))) { in simplifyRangeCheck()
744 } else if (match(Cmp1Op1, m_SExtOrSelf(m_Specific(Input)))) { in simplifyRangeCheck()
801 !match(RHS, m_OneUse(m_c_ICmp(Pred, m_Specific(Op), m_Value(Pow2)))) || in foldAndOrOfICmpsWithPow2AndWithZero()
904 } else if (match(X0, m_Trunc(m_Specific(X1)))) { in foldSignedTruncationCheck()
943 !match(Cmp1, m_ICmp(Pred1, m_Specific(X), m_ZeroInt()))) in foldIsPowerOf2OrZero()
980 m_Intrinsic<Intrinsic::ctpop>(m_Specific(X)), in foldIsPowerOf2()
992 m_Intrinsic<Intrinsic::ctpop>(m_Specific(X)), in foldIsPowerOf2()
1120 m_c_ICmp(UnsignedPred, m_Specific(ZeroCmpOp), m_Value(A))) && in foldUnsignedUnderflowCheck()
1121 match(ZeroCmpOp, m_c_Add(m_Specific(A), m_Value(B))) && in foldUnsignedUnderflowCheck()
1290 if (!match(Cmp1, m_c_ICmp(Pred1, m_Value(Y), m_Specific(X)))) in foldAndOrOfICmpsWithConstEq()
[all …]
H A DInstCombineSelect.cpp94 if (!BO->isCommutative() && !match(BO, m_BinOp(m_Value(Y), m_Specific(X)))) in foldSelectBinOpIdentity()
96 if (!match(BO, m_c_BinOp(m_Value(Y), m_Specific(X)))) in foldSelectBinOpIdentity()
594 match(FVal, m_NSWAdd(m_Specific(CmpRHS), m_One()))) { in foldSelectICmpMinMax()
600 match(FVal, m_NSWAdd(m_Specific(CmpRHS), m_AllOnes()))) { in foldSelectICmpMinMax()
606 match(FVal, m_NUWAdd(m_Specific(CmpRHS), m_One()))) { in foldSelectICmpMinMax()
614 match(FVal, m_Add(m_Specific(CmpRHS), m_AllOnes())) && in foldSelectICmpMinMax()
662 if (!match(Cmp->getOperand(0), m_c_And(m_Specific(X), m_Value(Y)))) in foldSelectICmpAndAnd()
697 !match(TVal, m_Zero()) || !match(FVal, m_Shl(m_Specific(X), m_APInt(C2)))) in foldSelectICmpAndZeroShl()
742 match(FalseVal, m_AShr(m_Specific(X), m_Specific(Y))) && in foldSelectICmpLshrAshr()
743 match(CmpLHS, m_Specific(X))) { in foldSelectICmpLshrAshr()
[all …]
H A DInstCombineAddSub.cpp1296 m_SExt(m_ICmp(Pred, m_And(m_Specific(X), m_APInt(MaskC)), in foldAddToAshr()
1320 match(RHS, m_Sub(m_Value(C), m_Specific(A)))) { in foldAddLikeCommutative()
1334 if (match(LHS, m_Shl(m_SDiv(m_Specific(RHS), m_APInt(C1)), m_APInt(C2)))) { in foldAddLikeCommutative()
1406 if (!match(Select, m_Select(m_ICmp(Pred, m_Specific(X), m_APInt(Thr)), in canonicalizeCondSignextOfHighBitExtractToSignextHighBitExtract()
1425 m_ZExtOrSelf(m_Specific(NBits))))) in canonicalizeCondSignextOfHighBitExtractToSignextHighBitExtract()
1459 !match(Op1, m_Shl(m_Value(Y), m_Specific(ShAmt)))) in factorizeMathWithShlOps()
1512 m_c_Add(m_c_Mul(m_LShr(m_Specific(Y), m_SpecificInt(HalfBits)), in foldBoxMultiply()
1513 m_CombineOr(m_Specific(X), m_Specific(XLo))), in foldBoxMultiply()
1514 m_c_Mul(m_LShr(m_Specific(X), m_SpecificInt(HalfBits)), in foldBoxMultiply()
1515 m_CombineOr(m_Specific(Y), m_Specific(YLo)))))) in foldBoxMultiply()
[all …]
H A DInstCombineMulDivRem.cpp651 match(Op1, m_AllowReassoc(m_Intrinsic<Intrinsic::powi>(m_Specific(X), in foldPowiReassoc()
664 m_Specific(Op1), m_Value(Y))))) && in foldPowiReassoc()
677 match(Op1, m_AllowReassoc(m_c_FMul(m_Specific(X), m_Value(Z)))) && in foldPowiReassoc()
701 if (match(I, m_FMul(m_Specific(Div), m_Specific(Div)))) in getFSqrtDivOptPattern()
708 if (match(I, m_FDiv(m_Specific(A), m_Sqrt(m_Specific(A))))) in getFSqrtDivOptPattern()
904 match(Op1, m_Intrinsic<Intrinsic::pow>(m_Specific(X), m_Value(Z)))) { in foldFMulReassoc()
911 match(Op1, m_Intrinsic<Intrinsic::pow>(m_Value(Z), m_Specific(Y)))) { in foldFMulReassoc()
941 if (match(Op0, m_OneUse(m_c_FMul(m_Specific(Op1), m_Value(Y)))) && Op1 != Y) { in foldFMulReassoc()
945 if (match(Op1, m_OneUse(m_c_FMul(m_Specific(Op0), m_Value(Y)))) && Op0 != Y) { in foldFMulReassoc()
1203 match(Op0, m_c_Mul(m_Specific(X), m_Value(Y)))) { in foldIDivShl()
[all …]
H A DInstCombineShifts.cpp993 if (match(I.getOperand(0), m_Shl(m_Value(), m_Specific(I.getOperand(1))))) { in setShiftFlags()
999 m_Specific(I.getOperand(0)), m_Value()))) { in setShiftFlags()
1076 if (match(Op0, m_Shr(m_Value(X), m_Specific(Op1)))) { in visitShl()
1184 (match(Y, m_Shr(m_Value(), m_Specific(Op1))) || in visitShl()
1185 match(Y, m_And(m_OneUse(m_Shr(m_Value(), m_Specific(Op1))), in visitShl()
1190 if (match(Shr, m_OneUse(m_Shr(m_Value(X), m_Specific(Op1))))) { in visitShl()
1204 m_OneUse(m_And(m_OneUse(m_Shr(m_Value(X), m_Specific(Op1))), in visitShl()
1233 if (match(Op0, m_OneUse(m_Shr(m_Value(X), m_Specific(Op1))))) { in visitShl()
1240 if (match(Op0, m_LShr(m_AllOnes(), m_Specific(Op1)))) { in visitShl()
1303 match(Op0, m_OneUse(m_NUWSub(m_NUWShl(m_Value(X), m_Specific(Op1)), in visitLShr()
[all …]
H A DInstCombineCompares.cpp1426 m_ICmp(DomPred, m_Specific(X), m_APInt(DomC)))) in foldICmpWithDominatingICmp()
1873 match(LShr, m_LShr(m_Specific(A), m_Value(B)))) { in foldICmpAndConstConst()
1940 match(And->getOperand(1), m_Not(m_Specific(X)))) { in foldICmpAndConstant()
4566 if (match(Op0, m_c_And(m_Specific(Op1), m_Value(M)))) { in foldICmpWithLowBitMaskedVal()
4987 if (match(Op1, m_c_And(m_Specific(Op0), m_Value()))) { in foldICmpAndXX()
4992 if (!match(Op0, m_c_And(m_Specific(Op1), m_Value(A)))) in foldICmpAndXX()
5050 if (match(Op1, m_c_Or(m_Specific(Op0), m_Value(A)))) { in foldICmpOrXX()
5053 } else if (!match(Op0, m_c_Or(m_Specific(Op1), m_Value(A)))) { in foldICmpOrXX()
5084 if (match(Op1, m_c_Xor(m_Specific(Op0), m_Value()))) { in foldICmpXorXX()
5088 if (!match(Op0, m_c_Xor(m_Specific(Op1), m_Value(A)))) in foldICmpXorXX()
[all …]
H A DInstCombineNegator.cpp339 if (match(TV, m_Neg(m_Specific(FV)))) in visitImpl()
341 else if (match(FV, m_Neg(m_Specific(TV)))) in visitImpl()
H A DInstructionCombining.cpp969 m_OneUse(m_Shift(m_Value(X), m_Specific(Shift))), in foldBinOpShiftWithShift()
1101 if (match(A, m_Not(m_Specific(CondVal)))) { in foldBinOpOfSelectAndCastOfSelectCondition()
1707 m_Specific(Op), m_Value(V))) && in simplifyOperationIntoSelectOperand()
1889 match(&I, m_ICmp(m_Specific(PN), m_APInt(Ignored)))) in foldOpIntoPhi()
1896 m_SpecificICmp(ICmpInst::ICMP_EQ, m_Specific(PN), m_Zero()))) in foldOpIntoPhi()
2358 m_Value(V2), m_AllOnes(), m_Specific(EVL))) && in foldVectorBinop()
2401 m_Shuffle(m_Specific(V2), m_Specific(V1), m_SpecificMask(Mask)))) { in foldVectorBinop()
3213 m_Sub(m_PtrToInt(m_Value(Y)), m_PtrToInt(m_Specific(X)))) && in visitGetElementPtrInst()
3767 m_CombineOr(m_Specific(Op), in tryToMoveFreeBeforeNullTest()
3768 m_Specific(Op->stripPointerCasts())), in tryToMoveFreeBeforeNullTest()
[all …]
H A DInstCombineCalls.cpp508 match(II.user_back(), m_Shift(m_Value(), m_Specific(&II)))) { in foldCttzCtlz()
868 if (!match(I->getArgOperand(0), m_Not(m_Specific(U)))) in foldIntrinsicWithOverflowCommon()
1931 if (!match(B, m_OneUse(m_Add(m_Specific(X), m_One())))) in visitCallInst()
2046 if ((match(I0, m_c_Xor(m_Specific(I1), m_Value(X))) || in visitCallInst()
2047 match(I1, m_c_Xor(m_Specific(I0), m_Value(X)))) && in visitCallInst()
2685 if (match(Op0, m_FNeg(m_Value(X))) && match(Op1, m_Specific(X))) in visitCallInst()
2781 match(Src1, m_FAbs(m_Specific(X)))) { in visitCallInst()
2874 if (match(TVal, m_FNeg(m_Specific(FVal)))) in visitCallInst()
2877 if (match(FVal, m_FNeg(m_Specific(TVal)))) in visitCallInst()
3302 if (match(Next, m_Intrinsic<Intrinsic::assume>(m_Specific(IIOperand)))) in visitCallInst()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DInstructionSimplify.cpp617 if (match(Op1, m_Sub(m_Value(Y), m_Specific(Op0))) || in simplifyAddInst()
618 match(Op0, m_Sub(m_Value(Y), m_Specific(Op1)))) in simplifyAddInst()
623 if (match(Op0, m_Not(m_Specific(Op1))) || match(Op1, m_Not(m_Specific(Op0)))) in simplifyAddInst()
880 if (match(Op1, m_Xor(m_Value(X), m_Specific(Op0))) && in simplifySubInst()
917 m_Exact(m_IDiv(m_Value(X), m_Specific(Op1)))) || // (X / Y) * Y in simplifyMulInst()
918 match(Op1, m_Exact(m_IDiv(m_Value(X), m_Specific(Op0)))))) // Y * (X / Y) in simplifyMulInst()
985 if (match(X, m_SRem(m_Value(), m_Specific(Y)))) in isDivZero()
1102 if (match(Op0, m_c_Mul(m_Value(X), m_Specific(Op1)))) { in simplifyDivRem()
1108 (IsSigned && match(X, m_SDiv(m_Value(), m_Specific(Op1)))) || in simplifyDivRem()
1109 (!IsSigned && match(X, m_UDiv(m_Value(), m_Specific(Op1))))) { in simplifyDivRem()
[all …]
H A DValueTracking.cpp182 match(RHS, m_c_And(m_Specific(M), m_Value())) && in haveNoCommonBitsSetSpecialCases()
188 if (match(RHS, m_c_And(m_Not(m_Specific(LHS)), m_Value())) && in haveNoCommonBitsSetSpecialCases()
196 m_c_Xor(m_c_And(m_Specific(LHS), m_Value(Y)), m_Deferred(Y))) && in haveNoCommonBitsSetSpecialCases()
204 match(RHS, m_ZExtOrSExt(m_Not(m_Specific(Y)))) && in haveNoCommonBitsSetSpecialCases()
212 match(RHS, m_Not(m_c_Or(m_Specific(A), m_Specific(B)))) && in haveNoCommonBitsSetSpecialCases()
224 match(LHS, m_LShr(m_Value(), m_Specific(V)))) || in haveNoCommonBitsSetSpecialCases()
226 match(LHS, m_Shl(m_Value(), m_Specific(V))))) && in haveNoCommonBitsSetSpecialCases()
604 if (match(ValOut, m_Select(m_Value(), m_Specific(PHI), m_Value(V))) || in breakSelfRecursivePHI()
605 match(ValOut, m_Select(m_Value(), m_Value(V), m_Specific(PHI)))) in breakSelfRecursivePHI()
662 auto m_V = m_CombineOr(m_Specific(V), m_PtrToInt(m_Specific(V))); in isKnownNonZeroFromAssume()
[all …]
H A DLazyValueInfo.cpp1105 if (match(LHS, m_AddLike(m_Specific(Val), m_APInt(C)))) { in matchICmpOperand()
1112 if (match(Val, m_AddLike(m_Specific(LHS), m_APInt(C)))) { in matchICmpOperand()
1118 if (match(LHS, m_c_Or(m_Specific(Val), m_Value())) && in matchICmpOperand()
1123 if (match(LHS, m_c_And(m_Specific(Val), m_Value())) && in matchICmpOperand()
1228 if (match(LHS, m_Intrinsic<Intrinsic::ctpop>(m_Specific(Val)))) in getValueFromICmpCondition()
1232 if (match(LHS, m_And(m_Specific(Val), m_APInt(Mask))) && in getValueFromICmpCondition()
1252 if (match(LHS, m_CombineOr(m_URem(m_Specific(Val), m_Value()), in getValueFromICmpCondition()
1253 m_Trunc(m_Specific(Val)))) && in getValueFromICmpCondition()
1267 match(LHS, m_AShr(m_Specific(Val), m_APInt(ShAmtC))) && in getValueFromICmpCondition()
H A DHashRecognize.cpp342 if (match(I, m_c_BinOp(m_Value(), m_Specific(Phi)))) in digRecurrence()
526 if (match(I, m_c_Xor(m_CastOrSelf(m_Specific(P1)), in isConditionalOnXorOfPHIs()
527 m_CastOrSelf(m_Specific(P2))))) in isConditionalOnXorOfPHIs()
H A DAssumeBundleQueries.cpp141 m_Intrinsic<Intrinsic::assume>(m_Unless(m_Specific(U->get()))))) in getBundleFromUse()
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPULowerKernelAttributes.cpp253 m_Specific(BlockCount)))) { in processUse()
306 m_UMin(m_Sub(m_Specific(GridSize), in processUse()
307 m_Mul(GroupIDIntrin, m_Specific(ZextGroupSize))), in processUse()
308 m_Specific(ZextGroupSize)))) { in processUse()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopFlatten.cpp204 bool IsAdd = match(U, m_c_Add(m_Specific(InnerInductionPHI), in matchLinearIVUser()
206 match(MatchedMul, m_c_Mul(m_Specific(OuterInductionPHI), in matchLinearIVUser()
212 match(U, m_c_Add(m_Trunc(m_Specific(InnerInductionPHI)), in matchLinearIVUser()
214 match(MatchedMul, m_c_Mul(m_Trunc(m_Specific(OuterInductionPHI)), in matchLinearIVUser()
219 m_Specific(InnerInductionPHI))) && in matchLinearIVUser()
220 match(MatchedMul, m_c_Mul(m_Specific(OuterInductionPHI), in matchLinearIVUser()
588 if (match(&I, m_c_Mul(m_Specific(FI.OuterInductionPHI), in checkOuterLoopInsts()
589 m_Specific(FI.InnerTripCount)))) in checkOuterLoopInsts()
H A DEarlyCSE.cpp197 if (!match(Cond, m_ICmp(Pred, m_Specific(A), m_Specific(B)))) { in matchSelectWithOptionalNotCond()
201 if (!match(Cond, m_ICmp(Pred, m_Specific(B), m_Specific(A)))) in matchSelectWithOptionalNotCond()
456 match(CondR, m_Cmp(PredR, m_Specific(X), m_Specific(Y))) && in isEqualImpl()
H A DDivRemPairs.cpp60 m_c_Mul(m_CombineAnd(m_IDiv(m_Specific(Dividend), m_Value(Divisor)), in matchExpandedRem()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlanUtils.cpp66 (match(A, m_ScalarIVSteps(m_Specific(Plan.getCanonicalIV()), in isHeaderMask()
68 m_Specific(&Plan.getVF()))) || in isHeaderMask()
H A DLoopIdiomVectorize.cpp306 !match(Index, m_c_Add(m_Specific(PN), m_One()))) in recognizeByteCompare()
323 m_Br(m_SpecificICmp(ICmpInst::ICMP_EQ, m_Specific(Index), in recognizeByteCompare()
373 if (IdxA != IdxB || !match(IdxA, m_ZExt(m_Specific(Index)))) in recognizeByteCompare()
1121 if (!match(SearchIndex, m_GEP(m_Specific(PSearch), m_One())) || in recognizeFindFirstByte()
1122 !match(NeedleIndex, m_GEP(m_Specific(PNeedle), m_One()))) in recognizeFindFirstByte()
1141 m_Br(m_SpecificICmp(ICmpInst::ICMP_EQ, m_Specific(GEPNeedle), in recognizeFindFirstByte()
1143 m_BasicBlock(OuterBB), m_Specific(MatchBB))) || in recognizeFindFirstByte()
1156 m_Br(m_SpecificICmp(ICmpInst::ICMP_EQ, m_Specific(GEPSearch), in recognizeFindFirstByte()
1158 m_BasicBlock(ExitFail), m_Specific(Header)))) in recognizeFindFirstByte()
H A DEVLIndVarSimplify.cpp229 m_c_Add(m_ZExtOrSelf(IntrinsicMatch), m_Specific(&PN))) && in run()
230 match(RemTC, m_Sub(m_Value(TC), m_Specific(&PN)))) { in run()
H A DVPlanTransforms.cpp737 return match(VPV, m_c_Binary<Instruction::Add>(m_Specific(WideIV), in getOptimizableIVOf()
738 m_Specific(IVStep))); in getOptimizableIVOf()
740 return match(VPV, m_c_Binary<Instruction::FAdd>(m_Specific(WideIV), in getOptimizableIVOf()
741 m_Specific(IVStep))); in getOptimizableIVOf()
743 return match(VPV, m_Binary<Instruction::FSub>(m_Specific(WideIV), in getOptimizableIVOf()
744 m_Specific(IVStep))); in getOptimizableIVOf()
760 match(VPV, m_GetElementPtr(m_Specific(WideIV), in getOptimizableIVOf()
761 m_Specific(WideIV->getStepValue()))); in getOptimizableIVOf()
1139 match(A, m_c_BinaryOr(m_Specific(X), m_VPValue(Y))) && in simplifyRecipe()
1387 m_Specific(WideIV), in optimizeVectorInductionWidthForTCAndVFUF()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DExpandMemCmp.cpp683 } else if (match(UI, m_SpecificICmp(ICmpInst::ICMP_SGT, m_Specific(CI), in getMemCmpOneBlock()
687 } else if (match(UI, m_SpecificICmp(ICmpInst::ICMP_SLT, m_Specific(CI), in getMemCmpOneBlock()
693 match(UI, m_ICmp(Pred, m_Specific(CI), m_Zero())); in getMemCmpOneBlock()
H A DCodeGenPrepare.cpp1655 if (match(U, m_Add(m_Specific(A), m_Specific(B)))) { in matchUAddWithOverflowConstantEdgeCases()
1732 if (match(U, m_Sub(m_Specific(A), m_Specific(B)))) { in combineToUSubWithOverflow()
1739 if (match(U, m_Add(m_Specific(A), m_APInt(AddC))) && in combineToUSubWithOverflow()
1954 if (!match(DomCond, m_ICmp(DomPred, m_Specific(CmpOp0), m_Specific(CmpOp1)))) in foldICmpWithDominatingICmp()
2002 if (match(U, m_Sub(m_Specific(Op1), m_Specific(Op0)))) in swapICmpOperandsToExposeCSEOpportunities()
2004 else if (match(U, m_Sub(m_Specific(Op0), m_Specific(Op1)))) in swapICmpOperandsToExposeCSEOpportunities()
2115 if (!match(LoopIncrInfo->first, m_c_NUWAdd(m_Specific(PN), m_Value()))) in isRemOfLoopIncrementWithLoopInvariant()
8662 match(UI, m_Shr(m_Specific(X), m_SpecificInt(CmpC.logBase2())))) { in optimizeBranch()
8675 (match(UI, m_Add(m_Specific(X), m_SpecificInt(-CmpC))) || in optimizeBranch()
8676 match(UI, m_Sub(m_Specific(X), m_SpecificInt(CmpC))) || in optimizeBranch()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/
H A DHexagonLoopIdiomRecognition.cpp701 if (match(A, m_Shl(m_One(), m_Specific(CIV)))) { in matchLeftShift()
704 } else if (match(B, m_Shl(m_One(), m_Specific(CIV)))) { in matchLeftShift()
763 if (!match(U, m_c_Xor(m_Specific(SelI), m_Value(R)))) in matchLeftShift()
774 if (!match(T, m_Shl(m_Value(Q), m_Specific(CIV))) && in matchLeftShift()
775 !match(T, m_Shl(m_ZExt(m_Value(Q)), m_ZExt(m_Specific(CIV))))) in matchLeftShift()
834 if (!match(FalseV, m_c_Xor(m_Specific(TrueV), m_Value(Q)))) in matchRightShift()
844 if (!match(TrueV, m_c_Xor(m_Specific(FalseV), m_Value(Q)))) in matchRightShift()

123