@@ -15624,31 +15624,31 @@ void ScalarEvolution::LoopGuards::collectFromBlock(
1562415624 // predicate.
1562515625 const SCEV *One = SE.getOne(RHS->getType());
1562615626 switch (Predicate) {
15627- case CmpInst::ICMP_ULT:
15628- if (RHS->getType()->isPointerTy())
15629- return;
15630- RHS = SE.getUMaxExpr(RHS, One);
15631- [[fallthrough]];
15632- case CmpInst::ICMP_SLT: {
15633- RHS = SE.getMinusSCEV(RHS, One);
15634- RHS = getPreviousSCEVDivisibleByDivisor(RHS, DividesBy, SE);
15635- break;
15636- }
15637- case CmpInst::ICMP_UGT:
15638- case CmpInst::ICMP_SGT:
15639- RHS = SE.getAddExpr(RHS, One);
15640- RHS = getNextSCEVDivisibleByDivisor(RHS, DividesBy, SE);
15641- break;
15642- case CmpInst::ICMP_ULE:
15643- case CmpInst::ICMP_SLE:
15644- RHS = getPreviousSCEVDivisibleByDivisor(RHS, DividesBy, SE);
15645- break;
15646- case CmpInst::ICMP_UGE:
15647- case CmpInst::ICMP_SGE:
15648- RHS = getNextSCEVDivisibleByDivisor(RHS, DividesBy, SE);
15649- break;
15650- default:
15651- break;
15627+ case CmpInst::ICMP_ULT:
15628+ if (RHS->getType()->isPointerTy())
15629+ return;
15630+ RHS = SE.getUMaxExpr(RHS, One);
15631+ [[fallthrough]];
15632+ case CmpInst::ICMP_SLT: {
15633+ RHS = SE.getMinusSCEV(RHS, One);
15634+ RHS = getPreviousSCEVDivisibleByDivisor(RHS, DividesBy, SE);
15635+ break;
15636+ }
15637+ case CmpInst::ICMP_UGT:
15638+ case CmpInst::ICMP_SGT:
15639+ RHS = SE.getAddExpr(RHS, One);
15640+ RHS = getNextSCEVDivisibleByDivisor(RHS, DividesBy, SE);
15641+ break;
15642+ case CmpInst::ICMP_ULE:
15643+ case CmpInst::ICMP_SLE:
15644+ RHS = getPreviousSCEVDivisibleByDivisor(RHS, DividesBy, SE);
15645+ break;
15646+ case CmpInst::ICMP_UGE:
15647+ case CmpInst::ICMP_SGE:
15648+ RHS = getNextSCEVDivisibleByDivisor(RHS, DividesBy, SE);
15649+ break;
15650+ default:
15651+ break;
1565215652 }
1565315653
1565415654 SmallVector<const SCEV *, 16> Worklist(1, LHS);
0 commit comments