From: Szabolcs Nagy Date: Tue, 9 May 2023 10:07:05 +0000 (+0100) Subject: aarch64: Do not force a stack frame for EH returns X-Git-Tag: basepoints/gcc-15~4252 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=aa2ad77a9b3994fb679e5295d9570f6f8696540d;p=thirdparty%2Fgcc.git aarch64: Do not force a stack frame for EH returns EH returns no longer rely on clobbering the return address on the stack so forcing a stack frame is not necessary. This does not actually change the code gen for the unwinder since there are calls before the EH return. gcc/ChangeLog: * config/aarch64/aarch64.cc (aarch64_needs_frame_chain): Do not force frame chain for eh_return. --- diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc index 7ccadf91c260..b2093430937f 100644 --- a/gcc/config/aarch64/aarch64.cc +++ b/gcc/config/aarch64/aarch64.cc @@ -6137,8 +6137,7 @@ aarch64_output_probe_sve_stack_clash (rtx base, rtx adjustment, static bool aarch64_needs_frame_chain (void) { - /* Force a frame chain for EH returns so the return address is at FP+8. */ - if (frame_pointer_needed || crtl->calls_eh_return) + if (frame_pointer_needed) return true; /* A leaf function cannot have calls or write LR. */