Improve -fprofile-report.
authorMartin Liska <mliska@suse.cz>
Tue, 13 Nov 2018 15:06:54 +0000 (16:06 +0100)
committerMartin Liska <marxin@gcc.gnu.org>
Tue, 13 Nov 2018 15:06:54 +0000 (15:06 +0000)
commit160576e1ac9bbee90af9e09e1507f64d58473358
tree6541a5a15b3bc6f875bc04aac0025283eb9d84a6
parente4db210dd8683bf7b2a8ea828d6ea0b18967630a
Improve -fprofile-report.

2018-11-13  Martin Liska  <mliska@suse.cz>

PR tree-optimization/87885
* cfghooks.c (account_profile_record): Rename
to ...
(profile_record_check_consistency): ... this.
Calculate missing num_mismatched_freq_in.
(profile_record_account_profile): New function
that calculates time and size of a function.
* cfghooks.h (struct profile_record): Remove
all tuples.
(struct cfg_hooks): Remove after_pass flag.
(account_profile_record): Rename to ...
(profile_record_check_consistency): ... this.
(profile_record_account_profile): New.
* cfgrtl.c (rtl_account_profile_record): Remove
after_pass flag.
* passes.c (check_profile_consistency): Do only
checking.
(account_profile): Calculate size and time of
function only.
(pass_manager::dump_profile_report): Reformat
output.
(execute_one_ipa_transform_pass): Call
consistency check before clean upand call account_profile
after a clean up is done.
(execute_one_pass): Call check_profile_consistency and
account_profile instead of using after_pass flag..
* tree-cfg.c (gimple_account_profile_record): Likewise.

From-SVN: r266074
gcc/ChangeLog
gcc/cfghooks.c
gcc/cfghooks.h
gcc/cfgrtl.c
gcc/passes.c
gcc/tree-cfg.c