summaryrefslogtreecommitdiff
path: root/gcc/ipa-inline-transform.c
diff options
context:
space:
mode:
authordehao <dehao@138bc75d-0d04-0410-961f-82ee72b054a4>2014-05-20 22:25:06 +0000
committerdehao <dehao@138bc75d-0d04-0410-961f-82ee72b054a4>2014-05-20 22:25:06 +0000
commit27754c3a913c174dd21212101cea0bba058af189 (patch)
tree1bd8a95838906705bcd87c8109dcd41dccc7f970 /gcc/ipa-inline-transform.c
parent61dc68af23b09eea107f8f8fa916ec04b9e53f4c (diff)
downloadgcc-27754c3a913c174dd21212101cea0bba058af189.tar.gz
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@210660 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ipa-inline-transform.c')
-rw-r--r--gcc/ipa-inline-transform.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/ipa-inline-transform.c b/gcc/ipa-inline-transform.c
index a45aab118fd..7cd3ff740e0 100644
--- a/gcc/ipa-inline-transform.c
+++ b/gcc/ipa-inline-transform.c
@@ -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);
}
}