Small FDE optimisation for sibcalls
Geoffrey Keating
gkeating@apple.com
Tue Apr 29 20:43:00 GMT 2003
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)
============================================================
More information about the Gcc-patches
mailing list