| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineSelect.cpp | 637 match(Cmp->getOperand(1), m_Zero()) && match(FVal, m_One()))) in foldSelectICmpAndAnd() 685 if (!match(Cmp, m_ICmp(Pred, m_Value(AndVal), m_Zero()))) in foldSelectICmpAndZeroShl() 697 !match(TVal, m_Zero()) || !match(FVal, m_Shl(m_Specific(X), m_APInt(C2)))) in foldSelectICmpAndZeroShl() 891 if (!match(CondVal, m_ICmp(Predicate, m_Value(X), m_Zero())) || in foldSelectZeroOrMul() 913 if (!match(MergedC, m_Zero()) && !match(MergedC, m_Undef())) in foldSelectZeroOrMul() 935 if (match(TrueVal, m_Zero())) { in canonicalizeSaturatedSubtract() 940 if (!match(FalseVal, m_Zero())) in canonicalizeSaturatedSubtract() 946 if (match(B, m_Zero()) && match(TrueVal, m_Add(m_Specific(A), m_AllOnes()))) in canonicalizeSaturatedSubtract() 1150 if (!ICI->isEquality() || !match(ICI->getOperand(1), m_Zero())) in foldSelectCtlzToCttz() 1220 if ((X != CmpLHS || !match(CmpRHS, m_Zero())) && in foldSelectCttzCtlz() [all …]
|
| H A D | InstCombineCompares.cpp | 1187 m_CombineAnd(m_Zero(), m_Value(Zero))))) in foldIRemByPowerOfTwoToBitTest() 1202 if (!I.isEquality() || !match(&I, m_ICmp(Pred, m_Instruction(Val), m_Zero()))) in foldSignBitTest() 1232 if (!match(Cmp.getOperand(1), m_Zero())) in foldICmpWithZero() 3431 match(Op1, m_Zero())) in foldICmpBitCast() 3448 if (Cmp.isEquality() && match(Op1, m_Zero())) in foldICmpBitCast() 3694 ? (match(TV, m_Zero()) && isKnownNonZero(FV, Q)) in foldICmpBinOpEqualityWithConstant() 3695 : (match(FV, m_Zero()) && isKnownNonZero(TV, Q))) { in foldICmpBinOpEqualityWithConstant() 3716 ? (match(FV, m_Zero()) && isKnownNonZero(TV, Q)) in foldICmpBinOpEqualityWithConstant() 3717 : (match(TV, m_Zero()) && isKnownNonZero(FV, Q)))) { in foldICmpBinOpEqualityWithConstant() 4458 if (Not && match(I->getOperand(0), m_Zero())) in isMaskOrZero() [all …]
|
| H A D | InstCombineCalls.cpp | 498 if (match(Op1, m_Zero())) in foldCttzCtlz() 507 if (II.hasOneUse() && match(Op1, m_Zero()) && in foldCttzCtlz() 2173 if (match(I0, m_NSWSub(m_Value(LHS), m_Value(RHS))) && match(I1, m_Zero())) in visitCallInst() 3330 m_Zero())) && in visitCallInst() 3371 m_SpecificICmp(ICmpInst::ICMP_NE, m_Value(A), m_Zero())) && in visitCallInst() 3395 m_Zero())))) { in visitCallInst() 3460 if (match(IIOperand, m_CombineOr(m_Zero(), m_Undef()))) { in visitCallInst()
|
| H A D | InstCombineMulDivRem.cpp | 1058 I.hasNoSignedZeros() && match(Start, m_Zero())) in visitFMul() 1099 if (match(SI->getTrueValue(), m_Zero())) in simplifyDivRemOfSelectWithZeroOp() 1102 else if (match(SI->getFalseValue(), m_Zero())) in simplifyDivRemOfSelectWithZeroOp()
|
| H A D | InstCombineAndOrXor.cpp | 787 if (match(RHS->getOperand(1), m_Zero())) in foldAndOrOfICmpsWithPow2AndWithZero() 800 if (!match(LHS, m_OneUse(m_ICmp(Pred, m_Value(Op), m_Zero()))) || in foldAndOrOfICmpsWithPow2AndWithZero() 1112 if (!match(ZeroICmp, m_ICmp(EqPred, m_Value(ZeroCmpOp), m_Zero())) || in foldUnsignedUnderflowCheck() 3159 if (!((match(EltC1, m_Zero()) && match(EltC2, m_AllOnes())) || in areInverseVectorBitmasks() 3160 (match(EltC2, m_Zero()) && match(EltC1, m_AllOnes())))) in areInverseVectorBitmasks()
|
| H A D | InstCombineAddSub.cpp | 1416 if (!match(Zero, m_Zero())) in canonicalizeCondSignextOfHighBitExtractToSignextHighBitExtract() 2170 if (IsNUW && match(Offset2, m_Zero()) && Base.LHSNW.isInBounds() && in OptimizePointerDifference() 2181 if (!match(Offset2, m_Zero())) { in OptimizePointerDifference()
|
| H A D | InstCombinePHI.cpp | 1525 !CmpInst->isEquality() || !match(CmpInst->getOperand(1), m_Zero())) { in visitPHINode()
|
| H A D | InstructionCombining.cpp | 1896 m_SpecificICmp(ICmpInst::ICMP_EQ, m_Specific(PN), m_Zero()))) in foldOpIntoPhi() 3131 if (!isa<Constant>(*I) || !match(I->get(), m_Zero())) { in visitGetElementPtrInst() 3769 m_Zero()), in tryToMoveFreeBeforeNullTest()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
| H A D | RISCVCodeGenPrepare.cpp | 150 !match(Phi->getIncomingValue(0), m_Zero()) || in widenVPMerge() 252 m_Value(BasePtr), m_Zero(), m_AllOnes(), m_Value(VL)))) in expandVPStrideLoad()
|
| /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 | 156 if (match(FCmp, m_Zero()) && impliesPoison(TCmp, Cond)) in handleOtherCmpSelSimplifications() 166 if (match(FCmp, m_One()) && match(TCmp, m_Zero())) in handleOtherCmpSelSimplifications() 606 if (match(Op1, m_Zero())) in simplifyAddInst() 760 if (match(Op1, m_Zero())) in simplifySubInst() 768 if (match(Op0, m_Zero())) { in simplifySubInst() 906 if (Q.isUndefValue(Op1) || match(Op1, m_Zero())) in simplifyMulInst() 1058 if (match(Op1, m_Zero())) in simplifyDivRem() 1073 if (match(Op0, m_Zero())) in simplifyDivRem() 1309 if (match(Op0, m_Zero())) in simplifyShift() 1316 if (match(Op1, m_Zero()) || in simplifyShift() [all …]
|
| H A D | ValueTracking.cpp | 255 return match(U, m_ICmp(m_Value(), m_Zero())); in isOnlyUsedInZeroComparison() 262 return match(U, m_ICmp(P, m_Value(), m_Zero())) && ICmpInst::isEquality(P); in isOnlyUsedInZeroEqualityComparison() 567 return match(RHS, m_Zero()); in cmpExcludesZero() 679 if (LHS == V && match(RHS, m_Zero())) { in computeKnownBitsFromCmp() 2824 m_Specific(Op1), m_Zero()))) || in matchOpWithOpEqZero() 2826 m_Specific(Op0), m_Zero()))); in matchOpWithOpEqZero() 10175 if (Pred == ICmpInst::ICMP_SLT && match(B, m_Zero())) in findValuesAffectedByCondition() 10221 m_Zero())))) && in stripNullTest()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | LowerConstantIntrinsics.cpp | 74 if (match(BI->getOperand(0), m_Zero())) { in replaceConditionalBranchesOnConstant()
|
| H A D | LoopFlatten.cpp | 978 assert(match(Br->getCondition(), m_Zero()) && in FlattenLoopPair()
|
| H A D | ConstraintElimination.cpp | 693 if (!ForceSignedSystem && match(Op1, m_Zero())) { in getConstraint() 701 if (!ForceSignedSystem && match(Op1, m_Zero())) { in getConstraint()
|
| H A D | LoopIdiomRecognize.cpp | 2758 return ICmpInst::isEquality(Pred) && match(CmpRHS, m_Zero()) && in detectShiftUntilBitTestIdiom() 3112 m_ICmp(Pred, m_Instruction(ValShifted), m_Zero())) || in detectShiftUntilZeroIdiom()
|
| H A D | SimpleLoopUnswitch.cpp | 180 while (match(Cond, m_Select(m_Value(CondNext), m_One(), m_Zero()))) in skipTrivialSelect() 3015 if (Pred == ICmpInst::ICMP_SGE && match(RHS, m_Zero())) { in canonicalizeForInvariantConditionInjection()
|
| /freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
| H A D | SelectOptimize.cpp | 816 match(CmpI->getOperand(1), m_Zero())) || in collectSelectGroups() 818 match(CmpI->getOperand(1), m_Zero())) || in collectSelectGroups()
|
| H A D | ExpandMemCmp.cpp | 693 match(UI, m_ICmp(Pred, m_Specific(CI), m_Zero())); in getMemCmpOneBlock()
|
| /freebsd/contrib/llvm-project/llvm/lib/IR/ |
| H A D | ConstantFold.cpp | 664 if (match(C2, m_CombineOr(m_Undef(), m_Zero()))) in ConstantFoldBinaryInstruction() 672 if (match(C2, m_CombineOr(m_Undef(), m_Zero()))) in ConstantFoldBinaryInstruction()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
| H A D | HexagonLoopIdiomRecognition.cpp | 716 if (match(C, m_Zero())) in matchLeftShift() 753 } else if (match(ShouldSameV, m_Zero())) { in matchLeftShift() 806 if (match(CondV, m_c_ICmp(P, m_Value(C), m_Zero()))) { in matchRightShift()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
| H A D | SDPatternMatch.h | 1151 inline Zero_match m_Zero(bool AllowUndefs = false) { 1234 return m_Sub(m_Zero(), V);
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/AggressiveInstCombine/ |
| H A D | AggressiveInstCombine.cpp | 880 if (!match(&I, m_ICmp(Pred, m_Value(Op0), m_Zero())) || in foldICmpOrChain()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPULowerBufferFatPointers.cpp | 1901 if (match(OffAccum, m_Zero())) { // Constant-zero offset in visitGetElementPtrInst() 1911 if (match(Off, m_Zero())) { in visitGetElementPtrInst()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
| H A D | MVEGatherScatterLowering.cpp | 434 if (!isa<UndefValue>(PassThru) && !match(PassThru, m_Zero())) { in lowerGather()
|