| /freebsd-13.1/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineAddSub.cpp | 883 if (match(Op0, m_OneUse(m_Sub(m_Value(X), m_Value(Y)))) && in foldAddWithConstant() 1466 if (!match(&I, m_c_FAdd(m_OneUse(m_c_FMul(m_Value(Y), in factorizeLerp() 1826 if (match(Op0, m_OneUse(m_Add(m_Value(X), m_AllOnes())))) in visitSub() 1833 if (match(Op0, m_OneUse(m_c_Add(m_OneUse(m_Sub(m_Value(X), m_Value(Y))), in visitSub() 1971 if (match(Op0, m_OneUse(m_c_And(m_Specific(Op1), in visitSub() 2153 if (!match(&I, m_FNeg(m_OneUse(m_Instruction(FNegOp))))) in foldFNegIntoConstant() 2218 match(Op, m_OneUse(m_FSub(m_Value(X), m_Value(Y))))) in visitFNeg() 2301 match(Op0, m_OneUse(m_FNeg(m_Value(X))))) { in visitFSub() 2324 if (match(Op1, m_OneUse(m_FPTrunc(m_FNeg(m_Value(Y)))))) in visitFSub() 2328 if (match(Op1, m_OneUse(m_FPExt(m_FNeg(m_Value(Y)))))) in visitFSub() [all …]
|
| H A D | InstCombineAndOrXor.cpp | 1087 if (!match(V, m_OneUse(m_Trunc(m_Value(X))))) in matchIntPart() 1922 if (match(Op0I, m_OneUse(m_c_BinOp(m_OneUse(m_ZExt(m_Value(X))), in visitAnd() 2067 if (match(Op0, m_OneUse(m_SExt(m_Value(A)))) && in visitAnd() 2070 if (match(Op1, m_OneUse(m_SExt(m_Value(A)))) && in visitAnd() 2075 if (match(&I, m_c_And(m_OneUse(m_AShr( in visitAnd() 2317 match(B, m_OneUse(m_Not(m_Value(NotB))))) { in getSelectCondition() 2878 if (match(Op0, m_OneUse(m_SExt(m_Value(A)))) && in visitOr() 2881 if (match(Op1, m_OneUse(m_SExt(m_Value(A)))) && in visitOr() 2916 if (match(&I, m_c_Or(m_OneUse(m_AShr( in visitOr() 3149 m_OneUse(m_c_And( in visitMaskedMerge() [all …]
|
| H A D | InstCombineMulDivRem.cpp | 224 if (match(Op0, m_OneUse(m_Add(m_Value(X), m_Constant(C1))))) { in visitMul() 263 if (match(&I, m_c_Mul(m_OneUse(m_Neg(m_Value(X))), m_Value(Y)))) in visitMul() 469 if (match(Op0, m_OneUse(m_FDiv(m_Constant(C1), m_Value(X))))) { in visitFMul() 506 if (match(&I, m_c_FMul(m_OneUse(m_FDiv(m_Value(X), m_Value(Y))), in visitFMul() 606 if (match(Op0, m_OneUse(m_Intrinsic<Intrinsic::log2>( in visitFMul() 607 m_OneUse(m_FMul(m_Value(X), m_SpecificFP(0.5))))))) { in visitFMul() 611 if (match(Op1, m_OneUse(m_Intrinsic<Intrinsic::log2>( in visitFMul() 612 m_OneUse(m_FMul(m_Value(X), m_SpecificFP(0.5))))))) { in visitFMul() 1148 if (match(Op0, m_OneUse(m_SExt(m_Value(Op0Src)))) && in visitSDiv() 1359 if (match(Op0, m_OneUse(m_FDiv(m_Value(X), m_Value(Y)))) && in visitFDiv() [all …]
|
| H A D | InstCombineShifts.cpp | 106 !match(Sh0, m_c_BinOp(m_OneUse(m_Value()), m_Value()))) in reassociateShiftAmtsOfTwoSameDirectionShifts() 378 if (match(Op1, m_OneUse(m_SExt(m_Value(Y))))) { in commonShiftTransforms() 871 m_OneUse(m_BinOp(FBO))))) { in FoldShiftByConstant() 918 if (match(Op0, m_OneUse(m_ZExt(m_Value(X))))) { in visitShl() 1004 if (match(Op0, m_OneUse(m_Shr(m_Value(X), m_Specific(Op1))))) { in visitShl() 1015 if (match(Op0, m_OneUse(m_Shl(m_Constant(C2), m_Value(X))))) in visitShl() 1106 if (match(Op0, m_OneUse(m_ZExt(m_Value(X)))) && in visitLShr() 1147 if (match(Op0, m_OneUse(m_NSWSub(m_Value(X), m_Value(Y))))) in visitLShr() 1186 if (match(Op0, m_OneUse(m_Shl(m_Value(X), m_Specific(Op1))))) { in visitLShr() 1321 if (match(Op0, m_OneUse(m_SExt(m_Value(X)))) && in visitAShr() [all …]
|
| H A D | InstCombineCasts.cpp | 583 if (match(R, m_OneUse(m_Sub(m_SpecificInt(Width), m_Specific(L))))) in narrowFunnelShift() 647 if (!match(Trunc.getOperand(0), m_OneUse(m_BinOp(BinOp)))) in narrowBinOp() 821 if (match(Src, m_OneUse(m_LShr(m_Value(X), m_Constant(C))))) { in visitTrunc() 828 if (match(Src, m_OneUse(m_c_Or(m_LShr(m_Value(X), m_Constant(C)), in visitTrunc() 874 if (match(Src, m_OneUse(m_Shr(m_Trunc(m_Value(A)), m_Constant(C))))) { in visitTrunc() 1351 match(SrcI, m_OneUse(m_And(m_Trunc(m_Value(X)), m_Constant(C)))) && in visitZExt() 1358 match(And, m_OneUse(m_And(m_Trunc(m_Value(X)), m_Specific(C)))) && in visitZExt() 2064 if (match(SrcOp, m_OneUse(m_InsertElt(m_IntToPtr(m_Value(Vec)), in visitPtrToInt() 2349 !match(BitCast.getOperand(0), m_OneUse(m_BinOp(BO))) || in foldBitCastBitwiseLogic() 2360 if (match(BO->getOperand(0), m_OneUse(m_BitCast(m_Value(X)))) && in foldBitCastBitwiseLogic() [all …]
|
| H A D | InstCombineSelect.cpp | 520 if (!match(TVal, m_OneUse(m_And(m_Value(B), m_One())))) in foldSelectICmpAndAnd() 525 const bool HasShift = match(B, m_OneUse(m_LShr(m_Value(X), m_Value(Z)))); in foldSelectICmpAndAnd() 632 if (!match(CmpLHS, m_OneUse(m_Trunc(m_Value(V))))) in foldSelectICmpAndOr() 699 match(F, m_OneUse(m_Or(m_Specific(X), m_APInt(C)))) && *NotC == ~(*C)) { in foldSetClearBits() 1375 if (!match(&Cmp, m_OneUse(m_ICmp( in tryToReuseConstantFromSelectInComparison() 2022 if (!match(Cond, m_OneUse(m_ExtractElt(m_Value(), m_ConstantInt())))) in canonicalizeScalarSelectOfVecs() 2326 if (!match(Or0, m_OneUse(m_LogicalShift(m_Value(SV0), in foldSelectFunnelShift() 2328 !match(Or1, m_OneUse(m_LogicalShift(m_Value(SV1), in foldSelectFunnelShift() 2345 if (match(SA1, m_OneUse(m_Sub(m_SpecificInt(Width), m_Specific(SA0))))) in foldSelectFunnelShift() 3133 if (match(TrueVal, m_OneUse(m_BinOp(TrueBO))) && in visitSelectInst() [all …]
|
| H A D | InstCombineCompares.cpp | 1793 if (match(And->getOperand(0), m_OneUse(m_Trunc(m_Value(W)))) && in foldICmpAndConstConst() 1971 if (match(OrOp0, m_OneUse(m_Xor(m_Value(X1), m_Value(X2)))) && in foldICmpOrConstant() 1972 match(OrOp1, m_OneUse(m_Xor(m_Value(X3), m_Value(X4))))) { in foldICmpOrConstant() 3637 m_c_And(m_OneUse(m_AnyLogicalShift), m_Value()))) in foldShiftIntoShiftInAnotherHandOfAndInICmp() 3855 if (match(Op0, m_OneUse(m_c_Add(m_Specific(Op1), m_Value(X)))) && in foldICmpBinOp() 3859 if (match(Op1, m_OneUse(m_c_Add(m_Specific(Op0), m_Value(X)))) && in foldICmpBinOp() 4347 if (match(Op0, m_OneUse(m_And(m_Value(A), m_Value(B)))) && in foldICmpEquality() 4348 match(Op1, m_OneUse(m_And(m_Value(C), m_Value(D))))) { in foldICmpEquality() 4408 match(Op1, m_OneUse(m_Shl(m_Value(B), m_Specific(Cst1))))) { in foldICmpEquality() 4456 if (!match(Op0, m_OneUse(m_c_And(m_Add(m_Value(A), m_AllOnes()), in foldICmpEquality() [all …]
|
| H A D | InstCombineVectorOps.cpp | 70 if (match(V, m_OneUse(m_Load(m_Value())))) in cheapToScalarize() 73 if (match(V, m_OneUse(m_UnOp()))) in cheapToScalarize() 77 if (match(V, m_OneUse(m_BinOp(m_Value(V0), m_Value(V1))))) in cheapToScalarize() 83 if (match(V, m_OneUse(m_Cmp(UnusedPred, m_Value(V0), m_Value(V1))))) in cheapToScalarize() 1416 match(ScalarOp, m_OneUse(m_BitCast(m_Value(ScalarSrc)))) && in visitInsertElementInst() 1915 if (!match(Op0, m_OneUse(m_InsertElt(m_Undef(), m_Value(X), in canonicalizeInsertSplat() 2122 m_OneUse(m_Select(m_Value(Cond), m_Value(X), m_Value(Y))))) in narrowVectorSelect() 2130 if (!match(Cond, m_OneUse(m_Shuffle(m_Value(NarrowCond), m_Undef()))) || in narrowVectorSelect()
|
| H A D | InstCombineCalls.cpp | 469 if (match(Op0, m_OneUse(m_SExt(m_Value(X))))) { in foldCttzCtlz() 478 if (match(Op0, m_OneUse(m_ZExt(m_Value(X)))) && match(Op1, m_One())) { in foldCttzCtlz() 577 if (match(Op0, m_OneUse(m_ZExt(m_Value(X))))) { in foldCtpop() 945 if (match(IIOperand, m_OneUse(m_SExt(m_Value(X))))) { in visitCallInst() 1386 if (match(Arg0, m_OneUse(m_FPExt(m_Value(X)))) && in visitCallInst() 1387 match(Arg1, m_OneUse(m_FPExt(m_Value(Y)))) && in visitCallInst() 1399 if ((match(Arg0, m_OneUse(m_FNeg(m_Value(X)))) && Arg1 == X) || in visitCallInst() 1400 (match(Arg1, m_OneUse(m_FNeg(m_Value(X)))) && Arg0 == X)) { in visitCallInst() 1530 if (match(II->getArgOperand(0), m_OneUse(m_FPExt(m_Value(ExtSrc))))) { in visitCallInst() 1550 if (match(II->getArgOperand(0), m_OneUse(m_FNeg(m_Value(X))))) { in visitCallInst()
|
| H A D | InstCombineSimplifyDemanded.cpp | 458 if (match(I, m_c_Add(m_OneUse(m_ZExt(m_Value(X))), in SimplifyDemandedUseBits() 459 m_OneUse(m_SExt(m_Value(Y))))) && in SimplifyDemandedUseBits() 475 if (match(I, m_Add(m_OneUse(m_SExt(m_Value(X))), in SimplifyDemandedUseBits() 476 m_OneUse(m_SExt(m_Value(Y))))) && in SimplifyDemandedUseBits()
|
| H A D | InstructionCombining.cpp | 511 match(Op0, m_OneUse(m_BinOp(m_Value(A), m_Constant(C1)))) && in SimplifyAssociativeOrCommutative() 512 match(Op1, m_OneUse(m_BinOp(m_Value(B), m_Constant(C2))))) { in SimplifyAssociativeOrCommutative() 1675 m_c_BinOp(m_OneUse(m_Shuffle(m_Value(V1), m_Undef(), m_Mask(Mask))), in foldVectorBinop() 1759 m_OneUse(m_Shuffle(m_Value(X), m_Undef(), m_Mask(MaskC)))) || in foldVectorBinop() 1761 X->getType() != Inst.getType() || !match(RHS, m_OneUse(m_BinOp(BO))) || in foldVectorBinop() 2992 if (match(&BI, m_Br(m_OneUse(m_FCmp(Pred, m_Value(), m_Value())), in visitBranchInst()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/ |
| H A D | AggressiveInstCombine.cpp | 96 if (match(V, m_OneUse(m_c_Or( in foldGuardedFunnelShift() 107 m_OneUse(m_c_Or(m_Shl(m_Value(ShVal0), m_Sub(m_SpecificInt(Width), in foldGuardedFunnelShift() 269 if (match(&I, m_c_And(m_OneUse(m_And(m_Value(), m_Value())), m_Value()))) in foldAnyOrAllBitsSet() 271 else if (match(&I, m_And(m_OneUse(m_Or(m_Value(), m_Value())), m_One()))) in foldAnyOrAllBitsSet()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | VectorCombine.cpp | 514 m_OneUse(m_Shuffle(m_Value(V), m_Undef(), m_Mask(Mask)))))) in foldBitcastShuf() 695 if (!match(B0, m_OneUse(m_Cmp(P0, m_Instruction(I0), m_Constant(C0)))) || in foldExtractedCmps() 696 !match(B1, m_OneUse(m_Cmp(P1, m_Instruction(I1), m_Constant(C1)))) || in foldExtractedCmps() 705 if (!match(I0, m_OneUse(m_ExtractElt(m_Value(X), m_ConstantInt(Index0)))) || in foldExtractedCmps() 706 !match(I1, m_OneUse(m_ExtractElt(m_Specific(X), m_ConstantInt(Index1))))) in foldExtractedCmps()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | Reassociate.cpp | 2050 if (!match(V, m_OneUse(m_Instruction(I)))) in getNegatibleInsts() 2158 if (match(I, m_FAdd(m_Value(X), m_OneUse(m_Instruction(Op))))) in canonicalizeNegFPConstants() 2161 if (match(I, m_FAdd(m_OneUse(m_Instruction(Op)), m_Value(X)))) in canonicalizeNegFPConstants() 2164 if (match(I, m_FSub(m_Value(X), m_OneUse(m_Instruction(Op))))) in canonicalizeNegFPConstants()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | IVDescriptors.cpp | 517 if (match(I, m_OneUse(m_Cmp(Pred, m_Value(), m_Value())))) { in isMinMaxSelectCmpPattern() 523 if (!match(I, m_Select(m_OneUse(m_Cmp(Pred, m_Value(), m_Value())), m_Value(), in isMinMaxSelectCmpPattern()
|
| H A D | ValueTracking.cpp | 6287 match(I, m_Select(m_OneUse(m_Value()), m_Value(), m_Value())); in canConvertToMinOrMaxIntrinsic()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | CodeGenPrepare.cpp | 6673 m_OneUse(m_Select(m_Value(Cond), m_Value(TVal), m_Value(FVal))))) in optimizeShiftInst() 6708 m_OneUse(m_Select(m_Value(Cond), m_Value(TVal), m_Value(FVal))))) in optimizeFunnelShift() 7491 m_c_Or(m_OneUse(m_ZExt(m_Value(LValue))), in splitMergedValStore() 7492 m_OneUse(m_Shl(m_OneUse(m_ZExt(m_Value(HValue))), in splitMergedValStore() 8155 m_Br(m_OneUse(m_Instruction(LogicOp)), TBB, FBB))) in splitBranchCondition() 8169 m_LogicalAnd(m_OneUse(m_Value(Cond1)), m_OneUse(m_Value(Cond2))))) in splitBranchCondition() 8171 else if (match(LogicOp, m_LogicalOr(m_OneUse(m_Value(Cond1)), in splitBranchCondition() 8172 m_OneUse(m_Value(Cond2))))) in splitBranchCondition()
|
| /freebsd-13.1/contrib/llvm-project/llvm/include/llvm/CodeGen/GlobalISel/ |
| H A D | MIPatternMatch.h | 44 inline OneUse_match<SubPat> m_OneUse(const SubPat &SP) { in m_OneUse() function
|
| /freebsd-13.1/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | PatternMatch.h | 67 template <typename T> inline OneUse_match<T> m_OneUse(const T &SubPattern) { in m_OneUse() function 1991 auto XorExpr = m_OneUse(m_Xor(m_Value(Op1), m_AllOnes())); in match()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPUInstructionSelector.cpp | 653 Src0, *MRI, m_OneUse(m_GLShr(m_Reg(ShiftSrc0), m_SpecificICst(16)))); in selectG_BUILD_VECTOR_TRUNC() 656 Src1, *MRI, m_OneUse(m_GLShr(m_Reg(ShiftSrc1), m_SpecificICst(16)))); in selectG_BUILD_VECTOR_TRUNC()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/CodeGen/GlobalISel/ |
| H A D | IRTranslator.cpp | 415 if (match(Cond, m_OneUse(m_Not(m_Value(NotCond)))) && in findMergedConditions()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | SimplifyLibCalls.cpp | 1387 if (match(Call->getArgOperand(0), m_OneUse(m_FNeg(m_Value(X))))) in optimizeTrigReflections()
|
| /freebsd-13.1/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/ |
| H A D | SelectionDAGBuilder.cpp | 2193 if (match(Cond, m_OneUse(m_Not(m_Value(NotCond)))) && in FindMergedConditions()
|