Implement inline call summaries.
authorJan Hubicka <jh@suse.cz>
Wed, 20 Nov 2019 17:03:43 +0000 (18:03 +0100)
committerJan Hubicka <hubicka@gcc.gnu.org>
Wed, 20 Nov 2019 17:03:43 +0000 (17:03 +0000)
commit070e3489678380354027144c6b0cef02e7601a37
tree35be7ab7c8c44f60813d77d3f70237b784179952
parent73248b1d2665661b840c1f00cfa1a5b844775cdd
Implement inline call summaries.

* ipa-fnsummary.c (ipa_fn_summary::account_size_time): Add CALL
parameter and update call_size_time_table.
(ipa_fn_summary::max_size_time_table_size): New constant.
(estimate_calls_size_and_time_1): Break out from ...
(estimate_calls_size_and_time): ... here; implement summary production.
(summarize_calls_size_and_time): New function.
(ipa_call_context::estimate_size_and_time): Bypass
estimate_calls_size_and_time for leaf functions.
(ipa_update_overall_fn_summary): Likewise.
* ipa-fnsummary.h (call_size_time_table): New.
(ipa_fn_summary::account_size_time): Update prototype.

From-SVN: r278513
gcc/ChangeLog
gcc/ipa-fnsummary.c
gcc/ipa-fnsummary.h