diff options
author | Jan Hubicka <jh@suse.cz> | 2010-09-03 12:15:54 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2010-09-03 10:15:54 +0000 |
commit | 155c92a7a0a4ce7738d1d8851e572ea790f34ffb (patch) | |
tree | 557b00c4e086e7d798393273321f3907a7d16cb4 /gcc/cgraph.h | |
parent | cb1b497ec14f9e4c5ef5e15a8a0b2f454f5a1dfc (diff) | |
download | gcc-155c92a7a0a4ce7738d1d8851e572ea790f34ffb.tar.gz |
cgraph.h (struct varpool_node): Add const_value_known.
* cgraph.h (struct varpool_node): Add const_value_known.
(varpool_decide_const_value_known): Declare.
* tree-ssa-ccp.c (fold_const_aggregate_ref): Update initializer folding.
* lto-cgraph.c (lto_output_varpool_node): Store const_value_known.
(input_varpool_node): Restore const_value_known.
* tree-ssa-loop-ivcanon (constant_after_peeling): Check varpool for
initializer folding.
* ipa.c (ipa_discover_readonly_nonaddressable_var,
function_and_variable_visibility): Compute const_value_known.
* gimple-fold.c (get_symbol_constant_value): Use varpool for initializer
folding.
* varpool.c (varpool_decide_const_value_known): New function.
From-SVN: r163808
Diffstat (limited to 'gcc/cgraph.h')
-rw-r--r-- | gcc/cgraph.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cgraph.h b/gcc/cgraph.h index f77a280d12f..c868d329542 100644 --- a/gcc/cgraph.h +++ b/gcc/cgraph.h @@ -503,6 +503,8 @@ struct GTY((chain_next ("%h.next"), chain_prev ("%h.prev"))) varpool_node { During WPA output it is used to mark nodes that are present in multiple partitions. */ unsigned in_other_partition : 1; + /* True when variable is constant and its value is known. */ + unsigned int const_value_known : 1; }; /* Every top level asm statement is put into a cgraph_asm_node. */ @@ -726,6 +728,7 @@ void varpool_empty_needed_queue (void); bool varpool_extra_name_alias (tree, tree); const char * varpool_node_name (struct varpool_node *node); void varpool_reset_queue (void); +bool varpool_decide_const_value_known (struct varpool_node *node); /* Walk all reachable static variables. */ #define FOR_EACH_STATIC_VARIABLE(node) \ |