summaryrefslogtreecommitdiff
path: root/gcc/cgraph.c
diff options
context:
space:
mode:
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-24 17:28:11 +0000
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>2013-10-24 17:28:11 +0000
commit5a900841ff3836a3a6b14467d1364edd1ec1644e (patch)
treefae08a5e55e655a3b6b16ff9f5faa818a6b4fc0d /gcc/cgraph.c
parent092872f480bc4922e9bfd4c4a6481fce95b295cf (diff)
downloadgcc-5a900841ff3836a3a6b14467d1364edd1ec1644e.tar.gz
PR ipa/58712
* cgraph.c (cgraph_create_edge_1): Add indirect_unknown_callee as argument. (cgraph_create_edge): Use the new argument. (cgraph_create_indirect_edge): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204026 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cgraph.c')
-rw-r--r--gcc/cgraph.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/gcc/cgraph.c b/gcc/cgraph.c
index d05d14b7954..3f6c334de04 100644
--- a/gcc/cgraph.c
+++ b/gcc/cgraph.c
@@ -817,7 +817,8 @@ cgraph_set_call_stmt (struct cgraph_edge *e, gimple new_stmt,
static struct cgraph_edge *
cgraph_create_edge_1 (struct cgraph_node *caller, struct cgraph_node *callee,
- gimple call_stmt, gcov_type count, int freq)
+ gimple call_stmt, gcov_type count, int freq,
+ bool indir_unknown_callee)
{
struct cgraph_edge *edge;
@@ -877,6 +878,7 @@ cgraph_create_edge_1 (struct cgraph_node *caller, struct cgraph_node *callee,
edge->indirect_info = NULL;
edge->indirect_inlining_edge = 0;
edge->speculative = false;
+ edge->indirect_unknown_callee = indir_unknown_callee;
if (call_stmt && caller->call_site_hash)
cgraph_add_edge_to_call_site_hash (edge);
@@ -890,9 +892,8 @@ cgraph_create_edge (struct cgraph_node *caller, struct cgraph_node *callee,
gimple call_stmt, gcov_type count, int freq)
{
struct cgraph_edge *edge = cgraph_create_edge_1 (caller, callee, call_stmt,
- count, freq);
+ count, freq, false);
- edge->indirect_unknown_callee = 0;
initialize_inline_failed (edge);
edge->next_caller = callee->callers;
@@ -929,10 +930,9 @@ cgraph_create_indirect_edge (struct cgraph_node *caller, gimple call_stmt,
gcov_type count, int freq)
{
struct cgraph_edge *edge = cgraph_create_edge_1 (caller, NULL, call_stmt,
- count, freq);
+ count, freq, true);
tree target;
- edge->indirect_unknown_callee = 1;
initialize_inline_failed (edge);
edge->indirect_info = cgraph_allocate_init_indirect_info ();