LSR minor bug fix in RateRegister.
authorAndrew Trick <atrick@apple.com>
Fri, 23 Sep 2011 23:05:19 +0000 (23:05 +0000)
committerAndrew Trick <atrick@apple.com>
Fri, 23 Sep 2011 23:05:19 +0000 (23:05 +0000)
No test case. Noticed by inspection and I doubt it ever affects the
outcome of the overall heuristic, let alone final codegen.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140431 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/LoopStrengthReduce.cpp

index 3938ab6955e645705cdc58651be558cd4cbda9c9..33858ad03fd4a5185492d9714f1baf3d9539f5ca 100644 (file)
@@ -728,7 +728,7 @@ void Cost::RateRegister(const SCEV *Reg,
     // Add the step value register, if it needs one.
     // TODO: The non-affine case isn't precisely modeled here.
     if (!AR->isAffine() || !isa<SCEVConstant>(AR->getOperand(1)))
-      if (!Regs.count(AR->getStart()))
+      if (!Regs.count(AR->getOperand(1)))
         RateRegister(AR->getOperand(1), Regs, L, SE, DT);
   }
   ++NumRegs;