aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/loop-unswitch.c7
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7951f9f..0852030 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2005-12-14 Sebastian Pop <pop@cri.ensmp.fr>
+
+ * loop-unswitch.c (unswitch_loop): Free zero_bitmap before returning.
+
2005-12-14 J"orn Rennecke <joern.rennecke@st.com>
PR bootstrap/25397:
diff --git a/gcc/loop-unswitch.c b/gcc/loop-unswitch.c
index d748730..8a71f72 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. */