diff options
| -rw-r--r-- | gcc/ChangeLog | 7 | ||||
| -rw-r--r-- | gcc/Makefile.in | 2 | ||||
| -rw-r--r-- | gcc/loop.c | 6 |
3 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2a47a1b..f5565dc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-01-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> + + PR optimization/12440 + * loop.c: Include ggc.h. + (loop_optimize): Run garbage collector between optimization of loops. + * Makefile.in (loop.o): Add GGC_H dependency. + 2004-01-20 Hartmut Penner <hpenner@de.ibm.com> * gcc/config/rs6000/rs6000.c (function_arg) Handle diff --git a/gcc/Makefile.in b/gcc/Makefile.in index a48a4f5..7ace8ce 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -1668,7 +1668,7 @@ value-prof.o : value-prof.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) loop.o : loop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) flags.h $(LOOP_H) \ insn-config.h $(REGS_H) hard-reg-set.h $(RECOG_H) $(EXPR_H) \ real.h $(PREDICT_H) $(BASIC_BLOCK_H) function.h cfgloop.h \ - toplev.h varray.h except.h cselib.h $(OPTABS_H) $(TM_P_H) + toplev.h varray.h except.h cselib.h $(OPTABS_H) $(TM_P_H) $(GGC_H) doloop.o : doloop.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) flags.h \ $(LOOP_H) $(EXPR_H) hard-reg-set.h $(BASIC_BLOCK_H) $(TM_P_H) toplev.h \ cfgloop.h @@ -65,6 +65,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "insn-flags.h" #include "optabs.h" #include "cfgloop.h" +#include "ggc.h" /* Not really meaningful values, but at least something. */ #ifndef SIMULTANEOUS_PREFETCHES @@ -534,7 +535,10 @@ loop_optimize (rtx f, FILE *dumpfile, int flags) struct loop *loop = &loops->array[i]; if (! loop->invalid && loop->end) - scan_loop (loop, flags); + { + scan_loop (loop, flags); + ggc_collect (); + } } end_alias_analysis (); |
