| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | ComplexDeinterleavingPass.cpp | 1886 if (!match(RootI, m_Shuffle(m_Instruction(Real), m_Instruction(Imag)))) in identifyRoot() 1897 if (match(Real, m_ExtractValue<0>(m_Instruction(I))) && in identifyDeinterleave() 2079 if (!match(Real, m_Select(m_Instruction(MaskA), m_Instruction(AR), in identifySelectNode() 2080 m_Instruction(RA))) || in identifySelectNode() 2081 !match(Imag, m_Select(m_Instruction(MaskB), m_Instruction(AI), in identifySelectNode() 2082 m_Instruction(BI)))) in identifySelectNode()
|
| H A D | CodeGenPrepare.cpp | 1506 if (match(IVInc, m_Add(m_Instruction(LHS), m_Constant(Step))) || in matchIncrement() 1508 m_Instruction(LHS), m_Constant(Step))))) in matchIncrement() 1510 if (match(IVInc, m_Sub(m_Instruction(LHS), m_Constant(Step))) || in matchIncrement() 1512 m_Instruction(LHS), m_Constant(Step))))) { in matchIncrement() 9159 m_Br(m_OneUse(m_Instruction(LogicOp)), TBB, FBB))) in splitBranchCondition()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | VectorCombine.cpp | 624 if (!match(&I, m_Cmp(Pred, m_Instruction(I0), m_Instruction(I1))) && in foldExtractExtract() 625 !match(&I, m_BinOp(m_Instruction(I0), m_Instruction(I1)))) in foldExtractExtract() 680 if (!match(&I, m_InsertElt(m_Value(DestVec), m_OneUse(m_Instruction(FNeg)), in foldInsExtFNeg() 688 m_Instruction(Extract), in foldInsExtFNeg() 1275 if (!match(B0, m_Cmp(P0, m_Instruction(I0), m_Constant(C0))) || in foldExtractedCmps() 1276 !match(B1, m_Cmp(P1, m_Instruction(I1), m_Constant(C1)))) in foldExtractedCmps() 1383 m_ZExtOrSExt(m_Mul(m_Instruction(Op0), m_Instruction(Op1)))) && in analyzeCostOfVecReduction() 1624 m_InsertElt(m_Instruction(Source), m_Value(NewElement), in foldSingleElementStore() 1864 if (!match(&I, m_DisjointOr(m_Instruction(X), m_Instruction(Y)))) in foldConcatOfBoolMasks() 2081 if (!match(&I, m_Shuffle(m_OneUse(m_Instruction(LHS)), in foldShuffleOfBinops() [all …]
|
| H A D | LoopVectorizationLegality.cpp | 1093 if (!match(HSt, m_Store(m_BinOp(HBinOp), m_Instruction(HPtrInstr)))) in findHistogram()
|
| H A D | LoopVectorize.cpp | 5408 m_ZExtOrSExt(m_Mul(m_Instruction(Op0), m_Instruction(Op1)))) && in getReductionPatternCost() 5453 match(RedOp, m_Mul(m_Instruction(Op0), m_Instruction(Op1)))) { in getReductionPatternCost()
|
| H A D | SLPVectorizer.cpp | 21964 if (match(Cond, m_Cmp(Pred, m_Specific(LHS), m_Instruction(L2)))) { in getRdxKind() 21968 } else if (match(Cond, m_Cmp(Pred, m_Instruction(L1), m_Specific(RHS)))) { in getRdxKind() 21975 if (!match(Cond, m_Cmp(Pred, m_Instruction(L1), m_Instruction(L2))) || in getRdxKind()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineShifts.cpp | 65 m_Shift(m_Instruction(Sh0Op0), m_ZExtOrSelf(m_Value(ShAmt0))))) in reassociateShiftAmtsOfTwoSameDirectionShifts() 74 m_CombineOr(m_CombineAnd(m_Trunc(m_Instruction(Sh1)), m_Value(Trunc)), in reassociateShiftAmtsOfTwoSameDirectionShifts() 75 m_Instruction(Sh1))); in reassociateShiftAmtsOfTwoSameDirectionShifts() 518 match(Op0, m_OneUse(m_Instruction(CmpIntr))) && in commonShiftTransforms() 1496 if (match(Op0, m_OneUse(m_Trunc(m_Instruction(TruncSrc)))) && in visitLShr() 1661 m_AShr(m_Shl(m_Instruction(MaybeTrunc), in foldVariableSignZeroExtensionOfVariableHighBitExtract() 1671 match(MaybeTrunc, m_TruncOrSelf(m_Instruction(HighBitExtract))); in foldVariableSignZeroExtensionOfVariableHighBitExtract()
|
| H A D | InstCombineCompares.cpp | 1202 if (!I.isEquality() || !match(&I, m_ICmp(Pred, m_Instruction(Val), m_Zero()))) in foldSignBitTest() 3149 m_Add(m_CombineAnd(m_Instruction(Ext0), m_ZExtOrSExt(m_Value(Op0))), in foldICmpAddConstant() 3150 m_CombineAnd(m_Instruction(Ext1), in foldICmpAddConstant() 4722 m_c_And(m_CombineAnd(m_AnyLogicalShift, m_Instruction(XShift)), in foldShiftIntoShiftInAnotherHandOfAndInICmp() 4724 m_AnyLogicalShift, m_Instruction(YShift))), in foldShiftIntoShiftInAnotherHandOfAndInICmp() 4725 m_Instruction(MaybeTruncation))))) in foldShiftIntoShiftInAnotherHandOfAndInICmp() 4892 m_Instruction(Div)), in foldMultiplicationOverflowCheck() 4913 m_Instruction(Mul)), in foldMultiplicationOverflowCheck() 4915 m_Instruction(Div))))) { in foldMultiplicationOverflowCheck() 7073 m_CombineAnd(m_Instruction(ExtI), in foldICmpUsingBoolRange() [all …]
|
| H A D | InstCombineSelect.cpp | 1789 if (match(&SI, m_Select(m_Specific(ICI), m_APInt(C), m_Instruction(Op)))) in foldSelectInstWithICmpConst() 1791 else if (match(&SI, m_Select(m_Specific(ICI), m_Instruction(Op), m_APInt(C)))) in foldSelectInstWithICmpConst() 2274 if (!match(Sel.getTrueValue(), m_Instruction(ExtInst)) && in foldSelectExtConst() 2275 !match(Sel.getFalseValue(), m_Instruction(ExtInst))) in foldSelectExtConst() 3841 m_OneUse(m_Instruction(FAdd)), m_Constant(C)))) in foldSelectIntoAddConstant() 3845 m_Constant(C), m_OneUse(m_Instruction(FAdd))))) in foldSelectIntoAddConstant()
|
| H A D | InstCombineCalls.cpp | 1187 if (match(&MinMax1, m_SMin(m_Instruction(MinMax2), m_APInt(MaxValue)))) { in matchSAddSubSat() 1191 m_SMax(m_Instruction(MinMax2), m_APInt(MinValue)))) { in matchSAddSubSat() 1321 m_Instruction(Inner), in reassociateMinMaxWithConstantInOperand() 3329 if (match(IIOperand, m_SpecificICmp(ICmpInst::ICMP_NE, m_Instruction(LHS), in visitCallInst()
|
| H A D | InstCombineAddSub.cpp | 1359 m_LShr(m_Value(X), m_Instruction(LowBitsToSkip)), in canonicalizeCondSignextOfHighBitExtractToSignextHighBitExtract() 1360 m_Instruction(Extract))), in canonicalizeCondSignextOfHighBitExtractToSignextHighBitExtract() 2899 if (!match(&I, m_FNeg(m_OneUse(m_Instruction(FNegOp))))) in foldFNegIntoConstant()
|
| H A D | InstCombineAndOrXor.cpp | 2904 if (!match(Or.getOperand(0), m_Instruction(Or0)) || in convertOrOfShiftsToFunnelShift() 2905 !match(Or.getOperand(1), m_Instruction(Or1))) in convertOrOfShiftsToFunnelShift() 3991 match(Op0, m_Not(m_CombineAnd(m_Instruction(And), in visitOr() 3995 match(Op0, m_Not(m_CombineAnd(m_Instruction(And), in visitOr()
|
| H A D | InstructionCombining.cpp | 2571 if (!match(GEP.getPointerOperand(), m_Instruction(Sel)) || in foldSelectGEP()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/ |
| H A D | AggressiveInstCombine.cpp | 649 m_OneUse(m_Shl(m_OneUse(m_ZExt(m_OneUse(m_Instruction(L2)))), in foldLoadsRecursive() 652 m_OneUse(m_ZExt(m_OneUse(m_Instruction(L2)))))))) { in foldLoadsRecursive() 663 (match(X, m_OneUse(m_ZExt(m_Instruction(L1)))) || in foldLoadsRecursive() 664 match(X, m_OneUse(m_Shl(m_OneUse(m_ZExt(m_OneUse(m_Instruction(L1)))), in foldLoadsRecursive()
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | HashRecognize.cpp | 390 m_Select(m_Cmp(), m_Instruction(TV), m_Instruction(FV)))) in matchConditionalRecurrence()
|
| H A D | IVDescriptors.cpp | 81 if (match(J, m_And(m_Instruction(I), m_APInt(M)))) { in lookThroughAnd()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | DivRemPairs.cpp | 61 m_Instruction(Div)), in matchExpandedRem()
|
| H A D | Reassociate.cpp | 504 match(Op, m_Instruction(Neg))) { in LinearizeExprTree() 2021 if (!match(V, m_OneUse(m_Instruction(I)))) in getNegatibleInsts() 2129 if (match(I, m_FAdd(m_Value(X), m_OneUse(m_Instruction(Op))))) in canonicalizeNegFPConstants() 2132 if (match(I, m_FAdd(m_OneUse(m_Instruction(Op)), m_Value(X)))) in canonicalizeNegFPConstants() 2135 if (match(I, m_FSub(m_Value(X), m_OneUse(m_Instruction(Op))))) in canonicalizeNegFPConstants()
|
| H A D | LoopIdiomRecognize.cpp | 3109 m_Br(m_Instruction(ValShiftedIsZero), m_BasicBlock(TrueBB), in detectShiftUntilZeroIdiom() 3112 m_ICmp(Pred, m_Instruction(ValShifted), m_Zero())) || in detectShiftUntilZeroIdiom() 3121 m_Instruction(NBits)))) { in detectShiftUntilZeroIdiom() 3130 if (match(NBits, m_c_Add(m_Instruction(IV), in detectShiftUntilZeroIdiom() 3135 m_Sub(m_Instruction(IV), in detectShiftUntilZeroIdiom()
|
| H A D | StructurizeCFG.cpp | 646 if (match(PI.Pred, m_Not(m_OneUse(m_Instruction(Inverted)))) && in simplifyConditions()
|
| H A D | DeadStoreElimination.cpp | 2138 m_Instruction(ICmpL)), in dominatingConditionImpliesValue()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | ScalarEvolutionExpander.cpp | 1814 m_Br(m_ICmp(Pred, m_Instruction(LHS), m_Instruction(RHS)), in hasRelatedExistingExpansion()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
| H A D | AArch64TargetTransformInfo.cpp | 3031 if (!(match(Add, m_c_Add(m_Instruction(Ex1), in isExtPartOfAvgExpr() 3032 m_c_Add(m_Instruction(Ex2), m_SpecificInt(1)))))) in isExtPartOfAvgExpr() 4884 if (match(Term, m_Br(m_ICmp(Pred, m_Instruction(I), m_Value()), m_Value(), in getAppleRuntimeUnrollPreferences() 6297 if (match(I, m_c_Or(m_OneUse(m_Instruction(OtherAnd)), in isProfitableToSinkOperands() 6299 m_Instruction(IA)))))) { in isProfitableToSinkOperands() 6301 m_c_And(m_Specific(MaskValue), m_Instruction(IB)))) { in isProfitableToSinkOperands()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | PatternMatch.h | 830 inline bind_ty<Instruction> m_Instruction(Instruction *&I) { return I; } in m_Instruction() function
|