Fix encodings for pkhbt, and fix some tests where I accidentally tested ARM mode...
authorOwen Anderson <resistor@mac.com>
Thu, 18 Nov 2010 23:29:56 +0000 (23:29 +0000)
committerOwen Anderson <resistor@mac.com>
Thu, 18 Nov 2010 23:29:56 +0000 (23:29 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119755 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMInstrThumb2.td
test/MC/ARM/thumb2.s

index 44511480f174af8b74958543aeed01262bfa5b8e..d0ab22a1b671d61e958a32437d889f7c40ca10f8 100644 (file)
@@ -2536,9 +2536,9 @@ def t2PKHBT : T2ThreeReg<
   let Inst{5} = 0; // BT form
   let Inst{4} = 0;
   
-  bits<5> sh;
-  let Inst{14-12} = sh{4-2};
-  let Inst{7-6}   = sh{1-0};
+  bits<8> sh;
+  let Inst{14-12} = sh{7-5};
+  let Inst{7-6}   = sh{4-3};
 }
 
 // Alternate cases for PKHBT where identities eliminate some nodes.
@@ -2564,9 +2564,9 @@ def t2PKHTB : T2ThreeReg<
   let Inst{5} = 1; // TB form
   let Inst{4} = 0;
   
-  bits<5> sh;
-  let Inst{14-12} = sh{4-2};
-  let Inst{7-6}   = sh{1-0};
+  bits<8> sh;
+  let Inst{14-12} = sh{7-5};
+  let Inst{7-6}   = sh{4-3};
 }
 
 // Alternate cases for PKHTB where identities eliminate some nodes.  Note that
index 886a8994657fa9e3a47503460376cfda12f17cbb..e237372e1cc42c1e29e1ac21b1632144277c1045 100644 (file)
 @ CHECK: mls   r0, r0, r1, r2          @ encoding: [0x11,0x20,0x00,0xfb]
   mls  r0, r0, r1, r2
 
-@ CHECK: smlabt        r0, r1, r2, r0          @ encoding: [0xc1,0x02,0x00,0xe1]
+@ CHECK: smlabt        r0, r1, r2, r0          @ encoding: [0x12,0x00,0x11,0xfb]
   smlabt       r0, r1, r2, r0
 
-@ CHECK: clz   r0, r0                  @ encoding: [0x10,0x0f,0x6f,0xe1]
+@ CHECK: clz   r0, r0                  @ encoding: [0x80,0xf0,0xb0,0xfa]
   clz  r0, r0
-@ CHECK: rev   r0, r0                  @ encoding: [0x30,0x0f,0xbf,0xe6]
-  rev  r0, r0
-@ CHECK: revsh r0, r0                  @ encoding: [0xb0,0x0f,0xff,0xe6]
-  revsh        r0, r0
 
-@ CHECK: pkhbt r0, r0, r1, lsl #16     @ encoding: [0x11,0x08,0x80,0xe6]
+@ CHECK: pkhbt r0, r0, r1, lsl #16     @ encoding: [0x01,0x40,0xc0,0xea]
   pkhbt        r0, r0, r1, lsl #16
-@ CHECK: pkhbt r0, r0, r1, lsl #12     @ encoding: [0x11,0x06,0x80,0xe6]
+@ CHECK: pkhbt r0, r0, r1, lsl #12     @ encoding: [0x01,0x30,0xc0,0xea]
   pkhbt        r0, r0, r1, lsl #16
-@ CHECK: pkhbt r0, r0, r1, lsl #18     @ encoding: [0x11,0x09,0x80,0xe6]
+@ CHECK: pkhbt r0, r0, r1, lsl #18     @ encoding: [0x81,0x40,0xc0,0xea]
   pkhbt        r0, r0, r1, lsl #18
-@ CHECK: pkhbt r0, r0, r1              @ encoding: [0x11,0x00,0x80,0xe6]
+@ CHECK: pkhbt r0, r0, r1              @ encoding: [0x01,0x00,0xc0,0xea]
   pkhbt        r0, r0, r1
-@ CHECK: pkhtb r0, r0, r1, asr #16     @ encoding: [0x51,0x08,0x80,0xe6]
+@ CHECK: pkhtb r0, r0, r1, asr #16     @ encoding: [0x21,0x40,0xc0,0xea]
   pkhtb        r0, r0, r1, asr #16
-@ CHECK: pkhtb r0, r0, r1, asr #12     @ encoding: [0x51,0x06,0x80,0xe6]
+@ CHECK: pkhtb r0, r0, r1, asr #12     @ encoding: [0x21,0x30,0xc0,0xea]
   pkhtb        r0, r0, r1, asr #12
-@ CHECK: pkhtb r0, r0, r1, asr #18     @ encoding: [0x51,0x09,0x80,0xe6]
+@ CHECK: pkhtb r0, r0, r1, asr #18     @ encoding: [0xa1,0x40,0xc0,0xea]
   pkhtb        r0, r0, r1, asr #18
-@ CHECK: pkhtb r0, r0, r1, asr #22     @ encoding: [0x51,0x0b,0x80,0xe6]
+@ CHECK: pkhtb r0, r0, r1, asr #22     @ encoding: [0xa1,0x50,0xc0,0xea]
   pkhtb        r0, r0, r1, asr #22
+
+@ CHECK: dmb   st                      @ encoding: [0x5e,0x8f,0xbf,0xf3]
+  dmb  st
+@ CHECK: dmb   sy                      @ encoding: [0x5f,0x8f,0xbf,0xf3]
+  dmb  sy
+@ CHECK: dmb   ishst                   @ encoding: [0x5a,0x8f,0xbf,0xf3]
+  dmb  ishst
+@ CHECK: dmb   ish                     @ encoding: [0x5b,0x8f,0xbf,0xf3]
+  dmb  ish
+  
\ No newline at end of file