From 7588ad478aa95a7eb109034f0496f6d5a9769103 Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Wed, 31 Jan 2007 23:17:29 +0000 Subject: [PATCH] Don't want to add FramePtr to callee save spill list twice. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33727 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/ARM/ARMRegisterInfo.cpp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/lib/Target/ARM/ARMRegisterInfo.cpp b/lib/Target/ARM/ARMRegisterInfo.cpp index 4d48a7a0780..d76aedb0afd 100644 --- a/lib/Target/ARM/ARMRegisterInfo.cpp +++ b/lib/Target/ARM/ARMRegisterInfo.cpp @@ -881,13 +881,7 @@ processFunctionBeforeCalleeSavedScan(MachineFunction &MF) const { } } - if (hasFP(MF)) { - MF.changePhyRegUsed(FramePtr, true); - NumGPRSpills++; - CanEliminateFrame = false; - } - - if (!CanEliminateFrame) { + if (!CanEliminateFrame || hasFP(MF)) { AFI->setHasStackFrame(true); // If LR is not spilled, but at least one of R4, R5, R6, and R7 is spilled. @@ -902,7 +896,7 @@ processFunctionBeforeCalleeSavedScan(MachineFunction &MF) const { // Darwin ABI requires FP to point to the stack slot that contains the // previous FP. - if (STI.isTargetDarwin()) { + if (STI.isTargetDarwin() || hasFP(MF)) { MF.changePhyRegUsed(FramePtr, true); NumGPRSpills++; }