From: Nate Begeman Date: Tue, 7 Dec 2004 05:25:53 +0000 (+0000) Subject: Move virtual function call out of loop to speed up getFreePhysReg by about X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=80ad87d2271673b4f9148d64c91ee6338978c9fc;p=oota-llvm.git 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 --- diff --git a/lib/CodeGen/RegAllocLinearScan.cpp b/lib/CodeGen/RegAllocLinearScan.cpp index c54152a1492..140846fe01e 100644 --- a/lib/CodeGen/RegAllocLinearScan.cpp +++ b/lib/CodeGen/RegAllocLinearScan.cpp @@ -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]))