IA MCU psABI support: changes to libraries
[gcc.git] / gcc / stringpool.c
index c880cb1e6785b132f58392c6a75d0bc10097c6b1..393834afcd5b998bcf447546802426aadd59bc9c 100644 (file)
@@ -1,5 +1,5 @@
 /* String pool for GCC.
-   Copyright (C) 2000-2014 Free Software Foundation, Inc.
+   Copyright (C) 2000-2015 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -28,10 +28,11 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 #include "system.h"
 #include "coretypes.h"
-#include "ggc.h"
 #include "ggc-internal.h"
-#include "tree.h"
+#include "alias.h"
 #include "symtab.h"
+#include "options.h"
+#include "tree.h"
 #include "cpplib.h"
 
 /* The "" allocated string.  */
@@ -61,6 +62,11 @@ stringpool_ggc_alloc (size_t x)
 void
 init_stringpool (void)
 {
+  /* Clean up if we're called more than once.
+     (We can't make this idempotent since identifiers contain state) */
+  if (ident_hash)
+    ht_destroy (ident_hash);
+
   /* Create with 16K (2^14) entries.  */
   ident_hash = ht_create (14);
   ident_hash->alloc_node = alloc_node;