diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-12 13:49:34 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-12 13:49:34 +0000 |
commit | 6f932b06df8837c89ebb97e12c497f86d08b7f60 (patch) | |
tree | 8ecab4363a29f5b524dad95f3f7d8676be43b1c6 /gcc/varasm.c | |
parent | 3b3493548e265a528b82875f96a9782c5d11edcb (diff) | |
download | gcc-6f932b06df8837c89ebb97e12c497f86d08b7f60.tar.gz |
* cgraph.h (struct varpool_node): Add aux.
* varasm.c (find_decl_and_mark_needed): Force output of varpool nodes.
* varpool.c (varpool_remove_node): Do not remove initializer.
(varpool_reset_queue): Export.
(varpool_finalize_decl): Volatile vars are forced to be output.
* lto-symtab.c (lto_varpool_replace_node): Clear out initializer of
replaced decl.
* ipa.c (enqueue_cgraph_node, enqueue_varpool_node,
process_references, varpool_can_remove_if_no_refs): New functions.
(cgraph_remove_unreachable_nodes): Handle variables too.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159321 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/varasm.c')
-rw-r--r-- | gcc/varasm.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c index 9f2f0a6f957..15ff1b3c212 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -5650,6 +5650,7 @@ find_decl_and_mark_needed (tree decl, tree target) else if (vnode) { varpool_mark_needed_node (vnode); + vnode->force_output = 1; return vnode->decl; } else |