From d1271dedce4457a960fbe78d6679161c29274670 Mon Sep 17 00:00:00 2001 From: "J\"orn Rennecke" Date: Fri, 31 Oct 1997 00:23:07 +0000 Subject: [PATCH] profile.c (output_func_start_profiler): Clear flag_inline_functions for the duration of the call to rest_of_compilation. * profile.c (output_func_start_profiler): Clear flag_inline_functions for the duration of the call to rest_of_compilation. From-SVN: r16246 --- gcc/ChangeLog | 5 +++++ gcc/profile.c | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 48db0d85bdee..78f47c3bbfdb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Oct 31 00:16:55 1997 J"orn Rennecke + + * profile.c (output_func_start_profiler): Clear flag_inline_functions + for the duration of the call to rest_of_compilation. + Thu Oct 30 14:40:10 1997 Doug Evans * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf. diff --git a/gcc/profile.c b/gcc/profile.c index 13786cfa312e..1888ad0ef96c 100644 --- a/gcc/profile.c +++ b/gcc/profile.c @@ -1584,6 +1584,7 @@ output_func_start_profiler () char *name, *cfnname; rtx table_address; enum machine_mode mode = mode_for_size (LONG_TYPE_SIZE, MODE_INT, 0); + int save_flag_inline_functions = flag_inline_functions; /* It's either already been output, or we don't need it because we're not doing profile-arcs. */ @@ -1628,7 +1629,17 @@ output_func_start_profiler () expand_function_end (input_filename, lineno, 0); poplevel (1, 0, 1); + + /* Since fndecl isn't in the list of globals, it would never be emitted + when it's considered to be 'safe' for inlining, so turn off + flag_inline_functions. */ + flag_inline_functions = 0; + rest_of_compilation (fndecl); + + /* Reset flag_inline_functions to its original value. */ + flag_inline_functions = save_flag_inline_functions; + fflush (asm_out_file); current_function_decl = NULL_TREE; -- 2.47.2