| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineAddSub.cpp | 870 if (match(Op0, m_Sub(m_Constant(Op00C), m_Value(X)))) in foldAddWithConstant() 876 if (match(Op0, m_OneUse(m_Sub(m_Value(X), m_Value(Y)))) && in foldAddWithConstant() 1319 if (match(LHS, m_Sub(m_Value(A), m_Value(B))) && in foldAddLikeCommutative() 1320 match(RHS, m_Sub(m_Value(C), m_Specific(A)))) { in foldAddLikeCommutative() 1382 m_ZExtOrSelf(m_Sub(m_SpecificInt(XTy->getScalarSizeInBits()), in canonicalizeCondSignextOfHighBitExtractToSignextHighBitExtract() 1622 m_Sub(m_ImmConstant(C2), m_Value(B)))) && in visitAdd() 1630 if (match(&I, m_c_Add(m_OneUse(m_Sub(m_ImmConstant(C1), m_Value(A))), in visitAdd() 2360 if (match(Op0, m_OneUse(m_c_Add(m_OneUse(m_Sub(m_Value(X), m_Value(Y))), in visitSub() 2368 if (match(Op0, m_OneUse(m_Sub(m_Value(X), m_Value(Y))))) { in visitSub() 2482 if (match(Op1, m_Sub(m_ImmConstant(C2), m_Value(X)))) in visitSub() [all …]
|
| H A D | InstCombineShifts.cpp | 1220 if (match(Op0, m_OneUse(m_Sub(m_APInt(C1), m_Value(X))))) { in visitShl() 1262 if (match(Op1, m_Sub(m_SpecificInt(BitWidth - 1), m_Value(X)))) in visitShl() 1662 m_ZExtOrSelf(m_Sub(m_Constant(C1), in foldVariableSignZeroExtensionOfVariableHighBitExtract() 1664 m_ZExtOrSelf(m_Sub(m_Constant(C2), in foldVariableSignZeroExtensionOfVariableHighBitExtract() 1683 m_Sub(m_Constant(C0), m_ZExtOrSelf(m_Specific(NBits))))) || in foldVariableSignZeroExtensionOfVariableHighBitExtract()
|
| H A D | InstCombineSelect.cpp | 970 if (match(TrueVal, m_Sub(m_Specific(B), m_Specific(A))) || in canonicalizeSaturatedSubtract() 974 else if (!match(TrueVal, m_Sub(m_Specific(A), m_Specific(B))) && in canonicalizeSaturatedSubtract() 1109 if (match(FI, m_Sub(m_Specific(A), m_Specific(B)))) { in foldAbsDiff() 1117 match(TI, m_Sub(m_Specific(A), m_Specific(B))) && in foldAbsDiff() 1118 match(FI, m_Sub(m_Specific(B), m_Specific(A))) && in foldAbsDiff() 2523 if (match(SA1, m_OneUse(m_Sub(m_SpecificInt(Width), m_Specific(SA0))))) in foldSelectFunnelShift() 2525 else if (match(SA0, m_OneUse(m_Sub(m_SpecificInt(Width), m_Specific(SA1))))) in foldSelectFunnelShift() 3528 if (match(CtlzOp, m_Sub(m_APInt(C), m_Specific(CommonAncestor)))) { in isSafeToRemoveBitCeilSelect() 3604 m_OneUse(m_Shl(m_One(), m_OneUse(m_Sub(m_SpecificInt(BitWidth), in foldBitCeil()
|
| H A D | InstCombineAndOrXor.cpp | 1977 !match(Op0, m_OneUse(m_Sub(m_Constant(C), m_Specific(Op1))))) in narrowMaskedBinOp() 2448 m_Sub(m_Value(X), m_Deferred(Y)))))) && in visitAnd() 2955 if (match(R, m_OneUse(m_Sub(m_SpecificInt(Width), m_Specific(L))))) { in convertOrOfShiftsToFunnelShift() 4800 if (match(NotVal, m_Sub(m_Value(X), m_Value(Y)))) in foldNot() 5009 if (RHSC->isSignMask() && match(Op0, m_Sub(m_APInt(C), m_Value(X)))) in visitXor()
|
| H A D | InstructionCombining.cpp | 2809 if (match(V, m_Sub(m_Value(A), m_Value(B)))) { in getFreelyInvertedImpl() 3213 m_Sub(m_PtrToInt(m_Value(Y)), m_PtrToInt(m_Specific(X)))) && in visitGetElementPtrInst() 4150 if (match(Cond, m_Sub(m_ConstantInt(SubLHS), m_Value(Op0)))) { in visitSwitchInst()
|
| H A D | InstCombineCasts.cpp | 561 if (match(R, m_OneUse(m_Sub(m_SpecificInt(Width), m_Specific(L))))) in narrowFunnelShift()
|
| H A D | InstCombineCompares.cpp | 2049 m_OneUse(m_Sub(m_Value(Lhs), m_Value(Rhs))))) { in foldICmpOrXorSubChain() 6198 m_Sub(m_Value(B), m_Deferred(A))); in foldICmpEquality() 7756 if (match(&I, m_c_ICmp(CmpPred, m_Sub(m_Value(A), m_Value(B)), in visitICmpInst()
|
| H A D | InstCombineMulDivRem.cpp | 1435 if (match(Op0, m_Sub(m_Value(X), m_Value(Z)))) // (X - Z) / Y; Y = Op1 in commonIDivTransforms()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | EVLIndVarSimplify.cpp | 230 match(RemTC, m_Sub(m_Value(TC), m_Specific(&PN)))) { in run()
|
| H A D | LoopVectorizationLegality.cpp | 1102 !match(HBinOp, m_Sub(m_Load(m_Specific(HPtrInstr)), m_Value(HIncVal)))) in findHistogram()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPULowerKernelAttributes.cpp | 306 m_UMin(m_Sub(m_Specific(GridSize), in processUse()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | DivRemPairs.cpp | 52 if (!match(&I, m_Sub(m_Value(Dividend), m_Value(XroundedDownToMultipleOfY)))) in matchExpandedRem()
|
| H A D | InductiveRangeCheckElimination.cpp | 365 if (!match(VariantLHS, m_Sub(m_Value(LHS), m_Value(RHS)))) in reassociateSubLHS()
|
| H A D | SeparateConstOffsetFromGEP.cpp | 1307 } else if (match(I, m_Sub(m_SExt(m_Value(LHS)), m_SExt(m_Value(RHS))))) { in reuniteExts()
|
| H A D | LoopIdiomRecognize.cpp | 3135 m_Sub(m_Instruction(IV), in detectShiftUntilZeroIdiom()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/ |
| H A D | AggressiveInstCombine.cpp | 87 m_Sub(m_SpecificInt(Width), m_Deferred(ShAmt))))))) { in foldGuardedFunnelShift() 94 m_OneUse(m_c_Or(m_Shl(m_Value(ShVal0), m_Sub(m_SpecificInt(Width), in foldGuardedFunnelShift() 332 if (match(AndOp0, m_Sub(m_Value(Root), m_Value(SubOp1))) && in tryToRecognizePopCount()
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | InstructionSimplify.cpp | 617 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() 832 if (MaxRecurse && match(Op1, m_Sub(m_Value(X), m_Value(Y)))) // Z - (X - Y) in simplifySubInst() 1522 if (match(Y, m_Sub(m_Value(A), m_Value(B)))) { in simplifyUnsignedRangeCheck() 1957 match(Op1, m_Sub(m_Constant(C2), m_Specific(X)))) || in simplifyLogicOfAddSub() 1959 match(Op0, m_Sub(m_Constant(C2), m_Specific(X))))) { in simplifyLogicOfAddSub() 2338 if ((match(X, m_Sub(m_APInt(C), m_Specific(Y))) || in simplifyOrInst() 2339 match(Y, m_Sub(m_APInt(C), m_Specific(X)))) && in simplifyOrInst() 3208 if (match(LBO, m_Sub(m_APIntAllowPoison(C), m_Specific(RHS))) && in simplifyICmpWithBinOpOnLHS() 3713 if (match(RHS, m_Sub(m_Specific(II->getArgOperand(0)), in simplifyICmpWithIntrinsicOnLHS() [all …]
|
| H A D | IVDescriptors.cpp | 878 m_Sub(m_Value(Op1), m_Value(Op2)).match(I1))) || in isConditionalRdxPattern()
|
| H A D | ValueTracking.cpp | 223 if (((match(RHS, m_Shl(m_Value(), m_Sub(m_APInt(R), m_Value(V)))) && in haveNoCommonBitsSetSpecialCases() 225 (match(RHS, m_LShr(m_Value(), m_Sub(m_APInt(R), m_Value(V)))) && in haveNoCommonBitsSetSpecialCases() 1034 match(I, m_c_BinOp(m_Value(X), m_Sub(m_Deferred(X), m_Value(Y)))) || in getKnownBitsFromAndXorOr() 1035 match(I, m_c_BinOp(m_Value(X), m_Sub(m_Value(Y), m_Deferred(X)))))) { in getKnownBitsFromAndXorOr() 8474 return (!NeedNSW && (match(X, m_Sub(m_Value(A), m_Value(B))) && in isKnownNegation() 8475 match(Y, m_Sub(m_Specific(B), m_Specific(A))))) || in isKnownNegation()
|
| H A D | LazyValueInfo.cpp | 1283 if (ICI->isEquality() && match(Val, m_Sub(m_Value(X), m_Value(Y)))) { in getValueFromICmpCondition()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | SDPatternMatch.h | 765 inline BinaryOpc_match<LHS, RHS> m_Sub(const LHS &L, const RHS &R) { 1234 return m_Sub(m_Zero(), V);
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | DAGCombiner.cpp | 2654 sd_match(N, m_Sub(m_Or(m_Value(A), m_Value(B)), in foldSubToAvg() 2659 sd_match(N, m_Sub(m_Or(m_Value(A), m_Value(B)), in foldSubToAvg() 2927 if (sd_match(N1, m_Sub(m_Value(B), m_Specific(N0)))) in visitADDLike() 2931 if (sd_match(N0, m_Sub(m_Value(B), m_Specific(N1)))) in visitADDLike() 2935 if (sd_match(N0, m_Sub(m_Value(A), m_Value(B))) && in visitADDLike() 2936 sd_match(N1, m_Sub(m_Value(C), m_Specific(A)))) in visitADDLike() 2940 if (sd_match(N0, m_Sub(m_Value(A), m_Value(B))) && in visitADDLike() 2941 sd_match(N1, m_Sub(m_Specific(B), m_Value(C)))) in visitADDLike() 2946 if (sd_match(N1, m_Sub(m_Value(B), m_Add(m_Specific(N0), m_Value(C))))) in visitADDLike() 2951 m_AnyOf(m_Add(m_Sub(m_Value(B), m_Specific(N0)), m_Value(C)), in visitADDLike() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | CodeGenPrepare.cpp | 1510 if (match(IVInc, m_Sub(m_Instruction(LHS), m_Constant(Step))) || in matchIncrement() 1732 if (match(U, m_Sub(m_Specific(A), m_Specific(B)))) { in combineToUSubWithOverflow() 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() 8676 match(UI, m_Sub(m_Specific(X), m_SpecificInt(CmpC))) || in optimizeBranch()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | PatternMatch.h | 1153 inline BinaryOp_match<LHS, RHS, Instruction::Sub> m_Sub(const LHS &L, in m_Sub() function 2901 return m_Sub(m_ZeroInt(), V);
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
| H A D | X86ISelLowering.cpp | 31762 match(I, m_Sub(m_AllOnes(), m_Value(PeekI)))) { in FindSingleBitChange() 31971 if (match(I, m_c_ICmp(Pred, m_Sub(m_ZeroInt(), m_Specific(Op)), m_Value()))) in shouldExpandCmpArithRMWInIR() 31986 if (match(I, m_OneUse(m_Sub(m_Value(), m_Specific(Op))))) { in shouldExpandCmpArithRMWInIR() 46436 MVT::i8, m_Sub(m_UMax(m_Value(Src0), m_Value(Src1)), in combineBasicSADPattern() 46439 m_Sub(m_AllOf(m_Value(Src0), in combineBasicSADPattern() 57906 N, m_Add(m_OneUse(m_Sub(m_AllOf(m_Value(Shift), in combineAdd()
|