diff options
author | Jan Hubicka <jh@suse.cz> | 2010-07-05 20:25:04 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2010-07-05 18:25:04 +0000 |
commit | 92eb4438684a217e0f6968d0ab996424c7af055f (patch) | |
tree | 1ae95da0182acf8c922d2c36bf583ce953dc8ba6 /gcc/cgraph.h | |
parent | 69e18c0985d5e4488b30ccae1e242e004bf274ed (diff) | |
download | gcc-92eb4438684a217e0f6968d0ab996424c7af055f.zip gcc-92eb4438684a217e0f6968d0ab996424c7af055f.tar.gz gcc-92eb4438684a217e0f6968d0ab996424c7af055f.tar.bz2 |
cgraph.h (cgraph_node, [...]): Update docmentation of in_other_partition.
* cgraph.h (cgraph_node, cgraph_varpool_node): Update docmentation of
in_other_partition.
* lto-cgraph.c (referenced_from_other_partition_p,
reachable_from_other_partition_p): Use in_other_partition flags.
(output_node, output_varpool_node): COMDAT nodes always have private
copies and thus are never used from other partition.
* lto.c (add_cgraph_node_to_partition): Forward declare; walk also
nodes from same comdat group as well as all comdat functions referenced
here.
(add_varpool_node_to_partition, add_references_to_partition): New function.
(lto_1_1_map): Skip COMDAT fnctions/variables; use add_varpool_node_to_partition;
clear aux flags when done.
(lto_promote_cross_file_statics): Do not promote stuff that gets duplicated to
each ltrans.
From-SVN: r161846
Diffstat (limited to 'gcc/cgraph.h')
-rw-r--r-- | gcc/cgraph.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc/cgraph.h b/gcc/cgraph.h index ef556b9..bbce3d8 100644 --- a/gcc/cgraph.h +++ b/gcc/cgraph.h @@ -286,7 +286,9 @@ struct GTY((chain_next ("%h.next"), chain_prev ("%h.previous"))) cgraph_node { /* Set once the function has been instantiated and its callee lists created. */ unsigned analyzed : 1; - /* Set when function is available in the other LTRANS partition. */ + /* Set when function is available in the other LTRANS partition. + During WPA output it is used to mark nodes that are present in + multiple partitions. */ unsigned in_other_partition : 1; /* Set when function is scheduled to be processed by local passes. */ unsigned process : 1; @@ -497,7 +499,9 @@ struct GTY((chain_next ("%h.next"), chain_prev ("%h.prev"))) varpool_node { unsigned alias : 1; /* Set when variable is used from other LTRANS partition. */ unsigned used_from_other_partition : 1; - /* Set when variable is available in the other LTRANS partition. */ + /* Set when variable is available in the other LTRANS partition. + During WPA output it is used to mark nodes that are present in + multiple partitions. */ unsigned in_other_partition : 1; }; @@ -556,6 +560,7 @@ struct cgraph_edge *cgraph_create_edge (struct cgraph_node *, struct cgraph_edge *cgraph_create_indirect_edge (struct cgraph_node *, gimple, int, gcov_type, int, int); struct cgraph_node * cgraph_get_node (tree); +struct cgraph_node * cgraph_get_node_or_alias (tree); struct cgraph_node *cgraph_node (tree); bool cgraph_same_body_alias (tree, tree); void cgraph_add_thunk (tree, tree, bool, HOST_WIDE_INT, HOST_WIDE_INT, tree, tree); |