mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-24 22:24:54 +00:00
refactor some code to avoid overloading the name 'usesLR' in
different places to mean different things. Document what the one in PPCFunctionInfo means and when it is valid. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44699 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -645,11 +645,13 @@ bool PPCRegisterInfo::hasFP(const MachineFunction &MF) const {
|
||||
return MFI->getStackSize() && needsFP(MF);
|
||||
}
|
||||
|
||||
/// usesLR - Returns if the link registers (LR) has been used in the function.
|
||||
///
|
||||
bool PPCRegisterInfo::usesLR(MachineFunction &MF) const {
|
||||
PPCFunctionInfo *FI = MF.getInfo<PPCFunctionInfo>();
|
||||
return FI->usesLR();
|
||||
/// MustSaveLR - Return true if this function requires that we save the LR
|
||||
/// register onto the stack in the prolog and restore it in the epilog of the function.
|
||||
static bool MustSaveLR(const MachineFunction &MF) {
|
||||
return MF.getInfo<PPCFunctionInfo>()->usesLR() ||
|
||||
// FIXME: Anything that has a call should clobber the LR register,
|
||||
// isn't this redundant??
|
||||
MF.getFrameInfo()->hasCalls();
|
||||
}
|
||||
|
||||
void PPCRegisterInfo::
|
||||
@@ -1062,7 +1064,7 @@ void PPCRegisterInfo::emitPrologue(MachineFunction &MF) const {
|
||||
// Get operating system
|
||||
bool IsMachoABI = Subtarget.isMachoABI();
|
||||
// Check if the link register (LR) has been used.
|
||||
bool UsesLR = MFI->hasCalls() || usesLR(MF);
|
||||
bool UsesLR = MustSaveLR(MF);
|
||||
// Do we have a frame pointer for this function?
|
||||
bool HasFP = hasFP(MF) && FrameSize;
|
||||
|
||||
@@ -1226,7 +1228,7 @@ void PPCRegisterInfo::emitEpilogue(MachineFunction &MF,
|
||||
// Get operating system
|
||||
bool IsMachoABI = Subtarget.isMachoABI();
|
||||
// Check if the link register (LR) has been used.
|
||||
bool UsesLR = MFI->hasCalls() || usesLR(MF);
|
||||
bool UsesLR = MustSaveLR(MF);
|
||||
// Do we have a frame pointer for this function?
|
||||
bool HasFP = hasFP(MF) && FrameSize;
|
||||
|
||||
|
Reference in New Issue
Block a user