diff options
author | Jan Hubicka <jh@suse.cz> | 2010-05-30 14:27:18 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2010-05-30 12:27:18 +0000 |
commit | 0b9c3a04049b790ea3aa6afcfef611088496be9d (patch) | |
tree | 54525b369a3f43f52419d119f1ac56900fff36f6 /gcc/dwarf2out.c | |
parent | d56026c21e98183dd543b799ba3a1e1adea9a22c (diff) | |
download | gcc-0b9c3a04049b790ea3aa6afcfef611088496be9d.zip gcc-0b9c3a04049b790ea3aa6afcfef611088496be9d.tar.gz gcc-0b9c3a04049b790ea3aa6afcfef611088496be9d.tar.bz2 |
dwarf2out.c (reference_to_unused, [...]): Avoid creating of new varool nodes.
* dwarf2out.c (reference_to_unused,
premark_types_used_by_global_vars_helper): Avoid creating of new
varool nodes.
From-SVN: r160052
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r-- | gcc/dwarf2out.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index eec92d3..48f5fa4 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -15938,8 +15938,8 @@ reference_to_unused (tree * tp, int * walk_subtrees, return *tp; else if (TREE_CODE (*tp) == VAR_DECL) { - struct varpool_node *node = varpool_node (*tp); - if (!node->needed) + struct varpool_node *node = varpool_get_node (*tp); + if (!node || !node->needed) return *tp; } else if (TREE_CODE (*tp) == FUNCTION_DECL @@ -18213,8 +18213,8 @@ premark_types_used_by_global_vars_helper (void **slot, { /* Ask cgraph if the global variable really is to be emitted. If yes, then we'll keep the DIE of ENTRY->TYPE. */ - struct varpool_node *node = varpool_node (entry->var_decl); - if (node->needed) + struct varpool_node *node = varpool_get_node (entry->var_decl); + if (node && node->needed) { die->die_perennial_p = 1; /* Keep the parent DIEs as well. */ |