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