mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-21 23:17:16 +00:00
Change this code ot pass register classes into the stack slot spiller/reloader
code. PrologEpilogInserter hasn't been updated yet though, so targets cannot use this info. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23536 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -270,7 +270,7 @@ void RA::spillVirtReg(MachineBasicBlock &MBB, MachineBasicBlock::iterator I,
|
||||
const TargetRegisterClass *RC = MF->getSSARegMap()->getRegClass(VirtReg);
|
||||
int FrameIndex = getStackSpaceFor(VirtReg, RC);
|
||||
DEBUG(std::cerr << " to stack slot #" << FrameIndex);
|
||||
RegInfo->storeRegToStackSlot(MBB, I, PhysReg, FrameIndex);
|
||||
RegInfo->storeRegToStackSlot(MBB, I, PhysReg, FrameIndex, RC);
|
||||
++NumStores; // Update statistics
|
||||
}
|
||||
|
||||
@@ -476,7 +476,7 @@ MachineInstr *RA::reloadVirtReg(MachineBasicBlock &MBB, MachineInstr *MI,
|
||||
<< RegInfo->getName(PhysReg) << "\n");
|
||||
|
||||
// Add move instruction(s)
|
||||
RegInfo->loadRegFromStackSlot(MBB, MI, PhysReg, FrameIndex);
|
||||
RegInfo->loadRegFromStackSlot(MBB, MI, PhysReg, FrameIndex, RC);
|
||||
++NumLoads; // Update statistics
|
||||
|
||||
PhysRegsEverUsed[PhysReg] = true;
|
||||
|
||||
Reference in New Issue
Block a user