From: hubicka Date: Sun, 30 May 2010 15:39:37 +0000 (+0000) Subject: * toplev.c (wrapup_global_declaration_2): Avoid creation of new varpool X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c087e689da9b45056cd6f2df2ddded28e318d0d4;p=thirdparty%2Fgcc.git * toplev.c (wrapup_global_declaration_2): Avoid creation of new varpool nodes git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160056 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 26b1dbb059f7..2c3b0004d54b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2010-05-30 Jan Hubicka + + * toplev.c (wrapup_global_declaration_2): Avoid creation of new varpool + nodes + 2010-05-30 Richard Guenther * tree-cfg.c (verify_gimple_assign_single): Implement diff --git a/gcc/toplev.c b/gcc/toplev.c index dc677a3080c8..ff4c85049070 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -772,17 +772,19 @@ wrapup_global_declaration_2 (tree decl) { struct varpool_node *node; bool needed = true; - node = varpool_node (decl); + node = varpool_get_node (decl); - if (node->finalized) + if (!node && flag_ltrans) needed = false; - else if (node->alias) + else if (node && node->finalized) + needed = false; + else if (node && node->alias) needed = false; else if (!cgraph_global_info_ready && (TREE_USED (decl) || TREE_USED (DECL_ASSEMBLER_NAME (decl)))) /* needed */; - else if (node->needed) + else if (node && node->needed) /* needed */; else if (DECL_COMDAT (decl)) needed = false;