LSR, one of the new Cost::isLoser() checks did not get merged in the previous checkin.

llvm-svn: 140583
This commit is contained in:
Andrew Trick 2011-09-26 23:35:25 +00:00
parent a486cb972f
commit 8868faec63
1 changed files with 6 additions and 2 deletions

View File

@ -745,9 +745,13 @@ 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->getOperand(1)))
if (!AR->isAffine() || !isa<SCEVConstant>(AR->getOperand(1))) {
if (!Regs.count(AR->getOperand(1))) {
RateRegister(AR->getOperand(1), Regs, L, SE, DT);
if (isLoser())
return;
}
}
}
++NumRegs;