This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Reset more langhooks at free lang data


Hi,
this patch reset some of frontend langhooks that I think should be
completely handled by middle-end now.  I will also make patch to rewrite
set_assembler_name in some way that is safe, the comment bellow
the hunk added is bit oversimplified because we do add external
symbols (such as ctors and dtors or profile stuff).

The patch fixed the ICE in var_mod_type_p with obj-c++.  The other
hooks was changed more as a pre-cauntion. We want to detach FE
as much as possible from middle-end.

lto-Bootstrapped/regtested x86_64-linux, OK?

Honza

	* tree.c (free_lang_data): Reset overwite_assembler_name,
	print_xnode, print_decl, print_type and print_identifier of
	langhooks.
Index: tree.c
===================================================================
--- tree.c	(revision 265807)
+++ tree.c	(working copy)
@@ -6010,6 +6016,13 @@ free_lang_data (void)
   lang_hooks.dwarf_name = lhd_dwarf_name;
   lang_hooks.decl_printable_name = gimple_decl_printable_name;
   lang_hooks.gimplify_expr = lhd_gimplify_expr;
+  lang_hooks.overwrite_decl_assembler_name = lhd_overwrite_decl_assembler_name;
+  lang_hooks.print_xnode = lhd_print_tree_nothing;
+  lang_hooks.print_decl = lhd_print_tree_nothing;
+  lang_hooks.print_type = lhd_print_tree_nothing;
+  lang_hooks.print_identifier = lhd_print_tree_nothing;
+
+  lang_hooks.tree_inlining.var_mod_type_p = hook_bool_tree_tree_false;
 
   /* We do not want the default decl_assembler_name implementation,
      rather if we have fixed everything we want a wrapper around it


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]