Commit 464d0118 by Martin Liska Committed by Martin Liska

Introduce symtab_node::dump_{asm_,}name functions.

2017-05-23  Martin Liska  <mliska@suse.cz>

	* cgraph.c (cgraph_node::get_create): Use symtab_node::dump_{asm_,}name
	functions.
	(cgraph_edge::make_speculative): Likewise.
	(cgraph_edge::resolve_speculation): Likewise.
	(cgraph_edge::redirect_call_stmt_to_callee): Likewise.
	(cgraph_node::dump): Likewise.
	* cgraph.h: Likewise.
	* cgraphunit.c (analyze_functions): Likewise.
	(symbol_table::compile): Likewise.
	* ipa-cp.c (print_all_lattices): Likewise.
	(determine_versionability): Likewise.
	(initialize_node_lattices): Likewise.
	(ipcp_verify_propagated_values): Likewise.
	(estimate_local_effects): Likewise.
	(update_profiling_info): Likewise.
	(create_specialized_node): Likewise.
	(perhaps_add_new_callers): Likewise.
	(decide_about_value): Likewise.
	(decide_whether_version_node): Likewise.
	(identify_dead_nodes): Likewise.
	(ipcp_store_bits_results): Likewise.
	* ipa-devirt.c (dump_targets): Likewise.
	(ipa_devirt): Likewise.
	* ipa-icf.c (sem_item::dump): Likewise.
	(sem_function::equals): Likewise.
	(sem_variable::equals): Likewise.
	(sem_item_optimizer::read_section): Likewise.
	(sem_item_optimizer::execute): Likewise.
	(congruence_class::dump): Likewise.
	* ipa-inline-analysis.c (dump_ipa_call_summary): Likewise.
	(dump_inline_summary): Likewise.
	(estimate_node_size_and_time): Likewise.
	(inline_analyze_function): Likewise.
	* ipa-inline-transform.c (inline_call): Likewise.
	* ipa-inline.c (report_inline_failed_reason): Likewise.
	(want_early_inline_function_p): Likewise.
	(edge_badness): Likewise.
	(update_edge_key): Likewise.
	(inline_small_functions): Likewise.
	* ipa-profile.c (ipa_profile): Likewise.
	* ipa-prop.c (ipa_print_node_jump_functions): Likewise.
	(ipa_make_edge_direct_to_target): Likewise.
	(remove_described_reference): Likewise.
	(ipa_impossible_devirt_target): Likewise.
	(propagate_controlled_uses): Likewise.
	(ipa_print_node_params): Likewise.
	(ipcp_transform_function): Likewise.
	* ipa-pure-const.c (pure_const_read_summary): Likewise.
	(propagate_pure_const): Likewise.
	* ipa-reference.c (generate_summary): Likewise.
	(read_write_all_from_decl): Likewise.
	(propagate): Likewise.
	(ipa_reference_read_optimization_summary): Likewise.
	* ipa-utils.c (ipa_merge_profiles): Likewise.
	* ipa.c (walk_polymorphic_call_targets): Likewise.
	(symbol_table::remove_unreachable_nodes): Likewise.
	(ipa_single_use): Likewise.
	* passes.c (execute_todo): Likewise.
	* predict.c (drop_profile): Likewise.
	* symtab.c (symtab_node::get_dump_name): New function.
	(symtab_node::dump_name): Likewise.
	(symtab_node::dump_asm_name): Likewise.
	(symtab_node::dump_references): Likewise.
	(symtab_node::dump_referring): Likewise.
	(symtab_node::dump_base): Likewise.
	(symtab_node::debug_symtab): Likewise.
	* tree-sra.c (convert_callers_for_node): Likewise.
	* tree-ssa-structalias.c (ipa_pta_execute): Likewise.
	* value-prof.c (init_node_map): Likewise.
2017-05-23  Martin Liska  <mliska@suse.cz>

	* lto-symtab.c (lto_cgraph_replace_node): Use
	symtab_node::dump_{asm_,}name functions.
	* lto.c (read_cgraph_and_symbols): Likewise.
	(do_whole_program_analysis): Likewise.

