mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-02 07:32:52 +00:00
Implement isLoadFromStackSlotPostFE and isStoreToStackSlotPostFE for ARM.
They improve the verbose assembly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137069 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
328a9d4a0f
commit
36ee0e6405
@ -810,6 +810,12 @@ ARMBaseInstrInfo::isStoreToStackSlot(const MachineInstr *MI,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unsigned ARMBaseInstrInfo::isStoreToStackSlotPostFE(const MachineInstr *MI,
|
||||||
|
int &FrameIndex) const {
|
||||||
|
const MachineMemOperand *Dummy;
|
||||||
|
return MI->getDesc().mayStore() && hasStoreToStackSlot(MI, Dummy, FrameIndex);
|
||||||
|
}
|
||||||
|
|
||||||
void ARMBaseInstrInfo::
|
void ARMBaseInstrInfo::
|
||||||
loadRegFromStackSlot(MachineBasicBlock &MBB, MachineBasicBlock::iterator I,
|
loadRegFromStackSlot(MachineBasicBlock &MBB, MachineBasicBlock::iterator I,
|
||||||
unsigned DestReg, int FI,
|
unsigned DestReg, int FI,
|
||||||
@ -945,6 +951,12 @@ ARMBaseInstrInfo::isLoadFromStackSlot(const MachineInstr *MI,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unsigned ARMBaseInstrInfo::isLoadFromStackSlotPostFE(const MachineInstr *MI,
|
||||||
|
int &FrameIndex) const {
|
||||||
|
const MachineMemOperand *Dummy;
|
||||||
|
return MI->getDesc().mayLoad() && hasLoadFromStackSlot(MI, Dummy, FrameIndex);
|
||||||
|
}
|
||||||
|
|
||||||
MachineInstr*
|
MachineInstr*
|
||||||
ARMBaseInstrInfo::emitFrameIndexDebugValue(MachineFunction &MF,
|
ARMBaseInstrInfo::emitFrameIndexDebugValue(MachineFunction &MF,
|
||||||
int FrameIx, uint64_t Offset,
|
int FrameIx, uint64_t Offset,
|
||||||
|
@ -101,6 +101,10 @@ public:
|
|||||||
int &FrameIndex) const;
|
int &FrameIndex) const;
|
||||||
virtual unsigned isStoreToStackSlot(const MachineInstr *MI,
|
virtual unsigned isStoreToStackSlot(const MachineInstr *MI,
|
||||||
int &FrameIndex) const;
|
int &FrameIndex) const;
|
||||||
|
virtual unsigned isLoadFromStackSlotPostFE(const MachineInstr *MI,
|
||||||
|
int &FrameIndex) const;
|
||||||
|
virtual unsigned isStoreToStackSlotPostFE(const MachineInstr *MI,
|
||||||
|
int &FrameIndex) const;
|
||||||
|
|
||||||
virtual void copyPhysReg(MachineBasicBlock &MBB,
|
virtual void copyPhysReg(MachineBasicBlock &MBB,
|
||||||
MachineBasicBlock::iterator I, DebugLoc DL,
|
MachineBasicBlock::iterator I, DebugLoc DL,
|
||||||
|
Loading…
Reference in New Issue
Block a user