summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AArch64
diff options
context:
space:
mode:
authorFangrui Song <maskray@google.com>2019-12-07 10:23:30 -0800
committerFangrui Song <maskray@google.com>2019-12-13 18:48:58 -0800
commita0aa58dad53f2e5e90a9b7079ec31bf7c3144fc7 (patch)
tree36280123873b7cf4804bdfec8bd5515d4a61d69b /llvm/lib/Target/AArch64
parent074323c84658e51522e7d8d3d0179e53004b219c (diff)
downloadbcm5719-llvm-a0aa58dad53f2e5e90a9b7079ec31bf7c3144fc7.tar.gz
bcm5719-llvm-a0aa58dad53f2e5e90a9b7079ec31bf7c3144fc7.zip
[AArch64] Save FP for leaf functions when disabling frame pointer elimination
The change allows clang -mno-omit-leaf-frame-pointer to disable frame pointer elimination. This behavior matches X86 and Mips, and also GCC AArch64. Reviewed By: efriedma Differential Revision: https://reviews.llvm.org/D71168
Diffstat (limited to 'llvm/lib/Target/AArch64')
-rw-r--r--llvm/lib/Target/AArch64/AArch64FrameLowering.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp b/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
index 742f12fefca..c732106014e 100644
--- a/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
+++ b/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
@@ -244,7 +244,7 @@ bool AArch64FrameLowering::hasFP(const MachineFunction &MF) const {
if (MF.hasEHFunclets())
return true;
// Retain behavior of always omitting the FP for leaf functions when possible.
- if (MFI.hasCalls() && MF.getTarget().Options.DisableFramePointerElim(MF))
+ if (MF.getTarget().Options.DisableFramePointerElim(MF))
return true;
if (MFI.hasVarSizedObjects() || MFI.isFrameAddressTaken() ||
MFI.hasStackMap() || MFI.hasPatchPoint() ||
OpenPOWER on IntegriCloud