diff mbox series

Fix memory leaks in sbitmap.c selftests

Message ID 1516650694-15005-1-git-send-email-dmalcolm@redhat.com
State New
Headers show
Series Fix memory leaks in sbitmap.c selftests | expand

Commit Message

David Malcolm Jan. 22, 2018, 7:51 p.m. UTC
"make selftest-valgrind" shows a few leaks in sbitmap.c's selftests;
this patch fixes them.

Successfully bootstrapped&regrtested on x86_64-pc-linux-gnu.
OK for trunk?

gcc/ChangeLog:
	* sbitmap.c (selftest::test_set_range): Fix memory leaks.
	(selftest::test_bit_in_range): Likewise.
---
 gcc/sbitmap.c | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Richard Biener Jan. 23, 2018, 10:27 a.m. UTC | #1
On Mon, Jan 22, 2018 at 8:51 PM, David Malcolm <dmalcolm@redhat.com> wrote:
> "make selftest-valgrind" shows a few leaks in sbitmap.c's selftests;
> this patch fixes them.
>
> Successfully bootstrapped&regrtested on x86_64-pc-linux-gnu.
> OK for trunk?

Ok.

> gcc/ChangeLog:
>         * sbitmap.c (selftest::test_set_range): Fix memory leaks.
>         (selftest::test_bit_in_range): Likewise.
> ---
>  gcc/sbitmap.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/gcc/sbitmap.c b/gcc/sbitmap.c
> index cf46cb2..967868a 100644
> --- a/gcc/sbitmap.c
> +++ b/gcc/sbitmap.c
> @@ -897,6 +897,7 @@ test_set_range ()
>    bitmap_set_range (s, 15, 1);
>    ASSERT_FALSE (bitmap_bit_in_range_p_checking (s, 1, 14));
>    ASSERT_TRUE (bitmap_bit_in_range_p_checking (s, 15, 15));
> +  sbitmap_free (s);
>
>    s = sbitmap_alloc (1024);
>    bitmap_clear (s);
> @@ -914,6 +915,7 @@ test_set_range ()
>    ASSERT_FALSE (bitmap_bit_in_range_p_checking (s, 512 + 64, 1023));
>    ASSERT_TRUE (bitmap_bit_in_range_p_checking (s, 512, 512));
>    ASSERT_TRUE (bitmap_bit_in_range_p_checking (s, 512 + 63, 512 + 63));
> +  sbitmap_free (s);
>  }
>
>  /* Verify bitmap_bit_in_range_p functions for sbitmap.  */
> @@ -935,6 +937,8 @@ test_bit_in_range ()
>    ASSERT_TRUE (bitmap_bit_in_range_p (s, 100, 100));
>    ASSERT_TRUE (bitmap_bit_p (s, 100));
>
> +  sbitmap_free (s);
> +
>    s = sbitmap_alloc (64);
>    bitmap_clear (s);
>    bitmap_set_bit (s, 63);
> @@ -942,6 +946,7 @@ test_bit_in_range ()
>    ASSERT_TRUE (bitmap_bit_in_range_p (s, 1, 63));
>    ASSERT_TRUE (bitmap_bit_in_range_p (s, 63, 63));
>    ASSERT_TRUE (bitmap_bit_p (s, 63));
> +  sbitmap_free (s);
>
>    s = sbitmap_alloc (1024);
>    bitmap_clear (s);
> @@ -985,6 +990,7 @@ test_bit_in_range ()
>    ASSERT_FALSE (bitmap_bit_in_range_p (s, 17, 31));
>    ASSERT_FALSE (bitmap_bit_in_range_p (s, 49, 63));
>    ASSERT_FALSE (bitmap_bit_in_range_p (s, 65, 1023));
> +  sbitmap_free (s);
>  }
>
>  /* Run all of the selftests within this file.  */
> --
> 1.8.5.3
>
diff mbox series

Patch

diff --git a/gcc/sbitmap.c b/gcc/sbitmap.c
index cf46cb2..967868a 100644
--- a/gcc/sbitmap.c
+++ b/gcc/sbitmap.c
@@ -897,6 +897,7 @@  test_set_range ()
   bitmap_set_range (s, 15, 1);
   ASSERT_FALSE (bitmap_bit_in_range_p_checking (s, 1, 14));
   ASSERT_TRUE (bitmap_bit_in_range_p_checking (s, 15, 15));
+  sbitmap_free (s);
 
   s = sbitmap_alloc (1024);
   bitmap_clear (s);
@@ -914,6 +915,7 @@  test_set_range ()
   ASSERT_FALSE (bitmap_bit_in_range_p_checking (s, 512 + 64, 1023));
   ASSERT_TRUE (bitmap_bit_in_range_p_checking (s, 512, 512));
   ASSERT_TRUE (bitmap_bit_in_range_p_checking (s, 512 + 63, 512 + 63));
+  sbitmap_free (s);
 }
 
 /* Verify bitmap_bit_in_range_p functions for sbitmap.  */
@@ -935,6 +937,8 @@  test_bit_in_range ()
   ASSERT_TRUE (bitmap_bit_in_range_p (s, 100, 100));
   ASSERT_TRUE (bitmap_bit_p (s, 100));
 
+  sbitmap_free (s);
+
   s = sbitmap_alloc (64);
   bitmap_clear (s);
   bitmap_set_bit (s, 63);
@@ -942,6 +946,7 @@  test_bit_in_range ()
   ASSERT_TRUE (bitmap_bit_in_range_p (s, 1, 63));
   ASSERT_TRUE (bitmap_bit_in_range_p (s, 63, 63));
   ASSERT_TRUE (bitmap_bit_p (s, 63));
+  sbitmap_free (s);
 
   s = sbitmap_alloc (1024);
   bitmap_clear (s);
@@ -985,6 +990,7 @@  test_bit_in_range ()
   ASSERT_FALSE (bitmap_bit_in_range_p (s, 17, 31));
   ASSERT_FALSE (bitmap_bit_in_range_p (s, 49, 63));
   ASSERT_FALSE (bitmap_bit_in_range_p (s, 65, 1023));
+  sbitmap_free (s);
 }
 
 /* Run all of the selftests within this file.  */