xref: /aosp_15_r20/external/llvm/test/MC/ARM/neon-cmp-encoding.s (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker@ RUN: llvm-mc -mcpu=cortex-a8 -triple arm-unknown-unknown -show-encoding < %s | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker	vceq.i8	d16, d16, d17
4*9880d681SAndroid Build Coastguard Worker	vceq.i16	d16, d16, d17
5*9880d681SAndroid Build Coastguard Worker	vceq.i32	d16, d16, d17
6*9880d681SAndroid Build Coastguard Worker	vceq.f32	d16, d16, d17
7*9880d681SAndroid Build Coastguard Worker	vceq.i8	q8, q8, q9
8*9880d681SAndroid Build Coastguard Worker	vceq.i16	q8, q8, q9
9*9880d681SAndroid Build Coastguard Worker	vceq.i32	q8, q8, q9
10*9880d681SAndroid Build Coastguard Worker	vceq.f32	q8, q8, q9
11*9880d681SAndroid Build Coastguard Worker
12*9880d681SAndroid Build Coastguard Worker@ CHECK: vceq.i8	d16, d16, d17   @ encoding: [0xb1,0x08,0x40,0xf3]
13*9880d681SAndroid Build Coastguard Worker@ CHECK: vceq.i16	d16, d16, d17   @ encoding: [0xb1,0x08,0x50,0xf3]
14*9880d681SAndroid Build Coastguard Worker@ CHECK: vceq.i32	d16, d16, d17   @ encoding: [0xb1,0x08,0x60,0xf3]
15*9880d681SAndroid Build Coastguard Worker@ CHECK: vceq.f32	d16, d16, d17   @ encoding: [0xa1,0x0e,0x40,0xf2]
16*9880d681SAndroid Build Coastguard Worker@ CHECK: vceq.i8	q8, q8, q9      @ encoding: [0xf2,0x08,0x40,0xf3]
17*9880d681SAndroid Build Coastguard Worker@ CHECK: vceq.i16	q8, q8, q9      @ encoding: [0xf2,0x08,0x50,0xf3]
18*9880d681SAndroid Build Coastguard Worker@ CHECK: vceq.i32	q8, q8, q9      @ encoding: [0xf2,0x08,0x60,0xf3]
19*9880d681SAndroid Build Coastguard Worker@ CHECK: vceq.f32	q8, q8, q9      @ encoding: [0xe2,0x0e,0x40,0xf2]
20*9880d681SAndroid Build Coastguard Worker
21*9880d681SAndroid Build Coastguard Worker	vcge.s8	d16, d16, d17
22*9880d681SAndroid Build Coastguard Worker	vcge.s16	d16, d16, d17
23*9880d681SAndroid Build Coastguard Worker	vcge.s32	d16, d16, d17
24*9880d681SAndroid Build Coastguard Worker	vcge.u8	d16, d16, d17
25*9880d681SAndroid Build Coastguard Worker	vcge.u16	d16, d16, d17
26*9880d681SAndroid Build Coastguard Worker	vcge.u32	d16, d16, d17
27*9880d681SAndroid Build Coastguard Worker	vcge.f32	d16, d16, d17
28*9880d681SAndroid Build Coastguard Worker	vcge.s8	q8, q8, q9
29*9880d681SAndroid Build Coastguard Worker	vcge.s16	q8, q8, q9
30*9880d681SAndroid Build Coastguard Worker	vcge.s32	q8, q8, q9
31*9880d681SAndroid Build Coastguard Worker	vcge.u8	q8, q8, q9
32*9880d681SAndroid Build Coastguard Worker	vcge.u16	q8, q8, q9
33*9880d681SAndroid Build Coastguard Worker	vcge.u32	q8, q8, q9
34*9880d681SAndroid Build Coastguard Worker	vcge.f32	q8, q8, q9
35*9880d681SAndroid Build Coastguard Worker	vacge.f32	d16, d16, d17
36*9880d681SAndroid Build Coastguard Worker	vacge.f32	q8, q8, q9
37*9880d681SAndroid Build Coastguard Worker
38*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s8	d16, d16, d17   @ encoding: [0xb1,0x03,0x40,0xf2]
39*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s16	d16, d16, d17   @ encoding: [0xb1,0x03,0x50,0xf2]
40*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s32	d16, d16, d17   @ encoding: [0xb1,0x03,0x60,0xf2]
41*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u8	d16, d16, d17   @ encoding: [0xb1,0x03,0x40,0xf3]
42*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u16	d16, d16, d17   @ encoding: [0xb1,0x03,0x50,0xf3]
43*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u32	d16, d16, d17   @ encoding: [0xb1,0x03,0x60,0xf3]
44*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.f32	d16, d16, d17   @ encoding: [0xa1,0x0e,0x40,0xf3]
45*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s8	q8, q8, q9      @ encoding: [0xf2,0x03,0x40,0xf2]
46*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s16	q8, q8, q9      @ encoding: [0xf2,0x03,0x50,0xf2]
47*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s32	q8, q8, q9      @ encoding: [0xf2,0x03,0x60,0xf2]
48*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u8	q8, q8, q9      @ encoding: [0xf2,0x03,0x40,0xf3]
49*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u16	q8, q8, q9      @ encoding: [0xf2,0x03,0x50,0xf3]
50*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u32	q8, q8, q9      @ encoding: [0xf2,0x03,0x60,0xf3]
51*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.f32	q8, q8, q9      @ encoding: [0xe2,0x0e,0x40,0xf3]
52*9880d681SAndroid Build Coastguard Worker@ CHECK: vacge.f32	d16, d16, d17   @ encoding: [0xb1,0x0e,0x40,0xf3]
53*9880d681SAndroid Build Coastguard Worker@ CHECK: vacge.f32	q8, q8, q9      @ encoding: [0xf2,0x0e,0x40,0xf3]
54*9880d681SAndroid Build Coastguard Worker
55*9880d681SAndroid Build Coastguard Worker	vcgt.s8	d16, d16, d17
56*9880d681SAndroid Build Coastguard Worker	vcgt.s16	d16, d16, d17
57*9880d681SAndroid Build Coastguard Worker	vcgt.s32	d16, d16, d17
58*9880d681SAndroid Build Coastguard Worker	vcgt.u8	d16, d16, d17
59*9880d681SAndroid Build Coastguard Worker	vcgt.u16	d16, d16, d17
60*9880d681SAndroid Build Coastguard Worker	vcgt.u32	d16, d16, d17
61*9880d681SAndroid Build Coastguard Worker	vcgt.f32	d16, d16, d17
62*9880d681SAndroid Build Coastguard Worker	vcgt.s8	q8, q8, q9
63*9880d681SAndroid Build Coastguard Worker	vcgt.s16	q8, q8, q9
64*9880d681SAndroid Build Coastguard Worker	vcgt.s32	q8, q8, q9
65*9880d681SAndroid Build Coastguard Worker	vcgt.u8	q8, q8, q9
66*9880d681SAndroid Build Coastguard Worker	vcgt.u16	q8, q8, q9
67*9880d681SAndroid Build Coastguard Worker	vcgt.u32	q8, q8, q9
68*9880d681SAndroid Build Coastguard Worker	vcgt.f32	q8, q8, q9
69*9880d681SAndroid Build Coastguard Worker	vacgt.f32	d16, d16, d17
70*9880d681SAndroid Build Coastguard Worker	vacgt.f32	q8, q8, q9
71*9880d681SAndroid Build Coastguard Worker
72*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s8	d16, d16, d17   @ encoding: [0xa1,0x03,0x40,0xf2]
73*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s16	d16, d16, d17   @ encoding: [0xa1,0x03,0x50,0xf2]
74*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s32	d16, d16, d17   @ encoding: [0xa1,0x03,0x60,0xf2]
75*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u8	d16, d16, d17   @ encoding: [0xa1,0x03,0x40,0xf3]
76*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u16	d16, d16, d17   @ encoding: [0xa1,0x03,0x50,0xf3]
77*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u32	d16, d16, d17   @ encoding: [0xa1,0x03,0x60,0xf3]
78*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.f32	d16, d16, d17   @ encoding: [0xa1,0x0e,0x60,0xf3]
79*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s8	q8, q8, q9      @ encoding: [0xe2,0x03,0x40,0xf2]
80*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s16	q8, q8, q9      @ encoding: [0xe2,0x03,0x50,0xf2]
81*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s32	q8, q8, q9      @ encoding: [0xe2,0x03,0x60,0xf2]
82*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u8	q8, q8, q9      @ encoding: [0xe2,0x03,0x40,0xf3]
83*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u16	q8, q8, q9      @ encoding: [0xe2,0x03,0x50,0xf3]
84*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u32	q8, q8, q9      @ encoding: [0xe2,0x03,0x60,0xf3]
85*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.f32	q8, q8, q9      @ encoding: [0xe2,0x0e,0x60,0xf3]
86*9880d681SAndroid Build Coastguard Worker@ CHECK: vacgt.f32	d16, d16, d17   @ encoding: [0xb1,0x0e,0x60,0xf3]
87*9880d681SAndroid Build Coastguard Worker@ CHECK: vacgt.f32	q8, q8, q9      @ encoding: [0xf2,0x0e,0x60,0xf3]
88*9880d681SAndroid Build Coastguard Worker
89*9880d681SAndroid Build Coastguard Worker	vtst.8	d16, d16, d17
90*9880d681SAndroid Build Coastguard Worker	vtst.16	d16, d16, d17
91*9880d681SAndroid Build Coastguard Worker	vtst.32	d16, d16, d17
92*9880d681SAndroid Build Coastguard Worker	vtst.8	q8, q8, q9
93*9880d681SAndroid Build Coastguard Worker	vtst.16	q8, q8, q9
94*9880d681SAndroid Build Coastguard Worker	vtst.32	q8, q8, q9
95*9880d681SAndroid Build Coastguard Worker
96*9880d681SAndroid Build Coastguard Worker@ CHECK: vtst.8	d16, d16, d17           @ encoding: [0xb1,0x08,0x40,0xf2]
97*9880d681SAndroid Build Coastguard Worker@ CHECK: vtst.16	d16, d16, d17   @ encoding: [0xb1,0x08,0x50,0xf2]
98*9880d681SAndroid Build Coastguard Worker@ CHECK: vtst.32	d16, d16, d17   @ encoding: [0xb1,0x08,0x60,0xf2]
99*9880d681SAndroid Build Coastguard Worker@ CHECK: vtst.8	q8, q8, q9              @ encoding: [0xf2,0x08,0x40,0xf2]
100*9880d681SAndroid Build Coastguard Worker@ CHECK: vtst.16	q8, q8, q9      @ encoding: [0xf2,0x08,0x50,0xf2]
101*9880d681SAndroid Build Coastguard Worker@ CHECK: vtst.32	q8, q8, q9      @ encoding: [0xf2,0x08,0x60,0xf2]
102*9880d681SAndroid Build Coastguard Worker
103*9880d681SAndroid Build Coastguard Worker	vceq.i8	d16, d16, #0
104*9880d681SAndroid Build Coastguard Worker	vcge.s8	d16, d16, #0
105*9880d681SAndroid Build Coastguard Worker	vcle.s8	d16, d16, #0
106*9880d681SAndroid Build Coastguard Worker	vcgt.s8	d16, d16, #0
107*9880d681SAndroid Build Coastguard Worker	vclt.s8	d16, d16, #0
108*9880d681SAndroid Build Coastguard Worker
109*9880d681SAndroid Build Coastguard Worker@ CHECK: vceq.i8	d16, d16, #0    @ encoding: [0x20,0x01,0xf1,0xf3]
110*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s8	d16, d16, #0    @ encoding: [0xa0,0x00,0xf1,0xf3]
111*9880d681SAndroid Build Coastguard Worker@ CHECK: vcle.s8	d16, d16, #0    @ encoding: [0xa0,0x01,0xf1,0xf3]
112*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s8	d16, d16, #0    @ encoding: [0x20,0x00,0xf1,0xf3]
113*9880d681SAndroid Build Coastguard Worker@ CHECK: vclt.s8	d16, d16, #0    @ encoding: [0x20,0x02,0xf1,0xf3]
114*9880d681SAndroid Build Coastguard Worker
115*9880d681SAndroid Build Coastguard Worker
116*9880d681SAndroid Build Coastguard Worker        vclt.s8 q12, q13, q3
117*9880d681SAndroid Build Coastguard Worker        vclt.s16 q12, q13, q3
118*9880d681SAndroid Build Coastguard Worker        vclt.s32 q12, q13, q3
119*9880d681SAndroid Build Coastguard Worker        vclt.u8 q12, q13, q3
120*9880d681SAndroid Build Coastguard Worker        vclt.u16 q12, q13, q3
121*9880d681SAndroid Build Coastguard Worker        vclt.u32 q12, q13, q3
122*9880d681SAndroid Build Coastguard Worker        vclt.f32 q12, q13, q3
123*9880d681SAndroid Build Coastguard Worker
124*9880d681SAndroid Build Coastguard Worker        vclt.s8 d12, d13, d3
125*9880d681SAndroid Build Coastguard Worker        vclt.s16 d12, d13, d3
126*9880d681SAndroid Build Coastguard Worker        vclt.s32 d12, d13, d3
127*9880d681SAndroid Build Coastguard Worker        vclt.u8 d12, d13, d3
128*9880d681SAndroid Build Coastguard Worker        vclt.u16 d12, d13, d3
129*9880d681SAndroid Build Coastguard Worker        vclt.u32 d12, d13, d3
130*9880d681SAndroid Build Coastguard Worker        vclt.f32 d12, d13, d3
131*9880d681SAndroid Build Coastguard Worker
132*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s8	q12, q3, q13    @ encoding: [0x6a,0x83,0x46,0xf2]
133*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s16	q12, q3, q13    @ encoding: [0x6a,0x83,0x56,0xf2]
134*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s32	q12, q3, q13    @ encoding: [0x6a,0x83,0x66,0xf2]
135*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u8	q12, q3, q13    @ encoding: [0x6a,0x83,0x46,0xf3]
136*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u16	q12, q3, q13    @ encoding: [0x6a,0x83,0x56,0xf3]
137*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u32	q12, q3, q13    @ encoding: [0x6a,0x83,0x66,0xf3]
138*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.f32	q12, q3, q13    @ encoding: [0x6a,0x8e,0x66,0xf3]
139*9880d681SAndroid Build Coastguard Worker
140*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s8	d12, d3, d13    @ encoding: [0x0d,0xc3,0x03,0xf2]
141*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s16	d12, d3, d13    @ encoding: [0x0d,0xc3,0x13,0xf2]
142*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.s32	d12, d3, d13    @ encoding: [0x0d,0xc3,0x23,0xf2]
143*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u8	d12, d3, d13    @ encoding: [0x0d,0xc3,0x03,0xf3]
144*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u16	d12, d3, d13    @ encoding: [0x0d,0xc3,0x13,0xf3]
145*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.u32	d12, d3, d13    @ encoding: [0x0d,0xc3,0x23,0xf3]
146*9880d681SAndroid Build Coastguard Worker@ CHECK: vcgt.f32	d12, d3, d13    @ encoding: [0x0d,0xce,0x23,0xf3]
147*9880d681SAndroid Build Coastguard Worker
148*9880d681SAndroid Build Coastguard Worker	vcle.s8	d16, d16, d17
149*9880d681SAndroid Build Coastguard Worker	vcle.s16 d16, d16, d17
150*9880d681SAndroid Build Coastguard Worker	vcle.s32 d16, d16, d17
151*9880d681SAndroid Build Coastguard Worker	vcle.u8	d16, d16, d17
152*9880d681SAndroid Build Coastguard Worker	vcle.u16 d16, d16, d17
153*9880d681SAndroid Build Coastguard Worker	vcle.u32 d16, d16, d17
154*9880d681SAndroid Build Coastguard Worker	vcle.f32 d16, d16, d17
155*9880d681SAndroid Build Coastguard Worker	vcle.s8	q8, q8, q9
156*9880d681SAndroid Build Coastguard Worker	vcle.s16 q8, q8, q9
157*9880d681SAndroid Build Coastguard Worker	vcle.s32 q8, q8, q9
158*9880d681SAndroid Build Coastguard Worker	vcle.u8	q8, q8, q9
159*9880d681SAndroid Build Coastguard Worker	vcle.u16 q8, q8, q9
160*9880d681SAndroid Build Coastguard Worker	vcle.u32 q8, q8, q9
161*9880d681SAndroid Build Coastguard Worker	vcle.f32 q8, q8, q9
162*9880d681SAndroid Build Coastguard Worker
163*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s8	d16, d17, d16           @ encoding: [0xb0,0x03,0x41,0xf2]
164*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s16	d16, d17, d16   @ encoding: [0xb0,0x03,0x51,0xf2]
165*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s32	d16, d17, d16   @ encoding: [0xb0,0x03,0x61,0xf2]
166*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u8	d16, d17, d16           @ encoding: [0xb0,0x03,0x41,0xf3]
167*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u16	d16, d17, d16   @ encoding: [0xb0,0x03,0x51,0xf3]
168*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u32	d16, d17, d16   @ encoding: [0xb0,0x03,0x61,0xf3]
169*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.f32	d16, d17, d16   @ encoding: [0xa0,0x0e,0x41,0xf3]
170*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s8	q8, q9, q8              @ encoding: [0xf0,0x03,0x42,0xf2]
171*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s16	q8, q9, q8      @ encoding: [0xf0,0x03,0x52,0xf2]
172*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.s32	q8, q9, q8      @ encoding: [0xf0,0x03,0x62,0xf2]
173*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u8	q8, q9, q8              @ encoding: [0xf0,0x03,0x42,0xf3]
174*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u16	q8, q9, q8      @ encoding: [0xf0,0x03,0x52,0xf3]
175*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.u32	q8, q9, q8      @ encoding: [0xf0,0x03,0x62,0xf3]
176*9880d681SAndroid Build Coastguard Worker@ CHECK: vcge.f32	q8, q9, q8      @ encoding: [0xe0,0x0e,0x42,0xf3]
177*9880d681SAndroid Build Coastguard Worker
178*9880d681SAndroid Build Coastguard Worker
179*9880d681SAndroid Build Coastguard Worker@ VACLT is an alias for VACGT w/ the source operands reversed.
180*9880d681SAndroid Build Coastguard Worker@ VACLE is an alias for VACGE w/ the source operands reversed.
181*9880d681SAndroid Build Coastguard Worker	vaclt.f32 q9, q11, q12
182*9880d681SAndroid Build Coastguard Worker	vaclt.f32 d9, d11, d12
183*9880d681SAndroid Build Coastguard Worker	vaclt.f32 q11, q12
184*9880d681SAndroid Build Coastguard Worker	vaclt.f32 d11, d12
185*9880d681SAndroid Build Coastguard Worker	vacle.f32 q9, q11, q12
186*9880d681SAndroid Build Coastguard Worker	vacle.f32 d9, d11, d12
187*9880d681SAndroid Build Coastguard Worker	vacle.f32 q11, q12
188*9880d681SAndroid Build Coastguard Worker	vacle.f32 d11, d12
189*9880d681SAndroid Build Coastguard Worker
190*9880d681SAndroid Build Coastguard Worker@ CHECK: vacgt.f32	q9, q12, q11    @ encoding: [0xf6,0x2e,0x68,0xf3]
191*9880d681SAndroid Build Coastguard Worker@ CHECK: vacgt.f32	d9, d12, d11    @ encoding: [0x1b,0x9e,0x2c,0xf3]
192*9880d681SAndroid Build Coastguard Worker@ CHECK: vacgt.f32	q11, q12, q11   @ encoding: [0xf6,0x6e,0x68,0xf3]
193*9880d681SAndroid Build Coastguard Worker@ CHECK: vacgt.f32	d11, d12, d11   @ encoding: [0x1b,0xbe,0x2c,0xf3]
194*9880d681SAndroid Build Coastguard Worker@ CHECK: vacge.f32	q9, q12, q11    @ encoding: [0xf6,0x2e,0x48,0xf3]
195*9880d681SAndroid Build Coastguard Worker@ CHECK: vacge.f32	d9, d12, d11    @ encoding: [0x1b,0x9e,0x0c,0xf3]
196*9880d681SAndroid Build Coastguard Worker@ CHECK: vacge.f32	q11, q12, q11   @ encoding: [0xf6,0x6e,0x48,0xf3]
197*9880d681SAndroid Build Coastguard Worker@ CHECK: vacge.f32	d11, d12, d11   @ encoding: [0x1b,0xbe,0x0c,0xf3]
198