ipa-inline.c (cgraph_maybe_hot_edge_p): Look for hot/cold attributes...
* ipa-inline.c (cgraph_maybe_hot_edge_p): Look for hot/cold attributes, when profile esitmate is present, calls with very low frequency are cold. From-SVN: r122898
This commit is contained in:
parent
b3ce5b6ed7
commit
4cdb798f6c
@ -1,3 +1,9 @@
|
||||
2007-03-13 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
* ipa-inline.c (cgraph_maybe_hot_edge_p): Look for hot/cold attributes,
|
||||
when profile esitmate is present, calls with very low frequency are
|
||||
cold.
|
||||
|
||||
2007-03-13 Zdenek Dvorak <dvorakz@suse.cz>
|
||||
|
||||
PR tree-optimization/30730
|
||||
|
@ -472,6 +472,15 @@ cgraph_maybe_hot_edge_p (struct cgraph_edge *edge)
|
||||
&& (edge->count
|
||||
<= profile_info->sum_max / PARAM_VALUE (HOT_BB_COUNT_FRACTION)))
|
||||
return false;
|
||||
if (lookup_attribute ("cold", DECL_ATTRIBUTES (edge->callee->decl))
|
||||
|| lookup_attribute ("cold", DECL_ATTRIBUTES (edge->caller->decl)))
|
||||
return false;
|
||||
if (lookup_attribute ("hot", DECL_ATTRIBUTES (edge->caller->decl)))
|
||||
return true;
|
||||
if (flag_guess_branch_prob
|
||||
&& edge->frequency < (CGRAPH_FREQ_MAX
|
||||
/ PARAM_VALUE (HOT_BB_FREQUENCY_FRACTION)))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user