r199268 - in /branches/google/gcc-4_8/gcc: Make...

dehao@gcc.gnu.org dehao@gcc.gnu.org
Thu May 23 20:39:00 GMT 2013


Author: dehao
Date: Thu May 23 20:39:58 2013
New Revision: 199268

URL: http://gcc.gnu.org/viewcvs?rev=199268&root=gcc&view=rev
Log:
Port AutoFDO support from google-4_7 to google-4_8.

2013-05-23  Dehao Chen  <dehao@google.com>

	* gcc/profile.h (add_working_set): New Function.
	* gcc/regs.h (REG_FREQ_FROM_BB): New Function.
	* gcc/common.opt (fauto-profile): New option.
	* gcc/testsuite/gcc.dg/record-compilation-info-in-elf-1.c: New Test.
	* gcc/gcov-io.h (GCOV_TAG_AFDO_FILE_NAMES): New Macro.
	(GCOV_TAG_AFDO_FUNCTION): New Macro.
	(GCOV_TAG_AFDO_MODULE_GROUPING): New Macro.
	(GCOV_TAG_AFDO_WORKING_SET): New Macro.
	* gcc/cfg-flags.def (DEF_BASIC_BLOCK_FLAG): New Flag.
	(DEF_EDGE_FLAG): New FLag.
	* gcc/auto-profile.c: New File.
	* gcc/auto-profile.h: New File.
	* gcc/cgraphbuild.c (add_fake_indirect_call_edges): AutoFDO support.
	(build_cgraph_edges): Likewise.
	* gcc/opts.c (common_handle_option): Likewise.
	* gcc/opts.h (set_struct_debug_option): Likewise.
	* gcc/tree-cfg.c (gimple_merge_blocks): Likewise.
	* gcc/cgraphclones.c (cgraph_clone_node): Likewise.
	(clone_function_name): Likewise.
	* gcc/value-prof.c (gimple_ic_transform): Likewise.
	(gimple_alloc_histogram_value): Likewise.
	(cgraph_init_gid_map): Likewise.
	(find_func_by_global_id): Likewise.
	(gimple_ic_transform_mult_targ): Likewise.
	* gcc/value-prof.h (gimple_alloc_histogram_value): Likewise.
	* gcc/tree-pass.h (pass_ipa_auto_profile): Likewise.
	* gcc/passes.c (init_optimization_passes): Likewise.
	* gcc/cgraphunit.c (finalize_compilation_unit): Likewise.
	* gcc/tree-ssa-live.c (remove_unused_scope_block_p): Likewise.
	* gcc/ipa-inline.c (want_early_inline_function_p): Likewise.
	(edge_hot_enough_p): Likewise.
	* gcc/c-family/c-opts.c (c_common_parse_file): Likewise.
	* gcc/loop-unroll.c (decide_unroll_runtime_iterations): Likewise.
	* gcc/dwarf2out.c (auto_profile_debug_hooks): Likewise.
	* gcc/timevar.def (TV_IPA_AUTOFDO): Likewise.
	* gcc/ira-int.h (REG_FREQ_FROM_EDGE_FREQ): Likewise.
	* gcc/toplev.c (compile_file): Likewise.
	(process_options): Likewise.
	(do_compile): Likewise.
	* gcc/tree-profile.c (direct_call_profiling): Likewise.
	(gate_tree_profile_ipa): Likewise.
	* gcc/tree-inline.c (copy_edges_for_bb): Likewise.
	* gcc/predict.c (compute_function_frequency): Likewise.
	(rebuild_frequencies): Likewise.
	* gcc/debug.h (auto_profile_debug_hooks): Likewise
	* gcc/coverage.c (has_incompatible_cg_opts): Likewise.
	(incompatible_cl_args): Likewise.
	(coverage_init): Likewise.
	(coverage_has_asm_stmt): Likewise.
	(write_compilation_info_to_asm): Likewise.
	* gcc/coverage.h (find_func_by_global_id): Likewise.
	(incompatible_cl_args): Likewise.
	* gcc/profile.c (branch_prob): Likewise.

Added:
    branches/google/gcc-4_8/gcc/auto-profile.c
    branches/google/gcc-4_8/gcc/auto-profile.h
    branches/google/gcc-4_8/gcc/testsuite/gcc.dg/record-compilation-info-in-elf-1.c
Removed:
    branches/google/gcc-4_8/gcc/testsuite/gcc.dg/record-gcc-switches-in-elf-1.c
Modified:
    branches/google/gcc-4_8/gcc/Makefile.in
    branches/google/gcc-4_8/gcc/c-family/c-opts.c
    branches/google/gcc-4_8/gcc/cfg-flags.def
    branches/google/gcc-4_8/gcc/cgraphbuild.c
    branches/google/gcc-4_8/gcc/cgraphclones.c
    branches/google/gcc-4_8/gcc/cgraphunit.c
    branches/google/gcc-4_8/gcc/common.opt
    branches/google/gcc-4_8/gcc/coverage.c
    branches/google/gcc-4_8/gcc/coverage.h
    branches/google/gcc-4_8/gcc/debug.h
    branches/google/gcc-4_8/gcc/doc/invoke.texi
    branches/google/gcc-4_8/gcc/dwarf2out.c
    branches/google/gcc-4_8/gcc/gcov-io.h
    branches/google/gcc-4_8/gcc/ipa-inline.c
    branches/google/gcc-4_8/gcc/ira-int.h
    branches/google/gcc-4_8/gcc/loop-unroll.c
    branches/google/gcc-4_8/gcc/opts.c
    branches/google/gcc-4_8/gcc/opts.h
    branches/google/gcc-4_8/gcc/passes.c
    branches/google/gcc-4_8/gcc/predict.c
    branches/google/gcc-4_8/gcc/profile.c
    branches/google/gcc-4_8/gcc/profile.h
    branches/google/gcc-4_8/gcc/regs.h
    branches/google/gcc-4_8/gcc/timevar.def
    branches/google/gcc-4_8/gcc/toplev.c
    branches/google/gcc-4_8/gcc/tree-cfg.c
    branches/google/gcc-4_8/gcc/tree-inline.c
    branches/google/gcc-4_8/gcc/tree-pass.h
    branches/google/gcc-4_8/gcc/tree-profile.c
    branches/google/gcc-4_8/gcc/tree-ssa-live.c
    branches/google/gcc-4_8/gcc/value-prof.c
    branches/google/gcc-4_8/gcc/value-prof.h



More information about the Gcc-cvs mailing list