diff options
author | Jason Merrill <merrill@gnu.org> | 1996-12-13 01:31:47 +0000 |
---|---|---|
committer | Jason Merrill <merrill@gnu.org> | 1996-12-13 01:31:47 +0000 |
commit | 469ac9939bb1bec320f7b3814de1f62423ea219a (patch) | |
tree | 16aaf051fd2c4b487fff6c48e868df681f121018 /gcc/final.c | |
parent | 97adc6ed4cac5b3e857ea1d8166972021ceb772f (diff) | |
download | gcc-469ac9939bb1bec320f7b3814de1f62423ea219a.zip gcc-469ac9939bb1bec320f7b3814de1f62423ea219a.tar.gz gcc-469ac9939bb1bec320f7b3814de1f62423ea219a.tar.bz2 |
x
From-SVN: r13305
Diffstat (limited to 'gcc/final.c')
-rw-r--r-- | gcc/final.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/gcc/final.c b/gcc/final.c index 40a0911..cc5bedf 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -1208,6 +1208,10 @@ final (first, file, optimize, prescan) last_ignored_compare = 0; new_block = 1; +#if defined (DWARF2_DEBUGGING_INFO) && defined (HAVE_prologue) + dwarf2out_frame_debug (NULL_RTX); +#endif + check_exception_handler_labels (); /* Make a map indicating which line numbers appear in this function. @@ -1370,12 +1374,6 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) if (write_symbols == DWARF_DEBUG) dwarfout_begin_function (); #endif -#ifdef DWARF2_DEBUGGING_INFO - /* This outputs a marker where the function body starts, so it - must be after the prologue. */ - if (write_symbols == DWARF2_DEBUG) - dwarf2out_begin_function (); -#endif break; } if (NOTE_LINE_NUMBER (insn) == NOTE_INSN_DELETED) @@ -2104,6 +2102,13 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) output_asm_insn (template, recog_operand); +#if defined (DWARF2_DEBUGGING_INFO) && defined (HAVE_prologue) + /* If this insn is part of the prologue, emit DWARF v2 + call frame info. */ + if (write_symbols == DWARF2_DEBUG && RTX_FRAME_RELATED_P (insn)) + dwarf2out_frame_debug (insn); +#endif + #if 0 /* It's not at all clear why we did this and doing so interferes with tests we'd like to do to use REG_WAS_0 notes, so let's try |