aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-m68k.c12
-rw-r--r--gas/config/tc-m68k.h2
2 files changed, 14 insertions, 0 deletions
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