2014-10-06 Rong Xu <xur@google.com>
authorxur <xur@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 Oct 2014 04:06:12 +0000 (04:06 +0000)
committerxur <xur@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 Oct 2014 04:06:12 +0000 (04:06 +0000)
commitb74245ec69a1273ff362da2bbba6810ef45bc045
tree3f660889ad3bf100d6e658c24a2f620b8f2c0414
parent8ceaa1efdd692f5d0774ddcc2b46ed9c610bfa94
2014-10-06  Rong Xu  <xur@google.com>

* gcc/params.def (PARAM_INDIR_CALL_TOPN_PROFILE): New param.
* gcc/tree-profile.c: (params.h): New include.
        (init_ic_make_global_vars): Make __gcov_indirect_call_topn_callee
        and __gcov_indirect_call_topn_counters for
        indirect_call_topn_profile.
(gimple_init_edge_profiler): New decls for
        __gcov_indirect_call_topn_profiler.
(gimple_gen_ic_profiler): Generate the correct profiler call.
(gimple_gen_ic_func_profiler): Fix format.
* gcc/value-prof.c (params.h): New include.
        (dump_histogram_value): Hanlde indirect_call_topn counters.
(stream_in_histogram_value): Ditto.
(gimple_indirect_call_to_profile): Use indirect_call_topn
        profile when PARAM_INDIR_CALL_TOPN_PROFILE is set.
(gimple_find_values_to_profile): Hanlde indirect_call_topn
        counters.
* gcc/value-prof.h (enum hist_type): Histrogram type for
        indirect_call_topn counters.
* gcc/profile.c (instrument_values): Instrument
        indirect_call_topn counters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215963 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/params.def
gcc/profile.c
gcc/tree-profile.c
gcc/value-prof.c
gcc/value-prof.h