This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Plug memory leak on value histograms


Hi,
when I noticed the DECL_STRUCT_FUNCTION leak, I added couple gcc_asserts
and this one triggers.  Nothing extreme, but one leak fewer.

Honza

	* cgraph.c: Include value-prof.h
	* Makefile.in (cgraph.o): Add value-prof.h dependency.
Index: cgraph.c
===================================================================
--- cgraph.c	(revision 140348)
+++ cgraph.c	(working copy)
@@ -84,6 +84,7 @@ The callgraph:
 #include "gimple.h"
 #include "tree-dump.h"
 #include "tree-flow.h"
+#include "value-prof.h"
 
 static void cgraph_node_remove_callers (struct cgraph_node *node);
 static inline void cgraph_edge_remove_caller (struct cgraph_edge *e);
@@ -906,6 +907,9 @@ cgraph_release_function_body (struct cgr
 	  gcc_assert (dom_computed[1] == DOM_NONE);
 	  clear_edges ();
 	}
+      if (cfun->value_histograms)
+	free_histograms ();
+      gcc_assert (!current_loops);
       pop_cfun();
       gimple_set_body (node->decl, NULL);
       VEC_free (ipa_opt_pass, heap,
Index: Makefile.in
===================================================================
--- Makefile.in	(revision 140348)
+++ Makefile.in	(working copy)
@@ -2586,7 +2586,7 @@ simplify-rtx.o : simplify-rtx.c $(CONFIG
 cgraph.o : cgraph.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) \
    langhooks.h $(TOPLEV_H) $(FLAGS_H) $(GGC_H) $(TARGET_H) $(CGRAPH_H) \
    gt-cgraph.h output.h intl.h $(BASIC_BLOCK_H) debug.h $(HASHTAB_H) \
-   $(TREE_INLINE_H) $(VARRAY_H) $(TREE_DUMP_H) $(TREE_FLOW_H)
+   $(TREE_INLINE_H) $(VARRAY_H) $(TREE_DUMP_H) $(TREE_FLOW_H) value-prof.h
 cgraphunit.o : cgraphunit.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
    $(TREE_H) langhooks.h $(TREE_INLINE_H) $(TOPLEV_H) $(FLAGS_H) $(GGC_H) \
    $(TARGET_H) $(CGRAPH_H) intl.h pointer-set.h $(FUNCTION_H) $(GIMPLE_H) \


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]