Commit 98339851 by Dehao Chen Committed by Dehao Chen

ipa-inline-transform.c (clone_inlined_nodes): Use min of edge count and callee…

ipa-inline-transform.c (clone_inlined_nodes): Use min of edge count and callee count to get clone count.

2014-05-20  Dehao Chen  <dehao@google.com>

	* ipa-inline-transform.c (clone_inlined_nodes): Use min of edge count
	and callee count to get clone count.
	* tree-inline.c (expand_call_inline): Use callee count instead of bb
	count in copy_body.

From-SVN: r210660
parent 6ed9c90a
2014-05-20 Dehao Chen <dehao@google.com>
* ipa-inline-transform.c (clone_inlined_nodes): Use min of edge count
and callee count to get clone count.
* tree-inline.c (expand_call_inline): Use callee count instead of bb
count in copy_body.
2014-05-20 Richard Sandiford <rdsandiford@googlemail.com>
PR rtl-optimization/61243
......
......@@ -183,8 +183,9 @@ clone_inlined_nodes (struct cgraph_edge *e, bool duplicate,
if (freq_scale == -1)
freq_scale = e->frequency;
n = cgraph_clone_node (e->callee, e->callee->decl,
e->count, freq_scale, update_original,
vNULL, true, inlining_into, NULL);
MIN (e->count, e->callee->count), freq_scale,
update_original, vNULL, true, inlining_into,
NULL);
cgraph_redirect_edge_callee (e, n);
}
}
......
......@@ -4355,7 +4355,7 @@ expand_call_inline (basic_block bb, gimple stmt, copy_body_data *id)
function in any way before this point, as this CALL_EXPR may be
a self-referential call; if we're calling ourselves, we need to
duplicate our body before altering anything. */
copy_body (id, bb->count,
copy_body (id, cg_edge->callee->count,
GCOV_COMPUTE_SCALE (cg_edge->frequency, CGRAPH_FREQ_BASE),
bb, return_block, NULL);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment