| /openbsd/src/gnu/llvm/llvm/lib/Transforms/InstCombine/ |
| D | InstCombineVectorOps.cpp | 85 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 …]
|
| D | InstCombineShifts.cpp | 350 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()
|
| D | InstCombineSelect.cpp | 77 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()
|
| D | InstCombineAndOrXor.cpp | 1402 !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()
|
| D | InstCombineCasts.cpp | 585 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()
|
| D | InstCombineMulDivRem.cpp | 166 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()
|
| D | InstructionCombining.cpp | 532 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()
|
| D | InstCombineCalls.cpp | 900 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()
|
| D | InstCombineAddSub.cpp | 1404 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()
|
| D | InstCombineSimplifyDemanded.cpp | 1714 if (match(I, m_BinOp(BO)) && !BO->isIntDivRem() && !BO->isShift()) { in SimplifyDemandedVectorElts()
|
| D | InstCombineCompares.cpp | 3810 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/ |
| D | VectorCombine.cpp | 569 !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()
|
| D | SLPVectorizer.cpp | 13130 if (match(I, m_BinOp(m_Value(V0), m_Value(V1)))) in matchRdxBop()
|
| /openbsd/src/gnu/llvm/llvm/include/llvm/IR/ |
| D | PatternMatch.h | 84 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/ |
| D | ComplexDeinterleavingPass.cpp | 694 m_BinOp(m_FMul(m_Value(), m_Value()), m_FMul(m_Value(), m_Value())); in isInstructionPairMul()
|
| D | CodeGenPrepare.cpp | 1584 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/ |
| D | MIPatternMatch.h | 438 inline BinaryOpc_match<LHS, RHS, false> m_BinOp(unsigned Opcode, const LHS &L,
|
| /openbsd/src/gnu/llvm/llvm/lib/Analysis/ |
| D | VectorUtils.cpp | 419 if (match(V, m_BinOp(m_Value(X), m_Value(Y)))) in isSplatValue()
|
| D | InstructionSimplify.cpp | 2236 m_CombineAnd(m_BinOp(Or), in simplifyAndInst()
|
| /openbsd/src/gnu/llvm/llvm/lib/Transforms/Scalar/ |
| D | Reassociate.cpp | 892 if (match(TheNeg, m_BinOp(m_Constant(C), m_Value())) && in NegateValue()
|
| /openbsd/src/gnu/llvm/llvm/lib/CodeGen/GlobalISel/ |
| D | CombinerHelper.cpp | 4431 m_BinOp(Opcode, in matchBitfieldExtractFromShr() 4473 m_BinOp(Opcode, in matchBitfieldExtractFromShrAnd()
|
| /openbsd/src/gnu/llvm/llvm/lib/Target/AArch64/ |
| D | AArch64TargetTransformInfo.cpp | 835 if (match(Vec, m_OneUse(m_BinOp(m_Value(LHS), m_Value(RHS))))) { in instCombineSVELast()
|
| /openbsd/src/gnu/llvm/llvm/lib/Transforms/Utils/ |
| D | SimplifyCFG.cpp | 3417 m_BinOp(), in FoldTwoEntryPHINode()
|