aboutsummaryrefslogtreecommitdiff
path: root/gcc/varasm.c
diff options
context:
space:
mode:
authorMartin Jambor <mjambor@suse.cz>2011-04-11 17:17:44 +0200
committerMartin Jambor <jamborm@gcc.gnu.org>2011-04-11 17:17:44 +0200
commit9f9ebcdfc635e94463350898b625e0f3b1431ec0 (patch)
tree2c3c04107c858150dae9c1fa382093e2fa6bd141 /gcc/varasm.c
parent581985d71026fb5cf52fef156b76a619ce07e88c (diff)
downloadgcc-9f9ebcdfc635e94463350898b625e0f3b1431ec0.zip
gcc-9f9ebcdfc635e94463350898b625e0f3b1431ec0.tar.gz
gcc-9f9ebcdfc635e94463350898b625e0f3b1431ec0.tar.bz2
cgraph.c (cgraph_local_info): Call cgraph_get_node instead of cgraph_node, handle NULL return value.
2011-04-11 Martin Jambor <mjambor@suse.cz> gcc/ * cgraph.c (cgraph_local_info): Call cgraph_get_node instead of cgraph_node, handle NULL return value. (cgraph_global_info): Likewise. (cgraph_rtl_info): Likewise. * tree-inline.c (estimate_num_insns): Likewise. * gimplify.c (unshare_body): Likewise. (unvisit_body): Likewise. (gimplify_body): Likewise. * predict.c (optimize_function_for_size_p): Likewise. * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Likewise. (call_may_clobber_ref_p_1): Likewise. * varasm.c (function_section_1): Likewise. (assemble_start_function): Likewise. gcc/java/ * decl.c (java_mark_decl_local): Call cgraph_get_node instead of cgraph_node and handle returned NULL. From-SVN: r172258
Diffstat (limited to 'gcc/varasm.c')
-rw-r--r--gcc/varasm.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c
index 332f0f4..8365612 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -573,11 +573,14 @@ function_section_1 (tree decl, bool force_cold)
if (decl)
{
- struct cgraph_node *node = cgraph_node (decl);
+ struct cgraph_node *node = cgraph_get_node (decl);
- freq = node->frequency;
- startup = node->only_called_at_startup;
- exit = node->only_called_at_exit;
+ if (node)
+ {
+ freq = node->frequency;
+ startup = node->only_called_at_startup;
+ exit = node->only_called_at_exit;
+ }
}
if (force_cold)
freq = NODE_FREQUENCY_UNLIKELY_EXECUTED;
@@ -1575,11 +1578,12 @@ assemble_start_function (tree decl, const char *fnname)
}
else if (DECL_SECTION_NAME (decl))
{
+ struct cgraph_node *node = cgraph_get_node (current_function_decl);
/* Calls to function_section rely on first_function_block_is_cold
being accurate. */
- first_function_block_is_cold
- = (cgraph_node (current_function_decl)->frequency
- == NODE_FREQUENCY_UNLIKELY_EXECUTED);
+ first_function_block_is_cold = (node
+ && node->frequency
+ == NODE_FREQUENCY_UNLIKELY_EXECUTED);
}
in_cold_section_p = first_function_block_is_cold;