forked from OSchip/llvm-project
Missing piece of the ARM frame index post-scavenging conditionalization
llvm-svn: 84798
This commit is contained in:
parent
8b051b8240
commit
f2e74df12e
|
@ -944,6 +944,7 @@ bool ARMBaseRegisterInfo::
|
|||
requiresRegisterScavenging(const MachineFunction &MF) const {
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ARMBaseRegisterInfo::
|
||||
requiresFrameIndexScavenging(const MachineFunction &MF) const {
|
||||
return ScavengeFrameIndexVals;
|
||||
|
|
|
@ -77,6 +77,18 @@ Thumb1RegisterInfo::getPhysicalRegisterRegClass(unsigned Reg, EVT VT) const {
|
|||
return TargetRegisterInfo::getPhysicalRegisterRegClass(Reg, VT);
|
||||
}
|
||||
|
||||
bool
|
||||
Thumb1RegisterInfo::requiresRegisterScavenging(const MachineFunction &MF) const {
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
Thumb1RegisterInfo::requiresFrameIndexScavenging(const MachineFunction &MF)
|
||||
const {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool Thumb1RegisterInfo::hasReservedCallFrame(MachineFunction &MF) const {
|
||||
const MachineFrameInfo *FFI = MF.getFrameInfo();
|
||||
unsigned CFSize = FFI->getMaxCallFrameSize();
|
||||
|
|
|
@ -40,6 +40,9 @@ public:
|
|||
const TargetRegisterClass *
|
||||
getPhysicalRegisterRegClass(unsigned Reg, EVT VT = MVT::Other) const;
|
||||
|
||||
bool requiresRegisterScavenging(const MachineFunction &MF) const;
|
||||
bool requiresFrameIndexScavenging(const MachineFunction &MF) const;
|
||||
|
||||
bool hasReservedCallFrame(MachineFunction &MF) const;
|
||||
|
||||
void eliminateCallFramePseudoInstr(MachineFunction &MF,
|
||||
|
|
Loading…
Reference in New Issue