aboutsummaryrefslogtreecommitdiff
path: root/gcc/sese.c
diff options
context:
space:
mode:
authorSebastian Pop <sebastian.pop@amd.com>2009-11-25 05:28:32 +0000
committerSebastian Pop <spop@gcc.gnu.org>2009-11-25 05:28:32 +0000
commit8c54631db7c7cb9be466b5764429d072de8d89d7 (patch)
tree839c85ef43301512ee616a5752b15d653fc6c9be /gcc/sese.c
parent7b7f2ca76cec6c22c1b0bd1a6bb31baebddaca99 (diff)
downloadgcc-8c54631db7c7cb9be466b5764429d072de8d89d7.zip
gcc-8c54631db7c7cb9be466b5764429d072de8d89d7.tar.gz
gcc-8c54631db7c7cb9be466b5764429d072de8d89d7.tar.bz2
graphite-clast-to-gimple.c (gloog): Free if_region, if_region->true_region, and if_region->region.
2009-11-03 Sebastian Pop <sebastian.pop@amd.com> * 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
Diffstat (limited to 'gcc/sese.c')
-rw-r--r--gcc/sese.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/gcc/sese.c b/gcc/sese.c
index 76c92bd..bf315f9 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);