From 886796f9fafcfd676a03b35b3b07ab2c94efb43d Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Fri, 4 Jun 1999 07:14:10 +0000 Subject: [PATCH] Make LDRH/LDRB consistent with LDR when target is PC-relative --- opcodes/ChangeLog | 5 +++++ opcodes/arm-dis.c | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index d4f808033e9..3f7b96692c4 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,8 @@ +1999-06-03 Philip Blundell + + * arm-dis.c (print_insn_arm): Make LDRH/LDRB consistent with LDR + when target is PC-relative. + 1999-05-28 Linus Nordberg * 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 4aabf7286bc..5bc1350eb41 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); } -- 2.30.2