Lines Matching defs:Pred1
669 ICmpInst::Predicate Pred1 = (Inverted ? Cmp1->getInversePredicate() :
680 Pred1 = ICmpInst::getSwappedPredicate(Pred1);
687 switch (Pred1) {
912 CmpInst::Predicate Pred0, Pred1;
916 !match(Cmp1, m_ICmp(Pred1, m_Specific(X), m_ZeroInt())))
920 if (IsAnd && Pred0 == ICmpInst::ICMP_NE && Pred1 == ICmpInst::ICMP_NE)
922 if (!IsAnd && Pred0 == ICmpInst::ICMP_EQ && Pred1 == ICmpInst::ICMP_EQ)
941 CmpInst::Predicate Pred0, Pred1;
944 match(Cmp1, m_ICmp(Pred1, m_Intrinsic<Intrinsic::ctpop>(m_Specific(X)),
946 Pred0 == ICmpInst::ICMP_NE && Pred1 == ICmpInst::ICMP_ULT) {
955 match(Cmp1, m_ICmp(Pred1, m_Intrinsic<Intrinsic::ctpop>(m_Specific(X)),
957 Pred0 == ICmpInst::ICMP_EQ && Pred1 == ICmpInst::ICMP_UGT) {
1238 // common operand as operand 1 (Pred1 is swapped if the common operand was
1241 ICmpInst::Predicate Pred1;
1242 if (!match(Cmp1, m_c_ICmp(Pred1, m_Value(Y), m_Specific(X))))
1246 // (X == C) && (Y Pred1 X) --> (X == C) && (Y Pred1 C)
1247 // (X != C) || (Y Pred1 X) --> (X != C) || (Y Pred1 C)
1250 Value *SubstituteCmp = simplifyICmpInst(Pred1, Y, C, Q);
1256 SubstituteCmp = Builder.CreateICmp(Pred1, Y, C);
1265 /// Fold (icmp Pred1 V1, C1) & (icmp Pred2 V2, C2)
1266 /// or (icmp Pred1 V1, C1) | (icmp Pred2 V2, C2)
1272 ICmpInst::Predicate Pred1, Pred2;
1275 if (!match(ICmp1, m_ICmp(Pred1, m_Value(V1), m_APInt(C1))) ||
1294 IsAnd ? ICmpInst::getInversePredicate(Pred1) : Pred1, *C1);