Release function and edge summaries allocated with GGC.
authorMartin Liska <mliska@suse.cz>
Tue, 29 Oct 2019 13:52:42 +0000 (14:52 +0100)
committerMartin Liska <marxin@gcc.gnu.org>
Tue, 29 Oct 2019 13:52:42 +0000 (13:52 +0000)
commit78cd68c0af1ba80b29849712f8defe51fd232ee7
tree610d5431c2e3c5f0a8416e42ba955c1b1ce294b0
parent318bd8c60d83ca294b237559908dd9f88ee7c300
Release function and edge summaries allocated with GGC.

2019-10-29  Martin Liska  <mliska@suse.cz>

* ggc.h (ggc_alloc_no_dtor): New function.
* ipa-fnsummary.c (ipa_free_fn_summary): Call
destructor and ggc_free.
(ipa_free_size_summary): Call delete instead
of release.
* ipa-fnsummary.h: Use new function ggc_alloc_no_dtor.
* ipa-prop.c (ipa_check_create_edge_args): Likewise.
(ipa_free_all_edge_args): Call destructor and ggc_free.
(ipa_free_all_node_params): Likewise.
(ipcp_free_transformation_sum): Likewise.
* ipa-prop.h (ipa_check_create_node_params):
Call new ggc_alloc_no_dtor.
* ipa-sra.c (ipa_sra_generate_summary): Likewise.
(ipa_sra_analysis): Call destructor and ggc_free.
Replace release with delete operator.
* symbol-summary.h (release): Remove ..
(V>::~fast_function_summary): and move logic here.
Likewise for other classes.

From-SVN: r277572
gcc/ChangeLog
gcc/ggc.h
gcc/ipa-fnsummary.c
gcc/ipa-fnsummary.h
gcc/ipa-prop.c
gcc/ipa-prop.h
gcc/ipa-sra.c
gcc/symbol-summary.h