summaryrefslogtreecommitdiff
path: root/gcc/ipa.c
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2014-07-24 14:25:27 +0200
committerMartin Liska <marxin@gcc.gnu.org>2014-07-24 12:25:27 +0000
commit9041d2e6d2a783f2fbd0760f9ce6002194d63d00 (patch)
tree472ea9046d4a0e5c2441a25416c6e99fb4665350 /gcc/ipa.c
parent4a53d6a66043944d9534ceae8182b943f739b8a7 (diff)
IPA C++ refactoring 2/N
* cgraph.h (varpool_node): (availability get_availability (void)): created from cgraph_variable_initializer_availability (inline varpool_node *ultimate_alias_target (availability *availability = NULL) creted from: cgraph_variable_initializer_availability (inline varpool_node *get_alias_target (void)): created from varpool_alias_target (void finalize_named_section_flags (void)): created from varpool_finalize_named_section_flags (bool assemble_decl (void)): created from varpool_assemble_decl (void analyze (void)): created from varpool_analyze_node (bool call_for_node_and_aliases (bool (*callback) (varpool_node *, void *), void *data, bool include_overwritable)): created fromvarpool_for_node_and_aliases (void remove_initializer (void)): created from varpool_remove_initializer (tree get_constructor (void)): created from varpool_get_constructor (bool externally_visible_p (void)): created from varpool_externally_visible_p (bool ctor_useable_for_folding_p (void)): created from varpool_ctor_useable_for_folding_p (inline bool all_refs_explicit_p ()): created from varpool_all_refs_explicit_p (inline bool can_remove_if_no_refs_p (void)): created from varpool_can_remove_if_no_refs (static inline varpool_node *get (const_tree decl)): created from varpool_get_node (static void finalize_decl (tree decl)): created from varpool_finalize_decl (static bool output_variables (void)): created from varpool_output_variables (static varpool_node * create_extra_name_alias (tree alias, tree decl)): created from varpool_extra_name_alias (static varpool_node * create_alias (tree, tree)): created from varpool_create_variable_alias (static void dump_varpool (FILE *f)): created from dump_varpool (static void DEBUG_FUNCTION debug_varpool (void)): created from debug_varpool (static varpool_node *create_empty (void)): created from varpool_create_empty_node (static varpool_node *get_create (tree decl)): created from varpool_node_for_decl (static varpool_node *get_for_asmname (tree asmname)): created from varpool_node_for_asm (void assemble_aliases (void)): created from assemble_aliases From-SVN: r212984
Diffstat (limited to 'gcc/ipa.c')
-rw-r--r--gcc/ipa.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/gcc/ipa.c b/gcc/ipa.c
index 42dce671ab3..8198b174920 100644
--- a/gcc/ipa.c
+++ b/gcc/ipa.c
@@ -313,7 +313,7 @@ symtab_remove_unreachable_nodes (bool before_inlining_p, FILE *file)
/* Mark variables that are obviously needed. */
FOR_EACH_DEFINED_VARIABLE (vnode)
- if (!varpool_can_remove_if_no_refs (vnode)
+ if (!vnode->can_remove_if_no_refs_p()
&& !vnode->in_other_partition)
{
pointer_set_insert (reachable, vnode);
@@ -548,7 +548,7 @@ symtab_remove_unreachable_nodes (bool before_inlining_p, FILE *file)
/* Keep body if it may be useful for constant folding. */
if ((init = ctor_for_folding (vnode->decl)) == error_mark_node)
- varpool_remove_initializer (vnode);
+ vnode->remove_initializer ();
else
DECL_INITIAL (vnode->decl) = init;
vnode->remove_all_references ();
@@ -611,7 +611,7 @@ process_references (varpool_node *vnode,
int i;
struct ipa_ref *ref;
- if (!varpool_all_refs_explicit_p (vnode)
+ if (!vnode->all_refs_explicit_p ()
|| TREE_THIS_VOLATILE (vnode->decl))
*explicit_refs = false;
@@ -702,7 +702,7 @@ ipa_discover_readonly_nonaddressable_vars (void)
{
if (TREE_ADDRESSABLE (vnode->decl) && dump_file)
fprintf (dump_file, " %s (non-addressable)", vnode->name ());
- varpool_for_node_and_aliases (vnode, clear_addressable_bit, NULL, true);
+ vnode->call_for_node_and_aliases (clear_addressable_bit, NULL, true);
}
if (!address_taken && !written
/* Making variable in explicit section readonly can cause section
@@ -712,13 +712,13 @@ ipa_discover_readonly_nonaddressable_vars (void)
{
if (!TREE_READONLY (vnode->decl) && dump_file)
fprintf (dump_file, " %s (read-only)", vnode->name ());
- varpool_for_node_and_aliases (vnode, set_readonly_bit, NULL, true);
+ vnode->call_for_node_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 ());
- varpool_for_node_and_aliases (vnode, set_writeonly_bit, NULL, true);
+ vnode->call_for_node_and_aliases (set_writeonly_bit, NULL, true);
}
}
if (dump_file)
@@ -1143,7 +1143,7 @@ propagate_single_user (varpool_node *vnode, cgraph_node *function,
/* If node is an alias, first meet with its target. */
if (vnode->alias)
- function = meet (function, varpool_alias_target (vnode), single_user_map);
+ function = meet (function, vnode->get_alias_target (), single_user_map);
/* Check all users and see if they correspond to a single function. */
for (i = 0; vnode->iterate_referring (i, ref) && function != BOTTOM; i++)
@@ -1176,7 +1176,7 @@ ipa_single_use (void)
hash_map<varpool_node *, cgraph_node *> single_user_map;
FOR_EACH_DEFINED_VARIABLE (var)
- if (!varpool_all_refs_explicit_p (var))
+ if (!var->all_refs_explicit_p ())
var->aux = BOTTOM;
else
{