aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraphunit.c
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2019-10-25 00:19:09 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2019-10-24 22:19:09 +0000
commitf658ad3002a0afc8aa86d5646ee704921d969ebe (patch)
tree4d446ea9851921b972691441855d8a4d8dd6b567 /gcc/cgraphunit.c
parent90a158075a6b4e26c2e1204c71aa7f49548c5bd7 (diff)
downloadgcc-f658ad3002a0afc8aa86d5646ee704921d969ebe.zip
gcc-f658ad3002a0afc8aa86d5646ee704921d969ebe.tar.gz
gcc-f658ad3002a0afc8aa86d5646ee704921d969ebe.tar.bz2
cgraphunit.c (symbol_table::process_new_functions): Call ipa_free_size_summary.
* cgraphunit.c (symbol_table::process_new_functions): Call ipa_free_size_summary. * ipa-cp.c (ipcp_cloning_candidate_p): Update. (devirtualization_time_bonus): Update. (ipcp_propagate_stage): Update. * ipa-fnsummary.c (ipa_size_summaries): New. (ipa_fn_summary_alloc): Alloc size summary. (dump_ipa_call_summary): Update. (ipa_dump_fn_summary): Update. (analyze_function_body): Update. (compute_fn_summary): Likewise. (ipa_get_stack_frame_offset): New function. (inline_update_callee_summaries): Do not update frame offsets. (ipa_merge_fn_summary_after_inlining): Update frame offsets here; remove call and function summary. (ipa_update_overall_fn_summary): Update. (inline_read_section): Update. (ipa_fn_summary_write): Update. (ipa_free_fn_summary): Do not remove summaries. (ipa_free_size_summary): New. (release summary pass): Also run at WPA. * ipa-fnsummary.h (ipa_size_summary): Declare. (ipa_fn_summary): Remove size, self_size, stack_frame_offset, estimated_self_stack_size. (ipa_size_summary_t): New type. (ipa_size_summaries): Declare. (ipa_free_size_summary): Declare. (ipa_get_stack_frame_offset): Declare. * ipa-icf.c (sem_function::merge): Update. * ipa-inline-analysis.c (estimate_size_after_inlining): Update. (estimate_growth): Update. (growth_likely_positive): Update. (clone_inlined_nodes): Update. (inline_call): Update. * ipa-inline.c (caller_growth_limits): Update. (edge_badness): Update. (recursive_inlining): Update. (inline_small_functions): Update. (inline_to_all_callers_1): Update. * ipa-prop.h (ipa_edge_args_sum_t): Update comment. * lto-partition.c (add_symbol_to_partition_1): Update. (undo_parittion): Update. From-SVN: r277424
Diffstat (limited to 'gcc/cgraphunit.c')
-rw-r--r--gcc/cgraphunit.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index cb08efe..3f751fa 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -340,7 +340,10 @@ symbol_table::process_new_functions (void)
and splitting. This is redundant for functions added late.
Just throw away whatever it did. */
if (!summaried_computed)
- ipa_free_fn_summary ();
+ {
+ ipa_free_fn_summary ();
+ ipa_free_size_summary ();
+ }
}
else if (ipa_fn_summaries != NULL)
compute_fn_summary (node, true);