r198057 - in /branches/google/gcc-4_7/gcc: Make...
dehao@gcc.gnu.org
dehao@gcc.gnu.org
Thu Apr 18 15:29:00 GMT 2013
Author: dehao
Date: Thu Apr 18 15:29:10 2013
New Revision: 198057
URL: http://gcc.gnu.org/viewcvs?rev=198057&root=gcc&view=rev
Log:
1. Adds value profile optimization support to AutoFDO.
2. Change profile format to read function name from string table.
3. Change AutoFDO early inline heuristic to yield more VPT opportunities.
2013-04-18 Dehao Chen <dehao@google.com>
* gcc/opts.c (common_handle_option): Enable VPT for AutoFDO
* gcc/auto-profile.c (struct gcov_stack): Ditto.
(struct gcov_hist): Ditto.
(afdo_stack_eq): Ditto.
(afdo_indirect_call): Ditto.
(afdo_vpt): Ditto.
(get_stack_count): Ditto.
(get_stmt_count): Ditto.
(afdo_get_callsite_count): Ditto.
(afdo_get_bb_count): Ditto.
(afdo_annotate_cfg): Ditto.
(read_profile): Ditto.
(end_auto_profile): Ditto.
(afdo_callsite_hot_enough_for_early_inline): New einline heuristic.
(auto_profile): Ditto.
* gcc/auto-profile.h (afdo_callsite_hot_enough_for_early_inline):
New function.
* gcc/tree-inline.c (copy_bb): Enable VPT for AutoFDO.
* gcc/value-prof.c (gimple_alloc_histogram_value): Ditto.
(find_func_by_global_id): Ditto.
(gimple_ic_transform_mult_targ): Ditto.
* gcc/value-prof.h (gimple_alloc_histogram_value): Ditto.
* gcc/coverage.h (find_func_by_global_id): Ditto.
* gcc/cgraphbuild.c (add_fake_indirect_call_edges): Ditto.
* gcc/ipa-inline.c (want_early_inline_function_p): New einline
heuristic.
Modified:
branches/google/gcc-4_7/gcc/Makefile.in
branches/google/gcc-4_7/gcc/auto-profile.c
branches/google/gcc-4_7/gcc/auto-profile.h
branches/google/gcc-4_7/gcc/cgraphbuild.c
branches/google/gcc-4_7/gcc/coverage.h
branches/google/gcc-4_7/gcc/ipa-inline.c
branches/google/gcc-4_7/gcc/opts.c
branches/google/gcc-4_7/gcc/tree-inline.c
branches/google/gcc-4_7/gcc/value-prof.c
branches/google/gcc-4_7/gcc/value-prof.h
More information about the Gcc-cvs
mailing list