aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraph.c
diff options
context:
space:
mode:
authorMarkus Trippelsdorf <markus@trippelsdorf.de>2013-10-24 17:28:11 +0000
committerJeff Law <law@gcc.gnu.org>2013-10-24 11:28:11 -0600
commit51ce05475cc79a06001eae1163e719f570c7a9a9 (patch)
treefae08a5e55e655a3b6b16ff9f5faa818a6b4fc0d /gcc/cgraph.c
parentc0f5c38c51a1380cc26694158a2f867f3765ec9b (diff)
downloadgcc-51ce05475cc79a06001eae1163e719f570c7a9a9.zip
gcc-51ce05475cc79a06001eae1163e719f570c7a9a9.tar.gz
gcc-51ce05475cc79a06001eae1163e719f570c7a9a9.tar.bz2
re PR other/58712 (issues found by --enable-checking=valgrind)
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. From-SVN: r204026
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 d05d14b..3f6c334 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 ();