This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Small FDE optimisation for sibcalls
- From: Geoffrey Keating <gkeating at apple dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Tue, 29 Apr 2003 13:42:42 -0700 (PDT)
- Subject: Small FDE optimisation for sibcalls
The tests at the start of output_call_frame_info should match the
tests at the start of the loop that actually outputs the FDEs.
Bootstrapped & tested on powerpc-darwin.
--
- Geoffrey Keating <geoffk@apple.com>
===File ~/patches/gcc-nofdeifsibcallthrowers.patch==========
2003-04-29 Geoffrey Keating <geoffk@apple.com>
* dwarf2out.c (output_call_frame_info): No need to output EH
unwind information if all_throwers_are_sibcalls.
Index: dwarf2out.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/dwarf2out.c,v
retrieving revision 1.422
diff -u -p -u -p -r1.422 dwarf2out.c
--- dwarf2out.c 23 Apr 2003 00:06:31 -0000 1.422
+++ dwarf2out.c 29 Apr 2003 20:42:17 -0000
@@ -1940,7 +1940,8 @@ output_call_frame_info (for_eh)
for (i = 0; i < fde_table_in_use; i++)
if (fde_table[i].uses_eh_lsda)
any_eh_needed = any_lsda_needed = true;
- else if (! fde_table[i].nothrow)
+ else if (! fde_table[i].nothrow
+ && ! fde_table[i].all_throwers_are_sibcalls)
any_eh_needed = true;
if (! any_eh_needed)
============================================================