/freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
H A D | OverflowInstAnalysis.cpp | 28 if (!match(Op0, m_ICmp(Pred, m_Value(X), m_Zero()))) in isCheckForZeroAndMulWithOverflow()
|
H A D | InstructionSimplify.cpp | 115 m_ICmp(Pred2, m_Value(X), m_Value(Y)))) || in foldSelectWithBinaryOp() 1563 if (!match(ZeroICmp, m_ICmp(EqPred, m_Value(Y), m_Zero())) || in simplifyUnsignedRangeCheck() 1613 if (match(UnsignedICmp, m_ICmp(UnsignedPred, m_Value(X), m_Specific(Y))) && in simplifyUnsignedRangeCheck() 1617 m_ICmp(UnsignedPred, m_Specific(Y), m_Value(X))) && in simplifyUnsignedRangeCheck() 1709 if (!match(Op0, m_ICmp(Pred0, m_Add(m_Value(V), m_APInt(C0)), m_APInt(C1)))) in simplifyAndOfICmpsWithAdd() 1712 if (!match(Op1, m_ICmp(Pred1, m_Specific(V), m_Value()))) in simplifyAndOfICmpsWithAdd() 1756 if (!match(Cmp0, m_ICmp(Pred0, m_Intrinsic<Intrinsic::ctpop>(m_Value(X)), in simplifyAndOrOfICmpsWithCtpop() 1758 !match(Cmp1, m_ICmp(Pred1, m_Specific(X), m_ZeroInt())) || C->isZero()) in simplifyAndOrOfICmpsWithCtpop() 1800 if (!match(Op0, m_ICmp(Pred0, m_Add(m_Value(V), m_APInt(C0)), m_APInt(C1)))) in simplifyOrOfICmpsWithAdd() 1803 if (!match(Op1, m_ICmp(Pred1, m_Specific(V), m_Value()))) in simplifyOrOfICmpsWithAdd() [all …]
|
H A D | ValueTracking.cpp | 258 return match(U, m_ICmp(P, m_Value(), m_Zero())); in isOnlyUsedInZeroComparison() 265 return match(U, m_ICmp(P, m_Value(), m_Zero())) && ICmpInst::isEquality(P); in isOnlyUsedInZeroEqualityComparison() 2598 return (match(Op0, m_ZExtOrSExt(m_ICmp(Pred, m_Specific(Op1), m_Zero()))) || in matchOpWithOpEqZero() 2599 match(Op1, m_ZExtOrSExt(m_ICmp(Pred, m_Specific(Op0), m_Zero())))) && in matchOpWithOpEqZero() 4783 } else if (match(Cond, m_ICmp(Pred, m_ElementWiseBitCast(m_Value(LHS)), in computeKnownFPClassFromCond() 8382 if (!match(X, m_ICmp(Pred1, m_Value(A), m_Value(B))) || in isKnownInversion() 9825 } else if (match(V, m_ICmp(Pred, m_Value(A), m_Value(B)))) { in findValuesAffectedByCondition()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | LoopBoundSplit.cpp | 54 if (match(ICmp, m_ICmp(Cond.Pred, m_Value(Cond.AddRecValue), in analyzeICmp() 165 if (!match(BI, m_Br(m_ICmp(Pred, m_Value(LHS), m_Value(RHS)), in isProcessableCondBI()
|
H A D | ConstraintElimination.cpp | 913 m_Br(m_ICmp(Pred, m_Value(A), m_Value(B)), m_Value(), m_Value()))) in addInfoForInductions() 1078 if (!match(I.getOperand(0), m_ICmp(Pred, m_Value(A), m_Value(B)))) in addInfoFor() 1514 m_ICmp(Pred, m_Value(A), m_Value(B)))) in checkOrAndOpImpliedByOther() 1852 m_ICmp(Pred, m_Value(A), m_Value(B)))); in eliminateConstraints()
|
H A D | GuardWidening.cpp | 736 m_ICmp(Pred0, m_Value(LHS), m_ConstantInt(RHS0))) && in mergeChecks() 738 m_ICmp(Pred1, m_Specific(LHS), m_ConstantInt(RHS1)))) { in mergeChecks()
|
H A D | CallSiteSplitting.cpp | 137 if (!match(Cond, m_ICmp(Pred, m_Value(), m_Constant()))) in recordCondition()
|
H A D | EarlyCSE.cpp | 197 if (!match(Cond, m_ICmp(Pred, m_Specific(A), m_Specific(B)))) { in matchSelectWithOptionalNotCond() 201 if (!match(Cond, m_ICmp(Pred, m_Specific(B), m_Specific(A)))) in matchSelectWithOptionalNotCond()
|
H A D | LoopIdiomRecognize.cpp | 2444 m_Br(m_ICmp(Pred, m_Value(CmpLHS), m_Value(CmpRHS)), in detectShiftUntilBitTestIdiom() 2806 m_ICmp(Pred, m_Instruction(ValShifted), m_Zero())) || in detectShiftUntilZeroIdiom()
|
H A D | LICM.cpp | 2426 if (!match(C, m_OneUse(m_ICmp(P, m_Value(LHS), m_Value(RHS))))) in hoistMinMax() 2651 if (!match(&I, m_ICmp(Pred, m_Value(LHS), m_Value(RHS)))) in hoistAddSub()
|
H A D | DeadStoreElimination.cpp | 1894 if (!match(TI, m_Br(m_ICmp(Pred, m_Specific(Ptr), m_Zero()), TrueBB, in tryFoldIntoCalloc()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineSelect.cpp | 428 if (match(TI, m_ICmp(TPred, m_Value(), m_Value())) && in foldSelectOpOp() 429 match(FI, m_ICmp(FPred, m_Value(), m_Value()))) { in foldSelectOpOp() 639 if (!match(Cmp, m_ICmp(Pred, m_Value(AndVal), m_Zero()))) in foldSelectICmpAndZeroShl() 868 if (!match(CondVal, m_ICmp(Predicate, m_Value(X), m_Zero())) || in foldSelectZeroOrMul() 1471 m_ICmp(Pred1, m_Specific(X), in canonicalizeClampLike() 1577 if (!match(&Cmp, m_OneUse(m_ICmp( in tryToReuseConstantFromSelectInComparison() 1673 if (!match(ICI, m_ICmp(Pred, m_Value(V), m_APInt(CmpC)))) in foldSelectInstWithICmpConst() 2118 if (!match(Limit, m_Select(m_ICmp(Pred, m_Value(Op), m_APInt(C)), in foldOverflowingAddSubSelect() 2488 if (!match(Cond, m_OneUse(m_ICmp(Pred, m_Specific(ShAmt), m_ZeroInt()))) || in foldSelectFunnelShift() 2530 if (!match(Cond, m_OneUse(m_ICmp(Pred, m_ElementWiseBitCast(m_Value(X)), in foldSelectToCopysign() [all …]
|
H A D | InstCombineAndOrXor.cpp | 732 if (!match(LHS, m_OneUse(m_ICmp(Pred, m_Value(Op), m_Zero()))) || in foldAndOrOfICmpsWithPow2AndWithZero() 824 m_ICmp(Pred, m_Add(m_Value(X), m_Power2(I01)), m_Power2(I1))) && in foldSignedTruncationCheck() 858 if (match(ICmp, m_ICmp(Pred, m_And(m_Value(X), m_APInt(Mask)), m_Zero())) && in foldSignedTruncationCheck() 914 if (!match(Cmp0, m_ICmp(Pred0, m_Intrinsic<Intrinsic::ctpop>(m_Value(X)), in foldIsPowerOf2OrZero() 916 !match(Cmp1, m_ICmp(Pred1, m_Specific(X), m_ZeroInt()))) in foldIsPowerOf2OrZero() 943 if (JoinedByAnd && match(Cmp0, m_ICmp(Pred0, m_Value(X), m_ZeroInt())) && in foldIsPowerOf2() 944 match(Cmp1, m_ICmp(Pred1, m_Intrinsic<Intrinsic::ctpop>(m_Specific(X)), in foldIsPowerOf2() 954 if (!JoinedByAnd && match(Cmp0, m_ICmp(Pred0, m_Value(X), m_ZeroInt())) && in foldIsPowerOf2() 955 match(Cmp1, m_ICmp(Pred1, m_Intrinsic<Intrinsic::ctpop>(m_Specific(X)), in foldIsPowerOf2() 1077 if (!match(ZeroICmp, m_ICmp(EqPred, m_Value(ZeroCmpOp), m_Zero())) || in foldUnsignedUnderflowCheck() [all …]
|
H A D | InstCombineAddSub.cpp | 1287 m_SExt(m_ICmp(Pred, m_And(m_Specific(X), m_APInt(MaskC)), in foldAddToAshr() 1371 if (!match(Select, m_Select(m_ICmp(Pred, m_Specific(X), m_APInt(Thr)), in canonicalizeCondSignextOfHighBitExtractToSignextHighBitExtract() 1701 m_OneUse(m_ICmp(Pred, m_Specific(A), m_ZeroInt()))))) && in visitAdd() 1714 m_Value(Cond), m_ICmp(Pred, m_Deferred(A), m_ImmConstant(C))); in visitAdd() 1796 m_ZExt(m_ICmp(Pred, m_Intrinsic<Intrinsic::ctpop>(m_Value(A)), in visitAdd()
|
H A D | InstCombineCompares.cpp | 1158 if (!match(&I, m_ICmp(Pred, m_OneUse(m_IRem(m_Value(X), m_Value(Y))), in foldIRemByPowerOfTwoToBitTest() 1174 if (!I.isEquality() || !match(&I, m_ICmp(Pred, m_Instruction(Val), m_Zero()))) in foldSignBitTest() 1390 m_ICmp(DomPred, m_Specific(X), m_APInt(DomC)))) in foldICmpWithDominatingICmp() 1503 if (match(&Cmp, m_ICmp(Pred, m_Trunc(m_Value(X)), m_Trunc(m_Value(Y))))) { in foldICmpTruncWithTruncOrExt() 3170 if (!match(SI->getCondition(), m_ICmp(PredA, m_Value(LHS), m_Value(RHS))) || in matchThreeWayIntCompare() 3182 if (!match(UnequalVal, m_Select(m_ICmp(PredB, m_Value(LHS2), m_Value(RHS2)), in matchThreeWayIntCompare() 5803 m_ICmp(PredUnused, m_OneUse(m_c_And(m_Value(A), m_Matcher)), in foldICmpEquality() 6716 m_ZExtOrSExt(m_ICmp(Pred2, m_Deferred(X), in foldICmpUsingBoolRange() 7161 if (!match(&I, m_ICmp(OuterPred, in foldReductionIdiom() 7163 m_ICmp(InnerPred, m_Value(LHS), m_Value(RHS))))), in foldReductionIdiom()
|
H A D | InstructionCombining.cpp | 1660 m_ICmp(Pred, m_Specific(Op), m_Constant(C))) && in constantFoldOperationIntoSelectOperand() 3405 if (!match(TI, m_Br(m_ICmp(Pred, in tryToMoveFreeBeforeNullTest() 3730 m_ICmp(Pred, m_Specific(X), m_APInt(RHSC)))) in simplifySwitchOnSelectUsingRanges()
|
H A D | InstCombineSimplifyDemanded.cpp | 392 if (!match(I->getOperand(0), m_ICmp(Pred, m_Value(X), m_APInt(CmpC))) || in SimplifyDemandedUseBits()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPULowerKernelAttributes.cpp | 229 if (match(ICmp, m_ICmp(Pred, GroupIDIntrin, m_Specific(BlockCount)))) { in processUse()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
H A D | LoopIdiomVectorize.cpp | 275 m_Br(m_ICmp(Pred, m_Specific(Index), m_Value(MaxLen)), in recognizeByteCompare() 287 m_Br(m_ICmp(WhilePred, m_Value(LoadA), m_Value(LoadB)), in recognizeByteCompare()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | LoopPeel.cpp | 384 if (!match(Condition, m_ICmp(Pred, m_Value(LeftVal), m_Value(RightVal)))) in countToEliminateCompares()
|
H A D | SimplifyIndVar.cpp | 2173 if (!match(Condition, m_ICmp(Pred, m_Specific(NarrowDefLHS), in calculatePostIncRange()
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | ExpandMemCmp.cpp | 685 match(UI, m_ICmp(Pred, m_Specific(CI), m_Zero())); in getMemCmpOneBlock()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
H A D | PatternMatch.h | 1589 m_ICmp(ICmpInst::Predicate &Pred, const LHS &L, const RHS &R) { in m_ICmp() function 1607 m_ICmp(const LHS &L, const RHS &R) { in m_ICmp() function 2407 if (!m_ICmp(Pred, m_Value(ICmpLHS), m_Value(ICmpRHS)).match(V)) in match()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
H A D | HexagonLoopIdiomRecognition.cpp | 701 if (!match(CondV, m_ICmp(P, m_And(m_Value(A), m_Value(B)), m_Value(C))) && in matchLeftShift() 702 !match(CondV, m_ICmp(P, m_Value(C), m_And(m_Value(A), m_Value(B))))) in matchLeftShift()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/ |
H A D | AggressiveInstCombine.cpp | 140 if (!match(TermI, m_Br(m_ICmp(Pred, m_Specific(ShAmt), m_ZeroInt()), in foldGuardedFunnelShift()
|