summaryrefslogtreecommitdiff
path: root/gcc/loop.c
diff options
context:
space:
mode:
authorrakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-20 16:55:56 +0000
committerrakdver <rakdver@138bc75d-0d04-0410-961f-82ee72b054a4>2004-01-20 16:55:56 +0000
commit68d0c8478e8816aefd92f4851f5b79f59cf9a0d5 (patch)
treef831fe7ea8555f233d14c3f45870559afee812ef /gcc/loop.c
parent35957a6594b5487c1a9bdd6afd3e2e6d78476ed6 (diff)
downloadgcc-68d0c8478e8816aefd92f4851f5b79f59cf9a0d5.tar.gz
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@76213 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/loop.c')
-rw-r--r--gcc/loop.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/loop.c b/gcc/loop.c
index 0892724b4af..8e5cc4440d7 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -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 ();