aboutsummaryrefslogtreecommitdiff
path: root/gas/dwarf2dbg.c
AgeCommit message (Collapse)AuthorFilesLines
2007-11-19 * dwarf2dbg.h (dwarf2_loc_directive_seen): New.Bob Wilson1-5/+5
* dwarf2dbg.c (loc_directive_seen): Make external and rename to... (dwarf2_loc_directive_seen): ...this. (dwarf2_emit_insn, dwarf2_consume_line_info) (dwarf2_emit_label, dwarf2_directive_loc): Use new name.
2007-11-19 * dwarf2dbg.c (dwarf2_emit_label): Use dwarf2_consume_line_info.Bob Wilson1-8/+2
2007-11-19 * dwarf2dbg.c (dwarf2_consume_line_info): New.Bob Wilson1-6/+16
(dwarf2_emit_insn): Use it here. (dwarf2_directive_loc): Fix check for consecutive .loc directives when debug_type is DEBUG_DWARF2. * dwarf2dbg.h (dwarf2_consume_line_info): New prototype. * config/tc-ia64.c (ia64_flush_insns): Call dwarf2_consume_line_info. (md_assemble): Likewise. testsuite/ * gas/lns/lns.exp: Run lns-common-1 with alternate source for ia64. * gas/lns/lns-common-1-ia64.s: New file.
2007-08-29 * dwarf2dbg.c (dwarf2_directive_loc): Emit duplicate .loc directives.Daniel Jacobowitz1-0/+5
* gas/lns/lns-duplicate.d, gas/lns/lns-duplicate.s: New. * gas/lns/lns.exp: Run lns-duplicate.
2007-08-242007-08-24 Joseph Myers <joseph@codesourcery.com>Joseph Myers1-6/+10
Paul Brook <paul@codesourcery.com> * remap.c: New. * as.h (remap_debug_filename, add_debug_prefix_map): Declare. * as.c (show_usage): Document --debug-prefix-map option. (parse_args): Handle --debug-prefix-map. * dwarf2dbg.c (out_file_list, out_debug_info): Remap debug paths. * stabs.c (stabs_generate_asm_file): Remap debug paths. * Makefile.am (GAS_CFILES): Add remap.c (GENERIC_OBJS): Add remap.o. Regenerate dependencies. * Makefile.in: Regenerate. * doc/as.texinfo (--debug-prefix-map): Document.
2007-07-03Switch to GPLv3Nick Clifton1-2/+2
2006-10-13* dwarf2dbg.c (out_debug_info): Use TC_DWARF2_EMIT_OFFSET to emit a disjoint ↵Nick Clifton1-7/+3
DW_AT range.
2006-08-08gas/ChangeLog:Bob Wilson1-1/+64
* dwarf2dbg.c (DWARF2_USE_FIXED_ADVANCE_PC): New. (out_sleb128): New. (out_fixed_inc_line_addr): New. (process_entries): Use out_fixed_inc_line_addr when DWARF2_USE_FIXED_ADVANCE_PC is set. * config/tc-xtensa.h (DWARF2_USE_FIXED_ADVANCE_PC): Define. gas/testsuite/ChangeLog: * gas/lns/lns-common-1-alt.d: New file. * gas/lns/lns.exp: Use lns-common-1-alt.d for xtensa targets.
2006-08-08* dwarf2dbg.c (out_debug_info): Add new parameter ranges_seg and emitNick Clifton1-7/+81
DW_AT_ranges when code in compilation unit is not contiguous. (out_debug_abbrev): Emit DW_AT_ranges abbreviation if code in is not contiguous. (dwarf2_finish): Create and pass ranges_seg to out_debug_info. (out_debug_ranges): New function to emit .debug_ranges section when code is not contiguous.
2006-06-07remove some duplicate #include's.Alan Modra1-1/+0
2006-05-05PR gas/2582Nick Clifton1-2/+25
* dwarf2dbg.c (INSERT_DIR_SEPARATOR): New macro. Handles the insertion of a directory separator character into a string at a given offset. Uses heuristics to decide when to use a backslash character rather than a forward-slash character. (dwarf2_directive_loc): Use the macro. (out_debug_info): Likewise.
2006-05-03 * subsegs.h (struct frchain): Delete frch_seg.Alan Modra1-19/+10
(frchain_root): Delete. (seg_info): Define as macro. * subsegs.c (frchain_root): Delete. (abs_seg_info, und_seg_info, absolute_frchain): Delete. (subsegs_begin, subseg_change): Adjust for above. (subseg_set_rest): Likewise. Add new frchain structs to seginfo rather than to one big list. (subseg_get): Don't special case abs, und sections. (subseg_new, subseg_force_new): Don't set frchainP here. (seg_info): Delete. (subsegs_print_statistics): Adjust frag chain control list traversal. * debug.c (dmp_frags): Likewise. * dwarf2dbg.c (first_frag_for_seg): Don't start looking for frag at frchain_root. Make use of known frchain ordering. (last_frag_for_seg): Likewise. (get_frag_fix): Likewise. Add seg param. (process_entries, out_debug_aranges): Adjust get_frag_fix calls. * write.c (chain_frchains_together_1): Adjust for struct frchain. (SUB_SEGMENT_ALIGN): Likewise. (subsegs_finish): Adjust frchain list traversal. * config/tc-xtensa.c (xtensa_cleanup_align_frags): Likewise. (xtensa_fix_target_frags, xtensa_mark_narrow_branches): Likewise. (xtensa_mark_zcl_first_insns, xtensa_fix_a0_b_retw_frags): Likewise. (xtensa_fix_b_j_loop_end_frags): Likewise. (xtensa_fix_close_loop_end_frags): Likewise. (xtensa_fix_short_loop_frags, xtensa_sanity_check): Likewise. (retrieve_segment_info): Delete frch_seg initialisation.
2006-04-28 * dwarf2dbg.c (get_line_subseg): Attach new struct line_seg to endAlan Modra1-4/+4
of list rather than beginning.
2006-02-28 * dwarf2dbg.c (get_filenum): Don't inadvertently decrease files_in_use.Alan Modra1-2/+3
2005-09-20 * dwarf2dbg.c (process_entries): Fix uninitialized variable warning.Richard Henderson1-2/+3
2005-09-20 * dwarf2dbg.c (struct line_entry): Replace frag and frag_ofsRichard Henderson1-74/+114
with label. (dwarf2_loc_mark_labels): New. (dwarf2_gen_line_info_1): Split out of ... (dwarf2_gen_line_info): ... here. Create the temp symbol here. (dwarf2_emit_label): New. (dwarf2_directive_loc_mark_labels): New. (out_set_addr): Take a symbol instead of frag+ofs. (relax_inc_line_addr): Likewise. (emit_inc_line_addr): Assert delta non-negative. (process_entries): Remove dead code. Update to work with temp symbols instead of frag+ofs. * dwarf2dbg.h (dwarf2_directive_loc_mark_labels): Declare. (dwarf2_emit_label, dwarf2_loc_mark_labels): Declare. * config/obj-elf.c (elf_pseudo_tab): Add loc_mark_labels. * config/obj-elf.h (obj_frob_label): New. * config/tc-alpha.c (alpha_define_label): Call dwarf2_emit_label. * config/tc-arm.c, config/tc-hppa.c, config/tc-m68k.c, config/tc-mips.c, config/tc-ppc.c, config/tc-sh.c, config/tc-xtensa.c: Similarly in the respective tc_frob_label implementation functions. * config/tc-i386.c (md_pseudo_table): Move file and loc to non-elf section; add loc_mark_labels. * config/tc-ia64.c (struct label_fix): Add dw2_mark_labels. (ia64_flush_insns): Check for marked labels; emit line entry if so. (emit_one_bundle): Similarly. (ia64_frob_label): Record marked labels. * config/tc-m68hc11.h (tc_frob_label): Remove. * config/tc-ms1.c (md_pseudo_table): Remove file and loc. * config/tc-sh.h (tc_frob_label): Pass sym to sh_frob_label. * config/tc-sh64.h (tc_frob_label): Likewise. * doc/as.texinfo (LNS directives): Docuement .loc_mark_blocks.
2005-09-07 * dwarf2dbg.c (dwarf2_where): Set line->isa.Richard Henderson1-56/+77
(dwarf2_set_isa): New. (dwarf2_directive_loc): Rearrange to allow all options on one line. * dwarf2dbg.h (dwarf2_set_isa): Declare. * doc/as.texinfo: Update .loc documentation. * gas/lns/lns-common-1.d: Don't match header or special opcode numbers. * gas/lns/lns-common-1.s: Update for syntax change. * gas/lns/lns-diag-1.[sl]: Likewise.
2005-09-07 * dwarf2dbg.c: Include safe-ctype.h.Richard Henderson1-59/+146
(DWARF2_LINE_OPCODE_BASE): Bump to 13. (current): Initialize. (dwarf2_emit_insn): Clear DWARF2_FLAG_BASIC_BLOCK, DWARF2_FLAG_PROLOGUE_END, DWARF2_FLAG_EPILOGUE_BEGIN. (dwarf2_directive_file): Cope with invalid filename. (dwarf2_directive_loc): Add handling for basic_block, prologue_end, epilogue_begin, is_stmt, isa. (emit_inc_line_addr): Move line_delta == 0, addr_delta == 0 special case down lower. (process_entries): Handle isa, DWARF2_FLAG_PROLOGUE_END, and DWARF2_FLAG_EPILOGUE_BEGIN. (out_debug_line): Emit sizes for DW_LNS_set_prologue_end, DW_LNS_set_epilogue_begin, DW_LNS_set_isa. * dwarf2dbg.h (DWARF2_FLAG_IS_STMT): Rename from DWARF2_FLAG_BEGIN_STMT. (DWARF2_FLAG_BASIC_BLOCK): Rename from DWARF2_FLAG_BEGIN_BLOCK. (DWARF2_FLAG_PROLOGUE_END, DWARF2_FLAG_EPILOGUE_BEGIN): New. (struct dwarf2_line_info): Add isa member. * doc/as.texinfo (LNS directives): New node.
2005-08-11 * README-vms: Delete.Alan Modra1-53/+0
* config-gas.com: Delete. * makefile.vms: Delete. * vmsconf.sh: Delete. * config/atof-tahoe.c: Delete. * config/m88k-opcode.h: Delete. * config/obj-bout.c: Delete. * config/obj-bout.h: Delete. * config/obj-hp300.c: Delete. * config/obj-hp300.h: Delete. * config/tc-a29k.c: Delete. * config/tc-a29k.h: Delete. * config/tc-h8500.c: Delete. * config/tc-h8500.h: Delete. * config/tc-m88k.c: Delete. * config/tc-m88k.h: Delete. * config/tc-tahoe.c: Delete. * config/tc-tahoe.h: Delete. * config/tc-tic80.c: Delete. * config/tc-tic80.h: Delete. * config/tc-w65.c: Delete. * config/tc-w65.h: Delete. * config/te-aux.h: Delete. * config/te-delt88.h: Delete. * config/te-delta.h: Delete. * config/te-dpx2.h: Delete. * config/te-hp300.h: Delete. * config/te-ic960.h: Delete. * config/vms-a-conf.h: Delete. * doc/c-a29k.texi: Delete. * doc/c-h8500.texi: Delete. * doc/c-m88k.texi: Delete. * README: Remove obsolete examples, and list of supported targets. * Makefile.am: Remove a29k, h8500, m88k, tahoe, tic80, w65, bout and hp300 support. (DEP_FLAGS): Don't define BFD_ASSEMBLER. * configure.in: Remove --enable-bfd-assembler, need_bfd, primary_bfd_gas. * configure.tgt: Remove a29k, h8300-coff, h8500-*, i960 non-elf, m68k non bfd, m88k, or32-coff, tic80-*, vax non-bfd, w65k-*, *-nindy. * as.c: Remove all non-BFD_ASSEMBLER code, support for above targets. * as.h: Likewise. * dw2gencfi.c: Likewise. * dwarf2dbg.c: Likewise. * ehopt.c: Likewise. * input-file.c: Likewise. * listing.c: Likewise. * literal.c: Likewise. * messages.c: Likewise. * obj.h: Likewise. * output-file.c: Likewise. * read.c: Likewise. * stabs.c: Likewise. * struc-symbol.h: Likewise. * subsegs.c: Likewise. * subsegs.h: Likewise. * symbols.c: Likewise. * symbols.h: Likewise. * tc.h: Likewise. * write.c: Likewise. * write.h: Likewise. * config/aout_gnu.h: Likewise. * config/obj-aout.c: Likewise. * config/obj-aout.h: Likewise. * config/obj-coff.c: Likewise. * config/obj-coff.h: Likewise. * config/obj-evax.h: Likewise. * config/obj-ieee.h: Likewise. * config/tc-arm.c: Likewise. * config/tc-arm.h: Likewise. * config/tc-avr.c: Likewise. * config/tc-avr.h: Likewise. * config/tc-crx.h: Likewise. * config/tc-d10v.h: Likewise. * config/tc-d30v.h: Likewise. * config/tc-dlx.h: Likewise. * config/tc-fr30.h: Likewise. * config/tc-frv.h: Likewise. * config/tc-h8300.c: Likewise. * config/tc-h8300.h: Likewise. * config/tc-hppa.h: Likewise. * config/tc-i370.h: Likewise. * config/tc-i386.c: Likewise. * config/tc-i386.h: Likewise. * config/tc-i860.h: Likewise. * config/tc-i960.c: Likewise. * config/tc-i960.h: Likewise. * config/tc-ip2k.h: Likewise. * config/tc-iq2000.h: Likewise. * config/tc-m32c.h: Likewise. * config/tc-m32r.h: Likewise. * config/tc-m68hc11.h: Likewise. * config/tc-m68k.c: Likewise. * config/tc-m68k.h: Likewise. * config/tc-maxq.c: Likewise. * config/tc-maxq.h: Likewise. * config/tc-mcore.c: Likewise. * config/tc-mcore.h: Likewise. * config/tc-mn10200.h: Likewise. * config/tc-mn10300.c: Likewise. * config/tc-mn10300.h: Likewise. * config/tc-ms1.h: Likewise. * config/tc-msp430.c: Likewise. * config/tc-msp430.h: Likewise. * config/tc-ns32k.c: Likewise. * config/tc-ns32k.h: Likewise. * config/tc-openrisc.h: Likewise. * config/tc-or32.c: Likewise. * config/tc-or32.h: Likewise. * config/tc-ppc.c: Likewise. * config/tc-ppc.h: Likewise. * config/tc-s390.h: Likewise. * config/tc-sh.c: Likewise. * config/tc-sh.h: Likewise. * config/tc-sparc.c: Likewise. * config/tc-tic30.c: Likewise. * config/tc-tic30.h: Likewise. * config/tc-tic4x.c: Likewise. * config/tc-tic4x.h: Likewise. * config/tc-tic54x.c: Likewise. * config/tc-tic54x.h: Likewise. * config/tc-v850.h: Likewise. * config/tc-vax.c: Likewise. * config/tc-vax.h: Likewise. * config/tc-xstormy16.h: Likewise. * config/tc-xtensa.h: Likewise. * config/tc-z8k.c: Likewise. * config/tc-z8k.h: Likewise. * config/vms-a-conf.h * doc/Makefile.am: Likewise. * doc/all.texi: Likewise. * doc/as.texinfo: Likewise. * doc/Makefile.in: Regenerate. * Makefile.in: Regenerate. * configure: Regenerate. * config.in: Regenerate. * po/POTFILES.in: Regenerate.
2005-05-05Update the address and phone number of the FSFNick Clifton1-2/+2
2005-03-03update copyright datesAlan Modra1-1/+2
2005-01-27 * dwarf2dbg.c (dwarf2_finish): Correct logic for determining whenNathan Sidwell1-13/+22
to emit .debug_line and other debug sections. * as.h (seg_not_empty_p): Declare. * subsegs.c (seg_not_empty_p): New predicate.
2004-11-22 * dwarf2dbg.c (dwarf2_finish): Don't write a .debug_line sectionBob Wilson1-3/+2
without a corresponding .debug_info section.
2004-11-02(dwarf2_finish): Check for the existence of a file table before deciding toNick Clifton1-1/+2
produce a .debug_line section to match up with a user provided .debug_info section.
2004-04-29Add support for generating DWARF2 debug sections in the x86 PE portNick Clifton1-4/+7
2004-02-132004-02-13 Hannes Reinecke <hare@suse.de>Andreas Jaeger1-2/+2
Jakub Jelinek <jakub@redhat.com> * dwarf2dbg.c (get_filenum): Do not read beyond allocated memory.
2004-02-06.:Nathan Sidwell1-1/+1
* dwarf2dbg.c (DWARF2_ADDR_SIZE): Remove trailing ';' * read.h (SKIP_WHITESPACE): Turn into an expression. * read.c (read_a_source_file): A pseudo is removed by having a NULL handler. testsuite: * gas/macros/test2.s: Lowercase it.
2003-12-06 * dwarf2dbg.c: Convert to ISO-C.Kazu Hirata1-2/+1
* write.c: Likewise. * write.h: Likewise.
2003-11-23 * README-vms: Fix comment typos.Kazu Hirata1-1/+1
* as.h: Likewise. * dwarf2dbg.c: Likewise. * ecoff.c: Likewise. * hash.c: Likewise. * listing.c: Likewise. * write.c: Likewise.
2003-11-21 * depend.c: Convert to ISO-C.Kazu Hirata1-105/+59
* dwarf2dbg.c: Likewise. * dwarf2dbg.h: Likewise.
2003-07-16 * dwarf2dbg.c (get_frag_fix): Revert 2001-11-15 change.Alan Modra1-10/+6
(generic_dwarf2_emit_offset): Don't define function when TC__DWARF2_EMIT_OFFSET is defined.
2003-05-27 * symbols.c (temp_label_name): New.Richard Henderson1-37/+13
(symbol_temp_new, symbol_temp_new_now, symbol_temp_make): New. (symbol_set_value_now): New. * symbols.h: Prototype them. * dwarf2dbg.c: Use them. (fake_label_name, symbol_new_now, set_symbol_value_now): Remove.
2003-04-21 * dwarf2dbg.c (get_filenum): Skip as-yet unassigned file numbers.Richard Henderson1-0/+3
(out_file_list): Assign non-null filename after generating error.
2003-03-11 * dwarf2dbg.c (generic_dwarf2_emit_offset): New.Richard Henderson1-12/+24
(TC_DWARF2_EMIT_OFFSET): Provide default. (out_debug_aranges, out_debug_info): Use it. * config/tc-ia64.c (ia64_dwarf2_emit_offset): New. (ia64_cons_fix_new): Move FUNC_DTP_RELATIVE handling ... (ia64_gen_real_reloc_type): ... here. * config/tc-ia64.h (TC_DWARF2_EMIT_OFFSET): New.
2003-01-28Add code to create and use directory tables.Nick Clifton1-33/+114
2002-12-25* dwarf2dbg.c (DWARF2_ADDR_SIZE): New macro.Alexandre Oliva1-2/+7
(dwarf2_finish): Use it. * doc/internals.texi (DWARF2_ADDR_SIZE): Document it. * config/tc-mips.h (DWARF2_ADDR_SIZE): Override.
2002-12-04 * dwarf2dbg.c (scale_addr_delta): Correct parameter. Move prototypeAlan Modra1-2/+3
inside #if.
2002-11-30s/boolean/bfd_boolean/ s/true/TRUE/ s/false/FALSE/. SimplifyAlan Modra1-4/+4
comparisons of bfd_boolean vars with TRUE/FALSE. Formatting.
2002-11-26* dwarf2dbg.c (scale_addr_delta): New.DJ Delorie1-8/+22
(size_inc_line_addr): Use it. (emit_inc_line_addr): Use it.
2002-11-18Add support for 64-bit DWARF 2 formats to gas.Kevin Buettner1-6/+60
2002-09-17 * dwarf2dbg.c (out_debug_abbrev): Add support for the DW_AT_name field.Richard Henderson1-0/+11
(out_debug_info): Likewise.
2002-08-27 * dwarf2dbg.c: Always include dwarf2dbg.h.Alan Modra1-3/+5
(dwarf2_directive_file): Adjust dummy version args. * ecoff.c (ecoff_directive_weakext): Add ATTRIBUTE_UNUSED. * expr.c (clean_up_expression <O_subtract>): Allow subtraction when symbol values differ. * read.c (do_align): Add ATTRIBUTE_UNUSED to label. (pseudo_set <O_subtract>): Remove unnecessary segment test. * config/obj-bout.c (obj_pseudo_table): Warning fix.
2002-08-012002-08-01 H.J. Lu <hjl@gnu.org>Daniel Jacobowitz1-2/+9
Daniel Jacobowitz <drow@mvista.com> * dwarf2dbg.c (dwarf2_finish): Don't emit unreferenced .debug_line section unless it has line information.
2002-06-142002-06-14 H.J. Lu <hjl@gnu.org>Daniel Jacobowitz1-5/+11
Daniel Jacobowitz <drow@mvista.com> * dwarf2dbg.h (dwarf2_directive_file): Return char *. * dwarf2dbg.c (dwarf2_directive_file): Return filename. * config/tc-mips.c (s_mips_file): Call s_app_file_string and new_logical_line for the first .file directive. * read.c (s_app_file_string): New function. (s_app_file): Call it. * read.h (s_app_file_string): Add declaration. 2002-06-14 Daniel Jacobowitz <drow@mvista.com> * configure.in: Remove MIPS_STABS_ELF. * configure: Regenerated. * config.in: Regenerated. * config/obj-elf.h (ECOFF_DEBUGGING): Define to mips_flag_mdebug for MIPS targets. * config/tc-mips.c (mips_pseudo_table): Remove #ifdef around ".extern". (pdr_seg): Declare unconditionally. (md_begin): Always generate .pdr unless ECOFF_DEBUGGING or not ELF. (s_mips_end): Likewise. Generate stabs function markers. (s_mips_ent): Generate stabs function markers. (s_mips_frame): Always generate .pdr unless ECOFF_DEBUGGING or not ELF. (s_mips_mask): Likewise. (mips_flag_mdebug): New. (md_longopts): Add "mdebug" and "no-mdebug". (md_parse_options): Add OPTION_MDEBUG and OPTION_NO_MDEBUG. (mips_after_parse_args): Set mips_flag_mdebug. * doc/as.texinfo: Add "-mdebug" and "-no-mdebug" for MIPS. 2002-06-14 Daniel Jacobowitz <drow@mvista.com> * gas/mips/lineno.d: Use --gstabs. * gas/mips/mips.exp (lineno.s): Remove XFAIL.
2002-05-232002-05-22 H.J. Lu <hjl@gnu.org>H.J. Lu1-1/+4
* dwarf2dbg.c (dwarf2_directive_loc): Call listing_source_file for source file.
2002-05-222002-05-22 H.J. Lu <hjl@gnu.org>H.J. Lu1-6/+13
* dwarf2dbg.c (dwarf2_emit_insn): Emit only one line symbol for one .loc for compiler.
2002-05-13Do not reset loc_directive_seen in dwarf2_emit_insn.Nick Clifton1-9/+11
2002-05-11Use the 'current' struct filled by dwarf2_directive_loc, instead of callingNick Clifton1-1/+6
dwarf2_where.
2002-05-03 * as.h: Fix formatting.Kazu Hirata1-1/+1
* cgen.c: Likewise. * cgen.h: Likewise. * dwarf2dbg.c: Likewise. * frags.h: Likewise. * gasp.c: Likewise. * macro.c: Likewise. * read.c: Likewise. * stabs.c: Likewise. * symbols.c: Likewise.
2002-04-17 * dwarf2dbg.c (dwarf2_gen_line_info): Do emit duplicate lineGeoffrey Keating1-2/+6
numbers, gdb relies on them to detect the start of the prologue.