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