OSDN Git Service

* lists.c: Include ggc.h.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 8 Sep 1999 11:46:28 +0000 (11:46 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 8 Sep 1999 11:46:28 +0000 (11:46 +0000)
        (zap_lists): New.
        (init_EXPR_INSN_LIST_cache): Install it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@29205 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/Makefile.in
gcc/lists.c

index 9e692da..e7059a9 100644 (file)
@@ -1,3 +1,9 @@
+Wed Sep  8 04:43:22 1999  Richard Henderson  <rth@cygnus.com>
+
+       * lists.c: Include ggc.h.
+       (zap_lists): New.
+       (init_EXPR_INSN_LIST_cache): Install it.
+
 Wed Sep  8 11:14:25 1999  Andreas Schwab  <schwab@suse.de>
 
        * cccp.c (main): Fix handling of -include and -imacros options.
index ce56466..6ce461c 100644 (file)
@@ -1607,7 +1607,7 @@ reg-stack.o : reg-stack.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) recog.h \
    $(REGS_H) hard-reg-set.h flags.h insn-config.h insn-flags.h toplev.h \
    varray.h function.h
 dyn-string.o: dyn-string.c dyn-string.h $(CONFIG_H) system.h
-lists.o: lists.c $(CONFIG_H) system.h toplev.h $(RTL_H)
+lists.o: lists.c $(CONFIG_H) system.h toplev.h $(RTL_H) ggc.h
 
 $(out_object_file): $(out_file) $(CONFIG_H) $(TREE_H) ggc.h \
    $(RTL_H) $(REGS_H) hard-reg-set.h real.h insn-config.h conditions.h \
index 331b953..e0cb419 100644 (file)
@@ -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;
 }