summaryrefslogtreecommitdiff
path: root/gcc/cgraph.h
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2013-08-09 22:53:00 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2013-08-09 22:53:00 +0000
commit6a261305108413215d49b3914ac78faa5572231c (patch)
tree8a4fa2cb049df6b6085971ee7b7c3615601cc693 /gcc/cgraph.h
parent2ebd387eab05c472bd95be08fbf8ce1986d012ab (diff)
downloadgcc-6a261305108413215d49b3914ac78faa5572231c.tar.gz
* cgraph.c (cgraph_resolve_speculation): Cut frequency to
CGRAPH_FREQ_MAX. (dump_cgraph_node): Dump profile-id. * cgraph.h (cgraph_indirect_call_info): Add common_target_id and common_target_probability. * lto-cgraph.c (lto_output_edge): Stream common targets. (lto_output_node): Stream profile ids. (input_node): Stream profile ids. (input_edge): Stream common targets. * lto-streamer-in.c (fixup_call_stmt_edges_1): Fix formatting. * ipa.c: Include value-prof.h (ipa_profile_generate_summary): Turn indirect call statement histograms into common targets. (ipa_profile): Turn common targets into speculative edges. * gcc.dg/tree-prof/crossmodule-indircall-1.c: New testcase. * gcc.dg/tree-prof/crossmodule-indircall-1a.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201639 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cgraph.h')
-rw-r--r--gcc/cgraph.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/cgraph.h b/gcc/cgraph.h
index f67287fc78d..e4305333383 100644
--- a/gcc/cgraph.h
+++ b/gcc/cgraph.h
@@ -435,6 +435,10 @@ struct GTY(()) cgraph_indirect_call_info
int param_index;
/* ECF flags determined from the caller. */
int ecf_flags;
+ /* Profile_id of common target obtrained from profile. */
+ int common_target_id;
+ /* Probability that call will land in function with COMMON_TARGET_ID. */
+ int common_target_probability;
/* Set when the call is a virtual call with the parameter being the
associated object pointer rather than a simple direct call. */