diff options
author | Andrew Pinski <pinskia@physics.uc.edu> | 2004-01-02 22:42:31 +0000 |
---|---|---|
committer | Andrew Pinski <pinskia@gcc.gnu.org> | 2004-01-02 14:42:31 -0800 |
commit | 36579663a4c7dde7e8fe9ba08881f52bddc98774 (patch) | |
tree | 1c920bceeac5ffd62788c5e2ffe2669129d020bc /gcc | |
parent | e4796f1c880f4308700c8b019e5b4494a593ce70 (diff) | |
download | gcc-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/ChangeLog | 11 | ||||
-rw-r--r-- | gcc/c-typeck.c | 2 | ||||
-rw-r--r-- | gcc/cfgloop.c | 4 | ||||
-rw-r--r-- | gcc/predict.c | 3 |
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. */ |