@@ -1274,8 +1274,8 @@ static SCEVUse getUnsignedOverflowLimitForStep(SCEVUse Step,
12741274namespace {
12751275
12761276struct ExtendOpTraitsBase {
1277- typedef SCEVUse (ScalarEvolution:: *GetExtendExprTy)(SCEVUse, Type *,
1278- unsigned);
1277+ typedef SCEVUse (ScalarEvolution::*GetExtendExprTy)(SCEVUse, Type *,
1278+ unsigned);
12791279};
12801280
12811281// Used to make code generic over signed and unsigned overflow.
@@ -2309,8 +2309,8 @@ static bool CollectAddOperandsWithScales(DenseMap<SCEVUse, APInt> &M,
23092309bool ScalarEvolution::willNotOverflow(Instruction::BinaryOps BinOp, bool Signed,
23102310 SCEVUse LHS, SCEVUse RHS,
23112311 const Instruction *CtxI) {
2312- SCEVUse (ScalarEvolution:: *Operation)(SCEVUse, SCEVUse, SCEV::NoWrapFlags,
2313- unsigned);
2312+ SCEVUse (ScalarEvolution::*Operation)(SCEVUse, SCEVUse, SCEV::NoWrapFlags,
2313+ unsigned);
23142314 switch (BinOp) {
23152315 default:
23162316 llvm_unreachable("Unsupported binary op");
@@ -2325,7 +2325,7 @@ bool ScalarEvolution::willNotOverflow(Instruction::BinaryOps BinOp, bool Signed,
23252325 break;
23262326 }
23272327
2328- SCEVUse (ScalarEvolution:: *Extension)(SCEVUse, Type *, unsigned) =
2328+ SCEVUse (ScalarEvolution::*Extension)(SCEVUse, Type *, unsigned) =
23292329 Signed ? &ScalarEvolution::getSignExtendExpr
23302330 : &ScalarEvolution::getZeroExtendExpr;
23312331
@@ -10615,8 +10615,8 @@ ScalarEvolution::getPredecessorWithUniqueSuccessorForBB(const BasicBlock *BB)
1061510615/// guarding a loop, it can be useful to be a little more general, since a
1061610616/// front-end may have replicated the controlling expression.
1061710617static bool HasSameValue(SCEVUse A, SCEVUse B) {
10618- // Quick check to see if they are the same SCEV.
10619- if (A == B) return true;
10618+ // Quick check to see if they are the same SCEV, ignoring use-specific flags .
10619+ if (A.getPointer() == B.getPointer() ) return true;
1062010620
1062110621 auto ComputesEqualValues = [](const Instruction *A, const Instruction *B) {
1062210622 // Not all instructions that are "identical" compute the same value. For
0 commit comments