aboutsummaryrefslogtreecommitdiff
path: root/gcc/lto
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2013-08-30 09:33:06 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2013-08-30 07:33:06 +0000
commit256eefa9a9497fae8dcc8bb96c8a28dd9c3e6dc8 (patch)
tree64eb6436c13bf84949443327cd89e6ca2e8bee1c /gcc/lto
parent3f0fdc34ffab3a288401fd51c95851f1e8d445bf (diff)
downloadgcc-256eefa9a9497fae8dcc8bb96c8a28dd9c3e6dc8.zip
gcc-256eefa9a9497fae8dcc8bb96c8a28dd9c3e6dc8.tar.gz
gcc-256eefa9a9497fae8dcc8bb96c8a28dd9c3e6dc8.tar.bz2
lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state.
* lto-symtab.c (lto_cgraph_replace_node): Free decl_in_state. * cgraph.c (cgraph_release_function_body): Free decl_in_state. * lto-section-in.c (lto_free_function_in_decl_state): New function. (lto_free_function_in_decl_state_for_node): New function. * lto.c (read_cgraph_and_symbols): Remove ggc_collect; clear section node; add comment why we do not collect. From-SVN: r202093
Diffstat (limited to 'gcc/lto')
-rw-r--r--gcc/lto/ChangeLog4
-rw-r--r--gcc/lto/lto.c3
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index ab81a78..965a78c 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,5 +1,9 @@
2013-08-29 Jan Hubicka <jh@suse.cz>
+ * lto.c (read_cgraph_and_symbols): Free decl states.
+
+2013-08-29 Jan Hubicka <jh@suse.cz>
+
* lto.c (compare_tree_sccs_1): Compare DECL_FINAL_P,
DECL_CXX_CONSTRUCTOR_P, DECL_CXX_DESTRUCTOR_P and
TYPE_FINAL_P.
diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c
index f6e1f97..cc0ed69 100644
--- a/gcc/lto/lto.c
+++ b/gcc/lto/lto.c
@@ -3502,6 +3502,9 @@ read_cgraph_and_symbols (unsigned nfiles, const char **fnames)
gcc_assert (all_file_decl_data[i]->symtab_node_encoder);
lto_symtab_encoder_delete (all_file_decl_data[i]->symtab_node_encoder);
all_file_decl_data[i]->symtab_node_encoder = NULL;
+ lto_free_function_in_decl_state (all_file_decl_data[i]->global_decl_state);
+ all_file_decl_data[i]->global_decl_state = NULL;
+ all_file_decl_data[i]->current_decl_state = NULL;
}
/* Finally merge the cgraph according to the decl merging decisions. */