aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>1999-09-15 13:19:32 +0000
committerJeff Law <law@redhat.com>1999-09-15 13:19:32 +0000
commitb52c78b8a609357b636cd3ce4fd453b4f9a76092 (patch)
treed11fb5483dbe32f7954fc6fd9b772eb420e08016
parent2d93dcc4506d364e1d5672520668b1fdd485d958 (diff)
downloadgdb-b52c78b8a609357b636cd3ce4fd453b4f9a76092.zip
gdb-b52c78b8a609357b636cd3ce4fd453b4f9a76092.tar.gz
gdb-b52c78b8a609357b636cd3ce4fd453b4f9a76092.tar.bz2
* config/tc-hppa.c (pa_ip): Move dwarf2 stuff from here.
(md_assemble): To here. Tweak address generation.
-rw-r--r--gas/ChangeLog3
-rw-r--r--gas/config/tc-hppa.c24
2 files changed, 15 insertions, 12 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index f8f3b45..cd141f2 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,8 @@
Wed Sep 15 05:14:32 1999 Jeffrey A Law (law@cygnus.com)
+ * config/tc-hppa.c (pa_ip): Move dwarf2 stuff from here.
+ (md_assemble): To here. Tweak address generation.
+
* config/tc-hppa.c: Include dwarf2dbg.h if OBJ_ELF. Declare
debug_line.
(md_pseudo_table): Add .file and .line pseudo-ops for OBJ_ELF.
diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c
index eda75aa..50a9f5a 100644
--- a/gas/config/tc-hppa.c
+++ b/gas/config/tc-hppa.c
@@ -1460,9 +1460,19 @@ md_assemble (str)
#ifdef OBJ_ELF
if (debug_type == DEBUG_DWARF2)
- dwarf2_where (&debug_line);
-#endif
+ {
+ bfd_vma addr;
+
+ /* I haven't got a clue why the -8 is necessary, but this
+ seems to work. Someone should really document what all
+ the frag nonsense does and more precisely what the dwarf2
+ code needs. */
+ addr = frag_now->fr_address + frag_now_fix () - 8;
+ dwarf2_gen_line_info (addr, &debug_line);
+ dwarf2_where (&debug_line);
+ }
+#endif
}
/* Do the real work for assembling a single instruction. Store results
@@ -3377,16 +3387,6 @@ pa_ip (str)
break;
}
-#ifdef OBJ_ELF
- if (debug_type == DEBUG_DWARF2)
- {
- bfd_vma addr;
-
- addr = frag_now->fr_address + frag_now_fix ();
- dwarf2_gen_line_info (addr, &debug_line);
- }
-#endif
-
the_insn.opcode = opcode;
}