| /freebsd-12.1/contrib/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineAndOrXor.cpp | 1446 match(Op1, m_Not(m_c_Or(m_Specific(A), m_Specific(B))))) in foldOrToXor() 1454 match(Op1, m_c_And(m_Not(m_Specific(A)), m_Specific(B)))) in foldOrToXor() 1696 if (match(Op1, m_Xor(m_Specific(B), m_Specific(A)))) in visitAnd() 1705 match(Op0, m_c_Or(m_Specific(A), m_Specific(B)))) in visitAnd() 1713 match(Op1, m_c_Or(m_Specific(A), m_Specific(B)))) in visitAnd() 2328 if (match(Op1, m_Xor(m_Specific(B), m_Specific(A)))) in visitOr() 2352 if (match(Op0, m_And(m_Specific(A), m_Specific(B))) || in visitOr() 2353 match(Op0, m_And(m_Specific(B), m_Specific(A)))) in visitOr() 2512 match(Op1, m_Not(m_c_Or(m_Specific(A), m_Specific(B)))))) in foldXorToXor() 2890 match(Op1, m_c_Xor(m_Specific(A), m_Specific(B)))) in visitXor() [all …]
|
| H A D | InstCombineSelect.cpp | 98 if (!match(BO, m_c_BinOp(m_Value(Y), m_Specific(X)))) in foldSelectBinOpIdentity() 510 if (!match(Cmp->getOperand(0), m_c_And(m_Specific(X), m_Value(Y)))) in foldSelectICmpAndAnd() 662 if (match(TrueVal, m_Sub(m_Specific(B), m_Specific(A)))) in canonicalizeSaturatedSubtract() 664 else if (!match(TrueVal, m_Sub(m_Specific(A), m_Specific(B)))) in canonicalizeSaturatedSubtract() 789 } else if (match(FalseVal, m_SExt(m_Specific(CmpLHS))) && in adjustMinMax() 802 } else if (match(FalseVal, m_ZExt(m_Specific(CmpLHS))) && in adjustMinMax() 906 bool RHSCanonicalized = match(RHS, m_Neg(m_Specific(LHS))); in canonicalizeAbsNabs() 1686 if (match(TrueVal, m_Not(m_Specific(CondVal)))) in visitSelectInst() 1688 if (match(FalseVal, m_Not(m_Specific(CondVal)))) in visitSelectInst() 1771 match(TrueVal, m_FSub(m_PosZeroFP(), m_Specific(X)))) || in visitSelectInst() [all …]
|
| H A D | InstCombineMulDivRem.cpp | 452 if (match(Op0, m_OneUse(m_c_FMul(m_Specific(Op1), m_Value(Y)))) && in visitFMul() 699 if ((IsSigned && match(Z, m_SRem(m_Specific(X), m_Specific(Op1)))) || in commonIDivTransforms() 700 (!IsSigned && match(Z, m_URem(m_Specific(X), m_Specific(Op1))))) in commonIDivTransforms() 705 if (IsSigned && match(Op0, m_NSWShl(m_Specific(Op1), m_Value(Y)))) in commonIDivTransforms() 707 if (!IsSigned && match(Op0, m_NUWShl(m_Specific(Op1), m_Value(Y)))) in commonIDivTransforms() 711 if (match(Op1, m_c_Mul(m_Specific(Op0), m_Value(Y)))) { in commonIDivTransforms() 918 if (match(Op1, m_NUWMul(m_Specific(A), m_Value(X))) || in visitUDiv() 919 match(Op1, m_NUWMul(m_Value(X), m_Specific(A)))) in visitUDiv() 921 if (match(Op1, m_NUWMul(m_Specific(B), m_Value(X))) || in visitUDiv() 922 match(Op1, m_NUWMul(m_Value(X), m_Specific(B)))) in visitUDiv() [all …]
|
| H A D | InstCombineAddSub.cpp | 1244 match(Op1, m_OneUse(m_c_FMul(m_Value(Y), m_Specific(Z)))))) in factorizeFAddFSub() 1590 if (match(Op1, m_c_Add(m_Specific(Op0), m_Value(Y)))) in visitSub() 1594 if (match(Op0, m_Sub(m_Specific(Op1), m_Value(Y)))) in visitSub() 1602 match(Op0, m_c_Or(m_Specific(A), m_Specific(B)))) in visitSub() 1609 if (match(Op0, m_OneUse(m_c_Or(m_Value(Y), m_Specific(Op1))))) in visitSub() 1624 if (match(Op1, m_c_And(m_Value(Y), m_Specific(Op0)))) in visitSub() 1721 match(Op0, m_OneUse(m_c_Xor(m_Specific(A), m_Specific(Op1))))) { in visitSub() 1822 if (match(Op0, m_FSub(m_Specific(Op1), m_Value(X)))) in visitFSub() 1827 if (match(Op1, m_c_FAdd(m_Specific(Op0), m_Value(X)))) in visitFSub() 1831 if (match(Op0, m_FMul(m_Specific(Op1), m_Constant(C)))) { in visitFSub() [all …]
|
| H A D | InstCombineShifts.cpp | 438 m_Specific(Op1)))) { in FoldShiftByConstant() 457 m_And(m_OneUse(m_Shr(m_Value(V1), m_Specific(Op1))), in FoldShiftByConstant() 473 m_Specific(Op1)))) { in FoldShiftByConstant() 620 if (match(Op0, m_Shr(m_Value(X), m_Specific(Op1)))) { in visitShl() 673 if (match(Op0, m_OneUse(m_Shr(m_Value(X), m_Specific(Op1))))) { in visitShl() 815 if (match(Op0, m_OneUse(m_Shl(m_Value(X), m_Specific(Op1))))) { in visitLShr() 846 if (match(Op0, m_Shl(m_ZExt(m_Value(X)), m_Specific(Op1))) && in visitAShr()
|
| H A D | InstCombineCompares.cpp | 2440 m_Select(m_ICmp(PredB, m_Specific(LHS), m_Specific(RHS)), in matchThreeWayIntCompare() 3436 auto LSubOne = m_Add(m_Specific(Op1), m_AllOnes()); in foldICmpBinOp() 3461 if (match(X, m_c_SMin(m_Specific(Op0), m_Value())) || in foldICmpWithMinMax() 3462 match(X, m_c_SMax(m_Specific(Op0), m_Value())) || in foldICmpWithMinMax() 3463 match(X, m_c_UMin(m_Specific(Op0), m_Value())) || in foldICmpWithMinMax() 3464 match(X, m_c_UMax(m_Specific(Op0), m_Value()))) { in foldICmpWithMinMax() 3470 if (match(Op0, m_c_SMin(m_Specific(X), m_Value(Y)))) { in foldICmpWithMinMax() 3487 if (match(Op0, m_c_SMax(m_Specific(X), m_Value(Y)))) { in foldICmpWithMinMax() 3504 if (match(Op0, m_c_UMin(m_Specific(X), m_Value(Y)))) { in foldICmpWithMinMax() 4207 if (match(U, m_Sub(m_Specific(Op1), m_Specific(Op0)))) in swapMayExposeCSEOpportunities() [all …]
|
| H A D | InstCombineLoadStoreAlloca.cpp | 587 return (match(L1, m_Load(m_Specific(LHS))) && in isMinMaxWithLoads() 588 match(L2, m_Load(m_Specific(RHS)))) || in isMinMaxWithLoads() 589 (match(L1, m_Load(m_Specific(RHS))) && in isMinMaxWithLoads() 590 match(L2, m_Load(m_Specific(LHS)))); in isMinMaxWithLoads()
|
| H A D | InstCombineCasts.cpp | 516 !match(Or1, m_OneUse(m_LogicalShift(m_Specific(ShVal), m_Value(ShAmt1))))) in narrowRotate() 529 if (match(R, m_OneUse(m_Sub(m_SpecificInt(Width), m_Specific(L))))) in narrowRotate() 537 match(R, m_And(m_Neg(m_Specific(X)), m_SpecificInt(Mask)))) in narrowRotate() 542 match(R, m_ZExt(m_And(m_Neg(m_Specific(X)), m_SpecificInt(Mask))))) in narrowRotate() 1215 match(And, m_OneUse(m_And(m_Trunc(m_Value(X)), m_Specific(C)))) && in visitZExt()
|
| H A D | InstructionCombining.cpp | 732 match(RHS, m_Select(m_Specific(A), m_Value(D), m_Value(E)))) { in SimplifySelectsFeedingBinaryOp() 1377 match(RHS, m_ShuffleVector(m_Value(R0), m_Value(R1), m_Specific(Mask))) && in foldVectorBinop() 1412 match(RHS, m_ShuffleVector(m_Value(V2), m_Undef(), m_Specific(Mask))) && in foldVectorBinop() 1869 m_PtrToInt(m_Specific(GEP.getOperand(0)))))) in visitGetElementPtrInst() 2397 m_CombineOr(m_Specific(Op), in tryToMoveFreeBeforeNullTest() 2398 m_Specific(Op->stripPointerCasts())), in tryToMoveFreeBeforeNullTest()
|
| H A D | InstCombineVectorOps.cpp | 1296 if (match(Op0, m_BinOp(m_Specific(Op1), m_Constant(C)))) in foldSelectShuffleWith1Binop() 1298 else if (match(Op1, m_BinOp(m_Specific(Op0), m_Constant(C)))) in foldSelectShuffleWith1Binop()
|
| H A D | InstCombineCalls.cpp | 2233 match(Src1, m_FAbs(m_Specific(X)))) { in visitCallInst() 3917 if (match(Next, m_Intrinsic<Intrinsic::assume>(m_Specific(IIOperand)))) in visitCallInst()
|
| /freebsd-12.1/contrib/llvm/lib/Analysis/ |
| H A D | InstructionSimplify.cpp | 1437 !match(Op1, m_ICmp(Pred1, m_Specific(A), m_Specific(B)))) in simplifyAndOfICmpsWithSameOperands() 1462 !match(Op1, m_ICmp(Pred1, m_Specific(A), m_Specific(B)))) in simplifyOrOfICmpsWithSameOperands() 1962 (match(Op0, m_c_And(m_Specific(A), m_Not(m_Specific(B)))) || in SimplifyOrInst() 1963 match(Op0, m_c_And(m_Not(m_Specific(A)), m_Specific(B))))) in SimplifyOrInst() 1972 (match(Op1, m_c_And(m_Specific(A), m_Not(m_Specific(B)))) || in SimplifyOrInst() 1973 match(Op1, m_c_And(m_Not(m_Specific(A)), m_Specific(B))))) in SimplifyOrInst() 1981 (match(Op1, m_c_Xor(m_Specific(A), m_Not(m_Specific(B)))) || in SimplifyOrInst() 1982 match(Op1, m_c_Xor(m_Not(m_Specific(A)), m_Specific(B))))) in SimplifyOrInst() 1990 (match(Op0, m_c_Xor(m_Specific(A), m_Not(m_Specific(B)))) || in SimplifyOrInst() 1991 match(Op0, m_c_Xor(m_Not(m_Specific(A)), m_Specific(B))))) in SimplifyOrInst() [all …]
|
| H A D | ValueTracking.cpp | 202 match(RHS, m_c_And(m_Specific(M), m_Value()))) in haveNoCommonBitsSet() 205 match(LHS, m_c_And(m_Specific(M), m_Value()))) in haveNoCommonBitsSet() 609 if (match(Arg, m_Not(m_Specific(V))) && in computeKnownBitsFromAssume() 621 auto m_V = m_CombineOr(m_Specific(V), in computeKnownBitsFromAssume() 1748 if (match(X, m_Neg(m_Specific(Y))) || match(Y, m_Neg(m_Specific(X)))) in isKnownToBeAPowerOfTwo() 4725 match(FalseVal, m_NSWSub(m_Specific(CmpLHS), m_Specific(CmpRHS)))) in matchMinMax() 4732 match(TrueVal, m_NSWSub(m_Specific(CmpLHS), m_Specific(CmpRHS)))) in matchMinMax() 4761 if (match(TrueVal, m_Not(m_Specific(CmpLHS))) && in matchMinMax() 4790 match(Y, m_Sub(m_Specific(B), m_Specific(A))))) || in isKnownNegation() 4792 match(Y, m_NSWSub(m_Specific(B), m_Specific(A))))); in isKnownNegation() [all …]
|
| H A D | LazyValueInfo.cpp | 930 if (match(SI->getFalseValue(), m_Add(m_Specific(A), in solveBlockValueSelect() 938 if (match(SI->getTrueValue(), m_Add(m_Specific(A), in solveBlockValueSelect() 1102 if (LHS != Val && !match(LHS, m_Add(m_Specific(Val), m_ConstantInt()))) { in getValueFromICmpCondition() 1109 match(LHS, m_Add(m_Specific(Val), m_ConstantInt(Offset))); in getValueFromICmpCondition()
|
| /freebsd-12.1/contrib/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPULowerKernelAttributes.cpp | 192 auto SubExpr = m_Sub(m_Specific(GridSize), in processUse() 193 m_Mul(GroupIDIntrin, m_Specific(ZextGroupSize))); in processUse() 197 m_Select(m_ICmp(Pred, SubExpr, m_Specific(ZextGroupSize)), in processUse() 199 m_Specific(ZextGroupSize))) && in processUse()
|
| /freebsd-12.1/contrib/llvm/lib/Target/Hexagon/ |
| H A D | HexagonLoopIdiomRecognition.cpp | 694 if (match(A, m_Shl(m_One(), m_Specific(CIV)))) { in matchLeftShift() 697 } else if (match(B, m_Shl(m_One(), m_Specific(CIV)))) { in matchLeftShift() 756 if (!match(U, m_Xor(m_Specific(SelI), m_Value(R))) && in matchLeftShift() 757 !match(U, m_Xor(m_Value(R), m_Specific(SelI)))) in matchLeftShift() 768 if (!match(T, m_Shl(m_Value(Q), m_Specific(CIV))) && in matchLeftShift() 769 !match(T, m_Shl(m_ZExt(m_Value(Q)), m_ZExt(m_Specific(CIV))))) in matchLeftShift() 831 if (!match(FalseV, m_Xor(m_Specific(TrueV), m_Value(Q))) && in matchRightShift() 832 !match(FalseV, m_Xor(m_Value(Q), m_Specific(TrueV)))) in matchRightShift() 842 if (!match(TrueV, m_Xor(m_Specific(FalseV), m_Value(Q))) && in matchRightShift() 843 !match(TrueV, m_Xor(m_Value(Q), m_Specific(FalseV)))) in matchRightShift()
|
| /freebsd-12.1/contrib/llvm/lib/Transforms/AggressiveInstCombine/ |
| H A D | AggressiveInstCombine.cpp | 127 if (!match(TermI, m_Br(m_ICmp(Pred, m_Specific(RotAmt), m_ZeroInt()), TrueBB, in foldGuardedRotateToFunnelShift()
|
| /freebsd-12.1/contrib/llvm/lib/Transforms/Utils/ |
| H A D | SimplifyIndVar.cpp | 804 m_AShr(m_Shl(m_Value(), m_Specific(IVOperand)), m_APInt(C))) || in strengthenRightShift() 806 m_LShr(m_Shl(m_Value(), m_Specific(IVOperand)), m_APInt(C)))) { in strengthenRightShift()
|
| /freebsd-12.1/contrib/llvm/lib/Transforms/Scalar/ |
| H A D | GuardWidening.cpp | 527 match(Cond1, m_ICmp(Pred1, m_Specific(LHS), m_ConstantInt(RHS1)))) { in widenCondCommon()
|
| H A D | StructurizeCFG.cpp | 414 if (I->getParent() == Parent && match(I, m_Not(m_Specific(Condition)))) in invert()
|
| H A D | IndVarSimplify.cpp | 1790 if (!match(Condition, m_ICmp(Pred, m_Specific(NarrowDefLHS), in calculatePostIncRange()
|
| /freebsd-12.1/contrib/llvm/include/llvm/IR/ |
| H A D | PatternMatch.h | 502 inline specificval_ty m_Specific(const Value *V) { return V; } in m_Specific() function
|
| /freebsd-12.1/contrib/llvm/lib/Transforms/Vectorize/ |
| H A D | SLPVectorizer.cpp | 5542 if (match(Cond, m_Cmp(Pred, m_Specific(LHS), m_Instruction(L2)))) { in getOperationData() 5546 } else if (match(Cond, m_Cmp(Pred, m_Instruction(L1), m_Specific(RHS)))) { in getOperationData()
|