diff options
author | Andreas Schwab <schwab@linux-m68k.org> | 2001-07-18 10:25:58 +0000 |
---|---|---|
committer | Andreas Schwab <schwab@linux-m68k.org> | 2001-07-18 10:25:58 +0000 |
commit | f27a38390b050e2b546c5265806979bd5203c95c (patch) | |
tree | 986ad8dc9356b0b9d05dd73b015b4d41e4064fe0 /gas | |
parent | bf1bef8f1c96f5d6cde8ae6f3f0ef4ff93a800a1 (diff) | |
download | gdb-f27a38390b050e2b546c5265806979bd5203c95c.zip gdb-f27a38390b050e2b546c5265806979bd5203c95c.tar.gz gdb-f27a38390b050e2b546c5265806979bd5203c95c.tar.bz2 |
* config/tc-m68k.c (md_pseudo_table) [OBJ_ELF]: Add .file and
.loc.
(md_assemble) [OBJ_ELF]: Call dwarf2_emit_insn before emitting
insn.
* config/tc-m68k.h (DWARF2_LINE_MIN_INSN_LENGTH): Define.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 8 | ||||
-rw-r--r-- | gas/config/tc-m68k.c | 12 | ||||
-rw-r--r-- | gas/config/tc-m68k.h | 2 |
3 files changed, 22 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 2c3ea50..d665ac4 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,11 @@ +2001-07-17 Andreas Schwab <schwab@suse.de> + + * config/tc-m68k.c (md_pseudo_table) [OBJ_ELF]: Add .file and + .loc. + (md_assemble) [OBJ_ELF]: Call dwarf2_emit_insn before emitting + insn. + * config/tc-m68k.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. + 2001-07-17 matthew green <mrg@eterna.com.au> * config/tc-i386.c (comment_chars): Don't use '/' as comment start if diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c index a15d9f5..32e18f7 100644 --- a/gas/config/tc-m68k.c +++ b/gas/config/tc-m68k.c @@ -24,6 +24,7 @@ #include "as.h" #include "obstack.h" #include "subsegs.h" +#include "dwarf2dbg.h" #include "opcode/m68k.h" #include "m68k-parse.h" @@ -558,6 +559,12 @@ const pseudo_typeS md_pseudo_table[] = {"extend", float_cons, 'x'}, {"ldouble", float_cons, 'x'}, +#ifdef OBJ_ELF + /* Dwarf2 support for Gcc. */ + {"file", dwarf2_directive_file, 0}, + {"loc", dwarf2_directive_loc, 0}, +#endif + /* The following pseudo-ops are supported for MRI compatibility. */ {"chip", s_chip, 0}, {"comline", s_space, 1}, @@ -3612,6 +3619,11 @@ md_assemble (str) current_label = NULL; } +#ifdef OBJ_ELF + /* Tie dwarf2 debug info to the address at the start of the insn. */ + dwarf2_emit_insn (0); +#endif + if (the_ins.nfrag == 0) { /* No frag hacking involved; just put it out */ diff --git a/gas/config/tc-m68k.h b/gas/config/tc-m68k.h index 1631e53..56879d2 100644 --- a/gas/config/tc-m68k.h +++ b/gas/config/tc-m68k.h @@ -233,3 +233,5 @@ extern struct relax_type md_relax_table[]; if (aim==0 && this_state== 4) { /* hard encoded from tc-m68k.c */ \ aim=this_type->rlx_forward+1; /* Force relaxation into word mode */ \ } + +#define DWARF2_LINE_MIN_INSN_LENGTH 2 |