aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1999-01-08 00:46:25 +0000
committerJeff Law <law@gcc.gnu.org>1999-01-07 17:46:25 -0700
commit2668793e69871aa499e43a5b368453e0f5cee831 (patch)
treecefdc2dec658056ca3dc5605956f897becd2a7e9
parent621f5a0fd8f8bac451bc54166e5a076a7880d87c (diff)
downloadgcc-2668793e69871aa499e43a5b368453e0f5cee831.zip
gcc-2668793e69871aa499e43a5b368453e0f5cee831.tar.gz
gcc-2668793e69871aa499e43a5b368453e0f5cee831.tar.bz2
toplev.c (compile_file): Move call to output_func_start_profiler to after the loop to emit deferred...
* toplev.c (compile_file): Move call to output_func_start_profiler to after the loop to emit deferred functions. From-SVN: r24567
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/toplev.c11
2 files changed, 14 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a71ab6e..9aaf201 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Fri Jan 8 01:43:53 1999 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (compile_file): Move call to output_func_start_profiler
+ to after the loop to emit deferred functions.
+
Thu Jan 7 11:26:17 1999 Mark Mitchell <mark@markmitchell.com>
* calls.c (store_unaligned_arguments_into_pseudos): Use xmalloc to
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 5608af6..bef0033 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -2907,8 +2907,6 @@ compile_file (name)
poplevel (0, 0, 0);
}
- output_func_start_profiler ();
-
/* Compilation is now finished except for writing
what's left of the symbol table output. */
@@ -3014,6 +3012,15 @@ compile_file (name)
}
}
+ /* This must occur after the loop to output deferred functions. Else
+ the profiler initializer would not be emitted if all the functions
+ in this compilation unit were deferred.
+
+ output_func_start_profiler can not cause any additional functions or
+ data to need to be output, so it need not be in the deferred function
+ loop above. */
+ output_func_start_profiler ();
+
/* Now that all possible functions have been output, we can dump
the exception table. */