aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2008-04-03 05:49:27 -0700
committerH.J. Lu <hjl@gcc.gnu.org>2008-04-03 05:49:27 -0700
commit6b0c2336ba22b3d0e8d36651169a5bab2b25fe35 (patch)
treea661582bb7165b9e43a0b7cbef46528c090586cf
parentb47ee38692ad7393bdaf2c366a6734d7dd60e951 (diff)
downloadgcc-6b0c2336ba22b3d0e8d36651169a5bab2b25fe35.zip
gcc-6b0c2336ba22b3d0e8d36651169a5bab2b25fe35.tar.gz
gcc-6b0c2336ba22b3d0e8d36651169a5bab2b25fe35.tar.bz2
re PR target/35795 (Revision 133787 breaks ia64)
2008-04-03 Jan Hubicka <jh@suse.cz> PR tree-optimization/35795 * alpha/alpha.c (alpha_output_mi_thunk_osf): Free after compilation. * sparc/sparc.c (sparc_output_mi_thunk): Likewise. * ia64/ia64.c (ia64_output_mi_thunk): Likewise. * m68k/m68k.c (m68k_output_mi_thunk): Likewise. * score/score3.c (score3_output_mi_thunk): Likewise. * score/score7.c (score7_output_mi_thunk): Likewise. * mips/mips.c (mips_output_mi_thunk): Likewise. From-SVN: r133868
-rw-r--r--gcc/ChangeLog77
-rw-r--r--gcc/config/alpha/alpha.c1
-rw-r--r--gcc/config/ia64/ia64.c1
-rw-r--r--gcc/config/m68k/m68k.c1
-rw-r--r--gcc/config/mips/mips.c1
-rw-r--r--gcc/config/score/score3.c1
-rw-r--r--gcc/config/score/score7.c1
-rw-r--r--gcc/config/sparc/sparc.c1
8 files changed, 51 insertions, 33 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 321dfb0..1263092 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,14 @@
+2008-04-03 Jan Hubicka <jh@suse.cz>
+
+ PR tree-optimization/35795
+ * alpha/alpha.c (alpha_output_mi_thunk_osf): Free after compilation.
+ * sparc/sparc.c (sparc_output_mi_thunk): Likewise.
+ * ia64/ia64.c (ia64_output_mi_thunk): Likewise.
+ * m68k/m68k.c (m68k_output_mi_thunk): Likewise.
+ * score/score3.c (score3_output_mi_thunk): Likewise.
+ * score/score7.c (score7_output_mi_thunk): Likewise.
+ * mips/mips.c (mips_output_mi_thunk): Likewise.
+
2008-04-03 Richard Guenther <rguenther@suse.de>
* tree-vrp.c (extract_range_from_unary_expr): Handle all
@@ -22,42 +33,42 @@
2008-04-03 Paolo Bonzini <bonzini@gnu.org>
- * tree-inline.c (copy_generic_body, copy_decl_no_change): Export.
- (remap_block): Call id->transform_lang_insert_block instead
- of langhook.
- (optimize_inline_calls, unsave_expr_now, tree_function_versioning):
- Set id.transform_lang_insert_block to NULL.
- (clone_body): Move to cp/optimize.c
- * tree-inline.h (struct copy_body_data): Change
- transform_lang_insert_block to function pointer.
- (copy_generic_body, copy_decl_no_change): Export.
- * langhooks.h (struct lang_hooks_for_decls): Kill insert_block.
- * langhooks-def.h (LANG_HOOKS_INSERT_BLOCK): Kill.
- (LANG_HOOKS_DECLS): Remove LANG_HOOKS_INSERT_BLOCK.
-
- * c-tree.h (insert_block): Kill.
- * c-decl.c (insert_block): Kill.
+ * tree-inline.c (copy_generic_body, copy_decl_no_change): Export.
+ (remap_block): Call id->transform_lang_insert_block instead
+ of langhook.
+ (optimize_inline_calls, unsave_expr_now, tree_function_versioning):
+ Set id.transform_lang_insert_block to NULL.
+ (clone_body): Move to cp/optimize.c
+ * tree-inline.h (struct copy_body_data): Change
+ transform_lang_insert_block to function pointer.
+ (copy_generic_body, copy_decl_no_change): Export.
+ * langhooks.h (struct lang_hooks_for_decls): Kill insert_block.
+ * langhooks-def.h (LANG_HOOKS_INSERT_BLOCK): Kill.
+ (LANG_HOOKS_DECLS): Remove LANG_HOOKS_INSERT_BLOCK.
+
+ * c-tree.h (insert_block): Kill.
+ * c-decl.c (insert_block): Kill.
2008-04-03 Paolo Bonzini <bonzini@gnu.org>
- * c-objc-common.h (LANG_HOOKS_FUNCTION_ENTER_NESTED,
- LANG_HOOKS_FUNCTION_LEAVE_NESTED): Delete.
- * c-tree.h (c_push_function_context, c_pop_function_context): Remove
- argument.
- * c-decl.c (c_push_function_context, c_pop_function_context): Remove
- argument, call {push,pop}_function_context from here.
- * c-parser.c: Use c_{push,pop}_function_context.
-
- * function.c (push_function_context_to): Move meat ...
- (push_function_context): ... here. Simplify.
- * function.c (pop_function_context_from): Move meat ...
- (pop_function_context): ... here. Simplify.
- * langhooks.h (struct lang_hooks_for_functions): Remove enter_nested,
- leave_nested).
- * langhooks-def.h (LANG_HOOKS_FUNCTION_ENTER_NESTED,
- LANG_HOOKS_FUNCTION_LEAVE_NESTED): Delete.
- (LANG_HOOKS_FUNCTION_INITIALIZER): Delete them from here.
- * tree.h (push_function_context_to, pop_function_context_from): Remove.
+ * c-objc-common.h (LANG_HOOKS_FUNCTION_ENTER_NESTED,
+ LANG_HOOKS_FUNCTION_LEAVE_NESTED): Delete.
+ * c-tree.h (c_push_function_context, c_pop_function_context): Remove
+ argument.
+ * c-decl.c (c_push_function_context, c_pop_function_context): Remove
+ argument, call {push,pop}_function_context from here.
+ * c-parser.c: Use c_{push,pop}_function_context.
+
+ * function.c (push_function_context_to): Move meat ...
+ (push_function_context): ... here. Simplify.
+ * function.c (pop_function_context_from): Move meat ...
+ (pop_function_context): ... here. Simplify.
+ * langhooks.h (struct lang_hooks_for_functions): Remove enter_nested,
+ leave_nested).
+ * langhooks-def.h (LANG_HOOKS_FUNCTION_ENTER_NESTED,
+ LANG_HOOKS_FUNCTION_LEAVE_NESTED): Delete.
+ (LANG_HOOKS_FUNCTION_INITIALIZER): Delete them from here.
+ * tree.h (push_function_context_to, pop_function_context_from): Remove.
2008-04-03 Ben Elliston <bje@au.ibm.com>
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index c5923a3..9e650b9 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -8339,6 +8339,7 @@ alpha_output_mi_thunk_osf (FILE *file, tree thunk_fndecl ATTRIBUTE_UNUSED,
final_start_function (insn, file, 1);
final (insn, file, 1);
final_end_function ();
+ free_after_compilation (cfun);
}
#endif /* TARGET_ABI_OSF */
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index 270e83d..ceda883 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -9694,6 +9694,7 @@ 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;
diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
index 142c8aa..6160237 100644
--- a/gcc/config/m68k/m68k.c
+++ b/gcc/config/m68k/m68k.c
@@ -4348,6 +4348,7 @@ 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. */
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index da8b4aa..861a308 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -11685,6 +11685,7 @@ 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. */
diff --git a/gcc/config/score/score3.c b/gcc/config/score/score3.c
index f268cba..592f5f5 100644
--- a/gcc/config/score/score3.c
+++ b/gcc/config/score/score3.c
@@ -382,6 +382,7 @@ 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. */
diff --git a/gcc/config/score/score7.c b/gcc/config/score/score7.c
index 34271cc..3c16b0d 100644
--- a/gcc/config/score/score7.c
+++ b/gcc/config/score/score7.c
@@ -381,6 +381,7 @@ 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. */
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index c54dbb3..54c81b1 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -8818,6 +8818,7 @@ 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;