summaryrefslogtreecommitdiff
path: root/gcc/loop-unswitch.c
diff options
context:
space:
mode:
authorspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-14 14:15:01 +0000
committerspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-14 14:15:01 +0000
commitd03791e714c7396b148155e8f51704659124eacf (patch)
treea81ff1791daa236881ca8df1641847ef94ac9b3c /gcc/loop-unswitch.c
parentef2b582970a25836eec25afecd4e25e9c3117610 (diff)
downloadgcc-d03791e714c7396b148155e8f51704659124eacf.tar.gz
* loop-unswitch.c (unswitch_loop): Free zero_bitmap before returning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108509 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/loop-unswitch.c')
-rw-r--r--gcc/loop-unswitch.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/loop-unswitch.c b/gcc/loop-unswitch.c
index d7487305017..8a71f72fd53 100644
--- a/gcc/loop-unswitch.c
+++ b/gcc/loop-unswitch.c
@@ -426,8 +426,11 @@ unswitch_loop (struct loops *loops, struct loop *loop, basic_block unswitch_on,
sbitmap_zero (zero_bitmap);
if (!duplicate_loop_to_header_edge (loop, entry, loops, 1,
zero_bitmap, NULL, NULL, NULL, 0))
- return NULL;
- free (zero_bitmap);
+ {
+ sbitmap_free (zero_bitmap);
+ return NULL;
+ }
+ sbitmap_free (zero_bitmap);
entry->flags |= irred_flag;
/* Record the block with condition we unswitch on. */