aboutsummaryrefslogtreecommitdiff
path: root/opcodes/arm-dis.c
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>1999-06-04 07:14:10 +0000
committerNick Clifton <nickc@redhat.com>1999-06-04 07:14:10 +0000
commit886796f9fafcfd676a03b35b3b07ab2c94efb43d (patch)
tree843af391a00ee5f96ef1d2d708ac9cd2034d0984 /opcodes/arm-dis.c
parent5164c3826e490e56fb3f48afb0b3a78ea84f4e3f (diff)
downloadgdb-886796f9fafcfd676a03b35b3b07ab2c94efb43d.zip
gdb-886796f9fafcfd676a03b35b3b07ab2c94efb43d.tar.gz
gdb-886796f9fafcfd676a03b35b3b07ab2c94efb43d.tar.bz2
Make LDRH/LDRB consistent with LDR when target is PC-relative
Diffstat (limited to 'opcodes/arm-dis.c')
-rw-r--r--opcodes/arm-dis.c4
1 files changed, 4 insertions, 0 deletions
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);
}