aboutsummaryrefslogtreecommitdiff
path: root/opcodes
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2005-07-29 17:39:39 +0000
committerPaul Brook <paul@codesourcery.com>2005-07-29 17:39:39 +0000
commite9f89963c40811550748184d4792d70336f1fcc8 (patch)
tree217954362e92f7af6dcb15bc30d7fa169c45e25c /opcodes
parent92e90b6eb3b2c77ecc6b93fe96f0896b24039ec2 (diff)
downloadgdb-e9f89963c40811550748184d4792d70336f1fcc8.zip
gdb-e9f89963c40811550748184d4792d70336f1fcc8.tar.gz
gdb-e9f89963c40811550748184d4792d70336f1fcc8.tar.bz2
2005-07-29 Paul Brook <paul@codesourcery.com>
bfd/ * reloc.c: Add BFD_RELOC_ARM_T32_ADD_PC12. * bfd-in2.h: Regenerate. * libbfd.h: Regenerate. gas/ * config/tc-arm.c (T16_32_TAB): Add "addr". Fix encoding of push and pop. (do_t_addr): Implement 32-bit variant. (do_t_push_pop): Make some errors warnings. Handle single register 32-bit case. (insns): Use tCE for adr. (md_pcrel_from_section): Handle BFD_RELOC_ARM_T32_ADD_PC12. (md_apply_fix): Ditto. gas/testsuite/ * gas/arm/thumb32.d: Fix expected output for writeback addressing modes. Add single high reg push/pop test. * gas/asm/thumb32.s: Add single high reg push/pop test. opcodes/ * arm-dis.c: Fix disassebly of thumb2 writeback addressing modes.
Diffstat (limited to 'opcodes')
-rw-r--r--opcodes/ChangeLog4
-rw-r--r--opcodes/arm-dis.c8
2 files changed, 8 insertions, 4 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 539252e..f02e007 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,9 @@
2005-07-29 Paul Brook <paul@codesourcery.com>
+ * arm-dis.c: Fix disassebly of thumb2 writeback addressing modes.
+
+2005-07-29 Paul Brook <paul@codesourcery.com>
+
* arm-dis.c (thumb32_opc): Fix addressing mode for tbh.
(print_insn_thumb32): Fix decoding of thumb2 'I' operands.
diff --git a/opcodes/arm-dis.c b/opcodes/arm-dis.c
index 14b9901..dbf91be 100644
--- a/opcodes/arm-dis.c
+++ b/opcodes/arm-dis.c
@@ -2253,22 +2253,22 @@ print_insn_thumb32 (bfd_vma pc, struct disassemble_info *info, long given)
offset = -i8;
break;
- case 0xB: /* 8-bit + preindex with wb */
+ case 0xF: /* 8-bit + preindex with wb */
offset = i8;
writeback = TRUE;
break;
- case 0x9: /* 8-bit - preindex with wb */
+ case 0xD: /* 8-bit - preindex with wb */
offset = -i8;
writeback = TRUE;
break;
- case 0xF: /* 8-bit + postindex */
+ case 0xB: /* 8-bit + postindex */
offset = i8;
postind = TRUE;
break;
- case 0xD: /* 8-bit - postindex */
+ case 0x9: /* 8-bit - postindex */
offset = -i8;
postind = TRUE;
break;