Commit 917dd9bf by Jan Hubicka Committed by Jan Hubicka

lto.c (read_cgraph_and_symbols): Do not push DECL_INIT_IO timevar


	* lto.c (read_cgraph_and_symbols): Do not push DECL_INIT_IO
	timevar
	(materialize_cgraph): Do not push GIMPLE_IN timevar.

	* timevar.def (TV_IPA_LTO_DECL_INIT_IO): Remove.
	(TV_IPA_LTO_CTORS_IN, TV_IPA_LTO_CTORS_OUT): New timevar.
	* cgraph.c (cgraph_get_body): Push GIMPLE_IN timevar.
	(varpool_get_constructor): Push CTORS_IN timevar.
	* lto-streamer-out.c (lto_output): Push TV_IPA_LTO_CTORS_OUT
	timevar.

From-SVN: r212479
parent e0770e2a
2014-07-12 Jan Hubicka <hubicka@ucw.cz>
* timevar.def (TV_IPA_LTO_DECL_INIT_IO): Remove.
(TV_IPA_LTO_CTORS_IN, TV_IPA_LTO_CTORS_OUT): New timevar.
* cgraph.c (cgraph_get_body): Push GIMPLE_IN timevar.
(varpool_get_constructor): Push CTORS_IN timevar.
* lto-streamer-out.c (lto_output): Push TV_IPA_LTO_CTORS_OUT
timevar.
2014-07-12 Uros Bizjak <ubizjak@gmail.com> 2014-07-12 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386-builtin-types.def: Add USHORT_FTYPE_VOID. * config/i386/i386-builtin-types.def: Add USHORT_FTYPE_VOID.
......
...@@ -3053,6 +3053,8 @@ cgraph_get_body (struct cgraph_node *node) ...@@ -3053,6 +3053,8 @@ cgraph_get_body (struct cgraph_node *node)
gcc_assert (in_lto_p); gcc_assert (in_lto_p);
timevar_push (TV_IPA_LTO_GIMPLE_IN);
file_data = node->lto_file_data; file_data = node->lto_file_data;
name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)); name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl));
...@@ -3076,6 +3078,9 @@ cgraph_get_body (struct cgraph_node *node) ...@@ -3076,6 +3078,9 @@ cgraph_get_body (struct cgraph_node *node)
lto_free_section_data (file_data, LTO_section_function_body, name, lto_free_section_data (file_data, LTO_section_function_body, name,
data, len); data, len);
lto_free_function_in_decl_state_for_node (node); lto_free_function_in_decl_state_for_node (node);
timevar_pop (TV_IPA_LTO_GIMPLE_IN);
return true; return true;
} }
......
...@@ -2115,6 +2115,7 @@ lto_output (void) ...@@ -2115,6 +2115,7 @@ lto_output (void)
&& lto_symtab_encoder_encode_initializer_p (encoder, node) && lto_symtab_encoder_encode_initializer_p (encoder, node)
&& !node->alias) && !node->alias)
{ {
timevar_push (TV_IPA_LTO_CTORS_OUT);
#ifdef ENABLE_CHECKING #ifdef ENABLE_CHECKING
gcc_assert (!bitmap_bit_p (output, DECL_UID (node->decl))); gcc_assert (!bitmap_bit_p (output, DECL_UID (node->decl)));
bitmap_set_bit (output, DECL_UID (node->decl)); bitmap_set_bit (output, DECL_UID (node->decl));
...@@ -2129,6 +2130,7 @@ lto_output (void) ...@@ -2129,6 +2130,7 @@ lto_output (void)
gcc_assert (lto_get_out_decl_state () == decl_state); gcc_assert (lto_get_out_decl_state () == decl_state);
lto_pop_out_decl_state (); lto_pop_out_decl_state ();
lto_record_function_out_decl_state (node->decl, decl_state); lto_record_function_out_decl_state (node->decl, decl_state);
timevar_pop (TV_IPA_LTO_CTORS_OUT);
} }
} }
} }
......
2014-07-12 Jan Hubicka <hubicka@ucw.cz>
* lto.c (read_cgraph_and_symbols): Do not push DECL_INIT_IO
timevar
(materialize_cgraph): Do not push GIMPLE_IN timevar.
2014-07-11 Jan Hubicka <hubicka@ucw.cz> 2014-07-11 Jan Hubicka <hubicka@ucw.cz>
* lto-partition.c (add_references_to_partition): Use * lto-partition.c (add_references_to_partition): Use
......
...@@ -3094,12 +3094,9 @@ read_cgraph_and_symbols (unsigned nfiles, const char **fnames) ...@@ -3094,12 +3094,9 @@ read_cgraph_and_symbols (unsigned nfiles, const char **fnames)
timevar_pop (TV_IPA_LTO_CGRAPH_MERGE); timevar_pop (TV_IPA_LTO_CGRAPH_MERGE);
timevar_push (TV_IPA_LTO_DECL_INIT_IO);
/* Indicate that the cgraph is built and ready. */ /* Indicate that the cgraph is built and ready. */
cgraph_function_flags_ready = true; cgraph_function_flags_ready = true;
timevar_pop (TV_IPA_LTO_DECL_INIT_IO);
ggc_free (all_file_decl_data); ggc_free (all_file_decl_data);
all_file_decl_data = NULL; all_file_decl_data = NULL;
} }
...@@ -3117,9 +3114,6 @@ materialize_cgraph (void) ...@@ -3117,9 +3114,6 @@ materialize_cgraph (void)
fprintf (stderr, fprintf (stderr,
flag_wpa ? "Materializing decls:" : "Reading function bodies:"); flag_wpa ? "Materializing decls:" : "Reading function bodies:");
/* Now that we have input the cgraph, we need to clear all of the aux
nodes and read the functions if we are not running in WPA mode. */
timevar_push (TV_IPA_LTO_GIMPLE_IN);
FOR_EACH_FUNCTION (node) FOR_EACH_FUNCTION (node)
{ {
...@@ -3130,7 +3124,6 @@ materialize_cgraph (void) ...@@ -3130,7 +3124,6 @@ materialize_cgraph (void)
} }
} }
timevar_pop (TV_IPA_LTO_GIMPLE_IN);
/* Start the appropriate timer depending on the mode that we are /* Start the appropriate timer depending on the mode that we are
operating in. */ operating in. */
......
...@@ -77,7 +77,8 @@ DEFTIMEVAR (TV_IPA_LTO_GIMPLE_IN , "ipa lto gimple in") ...@@ -77,7 +77,8 @@ DEFTIMEVAR (TV_IPA_LTO_GIMPLE_IN , "ipa lto gimple in")
DEFTIMEVAR (TV_IPA_LTO_GIMPLE_OUT , "ipa lto gimple out") DEFTIMEVAR (TV_IPA_LTO_GIMPLE_OUT , "ipa lto gimple out")
DEFTIMEVAR (TV_IPA_LTO_DECL_IN , "ipa lto decl in") DEFTIMEVAR (TV_IPA_LTO_DECL_IN , "ipa lto decl in")
DEFTIMEVAR (TV_IPA_LTO_DECL_OUT , "ipa lto decl out") DEFTIMEVAR (TV_IPA_LTO_DECL_OUT , "ipa lto decl out")
DEFTIMEVAR (TV_IPA_LTO_DECL_INIT_IO , "ipa lto decl init I/O") DEFTIMEVAR (TV_IPA_LTO_CTORS_IN , "ipa lto constructors in")
DEFTIMEVAR (TV_IPA_LTO_CTORS_OUT , "ipa lto constructors out")
DEFTIMEVAR (TV_IPA_LTO_CGRAPH_IO , "ipa lto cgraph I/O") DEFTIMEVAR (TV_IPA_LTO_CGRAPH_IO , "ipa lto cgraph I/O")
DEFTIMEVAR (TV_IPA_LTO_DECL_MERGE , "ipa lto decl merge") DEFTIMEVAR (TV_IPA_LTO_DECL_MERGE , "ipa lto decl merge")
DEFTIMEVAR (TV_IPA_LTO_CGRAPH_MERGE , "ipa lto cgraph merge") DEFTIMEVAR (TV_IPA_LTO_CGRAPH_MERGE , "ipa lto cgraph merge")
......
...@@ -268,6 +268,8 @@ varpool_get_constructor (struct varpool_node *node) ...@@ -268,6 +268,8 @@ varpool_get_constructor (struct varpool_node *node)
|| !in_lto_p) || !in_lto_p)
return DECL_INITIAL (node->decl); return DECL_INITIAL (node->decl);
timevar_push (TV_IPA_LTO_CTORS_IN);
file_data = node->lto_file_data; file_data = node->lto_file_data;
name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)); name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl));
...@@ -286,6 +288,7 @@ varpool_get_constructor (struct varpool_node *node) ...@@ -286,6 +288,7 @@ varpool_get_constructor (struct varpool_node *node)
lto_free_section_data (file_data, LTO_section_function_body, name, lto_free_section_data (file_data, LTO_section_function_body, name,
data, len); data, len);
lto_free_function_in_decl_state_for_node (node); lto_free_function_in_decl_state_for_node (node);
timevar_pop (TV_IPA_LTO_CTORS_IN);
return DECL_INITIAL (node->decl); return DECL_INITIAL (node->decl);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment