1 // RUN: llvm-mc -triple=aarch64 -mattr=+neon -show-encoding < %s | FileCheck %s
2 // RUN: llvm-mc -triple=arm64 -mattr=+neon -show-encoding < %s | FileCheck %s
4 // Check that the assembler can handle the documented syntax for AArch64
7 //------------------------------------------------------------------------------
9 //------------------------------------------------------------------------------
17 // CHECK: rev64 v0.16b, v31.16b // encoding: [0xe0,0x0b,0x20,0x4e]
18 // CHECK: rev64 v2.8h, v4.8h // encoding: [0x82,0x08,0x60,0x4e]
19 // CHECK: rev64 v6.4s, v8.4s // encoding: [0x06,0x09,0xa0,0x4e]
20 // CHECK: rev64 v1.8b, v9.8b // encoding: [0x21,0x09,0x20,0x0e]
21 // CHECK: rev64 v13.4h, v21.4h // encoding: [0xad,0x0a,0x60,0x0e]
22 // CHECK: rev64 v4.2s, v0.2s // encoding: [0x04,0x08,0xa0,0x0e]
24 rev32 v30.16b, v31.16b
29 // CHECK: rev32 v30.16b, v31.16b // encoding: [0xfe,0x0b,0x20,0x6e]
30 // CHECK: rev32 v4.8h, v7.8h // encoding: [0xe4,0x08,0x60,0x6e]
31 // CHECK: rev32 v21.8b, v1.8b // encoding: [0x35,0x08,0x20,0x2e]
32 // CHECK: rev32 v0.4h, v9.4h // encoding: [0x20,0x09,0x60,0x2e]
34 rev16 v30.16b, v31.16b
37 // CHECK: rev16 v30.16b, v31.16b // encoding: [0xfe,0x1b,0x20,0x4e]
38 // CHECK: rev16 v21.8b, v1.8b // encoding: [0x35,0x18,0x20,0x0e]
40 //------------------------------------------------------------------------------
41 // Signed integer pairwise add long
42 //------------------------------------------------------------------------------
51 // CHECK: saddlp v3.8h, v21.16b // encoding: [0xa3,0x2a,0x20,0x4e]
52 // CHECK: saddlp v8.4h, v5.8b // encoding: [0xa8,0x28,0x20,0x0e]
53 // CHECK: saddlp v9.4s, v1.8h // encoding: [0x29,0x28,0x60,0x4e]
54 // CHECK: saddlp v0.2s, v1.4h // encoding: [0x20,0x28,0x60,0x0e]
55 // CHECK: saddlp v12.2d, v4.4s // encoding: [0x8c,0x28,0xa0,0x4e]
56 // CHECK: saddlp v17.1d, v28.2s // encoding: [0x91,0x2b,0xa0,0x0e]
58 //------------------------------------------------------------------------------
59 // Unsigned integer pairwise add long
60 //------------------------------------------------------------------------------
69 // CHECK: uaddlp v3.8h, v21.16b // encoding: [0xa3,0x2a,0x20,0x6e]
70 // CHECK: uaddlp v8.4h, v5.8b // encoding: [0xa8,0x28,0x20,0x2e]
71 // CHECK: uaddlp v9.4s, v1.8h // encoding: [0x29,0x28,0x60,0x6e]
72 // CHECK: uaddlp v0.2s, v1.4h // encoding: [0x20,0x28,0x60,0x2e]
73 // CHECK: uaddlp v12.2d, v4.4s // encoding: [0x8c,0x28,0xa0,0x6e]
74 // CHECK: uaddlp v17.1d, v28.2s // encoding: [0x91,0x2b,0xa0,0x2e]
76 //------------------------------------------------------------------------------
77 // Signed integer pairwise add and accumulate long
78 //------------------------------------------------------------------------------
87 // CHECK: sadalp v3.8h, v21.16b // encoding: [0xa3,0x6a,0x20,0x4e]
88 // CHECK: sadalp v8.4h, v5.8b // encoding: [0xa8,0x68,0x20,0x0e]
89 // CHECK: sadalp v9.4s, v1.8h // encoding: [0x29,0x68,0x60,0x4e]
90 // CHECK: sadalp v0.2s, v1.4h // encoding: [0x20,0x68,0x60,0x0e]
91 // CHECK: sadalp v12.2d, v4.4s // encoding: [0x8c,0x68,0xa0,0x4e]
92 // CHECK: sadalp v17.1d, v28.2s // encoding: [0x91,0x6b,0xa0,0x0e]
94 //------------------------------------------------------------------------------
95 // Unsigned integer pairwise add and accumulate long
96 //------------------------------------------------------------------------------
103 uadalp v17.1d, v28.2s
105 // CHECK: uadalp v3.8h, v21.16b // encoding: [0xa3,0x6a,0x20,0x6e]
106 // CHECK: uadalp v8.4h, v5.8b // encoding: [0xa8,0x68,0x20,0x2e]
107 // CHECK: uadalp v9.4s, v1.8h // encoding: [0x29,0x68,0x60,0x6e]
108 // CHECK: uadalp v0.2s, v1.4h // encoding: [0x20,0x68,0x60,0x2e]
109 // CHECK: uadalp v12.2d, v4.4s // encoding: [0x8c,0x68,0xa0,0x6e]
110 // CHECK: uadalp v17.1d, v28.2s // encoding: [0x91,0x6b,0xa0,0x2e]
112 //------------------------------------------------------------------------------
113 // Signed integer saturating accumulate of unsigned value
114 //------------------------------------------------------------------------------
116 suqadd v0.16b, v31.16b
121 suqadd v13.4h, v21.4h
124 // CHECK: suqadd v0.16b, v31.16b // encoding: [0xe0,0x3b,0x20,0x4e]
125 // CHECK: suqadd v2.8h, v4.8h // encoding: [0x82,0x38,0x60,0x4e]
126 // CHECK: suqadd v6.4s, v8.4s // encoding: [0x06,0x39,0xa0,0x4e]
127 // CHECK: suqadd v6.2d, v8.2d // encoding: [0x06,0x39,0xe0,0x4e]
128 // CHECK: suqadd v1.8b, v9.8b // encoding: [0x21,0x39,0x20,0x0e]
129 // CHECK: suqadd v13.4h, v21.4h // encoding: [0xad,0x3a,0x60,0x0e]
130 // CHECK: suqadd v4.2s, v0.2s // encoding: [0x04,0x38,0xa0,0x0e]
132 //------------------------------------------------------------------------------
133 // Unsigned integer saturating accumulate of signed value
134 //------------------------------------------------------------------------------
136 usqadd v0.16b, v31.16b
141 usqadd v13.4h, v21.4h
144 // CHECK: usqadd v0.16b, v31.16b // encoding: [0xe0,0x3b,0x20,0x6e]
145 // CHECK: usqadd v2.8h, v4.8h // encoding: [0x82,0x38,0x60,0x6e]
146 // CHECK: usqadd v6.4s, v8.4s // encoding: [0x06,0x39,0xa0,0x6e]
147 // CHECK: usqadd v6.2d, v8.2d // encoding: [0x06,0x39,0xe0,0x6e]
148 // CHECK: usqadd v1.8b, v9.8b // encoding: [0x21,0x39,0x20,0x2e]
149 // CHECK: usqadd v13.4h, v21.4h // encoding: [0xad,0x3a,0x60,0x2e]
150 // CHECK: usqadd v4.2s, v0.2s // encoding: [0x04,0x38,0xa0,0x2e]
152 //------------------------------------------------------------------------------
153 // Integer saturating absolute
154 //------------------------------------------------------------------------------
156 sqabs v0.16b, v31.16b
164 // CHECK: sqabs v0.16b, v31.16b // encoding: [0xe0,0x7b,0x20,0x4e]
165 // CHECK: sqabs v2.8h, v4.8h // encoding: [0x82,0x78,0x60,0x4e]
166 // CHECK: sqabs v6.4s, v8.4s // encoding: [0x06,0x79,0xa0,0x4e]
167 // CHECK: sqabs v6.2d, v8.2d // encoding: [0x06,0x79,0xe0,0x4e]
168 // CHECK: sqabs v1.8b, v9.8b // encoding: [0x21,0x79,0x20,0x0e]
169 // CHECK: sqabs v13.4h, v21.4h // encoding: [0xad,0x7a,0x60,0x0e]
170 // CHECK: sqabs v4.2s, v0.2s // encoding: [0x04,0x78,0xa0,0x0e]
172 //------------------------------------------------------------------------------
173 // Signed integer saturating negate
174 //------------------------------------------------------------------------------
176 sqneg v0.16b, v31.16b
184 // CHECK: sqneg v0.16b, v31.16b // encoding: [0xe0,0x7b,0x20,0x6e]
185 // CHECK: sqneg v2.8h, v4.8h // encoding: [0x82,0x78,0x60,0x6e]
186 // CHECK: sqneg v6.4s, v8.4s // encoding: [0x06,0x79,0xa0,0x6e]
187 // CHECK: sqneg v6.2d, v8.2d // encoding: [0x06,0x79,0xe0,0x6e]
188 // CHECK: sqneg v1.8b, v9.8b // encoding: [0x21,0x79,0x20,0x2e]
189 // CHECK: sqneg v13.4h, v21.4h // encoding: [0xad,0x7a,0x60,0x2e]
190 // CHECK: sqneg v4.2s, v0.2s // encoding: [0x04,0x78,0xa0,0x2e]
192 //------------------------------------------------------------------------------
194 //------------------------------------------------------------------------------
204 // CHECK: abs v0.16b, v31.16b // encoding: [0xe0,0xbb,0x20,0x4e]
205 // CHECK: abs v2.8h, v4.8h // encoding: [0x82,0xb8,0x60,0x4e]
206 // CHECK: abs v6.4s, v8.4s // encoding: [0x06,0xb9,0xa0,0x4e]
207 // CHECK: abs v6.2d, v8.2d // encoding: [0x06,0xb9,0xe0,0x4e]
208 // CHECK: abs v1.8b, v9.8b // encoding: [0x21,0xb9,0x20,0x0e]
209 // CHECK: abs v13.4h, v21.4h // encoding: [0xad,0xba,0x60,0x0e]
210 // CHECK: abs v4.2s, v0.2s // encoding: [0x04,0xb8,0xa0,0x0e]
212 //------------------------------------------------------------------------------
214 //------------------------------------------------------------------------------
224 // CHECK: neg v0.16b, v31.16b // encoding: [0xe0,0xbb,0x20,0x6e]
225 // CHECK: neg v2.8h, v4.8h // encoding: [0x82,0xb8,0x60,0x6e]
226 // CHECK: neg v6.4s, v8.4s // encoding: [0x06,0xb9,0xa0,0x6e]
227 // CHECK: neg v6.2d, v8.2d // encoding: [0x06,0xb9,0xe0,0x6e]
228 // CHECK: neg v1.8b, v9.8b // encoding: [0x21,0xb9,0x20,0x2e]
229 // CHECK: neg v13.4h, v21.4h // encoding: [0xad,0xba,0x60,0x2e]
230 // CHECK: neg v4.2s, v0.2s // encoding: [0x04,0xb8,0xa0,0x2e]
232 //------------------------------------------------------------------------------
233 // Integer count leading sign bits
234 //------------------------------------------------------------------------------
243 // CHECK: cls v0.16b, v31.16b // encoding: [0xe0,0x4b,0x20,0x4e]
244 // CHECK: cls v2.8h, v4.8h // encoding: [0x82,0x48,0x60,0x4e]
245 // CHECK: cls v6.4s, v8.4s // encoding: [0x06,0x49,0xa0,0x4e]
246 // CHECK: cls v1.8b, v9.8b // encoding: [0x21,0x49,0x20,0x0e]
247 // CHECK: cls v13.4h, v21.4h // encoding: [0xad,0x4a,0x60,0x0e]
248 // CHECK: cls v4.2s, v0.2s // encoding: [0x04,0x48,0xa0,0x0e]
250 //------------------------------------------------------------------------------
251 // Integer count leading zeros
252 //------------------------------------------------------------------------------
261 // CHECK: clz v0.16b, v31.16b // encoding: [0xe0,0x4b,0x20,0x6e]
262 // CHECK: clz v2.8h, v4.8h // encoding: [0x82,0x48,0x60,0x6e]
263 // CHECK: clz v6.4s, v8.4s // encoding: [0x06,0x49,0xa0,0x6e]
264 // CHECK: clz v1.8b, v9.8b // encoding: [0x21,0x49,0x20,0x2e]
265 // CHECK: clz v13.4h, v21.4h // encoding: [0xad,0x4a,0x60,0x2e]
266 // CHECK: clz v4.2s, v0.2s // encoding: [0x04,0x48,0xa0,0x2e]
268 //------------------------------------------------------------------------------
270 //------------------------------------------------------------------------------
275 // CHECK: cnt v0.16b, v31.16b // encoding: [0xe0,0x5b,0x20,0x4e]
276 // CHECK: cnt v1.8b, v9.8b // encoding: [0x21,0x59,0x20,0x0e]
278 //------------------------------------------------------------------------------
280 //------------------------------------------------------------------------------
285 // CHECK: {{mvn|not}} v0.16b, v31.16b // encoding: [0xe0,0x5b,0x20,0x6e]
286 // CHECK: {{mvn|not}} v1.8b, v9.8b // encoding: [0x21,0x59,0x20,0x2e]
288 //------------------------------------------------------------------------------
290 //------------------------------------------------------------------------------
295 // CHECK: rbit v0.16b, v31.16b // encoding: [0xe0,0x5b,0x60,0x6e]
296 // CHECK: rbit v1.8b, v9.8b // encoding: [0x21,0x59,0x60,0x2e]
298 //------------------------------------------------------------------------------
299 // Floating-point absolute
300 //------------------------------------------------------------------------------
306 // CHECK: fabs v6.4s, v8.4s // encoding: [0x06,0xf9,0xa0,0x4e]
307 // CHECK: fabs v6.2d, v8.2d // encoding: [0x06,0xf9,0xe0,0x4e]
308 // CHECK: fabs v4.2s, v0.2s // encoding: [0x04,0xf8,0xa0,0x0e]
310 //------------------------------------------------------------------------------
311 // Floating-point negate
312 //------------------------------------------------------------------------------
318 // CHECK: fneg v6.4s, v8.4s // encoding: [0x06,0xf9,0xa0,0x6e]
319 // CHECK: fneg v6.2d, v8.2d // encoding: [0x06,0xf9,0xe0,0x6e]
320 // CHECK: fneg v4.2s, v0.2s // encoding: [0x04,0xf8,0xa0,0x2e]
322 //------------------------------------------------------------------------------
323 // Integer extract and narrow
324 //------------------------------------------------------------------------------
333 // CHECK: xtn2 v0.16b, v31.8h // encoding: [0xe0,0x2b,0x21,0x4e]
334 // CHECK: xtn2 v2.8h, v4.4s // encoding: [0x82,0x28,0x61,0x4e]
335 // CHECK: xtn2 v6.4s, v8.2d // encoding: [0x06,0x29,0xa1,0x4e]
336 // CHECK: xtn v1.8b, v9.8h // encoding: [0x21,0x29,0x21,0x0e]
337 // CHECK: xtn v13.4h, v21.4s // encoding: [0xad,0x2a,0x61,0x0e]
338 // CHECK: xtn v4.2s, v0.2d // encoding: [0x04,0x28,0xa1,0x0e]
340 //------------------------------------------------------------------------------
341 // Signed integer saturating extract and unsigned narrow
342 //------------------------------------------------------------------------------
344 sqxtun2 v0.16b, v31.8h
348 sqxtun v13.4h, v21.4s
351 // CHECK: sqxtun2 v0.16b, v31.8h // encoding: [0xe0,0x2b,0x21,0x6e]
352 // CHECK: sqxtun2 v2.8h, v4.4s // encoding: [0x82,0x28,0x61,0x6e]
353 // CHECK: sqxtun2 v6.4s, v8.2d // encoding: [0x06,0x29,0xa1,0x6e]
354 // CHECK: sqxtun v1.8b, v9.8h // encoding: [0x21,0x29,0x21,0x2e]
355 // CHECK: sqxtun v13.4h, v21.4s // encoding: [0xad,0x2a,0x61,0x2e]
356 // CHECK: sqxtun v4.2s, v0.2d // encoding: [0x04,0x28,0xa1,0x2e]
358 //------------------------------------------------------------------------------
359 // Signed integer saturating extract and narrow
360 //------------------------------------------------------------------------------
362 sqxtn2 v0.16b, v31.8h
369 // CHECK: sqxtn2 v0.16b, v31.8h // encoding: [0xe0,0x4b,0x21,0x4e]
370 // CHECK: sqxtn2 v2.8h, v4.4s // encoding: [0x82,0x48,0x61,0x4e]
371 // CHECK: sqxtn2 v6.4s, v8.2d // encoding: [0x06,0x49,0xa1,0x4e]
372 // CHECK: sqxtn v1.8b, v9.8h // encoding: [0x21,0x49,0x21,0x0e]
373 // CHECK: sqxtn v13.4h, v21.4s // encoding: [0xad,0x4a,0x61,0x0e]
374 // CHECK: sqxtn v4.2s, v0.2d // encoding: [0x04,0x48,0xa1,0x0e]
376 //------------------------------------------------------------------------------
377 // Unsigned integer saturating extract and narrow
378 //------------------------------------------------------------------------------
380 uqxtn2 v0.16b, v31.8h
387 // CHECK: uqxtn2 v0.16b, v31.8h // encoding: [0xe0,0x4b,0x21,0x6e]
388 // CHECK: uqxtn2 v2.8h, v4.4s // encoding: [0x82,0x48,0x61,0x6e]
389 // CHECK: uqxtn2 v6.4s, v8.2d // encoding: [0x06,0x49,0xa1,0x6e]
390 // CHECK: uqxtn v1.8b, v9.8h // encoding: [0x21,0x49,0x21,0x2e]
391 // CHECK: uqxtn v13.4h, v21.4s // encoding: [0xad,0x4a,0x61,0x2e]
392 // CHECK: uqxtn v4.2s, v0.2d // encoding: [0x04,0x48,0xa1,0x2e]
394 //------------------------------------------------------------------------------
395 // Integer shift left long
396 //------------------------------------------------------------------------------
398 shll2 v2.8h, v4.16b, #8
399 shll2 v6.4s, v8.8h, #16
400 shll2 v6.2d, v8.4s, #32
401 shll v2.8h, v4.8b, #8
402 shll v6.4s, v8.4h, #16
403 shll v6.2d, v8.2s, #32
405 // CHECK: shll2 v2.8h, v4.16b, #8 // encoding: [0x82,0x38,0x21,0x6e]
406 // CHECK: shll2 v6.4s, v8.8h, #16 // encoding: [0x06,0x39,0x61,0x6e]
407 // CHECK: shll2 v6.2d, v8.4s, #32 // encoding: [0x06,0x39,0xa1,0x6e]
408 // CHECK: shll v2.8h, v4.8b, #8 // encoding: [0x82,0x38,0x21,0x2e]
409 // CHECK: shll v6.4s, v8.4h, #16 // encoding: [0x06,0x39,0x61,0x2e]
410 // CHECK: shll v6.2d, v8.2s, #32 // encoding: [0x06,0x39,0xa1,0x2e]
412 //------------------------------------------------------------------------------
413 // Floating-point convert downsize
414 //------------------------------------------------------------------------------
421 // CHECK: fcvtn2 v2.8h, v4.4s // encoding: [0x82,0x68,0x21,0x4e]
422 // CHECK: fcvtn2 v6.4s, v8.2d // encoding: [0x06,0x69,0x61,0x4e]
423 // CHECK: fcvtn v13.4h, v21.4s // encoding: [0xad,0x6a,0x21,0x0e]
424 // CHECK: fcvtn v4.2s, v0.2d // encoding: [0x04,0x68,0x61,0x0e]
426 //------------------------------------------------------------------------------
427 // Floating-point convert downsize with inexact
428 //------------------------------------------------------------------------------
433 // CHECK: fcvtxn2 v6.4s, v8.2d // encoding: [0x06,0x69,0x61,0x6e]
434 // CHECK: fcvtxn v4.2s, v0.2d // encoding: [0x04,0x68,0x61,0x2e]
436 //------------------------------------------------------------------------------
437 // Floating-point convert upsize
438 //------------------------------------------------------------------------------
443 fcvtl2 v17.2d, v28.4s
445 // CHECK: fcvtl v9.4s, v1.4h // encoding: [0x29,0x78,0x21,0x0e]
446 // CHECK: fcvtl v0.2d, v1.2s // encoding: [0x20,0x78,0x61,0x0e]
447 // CHECK: fcvtl2 v12.4s, v4.8h // encoding: [0x8c,0x78,0x21,0x4e]
448 // CHECK: fcvtl2 v17.2d, v28.4s // encoding: [0x91,0x7b,0x61,0x4e]
450 //------------------------------------------------------------------------------
451 // Floating-point round to integral
452 //------------------------------------------------------------------------------
458 // CHECK: frintn v6.4s, v8.4s // encoding: [0x06,0x89,0x21,0x4e]
459 // CHECK: frintn v6.2d, v8.2d // encoding: [0x06,0x89,0x61,0x4e]
460 // CHECK: frintn v4.2s, v0.2s // encoding: [0x04,0x88,0x21,0x0e]
466 // CHECK: frinta v6.4s, v8.4s // encoding: [0x06,0x89,0x21,0x6e]
467 // CHECK: frinta v6.2d, v8.2d // encoding: [0x06,0x89,0x61,0x6e]
468 // CHECK: frinta v4.2s, v0.2s // encoding: [0x04,0x88,0x21,0x2e]
474 // CHECK: frintp v6.4s, v8.4s // encoding: [0x06,0x89,0xa1,0x4e]
475 // CHECK: frintp v6.2d, v8.2d // encoding: [0x06,0x89,0xe1,0x4e]
476 // CHECK: frintp v4.2s, v0.2s // encoding: [0x04,0x88,0xa1,0x0e]
482 // CHECK: frintm v6.4s, v8.4s // encoding: [0x06,0x99,0x21,0x4e]
483 // CHECK: frintm v6.2d, v8.2d // encoding: [0x06,0x99,0x61,0x4e]
484 // CHECK: frintm v4.2s, v0.2s // encoding: [0x04,0x98,0x21,0x0e]
490 // CHECK: frintx v6.4s, v8.4s // encoding: [0x06,0x99,0x21,0x6e]
491 // CHECK: frintx v6.2d, v8.2d // encoding: [0x06,0x99,0x61,0x6e]
492 // CHECK: frintx v4.2s, v0.2s // encoding: [0x04,0x98,0x21,0x2e]
498 // CHECK: frintz v6.4s, v8.4s // encoding: [0x06,0x99,0xa1,0x4e]
499 // CHECK: frintz v6.2d, v8.2d // encoding: [0x06,0x99,0xe1,0x4e]
500 // CHECK: frintz v4.2s, v0.2s // encoding: [0x04,0x98,0xa1,0x0e]
506 // CHECK: frinti v6.4s, v8.4s // encoding: [0x06,0x99,0xa1,0x6e]
507 // CHECK: frinti v6.2d, v8.2d // encoding: [0x06,0x99,0xe1,0x6e]
508 // CHECK: frinti v4.2s, v0.2s // encoding: [0x04,0x98,0xa1,0x2e]
510 //------------------------------------------------------------------------------
511 // Floating-point convert to integer
512 //------------------------------------------------------------------------------
518 // CHECK: fcvtns v6.4s, v8.4s // encoding: [0x06,0xa9,0x21,0x4e]
519 // CHECK: fcvtns v6.2d, v8.2d // encoding: [0x06,0xa9,0x61,0x4e]
520 // CHECK: fcvtns v4.2s, v0.2s // encoding: [0x04,0xa8,0x21,0x0e]
526 // CHECK: fcvtnu v6.4s, v8.4s // encoding: [0x06,0xa9,0x21,0x6e]
527 // CHECK: fcvtnu v6.2d, v8.2d // encoding: [0x06,0xa9,0x61,0x6e]
528 // CHECK: fcvtnu v4.2s, v0.2s // encoding: [0x04,0xa8,0x21,0x2e]
534 // CHECK: fcvtps v6.4s, v8.4s // encoding: [0x06,0xa9,0xa1,0x4e]
535 // CHECK: fcvtps v6.2d, v8.2d // encoding: [0x06,0xa9,0xe1,0x4e]
536 // CHECK: fcvtps v4.2s, v0.2s // encoding: [0x04,0xa8,0xa1,0x0e]
542 // CHECK: fcvtpu v6.4s, v8.4s // encoding: [0x06,0xa9,0xa1,0x6e]
543 // CHECK: fcvtpu v6.2d, v8.2d // encoding: [0x06,0xa9,0xe1,0x6e]
544 // CHECK: fcvtpu v4.2s, v0.2s // encoding: [0x04,0xa8,0xa1,0x2e]
550 // CHECK: fcvtms v6.4s, v8.4s // encoding: [0x06,0xb9,0x21,0x4e]
551 // CHECK: fcvtms v6.2d, v8.2d // encoding: [0x06,0xb9,0x61,0x4e]
552 // CHECK: fcvtms v4.2s, v0.2s // encoding: [0x04,0xb8,0x21,0x0e]
558 // CHECK: fcvtmu v6.4s, v8.4s // encoding: [0x06,0xb9,0x21,0x6e]
559 // CHECK: fcvtmu v6.2d, v8.2d // encoding: [0x06,0xb9,0x61,0x6e]
560 // CHECK: fcvtmu v4.2s, v0.2s // encoding: [0x04,0xb8,0x21,0x2e]
566 // CHECK: fcvtzs v6.4s, v8.4s // encoding: [0x06,0xb9,0xa1,0x4e]
567 // CHECK: fcvtzs v6.2d, v8.2d // encoding: [0x06,0xb9,0xe1,0x4e]
568 // CHECK: fcvtzs v4.2s, v0.2s // encoding: [0x04,0xb8,0xa1,0x0e]
575 // CHECK: fcvtzu v6.4s, v8.4s // encoding: [0x06,0xb9,0xa1,0x6e]
576 // CHECK: fcvtzu v6.2d, v8.2d // encoding: [0x06,0xb9,0xe1,0x6e]
577 // CHECK: fcvtzu v4.2s, v0.2s // encoding: [0x04,0xb8,0xa1,0x2e]
583 // CHECK: fcvtas v6.4s, v8.4s // encoding: [0x06,0xc9,0x21,0x4e]
584 // CHECK: fcvtas v6.2d, v8.2d // encoding: [0x06,0xc9,0x61,0x4e]
585 // CHECK: fcvtas v4.2s, v0.2s // encoding: [0x04,0xc8,0x21,0x0e]
591 // CHECK: fcvtau v6.4s, v8.4s // encoding: [0x06,0xc9,0x21,0x6e]
592 // CHECK: fcvtau v6.2d, v8.2d // encoding: [0x06,0xc9,0x61,0x6e]
593 // CHECK: fcvtau v4.2s, v0.2s // encoding: [0x04,0xc8,0x21,0x2e]
598 // CHECK: urecpe v6.4s, v8.4s // encoding: [0x06,0xc9,0xa1,0x4e]
599 // CHECK: urecpe v4.2s, v0.2s // encoding: [0x04,0xc8,0xa1,0x0e]
604 // CHECK: ursqrte v6.4s, v8.4s // encoding: [0x06,0xc9,0xa1,0x6e]
605 // CHECK: ursqrte v4.2s, v0.2s // encoding: [0x04,0xc8,0xa1,0x2e]
611 // CHECK: scvtf v6.4s, v8.4s // encoding: [0x06,0xd9,0x21,0x4e]
612 // CHECK: scvtf v6.2d, v8.2d // encoding: [0x06,0xd9,0x61,0x4e]
613 // CHECK: scvtf v4.2s, v0.2s // encoding: [0x04,0xd8,0x21,0x0e]
619 // CHECK: ucvtf v6.4s, v8.4s // encoding: [0x06,0xd9,0x21,0x6e]
620 // CHECK: ucvtf v6.2d, v8.2d // encoding: [0x06,0xd9,0x61,0x6e]
621 // CHECK: ucvtf v4.2s, v0.2s // encoding: [0x04,0xd8,0x21,0x2e]
627 // CHECK: frecpe v6.4s, v8.4s // encoding: [0x06,0xd9,0xa1,0x4e]
628 // CHECK: frecpe v6.2d, v8.2d // encoding: [0x06,0xd9,0xe1,0x4e]
629 // CHECK: frecpe v4.2s, v0.2s // encoding: [0x04,0xd8,0xa1,0x0e]
635 // CHECK: frsqrte v6.4s, v8.4s // encoding: [0x06,0xd9,0xa1,0x6e]
636 // CHECK: frsqrte v6.2d, v8.2d // encoding: [0x06,0xd9,0xe1,0x6e]
637 // CHECK: frsqrte v4.2s, v0.2s // encoding: [0x04,0xd8,0xa1,0x2e]
643 // CHECK: fsqrt v6.4s, v8.4s // encoding: [0x06,0xf9,0xa1,0x6e]
644 // CHECK: fsqrt v6.2d, v8.2d // encoding: [0x06,0xf9,0xe1,0x6e]
645 // CHECK: fsqrt v4.2s, v0.2s // encoding: [0x04,0xf8,0xa1,0x2e]