Mark 64-bit register RA_64 unused too.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148918 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Akira Hatanaka 2012-01-25 04:19:22 +00:00
parent de5a0b65c2
commit 4bd73cac6a

View File

@ -322,7 +322,6 @@ void MipsFrameLowering::
processFunctionBeforeCalleeSavedScan(MachineFunction &MF, processFunctionBeforeCalleeSavedScan(MachineFunction &MF,
RegScavenger *RS) const { RegScavenger *RS) const {
MachineRegisterInfo& MRI = MF.getRegInfo(); MachineRegisterInfo& MRI = MF.getRegInfo();
unsigned RA = STI.isABI_N64() ? Mips::RA_64 : Mips::RA;
unsigned FP = STI.isABI_N64() ? Mips::FP_64 : Mips::FP; unsigned FP = STI.isABI_N64() ? Mips::FP_64 : Mips::FP;
// FIXME: remove this code if register allocator can correctly mark // FIXME: remove this code if register allocator can correctly mark
@ -338,7 +337,9 @@ processFunctionBeforeCalleeSavedScan(MachineFunction &MF,
// To correct this, $ra is explicitly marked unused if there is no // To correct this, $ra is explicitly marked unused if there is no
// function call. // function call.
if (MF.getFrameInfo()->hasCalls()) if (MF.getFrameInfo()->hasCalls())
MRI.setPhysRegUsed(RA); MRI.setPhysRegUsed(Mips::RA);
else else {
MRI.setPhysRegUnused(RA); MRI.setPhysRegUnused(Mips::RA);
MRI.setPhysRegUnused(Mips::RA_64);
}
} }