summaryrefslogtreecommitdiff
path: root/gcc/lists.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1999-09-08 04:46:28 -0700
committerRichard Henderson <rth@gcc.gnu.org>1999-09-08 04:46:28 -0700
commit7cf3d8b413d6c4de263ff9e8049481760e9bb3d5 (patch)
tree293e64cd3e51def1b9610239226205650ee003aa /gcc/lists.c
parent29ffdfbb0f93ac4ee072ae0c818c2b75d5f8cff1 (diff)
downloadgcc-7cf3d8b413d6c4de263ff9e8049481760e9bb3d5.tar.gz
lists.c: Include ggc.h.
* lists.c: Include ggc.h. (zap_lists): New. (init_EXPR_INSN_LIST_cache): Install it. From-SVN: r29205
Diffstat (limited to 'gcc/lists.c')
-rw-r--r--gcc/lists.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/lists.c b/gcc/lists.c
index 331b9538b3d..e0cb419e68e 100644
--- a/gcc/lists.c
+++ b/gcc/lists.c
@@ -22,6 +22,7 @@ Boston, MA 02111-1307, USA. */
#include "system.h"
#include "toplev.h"
#include "rtl.h"
+#include "ggc.h"
/* Functions for maintaining cache-able lists of EXPR_LIST and INSN_LISTs. */
@@ -104,9 +105,25 @@ alloc_EXPR_LIST (kind, val, next)
}
/* This function will initialize the EXPR_LIST and INSN_LIST caches. */
+
+static void
+zap_lists (dummy)
+ void *dummy ATTRIBUTE_UNUSED;
+{
+ unused_expr_list = NULL;
+ unused_insn_list = NULL;
+}
+
void
init_EXPR_INSN_LIST_cache ()
{
+ static int initialized;
+ if (!initialized)
+ {
+ initialized = 1;
+ ggc_add_root (&unused_expr_list, 1, 1, zap_lists);
+ }
+
unused_expr_list = NULL;
unused_insn_list = NULL;
}