On Sat, Oct 6, 2012 at 5:56 PM, Jan Hubicka <hubi...@ucw.cz> wrote: > Hi, > does this look better? Moving to cfg.c would importing tree-pass.h and rtl.h > that is not cool either. predict.c does all of these. > Obviously can also go to a separate file, if preferred.
Attached is how I would do it. What do you think about this? Ciao! Steven * basic-block. (profile_record): New struct, moved from passes.c. * cfghooks.h (struct cfg_hooks) <account_profile_record>: New hook. (account_profile_record): New prototype. * cfghooks.c (account_profile_record): New function. * tree-cfg.c (gimple_account_profile_record): New function (gimple_cfg_hooks): Add it. * cfgrtl.c (rtl_account_profile_record): New function (rtl_cfg_hooks, cfg_layout_rtl_cfg_hooks): Add it. * passes.c (check_profile_consistency): Simplify. Move IR-dependent code around using cfghooks machinery.
profile_consistency.diff
Description: Binary data