On Tue, Nov 6, 2018 at 3:05 PM Martin Liška <mli...@suse.cz> wrote: > > Hi. > > The patch is based on what was discussed on IRC and in the PR. > Apart from that the reported layout is improved. > > Patch survives regression tests on x86_64-linux-gnu. > > Ready for trunk?
OK. Thanks, Richard. > Martin > > gcc/ChangeLog: > > 2018-11-06 Martin Liska <mli...@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. > --- > gcc/cfghooks.c | 38 +++++++-- > gcc/cfghooks.h | 17 ++-- > gcc/cfgrtl.c | 12 ++- > gcc/passes.c | 207 ++++++++++++++++++++++++++----------------------- > gcc/tree-cfg.c | 11 ++- > 5 files changed, 161 insertions(+), 124 deletions(-) > >