aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2012-04-14 12:24:59 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2012-04-14 10:24:59 +0000
commit960bfb6929fa5c463267b962b9ff9dabdb6df3f3 (patch)
tree7b0127a94d4c70c75f4d133c7806c59bc61566c2 /gcc/cp
parent30d1ab7583da1d36deae5885fe9c92608cb6e929 (diff)
downloadgcc-960bfb6929fa5c463267b962b9ff9dabdb6df3f3.zip
gcc-960bfb6929fa5c463267b962b9ff9dabdb6df3f3.tar.gz
gcc-960bfb6929fa5c463267b962b9ff9dabdb6df3f3.tar.bz2
cgraph.h: Update copyrights;
* cgraph.h: Update copyrights; (symtab_node): Turn to union typedef. (symtab_node_base): New structure. (symtab_type): Add SYMTAB_SYMBOL tag. * cgraph.c: Update references to fields (cgraph_hash, assembler_name_hash): Turn into symtab_node. (cgraph_local_info): Remove lto_file_data and externally_visible. (cgraph_node): Remove decl; same_comdat_group list; aux; ref_list; order; address_taken; reachable_from_other_parittion, in_other_partition; resolution. (varpool_node): Remove decl; same_comdat_group; ref_list; lto_file_data; aux; order; resolution; externally_visible; used_from_other_partition; in_other_partition. (symtab_node_def); New union. (cgraph, varpool): Update. (varpool_first_static_initializer, varpool_next_static_initializer, cgraph_only_called_directly_or_aliased_p, varpool_can_remove_if_no_refs, varpool_can_remove_if_no_refs, varpool_all_refs_explicit_p, cgraph_alias_aliased_node, varpool_alias_aliased_node, cgraph_edge_recursive_p): Update field references. * cgraph.c: Likewise. * cgraphbuild.c: Likewise. * lto-symtab.c: Likewise. * c-gimplify.c: Likewise. * value-prof.c: Likewise. * tree.c: Likewise. * ipa-cp.c: Likewise. * tree-emutls.c: Likewise. * ipa-inline-transform.c: Likwise. * ipa-reference.c: Likewise. * cgraphunit.c: Likewise. * ipa-ref.c: Likewise. * lto-cgraph.c: Likewise. * ipa-ref-inline.h: Likewise. * ipa-pure-const.c: Likewise. * lto-streamer-out.c: Likewise. * ipa-utils.c: Likewise. * ipa-inline.c: Likewise. * matrix-reorg.c: Likewise. * tree-eh.c: Likewise. * tree-vectorizer.c: Likewise. * ipa-split.c: Likewise. * ipa.c: Likewise. * trans-mem.c: Likewise. * ipa-inline-analysis.c: Likewise. * gimplify.c: Likewise. * cfgexpand.c: Likewise. * tree-sra.c: Likewise. * ipa-prop.c: Likewise. * varasm.c: Likewise. * tree-nested.c: Likewise. * tree-inline.c: Likewise. * tree-profile.c: Likewise. * tree-ssa-structalias.c: Likewise. * passes.c: Likewise. * varpool.c: Likewise. * tree.c: Update field referenced for new cgraph/varpool layout. * decl2.c: Likewise. * gcc-interface/trans.c (finalize_nrv): Update field referenced for new cgraph/varpool layout. * lto.c: Update field referenced for new cgraph/varpool layout. * lto-partition.c: Likewise. From-SVN: r186450
Diffstat (limited to 'gcc/cp')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/decl2.c16
-rw-r--r--gcc/cp/tree.c2
3 files changed, 14 insertions, 9 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index e7e9b7e..a00d781 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2012-04-14 Jan Hubicka <jh@suse.cz>
+
+ * tree.c: Update field referenced for new cgraph/varpool layout.
+ * decl2.c: Likewise.
+
2012-04-13 Jason Merrill <jason@redhat.com>
PR c++/52824
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index 212feea..e7fb0f5 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -1898,7 +1898,7 @@ maybe_emit_vtables (tree ctype)
{
current = varpool_node (vtbl);
if (last)
- last->same_comdat_group = current;
+ last->symbol.same_comdat_group = (symtab_node) current;
last = current;
if (!first)
first = current;
@@ -1906,7 +1906,7 @@ maybe_emit_vtables (tree ctype)
}
if (first != last)
- last->same_comdat_group = first;
+ last->symbol.same_comdat_group = (symtab_node)first;
/* Since we're writing out the vtable here, also write the debug
info. */
@@ -3491,7 +3491,7 @@ collect_candidates_for_java_method_aliases (void)
for (node = cgraph_nodes; node ; node = node->next)
{
- tree fndecl = node->decl;
+ tree fndecl = node->symbol.decl;
if (DECL_CONTEXT (fndecl)
&& TYPE_P (DECL_CONTEXT (fndecl))
@@ -3525,7 +3525,7 @@ build_java_method_aliases (struct pointer_set_t *candidates)
for (node = cgraph_nodes; node ; node = node->next)
{
- tree fndecl = node->decl;
+ tree fndecl = node->symbol.decl;
if (TREE_ASM_WRITTEN (fndecl)
&& pointer_set_contains (candidates, fndecl))
@@ -3706,7 +3706,7 @@ collect_all_refs (const char *source_file)
static bool
clear_decl_external (struct cgraph_node *node, void *data ATTRIBUTE_UNUSED)
{
- DECL_EXTERNAL (node->decl) = 0;
+ DECL_EXTERNAL (node->symbol.decl) = 0;
return false;
}
@@ -3945,10 +3945,10 @@ cp_write_global_declarations (void)
/* If we mark !DECL_EXTERNAL one of the symbols in some comdat
group, we need to mark all symbols in the same comdat group
that way. */
- if (node->same_comdat_group)
- for (next = node->same_comdat_group;
+ if (node->symbol.same_comdat_group)
+ for (next = cgraph (node->symbol.same_comdat_group);
next != node;
- next = next->same_comdat_group)
+ next = cgraph (next->symbol.same_comdat_group))
cgraph_for_node_and_aliases (next, clear_decl_external,
NULL, true);
}
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c
index 0577759..96a403f 100644
--- a/gcc/cp/tree.c
+++ b/gcc/cp/tree.c
@@ -3508,7 +3508,7 @@ cp_fix_function_decl_p (tree decl)
/* Don't fix same_body aliases. Although they don't have their own
CFG, they share it with what they alias to. */
if (!node || !node->alias
- || !VEC_length (ipa_ref_t, node->ref_list.references))
+ || !VEC_length (ipa_ref_t, node->symbol.ref_list.references))
return true;
}