diff options
author | Richard Henderson <rth@redhat.com> | 2005-09-20 18:24:48 +0000 |
---|---|---|
committer | Richard Henderson <rth@redhat.com> | 2005-09-20 18:24:48 +0000 |
commit | 07a53e5cdb3d786ea59bdce443b307c04f691d17 (patch) | |
tree | c6d80f88c6b71d66e4542f13f824727056ef27b5 /gas/config/obj-elf.c | |
parent | d5cbaa15541c43d4df31e60fb61e7bc9a8b766fa (diff) | |
download | gdb-07a53e5cdb3d786ea59bdce443b307c04f691d17.zip gdb-07a53e5cdb3d786ea59bdce443b307c04f691d17.tar.gz gdb-07a53e5cdb3d786ea59bdce443b307c04f691d17.tar.bz2 |
* dwarf2dbg.c (struct line_entry): Replace frag and frag_ofs
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.
Diffstat (limited to 'gas/config/obj-elf.c')
-rw-r--r-- | gas/config/obj-elf.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c index 43e0c97..f922149 100644 --- a/gas/config/obj-elf.c +++ b/gas/config/obj-elf.c @@ -115,6 +115,7 @@ static const pseudo_typeS elf_pseudo_table[] = /* These are used for dwarf2. */ { "file", (void (*) (int)) dwarf2_directive_file, 0 }, { "loc", dwarf2_directive_loc, 0 }, + { "loc_mark_labels", dwarf2_directive_loc_mark_labels, 0 }, /* We need to trap the section changing calls to handle .previous. */ {"data", obj_elf_data, 0}, |