mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-30 17:25:21 +00:00
Stop tracking spill slot uses in VirtRegMap.
Nobody cared, StackSlotColoring scans the instructions to find used stack slots. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144485 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -74,12 +74,6 @@ namespace llvm {
|
||||
/// mapping.
|
||||
IndexedMap<unsigned, VirtReg2IndexFunctor> Virt2SplitMap;
|
||||
|
||||
/// LowSpillSlot, HighSpillSlot - Lowest and highest spill slot indexes.
|
||||
int LowSpillSlot, HighSpillSlot;
|
||||
|
||||
/// SpillSlotToUsesMap - Records uses for each register spill slot.
|
||||
SmallVector<SmallPtrSet<MachineInstr*, 4>, 8> SpillSlotToUsesMap;
|
||||
|
||||
/// createSpillSlot - Allocate a spill slot for RC from MFI.
|
||||
unsigned createSpillSlot(const TargetRegisterClass *RC);
|
||||
|
||||
@@ -89,8 +83,7 @@ namespace llvm {
|
||||
public:
|
||||
static char ID;
|
||||
VirtRegMap() : MachineFunctionPass(ID), Virt2PhysMap(NO_PHYS_REG),
|
||||
Virt2StackSlotMap(NO_STACK_SLOT), Virt2SplitMap(0),
|
||||
LowSpillSlot(NO_STACK_SLOT), HighSpillSlot(NO_STACK_SLOT) { }
|
||||
Virt2StackSlotMap(NO_STACK_SLOT), Virt2SplitMap(0) { }
|
||||
virtual bool runOnMachineFunction(MachineFunction &MF);
|
||||
|
||||
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
|
||||
@@ -198,19 +191,6 @@ namespace llvm {
|
||||
/// the specified stack slot
|
||||
void assignVirt2StackSlot(unsigned virtReg, int frameIndex);
|
||||
|
||||
/// @brief Records a spill slot use.
|
||||
void addSpillSlotUse(int FrameIndex, MachineInstr *MI);
|
||||
|
||||
/// @brief Returns true if spill slot has been used.
|
||||
bool isSpillSlotUsed(int FrameIndex) const {
|
||||
assert(FrameIndex >= 0 && "Spill slot index should not be negative!");
|
||||
return !SpillSlotToUsesMap[FrameIndex-LowSpillSlot].empty();
|
||||
}
|
||||
|
||||
/// RemoveMachineInstrFromMaps - MI is being erased, remove it from the
|
||||
/// the folded instruction map and spill point map.
|
||||
void RemoveMachineInstrFromMaps(MachineInstr *MI);
|
||||
|
||||
/// rewrite - Rewrite all instructions in MF to use only physical registers
|
||||
/// by mapping all virtual register operands to their assigned physical
|
||||
/// registers.
|
||||
|
Reference in New Issue
Block a user