PR jit/63854: Fix leaks in test-fuzzer.c
authorDavid Malcolm <dmalcolm@redhat.com>
Wed, 19 Nov 2014 20:45:03 +0000 (20:45 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Wed, 19 Nov 2014 20:45:03 +0000 (20:45 +0000)
gcc/testsuite/ChangeLog:
PR jit/63854
* jit.dg/test-fuzzer.c (fuzzer_init): Free malloced buffers.
(make_random_function): Free ff->locals.

From-SVN: r217812

gcc/testsuite/ChangeLog
gcc/testsuite/jit.dg/test-fuzzer.c

index bc1435584fc56cc9dd364dfd84b1bbc5312804f1..aa12ff38ddb0886c9c1840a6d23cd050d225372d 100644 (file)
@@ -1,3 +1,9 @@
+2014-11-19  David Malcolm  <dmalcolm@redhat.com>
+
+       PR jit/63854
+       * jit.dg/test-fuzzer.c (fuzzer_init): Free malloced buffers.
+       (make_random_function): Free ff->locals.
+
 2014-11-19  Uros Bizjak  <ubizjak@gmail.com>
 
        PR target/63947
index f363f8f29a533cbe5d608be9db19094e47ab2a76..b5017923c4a56df47e0b3fa519e445d935b84028 100644 (file)
@@ -105,6 +105,11 @@ fuzzer_init (fuzzer *f, gcc_jit_context *ctxt, unsigned int seed)
 
   for (i = 0; i < num_funcs; i++)
     f->funcs[f->num_funcs++] = make_random_function (f);
+
+  /* Now clean out f.  */
+  free (f->types);
+  free (f->funcs);
+  free (f->globals);
 }
 
 /* Get random int in inclusive range [min, max].  */
@@ -309,6 +314,7 @@ make_random_function (fuzzer *f)
 
   gcc_jit_function *result = ff->fn;
 
+  free (ff->locals);
   free (ff->params);
   free (ff);