10 #ifndef SYSTEMZFRAMELOWERING_H
11 #define SYSTEMZFRAMELOWERING_H
18 class SystemZTargetMachine;
19 class SystemZSubtarget;
42 const std::vector<CalleeSavedInfo> &CSI,
48 const std::vector<CalleeSavedInfo> &CSI,
73 return RegSpillOffsets[
Reg];
virtual bool hasReservedCallFrame(const MachineFunction &MF) const LLVM_OVERRIDE
unsigned getRegSpillOffset(unsigned Reg) const
virtual bool spillCalleeSavedRegisters(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBI, const std::vector< CalleeSavedInfo > &CSI, const TargetRegisterInfo *TRI) const LLVM_OVERRIDE
SystemZFrameLowering(const SystemZTargetMachine &tm, const SystemZSubtarget &sti)
virtual void processFunctionBeforeCalleeSavedScan(MachineFunction &MF, RegScavenger *RS) const LLVM_OVERRIDE
const SystemZTargetMachine & TM
virtual void eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB, MachineBasicBlock::iterator MI) const LLVM_OVERRIDE
virtual void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const LLVM_OVERRIDE
uint64_t getAllocatedStackSize(const MachineFunction &MF) const
virtual bool isFPCloseToIncomingSP() const LLVM_OVERRIDE
virtual bool hasFP(const MachineFunction &MF) const LLVM_OVERRIDE
virtual void emitPrologue(MachineFunction &MF) const LLVM_OVERRIDE
virtual bool restoreCalleeSavedRegisters(MachineBasicBlock &MBB, MachineBasicBlock::iterator MBBII, const std::vector< CalleeSavedInfo > &CSI, const TargetRegisterInfo *TRI) const LLVM_OVERRIDE
virtual void processFunctionBeforeFrameFinalized(MachineFunction &MF, RegScavenger *RS) const
virtual const SpillSlot * getCalleeSavedSpillSlots(unsigned &NumEntries) const LLVM_OVERRIDE
virtual int getFrameIndexOffset(const MachineFunction &MF, int FI) const LLVM_OVERRIDE
const SystemZSubtarget & STI