From 89418a92574448338464cb3503942a29a10e3eb8 Mon Sep 17 00:00:00 2001 From: Brendan Kehoe Date: Wed, 11 Dec 1996 19:30:15 -0500 Subject: toplev.c (rest_of_compilation): Make sure that the unwinder RTL is saved. * toplev.c (rest_of_compilation): Make sure that the unwinder RTL is saved. From-SVN: r13289 --- gcc/toplev.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'gcc') diff --git a/gcc/toplev.c b/gcc/toplev.c index a10f4d9..a0cfb4d 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -2954,12 +2954,9 @@ rest_of_compilation (decl) goto exit_rest_of_compilation; } - /* From now on, allocate rtl in current_obstack, not in saveable_obstack. - Note that that may have been done above, in save_for_inline_copying. - The call to resume_temporary_allocation near the end of this function - goes back to the usual state of affairs. */ - - rtl_in_current_obstack (); + /* Add an unwinder for exception handling, if needed. + This must be done before we finalize PIC code. */ + emit_unwinder (); #ifdef FINALIZE_PIC /* If we are doing position-independent code generation, now @@ -2970,8 +2967,14 @@ rest_of_compilation (decl) FINALIZE_PIC; #endif - /* Add an unwinder for exception handling, if needed. */ - emit_unwinder (); + /* From now on, allocate rtl in current_obstack, not in saveable_obstack. + Note that that may have been done above, in save_for_inline_copying. + The call to resume_temporary_allocation near the end of this function + goes back to the usual state of affairs. This must be done after + we've built up any unwinders for exception handling, and done + the FINALIZE_PIC work, if necessary. */ + + rtl_in_current_obstack (); insns = get_insns (); -- cgit v1.1