OSDN Git Service

Fixes for the encoding and decoding of the PDP11's SOB instruction
authorNick Clifton <nickc@redhat.com>
Fri, 1 Oct 2004 11:19:38 +0000 (11:19 +0000)
committerNick Clifton <nickc@redhat.com>
Fri, 1 Oct 2004 11:19:38 +0000 (11:19 +0000)
opcodes/ChangeLog
opcodes/pdp11-dis.c

index cf49121..2dde353 100644 (file)
@@ -1,3 +1,8 @@
+2004-10-01  Bill Farmer  <Bill@the-farmers.freeserve.co.uk>
+
+       * pdp11-dis.c (print_insn_pdp11): Subtract the SOB's displacement
+       rather than add it.
+
 2004-09-30  Paul Brook  <paul@codesourcery.com>
 
        * arm-dis.c (print_insn_arm): Handle 'e' for SMI instruction.
index 4f5bf84..1756e53 100644 (file)
@@ -342,7 +342,8 @@ print_insn_pdp11 (memaddr, info)
          case PDP11_OPCODE_REG_DISPL:
            {
              int displ = (opcode & 0x3f) << 10;
-             bfd_vma address = memaddr + (sign_extend (displ) >> 9);
+             bfd_vma address = memaddr - (displ >> 9);
+
              FPRINTF (F, OP.name);
              FPRINTF (F, AFTER_INSTRUCTION);
              print_reg (src, info);