Lines Matching refs:Cmp0

653 Value *InstCombinerImpl::simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1,  in simplifyRangeCheck()  argument
657 ConstantInt *RangeStart = dyn_cast<ConstantInt>(Cmp0->getOperand(1)); in simplifyRangeCheck()
661 ICmpInst::Predicate Pred0 = (Inverted ? Cmp0->getInversePredicate() : in simplifyRangeCheck()
662 Cmp0->getPredicate()); in simplifyRangeCheck()
672 Value *Input = Cmp0->getOperand(0); in simplifyRangeCheck()
871 static Value *foldIsPowerOf2OrZero(ICmpInst *Cmp0, ICmpInst *Cmp1, bool IsAnd, in foldIsPowerOf2OrZero() argument
875 if (!match(Cmp0, m_ICmp(Pred0, m_Intrinsic<Intrinsic::ctpop>(m_Value(X)), in foldIsPowerOf2OrZero()
880 Value *CtPop = Cmp0->getOperand(0); in foldIsPowerOf2OrZero()
891 static Value *foldIsPowerOf2(ICmpInst *Cmp0, ICmpInst *Cmp1, bool JoinedByAnd, in foldIsPowerOf2() argument
895 std::swap(Cmp0, Cmp1); in foldIsPowerOf2()
897 std::swap(Cmp0, Cmp1); in foldIsPowerOf2()
902 if (JoinedByAnd && match(Cmp0, m_ICmp(Pred0, m_Value(X), m_ZeroInt())) && in foldIsPowerOf2()
910 if (!JoinedByAnd && match(Cmp0, m_ICmp(Pred0, m_Value(X), m_ZeroInt())) && in foldIsPowerOf2()
991 static Value *foldPowerOf2AndShiftedMask(ICmpInst *Cmp0, ICmpInst *Cmp1, in foldPowerOf2AndShiftedMask() argument
997 ICmpInst::Predicate CmpPred0 = Cmp0->getPredicate(), in foldPowerOf2AndShiftedMask()
1003 getMaskedTypeForICmpPair(A, B, C, D, E, Cmp0, Cmp1, CmpPred0, CmpPred1); in foldPowerOf2AndShiftedMask()
1105 Value *InstCombinerImpl::foldEqOfParts(ICmpInst *Cmp0, ICmpInst *Cmp1, in foldEqOfParts() argument
1107 if (!Cmp0->hasOneUse() || !Cmp1->hasOneUse()) in foldEqOfParts()
1141 std::optional<IntPart> L0 = GetMatchPart(Cmp0, 0); in foldEqOfParts()
1142 std::optional<IntPart> R0 = GetMatchPart(Cmp0, 1); in foldEqOfParts()
1178 static Value *foldAndOrOfICmpsWithConstEq(ICmpInst *Cmp0, ICmpInst *Cmp1, in foldAndOrOfICmpsWithConstEq() argument
1187 if (!match(Cmp0, m_ICmp(Pred0, m_Value(X), m_Constant(C))) || in foldAndOrOfICmpsWithConstEq()
1216 return IsAnd ? Builder.CreateLogicalAnd(Cmp0, SubstituteCmp) in foldAndOrOfICmpsWithConstEq()
1217 : Builder.CreateLogicalOr(Cmp0, SubstituteCmp); in foldAndOrOfICmpsWithConstEq()
1218 return Builder.CreateBinOp(IsAnd ? Instruction::And : Instruction::Or, Cmp0, in foldAndOrOfICmpsWithConstEq()