reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/InstCombine/InstCombineCompares.cpp
 3683       (Pred == ICmpInst::ICMP_ULT || Pred == ICmpInst::ICMP_UGE))
 3683       (Pred == ICmpInst::ICMP_ULT || Pred == ICmpInst::ICMP_UGE))
 3684     return new ICmpInst(Pred, Builder.CreateNot(Op1), X);
 3687       (Pred == ICmpInst::ICMP_UGT || Pred == ICmpInst::ICMP_ULE))
 3687       (Pred == ICmpInst::ICMP_UGT || Pred == ICmpInst::ICMP_ULE))
 3688     return new ICmpInst(Pred, X, Builder.CreateNot(Op0));
 3693         ICmpInst::isEquality(Pred) ||
 3694         (CmpInst::isUnsigned(Pred) && BO0->hasNoUnsignedWrap()) ||
 3695         (CmpInst::isSigned(Pred) && BO0->hasNoSignedWrap());
 3698         ICmpInst::isEquality(Pred) ||
 3699         (CmpInst::isUnsigned(Pred) && BO1->hasNoUnsignedWrap()) ||
 3700         (CmpInst::isSigned(Pred) && BO1->hasNoSignedWrap());
 3717     return new ICmpInst(Pred, A == Op1 ? B : A,
 3723     return new ICmpInst(Pred, Constant::getNullValue(Op0->getType()),
 3749     return new ICmpInst(Pred, Y, Z);
 3753   if (A && NoOp0WrapProblem && Pred == CmpInst::ICMP_SLT &&
 3758   if (A && NoOp0WrapProblem && Pred == CmpInst::ICMP_SGE &&
 3763   if (A && NoOp0WrapProblem && Pred == CmpInst::ICMP_SLE && match(B, m_One()))
 3767   if (A && NoOp0WrapProblem && Pred == CmpInst::ICMP_SGT && match(B, m_One()))
 3771   if (C && NoOp1WrapProblem && Pred == CmpInst::ICMP_SGT &&
 3776   if (C && NoOp1WrapProblem && Pred == CmpInst::ICMP_SLE &&
 3781   if (C && NoOp1WrapProblem && Pred == CmpInst::ICMP_SGE && match(D, m_One()))
 3785   if (C && NoOp1WrapProblem && Pred == CmpInst::ICMP_SLT && match(D, m_One()))
 3798   if (A && NoOp0WrapProblem && Pred == CmpInst::ICMP_ULE && match(B, m_One()))
 3802   if (A && NoOp0WrapProblem && Pred == CmpInst::ICMP_UGT && match(B, m_One()))
 3806   if (C && NoOp1WrapProblem && Pred == CmpInst::ICMP_UGE && match(D, m_One()))
 3810   if (C && NoOp1WrapProblem && Pred == CmpInst::ICMP_ULT && match(D, m_One()))
 3832             return new ICmpInst(Pred, NewAdd, C);
 3836             return new ICmpInst(Pred, A, NewAdd);
 3858     return new ICmpInst(Pred, Constant::getNullValue(Op1->getType()), B);
 3861     return new ICmpInst(Pred, D, Constant::getNullValue(Op0->getType()));
 3865   if (A == Op1 && (Pred == ICmpInst::ICMP_UGT || Pred == ICmpInst::ICMP_ULE))
 3865   if (A == Op1 && (Pred == ICmpInst::ICMP_UGT || Pred == ICmpInst::ICMP_ULE))
 3866     return new ICmpInst(Pred, B, A);
 3868   if (C == Op0 && (Pred == ICmpInst::ICMP_ULT || Pred == ICmpInst::ICMP_UGE))
 3868   if (C == Op0 && (Pred == ICmpInst::ICMP_ULT || Pred == ICmpInst::ICMP_UGE))
 3869     return new ICmpInst(Pred, C, D);
 3871   if (A == Op1 && (Pred == ICmpInst::ICMP_UGE || Pred == ICmpInst::ICMP_ULT) &&
 3871   if (A == Op1 && (Pred == ICmpInst::ICMP_UGE || Pred == ICmpInst::ICMP_ULT) &&
 3873     return new ICmpInst(CmpInst::getFlippedStrictnessPredicate(Pred), B, A);
 3875   if (C == Op0 && (Pred == ICmpInst::ICMP_ULE || Pred == ICmpInst::ICMP_UGT) &&
 3875   if (C == Op0 && (Pred == ICmpInst::ICMP_ULE || Pred == ICmpInst::ICMP_UGT) &&
 3877     return new ICmpInst(CmpInst::getFlippedStrictnessPredicate(Pred), C, D);
 3881     return new ICmpInst(Pred, A, C);
 3885     return new ICmpInst(Pred, D, B);
 3888   if (NoOp0WrapProblem && ICmpInst::isSigned(Pred)) {
 3908     switch (SRem == BO0 ? ICmpInst::getSwappedPredicate(Pred) : Pred) {
 3908     switch (SRem == BO0 ? ICmpInst::getSwappedPredicate(Pred) : Pred) {
 3935         return new ICmpInst(Pred, BO0->getOperand(0), BO1->getOperand(0));
 3971           return new ICmpInst(Pred, And1, And2);
 3976         return new ICmpInst(Pred, BO0->getOperand(0), BO1->getOperand(0));
 3984       return new ICmpInst(Pred, BO0->getOperand(0), BO1->getOperand(0));
 3989       return new ICmpInst(Pred, BO0->getOperand(0), BO1->getOperand(0));
 3994       return new ICmpInst(Pred, BO0->getOperand(0), BO1->getOperand(0));
 4003       return new ICmpInst(Pred, BO0->getOperand(0), BO1->getOperand(0));
 4013     if (match(BO0, BitwiseAnd) && Pred == ICmpInst::ICMP_ULT) {