PR tree-optimization/79699 - small memory leak in MPFR
authorMartin Sebor <msebor@redhat.com>
Fri, 3 Mar 2017 16:35:00 +0000 (16:35 +0000)
committerMartin Sebor <msebor@gcc.gnu.org>
Fri, 3 Mar 2017 16:35:00 +0000 (09:35 -0700)
gcc/ChangeLog:
* context.c (context::~context): Free MPFR caches to avoid
a memory leak on program exit.

From-SVN: r245878

gcc/ChangeLog
gcc/context.c

index 03522ced844ac5af05371a466fc9054906b89d7d..d78b3f41d5322ae4973311c8f03ae80106919310 100644 (file)
@@ -1,3 +1,9 @@
+2017-03-03  Martin Sebor  <msebor@redhat.com>
+
+       PR tree-optimization/79699
+       * context.c (context::~context): Free MPFR caches to avoid
+       a memory leak on program exit.
+
 2017-03-03  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
        * config/aarch64/aarch64.c (aarch64_float_const_representable_p):
index a7ded9c1a621ddd08028012feacbabf5909a4957..bacad5a5e77549ddb6dbd8984cc2fc8efee36cd7 100644 (file)
@@ -23,6 +23,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "context.h"
 #include "pass_manager.h"
 #include "dumpfile.h"
+#include "realmpfr.h"
 
 /* The singleton holder of global state: */
 gcc::context *g;
@@ -42,4 +43,7 @@ gcc::context::~context ()
 {
   delete m_passes;
   delete m_dumps;
+
+  /* Release MPFR caches to avoid Valgrind leak reports.  */
+  mpfr_free_cache ();
 }