diff options
author | Fangrui Song <maskray@google.com> | 2019-12-07 10:23:30 -0800 |
---|---|---|
committer | Fangrui Song <maskray@google.com> | 2019-12-13 18:48:58 -0800 |
commit | a0aa58dad53f2e5e90a9b7079ec31bf7c3144fc7 (patch) | |
tree | 36280123873b7cf4804bdfec8bd5515d4a61d69b /llvm/lib/Target/AArch64 | |
parent | 074323c84658e51522e7d8d3d0179e53004b219c (diff) | |
download | bcm5719-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.cpp | 2 |
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() || |