diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2015-02-14 19:42:49 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2015-02-14 18:42:49 +0000 |
commit | 31de760604065cf4dae5de8828321c86b15bf3c9 (patch) | |
tree | 400f48e176f588602e37c0b5ff58c528a2855b16 /gcc/ipa.c | |
parent | 065d214ce4129853330cb0c992b981830c950909 (diff) | |
download | gcc-31de760604065cf4dae5de8828321c86b15bf3c9.tar.gz |
ipa-chkp.c: Use iterate_direct_aliases.
* ipa-chkp.c: Use iterate_direct_aliases.
* symtab.c (resolution_used_from_other_file_p): Move inline.
(symtab_node::create_reference): Fix formating.
(symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases.
(symtab_node::iterate_reference): Move inline.
(symtab_node::iterate_referring): Move inline.
(symtab_node::iterate_direct_aliases): Move inline.
(symtab_node::used_from_object_file_p_worker): Inline into ...
(symtab_node::used_from_object_file_p): ... this one; move inline.
(symtab_node::call_for_symbol_and_aliases): Move inline;
use iterate_direct_aliases.
(symtab_node::call_for_symbol_and_aliases_1): New method.
(cgraph_node::call_for_symbol_and_aliases): Move inline;
use iterate_direct_aliases.
(cgraph_node::call_for_symbol_and_aliases_1): New method.
(varpool_node::call_for_node_and_aliases): Rename to ...
(varpool_node::call_for_symbol_and_aliases): ... this one; Move inline;
use iterate_direct_aliases.
(varpool_node::call_for_symbol_and_aliases_1): New method.
* ipa.c (ipa_single_use): Use iterate_direct_aliases.
(ipa_discover_readonly_nonaddressable_var): Update.
* ipa-devirt.c: Fix formating.
* cgraph.c (cgraph_node::can_remove_if_no_direct_calls_and_refs_p):
Move inline.
(cgraph_node::call_for_symbol_and_aliases): Move inline.
(cgraph_node::call_for_symbol_and_aliases_1): New function..
* cgraph.h (used_from_object_file_p_worker): Remove.
(resolution_used_from_other_file_p): Move inline.
(symtab_node::has_aliases_p): Move inline; use iterate_direct_aliases.
(symtab_node::iterate_reference): Move inline.
(symtab_node::iterate_referring): Move inline.
(symtab_node::iterate_direct_aliases): Move inline.
(symtab_node::used_from_object_file_p_worker): Inline into ...
(symtab_node::used_from_object_file_p): Move inline.
* tree-emutls.c (ipa_lower_emutls): Update.
* varpool.c (varpool_node::call_for_symbol_and_aliases_1): New method.
(varpool_node::call_for_node_and_aliases): Remove.
From-SVN: r220709
Diffstat (limited to 'gcc/ipa.c')
-rw-r--r-- | gcc/ipa.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/gcc/ipa.c b/gcc/ipa.c index 58ba3097377..c14f5992ae0 100644 --- a/gcc/ipa.c +++ b/gcc/ipa.c @@ -808,8 +808,8 @@ ipa_discover_readonly_nonaddressable_vars (void) { if (TREE_ADDRESSABLE (vnode->decl) && dump_file) fprintf (dump_file, " %s (non-addressable)", vnode->name ()); - vnode->call_for_node_and_aliases (clear_addressable_bit, NULL, - true); + vnode->call_for_symbol_and_aliases (clear_addressable_bit, NULL, + true); } if (!address_taken && !written /* Making variable in explicit section readonly can cause section @@ -819,14 +819,14 @@ ipa_discover_readonly_nonaddressable_vars (void) { if (!TREE_READONLY (vnode->decl) && dump_file) fprintf (dump_file, " %s (read-only)", vnode->name ()); - vnode->call_for_node_and_aliases (set_readonly_bit, NULL, true); + vnode->call_for_symbol_and_aliases (set_readonly_bit, NULL, true); } if (!vnode->writeonly && !read && !address_taken && written) { if (dump_file) fprintf (dump_file, " %s (write-only)", vnode->name ()); - vnode->call_for_node_and_aliases (set_writeonly_bit, &remove_p, - true); + vnode->call_for_symbol_and_aliases (set_writeonly_bit, &remove_p, + true); } } if (dump_file) @@ -1343,9 +1343,8 @@ ipa_single_use (void) single_user_map.put (var, user); /* Enqueue all aliases for re-processing. */ - for (i = 0; var->iterate_referring (i, ref); i++) - if (ref->use == IPA_REF_ALIAS - && !ref->referring->aux) + for (i = 0; var->iterate_direct_aliases (i, ref); i++) + if (!ref->referring->aux) { ref->referring->aux = first; first = dyn_cast <varpool_node *> (ref->referring); |