Move virtual function call out of loop to speed up getFreePhysReg by about

20%, shaving 0.1s off hbd compile time on my g5.  Yay.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18592 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nate Begeman 2004-12-07 05:25:53 +00:00
parent ce9653ce44
commit 80ad87d227

View File

@ -608,8 +608,8 @@ unsigned RA::getFreePhysReg(LiveInterval* cur)
const TargetRegisterClass* rc = mf_->getSSARegMap()->getRegClass(cur->reg);
unsigned freeReg = 0;
for (TargetRegisterClass::iterator i = rc->allocation_order_begin(*mf_);
i != rc->allocation_order_end(*mf_); ++i) {
for (TargetRegisterClass::iterator i = rc->allocation_order_begin(*mf_),
e = rc->allocation_order_end(*mf_); i != e; ++i) {
unsigned reg = *i;
if (prt_->isRegAvail(reg) &&
(!freeReg || inactiveCounts[freeReg] < inactiveCounts[reg]))