This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r120975 - in /trunk/gcc: ChangeLog Makefile.in ...
- From: hubicka at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Fri, 19 Jan 2007 18:34:03 -0000
- Subject: r120975 - in /trunk/gcc: ChangeLog Makefile.in ...
Author: hubicka
Date: Fri Jan 19 18:34:02 2007
New Revision: 120975
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120975
Log:
Patch by Tomas Bily <tbily@suse.cz>
* cgraphunit.c (cgraph_finalize_function): Updating of pid
* tree-profile.c:
(tree_init_ic_make_global_vars): New function
(tree_init_edge_profiler): call of tree_init_ic_make_global_vars
(tree_gen_ic_profiler): New function
(tree_gen_ic_func_profiler): New function
(tree_profiling): Added calling of tree_gen_ic_func_profiler
(tree_profile_hooks): Added hook for indirec/virtual calls
* value-prof.c (tree_find_values_to_profile): New case for
indirect calls
(tree_values_to_profile): Call for determining indirect/virtual
counters
(tree_indirect_call_to_profile): New function
(tree_ic_transform): New function
(tree_ic): New function
(find_func_by_pid): New function
(init_pid_map): New function
(tree_value_profile_transformations): Added check for
indirect/virtual call transformation
* value-prof.h (enum hist_type): New counter type for
indirect/virtual calls
(profile_hooks): Added new hook for profiling indirect/virtual
calls
* profile.c (instrument_values): New case for indirect/virtual
call added
* gcov-io.h (GCOV_LAST_VALUE_COUNTER): Changed to 6
(GCOV_COUNTER_V_INDIR): New counter type
(GCOV_COUNTER_NAMES): New name of counter "indirect" added
(GCOV_MERGE_FUNCTIONS): New merge function for indirect/virtual
call added
* cgraph.c: Definition of cgraph_max_pid
(cgraph_create_node): Default init of pid attribute
* cgraph.h: Declaration of cgraph_max_pid
(struct cgraph_node): Added pid attribute
* libgcov.c (__gcov_indirect_call_profiler): New function
(__gcov_one_value_profiler_body): New function
(__gcov_one_value_profiler): Body was moved to
__gcov_one_value_profiler_body and calls it
gcc.dg/tree-prof/indir-call-prof.c: New.
g++.dg/dg.exp: Add tree-prof subdirectory.
g++.dg/tree-prof/indir-call-prof.C: New.
g++.dg/tree-prof/tree-prof.exp: New.
Added:
trunk/gcc/testsuite/g++.dg/tree-prof/
trunk/gcc/testsuite/g++.dg/tree-prof/indir-call-prof.C
trunk/gcc/testsuite/g++.dg/tree-prof/tree-prof.exp
trunk/gcc/testsuite/gcc.dg/tree-prof/indir-call-prof.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/Makefile.in
trunk/gcc/cgraph.c
trunk/gcc/cgraph.h
trunk/gcc/cgraphunit.c
trunk/gcc/gcov-io.h
trunk/gcc/libgcov.c
trunk/gcc/predict.c
trunk/gcc/profile.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/dg.exp
trunk/gcc/tree-profile.c
trunk/gcc/value-prof.c
trunk/gcc/value-prof.h