From 8c54631db7c7cb9be466b5764429d072de8d89d7 Mon Sep 17 00:00:00 2001 From: Sebastian Pop Date: Wed, 25 Nov 2009 05:28:32 +0000 Subject: [PATCH] graphite-clast-to-gimple.c (gloog): Free if_region, if_region->true_region, and if_region->region. 2009-11-03 Sebastian Pop * graphite-clast-to-gimple.c (gloog): Free if_region, if_region->true_region, and if_region->region. * sese.c (if_region_set_false_region): Free if_region->false_region. (create_if_region_on_edge): Do not use GGC_NEW. (move_sese_in_condition): Remove useless initialization. From-SVN: r154633 --- gcc/ChangeLog.graphite | 8 ++++++++ gcc/graphite-clast-to-gimple.c | 4 ++++ gcc/sese.c | 13 ++++++++----- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite index 456555538b2..eec4f010782 100644 --- a/gcc/ChangeLog.graphite +++ b/gcc/ChangeLog.graphite @@ -1,3 +1,11 @@ +2009-11-03 Sebastian Pop + + * graphite-clast-to-gimple.c (gloog): Free if_region, + if_region->true_region, and if_region->region. + * sese.c (if_region_set_false_region): Free if_region->false_region. + (create_if_region_on_edge): Do not use GGC_NEW. + (move_sese_in_condition): Remove useless initialization. + 2009-11-03 Sebastian Pop * graphite-interchange.c (lst_perfect_nestify): Pass 3 parameters diff --git a/gcc/graphite-clast-to-gimple.c b/gcc/graphite-clast-to-gimple.c index 85941908663..2df86fa2ac9 100644 --- a/gcc/graphite-clast-to-gimple.c +++ b/gcc/graphite-clast-to-gimple.c @@ -1201,6 +1201,10 @@ gloog (scop_p scop, htab_t bb_pbb_mapping) recompute_all_dominators (); graphite_verify (); + free (if_region->true_region); + free (if_region->region); + free (if_region); + htab_delete (rename_map); htab_delete (newivs_index); VEC_free (tree, heap, newivs); diff --git a/gcc/sese.c b/gcc/sese.c index 76c92bd08b7..bf315f97a26 100644 --- a/gcc/sese.c +++ b/gcc/sese.c @@ -1384,6 +1384,9 @@ if_region_set_false_region (ifsese if_region, sese region) recompute_all_dominators (); SESE_EXIT (region) = false_edge; + + if (if_region->false_region) + free (if_region->false_region); if_region->false_region = region; if (slot) @@ -1409,10 +1412,10 @@ create_if_region_on_edge (edge entry, tree condition) { edge e; edge_iterator ei; - sese sese_region = GGC_NEW (struct sese_s); - sese true_region = GGC_NEW (struct sese_s); - sese false_region = GGC_NEW (struct sese_s); - ifsese if_region = GGC_NEW (struct ifsese_s); + sese sese_region = XNEW (struct sese_s); + sese true_region = XNEW (struct sese_s); + sese false_region = XNEW (struct sese_s); + ifsese if_region = XNEW (struct ifsese_s); edge exit = create_empty_if_region_on_edge (entry, condition); if_region->region = sese_region; @@ -1449,7 +1452,7 @@ ifsese move_sese_in_condition (sese region) { basic_block pred_block = split_edge (SESE_ENTRY (region)); - ifsese if_region = NULL; + ifsese if_region; SESE_ENTRY (region) = single_succ_edge (pred_block); if_region = create_if_region_on_edge (single_pred_edge (pred_block), integer_one_node);