aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAndrew Pinski <pinskia@physics.uc.edu>2004-01-02 22:42:31 +0000
committerAndrew Pinski <pinskia@gcc.gnu.org>2004-01-02 14:42:31 -0800
commit36579663a4c7dde7e8fe9ba08881f52bddc98774 (patch)
tree1c920bceeac5ffd62788c5e2ffe2669129d020bc /gcc
parente4796f1c880f4308700c8b019e5b4494a593ce70 (diff)
downloadgcc-36579663a4c7dde7e8fe9ba08881f52bddc98774.zip
gcc-36579663a4c7dde7e8fe9ba08881f52bddc98774.tar.gz
gcc-36579663a4c7dde7e8fe9ba08881f52bddc98774.tar.bz2
c-typeck.c (finish_init): Free spelling_base before setting it again.
2004-01-02 Andrew Pinski <pinskia@physics.uc.edu> * c-typeck.c (finish_init): Free spelling_base before setting it again. * cfgloop.c (flow_loops_find): Always free the sbitmap headers. * predict.c (estimate_probability): Free bbs after being done with it. From-SVN: r75337
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/c-typeck.c2
-rw-r--r--gcc/cfgloop.c4
-rw-r--r--gcc/predict.c3
4 files changed, 18 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e387cbc..80297cf 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,14 @@
+2004-01-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-typeck.c (finish_init): Free spelling_base before
+ setting it again.
+
+ * cfgloop.c (flow_loops_find): Always free the sbitmap
+ headers.
+
+ * predict.c (estimate_probability): Free bbs after being
+ done with it.
+
2004-01-02 Kazu Hirata <kazu@cs.umass.edu>
* config/mn10300/mn10300.h (PREDICATE_CODES): Add
diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c
index 682cbc0..3a71ee7 100644
--- a/gcc/c-typeck.c
+++ b/gcc/c-typeck.c
@@ -4450,6 +4450,8 @@ finish_init (void)
abort ();
/* Pop back to the data of the outer initializer (if any). */
+ free (spelling_base);
+
constructor_decl = p->decl;
constructor_asmspec = p->asmspec;
require_constant_value = p->require_constant_value;
diff --git a/gcc/cfgloop.c b/gcc/cfgloop.c
index 43c52f2..37cf8f4 100644
--- a/gcc/cfgloop.c
+++ b/gcc/cfgloop.c
@@ -883,8 +883,6 @@ flow_loops_find (struct loops *loops, int flags)
loop->num_nodes = flow_loop_nodes_find (loop->header, loop);
}
- sbitmap_free (headers);
-
/* Assign the loop nesting depth and enclosed loop level for each
loop. */
loops->levels = flow_loops_level_compute (loops);
@@ -900,6 +898,8 @@ flow_loops_find (struct loops *loops, int flags)
free_dominance_info (CDI_DOMINATORS);
}
+ sbitmap_free (headers);
+
loops->state = 0;
#ifdef ENABLE_CHECKING
verify_flow_info ();
diff --git a/gcc/predict.c b/gcc/predict.c
index 74a1f24..0cba3a5 100644
--- a/gcc/predict.c
+++ b/gcc/predict.c
@@ -467,6 +467,9 @@ estimate_probability (struct loops *loops_info)
- predictor_info [(int) PRED_LOOP_EXIT].hitrate)
/ exits);
}
+
+ /* Free basic blocks from get_loop_body. */
+ free (bbs);
}
/* Attempt to predict conditional jumps using a number of heuristics. */