diff options
author | Martin Liska <mliska@suse.cz> | 2019-10-30 08:56:22 +0100 |
---|---|---|
committer | Martin Liska <marxin@gcc.gnu.org> | 2019-10-30 07:56:22 +0000 |
commit | 87f94429feeb72587549fdafd3106f1d799607ff (patch) | |
tree | 08ffc5d297681144170e188457770e59e6573fe1 /gcc/ipa-cp.c | |
parent | a62bfab5d2a332925fcf10c45b4c5d8ca499439d (diff) | |
download | gcc-87f94429feeb72587549fdafd3106f1d799607ff.zip gcc-87f94429feeb72587549fdafd3106f1d799607ff.tar.gz gcc-87f94429feeb72587549fdafd3106f1d799607ff.tar.bz2 |
Remove cgraph_local_info structure.
2019-10-30 Martin Liska <mliska@suse.cz>
* cgraph.c (cgraph_node::local_info): Transform to ...
(cgraph_node::local_info_node): ... this.
(cgraph_node::dump): Remove cgraph_local_info and
put its fields directly into cgraph_node.
(cgraph_node::get_availability): Likewise.
(cgraph_node::make_local): Likewise.
(cgraph_node::verify_node): Likewise.
* cgraph.h (struct GTY): Likewise.
* cgraphclones.c (set_new_clone_decl_and_node_flags): Likewise.
(duplicate_thunk_for_node): Likewise.
(cgraph_node::create_clone): Likewise.
(cgraph_node::create_virtual_clone): Likewise.
(cgraph_node::create_version_clone): Likewise.
* cgraphunit.c (cgraph_node::reset): Likewise.
(cgraph_node::finalize_function): Likewise.
(cgraph_node::add_new_function): Likewise.
(analyze_functions): Likewise.
* combine.c (setup_incoming_promotions): Likewise.
* config/i386/i386.c (ix86_function_regparm): Likewise.
(ix86_function_sseregparm): Likewise.
(init_cumulative_args): Likewise.
* ipa-cp.c (determine_versionability): Likewise.
(count_callers): Likewise.
(set_single_call_flag): Likewise.
(initialize_node_lattices): Likewise.
(estimate_local_effects): Likewise.
(create_specialized_node): Likewise.
(identify_dead_nodes): Likewise.
* ipa-fnsummary.c (compute_fn_summary): Likewise.
(ipa_fn_summary_generate): Likewise.
* ipa-hsa.c (check_warn_node_versionable): Likewise.
(process_hsa_functions): Likewise.
* ipa-icf.c (set_local): Likewise.
* ipa-inline-analysis.c (initialize_inline_failed): Likewise.
* ipa-inline.c (speculation_useful_p): Likewise.
* ipa-profile.c (ipa_propagate_frequency): Likewise.
(ipa_profile): Likewise.
* ipa-split.c (split_function): Likewise.
(execute_split_functions): Likewise.
* ipa-sra.c (ipa_sra_preliminary_function_checks): Likewise.
(ipa_sra_ipa_function_checks): Likewise.
* ipa-visibility.c (function_and_variable_visibility): Likewise.
* ipa.c (symbol_table::remove_unreachable_nodes): Likewise.
* lto-cgraph.c (lto_output_node): Likewise.
(input_overwrite_node): Likewise.
* multiple_target.c (expand_target_clones): Likewise.
* omp-simd-clone.c (simd_clone_create): Likewise.
* trans-mem.c (expand_call_tm): Likewise.
(ipa_tm_mayenterirr_function): Likewise.
(ipa_tm_diagnose_tm_safe): Likewise.
(ipa_tm_diagnose_transaction): Likewise.
(ipa_tm_create_version): Likewise.
(ipa_tm_transform_calls_redirect): Likewise.
(ipa_tm_execute): Likewise.
* tree-inline.c (expand_call_inline): Likewise.
From-SVN: r277601
Diffstat (limited to 'gcc/ipa-cp.c')
-rw-r--r-- | gcc/ipa-cp.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c index 23028e2..8a5f8d3 100644 --- a/gcc/ipa-cp.c +++ b/gcc/ipa-cp.c @@ -594,7 +594,7 @@ determine_versionability (struct cgraph_node *node, present. */ if (node->alias || node->thunk.thunk_p) reason = "alias or thunk"; - else if (!node->local.versionable) + else if (!node->versionable) reason = "not a tree_versionable_function"; else if (node->get_availability () <= AVAIL_INTERPOSABLE) reason = "insufficient body availability"; @@ -1150,7 +1150,7 @@ count_callers (cgraph_node *node, void *data) for (cgraph_edge *cs = node->callers; cs; cs = cs->next_caller) /* Local thunks can be handled transparently, but if the thunk cannot be optimized out, count it as a real use. */ - if (!cs->caller->thunk.thunk_p || !cs->caller->local.local) + if (!cs->caller->thunk.thunk_p || !cs->caller->local) ++*caller_count; return false; } @@ -1163,7 +1163,7 @@ set_single_call_flag (cgraph_node *node, void *) { cgraph_edge *cs = node->callers; /* Local thunks can be handled transparently, skip them. */ - while (cs && cs->caller->thunk.thunk_p && cs->caller->local.local) + while (cs && cs->caller->thunk.thunk_p && cs->caller->local) cs = cs->next_caller; if (cs) { @@ -1187,7 +1187,7 @@ initialize_node_lattices (struct cgraph_node *node) if (!ipa_get_param_count (info)) disable = true; - else if (node->local.local) + else if (node->local) { int caller_count = 0; node->call_for_symbol_thunks_and_aliases (count_callers, &caller_count, @@ -2935,7 +2935,7 @@ estimate_local_effects (struct cgraph_node *node) int devirt_bonus = devirtualization_time_bonus (node, known_csts, known_contexts, known_aggs_ptrs); if (always_const || devirt_bonus - || (removable_params_cost && node->local.can_change_signature)) + || (removable_params_cost && node->can_change_signature)) { struct caller_statistics stats; ipa_hints hints; @@ -2957,7 +2957,7 @@ estimate_local_effects (struct cgraph_node *node) fprintf (dump_file, " - context independent values, size: %i, " "time_benefit: %f\n", size, (base_time - time).to_double ()); - if (size <= 0 || node->local.local) + if (size <= 0 || node->local) { info->do_clone_for_all_contexts = true; @@ -3892,7 +3892,7 @@ create_specialized_node (struct cgraph_node *node, ipa_param_adjustments *old_adjustments = node->clone.param_adjustments; ipa_param_adjustments *new_adjustments; gcc_assert (!info->ipcp_orig_node); - gcc_assert (node->local.can_change_signature + gcc_assert (node->can_change_signature || !old_adjustments); if (old_adjustments) @@ -3907,7 +3907,7 @@ create_specialized_node (struct cgraph_node *node, for (i = 0; i < old_adj_count; i++) { ipa_adjusted_param *old_adj = &(*old_adjustments->m_adj_params)[i]; - if (!node->local.can_change_signature + if (!node->can_change_signature || old_adj->op != IPA_PARAM_OP_COPY || (!known_csts[old_adj->base_index] && ipa_is_param_used (info, old_adj->base_index))) @@ -3924,7 +3924,7 @@ create_specialized_node (struct cgraph_node *node, ipa_param_adjustments (new_params, count, skip_return)); } - else if (node->local.can_change_signature + else if (node->can_change_signature && want_remove_some_param_p (node, known_csts)) { ipa_adjusted_param adj; @@ -4990,7 +4990,7 @@ identify_dead_nodes (struct cgraph_node *node) { struct cgraph_node *v; for (v = node; v; v = ((struct ipa_dfs_info *) v->aux)->next_cycle) - if (v->local.local + if (v->local && !v->call_for_symbol_thunks_and_aliases (has_undead_caller_from_outside_scc_p, NULL, true)) IPA_NODE_REF (v)->node_dead = 1; |