mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-21 18:24:23 +00:00
Let MRegisterInfo now owns RegScavenger.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34691 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -442,9 +442,10 @@ void PEI::replaceFrameIndices(MachineFunction &Fn) {
|
|||||||
const TargetMachine &TM = Fn.getTarget();
|
const TargetMachine &TM = Fn.getTarget();
|
||||||
assert(TM.getRegisterInfo() && "TM::getRegisterInfo() must be implemented!");
|
assert(TM.getRegisterInfo() && "TM::getRegisterInfo() must be implemented!");
|
||||||
const MRegisterInfo &MRI = *TM.getRegisterInfo();
|
const MRegisterInfo &MRI = *TM.getRegisterInfo();
|
||||||
|
RegScavenger *RS = MRI.getRegScavenger();
|
||||||
|
|
||||||
for (MachineFunction::iterator BB = Fn.begin(), E = Fn.end(); BB != E; ++BB) {
|
for (MachineFunction::iterator BB = Fn.begin(), E = Fn.end(); BB != E; ++BB) {
|
||||||
RegScavenger RS(BB);
|
if (RS) RS->reset(BB);
|
||||||
for (MachineBasicBlock::iterator I = BB->begin(); I != BB->end(); ++I) {
|
for (MachineBasicBlock::iterator I = BB->begin(); I != BB->end(); ++I) {
|
||||||
for (unsigned i = 0, e = I->getNumOperands(); i != e; ++i)
|
for (unsigned i = 0, e = I->getNumOperands(); i != e; ++i)
|
||||||
if (I->getOperand(i).isFrameIndex()) {
|
if (I->getOperand(i).isFrameIndex()) {
|
||||||
@ -454,8 +455,7 @@ void PEI::replaceFrameIndices(MachineFunction &Fn) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
// Update register states.
|
// Update register states.
|
||||||
if (MRI.requiresRegisterScavenging())
|
if (RS) RS->forward(I);
|
||||||
RS.forward(I);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user