Lines Matching refs:ICmpInst

1157                                                  ICmpInst::Predicate *Pred,  in getSignedOverflowLimitForStep()
1161 *Pred = ICmpInst::ICMP_SLT; in getSignedOverflowLimitForStep()
1166 *Pred = ICmpInst::ICMP_SGT; in getSignedOverflowLimitForStep()
1177 ICmpInst::Predicate *Pred, in getUnsignedOverflowLimitForStep()
1180 *Pred = ICmpInst::ICMP_ULT; in getUnsignedOverflowLimitForStep()
1212 ICmpInst::Predicate *Pred, in getOverflowLimitForStep()
1228 ICmpInst::Predicate *Pred, in getOverflowLimitForStep()
1305 ICmpInst::Predicate Pred; in getPreStartForExtend()
1398 ICmpInst::Predicate Pred = ICmpInst::BAD_ICMP_PREDICATE; in proveNoWrapByVaryingStart()
1529 if (isLoopBackedgeGuardedByCond(L, ICmpInst::ICMP_ULT, AR, N) || in getZeroExtendExpr()
1530 (isLoopEntryGuardedByCond(L, ICmpInst::ICMP_ULT, Start, N) && in getZeroExtendExpr()
1531 isLoopBackedgeGuardedByCond(L, ICmpInst::ICMP_ULT, in getZeroExtendExpr()
1543 if (isLoopBackedgeGuardedByCond(L, ICmpInst::ICMP_UGT, AR, N) || in getZeroExtendExpr()
1544 (isLoopEntryGuardedByCond(L, ICmpInst::ICMP_UGT, Start, N) && in getZeroExtendExpr()
1545 isLoopBackedgeGuardedByCond(L, ICmpInst::ICMP_UGT, in getZeroExtendExpr()
1724 ICmpInst::Predicate Pred; in getSignExtendExpr()
2990 isKnownPredicate(ICmpInst::ICMP_SGE, Ops[i], Ops[i+1])) { in getSMaxExpr()
2993 } else if (isKnownPredicate(ICmpInst::ICMP_SLE, Ops[i], Ops[i+1])) { in getSMaxExpr()
3094 isKnownPredicate(ICmpInst::ICMP_UGE, Ops[i], Ops[i+1])) { in getUMaxExpr()
3097 } else if (isKnownPredicate(ICmpInst::ICMP_ULE, Ops[i], Ops[i+1])) { in getUMaxExpr()
4339 if (ICmpInst *ICI = dyn_cast<ICmpInst>(U->getOperand(0))) { in createSCEV()
4343 case ICmpInst::ICMP_SLT: in createSCEV()
4344 case ICmpInst::ICMP_SLE: in createSCEV()
4347 case ICmpInst::ICMP_SGT: in createSCEV()
4348 case ICmpInst::ICMP_SGE: in createSCEV()
4367 case ICmpInst::ICMP_ULT: in createSCEV()
4368 case ICmpInst::ICMP_ULE: in createSCEV()
4371 case ICmpInst::ICMP_UGT: in createSCEV()
4372 case ICmpInst::ICMP_UGE: in createSCEV()
4391 case ICmpInst::ICMP_NE: in createSCEV()
4406 case ICmpInst::ICMP_EQ: in createSCEV()
5052 if (ICmpInst *ExitCondICmp = dyn_cast<ICmpInst>(ExitCond)) in ComputeExitLimitFromCond()
5077 ICmpInst *ExitCond, in ComputeExitLimitFromICmp()
5083 ICmpInst::Predicate Cond; in ComputeExitLimitFromICmp()
5110 Cond = ICmpInst::getSwappedPredicate(Cond); in ComputeExitLimitFromICmp()
5123 ICmpInst::makeConstantRange(Cond, RHSC->getValue()->getValue())); in ComputeExitLimitFromICmp()
5130 case ICmpInst::ICMP_NE: { // while (X != Y) in ComputeExitLimitFromICmp()
5136 case ICmpInst::ICMP_EQ: { // while (X == Y) in ComputeExitLimitFromICmp()
5142 case ICmpInst::ICMP_SLT: in ComputeExitLimitFromICmp()
5143 case ICmpInst::ICMP_ULT: { // while (X < Y) in ComputeExitLimitFromICmp()
5144 bool IsSigned = Cond == ICmpInst::ICMP_SLT; in ComputeExitLimitFromICmp()
5149 case ICmpInst::ICMP_SGT: in ComputeExitLimitFromICmp()
5150 case ICmpInst::ICMP_UGT: { // while (X > Y) in ComputeExitLimitFromICmp()
5151 bool IsSigned = Cond == ICmpInst::ICMP_SGT; in ComputeExitLimitFromICmp()
5212 ICmpInst::Predicate predicate) { in ComputeLoadConstantCompareExitLimit()
6257 bool ScalarEvolution::SimplifyICmpOperands(ICmpInst::Predicate &Pred, in SimplifyICmpOperands()
6279 Pred = ICmpInst::getSwappedPredicate(Pred); in SimplifyICmpOperands()
6290 Pred = ICmpInst::getSwappedPredicate(Pred); in SimplifyICmpOperands()
6301 case ICmpInst::ICMP_EQ: in SimplifyICmpOperands()
6302 case ICmpInst::ICMP_NE: in SimplifyICmpOperands()
6314 case ICmpInst::ICMP_UGE: in SimplifyICmpOperands()
6316 Pred = ICmpInst::ICMP_NE; in SimplifyICmpOperands()
6322 Pred = ICmpInst::ICMP_EQ; in SimplifyICmpOperands()
6328 Pred = ICmpInst::ICMP_UGT; in SimplifyICmpOperands()
6332 case ICmpInst::ICMP_ULE: in SimplifyICmpOperands()
6334 Pred = ICmpInst::ICMP_NE; in SimplifyICmpOperands()
6340 Pred = ICmpInst::ICMP_EQ; in SimplifyICmpOperands()
6346 Pred = ICmpInst::ICMP_ULT; in SimplifyICmpOperands()
6350 case ICmpInst::ICMP_SGE: in SimplifyICmpOperands()
6352 Pred = ICmpInst::ICMP_NE; in SimplifyICmpOperands()
6358 Pred = ICmpInst::ICMP_EQ; in SimplifyICmpOperands()
6364 Pred = ICmpInst::ICMP_SGT; in SimplifyICmpOperands()
6368 case ICmpInst::ICMP_SLE: in SimplifyICmpOperands()
6370 Pred = ICmpInst::ICMP_NE; in SimplifyICmpOperands()
6376 Pred = ICmpInst::ICMP_EQ; in SimplifyICmpOperands()
6382 Pred = ICmpInst::ICMP_SLT; in SimplifyICmpOperands()
6386 case ICmpInst::ICMP_UGT: in SimplifyICmpOperands()
6388 Pred = ICmpInst::ICMP_NE; in SimplifyICmpOperands()
6393 Pred = ICmpInst::ICMP_EQ; in SimplifyICmpOperands()
6400 case ICmpInst::ICMP_ULT: in SimplifyICmpOperands()
6402 Pred = ICmpInst::ICMP_NE; in SimplifyICmpOperands()
6407 Pred = ICmpInst::ICMP_EQ; in SimplifyICmpOperands()
6414 case ICmpInst::ICMP_SGT: in SimplifyICmpOperands()
6416 Pred = ICmpInst::ICMP_NE; in SimplifyICmpOperands()
6421 Pred = ICmpInst::ICMP_EQ; in SimplifyICmpOperands()
6428 case ICmpInst::ICMP_SLT: in SimplifyICmpOperands()
6430 Pred = ICmpInst::ICMP_NE; in SimplifyICmpOperands()
6435 Pred = ICmpInst::ICMP_EQ; in SimplifyICmpOperands()
6447 if (ICmpInst::isTrueWhenEqual(Pred)) in SimplifyICmpOperands()
6449 if (ICmpInst::isFalseWhenEqual(Pred)) in SimplifyICmpOperands()
6456 case ICmpInst::ICMP_SLE: in SimplifyICmpOperands()
6460 Pred = ICmpInst::ICMP_SLT; in SimplifyICmpOperands()
6465 Pred = ICmpInst::ICMP_SLT; in SimplifyICmpOperands()
6469 case ICmpInst::ICMP_SGE: in SimplifyICmpOperands()
6473 Pred = ICmpInst::ICMP_SGT; in SimplifyICmpOperands()
6478 Pred = ICmpInst::ICMP_SGT; in SimplifyICmpOperands()
6482 case ICmpInst::ICMP_ULE: in SimplifyICmpOperands()
6486 Pred = ICmpInst::ICMP_ULT; in SimplifyICmpOperands()
6491 Pred = ICmpInst::ICMP_ULT; in SimplifyICmpOperands()
6495 case ICmpInst::ICMP_UGE: in SimplifyICmpOperands()
6499 Pred = ICmpInst::ICMP_UGT; in SimplifyICmpOperands()
6504 Pred = ICmpInst::ICMP_UGT; in SimplifyICmpOperands()
6524 Pred = ICmpInst::ICMP_EQ; in SimplifyICmpOperands()
6530 Pred = ICmpInst::ICMP_NE; in SimplifyICmpOperands()
6554 bool ScalarEvolution::isKnownPredicate(ICmpInst::Predicate Pred, in isKnownPredicate()
6591 ScalarEvolution::isKnownPredicateWithRanges(ICmpInst::Predicate Pred, in isKnownPredicateWithRanges()
6594 return ICmpInst::isTrueWhenEqual(Pred); in isKnownPredicateWithRanges()
6601 case ICmpInst::ICMP_SGT: in isKnownPredicateWithRanges()
6603 case ICmpInst::ICMP_SLT: { in isKnownPredicateWithRanges()
6612 case ICmpInst::ICMP_SGE: in isKnownPredicateWithRanges()
6614 case ICmpInst::ICMP_SLE: { in isKnownPredicateWithRanges()
6623 case ICmpInst::ICMP_UGT: in isKnownPredicateWithRanges()
6625 case ICmpInst::ICMP_ULT: { in isKnownPredicateWithRanges()
6634 case ICmpInst::ICMP_UGE: in isKnownPredicateWithRanges()
6636 case ICmpInst::ICMP_ULE: { in isKnownPredicateWithRanges()
6645 case ICmpInst::ICMP_NE: { in isKnownPredicateWithRanges()
6656 case ICmpInst::ICMP_EQ: in isKnownPredicateWithRanges()
6669 ICmpInst::Predicate Pred, in isLoopBackedgeGuardedByCond()
6768 ICmpInst::Predicate Pred, in isLoopEntryGuardedByCond()
6831 bool ScalarEvolution::isImpliedCond(ICmpInst::Predicate Pred, in isImpliedCond()
6852 ICmpInst *ICI = dyn_cast<ICmpInst>(FoundCondValue); in isImpliedCond()
6857 ICmpInst::Predicate FoundPred; in isImpliedCond()
6900 FoundPred = ICmpInst::getSwappedPredicate(FoundPred); in isImpliedCond()
6903 Pred = ICmpInst::getSwappedPredicate(Pred); in isImpliedCond()
6913 if (ICmpInst::getSwappedPredicate(FoundPred) == Pred) { in isImpliedCond()
6917 return isImpliedCondOperands(ICmpInst::getSwappedPredicate(Pred), in isImpliedCond()
6922 if (FoundPred == ICmpInst::ICMP_NE && in isImpliedCond()
6941 APInt Min = ICmpInst::isSigned(Pred) ? in isImpliedCond()
6952 case ICmpInst::ICMP_SGE: in isImpliedCond()
6953 case ICmpInst::ICMP_UGE: in isImpliedCond()
6960 case ICmpInst::ICMP_SGT: in isImpliedCond()
6961 case ICmpInst::ICMP_UGT: in isImpliedCond()
6982 if (FoundPred == ICmpInst::ICMP_EQ) in isImpliedCond()
6983 if (ICmpInst::isTrueWhenEqual(Pred)) in isImpliedCond()
6986 if (Pred == ICmpInst::ICMP_NE) in isImpliedCond()
6987 if (!ICmpInst::isTrueWhenEqual(FoundPred)) in isImpliedCond()
6998 bool ScalarEvolution::isImpliedCondOperands(ICmpInst::Predicate Pred, in isImpliedCondOperands()
7062 ICmpInst::Predicate Pred, in IsKnownPredicateViaMinOrMax()
7068 case ICmpInst::ICMP_SGE: in IsKnownPredicateViaMinOrMax()
7071 case ICmpInst::ICMP_SLE: in IsKnownPredicateViaMinOrMax()
7078 case ICmpInst::ICMP_UGE: in IsKnownPredicateViaMinOrMax()
7081 case ICmpInst::ICMP_ULE: in IsKnownPredicateViaMinOrMax()
7096 ScalarEvolution::isImpliedCondOperandsHelper(ICmpInst::Predicate Pred, in isImpliedCondOperandsHelper()
7101 [this](ICmpInst::Predicate Pred, const SCEV *LHS, const SCEV *RHS) { in isImpliedCondOperandsHelper()
7108 case ICmpInst::ICMP_EQ: in isImpliedCondOperandsHelper()
7109 case ICmpInst::ICMP_NE: in isImpliedCondOperandsHelper()
7113 case ICmpInst::ICMP_SLT: in isImpliedCondOperandsHelper()
7114 case ICmpInst::ICMP_SLE: in isImpliedCondOperandsHelper()
7115 if (IsKnownPredicateFull(ICmpInst::ICMP_SLE, LHS, FoundLHS) && in isImpliedCondOperandsHelper()
7116 IsKnownPredicateFull(ICmpInst::ICMP_SGE, RHS, FoundRHS)) in isImpliedCondOperandsHelper()
7119 case ICmpInst::ICMP_SGT: in isImpliedCondOperandsHelper()
7120 case ICmpInst::ICMP_SGE: in isImpliedCondOperandsHelper()
7121 if (IsKnownPredicateFull(ICmpInst::ICMP_SGE, LHS, FoundLHS) && in isImpliedCondOperandsHelper()
7122 IsKnownPredicateFull(ICmpInst::ICMP_SLE, RHS, FoundRHS)) in isImpliedCondOperandsHelper()
7125 case ICmpInst::ICMP_ULT: in isImpliedCondOperandsHelper()
7126 case ICmpInst::ICMP_ULE: in isImpliedCondOperandsHelper()
7127 if (IsKnownPredicateFull(ICmpInst::ICMP_ULE, LHS, FoundLHS) && in isImpliedCondOperandsHelper()
7128 IsKnownPredicateFull(ICmpInst::ICMP_UGE, RHS, FoundRHS)) in isImpliedCondOperandsHelper()
7131 case ICmpInst::ICMP_UGT: in isImpliedCondOperandsHelper()
7132 case ICmpInst::ICMP_UGE: in isImpliedCondOperandsHelper()
7133 if (IsKnownPredicateFull(ICmpInst::ICMP_UGE, LHS, FoundLHS) && in isImpliedCondOperandsHelper()
7134 IsKnownPredicateFull(ICmpInst::ICMP_ULE, RHS, FoundRHS)) in isImpliedCondOperandsHelper()
7144 bool ScalarEvolution::isImpliedCondOperandsViaRanges(ICmpInst::Predicate Pred, in isImpliedCondOperandsViaRanges()
7288 ICmpInst::Predicate Cond = IsSigned ? ICmpInst::ICMP_SLT in HowManyLessThans()
7289 : ICmpInst::ICMP_ULT; in HowManyLessThans()
7368 ICmpInst::Predicate Cond = IsSigned ? ICmpInst::ICMP_SGT in HowManyGreaterThans()
7369 : ICmpInst::ICMP_UGT; in HowManyGreaterThans()
7509 dyn_cast<ConstantInt>(ConstantExpr::getICmp(ICmpInst::ICMP_ULT, in getNumIterationsInRange()