Home
last modified time | relevance | path

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

/openbsd/src/gnu/llvm/llvm/lib/Transforms/InstCombine/
DInstCombineVectorOps.cpp85 if (match(V, m_OneUse(m_BinOp(m_Value(V0), m_Value(V1))))) in cheapToScalarize()
472 if (match(SrcVec, m_BinOp(BO)) && cheapToScalarize(SrcVec, Index)) { in visitExtractElementInst()
2118 if (match(Op0, m_BinOp(m_Specific(Op1), m_Constant(C)))) in foldSelectShuffleWith1Binop()
2120 else if (match(Op1, m_BinOp(m_Specific(Op0), m_Constant(C)))) in foldSelectShuffleWith1Binop()
2221 if (!match(Shuf.getOperand(0), m_BinOp(B0)) || in foldSelectShuffle()
2222 !match(Shuf.getOperand(1), m_BinOp(B1))) in foldSelectShuffle()
2231 if (match(B0, m_BinOp(m_Constant(C0), m_Value(X))) && in foldSelectShuffle()
2232 match(B1, m_BinOp(m_Constant(C1), m_Value(Y)))) in foldSelectShuffle()
2234 else if (match(B0, m_CombineOr(m_BinOp(m_Value(X), m_Constant(C0)), in foldSelectShuffle()
2236 match(B1, m_CombineOr(m_BinOp(m_Value(Y), m_Constant(C1)), in foldSelectShuffle()
[all …]
DInstCombineShifts.cpp350 m_OneUse(m_BinOp(ShiftOpcode, m_Value(X), m_Constant(C0)))) && in foldShiftOfShiftedLogic()
729 if (match(Op0, m_BinOp(I.getOpcode(), m_Constant(C2), m_Value(X)))) in FoldShiftByConstant()
807 if (match(Op0, m_Select(m_Value(Cond), m_OneUse(m_BinOp(TBO)), in FoldShiftByConstant()
825 m_OneUse(m_BinOp(FBO))))) { in FoldShiftByConstant()
1000 if (match(Op0, m_OneUse(m_Trunc(m_OneUse(m_BinOp(Shr))))) && in visitShl()
1043 if (match(Op0, m_OneUse(m_BinOp(Op0BO))) && in visitShl()
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()
1606 if (match(&SI, m_Select(m_Specific(ICI), m_APInt(C), m_BinOp(BO)))) in foldSelectInstWithICmpConst()
1608 else if (match(&SI, m_Select(m_Specific(ICI), m_BinOp(BO), m_APInt(C)))) in foldSelectInstWithICmpConst()
1614 if (!match(BO, m_BinOp(m_Specific(V), m_APInt(BinOpC)))) in foldSelectInstWithICmpConst()
2261 if (!match(Sel.getFalseValue(), m_OneUse(m_Or(m_BinOp(Or0), m_BinOp(Or1))))) in foldSelectFunnelShift()
3384 if (match(TrueVal, m_OneUse(m_BinOp(TrueBO))) && in visitSelectInst()
3404 if (match(FalseVal, m_OneUse(m_BinOp(FalseBO))) && in visitSelectInst()
DInstCombineAndOrXor.cpp1402 !match(Op1, m_BinOp(Opcode, m_Value(BO10), m_Value(BO11)))) in reassociateFCmps()
1619 if (match(&I, m_BinOp(m_Or(m_Value(A), m_Value(B)), in foldAndToXor()
1628 if (match(&I, m_BinOp(m_c_Or(m_Value(A), m_Not(m_Value(B))), in foldAndToXor()
1813 m_BinOp(FlippedOpcode, m_Value(B), m_Value(C)), in foldComplexAndOrPatterns()
1867 m_c_BinOp(Opcode, m_OneUse(m_BinOp(Opcode, m_Value(X), m_Value(Y))), in reassociateForUses()
2067 if (match(Op0, m_OneUse(m_BinOp(BO))) && isNarrowableBinOpcode(BO)) { in visitAnd()
2437 if (!match(Or.getOperand(0), m_BinOp(Or0)) || in matchFunnelShift()
2438 !match(Or.getOperand(1), m_BinOp(Or1))) in matchFunnelShift()
3886 if (match(NotOp, m_BinOp(NotVal))) { in foldNot()
DInstCombineCasts.cpp585 if (!match(Trunc.getOperand(0), m_OneUse(m_Or(m_BinOp(Or0), m_BinOp(Or1))))) in narrowFunnelShift()
680 if (!match(Trunc.getOperand(0), m_OneUse(m_BinOp(BinOp)))) in narrowBinOp()
2396 if (!match(BitCast.getOperand(0), m_OneUse(m_BinOp(BO))) || in foldBitCastBitwiseLogic()
DInstCombineMulDivRem.cpp166 if (match(Y, m_OneUse(m_Add(m_BinOp(Shift), m_One()))) && in foldMulShl1()
1098 if (match(Op0, m_BinOp(I.getOpcode(), m_c_Mul(m_Specific(Op1), m_Value(X)), in commonIDivTransforms()
DInstructionCombining.cpp532 match(Op0, m_OneUse(m_BinOp(m_Value(A), m_Constant(C1)))) && in SimplifyAssociativeOrCommutative()
533 match(Op1, m_OneUse(m_BinOp(m_Value(B), m_Constant(C2)))) && in SimplifyAssociativeOrCommutative()
1861 !match(RHS, m_OneUse(m_BinOp(Opcode, m_Value(Y), m_Value(OtherOp))))) in foldVectorBinop()
DInstCombineCalls.cpp900 if (!match(MinMax2, m_SMax(m_BinOp(AddSub), m_APInt(MinValue)))) in matchSAddSubSat()
904 if (!match(MinMax2, m_SMin(m_BinOp(AddSub), m_APInt(MaxValue)))) in matchSAddSubSat()
2621 if (match(Vec, m_OneUse(m_BinOp(m_Value(BO0), m_Value(BO1))))) { in visitCallInst()
DInstCombineAddSub.cpp1404 match(&I, m_BinOp(m_c_Add(m_Not(m_Value(B)), m_Value(A)), m_One()))) in visitAdd()
2102 if (match(Op1, m_OneUse(m_And(m_BinOp(InnerSub), m_APInt(C2)))) && in visitSub()
DInstCombineSimplifyDemanded.cpp1714 if (match(I, m_BinOp(BO)) && !BO->isIntDivRem() && !BO->isShift()) { in SimplifyDemandedVectorElts()
DInstCombineCompares.cpp3810 match(XShift, m_BinOp(m_Value(X), m_ZExtOrSelf(m_Value(XShAmt)))); in foldShiftIntoShiftInAnotherHandOfAndInICmp()
3811 match(YShift, m_BinOp(m_Value(Y), m_ZExtOrSelf(m_Value(YShAmt)))); in foldShiftIntoShiftInAnotherHandOfAndInICmp()
4081 match(Op0, m_And(m_BinOp(BO), m_LowBitMask(C))) && in foldICmpBinOp()
4090 match(Op1, m_And(m_BinOp(BO), m_LowBitMask(C))) && in foldICmpBinOp()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Vectorize/
DVectorCombine.cpp569 !match(&I, m_BinOp(m_Instruction(I0), m_Instruction(I1)))) in foldExtractExtract()
740 if (!match(&I, m_BinOp(m_Value(Ins0), m_Value(Ins1))) && in scalarizeBinopOrCmp()
1222 if (!match(&I, m_Shuffle(m_OneUse(m_BinOp(B0)), m_OneUse(m_BinOp(B1)), in foldShuffleOfBinops()
DSLPVectorizer.cpp13130 if (match(I, m_BinOp(m_Value(V0), m_Value(V1)))) in matchRdxBop()
/openbsd/src/gnu/llvm/llvm/include/llvm/IR/
DPatternMatch.h84 inline class_match<BinaryOperator> m_BinOp() { in m_BinOp() function
720 inline bind_ty<BinaryOperator> m_BinOp(BinaryOperator *&I) { return I; } in m_BinOp() function
922 inline AnyBinaryOp_match<LHS, RHS> m_BinOp(const LHS &L, const RHS &R) { in m_BinOp() function
1234 inline SpecificBinaryOp_match<LHS, RHS> m_BinOp(unsigned Opcode, const LHS &L, in m_BinOp() function
/openbsd/src/gnu/llvm/llvm/lib/CodeGen/
DComplexDeinterleavingPass.cpp694 m_BinOp(m_FMul(m_Value(), m_Value()), m_FMul(m_Value(), m_Value())); in isInstructionPairMul()
DCodeGenPrepare.cpp1584 if (!match(Cmp, m_UAddWithOverflow(m_Value(A), m_Value(B), m_BinOp(Add)))) { in combineToUAddWithOverflow()
/openbsd/src/gnu/llvm/llvm/include/llvm/CodeGen/GlobalISel/
DMIPatternMatch.h438 inline BinaryOpc_match<LHS, RHS, false> m_BinOp(unsigned Opcode, const LHS &L,
/openbsd/src/gnu/llvm/llvm/lib/Analysis/
DVectorUtils.cpp419 if (match(V, m_BinOp(m_Value(X), m_Value(Y)))) in isSplatValue()
DInstructionSimplify.cpp2236 m_CombineAnd(m_BinOp(Or), in simplifyAndInst()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Scalar/
DReassociate.cpp892 if (match(TheNeg, m_BinOp(m_Constant(C), m_Value())) && in NegateValue()
/openbsd/src/gnu/llvm/llvm/lib/CodeGen/GlobalISel/
DCombinerHelper.cpp4431 m_BinOp(Opcode, in matchBitfieldExtractFromShr()
4473 m_BinOp(Opcode, in matchBitfieldExtractFromShrAnd()
/openbsd/src/gnu/llvm/llvm/lib/Target/AArch64/
DAArch64TargetTransformInfo.cpp835 if (match(Vec, m_OneUse(m_BinOp(m_Value(LHS), m_Value(RHS))))) { in instCombineSVELast()
/openbsd/src/gnu/llvm/llvm/lib/Transforms/Utils/
DSimplifyCFG.cpp3417 m_BinOp(), in FoldTwoEntryPHINode()