/freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineSelect.cpp | 139 if (!match(Cmp->getOperand(1), m_Zero())) in foldSelectICmpAnd() 591 match(Cmp->getOperand(1), m_Zero()) && match(FVal, m_One()))) in foldSelectICmpAndAnd() 639 if (!match(Cmp, m_ICmp(Pred, m_Value(AndVal), m_Zero()))) in foldSelectICmpAndZeroShl() 651 !match(TVal, m_Zero()) || !match(FVal, m_Shl(m_Specific(X), m_APInt(C2)))) in foldSelectICmpAndZeroShl() 743 if (!match(CmpRHS, m_Zero())) in foldSelectICmpAndBinOp() 868 if (!match(CondVal, m_ICmp(Predicate, m_Value(X), m_Zero())) || in foldSelectZeroOrMul() 890 if (!match(MergedC, m_Zero()) && !match(MergedC, m_Undef())) in foldSelectZeroOrMul() 913 if (match(TrueVal, m_Zero())) { in canonicalizeSaturatedSubtract() 918 if (!match(FalseVal, m_Zero())) in canonicalizeSaturatedSubtract() 924 if (match(B, m_Zero()) && match(TrueVal, m_Add(m_Specific(A), m_AllOnes()))) in canonicalizeSaturatedSubtract() [all …]
|
H A D | InstCombineCompares.cpp | 1159 m_CombineAnd(m_Zero(), m_Value(Zero))))) in foldIRemByPowerOfTwoToBitTest() 1174 if (!I.isEquality() || !match(&I, m_ICmp(Pred, m_Instruction(Val), m_Zero()))) in foldSignBitTest() 1204 if (!match(Cmp.getOperand(1), m_Zero())) in foldICmpWithZero() 3284 match(Op1, m_Zero())) in foldICmpBitCast() 3301 if (Cmp.isEquality() && match(Op1, m_Zero())) in foldICmpBitCast() 4242 if (Not && match(I->getOperand(0), m_Zero())) in isMaskOrZero() 4383 if (ICmpInst::isEquality(Pred) && match(Op1, m_Zero()) && in foldICmpWithLowBitMaskedVal() 4495 if (!I.isEquality() || !match(I.getOperand(1), m_Zero()) || in foldShiftIntoShiftInAnotherHandOfAndInICmp() 5398 if (match(Val, m_Zero())) in foldICmpWithMinMax() 5804 m_Zero()))) in foldICmpEquality() [all …]
|
H A D | InstCombineAndOrXor.cpp | 719 if (match(RHS->getOperand(1), m_Zero())) in foldAndOrOfICmpsWithPow2AndWithZero() 732 if (!match(LHS, m_OneUse(m_ICmp(Pred, m_Value(Op), m_Zero()))) || in foldAndOrOfICmpsWithPow2AndWithZero() 754 if (!match(LHS->getOperand(1), m_Zero()) || in foldAndOrOfICmpsOfAndWithPow2() 755 !match(RHS->getOperand(1), m_Zero())) in foldAndOrOfICmpsOfAndWithPow2() 858 if (match(ICmp, m_ICmp(Pred, m_And(m_Value(X), m_APInt(Mask)), m_Zero())) && in foldSignedTruncationCheck() 1077 if (!match(ZeroICmp, m_ICmp(EqPred, m_Value(ZeroCmpOp), m_Zero())) || in foldUnsignedUnderflowCheck() 3101 if (!((match(EltC1, m_Zero()) && match(EltC2, m_AllOnes())) || in areInverseVectorBitmasks() 3102 (match(EltC2, m_Zero()) && match(EltC1, m_AllOnes())))) in areInverseVectorBitmasks()
|
H A D | InstCombineCalls.cpp | 499 if (match(Op1, m_Zero())) in foldCttzCtlz() 508 if (II.hasOneUse() && match(Op1, m_Zero()) && in foldCttzCtlz() 3035 if (match(IIOperand, m_ICmp(Pred, m_Instruction(LHS), m_Zero())) && in visitCallInst() 3075 match(IIOperand, m_Cmp(Pred, m_Value(A), m_Zero())) && in visitCallInst() 3097 m_Zero())) && in visitCallInst() 3163 if (match(IIOperand, m_CombineOr(m_Zero(), m_Undef()))) { in visitCallInst()
|
H A D | InstCombineMulDivRem.cpp | 962 I.hasNoSignedZeros() && match(Start, m_Zero())) in visitFMul() 991 if (match(SI->getTrueValue(), m_Zero())) in simplifyDivRemOfSelectWithZeroOp() 994 else if (match(SI->getFalseValue(), m_Zero())) in simplifyDivRemOfSelectWithZeroOp()
|
H A D | InstCombinePHI.cpp | 1528 !CmpInst->isEquality() || !match(CmpInst->getOperand(1), m_Zero())) { in visitPHINode()
|
/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 | 198 if (match(FCmp, m_Zero()) && impliesPoison(TCmp, Cond)) in handleOtherCmpSelSimplifications() 208 if (match(FCmp, m_One()) && match(TCmp, m_Zero())) in handleOtherCmpSelSimplifications() 649 if (match(Op1, m_Zero())) in simplifyAddInst() 803 if (match(Op1, m_Zero())) in simplifySubInst() 811 if (match(Op0, m_Zero())) { in simplifySubInst() 941 if (Q.isUndefValue(Op1) || match(Op1, m_Zero())) in simplifyMulInst() 1094 if (match(Op1, m_Zero())) in simplifyDivRem() 1122 if (match(Op0, m_Zero())) in simplifyDivRem() 1358 if (match(Op0, m_Zero())) in simplifyShift() 1365 if (match(Op1, m_Zero()) || in simplifyShift() [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() 554 return match(RHS, m_Zero()); in cmpExcludesZero() 631 if (LHS == V && match(RHS, m_Zero())) { in computeKnownBitsFromCmp() 702 if (match(LHS, m_And(m_V, m_Power2(BPow2))) && match(RHS, m_Zero())) in computeKnownBitsFromCmp() 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() 9869 if (Pred == ICmpInst::ICMP_SLT && match(B, m_Zero())) in findValuesAffectedByCondition()
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
H A D | LowerConstantIntrinsics.cpp | 75 if (match(BI->getOperand(0), m_Zero())) { in replaceConditionalBranchesOnConstant()
|
H A D | LoopIdiomRecognize.cpp | 2453 return ICmpInst::isEquality(Pred) && match(CmpRHS, m_Zero()) && in detectShiftUntilBitTestIdiom() 2462 return ICmpInst::isEquality(Pred) && match(CmpRHS, m_Zero()) && in detectShiftUntilBitTestIdiom() 2806 m_ICmp(Pred, m_Instruction(ValShifted), m_Zero())) || in detectShiftUntilZeroIdiom()
|
H A D | LoopFlatten.cpp | 978 assert(match(Br->getCondition(), m_Zero()) && in FlattenLoopPair()
|
H A D | ConstraintElimination.cpp | 635 if (match(Op1, m_Zero())) { in getConstraint() 643 if (match(Op1, m_Zero())) { in getConstraint()
|
H A D | SimpleLoopUnswitch.cpp | 180 while (match(Cond, m_Select(m_Value(CondNext), m_One(), m_Zero()))) in skipTrivialSelect() 3008 if (Pred == ICmpInst::ICMP_SGE && match(RHS, m_Zero())) { in canonicalizeForInvariantConditionInjection()
|
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/Target/RISCV/ |
H A D | RISCVCodeGenPrepare.cpp | 176 m_Value(BasePtr), m_Zero(), m_AllOnes(), m_Value(VL)))) in expandVPStrideLoad()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | SDPatternMatch.h | 775 inline SpecificInt_match m_Zero() { return m_SpecificInt(0U); } 865 return m_Sub(m_Zero(), V);
|
/freebsd/contrib/llvm-project/llvm/lib/IR/ |
H A D | ConstantFold.cpp | 669 if (match(C2, m_CombineOr(m_Undef(), m_Zero()))) in ConstantFoldBinaryInstruction() 677 if (match(C2, m_CombineOr(m_Undef(), m_Zero()))) in ConstantFoldBinaryInstruction()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
H A D | HexagonLoopIdiomRecognition.cpp | 726 if (match(C, m_Zero())) in matchLeftShift() 763 } else if (match(ShouldSameV, m_Zero())) { in matchLeftShift() 816 if (match(CondV, m_c_ICmp(P, m_Value(C), m_Zero()))) { in matchRightShift()
|
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
H A D | AMDGPULowerBufferFatPointers.cpp | 1266 if (match(OffAccum, m_Zero())) { // Constant-zero offset in visitGetElementPtrInst() 1276 if (match(Off, m_Zero())) { in visitGetElementPtrInst()
|
H A D | AMDGPUInstCombineIntrinsic.cpp | 925 if (match(Src1, PatternMatch::m_Zero()) && in instCombineIntrinsic()
|
/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/lib/Target/ARM/ |
H A D | MVEGatherScatterLowering.cpp | 435 if (!isa<UndefValue>(PassThru) && !match(PassThru, m_Zero())) { in lowerGather()
|
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
H A D | PatternMatch.h | 612 inline is_zero m_Zero() { return is_zero(); } in m_Zero() function 2913 m_Zero().match(GEP->getPointerOperand()) &&
|
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
H A D | Local.cpp | 2997 if (match(CI->getArgOperand(0), m_CombineOr(m_Zero(), m_Undef()))) { in markAliveBlocks() 3013 if (match(CI->getArgOperand(0), m_Zero())) in markAliveBlocks()
|