summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/xcoffout.c10
2 files changed, 15 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3724b488670..2ddab527cd1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Wed Jul 1 22:25:43 1998 Jim Wilson <wilson@cygnus.com>
+
+ * xcoffout.c (xcoffout_begin_function): Call xcoffout_block for
+ the zero'th block.
+
Wed Jul 1 23:12:58 1998 Ken Raeburn <raeburn@cygnus.com>
* h8300.c (print_operand): Delete %L support.
diff --git a/gcc/xcoffout.c b/gcc/xcoffout.c
index ebbd9c6c4ff..baa0cd2ed01 100644
--- a/gcc/xcoffout.c
+++ b/gcc/xcoffout.c
@@ -500,6 +500,16 @@ xcoffout_begin_function (file, last_linenum)
{
ASM_OUTPUT_LFB (file, last_linenum);
dbxout_parms (DECL_ARGUMENTS (current_function_decl));
+
+ /* Emit the symbols for the outermost BLOCK's variables. sdbout.c does this
+ in sdbout_begin_block, but there is no guarantee that there will be any
+ inner block 1, so we must do it here. This gives a result similar to
+ dbxout, so it does make some sense. */
+ do_block = 0;
+ next_block_number = 0;
+ xcoffout_block (DECL_INITIAL (current_function_decl), 0,
+ DECL_ARGUMENTS (current_function_decl));
+
ASM_OUTPUT_SOURCE_LINE (file, last_linenum);
}