aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraph.h
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2010-07-05 20:25:04 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2010-07-05 18:25:04 +0000
commit92eb4438684a217e0f6968d0ab996424c7af055f (patch)
tree1ae95da0182acf8c922d2c36bf583ce953dc8ba6 /gcc/cgraph.h
parent69e18c0985d5e4488b30ccae1e242e004bf274ed (diff)
downloadgcc-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.h9
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);