|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
lib/Analysis/InstructionSimplify.cpp 460 if (match(FCmp, m_Zero()))
470 if (match(FCmp, m_One()) && match(TCmp, m_Zero()))
586 if (match(Op1, m_Zero()))
707 if (match(Op1, m_Zero()))
715 if (match(Op0, m_Zero())) {
838 if (match(Op1, m_CombineOr(m_Undef(), m_Zero())))
902 if (match(Op1, m_Zero()))
924 if (match(Op0, m_Zero()))
1201 if (match(Op0, m_Zero()))
1208 if (match(Op1, m_Zero()) ||
1379 if (!match(ZeroICmp, m_ICmp(EqPred, m_Value(Y), m_Zero())) ||
1576 if (!match(Cmp0->getOperand(1), m_Zero()) ||
1577 !match(Cmp1->getOperand(1), m_Zero()) || P0 != P1)
1863 if (!match(Op0, m_ICmp(Pred, m_Value(X), m_Zero())) ||
1887 if (!match(Op0, m_ICmp(Pred, m_Value(X), m_Zero())) ||
1917 if (match(Op1, m_Zero()))
2072 if (Op0 == Op1 || match(Op1, m_Zero()))
2213 if (match(Op1, m_Zero()))
2497 if (match(RHS, m_Zero())) {
2563 if (!match(RHS, m_Zero()))
2633 if (Pred == ICmpInst::ICMP_SLT && match(RHS, m_Zero()))
3821 if (ICmpInst::isEquality(Pred) && match(CmpRHS, m_Zero())) {
4011 if (match(Ops[1], m_Zero()) && Ops[0]->getType() == GEPTy)
4028 if (match(P, m_Zero()))
4065 [](Value *Idx) { return match(Idx, m_Zero()); })) {
4076 m_Sub(m_Zero(), m_PtrToInt(m_Specific(StrippedBasePtr))))) {
5030 if (match(Op0, m_Zero()) || match(Op1, m_Zero()))
5030 if (match(Op0, m_Zero()) || match(Op1, m_Zero()))
5052 if (match(Op1, m_Zero()))
5055 if (match(Op0, m_Zero()))
5060 if (match(Op0, m_Zero()) || match(Op1, m_AllOnes()))
5068 if (match(Op1, m_Zero()))
lib/Analysis/ValueTracking.cpp 1930 m_c_ICmp(Pred, m_Specific(V), m_Zero())) ||
4690 if (match(TrueVal, m_Zero()) &&
4697 if (match(FalseVal, m_Zero()) &&
lib/Analysis/VectorUtils.cpp 134 while (LastOperand > 1 && match(Gep->getOperand(LastOperand), m_Zero())) {
lib/IR/ConstantFold.cpp 1029 if (match(C2, m_Zero()) || match(C2, m_One()))
1039 if (match(C2, m_Zero()))
1052 if (match(C2, m_Zero()))
1061 if (match(C2, m_Zero()))
1071 if (match(C2, m_Zero()))
lib/Target/ARM/ARMISelLowering.cpp14793 m_Undef(), m_Zero()))) {
lib/Target/ARM/MVETailPredication.cpp 219 m_Zero())))
225 m_Zero())))
255 m_Zero())))
260 if (!match(Insert, m_InsertElement(m_Undef(), m_Instruction(IV), m_Zero())))
270 if (!match(OnEntry, m_Zero()))
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp 708 if (match(C, m_Zero()))
745 } else if (match(ShouldSameV, m_Zero())) {
799 if (match(CondV, m_ICmp(P, m_Value(C), m_Zero())) ||
800 match(CondV, m_ICmp(P, m_Zero(), m_Value(C)))) {
lib/Transforms/InstCombine/InstCombineAddSub.cpp 1174 if (!match(Zero, m_Zero()))
1362 if (match(FV, m_Zero()) && match(TV, m_Sub(m_Value(N), m_Specific(A))))
1366 if (match(TV, m_Zero()) && match(FV, m_Sub(m_Value(N), m_Specific(A))))
1901 if (match(Op0, m_Zero()) && match(Op1, m_SDiv(m_Value(X), m_APInt(DivC))) &&
1910 if (match(Op1, m_Shl(m_Value(X), m_Value(Y))) && match(Op0, m_Zero()))
lib/Transforms/InstCombine/InstCombineAndOrXor.cpp 973 if (match(ICmp, m_ICmp(Pred, m_And(m_Value(X), m_APInt(Mask)), m_Zero())) &&
1060 if (!match(ZeroICmp, m_ICmp(EqPred, m_Value(ZeroCmpOp), m_Zero())) ||
2099 if (!((match(EltC1, m_Zero()) && match(EltC2, m_AllOnes())) ||
2100 (match(EltC2, m_Zero()) && match(EltC1, m_AllOnes()))))
2829 (PredL == CmpInst::ICMP_SLT && match(LHS1, m_Zero()) &&
2830 PredR == CmpInst::ICMP_SLT && match(RHS1, m_Zero()))) {
2837 PredR == CmpInst::ICMP_SLT && match(RHS1, m_Zero())) ||
2838 (PredL == CmpInst::ICMP_SLT && match(LHS1, m_Zero()) &&
lib/Transforms/InstCombine/InstCombineCalls.cpp 3743 if (match(Src1, m_Zero()) &&
3954 if (match(IIOperand, m_ICmp(Pred, m_Instruction(LHS), m_Zero())) &&
lib/Transforms/InstCombine/InstCombineCompares.cpp 1349 m_CombineAnd(m_Zero(), m_Value(Zero)))))
1364 if (!I.isEquality() || !match(&I, m_ICmp(Pred, m_Instruction(Val), m_Zero())))
1394 if (!match(Cmp.getOperand(1), m_Zero()))
2747 match(Op1, m_Zero()))
2764 if (Cmp.isEquality() && match(Op1, m_Zero()))
3455 if (!I.isEquality() || !match(I.getOperand(1), m_Zero()) ||
4440 return match(RHS, m_Zero());
5235 if (match(B, m_Zero())) {
5399 if (I.getPredicate() == ICmpInst::ICMP_NE && match(Op1, m_Zero())) {
5521 match(Op1, m_Zero()) &&
lib/Transforms/InstCombine/InstCombineMulDivRem.cpp 585 if (match(SI->getTrueValue(), m_Zero()))
588 else if (match(SI->getFalseValue(), m_Zero()))
1101 match(Op0, m_NSWSub(m_Zero(), m_Value(X)))) {
1111 if (match(&I, m_SDiv(m_OneUse(m_NSWSub(m_Zero(), m_Value(X))), m_Value(Y))))
1419 if (match(&I, m_SRem(m_OneUse(m_NSWSub(m_Zero(), m_Value(X))), m_Value(Y))))
lib/Transforms/InstCombine/InstCombinePHI.cpp 1183 match(CmpInst->getOperand(1), m_Zero())) {
lib/Transforms/InstCombine/InstCombineSelect.cpp 140 if (!match(Cmp->getOperand(1), m_Zero()))
506 match(Cmp->getOperand(1), m_Zero()) && match(FVal, m_One())))
604 if (!match(CmpRHS, m_Zero()))
620 (!IsEqualZero && !match(CmpRHS, m_Zero())))
689 if (match(TrueVal, m_Zero())) {
693 if (!match(FalseVal, m_Zero()))
807 if (!ICI->isEquality() || !match(ICI->getOperand(1), m_Zero()))
849 if (!ICI->isEquality() || !match(CmpRHS, m_Zero()))
1436 match(CmpRHS, m_Zero())) {
1439 } else if (Pred == ICmpInst::ICMP_SLT && match(CmpRHS, m_Zero())) {
2245 if (match(TrueVal, m_Zero())) {
2250 if (match(FalseVal, m_Zero())) {
2284 if (match(TrueVal, m_One()) && match(FalseVal, m_Zero()))
2288 if (match(TrueVal, m_AllOnes()) && match(FalseVal, m_Zero()))
2292 if (match(TrueVal, m_Zero()) && match(FalseVal, m_One())) {
2298 if (match(TrueVal, m_Zero()) && match(FalseVal, m_AllOnes())) {
lib/Transforms/InstCombine/InstructionCombining.cpp 1168 if (match(Val, m_Zero()) || Scale == 1) {
1344 if (match(Op, m_Zero())) {
1670 if (!isa<Constant>(*I) || !match(I->get(), m_Zero())) {
2485 m_Zero()),
lib/Transforms/Scalar/LowerConstantIntrinsics.cpp 63 if (match(BI->getOperand(0), m_Zero())) {
lib/Transforms/Utils/Local.cpp 2037 if (match(CI->getArgOperand(0), m_CombineOr(m_Zero(), m_Undef()))) {
2053 if (match(CI->getArgOperand(0), m_Zero()))
unittests/IR/PatternMatch.cpp 461 EXPECT_TRUE(m_Add(m_One(), m_Zero()).match(X));
462 EXPECT_FALSE(m_Add(m_Zero(), m_One()).match(X));
464 EXPECT_FALSE(m_Unless(m_Add(m_One(), m_Zero())).match(X));
465 EXPECT_TRUE(m_Unless(m_Add(m_Zero(), m_One())).match(X));
467 EXPECT_TRUE(m_c_Add(m_One(), m_Zero()).match(X));
468 EXPECT_TRUE(m_c_Add(m_Zero(), m_One()).match(X));
470 EXPECT_FALSE(m_Unless(m_c_Add(m_One(), m_Zero())).match(X));
471 EXPECT_FALSE(m_Unless(m_c_Add(m_Zero(), m_One())).match(X));
946 match(VI1, m_InsertElement(m_Undef(), m_ConstantInt(), m_Zero())));
948 match(VI1, m_InsertElement(m_Undef(), m_SpecificInt(1), m_Zero())));
971 EXPECT_TRUE(match(SI1, m_ShuffleVector(m_Value(), m_Undef(), m_Zero())));
981 m_ShuffleVector(m_InsertElement(m_Undef(), m_SpecificInt(1), m_Zero()),
982 m_Undef(), m_Zero())));
984 SI3, m_ShuffleVector(m_InsertElement(m_Undef(), m_Value(), m_Zero()),
985 m_Undef(), m_Zero())));
987 SI4, m_ShuffleVector(m_InsertElement(m_Undef(), m_Value(), m_Zero()),
988 m_Undef(), m_Zero())));
991 m_ShuffleVector(m_InsertElement(m_Undef(), m_SpecificInt(2), m_Zero()),
992 m_Undef(), m_Zero())));
994 SP2, m_ShuffleVector(m_InsertElement(m_Undef(), m_Value(A), m_Zero()),
995 m_Undef(), m_Zero())));
1020 EXPECT_FALSE(match(ScalarUndef, m_Zero()));
1021 EXPECT_FALSE(match(VectorUndef, m_Zero()));
1022 EXPECT_TRUE(match(ScalarZero, m_Zero()));
1023 EXPECT_TRUE(match(VectorZero, m_Zero()));
1024 EXPECT_TRUE(match(VectorZeroUndef, m_Zero()));