From: Aldy Hernandez Date: Tue, 6 Nov 2012 23:55:20 +0000 (+0000) Subject: Handle null current_function_decl in cgraph_debug_gimple_stmt X-Git-Tag: releases/gcc-4.8.0~2190 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=27f7e1c331267244a7dbace1f38192f98ef8fad0;p=thirdparty%2Fgcc.git Handle null current_function_decl in cgraph_debug_gimple_stmt * cfghooks.c (cgraph_debug_gimple_stmt): Handle a null current_function_decl. From-SVN: r193269 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7cc405127af4..1cde0fa59a45 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2012-11-06 Aldy Hernandez + + * cgraph.c (cgraph_debug_gimple_stmt): Handle a null + current_function_decl. + 2012-11-06 Richard Henderson * tree-ssa-tail-merge.c (find_duplicate): Do not consider diff --git a/gcc/cgraph.c b/gcc/cgraph.c index c9ff5c6de8d1..556eaff29d42 100644 --- a/gcc/cgraph.c +++ b/gcc/cgraph.c @@ -2250,10 +2250,19 @@ verify_edge_count_and_frequency (struct cgraph_edge *e) static void cgraph_debug_gimple_stmt (struct function *this_cfun, gimple stmt) { + bool fndecl_was_null = false; /* debug_gimple_stmt needs correct cfun */ if (cfun != this_cfun) set_cfun (this_cfun); + /* ...and an actual current_function_decl */ + if (!current_function_decl) + { + current_function_decl = this_cfun->decl; + fndecl_was_null = true; + } debug_gimple_stmt (stmt); + if (fndecl_was_null) + current_function_decl = NULL; } /* Verify that call graph edge E corresponds to DECL from the associated