aboutsummaryrefslogtreecommitdiff
path: root/gcc/varpool.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/varpool.c')
-rw-r--r--gcc/varpool.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/gcc/varpool.c b/gcc/varpool.c
index f1f6a31..41b83d7 100644
--- a/gcc/varpool.c
+++ b/gcc/varpool.c
@@ -38,6 +38,7 @@ along with GCC; see the file COPYING3. If not see
#include "tree-ssa-alias.h"
#include "gimple.h"
#include "lto-streamer.h"
+#include "hash-set.h"
const char * const tls_model_names[]={"none", "tls-emulated", "tls-real",
"tls-global-dynamic", "tls-local-dynamic",
@@ -577,7 +578,7 @@ varpool_remove_unreferenced_decls (void)
varpool_node *first = (varpool_node *)(void *)1;
int i;
struct ipa_ref *ref = NULL;
- struct pointer_set_t *referenced = pointer_set_create ();
+ hash_set<varpool_node *> referenced;
if (seen_error ())
return;
@@ -624,7 +625,7 @@ varpool_remove_unreferenced_decls (void)
&& vnode->analyzed)
enqueue_node (vnode, &first);
else
- pointer_set_insert (referenced, node);
+ referenced.add (node);
}
}
if (cgraph_dump_file)
@@ -636,13 +637,13 @@ varpool_remove_unreferenced_decls (void)
{
if (cgraph_dump_file)
fprintf (cgraph_dump_file, " %s", node->asm_name ());
- if (pointer_set_contains (referenced, node))
+ if (referenced.contains (node))
node->remove_initializer ();
else
node->remove ();
}
}
- pointer_set_destroy (referenced);
+
if (cgraph_dump_file)
fprintf (cgraph_dump_file, "\n");
}