From-SVN: r248369
parent 6c52831d
2017-05-23 Martin Liska <mliska@suse.cz> 2017-05-23 Martin Liska <mliska@suse.cz>
* cgraph.c (cgraph_node::get_create): Use symtab_node::dump_{asm_,}name
functions.
(cgraph_edge::make_speculative): Likewise.
(cgraph_edge::resolve_speculation): Likewise.
(cgraph_edge::redirect_call_stmt_to_callee): Likewise.
(cgraph_node::dump): Likewise.
* cgraph.h: Likewise.
* cgraphunit.c (analyze_functions): Likewise.
(symbol_table::compile): Likewise.
* ipa-cp.c (print_all_lattices): Likewise.
(determine_versionability): Likewise.
(initialize_node_lattices): Likewise.
(ipcp_verify_propagated_values): Likewise.
(estimate_local_effects): Likewise.
(update_profiling_info): Likewise.
(create_specialized_node): Likewise.
(perhaps_add_new_callers): Likewise.
(decide_about_value): Likewise.
(decide_whether_version_node): Likewise.
(identify_dead_nodes): Likewise.
(ipcp_store_bits_results): Likewise.
* ipa-devirt.c (dump_targets): Likewise.
(ipa_devirt): Likewise.
* ipa-icf.c (sem_item::dump): Likewise.
(sem_function::equals): Likewise.
(sem_variable::equals): Likewise.
(sem_item_optimizer::read_section): Likewise.
(sem_item_optimizer::execute): Likewise.
(congruence_class::dump): Likewise.
* ipa-inline-analysis.c (dump_ipa_call_summary): Likewise.
(dump_inline_summary): Likewise.
(estimate_node_size_and_time): Likewise.
(inline_analyze_function): Likewise.
* ipa-inline-transform.c (inline_call): Likewise.
* ipa-inline.c (report_inline_failed_reason): Likewise.
(want_early_inline_function_p): Likewise.
(edge_badness): Likewise.
(update_edge_key): Likewise.
(inline_small_functions): Likewise.
* ipa-profile.c (ipa_profile): Likewise.
* ipa-prop.c (ipa_print_node_jump_functions): Likewise.
(ipa_make_edge_direct_to_target): Likewise.
(remove_described_reference): Likewise.
(ipa_impossible_devirt_target): Likewise.
(propagate_controlled_uses): Likewise.
(ipa_print_node_params): Likewise.
(ipcp_transform_function): Likewise.
* ipa-pure-const.c (pure_const_read_summary): Likewise.
(propagate_pure_const): Likewise.
* ipa-reference.c (generate_summary): Likewise.
(read_write_all_from_decl): Likewise.
(propagate): Likewise.
(ipa_reference_read_optimization_summary): Likewise.
* ipa-utils.c (ipa_merge_profiles): Likewise.
* ipa.c (walk_polymorphic_call_targets): Likewise.
(symbol_table::remove_unreachable_nodes): Likewise.
(ipa_single_use): Likewise.
* passes.c (execute_todo): Likewise.
* predict.c (drop_profile): Likewise.
* symtab.c (symtab_node::get_dump_name): New function.
(symtab_node::dump_name): Likewise.
(symtab_node::dump_asm_name): Likewise.
(symtab_node::dump_references): Likewise.
(symtab_node::dump_referring): Likewise.
(symtab_node::dump_base): Likewise.
(symtab_node::debug_symtab): Likewise.
* tree-sra.c (convert_callers_for_node): Likewise.
* tree-ssa-structalias.c (ipa_pta_execute): Likewise.
* value-prof.c (init_node_map): Likewise.
2017-05-23 Martin Liska <mliska@suse.cz>
* cgraph.h: Move symtab_node::dump_table to symbol_table::dump * cgraph.h: Move symtab_node::dump_table to symbol_table::dump
and symtab_node::debug_symtab to symbol_table::debug. and symtab_node::debug_symtab to symbol_table::debug.
* cgraphunit.c (analyze_functions): Use the renamed function. * cgraphunit.c (analyze_functions): Use the renamed function.
......
...@@ -539,12 +539,12 @@ cgraph_node::get_create (tree decl) ...@@ -539,12 +539,12 @@ cgraph_node::get_create (tree decl)
node->decl->decl_with_vis.symtab_node = node; node->decl->decl_with_vis.symtab_node = node;
if (dump_file) if (dump_file)
fprintf (dump_file, "Introduced new external node " fprintf (dump_file, "Introduced new external node "
"(%s/%i) and turned into root of the clone tree.\n", "(%s) and turned into root of the clone tree.\n",
node->name (), node->order); node->dump_name ());
} }
else if (dump_file) else if (dump_file)
fprintf (dump_file, "Introduced new external node " fprintf (dump_file, "Introduced new external node "
"(%s/%i).\n", node->name (), node->order); "(%s).\n", node->dump_name ());
return node; return node;
} }
...@@ -1055,12 +1055,8 @@ cgraph_edge::make_speculative (cgraph_node *n2, gcov_type direct_count, ...@@ -1055,12 +1055,8 @@ cgraph_edge::make_speculative (cgraph_node *n2, gcov_type direct_count,
cgraph_edge *e2; cgraph_edge *e2;
if (dump_file) if (dump_file)
{ fprintf (dump_file, "Indirect call -> speculative call %s => %s\n",
fprintf (dump_file, "Indirect call -> speculative call" n->dump_name (), n2->dump_name ());
" %s/%i => %s/%i\n",
xstrdup_for_dump (n->name ()), n->order,
xstrdup_for_dump (n2->name ()), n2->order);
}
speculative = true; speculative = true;
e2 = n->create_edge (n2, call_stmt, direct_count, direct_frequency); e2 = n->create_edge (n2, call_stmt, direct_count, direct_frequency);
initialize_inline_failed (e2); initialize_inline_failed (e2);
...@@ -1163,22 +1159,18 @@ cgraph_edge::resolve_speculation (tree callee_decl) ...@@ -1163,22 +1159,18 @@ cgraph_edge::resolve_speculation (tree callee_decl)
{ {
if (callee_decl) if (callee_decl)
{ {
fprintf (dump_file, "Speculative indirect call %s/%i => %s/%i has " fprintf (dump_file, "Speculative indirect call %s => %s has "
"turned out to have contradicting known target ", "turned out to have contradicting known target ",
xstrdup_for_dump (edge->caller->name ()), edge->caller->dump_name (),
edge->caller->order, e2->callee->dump_name ());
xstrdup_for_dump (e2->callee->name ()),
e2->callee->order);
print_generic_expr (dump_file, callee_decl); print_generic_expr (dump_file, callee_decl);
fprintf (dump_file, "\n"); fprintf (dump_file, "\n");
} }
else else
{ {
fprintf (dump_file, "Removing speculative call %s/%i => %s/%i\n", fprintf (dump_file, "Removing speculative call %s => %s\n",
xstrdup_for_dump (edge->caller->name ()), edge->caller->dump_name (),
edge->caller->order, e2->callee->dump_name ());
xstrdup_for_dump (e2->callee->name ()),
e2->callee->order);
} }
} }
} }
...@@ -1295,12 +1287,10 @@ cgraph_edge::redirect_call_stmt_to_callee (void) ...@@ -1295,12 +1287,10 @@ cgraph_edge::redirect_call_stmt_to_callee (void)
true)) true))
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, "Not expanding speculative call of %s/%i -> %s/%i\n" fprintf (dump_file, "Not expanding speculative call of %s -> %s\n"
"Type mismatch.\n", "Type mismatch.\n",
xstrdup_for_dump (e->caller->name ()), e->caller->dump_name (),
e->caller->order, e->callee->dump_name ());
xstrdup_for_dump (e->callee->name ()),
e->callee->order);
e = e->resolve_speculation (); e = e->resolve_speculation ();
/* We are producing the final function body and will throw away the /* We are producing the final function body and will throw away the
callgraph edges really soon. Reset the counts/frequencies to callgraph edges really soon. Reset the counts/frequencies to
...@@ -1314,12 +1304,10 @@ cgraph_edge::redirect_call_stmt_to_callee (void) ...@@ -1314,12 +1304,10 @@ cgraph_edge::redirect_call_stmt_to_callee (void)
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, fprintf (dump_file,
"Expanding speculative call of %s/%i -> %s/%i count: " "Expanding speculative call of %s -> %s count: "
"%" PRId64"\n", "%" PRId64"\n",
xstrdup_for_dump (e->caller->name ()), e->caller->dump_name (),
e->caller->order, e->callee->dump_name (),
xstrdup_for_dump (e->callee->name ()),
e->callee->order,
(int64_t)e->count); (int64_t)e->count);
gcc_assert (e2->speculative); gcc_assert (e2->speculative);
push_cfun (DECL_STRUCT_FUNCTION (e->caller->decl)); push_cfun (DECL_STRUCT_FUNCTION (e->caller->decl));
...@@ -1399,9 +1387,8 @@ cgraph_edge::redirect_call_stmt_to_callee (void) ...@@ -1399,9 +1387,8 @@ cgraph_edge::redirect_call_stmt_to_callee (void)
if (symtab->dump_file) if (symtab->dump_file)
{ {
fprintf (symtab->dump_file, "updating call of %s/%i -> %s/%i: ", fprintf (symtab->dump_file, "updating call of %s -> %s: ",
xstrdup_for_dump (e->caller->name ()), e->caller->order, e->caller->dump_name (), e->callee->dump_name ());
xstrdup_for_dump (e->callee->name ()), e->callee->order);
print_gimple_stmt (symtab->dump_file, e->call_stmt, 0, dump_flags); print_gimple_stmt (symtab->dump_file, e->call_stmt, 0, dump_flags);
if (e->callee->clone.combined_args_to_skip) if (e->callee->clone.combined_args_to_skip)
{ {
...@@ -2064,15 +2051,11 @@ cgraph_node::dump (FILE *f) ...@@ -2064,15 +2051,11 @@ cgraph_node::dump (FILE *f)
dump_base (f); dump_base (f);
if (global.inlined_to) if (global.inlined_to)
fprintf (f, " Function %s/%i is inline copy in %s/%i\n", fprintf (f, " Function %s is inline copy in %s\n",
xstrdup_for_dump (name ()), dump_name (),
order, global.inlined_to->dump_name ());
xstrdup_for_dump (global.inlined_to->name ()),
global.inlined_to->order);
if (clone_of) if (clone_of)
fprintf (f, " Clone of %s/%i\n", fprintf (f, " Clone of %s\n", clone_of->dump_asm_name ());
clone_of->asm_name (),
clone_of->order);
if (symtab->function_flags_ready) if (symtab->function_flags_ready)
fprintf (f, " Availability: %s\n", fprintf (f, " Availability: %s\n",
cgraph_availability_names [get_availability ()]); cgraph_availability_names [get_availability ()]);
...@@ -2088,14 +2071,12 @@ cgraph_node::dump (FILE *f) ...@@ -2088,14 +2071,12 @@ cgraph_node::dump (FILE *f)
if (vi->prev != NULL) if (vi->prev != NULL)
{ {
fprintf (f, "prev: "); fprintf (f, "prev: ");
fprintf (f, "%s/%i ", vi->prev->this_node->asm_name (), fprintf (f, "%s ", vi->prev->this_node->dump_asm_name ());
vi->prev->this_node->order);
} }
if (vi->next != NULL) if (vi->next != NULL)
{ {
fprintf (f, "next: "); fprintf (f, "next: ");
fprintf (f, "%s/%i ", vi->next->this_node->asm_name (), fprintf (f, "%s ", vi->next->this_node->dump_asm_name ());
vi->next->this_node->order);
} }
if (vi->dispatcher_resolver != NULL_TREE) if (vi->dispatcher_resolver != NULL_TREE)
fprintf (f, "dispatcher: %s", fprintf (f, "dispatcher: %s",
...@@ -2184,16 +2165,14 @@ cgraph_node::dump (FILE *f) ...@@ -2184,16 +2165,14 @@ cgraph_node::dump (FILE *f)
for (edge = callers; edge; edge = edge->next_caller) for (edge = callers; edge; edge = edge->next_caller)
{ {
fprintf (f, "%s/%i ", edge->caller->asm_name (), fprintf (f, "%s ", edge->caller->dump_name ());
edge->caller->order);
edge->dump_edge_flags (f); edge->dump_edge_flags (f);
} }
fprintf (f, "\n Calls: "); fprintf (f, "\n Calls: ");
for (edge = callees; edge; edge = edge->next_callee) for (edge = callees; edge; edge = edge->next_callee)
{ {
fprintf (f, "%s/%i ", edge->callee->asm_name (), fprintf (f, "%s ", edge->callee->dump_name ());
edge->callee->order);
edge->dump_edge_flags (f); edge->dump_edge_flags (f);
} }
fprintf (f, "\n"); fprintf (f, "\n");
......
...@@ -99,8 +99,14 @@ public: ...@@ -99,8 +99,14 @@ public:
/* Return name. */ /* Return name. */
const char *name () const; const char *name () const;
/* Return dump name. */
const char *dump_name () const;
/* Return asm name. */ /* Return asm name. */
const char * asm_name () const; const char *asm_name () const;
/* Return dump name with assembler name. */
const char *dump_asm_name () const;
/* Add node into symbol table. This function is not used directly, but via /* Add node into symbol table. This function is not used directly, but via
cgraph/varpool node creation routines. */ cgraph/varpool node creation routines. */
...@@ -598,6 +604,9 @@ private: ...@@ -598,6 +604,9 @@ private:
/* Worker for ultimate_alias_target. */ /* Worker for ultimate_alias_target. */
symtab_node *ultimate_alias_target_1 (enum availability *avail = NULL, symtab_node *ultimate_alias_target_1 (enum availability *avail = NULL,
symtab_node *ref = NULL); symtab_node *ref = NULL);
/* Get dump name with normal or assembly name. */
const char *get_dump_name (bool asm_name_p) const;
}; };
inline void inline void
......
...@@ -539,8 +539,7 @@ print_all_lattices (FILE * f, bool dump_sources, bool dump_benefits) ...@@ -539,8 +539,7 @@ print_all_lattices (FILE * f, bool dump_sources, bool dump_benefits)
struct ipa_node_params *info; struct ipa_node_params *info;
info = IPA_NODE_REF (node); info = IPA_NODE_REF (node);
fprintf (f, " Node: %s/%i:\n", node->name (), fprintf (f, " Node: %s:\n", node->dump_name ());
node->order);
count = ipa_get_param_count (info); count = ipa_get_param_count (info);
for (i = 0; i < count; i++) for (i = 0; i < count; i++)
{ {
...@@ -622,8 +621,8 @@ determine_versionability (struct cgraph_node *node, ...@@ -622,8 +621,8 @@ determine_versionability (struct cgraph_node *node,
} }
if (reason && dump_file && !node->alias && !node->thunk.thunk_p) if (reason && dump_file && !node->alias && !node->thunk.thunk_p)
fprintf (dump_file, "Function %s/%i is not versionable, reason: %s.\n", fprintf (dump_file, "Function %s is not versionable, reason: %s.\n",
node->name (), node->order, reason); node->dump_name (), reason);
info->versionable = (reason == NULL); info->versionable = (reason == NULL);
} }
...@@ -1195,9 +1194,8 @@ initialize_node_lattices (struct cgraph_node *node) ...@@ -1195,9 +1194,8 @@ initialize_node_lattices (struct cgraph_node *node)
} }
if (dump_file && (dump_flags & TDF_DETAILS) if (dump_file && (dump_flags & TDF_DETAILS)
&& !node->alias && !node->thunk.thunk_p) && !node->alias && !node->thunk.thunk_p)
fprintf (dump_file, "Marking all lattices of %s/%i as %s\n", fprintf (dump_file, "Marking all lattices of %s as %s\n",
node->name (), node->order, node->dump_name (), disable ? "BOTTOM" : "VARIABLE");
disable ? "BOTTOM" : "VARIABLE");
} }
for (ie = node->indirect_calls; ie; ie = ie->next_callee) for (ie = node->indirect_calls; ie; ie = ie->next_callee)
...@@ -2842,8 +2840,7 @@ estimate_local_effects (struct cgraph_node *node) ...@@ -2842,8 +2840,7 @@ estimate_local_effects (struct cgraph_node *node)
return; return;
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, "\nEstimating effects for %s/%i.\n", fprintf (dump_file, "\nEstimating effects for %s.\n", node->dump_name ());
node->name (), node->order);
always_const = gather_context_independent_values (info, &known_csts, always_const = gather_context_independent_values (info, &known_csts,
&known_contexts, &known_aggs, &known_contexts, &known_aggs,
...@@ -3656,10 +3653,10 @@ update_profiling_info (struct cgraph_node *orig_node, ...@@ -3656,10 +3653,10 @@ update_profiling_info (struct cgraph_node *orig_node,
if (orig_node_count < orig_sum + new_sum) if (orig_node_count < orig_sum + new_sum)
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, " Problem: node %s/%i has too low count " fprintf (dump_file, " Problem: node %s has too low count "
HOST_WIDE_INT_PRINT_DEC " while the sum of incoming " HOST_WIDE_INT_PRINT_DEC " while the sum of incoming "
"counts is " HOST_WIDE_INT_PRINT_DEC "\n", "counts is " HOST_WIDE_INT_PRINT_DEC "\n",
orig_node->name (), orig_node->order, orig_node->dump_name (),
(HOST_WIDE_INT) orig_node_count, (HOST_WIDE_INT) orig_node_count,
(HOST_WIDE_INT) (orig_sum + new_sum)); (HOST_WIDE_INT) (orig_sum + new_sum));
...@@ -3798,8 +3795,7 @@ create_specialized_node (struct cgraph_node *node, ...@@ -3798,8 +3795,7 @@ create_specialized_node (struct cgraph_node *node,
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
{ {
fprintf (dump_file, " the new node is %s/%i.\n", fprintf (dump_file, " the new node is %s.\n", new_node->dump_name ());
new_node->name (), new_node->order);
if (known_contexts.exists ()) if (known_contexts.exists ())
{ {
for (i = 0; i < count; i++) for (i = 0; i < count; i++)
...@@ -4439,12 +4435,9 @@ perhaps_add_new_callers (cgraph_node *node, ipcp_value<valtype> *val) ...@@ -4439,12 +4435,9 @@ perhaps_add_new_callers (cgraph_node *node, ipcp_value<valtype> *val)
&& cgraph_edge_brings_all_agg_vals_for_node (cs, val->spec_node)) && cgraph_edge_brings_all_agg_vals_for_node (cs, val->spec_node))
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, " - adding an extra caller %s/%i" fprintf (dump_file, " - adding an extra caller %s of %s\n",
" of %s/%i\n", cs->caller->dump_name (),
xstrdup_for_dump (cs->caller->name ()), val->spec_node->dump_name ());
cs->caller->order,
xstrdup_for_dump (val->spec_node->name ()),
val->spec_node->order);
cs->redirect_callee_duplicating_thunks (val->spec_node); cs->redirect_callee_duplicating_thunks (val->spec_node);
val->spec_node->expand_all_artificial_thunks (); val->spec_node->expand_all_artificial_thunks ();
...@@ -4600,8 +4593,8 @@ decide_about_value (struct cgraph_node *node, int index, HOST_WIDE_INT offset, ...@@ -4600,8 +4593,8 @@ decide_about_value (struct cgraph_node *node, int index, HOST_WIDE_INT offset,
return false; return false;
if (dump_file) if (dump_file)
fprintf (dump_file, " Creating a specialized node of %s/%i.\n", fprintf (dump_file, " Creating a specialized node of %s.\n",
node->name (), node->order); node->dump_name ());
callers = gather_edges_for_value (val, node, caller_count); callers = gather_edges_for_value (val, node, caller_count);
if (offset == -1) if (offset == -1)
...@@ -4642,8 +4635,8 @@ decide_whether_version_node (struct cgraph_node *node) ...@@ -4642,8 +4635,8 @@ decide_whether_version_node (struct cgraph_node *node)
return false; return false;
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, "\nEvaluating opportunities for %s/%i.\n", fprintf (dump_file, "\nEvaluating opportunities for %s.\n",
node->name (), node->order); node->dump_name ());
gather_context_independent_values (info, &known_csts, &known_contexts, gather_context_independent_values (info, &known_csts, &known_contexts,
info->do_clone_for_all_contexts ? &known_aggs info->do_clone_for_all_contexts ? &known_aggs
...@@ -4697,9 +4690,8 @@ decide_whether_version_node (struct cgraph_node *node) ...@@ -4697,9 +4690,8 @@ decide_whether_version_node (struct cgraph_node *node)
vec<cgraph_edge *> callers; vec<cgraph_edge *> callers;
if (dump_file) if (dump_file)
fprintf (dump_file, " - Creating a specialized node of %s/%i " fprintf (dump_file, " - Creating a specialized node of %s "
"for all known contexts.\n", node->name (), "for all known contexts.\n", node->dump_name ());
node->order);
callers = node->collect_callers (); callers = node->collect_callers ();
...@@ -4794,8 +4786,7 @@ identify_dead_nodes (struct cgraph_node *node) ...@@ -4794,8 +4786,7 @@ identify_dead_nodes (struct cgraph_node *node)
{ {
for (v = node; v; v = ((struct ipa_dfs_info *) v->aux)->next_cycle) for (v = node; v; v = ((struct ipa_dfs_info *) v->aux)->next_cycle)
if (IPA_NODE_REF (v)->node_dead) if (IPA_NODE_REF (v)->node_dead)
fprintf (dump_file, " Marking node as dead: %s/%i.\n", fprintf (dump_file, " Marking node as dead: %s.\n", v->dump_name ());
v->name (), v->order);
} }
} }
...@@ -4892,8 +4883,8 @@ ipcp_store_bits_results (void) ...@@ -4892,8 +4883,8 @@ ipcp_store_bits_results (void)
continue; continue;
if (!dumped_sth) if (!dumped_sth)
{ {
fprintf (dump_file, "Propagated bits info for function %s/%i:\n", fprintf (dump_file, "Propagated bits info for function %s:\n",
node->name (), node->order); node->dump_name ());
dumped_sth = true; dumped_sth = true;
} }
fprintf (dump_file, " param %i: value = ", i); fprintf (dump_file, " param %i: value = ", i);
......
...@@ -3316,7 +3316,8 @@ dump_targets (FILE *f, vec <cgraph_node *> targets) ...@@ -3316,7 +3316,8 @@ dump_targets (FILE *f, vec <cgraph_node *> targets)
char *name = NULL; char *name = NULL;
if (in_lto_p) if (in_lto_p)
name = cplus_demangle_v3 (targets[i]->asm_name (), 0); name = cplus_demangle_v3 (targets[i]->asm_name (), 0);
fprintf (f, " %s/%i", name ? name : targets[i]->name (), targets[i]->order); fprintf (f, " %s/%i", name ? name : targets[i]->name (),
targets[i]->order);
if (in_lto_p) if (in_lto_p)
free (name); free (name);
if (!targets[i]->definition) if (!targets[i]->definition)
...@@ -3596,8 +3597,8 @@ ipa_devirt (void) ...@@ -3596,8 +3597,8 @@ ipa_devirt (void)
if (!opt_for_fn (n->decl, flag_devirtualize)) if (!opt_for_fn (n->decl, flag_devirtualize))
continue; continue;
if (dump_file && n->indirect_calls) if (dump_file && n->indirect_calls)
fprintf (dump_file, "\n\nProcesing function %s/%i\n", fprintf (dump_file, "\n\nProcesing function %s\n",
n->name (), n->order); n->dump_name ());
for (e = n->indirect_calls; e; e = e->next_callee) for (e = n->indirect_calls; e; e = e->next_callee)
if (e->indirect_info->polymorphic) if (e->indirect_info->polymorphic)
{ {
...@@ -3752,10 +3753,10 @@ ipa_devirt (void) ...@@ -3752,10 +3753,10 @@ ipa_devirt (void)
{ {
location_t locus = gimple_location_safe (e->call_stmt); location_t locus = gimple_location_safe (e->call_stmt);
dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, locus, dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, locus,
"speculatively devirtualizing call in %s/%i to %s/%i\n", "speculatively devirtualizing call "
n->name (), n->order, "in %s to %s\n",
likely_target->name (), n->dump_name (),
likely_target->order); likely_target->dump_name ());
} }
if (!likely_target->can_be_discarded_p ()) if (!likely_target->can_be_discarded_p ())
{ {
......
...@@ -195,8 +195,8 @@ sem_item::dump (void) ...@@ -195,8 +195,8 @@ sem_item::dump (void)
{ {
if (dump_file) if (dump_file)
{ {
fprintf (dump_file, "[%s] %s (%u) (tree:%p)\n", type == FUNC ? "func" : "var", fprintf (dump_file, "[%s] %s (tree:%p)\n", type == FUNC ? "func" : "var",
node->name(), node->order, (void *) node->decl); node->dump_name (), (void *) node->decl);
fprintf (dump_file, " hash: %u\n", get_hash ()); fprintf (dump_file, " hash: %u\n", get_hash ());
fprintf (dump_file, " references: "); fprintf (dump_file, " references: ");
...@@ -869,13 +869,9 @@ sem_function::equals (sem_item *item, ...@@ -869,13 +869,9 @@ sem_function::equals (sem_item *item,
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, fprintf (dump_file,
"Equals called for:%s:%s (%u:%u) (%s:%s) with result: %s\n\n", "Equals called for: %s:%s with result: %s\n\n",
xstrdup_for_dump (node->name()), node->dump_name (),
xstrdup_for_dump (item->node->name ()), item->node->dump_name (),
node->order,
item->node->order,
xstrdup_for_dump (node->asm_name ()),
xstrdup_for_dump (item->node->asm_name ()),
eq ? "true" : "false"); eq ? "true" : "false");
return eq; return eq;
...@@ -1887,12 +1883,9 @@ sem_variable::equals (sem_item *item, ...@@ -1887,12 +1883,9 @@ sem_variable::equals (sem_item *item,
DECL_INITIAL (item->node->decl)); DECL_INITIAL (item->node->decl));
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, fprintf (dump_file,
"Equals called for vars:%s:%s (%u:%u) (%s:%s) with result: %s\n\n", "Equals called for vars: %s:%s with result: %s\n\n",
xstrdup_for_dump (node->name()), node->dump_name (), item->node->dump_name (),
xstrdup_for_dump (item->node->name ()), ret ? "true" : "false");
node->order, item->node->order,
xstrdup_for_dump (node->asm_name ()),
xstrdup_for_dump (item->node->asm_name ()), ret ? "true" : "false");
return ret; return ret;
} }
...@@ -2398,8 +2391,8 @@ sem_item_optimizer::read_section (lto_file_decl_data *file_data, ...@@ -2398,8 +2391,8 @@ sem_item_optimizer::read_section (lto_file_decl_data *file_data,
gcc_assert (node->definition); gcc_assert (node->definition);
if (dump_file) if (dump_file)
fprintf (dump_file, "Symbol added:%s (tree: %p, uid:%u)\n", fprintf (dump_file, "Symbol added: %s (tree: %p)\n",
node->asm_name (), (void *) node->decl, node->order); node->dump_asm_name (), (void *) node->decl);
if (is_a<cgraph_node *> (node)) if (is_a<cgraph_node *> (node))
{ {
...@@ -3577,9 +3570,7 @@ congruence_class::dump (FILE *file, unsigned int indent) const ...@@ -3577,9 +3570,7 @@ congruence_class::dump (FILE *file, unsigned int indent) const
FPUTS_SPACES (file, indent + 2, ""); FPUTS_SPACES (file, indent + 2, "");
for (unsigned i = 0; i < members.length (); i++) for (unsigned i = 0; i < members.length (); i++)
fprintf (file, "%s(%p/%u) ", members[i]->node->asm_name (), fprintf (file, "%s ", members[i]->node->dump_asm_name ());
(void *) members[i]->decl,
members[i]->node->order);
fprintf (file, "\n"); fprintf (file, "\n");
} }
......
...@@ -351,8 +351,8 @@ inline_call (struct cgraph_edge *e, bool update_original, ...@@ -351,8 +351,8 @@ inline_call (struct cgraph_edge *e, bool update_original,
cl_optimization_restore (&opts, opts_for_fn (to->decl)); cl_optimization_restore (&opts, opts_for_fn (to->decl));
opts.x_flag_strict_aliasing = false; opts.x_flag_strict_aliasing = false;
if (dump_file) if (dump_file)
fprintf (dump_file, "Dropping flag_strict_aliasing on %s:%i\n", fprintf (dump_file, "Dropping flag_strict_aliasing on %s\n",
to->name (), to->order); to->dump_name ());
DECL_FUNCTION_SPECIFIC_OPTIMIZATION (to->decl) DECL_FUNCTION_SPECIFIC_OPTIMIZATION (to->decl)
= build_optimization_node (&opts); = build_optimization_node (&opts);
reload_optimization_node = true; reload_optimization_node = true;
...@@ -412,8 +412,8 @@ inline_call (struct cgraph_edge *e, bool update_original, ...@@ -412,8 +412,8 @@ inline_call (struct cgraph_edge *e, bool update_original,
opts.x_flag_errno_math opts.x_flag_errno_math
= opt_for_fn (callee->decl, flag_errno_math); = opt_for_fn (callee->decl, flag_errno_math);
if (dump_file) if (dump_file)
fprintf (dump_file, "Copying FP flags from %s:%i to %s:%i\n", fprintf (dump_file, "Copying FP flags from %s to %s\n",
callee->name (), callee->order, to->name (), to->order); callee->dump_name (), to->dump_name ());
DECL_FUNCTION_SPECIFIC_OPTIMIZATION (to->decl) DECL_FUNCTION_SPECIFIC_OPTIMIZATION (to->decl)
= build_optimization_node (&opts); = build_optimization_node (&opts);
reload_optimization_node = true; reload_optimization_node = true;
......
...@@ -228,9 +228,9 @@ report_inline_failed_reason (struct cgraph_edge *e) ...@@ -228,9 +228,9 @@ report_inline_failed_reason (struct cgraph_edge *e)
{ {
if (dump_file) if (dump_file)
{ {
fprintf (dump_file, " not inlinable: %s/%i -> %s/%i, %s\n", fprintf (dump_file, " not inlinable: %s -> %s, %s\n",
xstrdup_for_dump (e->caller->name ()), e->caller->order, e->caller->dump_name (),
xstrdup_for_dump (e->callee->name ()), e->callee->order, e->callee->dump_name (),
cgraph_inline_failed_string (e->inline_failed)); cgraph_inline_failed_string (e->inline_failed));
if ((e->inline_failed == CIF_TARGET_OPTION_MISMATCH if ((e->inline_failed == CIF_TARGET_OPTION_MISMATCH
|| e->inline_failed == CIF_OPTIMIZATION_MISMATCH) || e->inline_failed == CIF_OPTIMIZATION_MISMATCH)
...@@ -593,22 +593,20 @@ want_early_inline_function_p (struct cgraph_edge *e) ...@@ -593,22 +593,20 @@ want_early_inline_function_p (struct cgraph_edge *e)
&& growth > 0) && growth > 0)
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, " will not early inline: %s/%i->%s/%i, " fprintf (dump_file, " will not early inline: %s->%s, "
"call is cold and code would grow by %i\n", "call is cold and code would grow by %i\n",
xstrdup_for_dump (e->caller->name ()), e->caller->dump_name (),
e->caller->order, callee->dump_name (),
xstrdup_for_dump (callee->name ()), callee->order,
growth); growth);
want_inline = false; want_inline = false;
} }
else if (growth > PARAM_VALUE (PARAM_EARLY_INLINING_INSNS)) else if (growth > PARAM_VALUE (PARAM_EARLY_INLINING_INSNS))
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, " will not early inline: %s/%i->%s/%i, " fprintf (dump_file, " will not early inline: %s->%s, "
"growth %i exceeds --param early-inlining-insns\n", "growth %i exceeds --param early-inlining-insns\n",
xstrdup_for_dump (e->caller->name ()), e->caller->dump_name (),
e->caller->order, callee->dump_name (),
xstrdup_for_dump (callee->name ()), callee->order,
growth); growth);
want_inline = false; want_inline = false;
} }
...@@ -616,12 +614,11 @@ want_early_inline_function_p (struct cgraph_edge *e) ...@@ -616,12 +614,11 @@ want_early_inline_function_p (struct cgraph_edge *e)
&& growth * (n + 1) > PARAM_VALUE (PARAM_EARLY_INLINING_INSNS)) && growth * (n + 1) > PARAM_VALUE (PARAM_EARLY_INLINING_INSNS))
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, " will not early inline: %s/%i->%s/%i, " fprintf (dump_file, " will not early inline: %s->%s, "
"growth %i exceeds --param early-inlining-insns " "growth %i exceeds --param early-inlining-insns "
"divided by number of calls\n", "divided by number of calls\n",
xstrdup_for_dump (e->caller->name ()), e->caller->dump_name (),
e->caller->order, callee->dump_name (),
xstrdup_for_dump (callee->name ()), callee->order,
growth); growth);
want_inline = false; want_inline = false;
} }
...@@ -1021,11 +1018,9 @@ edge_badness (struct cgraph_edge *edge, bool dump) ...@@ -1021,11 +1018,9 @@ edge_badness (struct cgraph_edge *edge, bool dump)
if (dump) if (dump)
{ {
fprintf (dump_file, " Badness calculation for %s/%i -> %s/%i\n", fprintf (dump_file, " Badness calculation for %s -> %s\n",
xstrdup_for_dump (edge->caller->name ()), edge->caller->dump_name (),
edge->caller->order, edge->callee->dump_name ());
xstrdup_for_dump (callee->name ()),
edge->callee->order);
fprintf (dump_file, " size growth %i, time %f unspec %f ", fprintf (dump_file, " size growth %i, time %f unspec %f ",
growth, growth,
edge_time.to_double (), edge_time.to_double (),
...@@ -1231,12 +1226,9 @@ update_edge_key (edge_heap_t *heap, struct cgraph_edge *edge) ...@@ -1231,12 +1226,9 @@ update_edge_key (edge_heap_t *heap, struct cgraph_edge *edge)
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
{ {
fprintf (dump_file, fprintf (dump_file,
" decreasing badness %s/%i -> %s/%i, %f" " decreasing badness %s -> %s, %f to %f\n",
" to %f\n", edge->caller->dump_name (),
xstrdup_for_dump (edge->caller->name ()), edge->callee->dump_name (),
edge->caller->order,
xstrdup_for_dump (edge->callee->name ()),
edge->callee->order,
n->get_key ().to_double (), n->get_key ().to_double (),
badness.to_double ()); badness.to_double ());
} }
...@@ -1248,11 +1240,9 @@ update_edge_key (edge_heap_t *heap, struct cgraph_edge *edge) ...@@ -1248,11 +1240,9 @@ update_edge_key (edge_heap_t *heap, struct cgraph_edge *edge)
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
{ {
fprintf (dump_file, fprintf (dump_file,
" enqueuing call %s/%i -> %s/%i, badness %f\n", " enqueuing call %s -> %s, badness %f\n",
xstrdup_for_dump (edge->caller->name ()), edge->caller->dump_name (),
edge->caller->order, edge->callee->dump_name (),
xstrdup_for_dump (edge->callee->name ()),
edge->callee->order,
badness.to_double ()); badness.to_double ());
} }
edge->aux = heap->insert (badness, edge); edge->aux = heap->insert (badness, edge);
...@@ -1805,8 +1795,7 @@ inline_small_functions (void) ...@@ -1805,8 +1795,7 @@ inline_small_functions (void)
bool has_speculative = false; bool has_speculative = false;
if (dump_file) if (dump_file)
fprintf (dump_file, "Enqueueing calls in %s/%i.\n", fprintf (dump_file, "Enqueueing calls in %s.\n", node->dump_name ());
node->name (), node->order);
for (edge = node->callees; edge; edge = next) for (edge = node->callees; edge; edge = next)
{ {
...@@ -1920,13 +1909,13 @@ inline_small_functions (void) ...@@ -1920,13 +1909,13 @@ inline_small_functions (void)
if (dump_file) if (dump_file)
{ {
fprintf (dump_file, fprintf (dump_file,
"\nConsidering %s/%i with %i size\n", "\nConsidering %s with %i size\n",
callee->name (), callee->order, callee->dump_name (),
ipa_fn_summaries->get (callee)->size); ipa_fn_summaries->get (callee)->size);
fprintf (dump_file, fprintf (dump_file,
" to be inlined into %s/%i in %s:%i\n" " to be inlined into %s in %s:%i\n"
" Estimated badness is %f, frequency %.2f.\n", " Estimated badness is %f, frequency %.2f.\n",
edge->caller->name (), edge->caller->order, edge->caller->dump_name (),
edge->call_stmt edge->call_stmt
&& (LOCATION_LOCUS (gimple_location ((const gimple *) && (LOCATION_LOCUS (gimple_location ((const gimple *)
edge->call_stmt)) edge->call_stmt))
......
...@@ -590,9 +590,9 @@ ipa_profile (void) ...@@ -590,9 +590,9 @@ ipa_profile (void)
if (dump_file) if (dump_file)
{ {
fprintf (dump_file, "Indirect call -> direct call from" fprintf (dump_file, "Indirect call -> direct call from"
" other module %s/%i => %s/%i, prob %3.2f\n", " other module %s => %s, prob %3.2f\n",
xstrdup_for_dump (n->name ()), n->order, n->dump_name (),
xstrdup_for_dump (n2->name ()), n2->order, n2->dump_name (),
e->indirect_info->common_target_probability e->indirect_info->common_target_probability
/ (float)REG_BR_PROB_BASE); / (float)REG_BR_PROB_BASE);
} }
......
...@@ -416,17 +416,15 @@ ipa_print_node_jump_functions (FILE *f, struct cgraph_node *node) ...@@ -416,17 +416,15 @@ ipa_print_node_jump_functions (FILE *f, struct cgraph_node *node)
{ {
struct cgraph_edge *cs; struct cgraph_edge *cs;
fprintf (f, " Jump functions of caller %s/%i:\n", node->name (), fprintf (f, " Jump functions of caller %s:\n", node->dump_name ());
node->order);
for (cs = node->callees; cs; cs = cs->next_callee) for (cs = node->callees; cs; cs = cs->next_callee)
{ {
if (!ipa_edge_args_info_available_for_edge_p (cs)) if (!ipa_edge_args_info_available_for_edge_p (cs))
continue; continue;
fprintf (f, " callsite %s/%i -> %s/%i : \n", fprintf (f, " callsite %s -> %s : \n",
xstrdup_for_dump (node->name ()), node->order, node->dump_name (),
xstrdup_for_dump (cs->callee->name ()), cs->callee->dump_name ());
cs->callee->order);
ipa_print_node_jump_functions_for_edge (f, cs); ipa_print_node_jump_functions_for_edge (f, cs);
} }
...@@ -2854,9 +2852,8 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target, ...@@ -2854,9 +2852,8 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target,
{ {
location_t loc = gimple_location_safe (ie->call_stmt); location_t loc = gimple_location_safe (ie->call_stmt);
dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, loc, dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, loc,
"discovered direct call non-invariant " "discovered direct call non-invariant %s\n",
"%s/%i\n", ie->caller->dump_name ());
ie->caller->name (), ie->caller->order);
} }
return NULL; return NULL;
} }
...@@ -2866,9 +2863,9 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target, ...@@ -2866,9 +2863,9 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target,
{ {
location_t loc = gimple_location_safe (ie->call_stmt); location_t loc = gimple_location_safe (ie->call_stmt);
dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, loc, dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, loc,
"discovered direct call to non-function in %s/%i, " "discovered direct call to non-function in %s, "
"making it __builtin_unreachable\n", "making it __builtin_unreachable\n",
ie->caller->name (), ie->caller->order); ie->caller->dump_name ());
} }
target = builtin_decl_implicit (BUILT_IN_UNREACHABLE); target = builtin_decl_implicit (BUILT_IN_UNREACHABLE);
...@@ -2895,11 +2892,9 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target, ...@@ -2895,11 +2892,9 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target,
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, "ipa-prop: Discovered call to a known target " fprintf (dump_file, "ipa-prop: Discovered call to a known target "
"(%s/%i -> %s/%i) but can not refer to it. Giving up.\n", "(%s -> %s) but can not refer to it. Giving up.\n",
xstrdup_for_dump (ie->caller->name ()), ie->caller->dump_name (),
ie->caller->order, ie->callee->dump_name ());
xstrdup_for_dump (ie->callee->name ()),
ie->callee->order);
return NULL; return NULL;
} }
callee = cgraph_node::get_create (target); callee = cgraph_node::get_create (target);
...@@ -2915,24 +2910,18 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target, ...@@ -2915,24 +2910,18 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target,
!= callee->ultimate_alias_target ()) != callee->ultimate_alias_target ())
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, "ipa-prop: Discovered call to a speculative target " fprintf (dump_file, "ipa-prop: Discovered call to a speculative "
"(%s/%i -> %s/%i) but the call is already speculated to %s/%i. Giving up.\n", "target (%s -> %s) but the call is already "
xstrdup_for_dump (ie->caller->name ()), "speculated to %s. Giving up.\n",
ie->caller->order, ie->caller->dump_name (), callee->dump_name (),
xstrdup_for_dump (callee->name ()), e2->callee->dump_name ());
callee->order,
xstrdup_for_dump (e2->callee->name ()),
e2->callee->order);
} }
else else
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, "ipa-prop: Discovered call to a speculative target " fprintf (dump_file, "ipa-prop: Discovered call to a speculative target "
"(%s/%i -> %s/%i) this agree with previous speculation.\n", "(%s -> %s) this agree with previous speculation.\n",
xstrdup_for_dump (ie->caller->name ()), ie->caller->dump_name (), callee->dump_name ());
ie->caller->order,
xstrdup_for_dump (callee->name ()),
callee->order);
} }
return NULL; return NULL;
} }
...@@ -2949,13 +2938,11 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target, ...@@ -2949,13 +2938,11 @@ ipa_make_edge_direct_to_target (struct cgraph_edge *ie, tree target,
if (dump_file && !unreachable) if (dump_file && !unreachable)
{ {
fprintf (dump_file, "ipa-prop: Discovered %s call to a %s target " fprintf (dump_file, "ipa-prop: Discovered %s call to a %s target "
"(%s/%i -> %s/%i), for stmt ", "(%s -> %s), for stmt ",
ie->indirect_info->polymorphic ? "a virtual" : "an indirect", ie->indirect_info->polymorphic ? "a virtual" : "an indirect",
speculative ? "speculative" : "known", speculative ? "speculative" : "known",
xstrdup_for_dump (ie->caller->name ()), ie->caller->dump_name (),
ie->caller->order, callee->dump_name ());
xstrdup_for_dump (callee->name ()),
callee->order);
if (ie->call_stmt) if (ie->call_stmt)
print_gimple_stmt (dump_file, ie->call_stmt, 2, TDF_SLIM); print_gimple_stmt (dump_file, ie->call_stmt, 2, TDF_SLIM);
else else
...@@ -3155,9 +3142,8 @@ remove_described_reference (symtab_node *symbol, struct ipa_cst_ref_desc *rdesc) ...@@ -3155,9 +3142,8 @@ remove_described_reference (symtab_node *symbol, struct ipa_cst_ref_desc *rdesc)
to_del->remove_reference (); to_del->remove_reference ();
if (dump_file) if (dump_file)
fprintf (dump_file, "ipa-prop: Removed a reference from %s/%i to %s.\n", fprintf (dump_file, "ipa-prop: Removed a reference from %s to %s.\n",
xstrdup_for_dump (origin->caller->name ()), origin->caller->dump_name (), xstrdup_for_dump (symbol->name ()));
origin->caller->order, xstrdup_for_dump (symbol->name ()));
return true; return true;
} }
...@@ -3272,13 +3258,13 @@ ipa_impossible_devirt_target (struct cgraph_edge *ie, tree target) ...@@ -3272,13 +3258,13 @@ ipa_impossible_devirt_target (struct cgraph_edge *ie, tree target)
{ {
if (target) if (target)
fprintf (dump_file, fprintf (dump_file,
"Type inconsistent devirtualization: %s/%i->%s\n", "Type inconsistent devirtualization: %s->%s\n",
ie->caller->name (), ie->caller->order, ie->caller->dump_name (),
IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (target))); IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (target)));
else else
fprintf (dump_file, fprintf (dump_file,
"No devirtualization target in %s/%i\n", "No devirtualization target in %s\n",
ie->caller->name (), ie->caller->order); ie->caller->dump_name ());
} }
tree new_target = builtin_decl_implicit (BUILT_IN_UNREACHABLE); tree new_target = builtin_decl_implicit (BUILT_IN_UNREACHABLE);
cgraph_node::get_create (new_target); cgraph_node::get_create (new_target);
...@@ -3607,10 +3593,9 @@ propagate_controlled_uses (struct cgraph_edge *cs) ...@@ -3607,10 +3593,9 @@ propagate_controlled_uses (struct cgraph_edge *cs)
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, "ipa-prop: Removing cloning-created " fprintf (dump_file, "ipa-prop: Removing cloning-created "
"reference from %s/%i to %s/%i.\n", "reference from %s to %s.\n",
xstrdup_for_dump (new_root->name ()), new_root->dump_name (),
new_root->order, n->dump_name ());
xstrdup_for_dump (n->name ()), n->order);
ref->remove_reference (); ref->remove_reference ();
} }
} }
...@@ -3648,11 +3633,9 @@ propagate_controlled_uses (struct cgraph_edge *cs) ...@@ -3648,11 +3633,9 @@ propagate_controlled_uses (struct cgraph_edge *cs)
if (dump_file) if (dump_file)
fprintf (dump_file, "ipa-prop: Removing " fprintf (dump_file, "ipa-prop: Removing "
"cloning-created reference " "cloning-created reference "
"from %s/%i to %s/%i.\n", "from %s to %s.\n",
xstrdup_for_dump (clone->name ()), clone->dump_name (),
clone->order, n->dump_name ());
xstrdup_for_dump (n->name ()),
n->order);
ref->remove_reference (); ref->remove_reference ();
} }
clone = clone->callers->caller; clone = clone->callers->caller;
...@@ -4030,8 +4013,7 @@ ipa_print_node_params (FILE *f, struct cgraph_node *node) ...@@ -4030,8 +4013,7 @@ ipa_print_node_params (FILE *f, struct cgraph_node *node)
if (!node->definition) if (!node->definition)
return; return;
info = IPA_NODE_REF (node); info = IPA_NODE_REF (node);
fprintf (f, " function %s/%i parameter descriptors:\n", fprintf (f, " function %s parameter descriptors:\n", node->dump_name ());
node->name (), node->order);
count = ipa_get_param_count (info); count = ipa_get_param_count (info);
for (i = 0; i < count; i++) for (i = 0; i < count; i++)
{ {
...@@ -5849,8 +5831,8 @@ ipcp_transform_function (struct cgraph_node *node) ...@@ -5849,8 +5831,8 @@ ipcp_transform_function (struct cgraph_node *node)
gcc_checking_assert (current_function_decl); gcc_checking_assert (current_function_decl);
if (dump_file) if (dump_file)
fprintf (dump_file, "Modification phase of node %s/%i\n", fprintf (dump_file, "Modification phase of node %s\n",
node->name (), node->order); node->dump_name ());
ipcp_update_bits (node); ipcp_update_bits (node);
ipcp_update_vr (node); ipcp_update_vr (node);
......
...@@ -1130,9 +1130,7 @@ pure_const_read_summary (void) ...@@ -1130,9 +1130,7 @@ pure_const_read_summary (void)
if (dump_file) if (dump_file)
{ {
int flags = flags_from_decl_or_type (node->decl); int flags = flags_from_decl_or_type (node->decl);
fprintf (dump_file, "Read info for %s/%i ", fprintf (dump_file, "Read info for %s ", node->dump_name ());
node->name (),
node->order);
if (flags & ECF_CONST) if (flags & ECF_CONST)
fprintf (dump_file, " const"); fprintf (dump_file, " const");
if (flags & ECF_PURE) if (flags & ECF_PURE)
...@@ -1269,9 +1267,8 @@ propagate_pure_const (void) ...@@ -1269,9 +1267,8 @@ propagate_pure_const (void)
funct_state w_l = get_function_state (w); funct_state w_l = get_function_state (w);
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, " Visiting %s/%i state:%s looping %i\n", fprintf (dump_file, " Visiting %s state:%s looping %i\n",
w->name (), w->dump_name (),
w->order,
pure_const_names[w_l->pure_const_state], pure_const_names[w_l->pure_const_state],
w_l->looping); w_l->looping);
...@@ -1305,10 +1302,8 @@ propagate_pure_const (void) ...@@ -1305,10 +1302,8 @@ propagate_pure_const (void)
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
{ {
fprintf (dump_file, fprintf (dump_file, " Call to %s",
" Call to %s/%i", e->callee->dump_name ());
e->callee->name (),
e->callee->order);
} }
if (avail > AVAIL_INTERPOSABLE) if (avail > AVAIL_INTERPOSABLE)
{ {
......
...@@ -599,8 +599,7 @@ generate_summary (void) ...@@ -599,8 +599,7 @@ generate_summary (void)
l = &get_reference_vars_info (node)->local; l = &get_reference_vars_info (node)->local;
fprintf (dump_file, fprintf (dump_file,
"\nFunction name:%s/%i:", "\nFunction name:%s:", node->dump_name ());
node->asm_name (), node->order);
fprintf (dump_file, "\n locals read: "); fprintf (dump_file, "\n locals read: ");
if (l->statics_read) if (l->statics_read)
EXECUTE_IF_SET_IN_BITMAP (l->statics_read, EXECUTE_IF_SET_IN_BITMAP (l->statics_read,
...@@ -636,8 +635,7 @@ read_write_all_from_decl (struct cgraph_node *node, ...@@ -636,8 +635,7 @@ read_write_all_from_decl (struct cgraph_node *node,
{ {
read_all = true; read_all = true;
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, " %s/%i -> read all\n", fprintf (dump_file, " %s -> read all\n", node->dump_name ());
node->asm_name (), node->order);
} }
else else
{ {
...@@ -646,8 +644,8 @@ read_write_all_from_decl (struct cgraph_node *node, ...@@ -646,8 +644,8 @@ read_write_all_from_decl (struct cgraph_node *node,
read_all = true; read_all = true;
write_all = true; write_all = true;
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, " %s/%i -> read all, write all\n", fprintf (dump_file, " %s -> read all, write all\n",
node->asm_name (), node->order); node->dump_name ());
} }
} }
...@@ -754,8 +752,7 @@ propagate (void) ...@@ -754,8 +752,7 @@ propagate (void)
node_g = &node_info->global; node_g = &node_info->global;
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, "Starting cycle with %s/%i\n", fprintf (dump_file, "Starting cycle with %s\n", node->dump_name ());
node->asm_name (), node->order);
vec<cgraph_node *> cycle_nodes = ipa_get_nodes_in_cycle (node); vec<cgraph_node *> cycle_nodes = ipa_get_nodes_in_cycle (node);
...@@ -763,8 +760,7 @@ propagate (void) ...@@ -763,8 +760,7 @@ propagate (void)
FOR_EACH_VEC_ELT (cycle_nodes, x, w) FOR_EACH_VEC_ELT (cycle_nodes, x, w)
{ {
if (dump_file && (dump_flags & TDF_DETAILS)) if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file, " Visiting %s/%i\n", fprintf (dump_file, " Visiting %s\n", w->dump_asm_name ());
w->asm_name (), w->order);
get_read_write_all_from_node (w, read_all, write_all); get_read_write_all_from_node (w, read_all, write_all);
if (read_all && write_all) if (read_all && write_all)
break; break;
...@@ -826,9 +822,7 @@ propagate (void) ...@@ -826,9 +822,7 @@ propagate (void)
if (node->alias || !opt_for_fn (node->decl, flag_ipa_reference)) if (node->alias || !opt_for_fn (node->decl, flag_ipa_reference))
continue; continue;
fprintf (dump_file, fprintf (dump_file, "\nFunction name:%s:", node->dump_asm_name ());
"\nFunction name:%s/%i:",
node->asm_name (), node->order);
ipa_reference_vars_info_t node_info = get_reference_vars_info (node); ipa_reference_vars_info_t node_info = get_reference_vars_info (node);
ipa_reference_global_vars_info_t node_g = &node_info->global; ipa_reference_global_vars_info_t node_g = &node_info->global;
...@@ -839,8 +833,7 @@ propagate (void) ...@@ -839,8 +833,7 @@ propagate (void)
ipa_reference_vars_info_t w_ri = get_reference_vars_info (w); ipa_reference_vars_info_t w_ri = get_reference_vars_info (w);
ipa_reference_local_vars_info_t w_l = &w_ri->local; ipa_reference_local_vars_info_t w_l = &w_ri->local;
if (w != node) if (w != node)
fprintf (dump_file, "\n next cycle: %s/%i ", fprintf (dump_file, "\n next cycle: %s ", w->dump_asm_name ());
w->asm_name (), w->order);
fprintf (dump_file, "\n locals read: "); fprintf (dump_file, "\n locals read: ");
dump_static_vars_set_to_file (dump_file, w_l->statics_read); dump_static_vars_set_to_file (dump_file, w_l->statics_read);
fprintf (dump_file, "\n locals written: "); fprintf (dump_file, "\n locals written: ");
...@@ -1120,8 +1113,8 @@ ipa_reference_read_optimization_summary (void) ...@@ -1120,8 +1113,8 @@ ipa_reference_read_optimization_summary (void)
info->statics_not_written = BITMAP_ALLOC (&optimization_summary_obstack); info->statics_not_written = BITMAP_ALLOC (&optimization_summary_obstack);
if (dump_file) if (dump_file)
fprintf (dump_file, fprintf (dump_file,
"\nFunction name:%s/%i:\n static not read:", "\nFunction name:%s:\n static not read:",
node->asm_name (), node->order); node->dump_asm_name ());
/* Set the statics not read. */ /* Set the statics not read. */
v_count = streamer_read_hwi (ib); v_count = streamer_read_hwi (ib);
......
...@@ -406,9 +406,8 @@ ipa_merge_profiles (struct cgraph_node *dst, ...@@ -406,9 +406,8 @@ ipa_merge_profiles (struct cgraph_node *dst,
return; return;
if (symtab->dump_file) if (symtab->dump_file)
{ {
fprintf (symtab->dump_file, "Merging profiles of %s/%i to %s/%i\n", fprintf (symtab->dump_file, "Merging profiles of %s to %s\n",
xstrdup_for_dump (src->name ()), src->order, src->dump_name (), dst->dump_name ());
xstrdup_for_dump (dst->name ()), dst->order);
} }
dst->count += src->count; dst->count += src->count;
......
...@@ -230,10 +230,9 @@ walk_polymorphic_call_targets (hash_set<void *> *reachable_call_targets, ...@@ -230,10 +230,9 @@ walk_polymorphic_call_targets (hash_set<void *> *reachable_call_targets,
else else
locus = UNKNOWN_LOCATION; locus = UNKNOWN_LOCATION;
dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, locus, dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, locus,
"devirtualizing call in %s/%i to %s/%i\n", "devirtualizing call in %s to %s\n",
edge->caller->name (), edge->caller->order, edge->caller->dump_name (),
target->name (), target->dump_name ());
target->order);
} }
edge = edge->make_direct (target); edge = edge->make_direct (target);
if (ipa_fn_summaries) if (ipa_fn_summaries)
...@@ -529,7 +528,7 @@ symbol_table::remove_unreachable_nodes (FILE *file) ...@@ -529,7 +528,7 @@ symbol_table::remove_unreachable_nodes (FILE *file)
if (!node->aux) if (!node->aux)
{ {
if (file) if (file)
fprintf (file, " %s/%i", node->name (), node->order); fprintf (file, " %s", node->dump_name ());
node->remove (); node->remove ();
changed = true; changed = true;
} }
...@@ -549,7 +548,7 @@ symbol_table::remove_unreachable_nodes (FILE *file) ...@@ -549,7 +548,7 @@ symbol_table::remove_unreachable_nodes (FILE *file)
if (node->definition && !node->alias && !node->thunk.thunk_p) if (node->definition && !node->alias && !node->thunk.thunk_p)
{ {
if (file) if (file)
fprintf (file, " %s/%i", node->name (), node->order); fprintf (file, " %s", node->dump_name ());
node->body_removed = true; node->body_removed = true;
node->analyzed = false; node->analyzed = false;
node->definition = false; node->definition = false;
...@@ -616,12 +615,11 @@ symbol_table::remove_unreachable_nodes (FILE *file) ...@@ -616,12 +615,11 @@ symbol_table::remove_unreachable_nodes (FILE *file)
while (vnode->iterate_direct_aliases (0, ref)) while (vnode->iterate_direct_aliases (0, ref))
{ {
if (file) if (file)
fprintf (file, " %s/%i", ref->referred->name (), fprintf (file, " %s", ref->referred->dump_name ());
ref->referred->order);
ref->referring->remove (); ref->referring->remove ();
} }
if (file) if (file)
fprintf (file, " %s/%i", vnode->name (), vnode->order); fprintf (file, " %s", vnode->dump_name ());
vnext = next_variable (vnode); vnext = next_variable (vnode);
/* Signal removal to the debug machinery. */ /* Signal removal to the debug machinery. */
if (! flag_wpa) if (! flag_wpa)
...@@ -1391,8 +1389,8 @@ ipa_single_use (void) ...@@ -1391,8 +1389,8 @@ ipa_single_use (void)
if (dump_file) if (dump_file)
{ {
fprintf (dump_file, "Variable %s/%i is used by single function\n", fprintf (dump_file, "Variable %s is used by single function\n",
var->name (), var->order); var->dump_name ());
} }
var->used_by_single_function = true; var->used_by_single_function = true;
} }
......
2017-05-23 Martin Liska <mliska@suse.cz> 2017-05-23 Martin Liska <mliska@suse.cz>
* lto-symtab.c (lto_cgraph_replace_node): Use
symtab_node::dump_{asm_,}name functions.
* lto.c (read_cgraph_and_symbols): Likewise.
(do_whole_program_analysis): Likewise.
2017-05-23 Martin Liska <mliska@suse.cz>
* lto.c (read_cgraph_and_symbols): Use the renamed function. * lto.c (read_cgraph_and_symbols): Use the renamed function.
(do_whole_program_analysis): Use the renamed function. (do_whole_program_analysis): Use the renamed function.
......
...@@ -45,11 +45,10 @@ lto_cgraph_replace_node (struct cgraph_node *node, ...@@ -45,11 +45,10 @@ lto_cgraph_replace_node (struct cgraph_node *node,
if (symtab->dump_file) if (symtab->dump_file)
{ {
fprintf (symtab->dump_file, "Replacing cgraph node %s/%i by %s/%i" fprintf (symtab->dump_file, "Replacing cgraph node %s by %s"
" for symbol %s\n", " for symbol %s\n",
node->name (), node->order, node->dump_name (),
prevailing_node->name (), prevailing_node->dump_name (),
prevailing_node->order,
IDENTIFIER_POINTER ((*targetm.asm_out.mangle_assembler_name) IDENTIFIER_POINTER ((*targetm.asm_out.mangle_assembler_name)
(IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (node->decl))))); (IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (node->decl)))));
} }
......
...@@ -3163,9 +3163,9 @@ drop_profile (struct cgraph_node *node, gcov_type call_count) ...@@ -3163,9 +3163,9 @@ drop_profile (struct cgraph_node *node, gcov_type call_count)
if (dump_file) if (dump_file)
fprintf (dump_file, fprintf (dump_file,
"Dropping 0 profile for %s/%i. %s based on calls.\n", "Dropping 0 profile for %s. %s based on calls.\n",
node->name (), node->order, node->dump_name (),
hot ? "Function is hot" : "Function is normal"); hot ? "Function is hot" : "Function is normal");
/* We only expect to miss profiles for functions that are reached /* We only expect to miss profiles for functions that are reached
via non-zero call edges in cases where the function may have via non-zero call edges in cases where the function may have
been linked from another module or library (COMDATs and extern been linked from another module or library (COMDATs and extern
...@@ -3181,12 +3181,12 @@ drop_profile (struct cgraph_node *node, gcov_type call_count) ...@@ -3181,12 +3181,12 @@ drop_profile (struct cgraph_node *node, gcov_type call_count)
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, fprintf (dump_file,
"Missing counts for called function %s/%i\n", "Missing counts for called function %s\n",
node->name (), node->order); node->dump_name ());
} }
else else
warning (0, "Missing counts for called function %s/%i", warning (0, "Missing counts for called function %s",
node->name (), node->order); node->dump_name ());
} }
profile_status_for_fn (fn) profile_status_for_fn (fn)
......
...@@ -522,6 +522,31 @@ symtab_node::name () const ...@@ -522,6 +522,31 @@ symtab_node::name () const
return lang_hooks.decl_printable_name (decl, 2); return lang_hooks.decl_printable_name (decl, 2);
} }
const char *
symtab_node::get_dump_name (bool asm_name_p) const
{
#define EXTRA 16
const char *fname = asm_name_p ? asm_name () : name ();
unsigned l = strlen (fname);
char *s = (char *)ggc_internal_cleared_alloc (l + EXTRA);
snprintf (s, l + EXTRA, "%s/%d", fname, order);
return s;
}
const char *
symtab_node::dump_name () const
{
return get_dump_name (false);
}
const char *
symtab_node::dump_asm_name () const
{
return get_dump_name (true);
}
/* Return ipa reference from this symtab_node to /* Return ipa reference from this symtab_node to
REFERED_NODE or REFERED_VARPOOL_NODE. USE_TYPE specify type REFERED_NODE or REFERED_VARPOOL_NODE. USE_TYPE specify type
of the use. */ of the use. */
...@@ -751,9 +776,8 @@ symtab_node::dump_references (FILE *file) ...@@ -751,9 +776,8 @@ symtab_node::dump_references (FILE *file)
int i; int i;
for (i = 0; iterate_reference (i, ref); i++) for (i = 0; iterate_reference (i, ref); i++)
{ {
fprintf (file, "%s/%i (%s)", fprintf (file, "%s (%s)",
ref->referred->asm_name (), ref->referred->dump_asm_name (),
ref->referred->order,
ipa_ref_use_name [ref->use]); ipa_ref_use_name [ref->use]);
if (ref->speculative) if (ref->speculative)
fprintf (file, " (speculative)"); fprintf (file, " (speculative)");
...@@ -770,9 +794,8 @@ symtab_node::dump_referring (FILE *file) ...@@ -770,9 +794,8 @@ symtab_node::dump_referring (FILE *file)
int i; int i;
for (i = 0; iterate_referring(i, ref); i++) for (i = 0; iterate_referring(i, ref); i++)
{ {
fprintf (file, "%s/%i (%s)", fprintf (file, "%s (%s)",
ref->referring->asm_name (), ref->referring->dump_asm_name (),
ref->referring->order,
ipa_ref_use_name [ref->use]); ipa_ref_use_name [ref->use]);
if (ref->speculative) if (ref->speculative)
fprintf (file, " (speculative)"); fprintf (file, " (speculative)");
...@@ -791,7 +814,7 @@ symtab_node::dump_base (FILE *f) ...@@ -791,7 +814,7 @@ symtab_node::dump_base (FILE *f)
"default", "protected", "hidden", "internal" "default", "protected", "hidden", "internal"
}; };
fprintf (f, "%s/%i (%s)", asm_name (), order, name ()); fprintf (f, "%s (%s)", dump_asm_name (), name ());
dump_addr (f, " @", (void *)this); dump_addr (f, " @", (void *)this);
fprintf (f, "\n Type: %s", symtab_type_names[type]); fprintf (f, "\n Type: %s", symtab_type_names[type]);
...@@ -874,9 +897,8 @@ symtab_node::dump_base (FILE *f) ...@@ -874,9 +897,8 @@ symtab_node::dump_base (FILE *f)
fprintf (f, "\n"); fprintf (f, "\n");
if (same_comdat_group) if (same_comdat_group)
fprintf (f, " Same comdat group as: %s/%i\n", fprintf (f, " Same comdat group as: %s\n",
same_comdat_group->asm_name (), same_comdat_group->dump_asm_name ());
same_comdat_group->order);
if (next_sharing_asm_name) if (next_sharing_asm_name)
fprintf (f, " next sharing asm name: %i\n", fprintf (f, " next sharing asm name: %i\n",
next_sharing_asm_name->order); next_sharing_asm_name->order);
......
...@@ -5190,11 +5190,8 @@ convert_callers_for_node (struct cgraph_node *node, ...@@ -5190,11 +5190,8 @@ convert_callers_for_node (struct cgraph_node *node,
push_cfun (DECL_STRUCT_FUNCTION (cs->caller->decl)); push_cfun (DECL_STRUCT_FUNCTION (cs->caller->decl));
if (dump_file) if (dump_file)
fprintf (dump_file, "Adjusting call %s/%i -> %s/%i\n", fprintf (dump_file, "Adjusting call %s -> %s\n",
xstrdup_for_dump (cs->caller->name ()), cs->caller->dump_name (), cs->callee->dump_name ());
cs->caller->order,
xstrdup_for_dump (cs->callee->name ()),
cs->callee->order);
ipa_modify_call_arguments (cs, cs->call_stmt, *adjustments); ipa_modify_call_arguments (cs, cs->call_stmt, *adjustments);
......
...@@ -1236,12 +1236,10 @@ init_node_map (bool local) ...@@ -1236,12 +1236,10 @@ init_node_map (bool local)
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, "Local profile-id %i conflict" fprintf (dump_file, "Local profile-id %i conflict"
" with nodes %s/%i %s/%i\n", " with nodes %s %s\n",
n->profile_id, n->profile_id,
n->name (), n->dump_name (),
n->order, (*val)->dump_name ());
(*val)->name (),
(*val)->order);
n->profile_id = (n->profile_id + 1) & 0x7fffffff; n->profile_id = (n->profile_id + 1) & 0x7fffffff;
} }
} }
...@@ -1249,21 +1247,18 @@ init_node_map (bool local) ...@@ -1249,21 +1247,18 @@ init_node_map (bool local)
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, fprintf (dump_file,
"Node %s/%i has no profile-id" "Node %s has no profile-id"
" (profile feedback missing?)\n", " (profile feedback missing?)\n",
n->name (), n->dump_name ());
n->order);
continue; continue;
} }
else if ((val = cgraph_node_map->get (n->profile_id))) else if ((val = cgraph_node_map->get (n->profile_id)))
{ {
if (dump_file) if (dump_file)
fprintf (dump_file, fprintf (dump_file,
"Node %s/%i has IP profile-id %i conflict. " "Node %s has IP profile-id %i conflict. "
"Giving up.\n", "Giving up.\n",
n->name (), n->dump_name (), n->profile_id);
n->order,
n->profile_id);
*val = NULL; *val = NULL;
continue; continue;
} }
......
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