mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-17 21:29:20 +00:00
Move virtual method call out of loop
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18955 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
003485a0b3
commit
5b2103405b
@ -397,8 +397,8 @@ void RA::assignRegOrSpillAtInterval(IntervalPtrs::value_type cur)
|
|||||||
float minWeight = HUGE_VAL;
|
float minWeight = HUGE_VAL;
|
||||||
unsigned minReg = 0;
|
unsigned minReg = 0;
|
||||||
const TargetRegisterClass* rc = mf_->getSSARegMap()->getRegClass(cur->reg);
|
const TargetRegisterClass* rc = mf_->getSSARegMap()->getRegClass(cur->reg);
|
||||||
for (TargetRegisterClass::iterator i = rc->allocation_order_begin(*mf_);
|
for (TargetRegisterClass::iterator i = rc->allocation_order_begin(*mf_),
|
||||||
i != rc->allocation_order_end(*mf_); ++i) {
|
e = rc->allocation_order_end(*mf_); i != e; ++i) {
|
||||||
unsigned reg = *i;
|
unsigned reg = *i;
|
||||||
if (minWeight > spillWeights_[reg]) {
|
if (minWeight > spillWeights_[reg]) {
|
||||||
minWeight = spillWeights_[reg];
|
minWeight = spillWeights_[reg];
|
||||||
@ -477,8 +477,8 @@ unsigned RA::getFreePhysReg(LiveInterval* cur)
|
|||||||
const TargetRegisterClass* rc = mf_->getSSARegMap()->getRegClass(cur->reg);
|
const TargetRegisterClass* rc = mf_->getSSARegMap()->getRegClass(cur->reg);
|
||||||
|
|
||||||
unsigned freeReg = 0;
|
unsigned freeReg = 0;
|
||||||
for (TargetRegisterClass::iterator i = rc->allocation_order_begin(*mf_);
|
for (TargetRegisterClass::iterator i = rc->allocation_order_begin(*mf_),
|
||||||
i != rc->allocation_order_end(*mf_); ++i) {
|
e = rc->allocation_order_end(*mf_); i != e; ++i) {
|
||||||
unsigned reg = *i;
|
unsigned reg = *i;
|
||||||
if (prt_->isRegAvail(reg) &&
|
if (prt_->isRegAvail(reg) &&
|
||||||
(!freeReg || inactiveCounts[freeReg] < inactiveCounts[reg]))
|
(!freeReg || inactiveCounts[freeReg] < inactiveCounts[reg]))
|
||||||
|
@ -426,8 +426,8 @@ void RA::assignRegOrStackSlotAtInterval(LiveInterval* cur)
|
|||||||
float minWeight = HUGE_VAL;
|
float minWeight = HUGE_VAL;
|
||||||
unsigned minReg = 0;
|
unsigned minReg = 0;
|
||||||
const TargetRegisterClass* rc = mf_->getSSARegMap()->getRegClass(cur->reg);
|
const TargetRegisterClass* rc = mf_->getSSARegMap()->getRegClass(cur->reg);
|
||||||
for (TargetRegisterClass::iterator i = rc->allocation_order_begin(*mf_);
|
for (TargetRegisterClass::iterator i = rc->allocation_order_begin(*mf_),
|
||||||
i != rc->allocation_order_end(*mf_); ++i) {
|
e = rc->allocation_order_end(*mf_); i != e; ++i) {
|
||||||
unsigned reg = *i;
|
unsigned reg = *i;
|
||||||
if (minWeight > SpillWeights[reg]) {
|
if (minWeight > SpillWeights[reg]) {
|
||||||
minWeight = SpillWeights[reg];
|
minWeight = SpillWeights[reg];
|
||||||
|
Loading…
Reference in New Issue
Block a user