diff options
author | J"orn Rennecke <amylaar@cygnus.co.uk> | 1997-10-31 00:23:07 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 1997-10-31 00:23:07 +0000 |
commit | d1271dedce4457a960fbe78d6679161c29274670 (patch) | |
tree | 3a948569f6f18f55c7bfa641b669c7109e260703 /gcc/profile.c | |
parent | c0498f43952873c5270b6830332fb936e454dc84 (diff) | |
download | gcc-d1271dedce4457a960fbe78d6679161c29274670.zip gcc-d1271dedce4457a960fbe78d6679161c29274670.tar.gz gcc-d1271dedce4457a960fbe78d6679161c29274670.tar.bz2 |
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
Diffstat (limited to 'gcc/profile.c')
-rw-r--r-- | gcc/profile.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/profile.c b/gcc/profile.c index 13786cf..1888ad0 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; |