From 51ce05475cc79a06001eae1163e719f570c7a9a9 Mon Sep 17 00:00:00 2001 From: Markus Trippelsdorf Date: Thu, 24 Oct 2013 17:28:11 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 8 ++++++++ gcc/cgraph.c | 10 +++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8b663b63a24..eb381b4daa8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2013-10-24 Markus Trippelsdorf + + 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. + 2013-10-24 Joern Rennecke * gcc/config/arc/arc.c (arc_ccfsm_post_advance): Also handle 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 (); -- 2.30.2