ARM: Prevent ARMAsmParser::shouldOmitCCOutOperand() from misidentifying certain Thumb...
[oota-llvm.git] / test / MC / ARM / neont2-dup-encoding.s
index 53308331ef39d1fb177c37ee1314ed85e7128a5c..d6db496d4f88642fd9fc05d5fdbd64e3fb1c92ef 100644 (file)
@@ -1,29 +1,43 @@
-@ RUN: llvm-mc -mcpu=cortex-a8 -triple thumb-unknown-unkown -show-encoding < %s | FileCheck %s
-@ XFAIL: *
+@RUN: llvm-mc -triple thumbv7-unknown-unknown -mcpu=cortex-a8 -show-encoding < %s | FileCheck %s
 
 .code 16
 
-@ CHECK: vdup.8        d16, r0                 @ encoding: [0x90,0x0b,0xc0,0xee]
-       vdup.8  d16, r0
-@ CHECK: vdup.16       d16, r0                 @ encoding: [0xb0,0x0b,0x80,0xee]
-       vdup.16 d16, r0
-@ CHECK: vdup.32       d16, r0                 @ encoding: [0x90,0x0b,0x80,0xee]
-       vdup.32 d16, r0
-@ CHECK: vdup.8        q8, r0                  @ encoding: [0x90,0x0b,0xe0,0xee]
-       vdup.8  q8, r0
-@ CHECK: vdup.16       q8, r0                  @ encoding: [0xb0,0x0b,0xa0,0xee]
-       vdup.16 q8, r0
-@ CHECK: vdup.32       q8, r0                  @ encoding: [0x90,0x0b,0xa0,0xee]
-       vdup.32 q8, r0
-@ CHECK: vdup.8        d16, d16[1]             @ encoding: [0x20,0x0c,0xf3,0xff]
-       vdup.8  d16, d16[1]
-@ CHECK: vdup.16       d16, d16[1]             @ encoding: [0x20,0x0c,0xf6,0xff]
-       vdup.16 d16, d16[1]
-@ CHECK: vdup.32       d16, d16[1]             @ encoding: [0x20,0x0c,0xfc,0xff]
-       vdup.32 d16, d16[1]
-@ CHECK: vdup.8        q8, d16[1]              @ encoding: [0x60,0x0c,0xf3,0xff]
-       vdup.8  q8, d16[1]
-@ CHECK: vdup.16       q8, d16[1]              @ encoding: [0x60,0x0c,0xf6,0xff]
-       vdup.16 q8, d16[1]
-@ CHECK: vdup.32       q8, d16[1]              @ encoding: [0x60,0x0c,0xfc,0xff]
-       vdup.32 q8, d16[1]
+       vdup.8  d16, r1
+       vdup.16 d15, r2
+       vdup.32 d14, r3
+       vdup.8  q9, r4
+       vdup.16 q8, r5
+       vdup.32 q7, r6
+
+@ CHECK: vdup.8        d16, r1                 @ encoding: [0xc0,0xee,0x90,0x1b]
+@ CHECK: vdup.16       d15, r2         @ encoding: [0x8f,0xee,0x30,0x2b]
+@ CHECK: vdup.32       d14, r3         @ encoding: [0x8e,0xee,0x10,0x3b]
+@ CHECK: vdup.8        q9, r4                  @ encoding: [0xe2,0xee,0x90,0x4b]
+@ CHECK: vdup.16       q8, r5          @ encoding: [0xa0,0xee,0xb0,0x5b]
+@ CHECK: vdup.32       q7, r6          @ encoding: [0xae,0xee,0x10,0x6b]
+
+       vdup.8  d16, d11[0]
+       vdup.16 d17, d12[0]
+       vdup.32 d18, d13[0]
+       vdup.8  q3, d10[0]
+       vdup.16 q9, d9[0]
+       vdup.32 q8, d8[0]
+       vdup.8  d16, d11[1]
+       vdup.16 d17, d12[1]
+       vdup.32 d18, d13[1]
+       vdup.8  q3, d10[1]
+       vdup.16 q9, d9[1]
+       vdup.32 q8, d8[1]
+
+@ CHECK: vdup.8        d16, d11[0]             @ encoding: [0xf1,0xff,0x0b,0x0c]
+@ CHECK: vdup.16 d17, d12[0]            @ encoding: [0xf2,0xff,0x0c,0x1c]
+@ CHECK: vdup.32 d18, d13[0]            @ encoding: [0xf4,0xff,0x0d,0x2c]
+@ CHECK: vdup.8        q3, d10[0]              @ encoding: [0xb1,0xff,0x4a,0x6c]
+@ CHECK: vdup.16 q9, d9[0]              @ encoding: [0xf2,0xff,0x49,0x2c]
+@ CHECK: vdup.32 q8, d8[0]              @ encoding: [0xf4,0xff,0x48,0x0c]
+@ CHECK: vdup.8        d16, d11[1]             @ encoding: [0xf3,0xff,0x0b,0x0c]
+@ CHECK: vdup.16 d17, d12[1]            @ encoding: [0xf6,0xff,0x0c,0x1c]
+@ CHECK: vdup.32 d18, d13[1]            @ encoding: [0xfc,0xff,0x0d,0x2c]
+@ CHECK: vdup.8        q3, d10[1]              @ encoding: [0xb3,0xff,0x4a,0x6c]
+@ CHECK: vdup.16 q9, d9[1]              @ encoding: [0xf6,0xff,0x49,0x2c]
+@ CHECK: vdup.32 q8, d8[1]              @ encoding: [0xfc,0xff,0x48,0x0c]