Simplify some code with no functionality change. Make the test a lot more
[llvm.git] / test / MC / ARM / neon-mov-encoding.s
blobca678d022df8093200ce2fa9d630b9f4a32b06de
1 @ RUN: llvm-mc -mcpu=cortex-a8 -triple arm-unknown-unknown -show-encoding < %s | FileCheck %s
2 @ XFAIL: *
4 @ CHECK: vmov.i8 d16, #0x8 @ encoding: [0x18,0x0e,0xc0,0xf2]
5 vmov.i8 d16, #0x8
6 @ CHECK: vmov.i16 d16, #0x10 @ encoding: [0x10,0x08,0xc1,0xf2]
7 vmov.i16 d16, #0x10
8 @ CHECK: vmov.i16 d16, #0x1000 @ encoding: [0x10,0x0a,0xc1,0xf2]
9 vmov.i16 d16, #0x1000
10 @ CHECK: vmov.i32 d16, #0x20 @ encoding: [0x10,0x00,0xc2,0xf2]
11 vmov.i32 d16, #0x20
12 @ CHECK: vmov.i32 d16, #0x2000 @ encoding: [0x10,0x02,0xc2,0xf2]
13 vmov.i32 d16, #0x2000
14 @ CHECK: vmov.i32 d16, #0x200000 @ encoding: [0x10,0x04,0xc2,0xf2]
15 vmov.i32 d16, #0x200000
16 @ CHECK: vmov.i32 d16, #0x20000000 @ encoding: [0x10,0x06,0xc2,0xf2]
17 vmov.i32 d16, #0x20000000
18 @ CHECK: vmov.i32 d16, #0x20FF @ encoding: [0x10,0x0c,0xc2,0xf2]
19 vmov.i32 d16, #0x20FF
20 @ CHECK: vmov.i32 d16, #0x20FFFF @ encoding: [0x10,0x0d,0xc2,0xf2]
21 vmov.i32 d16, #0x20FFFF
22 @ CHECK: vmov.i64 d16, #0xFF0000FF0000FFFF @ encoding: [0x33,0x0e,0xc1,0xf3]
23 vmov.i64 d16, #0xFF0000FF0000FFFF
24 @ CHECK: vmov.i8 q8, #0x8 @ encoding: [0x58,0x0e,0xc0,0xf2]
25 vmov.i8 q8, #0x8
26 @ CHECK: vmov.i16 q8, #0x10 @ encoding: [0x50,0x08,0xc1,0xf2]
27 vmov.i16 q8, #0x10
28 @ CHECK: vmov.i16 q8, #0x1000 @ encoding: [0x50,0x0a,0xc1,0xf2]
29 vmov.i16 q8, #0x1000
30 @ CHECK: vmov.i32 q8, #0x20 @ encoding: [0x50,0x00,0xc2,0xf2]
31 vmov.i32 q8, #0x20
32 @ CHECK: vmov.i32 q8, #0x2000 @ encoding: [0x50,0x02,0xc2,0xf2]
33 vmov.i32 q8, #0x2000
34 @ CHECK: vmov.i32 q8, #0x200000 @ encoding: [0x50,0x04,0xc2,0xf2]
35 vmov.i32 q8, #0x200000
36 @ CHECK: vmov.i32 q8, #0x20000000 @ encoding: [0x50,0x06,0xc2,0xf2]
37 vmov.i32 q8, #0x20000000
38 @ CHECK: vmov.i32 q8, #0x20FF @ encoding: [0x50,0x0c,0xc2,0xf2]
39 vmov.i32 q8, #0x20FF
40 @ CHECK: vmov.i32 q8, #0x20FFFF @ encoding: [0x50,0x0d,0xc2,0xf2]
41 vmov.i32 q8, #0x20FFFF
42 @ CHECK: vmov.i64 q8, #0xFF0000FF0000FFFF @ encoding: [0x73,0x0e,0xc1,0xf3]
43 vmov.i64 q8, #0xFF0000FF0000FFFF
44 @ CHECK: vmvn.i16 d16, #0x10 @ encoding: [0x30,0x08,0xc1,0xf2]
45 vmvn.i16 d16, #0x10
46 @ CHECK: vmvn.i16 d16, #0x1000 @ encoding: [0x30,0x0a,0xc1,0xf2]
47 vmvn.i16 d16, #0x1000
48 @ CHECK: vmvn.i32 d16, #0x20 @ encoding: [0x30,0x00,0xc2,0xf2]
49 vmvn.i32 d16, #0x20
50 @ CHECK: vmvn.i32 d16, #0x2000 @ encoding: [0x30,0x02,0xc2,0xf2]
51 vmvn.i32 d16, #0x2000
52 @ CHECK: vmvn.i32 d16, #0x200000 @ encoding: [0x30,0x04,0xc2,0xf2]
53 vmvn.i32 d16, #0x200000
54 @ CHECK: vmvn.i32 d16, #0x20000000 @ encoding: [0x30,0x06,0xc2,0xf2]
55 vmvn.i32 d16, #0x20000000
56 @ CHECK: vmvn.i32 d16, #0x20FF @ encoding: [0x30,0x0c,0xc2,0xf2]
57 vmvn.i32 d16, #0x20FF
58 @ CHECK: vmvn.i32 d16, #0x20FFFF @ encoding: [0x30,0x0d,0xc2,0xf2]
59 vmvn.i32 d16, #0x20FFFF
60 @ CHECK: vmovl.s8 q8, d16 @ encoding: [0x30,0x0a,0xc8,0xf2]
61 vmovl.s8 q8, d16
62 @ CHECK: vmovl.s16 q8, d16 @ encoding: [0x30,0x0a,0xd0,0xf2]
63 vmovl.s16 q8, d16
64 @ CHECK: vmovl.s32 q8, d16 @ encoding: [0x30,0x0a,0xe0,0xf2]
65 vmovl.s32 q8, d16
66 @ CHECK: vmovl.u8 q8, d16 @ encoding: [0x30,0x0a,0xc8,0xf3]
67 vmovl.u8 q8, d16
68 @ CHECK: vmovl.u16 q8, d16 @ encoding: [0x30,0x0a,0xd0,0xf3]
69 vmovl.u16 q8, d16
70 @ CHECK: vmovl.u32 q8, d16 @ encoding: [0x30,0x0a,0xe0,0xf3]
71 vmovl.u32 q8, d16
72 @ CHECK: vmovn.i16 d16, q8 @ encoding: [0x20,0x02,0xf2,0xf3]
73 vmovn.i16 d16, q8
74 @ CHECK: vmovn.i32 d16, q8 @ encoding: [0x20,0x02,0xf6,0xf3]
75 vmovn.i32 d16, q8
76 @ CHECK: vmovn.i64 d16, q8 @ encoding: [0x20,0x02,0xfa,0xf3]
77 vmovn.i64 d16, q8
78 @ CHECK: vqmovn.s16 d16, q8 @ encoding: [0xa0,0x02,0xf2,0xf3]
79 vqmovn.s16 d16, q8
80 @ CHECK: vqmovn.s32 d16, q8 @ encoding: [0xa0,0x02,0xf6,0xf3]
81 vqmovn.s32 d16, q8
82 @ CHECK: vqmovn.s64 d16, q8 @ encoding: [0xa0,0x02,0xfa,0xf3]
83 vqmovn.s64 d16, q8
84 @ CHECK: vqmovn.u16 d16, q8 @ encoding: [0xe0,0x02,0xf2,0xf3]
85 vqmovn.u16 d16, q8
86 @ CHECK: vqmovn.u32 d16, q8 @ encoding: [0xe0,0x02,0xf6,0xf3]
87 vqmovn.u32 d16, q8
88 @ CHECK: vqmovn.u64 d16, q8 @ encoding: [0xe0,0x02,0xfa,0xf3]
89 vqmovn.u64 d16, q8
90 @ CHECK: vqmovun.s16 d16, q8 @ encoding: [0x60,0x02,0xf2,0xf3]
91 vqmovun.s16 d16, q8
92 @ CHECK: vqmovun.s32 d16, q8 @ encoding: [0x60,0x02,0xf6,0xf3]
93 vqmovun.s32 d16, q8
94 @ CHECK: vqmovun.s64 d16, q8 @ encoding: [0x60,0x02,0xfa,0xf3]
95 vqmovun.s64 d16, q8
96 @ CHECK: vmov.s8 r0, d16[1] @ encoding: [0xb0,0x0b,0x50,0xee]
97 vmov.s8 r0, d16[1]
98 @ CHECK: vmov.s16 r0, d16[1] @ encoding: [0xf0,0x0b,0x10,0xee]
99 vmov.s16 r0, d16[1]
100 @ CHECK: vmov.u8 r0, d16[1] @ encoding: [0xb0,0x0b,0xd0,0xee]
101 vmov.u8 r0, d16[1]
102 @ CHECK: vmov.u16 r0, d16[1] @ encoding: [0xf0,0x0b,0x90,0xee]
103 vmov.u16 r0, d16[1]
104 @ CHECK: vmov.32 r0, d16[1] @ encoding: [0x90,0x0b,0x30,0xee]
105 vmov.32 r0, d16[1]
106 @ CHECK: vmov.8 d16[1], r1 @ encoding: [0xb0,0x1b,0x40,0xee]
107 vmov.8 d16[1], r1
108 @ CHECK: vmov.16 d16[1], r1 @ encoding: [0xf0,0x1b,0x00,0xee]
109 vmov.16 d16[1], r1
110 @ CHECK: vmov.32 d16[1], r1 @ encoding: [0x90,0x1b,0x20,0xee]
111 vmov.32 d16[1], r1
112 @ CHECK: vmov.8 d18[1], r1 @ encoding: [0xb0,0x1b,0x42,0xee]
113 vmov.8 d18[1], r1
114 @ CHECK: vmov.16 d18[1], r1 @ encoding: [0xf0,0x1b,0x02,0xee]
115 vmov.16 d18[1], r1
116 @ CHECK: vmov.32 d18[1], r1 @ encoding: [0x90,0x1b,0x22,0xee]
117 vmov.32 d18[1], r1