As of r79039, we still try to eliminate the frame pointer on leaf functions,
authorJim Grosbach <grosbach@apple.com>
Tue, 2 Feb 2010 23:56:14 +0000 (23:56 +0000)
committerJim Grosbach <grosbach@apple.com>
Tue, 2 Feb 2010 23:56:14 +0000 (23:56 +0000)
even when -disable-fp-elim is specified.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95161 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMBaseRegisterInfo.cpp

index dec8a69be009435d8b83fcd98039142fc5adb6d7..cb0bd1dbd240750ce11fa30e66743793f8187efa 100644 (file)
@@ -478,7 +478,7 @@ ARMBaseRegisterInfo::UpdateRegAllocHint(unsigned Reg, unsigned NewReg,
 ///
 bool ARMBaseRegisterInfo::hasFP(const MachineFunction &MF) const {
   const MachineFrameInfo *MFI = MF.getFrameInfo();
-  return (NoFramePointerElim ||
+  return ((NoFramePointerElim && MFI->hasCalls())||
           needsStackRealignment(MF) ||
           MFI->hasVarSizedObjects() ||
           MFI->isFrameAddressTaken());