diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2015-11-29 23:33:23 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2015-11-29 22:33:23 +0000 |
commit | f1703a2e2b3fefa60a70e08f30be5fb4a7fd8b4f (patch) | |
tree | b119bcfa394a1eeb2b5f120d0165f4e631cf136b /gcc/symtab.c | |
parent | a4850ce9b58d12158248dc7fbe1015646757c813 (diff) | |
download | gcc-f1703a2e2b3fefa60a70e08f30be5fb4a7fd8b4f.zip gcc-f1703a2e2b3fefa60a70e08f30be5fb4a7fd8b4f.tar.gz gcc-f1703a2e2b3fefa60a70e08f30be5fb4a7fd8b4f.tar.bz2 |
cgraph.c (cgraph_node::make_local): No name is unique during incremental linking.
* cgraph.c (cgraph_node::make_local): No name is unique during
incremental linking.
* cgraph.h (can_be_discarded_p): Update comment; also common and
WEAK in named sections can be discarded; when doing incremental
link do not rely on resolution being the final one.
* varasm.c (default_binds_local_p_3, decl_binds_to_current_def_p):
When symbol can be discarded, do not rely on resolution info.
* symtab.c (symtab_node::nonzero_address): Take into account that
symbol can be discarded.
* ipa-visibility.c (update_visibility_by_resolution_info): Handle
definition correctly.
(function_and_variable_visibility): Do not set unique_name when
incrementally linking.
From-SVN: r231050
Diffstat (limited to 'gcc/symtab.c')
-rw-r--r-- | gcc/symtab.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/symtab.c b/gcc/symtab.c index 9677131..c188710 100644 --- a/gcc/symtab.c +++ b/gcc/symtab.c @@ -1713,6 +1713,7 @@ symtab_node::nonzero_address () return true; if (target->resolution != LDPR_UNKNOWN && target->resolution != LDPR_UNDEF + && !target->can_be_discarded_p () && flag_delete_null_pointer_checks) return true; return false; @@ -1751,6 +1752,7 @@ symtab_node::nonzero_address () /* As the last resort, check the resolution info. */ if (resolution != LDPR_UNKNOWN && resolution != LDPR_UNDEF + && !can_be_discarded_p () && flag_delete_null_pointer_checks) return true; return false; |