mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-02 04:24:22 +00:00
Simplify eliminateFrameIndex() interface back down now that PEI doesn't need
to try to re-use scavenged frame index reference registers. rdar://8277890 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112241 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -63,7 +63,6 @@ bool PEI::runOnMachineFunction(MachineFunction &Fn) {
|
||||
const TargetRegisterInfo *TRI = Fn.getTarget().getRegisterInfo();
|
||||
RS = TRI->requiresRegisterScavenging(Fn) ? new RegScavenger() : NULL;
|
||||
FrameIndexVirtualScavenging = TRI->requiresFrameIndexScavenging(Fn);
|
||||
FrameConstantRegMap.clear();
|
||||
|
||||
// Calculate the MaxCallFrameSize and AdjustsStack variables for the
|
||||
// function's frame information. Also eliminates call frame pseudo
|
||||
@ -756,16 +755,8 @@ void PEI::replaceFrameIndices(MachineFunction &Fn) {
|
||||
// If this instruction has a FrameIndex operand, we need to
|
||||
// use that target machine register info object to eliminate
|
||||
// it.
|
||||
TargetRegisterInfo::FrameIndexValue Value;
|
||||
unsigned VReg =
|
||||
TRI.eliminateFrameIndex(MI, SPAdj, &Value,
|
||||
TRI.eliminateFrameIndex(MI, SPAdj,
|
||||
FrameIndexVirtualScavenging ? NULL : RS);
|
||||
if (VReg) {
|
||||
assert (FrameIndexVirtualScavenging &&
|
||||
"Not scavenging, but virtual returned from "
|
||||
"eliminateFrameIndex()!");
|
||||
FrameConstantRegMap[VReg] = FrameConstantEntry(Value, SPAdj);
|
||||
}
|
||||
|
||||
// Reset the iterator if we were at the beginning of the BB.
|
||||
if (AtBeginning) {
|
||||
|
Reference in New Issue
Block a user