Home
last modified time | relevance | path

Searched refs:m_BinOp (Results 1 – 25 of 27) sorted by relevance

12

/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineVectorOps.cpp85 if (match(V, m_OneUse(m_BinOp(m_Value(V0), m_Value(V1))))) in cheapToScalarize()
479 if (match(SrcVec, m_BinOp(BO)) && cheapToScalarize(SrcVec, Index) && in visitExtractElementInst()
2155 if (match(Op0, m_BinOp(m_Specific(Op1), m_Constant(C)))) in foldSelectShuffleWith1Binop()
2157 else if (match(Op1, m_BinOp(m_Specific(Op0), m_Constant(C)))) in foldSelectShuffleWith1Binop()
2270 if (!match(Shuf.getOperand(0), m_BinOp(B0)) || in foldSelectShuffle()
2271 !match(Shuf.getOperand(1), m_BinOp(B1))) in foldSelectShuffle()
2280 if (match(B0, m_BinOp(m_Constant(C0), m_Value(X))) && in foldSelectShuffle()
2281 match(B1, m_BinOp(m_Constant(C1), m_Value(Y)))) in foldSelectShuffle()
2283 else if (match(B0, m_CombineOr(m_BinOp(m_Value(X), m_Constant(C0)), in foldSelectShuffle()
2285 match(B1, m_CombineOr(m_BinOp(m_Value(Y), m_Constant(C1)), in foldSelectShuffle()
[all …]
H A DInstCombineShifts.cpp378 return match(V, m_BinOp(ShiftOpcode, m_Value(X), m_Constant(C0))) && in foldShiftOfShiftedBinOp()
774 if (match(Op0, m_BinOp(I.getOpcode(), m_ImmConstant(C2), m_Value(X)))) { in FoldShiftByConstant()
860 if (match(Op0, m_Select(m_Value(Cond), m_OneUse(m_BinOp(TBO)), in FoldShiftByConstant()
878 m_OneUse(m_BinOp(FBO))))) { in FoldShiftByConstant()
1117 if (match(Op0, m_OneUse(m_Trunc(m_OneUse(m_BinOp(Shr))))) && in visitShl()
1152 if (match(Op0, m_OneUse(m_BinOp(Op0BO))) && in visitShl()
H A DInstCombineSelect.cpp77 if (!match(Sel.getOperand(IsEq ? 1 : 2), m_BinOp(BO))) in foldSelectBinOpIdentity()
93 if (!BO->isCommutative() && !match(BO, m_BinOp(m_Value(Y), m_Specific(X)))) in foldSelectBinOpIdentity()
765 if (match(FalseVal, m_BinOp(m_Specific(TrueVal), m_Power2(C2)))) { in foldSelectICmpAndBinOp()
769 } else if (match(TrueVal, m_BinOp(m_Specific(FalseVal), m_Power2(C2)))) { in foldSelectICmpAndBinOp()
1697 if (match(&SI, m_Select(m_Specific(ICI), m_APInt(C), m_BinOp(BO)))) in foldSelectInstWithICmpConst()
1699 else if (match(&SI, m_Select(m_Specific(ICI), m_BinOp(BO), m_APInt(C)))) in foldSelectInstWithICmpConst()
1705 if (!match(BO, m_BinOp(m_Specific(V), m_APInt(BinOpC)))) in foldSelectInstWithICmpConst()
2446 if (!match(Sel.getFalseValue(), m_OneUse(m_Or(m_BinOp(Or0), m_BinOp(Or1))))) in foldSelectFunnelShift()
3896 if (match(TrueVal, m_OneUse(m_BinOp(TrueBO))) && !TrueBO->isIntDivRem()) { in visitSelectInst()
3915 if (match(FalseVal, m_OneUse(m_BinOp(FalseBO))) && !FalseBO->isIntDivRem()) { in visitSelectInst()
H A DInstCombineAddSub.cpp1027 AddOp, m_OneUse(m_BinOp(MulOp, m_Value(A), m_Deferred(A))), in matchesSquareSum()
1030 m_c_BinOp(AddOp, m_BinOp(Mul2Op, m_Deferred(A), M2Rhs), in matchesSquareSum()
1042 m_OneUse(m_BinOp( in matchesSquareSum()
1043 Mul2Op, m_BinOp(MulOp, m_Value(A), m_Value(B)), M2Rhs)), in matchesSquareSum()
1044 m_OneUse(m_c_BinOp(MulOp, m_BinOp(Mul2Op, m_Value(A), M2Rhs), in matchesSquareSum()
1047 m_c_BinOp(AddOp, m_BinOp(MulOp, m_Deferred(A), m_Deferred(A)), in matchesSquareSum()
1048 m_BinOp(MulOp, m_Deferred(B), m_Deferred(B)))))); in matchesSquareSum()
1562 match(&I, m_BinOp(m_c_Add(m_Not(m_Value(B)), m_Value(A)), m_One()))) in visitAdd()
2343 if (match(Op1, m_OneUse(m_And(m_BinOp(InnerSub), m_APInt(C2)))) && in visitSub()
H A DInstCombineSimplifyDemanded.cpp1872 if (match(I, m_BinOp(BO)) && !BO->isIntDivRem() && !BO->isShift()) { in SimplifyDemandedVectorElts()
1908 ? match(U, m_BinOp(Opcode, Shuf, m_Specific(OtherOp))) in SimplifyDemandedVectorElts()
1909 : match(U, m_BinOp(Opcode, m_Specific(OtherOp), Shuf))) in SimplifyDemandedVectorElts()
H A DInstCombineCasts.cpp457 if (!match(Trunc.getOperand(0), m_OneUse(m_Or(m_BinOp(Or0), m_BinOp(Or1))))) in narrowFunnelShift()
554 if (!match(Trunc.getOperand(0), m_OneUse(m_BinOp(BinOp)))) in narrowBinOp()
2375 if (!match(BitCast.getOperand(0), m_OneUse(m_BinOp(BO))) || in foldBitCastBitwiseLogic()
H A DInstCombinePHI.cpp1395 if (match(V2, m_c_BinOp(m_Specific(V1), m_BinOp(Iv2Next))) || in foldDependentIVs()
1396 match(V2, m_GEP(m_Specific(V1), m_BinOp(Iv2Next)))) { in foldDependentIVs()
H A DInstCombineAndOrXor.cpp1628 !match(Op1, m_BinOp(Opcode, m_Value(BO10), m_Value(BO11)))) in reassociateFCmps()
1851 if (match(&I, m_BinOp(m_Or(m_Value(A), m_Value(B)), in foldAndToXor()
1860 if (match(&I, m_BinOp(m_c_Or(m_Value(A), m_Not(m_Value(B))), in foldAndToXor()
2045 m_BinOp(FlippedOpcode, m_Value(B), m_Value(C)), in foldComplexAndOrPatterns()
2099 m_c_BinOp(Opcode, m_OneUse(m_BinOp(Opcode, m_Value(X), m_Value(Y))), in reassociateForUses()
2446 if (match(Op0, m_OneUse(m_BinOp(BO))) && isNarrowableBinOpcode(BO)) { in visitAnd()
4485 if (match(NotOp, m_BinOp(NotVal))) { in foldNot()
H A DInstCombineMulDivRem.cpp166 if (match(Y, m_OneUse(m_Add(m_BinOp(Shift), m_One()))) && in foldMulShl1()
685 match(Op0, m_AllowReassoc(m_BinOp(Op0BinOp)))) { in foldFMulReassoc()
1343 if (match(Op0, m_BinOp(I.getOpcode(), m_c_Mul(m_Specific(Op1), m_Value(X)), in commonIDivTransforms()
H A DInstructionCombining.cpp551 match(Op0, m_OneUse(m_BinOp(m_Value(A), m_Constant(C1)))) && in SimplifyAssociativeOrCommutative()
552 match(Op1, m_OneUse(m_BinOp(m_Value(B), m_Constant(C2)))) && in SimplifyAssociativeOrCommutative()
939 m_BinOp(m_Value(ShiftedX), m_Value(Mask)))) in foldBinOpShiftWithShift()
2222 !match(RHS, m_OneUse(m_BinOp(Opcode, m_Value(Y), m_Value(OtherOp))))) in foldVectorBinop()
H A DInstCombineCalls.cpp1133 if (!match(MinMax2, m_SMax(m_BinOp(AddSub), m_APInt(MinValue)))) in matchSAddSubSat()
1137 if (!match(MinMax2, m_SMin(m_BinOp(AddSub), m_APInt(MaxValue)))) in matchSAddSubSat()
3310 if (match(Vec, m_OneUse(m_BinOp(m_Value(BO0), m_Value(BO1))))) { in visitCallInst()
H A DInstCombineCompares.cpp4535 match(XShift, m_BinOp(m_Value(X), m_ZExtOrSelf(m_Value(XShAmt)))); in foldShiftIntoShiftInAnotherHandOfAndInICmp()
4536 match(YShift, m_BinOp(m_Value(Y), m_ZExtOrSelf(m_Value(YShAmt)))); in foldShiftIntoShiftInAnotherHandOfAndInICmp()
4947 match(Op0, m_And(m_BinOp(BO), m_LowBitMask(C))) && in foldICmpBinOp()
4956 match(Op1, m_And(m_BinOp(BO), m_LowBitMask(C))) && in foldICmpBinOp()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVectorCombine.cpp583 !match(&I, m_BinOp(m_Instruction(I0), m_Instruction(I1)))) in foldExtractExtract()
911 if (!match(&I, m_BinOp(m_Value(Ins0), m_Value(Ins1))) && in scalarizeBinopOrCmp()
1404 if (!match(&I, m_Shuffle(m_OneUse(m_BinOp(B0)), m_OneUse(m_BinOp(B1)), in foldShuffleOfBinops()
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DPatternMatch.h100 inline class_match<BinaryOperator> m_BinOp() { in m_BinOp() function
820 inline bind_ty<BinaryOperator> m_BinOp(BinaryOperator *&I) { return I; } in m_BinOp() function
1040 inline AnyBinaryOp_match<LHS, RHS> m_BinOp(const LHS &L, const RHS &R) { in m_BinOp() function
1359 inline SpecificBinaryOp_match<LHS, RHS> m_BinOp(unsigned Opcode, const LHS &L, in m_BinOp() function
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLowerMatrixIntrinsics.cpp1355 if (match(Op, m_BinOp())) in lowerDotProduct()
1387 if (match(Op, m_BinOp()) && ShapeMap.find(Op) != ShapeMap.end()) { in lowerDotProduct()
1466 if (match(Op, m_BinOp()) && ShapeMap.find(Op) != ShapeMap.end()) { in lowerDotProduct()
H A DReassociate.cpp834 if (match(TheNeg, m_BinOp(m_Constant(C), m_Value())) && in NegateValue()
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/GlobalISel/
H A DMIPatternMatch.h438 inline BinaryOpc_match<LHS, RHS, false> m_BinOp(unsigned Opcode, const LHS &L,
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DSDPatternMatch.h520 inline BinaryOpc_match<LHS, RHS, false> m_BinOp(unsigned Opc, const LHS &L,
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DVectorUtils.cpp299 if (match(V, m_BinOp(m_Value(X), m_Value(Y)))) in isSplatValue()
H A DInstructionSimplify.cpp2213 m_CombineAnd(m_BinOp(Or), in simplifyAndInst()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DComplexDeinterleavingPass.cpp831 m_BinOp(m_FMul(m_Value(), m_Value()), m_FMul(m_Value(), m_Value())); in isInstructionPairMul()
H A DCodeGenPrepare.cpp1668 if (!match(Cmp, m_UAddWithOverflow(m_Value(A), m_Value(B), m_BinOp(Add)))) { in combineToUAddWithOverflow()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/
H A DCombinerHelper.cpp4588 m_BinOp(Opcode, in matchBitfieldExtractFromShr()
4629 m_BinOp(Opcode, in matchBitfieldExtractFromShrAnd()
/freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/
H A DAArch64TargetTransformInfo.cpp1226 if (match(Vec, m_OneUse(m_BinOp(m_Value(LHS), m_Value(RHS))))) { in instCombineSVELast()
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DSimplifyCFG.cpp3598 m_BinOp(), in FoldTwoEntryPHINode()

12