method.c (use_thunk): Call free_after_compilation after assemble_end_function.
authorJakub Jelinek <jakub@redhat.com>
Wed, 19 Aug 2009 15:27:48 +0000 (17:27 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Wed, 19 Aug 2009 15:27:48 +0000 (17:27 +0200)
* method.c (use_thunk): Call free_after_compilation after
assemble_end_function.

* config/rs6000/rs6000.c (rs6000_output_mi_thunk): Don't call
free_after_compilation.
* config/score/score7.c (score7_output_mi_thunk): Likewise.
* config/score/score3.c (score3_output_mi_thunk): Likewise.
* config/ia64/ia64.c (ia64_output_mi_thunk): Likewise.
* config/mips/mips.c (mips_output_mi_thunk): Likewise.
* config/sh/sh.c (sh_output_mi_thunk): Likewise.
* config/m68k/m68k.c (m68k_output_mi_thunk): Likewise.
* config/sparc/sparc.c (sparc_output_mi_thunk): Likewise.

From-SVN: r150938

gcc/ChangeLog
gcc/config/ia64/ia64.c
gcc/config/m68k/m68k.c
gcc/config/mips/mips.c
gcc/config/rs6000/rs6000.c
gcc/config/score/score3.c
gcc/config/score/score7.c
gcc/config/sh/sh.c
gcc/config/sparc/sparc.c
gcc/cp/ChangeLog
gcc/cp/method.c

index 0831f4c..4397d75 100644 (file)
@@ -1,3 +1,15 @@
+2009-08-19  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Don't call
+       free_after_compilation.
+       * config/score/score7.c (score7_output_mi_thunk): Likewise.
+       * config/score/score3.c (score3_output_mi_thunk): Likewise.
+       * config/ia64/ia64.c (ia64_output_mi_thunk): Likewise.
+       * config/mips/mips.c (mips_output_mi_thunk): Likewise.
+       * config/sh/sh.c (sh_output_mi_thunk): Likewise.
+       * config/m68k/m68k.c (m68k_output_mi_thunk): Likewise.
+       * config/sparc/sparc.c (sparc_output_mi_thunk): Likewise.
+
 2009-08-19  Ian Lance Taylor  <iant@google.com>
 
        * doc/md.texi (Insn Canonicalizations): Correct canonicalization
index 71acdab..dfc7029 100644 (file)
@@ -10288,7 +10288,6 @@ ia64_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
   final_start_function (insn, file, 1);
   final (insn, file, 1);
   final_end_function ();
-  free_after_compilation (cfun);
 
   reload_completed = 0;
   epilogue_completed = 0;
index ec371e5..1027d1c 100644 (file)
@@ -5026,7 +5026,6 @@ m68k_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
   /* Restore the original PIC register.  */
   if (flag_pic)
     SET_REGNO (pic_offset_table_rtx, PIC_REG);
-  free_after_compilation (cfun);
 }
 
 /* Worker function for TARGET_STRUCT_VALUE_RTX.  */
index 572d6e7..04a1f0e 100644 (file)
@@ -13942,7 +13942,6 @@ mips_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED,
   final_start_function (insn, file, 1);
   final (insn, file, 1);
   final_end_function ();
-  free_after_compilation (cfun);
 
   /* Clean up the vars set above.  Note that final_end_function resets
      the global pointer for us.  */
index b4a0592..e6481fb 100644 (file)
@@ -20117,7 +20117,6 @@ rs6000_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED,
   final_start_function (insn, file, 1);
   final (insn, file, 1);
   final_end_function ();
-  free_after_compilation (cfun);
 
   reload_completed = 0;
   epilogue_completed = 0;
index 385620d..d27d1f9 100644 (file)
@@ -380,7 +380,6 @@ score3_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED,
   final_start_function (insn, file, 1);
   final (insn, file, 1);
   final_end_function ();
-  free_after_compilation (cfun);
 
   /* Clean up the vars set above.  Note that final_end_function resets
      the global pointer for us.  */
index 368ac03..4ba3dce 100644 (file)
@@ -379,7 +379,6 @@ score7_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED,
   final_start_function (insn, file, 1);
   final (insn, file, 1);
   final_end_function ();
-  free_after_compilation (cfun);
 
   /* Clean up the vars set above.  Note that final_end_function resets
      the global pointer for us.  */
index a4be11c..71933d6 100644 (file)
@@ -11282,7 +11282,6 @@ sh_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED,
   final_start_function (insns, file, 1);
   final (insns, file, 1);
   final_end_function ();
-  free_after_compilation (cfun);
 
   reload_completed = 0;
   epilogue_completed = 0;
index 033980b..a0adfd0 100644 (file)
@@ -8942,7 +8942,6 @@ sparc_output_mi_thunk (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED,
   final_start_function (insn, file, 1);
   final (insn, file, 1);
   final_end_function ();
-  free_after_compilation (cfun);
 
   reload_completed = 0;
   epilogue_completed = 0;
index 52625db..630814a 100644 (file)
@@ -1,3 +1,8 @@
+2009-08-19  Jakub Jelinek  <jakub@redhat.com>
+
+       * method.c (use_thunk): Call free_after_compilation after
+       assemble_end_function.
+
 2009-08-17  Richard Guenther  <rguenther@suse.de>
 
        * decl.c (build_ptrmemfunc_type): Keep variant chain intact.
index c1da08b..6950c2d 100644 (file)
@@ -450,6 +450,7 @@ use_thunk (tree thunk_fndecl, bool emit_p)
 
       assemble_end_function (thunk_fndecl, fnname);
       init_insn_lengths ();
+      free_after_compilation (cfun);
       current_function_decl = 0;
       set_cfun (NULL);
       TREE_ASM_WRITTEN (thunk_fndecl) = 1;