diff options
author | Richard Henderson <rth@redhat.com> | 2000-11-17 08:47:52 +0000 |
---|---|---|
committer | Richard Henderson <rth@redhat.com> | 2000-11-17 08:47:52 +0000 |
commit | 4dc7ead9fdf2143fa28755909c2cf9f47659aca4 (patch) | |
tree | 454af0e6a42bb531e86fbf5986c68eb863bfc2cc /gas/read.c | |
parent | 512d22f487a268fc32a4a9a6a88e8ac538ad8448 (diff) | |
download | binutils-4dc7ead9fdf2143fa28755909c2cf9f47659aca4.zip binutils-4dc7ead9fdf2143fa28755909c2cf9f47659aca4.tar.gz binutils-4dc7ead9fdf2143fa28755909c2cf9f47659aca4.tar.bz2 |
* as.c (debug_type): Init to DEBUG_UNSPECIFIED.
* as.h (debug_type): Clarify documentation of the meaning
of this variable.
* dwarf2dbg.c (DWARF2_LINE_MIN_INSN_LENGTH): Default to 1.
(print_stats): Fix parenthesis problem.
(now_subseg_size): New.
(dwarf2_finish): Use it. If DEBUG_DWARF2, emit bits for .debug_info.
(dwarf2_directive_file): Don't set debug_type.
(dwarf2_where): Honor DEBUG_DWARF2 first.
(dwarf2_emit_insn): Renamed from dwarf2_generate_asm_lineno;
do nothing if not emitting dwarf2 debug info, or no work.
* dwarf2dbg.h (dwarf2_emit_insn): Update.
* ecoff.c (add_file): Turn on DEBUG_ECOFF only if DEBUG_UNSPECIFIED.
(ecoff_new_file): Likewise.
* read.c (generate_lineno_debug): Kill ecoff hackery. Update
commentary wrt dwarf2.
* config/tc-alpha.c (alpha_adjust_symtab_relocs): Add
ATTRIBUTE_UNUSED as needed.
(emit_insn): Call dwarf2_emit_insn.
(s_alpha_file): New.
(s_alpha_loc): New.
(s_alpha_coff_wrapper): Don't handle them.
(md_pseudo_table): Update for .file and .loc.
* config/tc-alpha.h (DWARF2_LINE_MIN_INSN_LENGTH): New.
* config/tc-arm.c (output_inst): Update for dwarf2_emit_insn;
don't protect with debug_type.
* config/tc-hppa.c (md_assemble): Likewise.
* config/tc-m68hc11.c (m68hc11_new_insn): Likewise.
* config/tc-mn10300.c (md_assemble): Likewise.
* config/tc-sh.c (md_assemble): Likewise.
* config/tc-v850.c (md_assemble): Likewise.
* config/tc-arm.c (arm_end_of_source): Remove.
* config/tc-hppa.c (pa_end_of_source): Remove.
* config/tc-m68hc11.c (m68hc11_end_of_source): Remove.
* config/tc-mn10300.c (mn10300_finalize): Remove.
* config/tc-sh.c (sh_finalize): Remove.
* config/tc-v850.c (sh_finalize): Remove.
* config/tc-arm.h (md_end): Remove.
* config/tc-hppa.h (md_end): Remove.
(DWARF2_LINE_MIN_INSN_LENGTH): New.
* config/tc-m68hc11.h (md_end): Remove.
* config/tc-mn10300.h (md_end): Remove.
* config/tc-sh.h (md_end): Remove.
* config/tc-v850.h (md_end): Remove.
* config/tc-ia64.c (emit_one_bundle): Don't protect
dwarf2 bits with debug_type.
(md_assemble): Likewise.
(ia64_end_of_source): Don't call dwarf2_finish.
Diffstat (limited to 'gas/read.c')
-rw-r--r-- | gas/read.c | 26 |
1 files changed, 5 insertions, 21 deletions
@@ -4982,22 +4982,11 @@ generate_file_debug () void generate_lineno_debug () { -#ifdef ECOFF_DEBUGGING - /* ECOFF assemblers automatically generate debugging information. - FIXME: This should probably be handled elsewhere. */ - if (debug_type == DEBUG_UNSPECIFIED) - { - if (ECOFF_DEBUGGING && ecoff_no_current_file ()) - debug_type = DEBUG_ECOFF; - else - debug_type = DEBUG_NONE; - } -#endif - switch (debug_type) { case DEBUG_UNSPECIFIED: case DEBUG_NONE: + case DEBUG_DWARF: break; case DEBUG_STABS: stabs_generate_asm_lineno (); @@ -5005,16 +4994,11 @@ generate_lineno_debug () case DEBUG_ECOFF: ecoff_generate_asm_lineno (); break; - case DEBUG_DWARF: case DEBUG_DWARF2: - /* This cannot safely be done in a generic manner. A single - binary instruction word may span mutliple lines of assembler - source and may occupy a variable number of bytes. Instead, - if a port wishes to support DWARF2 line number generation by - the assembler, it should add a call to dwarf2_generate_asm_lineno - inside md_assemble() at whatever point is appropriate. Note, - such a port should also define md_end and make sure that - dwarf2_finish is called, to emit the accumulated line information. */ + /* ??? We could here indicate to dwarf2dbg.c that something + has changed. However, since there is additional backend + support that is required (calling dwarf2_emit_insn), we + let dwarf2dbg.c call as_where on its own. */ break; } } |