| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineAddSub.cpp | 765 if (match(RHS, m_Add(m_Value(X), m_One()))) in checkForNegativeOperand() 768 if (match(LHS, m_Add(m_Value(X), m_One()))) { in checkForNegativeOperand() 1006 if (match(Op0, m_ZExt(m_Add(m_Value(X), m_AllOnes())))) { in foldAddWithConstant() 1224 if (!match(&I, m_Add(m_OneUse(m_Shl(m_One(), m_Value(NBits))), m_AllOnes()))) in canonicalizeLowbitMask() 1255 if (match(&I, m_Add(m_UMin(m_Value(X), m_APInt(NotC)), m_APInt(C))) && in foldToUnsignedSaturatedAdd() 1606 if (match(&I, m_c_BinOp(m_Add(m_Value(A), m_One()), m_Not(m_Value(B)))) || in visitAdd() 1621 if (match(&I, m_c_Add(m_Add(m_Value(A), m_ImmConstant(C1)), in visitAdd() 1719 m_Add(m_OneUse(m_c_And(m_Value(A), m_OneUse(m_Neg(m_Deferred(A))))), in visitAdd() 1781 if (match(LHS, m_Add(m_Value(A), m_One())) && in visitAdd() 2280 if (match(Op1, m_Add(m_Value(X), m_ImmConstant(C2)))) { in visitSub() [all …]
|
| H A D | InstCombineShifts.cpp | 217 auto MaskA = m_Add(m_Shl(m_One(), m_Value(MaskShAmt)), m_AllOnes()); in dropRedundantMaskingOfLeftShiftInput() 464 if (match(Op0, m_APInt(AC)) && match(Op1, m_Add(m_Value(A), m_APInt(AddC))) && in commonShiftTransforms() 936 m_Add(m_OneUse(m_ZExt(m_Value(X))), m_OneUse(m_ZExt(m_Value(Y)))))) in foldLShrOverflowBit() 1313 if (match(Op0, m_Add(m_Value(X), m_Value(Y))) && match(Op1, m_One()) && in visitLShr() 1490 if (match(Op0, m_OneUse(m_c_And(m_Add(m_Value(X), m_AllOnes()), in visitLShr() 1592 if (ShAmtC == 1 && match(Op0, m_Add(m_Value(X), m_Value(Y))) && in visitLShr() 1787 if (match(Op0, m_OneUse(m_c_And(m_Add(m_Value(X), m_AllOnes()), in visitAShr()
|
| H A D | InstCombineSelect.cpp | 614 match(FVal, m_Add(m_Specific(CmpRHS), m_AllOnes())) && in foldSelectICmpMinMax() 946 if (match(B, m_Zero()) && match(TrueVal, m_Add(m_Specific(A), m_AllOnes()))) in canonicalizeSaturatedSubtract() 972 match(TrueVal, m_Add(m_Specific(B), m_SpecificInt(-*C))))) in canonicalizeSaturatedSubtract() 976 match(TrueVal, m_Add(m_Specific(A), m_SpecificInt(-*C))))) in canonicalizeSaturatedSubtract() 1017 if (match(FVal, m_Add(m_Specific(Cmp0), m_One())) && in canonicalizeSaturatedAdd() 1026 match(FVal, m_Add(m_Specific(Cmp0), m_APIntAllowPoison(C))) && in canonicalizeSaturatedAdd() 1037 match(FVal, m_Add(m_Specific(Cmp0), m_APIntAllowPoison(C))) && in canonicalizeSaturatedAdd() 1047 match(FVal, m_Add(m_Specific(Cmp0), m_APIntAllowPoison(C))) && in canonicalizeSaturatedAdd() 1551 m_Add(m_Specific(X), in canonicalizeClampLike() 1690 if (Pred == CmpInst::ICMP_ULT && match(X, m_Add(m_Value(), m_Constant()))) in tryToReuseConstantFromSelectInComparison() [all …]
|
| H A D | InstCombineAndOrXor.cpp | 850 m_Add(m_Value(X), m_Power2(I01)), in foldSignedTruncationCheck() 1332 if (match(V1, m_Add(m_Value(X), m_APInt(Offset1)))) in foldAndOrOfICmpsUsingRanges() 1334 if (match(V2, m_Add(m_Value(X), m_APInt(Offset2)))) in foldAndOrOfICmpsUsingRanges() 1973 if (!match(Op0, m_OneUse(m_Add(m_Specific(Op1), m_Constant(C)))) && in narrowMaskedBinOp() 2191 if (!(match(Op0, m_OneUse(m_Add(m_Value(X), m_APInt(C2)))) && in canonicalizeLogicFirst() 2496 if (match(Op0, m_Add(m_Value(X), m_APInt(AddC)))) { in visitAnd() 2812 if (match(&I, m_c_And(m_OneUse(m_Add(m_ZExtOrSelf(m_Value(A)), m_AllOnes())), in visitAnd() 3310 m_Add(m_Specific(LHS0), m_SpecificIntAllowPoison(-*CInt))) || in foldAndOrOfICmpEqConstantAndICmp() 4188 if (match(&I, m_c_Or(m_Add(m_Shl(m_One(), m_Value(X)), m_AllOnes()), in visitOr() 4795 if (match(NotVal, m_Add(m_Value(X), m_ImmConstant(C)))) in foldNot() [all …]
|
| H A D | InstCombineCompares.cpp | 1337 match(Op0, m_Add(m_Add(m_Value(A), m_Value(B)), m_ConstantInt(CI2)))) in foldICmpWithConstant() 1939 if (match(And->getOperand(0), m_Add(m_Value(X), m_AllOnes())) && in foldICmpAndConstant() 2010 if (match(And, m_And(m_OneUse(m_Add(m_Value(A), m_APInt(Addend))), in foldICmpAndConstant() 2132 match(Or, m_c_Or(m_Add(m_Value(X), m_AllOnes()), m_Deferred(X)))) { in foldICmpOrConstant() 3149 m_Add(m_CombineAnd(m_Instruction(Ext0), m_ZExtOrSExt(m_Value(Op0))), in foldICmpAddConstant() 4435 return match(V, m_c_Xor(m_Value(X), m_Add(m_Deferred(X), m_AllOnes()))); in isMaskOrZero() 5169 if (match(Op0, m_OneUse(m_Add(m_c_Add(m_Specific(Op1), m_Value(X)), in foldICmpBinOp() 5176 if (match(Op1, m_OneUse(m_Add(m_c_Add(m_Specific(Op0), m_Value(X)), in foldICmpBinOp() 5206 match(BO, m_Add(m_Specific(Op1), m_SpecificIntAllowPoison(*C)))) { in foldICmpBinOp() 5215 match(BO, m_Add(m_Specific(Op0), m_SpecificIntAllowPoison(*C)))) { in foldICmpBinOp() [all …]
|
| H A D | InstCombineCalls.cpp | 568 if (match(Op0, m_Add(m_LShr(m_AllOnes(), m_Value(X)), m_One()))) { in foldCttzCtlz() 673 m_c_And(m_Not(m_Value(X)), m_Add(m_Deferred(X), m_AllOnes())))) { in foldCtpop() 1152 if (!match(Op0, m_OneUse(m_Add(m_Value(X), m_APInt(C0)))) || in moveAddAfterMinMax() 1931 if (!match(B, m_OneUse(m_Add(m_Specific(X), m_One())))) in visitCallInst() 3398 match(A, m_Add(m_Value(A), m_ConstantInt(Offset))); in visitCallInst()
|
| H A D | InstCombineMulDivRem.cpp | 163 if (match(Y, m_OneUse(m_Add(m_BinOp(Shift), m_One()))) && in foldMulShl1() 2463 if (match(Op0, m_Add(m_Value(X), m_One()))) { in visitURem()
|
| H A D | InstCombineSimplifyDemanded.cpp | 515 if (match(I, m_Add(m_SExt(m_Value(X)), m_SExt(m_Value(Y)))) && in SimplifyDemandedUseBits()
|
| H A D | InstructionCombining.cpp | 2785 if (match(V, m_Add(m_Value(A), m_Value(B)))) { in getFreelyInvertedImpl() 4138 if (match(Cond, m_Add(m_Value(Op0), m_ConstantInt(AddRHS)))) { in visitSwitchInst()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | LoopUnroll.cpp | 394 if (match(&Inst, m_Add(m_Add(m_Value(X), m_APInt(C1)), m_APInt(C2)))) { in simplifyLoopAfterUnroll()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | NaryReassociate.cpp | 529 return match(V, m_Add(m_Value(Op1), m_Value(Op2))); in matchTernaryOp()
|
| H A D | GuardWidening.cpp | 845 if (match(Check.getBase(), m_Add(m_Value(OpLHS), m_ConstantInt(OpRHS)))) { in parseRangeChecks()
|
| H A D | SeparateConstOffsetFromGEP.cpp | 1294 if (match(I, m_Add(m_SExt(m_Value(LHS)), m_SExt(m_Value(RHS))))) { in reuniteExts()
|
| H A D | ConstraintElimination.cpp | 626 if (match(V, m_Add(m_Value(Op0), m_ConstantInt(CI))) && CI->isNegative() && in decompose()
|
| H A D | LoopIdiomRecognize.cpp | 3154 if (!IVNext || !match(IVNext, m_Add(m_Specific(IVPN), m_One()))) { in detectShiftUntilZeroIdiom()
|
| H A D | JumpThreading.cpp | 816 match(CmpLHS, m_Add(m_Value(AddLHS), m_ConstantInt(AddConst)))) { in computeValueKnownInPredecessorsImpl()
|
| H A D | LowerMatrixIntrinsics.cpp | 126 return m_CombineOr(m_Add(L, R), m_FAdd(L, R)); in m_AnyAdd()
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | InstructionSimplify.cpp | 788 if (MaxRecurse && match(Op0, m_Add(m_Value(X), m_Value(Y)))) { // (X + Y) - Z in simplifySubInst() 810 if (MaxRecurse && match(Op1, m_Add(m_Value(Y), m_Value(Z)))) { // X - (Y + Z) in simplifySubInst() 1660 if (!match(Op0, m_ICmp(Pred0, m_Add(m_Value(V), m_APInt(C0)), m_APInt(C1)))) in simplifyAndOfICmpsWithAdd() 1751 if (!match(Op0, m_ICmp(Pred0, m_Add(m_Value(V), m_APInt(C0)), m_APInt(C1)))) in simplifyOrOfICmpsWithAdd() 1956 if ((match(Op0, m_Add(m_Value(X), m_Constant(C1))) && in simplifyLogicOfAddSub() 1958 (match(Op1, m_Add(m_Value(X), m_Constant(C1))) && in simplifyLogicOfAddSub() 2003 if (match(Op0, m_Add(m_Specific(Op1), m_AllOnes())) && in simplifyAndCommutative() 2011 match(Op1, m_Add(m_Shl(m_Specific(X), m_APInt(Shift2)), m_AllOnes())) && in simplifyAndCommutative() 2080 match(Op0, m_Add(m_Value(Shift), m_AllOnes())) && in simplifyAndInst() 3241 if (!match(LHS, m_Add(m_Value(X), m_APInt(C1))) || in trySimplifyICmpWithAdds() [all …]
|
| H A D | IVDescriptors.cpp | 877 ((m_Add(m_Value(Op1), m_Value(Op2)).match(I1) || in isConditionalRdxPattern()
|
| H A D | VectorUtils.cpp | 361 if (match(V, m_Add(m_Value(Val), m_Constant(C)))) in findScalarElement()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | SDPatternMatch.h | 760 inline BinaryOpc_match<LHS, RHS, true> m_Add(const LHS &L, const RHS &R) { 792 return m_AnyOf(m_Add(L, R), m_DisjointOr(L, R));
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | PatternMatch.h | 1141 inline BinaryOp_match<LHS, RHS, Instruction::Add> m_Add(const LHS &L, in m_Add() function 1457 return m_CombineOr(m_Add(L, R), m_DisjointOr(L, R)); in m_AddLike() 2555 auto AddExpr = m_Add(m_Value(AddLHS), m_Value(AddRHS)); in match()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | LoopVectorizationLegality.cpp | 1101 if (!match(HBinOp, m_Add(m_Load(m_Specific(HPtrInstr)), m_Value(HIncVal))) && in findHistogram()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | CodeGenPrepare.cpp | 1506 if (match(IVInc, m_Add(m_Instruction(LHS), m_Constant(Step))) || in matchIncrement() 1655 if (match(U, m_Add(m_Specific(A), m_Specific(B)))) { in matchUAddWithOverflowConstantEdgeCases() 1739 if (match(U, m_Add(m_Specific(A), m_APInt(AddC))) && in combineToUSubWithOverflow() 4573 match(ScaleReg, m_Add(m_Value(AddLHS), m_ConstantInt(CI))) && in matchScaledValue() 8675 (match(UI, m_Add(m_Specific(X), m_SpecificInt(-CmpC))) || in optimizeBranch()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | DAGCombiner.cpp | 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() 3026 if (sd_match(N0, m_OneUse(m_Mul(m_Add(m_Value(A), m_ConstInt(CA)), in visitADDLike() 3049 if (sd_match(N0, m_OneUse(m_Add( in visitADDLike() 3050 m_OneUse(m_Mul(m_Add(m_Value(A), m_ConstInt(CA)), in visitADDLike() 3097 sd_match(N, m_Add(m_And(m_Value(A), m_Value(B)), in foldAddToAvg() 3102 sd_match(N, m_Add(m_And(m_Value(A), m_Value(B)), in foldAddToAvg() 4229 if (sd_match(N0, m_Add(m_Value(A), m_Add(m_Specific(N1), m_Value(C))))) in visitSUB() 4233 if (sd_match(N0, m_Add(m_Value(A), m_Sub(m_Specific(N1), m_Value(C))))) in visitSUB() 5614 m_AllOf(m_Value(Add), m_Add(m_Value(X), m_Value(Y))), in visitAVG() [all …]
|