PR 10168
authorNick Clifton <nickc@redhat.com>
Wed, 1 Jul 2009 16:36:28 +0000 (16:36 +0000)
committerNick Clifton <nickc@redhat.com>
Wed, 1 Jul 2009 16:36:28 +0000 (16:36 +0000)
        * config/tc-arm.c (do_t_pkhtb): Swap Rm and Rn when encoding as
        PKHBT.
        * gas/arm/thumb32.d: Fix expected disassembly of PKHTB insn.

gas/ChangeLog
gas/config/tc-arm.c
gas/doc/as.texinfo
gas/testsuite/ChangeLog
gas/testsuite/gas/arm/thumb32.d

index 32bb41305b963ad0a578ccf9bbf66c7ff92bc52a..58697d66df4f266271c4c37bd509395fad91b970 100644 (file)
@@ -1,3 +1,9 @@
+2009-07-01  Nick Clifton  <nickc@redhat.com>
+
+       PR 10168
+       * config/tc-arm.c (do_t_pkhtb): Swap Rm and Rn when encoding as
+       PKHBT.
+
 2009-07-01  Paul Brook <paul@codesourcery.com>
 
        * config/tc-arm.c (MISSING_FNSTART): Define.
index 35498f20c912c87216dd6dec0ea07da810cc49d9..99b6e415606cdbba5dae60715ed5c2b3d67d3274 100644 (file)
@@ -10479,7 +10479,16 @@ static void
 do_t_pkhtb (void)
 {
   if (!inst.operands[3].present)
-    inst.instruction &= ~0x00000020;
+    {
+      unsigned Rtmp;
+
+      inst.instruction &= ~0x00000020;
+
+      /* PR 10168.  Swap the Rm and Rn registers.  */
+      Rtmp = inst.operands[1].reg;
+      inst.operands[1].reg = inst.operands[2].reg;
+      inst.operands[2].reg = Rtmp;
+    }
   do_t_pkhbt ();
 }
 
index fc6794ba6341fcae62d26f95c02bd744b6f78621..d1240bf5621f8908fc6d18e06e8799a2a5e234bd 100644 (file)
@@ -305,7 +305,7 @@ gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}.
 
 @emph{Target i386 options:}
    [@b{--32}|@b{--64}] [@b{-n}]
-   [@b{-march}=@var{CPU}[+@var{EXTENSION}@dots{}]] [@b{-mtune}=@var{CPU}] 
+   [@b{-march}=@var{CPU}[+@var{EXTENSION}@dots{}]] [@b{-mtune}=@var{CPU}]
 @end ifset
 @ifset I960
 
index 09149bbb6e4f349a1cfa72b20598a8429edc9f7e..ccb7ecfff44f72f9020a9c3c78e4729f8f346c5f 100644 (file)
@@ -1,3 +1,8 @@
+2009-07-01  Nick Clifton  <nickc@redhat.com>
+
+       PR 10168
+       * gas/arm/thumb32.d: Fix expected disassembly of PKHTB insn.
+
 2009-07-01  Paul Brook <paul@codesourcery.com>
 
        * gas/arm/fp-save.s: Add .fnstart and .fnend directives.
index e53a23dd32f86e080e204da259d5ae164a0d9732..04c90daa9d992e58f78839b5032e116b5109222d 100644 (file)
@@ -687,7 +687,7 @@ Disassembly of section .text:
 0[0-9a-f]+ <[^>]+> eac0 0009   pkhbt   r0, r0, r9
 0[0-9a-f]+ <[^>]+> eac0 5000   pkhbt   r0, r0, r0, lsl #20
 0[0-9a-f]+ <[^>]+> eac0 00c0   pkhbt   r0, r0, r0, lsl #3
-0[0-9a-f]+ <[^>]+> eac2 0103   pkhbt   r1, r2, r3
+0[0-9a-f]+ <[^>]+> eac3 0102   pkhbt   r1, r3, r2
 0[0-9a-f]+ <[^>]+> eac2 4163   pkhtb   r1, r2, r3, asr #17
 0[0-9a-f]+ <[^>]+> b401        push    \{r0\}
 0[0-9a-f]+ <[^>]+> bc01        pop     \{r0\}