aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--opcodes/ChangeLog5
-rw-r--r--opcodes/arm-dis.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index d4f8080..3f7b966 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,8 @@
+1999-06-03 Philip Blundell <philb@gnu.org>
+
+ * arm-dis.c (print_insn_arm): Make LDRH/LDRB consistent with LDR
+ when target is PC-relative.
+
1999-05-28 Linus Nordberg <linus.nordberg@canit.se>
* m68k-opc.c: Rename MACL/MSACL to MAC/MSAC. Add MACM/MSACM. Add
diff --git a/opcodes/arm-dis.c b/opcodes/arm-dis.c
index 4aabf72..5bc1350 100644
--- a/opcodes/arm-dis.c
+++ b/opcodes/arm-dis.c
@@ -195,8 +195,12 @@ print_insn_arm (pc, info, given)
{
/* PC relative with immediate offset */
int offset = ((given & 0xf00) >> 4) | (given & 0xf);
+
if ((given & 0x00800000) == 0)
offset = -offset;
+
+ func (stream, "[pc, #%x]\t; ", offset);
+
(*info->print_address_func)
(offset + pc + 8, info);
}