1 // Copyright 2015 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution and at
3 // http://rust-lang.org/COPYRIGHT.
5 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 // option. This file may not be copied, modified, or distributed
9 // except according to those terms.
11 // DO NOT EDIT: autogenerated by etc/platform-intrinsics/generator.py
12 // ignore-tidy-linelength
14 #![allow(unused_imports)]
16 use {Intrinsic, Type};
17 use IntrinsicDef::Named;
19 pub fn find(name: &str) -> Option<Intrinsic> {
20 if !name.starts_with("arm_v") { return None }
21 Some(match &name["arm_v".len()..] {
22 "hadd_s8" => Intrinsic {
23 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
25 definition: Named("llvm.arm.neon.vhadds.v8i8")
27 "hadd_u8" => Intrinsic {
28 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
30 definition: Named("llvm.arm.neon.vhaddu.v8i8")
32 "hadd_s16" => Intrinsic {
33 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
35 definition: Named("llvm.arm.neon.vhadds.v4i16")
37 "hadd_u16" => Intrinsic {
38 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
40 definition: Named("llvm.arm.neon.vhaddu.v4i16")
42 "hadd_s32" => Intrinsic {
43 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
45 definition: Named("llvm.arm.neon.vhadds.v2i32")
47 "hadd_u32" => Intrinsic {
48 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
50 definition: Named("llvm.arm.neon.vhaddu.v2i32")
52 "haddq_s8" => Intrinsic {
53 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
55 definition: Named("llvm.arm.neon.vhadds.v16i8")
57 "haddq_u8" => Intrinsic {
58 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
60 definition: Named("llvm.arm.neon.vhaddu.v16i8")
62 "haddq_s16" => Intrinsic {
63 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
65 definition: Named("llvm.arm.neon.vhadds.v8i16")
67 "haddq_u16" => Intrinsic {
68 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
70 definition: Named("llvm.arm.neon.vhaddu.v8i16")
72 "haddq_s32" => Intrinsic {
73 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
75 definition: Named("llvm.arm.neon.vhadds.v4i32")
77 "haddq_u32" => Intrinsic {
78 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
80 definition: Named("llvm.arm.neon.vhaddu.v4i32")
82 "rhadd_s8" => Intrinsic {
83 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
85 definition: Named("llvm.arm.neon.vrhadds.v8i8")
87 "rhadd_u8" => Intrinsic {
88 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
90 definition: Named("llvm.arm.neon.vrhaddu.v8i8")
92 "rhadd_s16" => Intrinsic {
93 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
95 definition: Named("llvm.arm.neon.vrhadds.v4i16")
97 "rhadd_u16" => Intrinsic {
98 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
100 definition: Named("llvm.arm.neon.vrhaddu.v4i16")
102 "rhadd_s32" => Intrinsic {
103 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
105 definition: Named("llvm.arm.neon.vrhadds.v2i32")
107 "rhadd_u32" => Intrinsic {
108 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
110 definition: Named("llvm.arm.neon.vrhaddu.v2i32")
112 "rhaddq_s8" => Intrinsic {
113 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
115 definition: Named("llvm.arm.neon.vrhadds.v16i8")
117 "rhaddq_u8" => Intrinsic {
118 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
120 definition: Named("llvm.arm.neon.vrhaddu.v16i8")
122 "rhaddq_s16" => Intrinsic {
123 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
125 definition: Named("llvm.arm.neon.vrhadds.v8i16")
127 "rhaddq_u16" => Intrinsic {
128 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
130 definition: Named("llvm.arm.neon.vrhaddu.v8i16")
132 "rhaddq_s32" => Intrinsic {
133 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
135 definition: Named("llvm.arm.neon.vrhadds.v4i32")
137 "rhaddq_u32" => Intrinsic {
138 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
140 definition: Named("llvm.arm.neon.vrhaddu.v4i32")
142 "qadd_s8" => Intrinsic {
143 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
145 definition: Named("llvm.arm.neon.vqadds.v8i8")
147 "qadd_u8" => Intrinsic {
148 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
150 definition: Named("llvm.arm.neon.vqaddu.v8i8")
152 "qadd_s16" => Intrinsic {
153 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
155 definition: Named("llvm.arm.neon.vqadds.v4i16")
157 "qadd_u16" => Intrinsic {
158 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
160 definition: Named("llvm.arm.neon.vqaddu.v4i16")
162 "qadd_s32" => Intrinsic {
163 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
165 definition: Named("llvm.arm.neon.vqadds.v2i32")
167 "qadd_u32" => Intrinsic {
168 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
170 definition: Named("llvm.arm.neon.vqaddu.v2i32")
172 "qadd_s64" => Intrinsic {
173 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x1, &::I64x1]; &INPUTS },
175 definition: Named("llvm.arm.neon.vqadds.v1i64")
177 "qadd_u64" => Intrinsic {
178 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::U64x1]; &INPUTS },
180 definition: Named("llvm.arm.neon.vqaddu.v1i64")
182 "qaddq_s8" => Intrinsic {
183 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
185 definition: Named("llvm.arm.neon.vqadds.v16i8")
187 "qaddq_u8" => Intrinsic {
188 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
190 definition: Named("llvm.arm.neon.vqaddu.v16i8")
192 "qaddq_s16" => Intrinsic {
193 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
195 definition: Named("llvm.arm.neon.vqadds.v8i16")
197 "qaddq_u16" => Intrinsic {
198 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
200 definition: Named("llvm.arm.neon.vqaddu.v8i16")
202 "qaddq_s32" => Intrinsic {
203 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
205 definition: Named("llvm.arm.neon.vqadds.v4i32")
207 "qaddq_u32" => Intrinsic {
208 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
210 definition: Named("llvm.arm.neon.vqaddu.v4i32")
212 "qaddq_s64" => Intrinsic {
213 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
215 definition: Named("llvm.arm.neon.vqadds.v2i64")
217 "qaddq_u64" => Intrinsic {
218 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U64x2]; &INPUTS },
220 definition: Named("llvm.arm.neon.vqaddu.v2i64")
222 "raddhn_s16" => Intrinsic {
223 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
225 definition: Named("llvm.arm.neon.vraddhn.v8i8")
227 "raddhn_u16" => Intrinsic {
228 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
230 definition: Named("llvm.arm.neon.vraddhn.v8i8")
232 "raddhn_s32" => Intrinsic {
233 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
235 definition: Named("llvm.arm.neon.vraddhn.v4i16")
237 "raddhn_u32" => Intrinsic {
238 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
240 definition: Named("llvm.arm.neon.vraddhn.v4i16")
242 "raddhn_s64" => Intrinsic {
243 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
245 definition: Named("llvm.arm.neon.vraddhn.v2i32")
247 "raddhn_u64" => Intrinsic {
248 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U64x2]; &INPUTS },
250 definition: Named("llvm.arm.neon.vraddhn.v2i32")
252 "fma_f32" => Intrinsic {
253 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x2, &::F32x2]; &INPUTS },
255 definition: Named("llvm.fma.v2f32")
257 "fmaq_f32" => Intrinsic {
258 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x4, &::F32x4]; &INPUTS },
260 definition: Named("llvm.fma.v4f32")
262 "qdmulh_s16" => Intrinsic {
263 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
265 definition: Named("llvm.arm.neon.vsqdmulh.v4i16")
267 "qdmulh_s32" => Intrinsic {
268 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
270 definition: Named("llvm.arm.neon.vsqdmulh.v2i32")
272 "qdmulhq_s16" => Intrinsic {
273 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
275 definition: Named("llvm.arm.neon.vsqdmulh.v8i16")
277 "qdmulhq_s32" => Intrinsic {
278 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
280 definition: Named("llvm.arm.neon.vsqdmulh.v4i32")
282 "qrdmulh_s16" => Intrinsic {
283 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
285 definition: Named("llvm.arm.neon.vsqrdmulh.v4i16")
287 "qrdmulh_s32" => Intrinsic {
288 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
290 definition: Named("llvm.arm.neon.vsqrdmulh.v2i32")
292 "qrdmulhq_s16" => Intrinsic {
293 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
295 definition: Named("llvm.arm.neon.vsqrdmulh.v8i16")
297 "qrdmulhq_s32" => Intrinsic {
298 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
300 definition: Named("llvm.arm.neon.vsqrdmulh.v4i32")
302 "mull_s8" => Intrinsic {
303 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
305 definition: Named("llvm.arm.neon.vmulls.v8i16")
307 "mull_u8" => Intrinsic {
308 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
310 definition: Named("llvm.arm.neon.vmullu.v8i16")
312 "mull_s16" => Intrinsic {
313 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
315 definition: Named("llvm.arm.neon.vmulls.v4i32")
317 "mull_u16" => Intrinsic {
318 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
320 definition: Named("llvm.arm.neon.vmullu.v4i32")
322 "mull_s32" => Intrinsic {
323 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
325 definition: Named("llvm.arm.neon.vmulls.v2i64")
327 "mull_u32" => Intrinsic {
328 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
330 definition: Named("llvm.arm.neon.vmullu.v2i64")
332 "qdmullq_s8" => Intrinsic {
333 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
335 definition: Named("llvm.arm.neon.vsqdmull.v8i16")
337 "qdmullq_s16" => Intrinsic {
338 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
340 definition: Named("llvm.arm.neon.vsqdmull.v4i32")
342 "hsub_s8" => Intrinsic {
343 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
345 definition: Named("llvm.arm.neon.vhsubs.v8i8")
347 "hsub_u8" => Intrinsic {
348 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
350 definition: Named("llvm.arm.neon.vhsubu.v8i8")
352 "hsub_s16" => Intrinsic {
353 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
355 definition: Named("llvm.arm.neon.vhsubs.v4i16")
357 "hsub_u16" => Intrinsic {
358 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
360 definition: Named("llvm.arm.neon.vhsubu.v4i16")
362 "hsub_s32" => Intrinsic {
363 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
365 definition: Named("llvm.arm.neon.vhsubs.v2i32")
367 "hsub_u32" => Intrinsic {
368 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
370 definition: Named("llvm.arm.neon.vhsubu.v2i32")
372 "hsubq_s8" => Intrinsic {
373 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
375 definition: Named("llvm.arm.neon.vhsubs.v16i8")
377 "hsubq_u8" => Intrinsic {
378 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
380 definition: Named("llvm.arm.neon.vhsubu.v16i8")
382 "hsubq_s16" => Intrinsic {
383 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
385 definition: Named("llvm.arm.neon.vhsubs.v8i16")
387 "hsubq_u16" => Intrinsic {
388 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
390 definition: Named("llvm.arm.neon.vhsubu.v8i16")
392 "hsubq_s32" => Intrinsic {
393 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
395 definition: Named("llvm.arm.neon.vhsubs.v4i32")
397 "hsubq_u32" => Intrinsic {
398 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
400 definition: Named("llvm.arm.neon.vhsubu.v4i32")
402 "qsub_s8" => Intrinsic {
403 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
405 definition: Named("llvm.arm.neon.vqsubs.v8i8")
407 "qsub_u8" => Intrinsic {
408 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
410 definition: Named("llvm.arm.neon.vqsubu.v8i8")
412 "qsub_s16" => Intrinsic {
413 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
415 definition: Named("llvm.arm.neon.vqsubs.v4i16")
417 "qsub_u16" => Intrinsic {
418 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
420 definition: Named("llvm.arm.neon.vqsubu.v4i16")
422 "qsub_s32" => Intrinsic {
423 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
425 definition: Named("llvm.arm.neon.vqsubs.v2i32")
427 "qsub_u32" => Intrinsic {
428 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
430 definition: Named("llvm.arm.neon.vqsubu.v2i32")
432 "qsub_s64" => Intrinsic {
433 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x1, &::I64x1]; &INPUTS },
435 definition: Named("llvm.arm.neon.vqsubs.v1i64")
437 "qsub_u64" => Intrinsic {
438 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::U64x1]; &INPUTS },
440 definition: Named("llvm.arm.neon.vqsubu.v1i64")
442 "qsubq_s8" => Intrinsic {
443 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
445 definition: Named("llvm.arm.neon.vqsubs.v16i8")
447 "qsubq_u8" => Intrinsic {
448 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
450 definition: Named("llvm.arm.neon.vqsubu.v16i8")
452 "qsubq_s16" => Intrinsic {
453 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
455 definition: Named("llvm.arm.neon.vqsubs.v8i16")
457 "qsubq_u16" => Intrinsic {
458 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
460 definition: Named("llvm.arm.neon.vqsubu.v8i16")
462 "qsubq_s32" => Intrinsic {
463 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
465 definition: Named("llvm.arm.neon.vqsubs.v4i32")
467 "qsubq_u32" => Intrinsic {
468 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
470 definition: Named("llvm.arm.neon.vqsubu.v4i32")
472 "qsubq_s64" => Intrinsic {
473 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
475 definition: Named("llvm.arm.neon.vqsubs.v2i64")
477 "qsubq_u64" => Intrinsic {
478 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U64x2]; &INPUTS },
480 definition: Named("llvm.arm.neon.vqsubu.v2i64")
482 "rsubhn_s16" => Intrinsic {
483 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
485 definition: Named("llvm.arm.neon.vrsubhn.v8i8")
487 "rsubhn_u16" => Intrinsic {
488 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
490 definition: Named("llvm.arm.neon.vrsubhn.v8i8")
492 "rsubhn_s32" => Intrinsic {
493 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
495 definition: Named("llvm.arm.neon.vrsubhn.v4i16")
497 "rsubhn_u32" => Intrinsic {
498 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
500 definition: Named("llvm.arm.neon.vrsubhn.v4i16")
502 "rsubhn_s64" => Intrinsic {
503 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
505 definition: Named("llvm.arm.neon.vrsubhn.v2i32")
507 "rsubhn_u64" => Intrinsic {
508 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U64x2]; &INPUTS },
510 definition: Named("llvm.arm.neon.vrsubhn.v2i32")
512 "abd_s8" => Intrinsic {
513 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
515 definition: Named("llvm.arm.neon.vabds.v8i8")
517 "abd_u8" => Intrinsic {
518 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
520 definition: Named("llvm.arm.neon.vabdu.v8i8")
522 "abd_s16" => Intrinsic {
523 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
525 definition: Named("llvm.arm.neon.vabds.v4i16")
527 "abd_u16" => Intrinsic {
528 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
530 definition: Named("llvm.arm.neon.vabdu.v4i16")
532 "abd_s32" => Intrinsic {
533 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
535 definition: Named("llvm.arm.neon.vabds.v2i32")
537 "abd_u32" => Intrinsic {
538 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
540 definition: Named("llvm.arm.neon.vabdu.v2i32")
542 "abd_f32" => Intrinsic {
543 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x2, &::F32x2]; &INPUTS },
545 definition: Named("llvm.arm.neon.vabdf.v2f32")
547 "abdq_s8" => Intrinsic {
548 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
550 definition: Named("llvm.arm.neon.vabds.v16i8")
552 "abdq_u8" => Intrinsic {
553 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
555 definition: Named("llvm.arm.neon.vabdu.v16i8")
557 "abdq_s16" => Intrinsic {
558 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
560 definition: Named("llvm.arm.neon.vabds.v8i16")
562 "abdq_u16" => Intrinsic {
563 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
565 definition: Named("llvm.arm.neon.vabdu.v8i16")
567 "abdq_s32" => Intrinsic {
568 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
570 definition: Named("llvm.arm.neon.vabds.v4i32")
572 "abdq_u32" => Intrinsic {
573 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
575 definition: Named("llvm.arm.neon.vabdu.v4i32")
577 "abdq_f32" => Intrinsic {
578 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x4, &::F32x4]; &INPUTS },
580 definition: Named("llvm.arm.neon.vabdf.v4f32")
582 "max_s8" => Intrinsic {
583 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
585 definition: Named("llvm.arm.neon.vmaxs.v8i8")
587 "max_u8" => Intrinsic {
588 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
590 definition: Named("llvm.arm.neon.vmaxu.v8i8")
592 "max_s16" => Intrinsic {
593 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
595 definition: Named("llvm.arm.neon.vmaxs.v4i16")
597 "max_u16" => Intrinsic {
598 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
600 definition: Named("llvm.arm.neon.vmaxu.v4i16")
602 "max_s32" => Intrinsic {
603 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
605 definition: Named("llvm.arm.neon.vmaxs.v2i32")
607 "max_u32" => Intrinsic {
608 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
610 definition: Named("llvm.arm.neon.vmaxu.v2i32")
612 "max_f32" => Intrinsic {
613 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x2, &::F32x2]; &INPUTS },
615 definition: Named("llvm.arm.neon.vmaxf.v2f32")
617 "maxq_s8" => Intrinsic {
618 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
620 definition: Named("llvm.arm.neon.vmaxs.v16i8")
622 "maxq_u8" => Intrinsic {
623 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
625 definition: Named("llvm.arm.neon.vmaxu.v16i8")
627 "maxq_s16" => Intrinsic {
628 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
630 definition: Named("llvm.arm.neon.vmaxs.v8i16")
632 "maxq_u16" => Intrinsic {
633 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
635 definition: Named("llvm.arm.neon.vmaxu.v8i16")
637 "maxq_s32" => Intrinsic {
638 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
640 definition: Named("llvm.arm.neon.vmaxs.v4i32")
642 "maxq_u32" => Intrinsic {
643 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
645 definition: Named("llvm.arm.neon.vmaxu.v4i32")
647 "maxq_f32" => Intrinsic {
648 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x4, &::F32x4]; &INPUTS },
650 definition: Named("llvm.arm.neon.vmaxf.v4f32")
652 "min_s8" => Intrinsic {
653 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
655 definition: Named("llvm.arm.neon.vmins.v8i8")
657 "min_u8" => Intrinsic {
658 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
660 definition: Named("llvm.arm.neon.vminu.v8i8")
662 "min_s16" => Intrinsic {
663 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
665 definition: Named("llvm.arm.neon.vmins.v4i16")
667 "min_u16" => Intrinsic {
668 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
670 definition: Named("llvm.arm.neon.vminu.v4i16")
672 "min_s32" => Intrinsic {
673 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
675 definition: Named("llvm.arm.neon.vmins.v2i32")
677 "min_u32" => Intrinsic {
678 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
680 definition: Named("llvm.arm.neon.vminu.v2i32")
682 "min_f32" => Intrinsic {
683 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x2, &::F32x2]; &INPUTS },
685 definition: Named("llvm.arm.neon.vminf.v2f32")
687 "minq_s8" => Intrinsic {
688 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
690 definition: Named("llvm.arm.neon.vmins.v16i8")
692 "minq_u8" => Intrinsic {
693 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
695 definition: Named("llvm.arm.neon.vminu.v16i8")
697 "minq_s16" => Intrinsic {
698 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
700 definition: Named("llvm.arm.neon.vmins.v8i16")
702 "minq_u16" => Intrinsic {
703 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
705 definition: Named("llvm.arm.neon.vminu.v8i16")
707 "minq_s32" => Intrinsic {
708 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
710 definition: Named("llvm.arm.neon.vmins.v4i32")
712 "minq_u32" => Intrinsic {
713 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
715 definition: Named("llvm.arm.neon.vminu.v4i32")
717 "minq_f32" => Intrinsic {
718 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x4, &::F32x4]; &INPUTS },
720 definition: Named("llvm.arm.neon.vminf.v4f32")
722 "shl_s8" => Intrinsic {
723 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
725 definition: Named("llvm.arm.neon.vshls.v8i8")
727 "shl_u8" => Intrinsic {
728 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::I8x8]; &INPUTS },
730 definition: Named("llvm.arm.neon.vshlu.v8i8")
732 "shl_s16" => Intrinsic {
733 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
735 definition: Named("llvm.arm.neon.vshls.v4i16")
737 "shl_u16" => Intrinsic {
738 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::I16x4]; &INPUTS },
740 definition: Named("llvm.arm.neon.vshlu.v4i16")
742 "shl_s32" => Intrinsic {
743 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
745 definition: Named("llvm.arm.neon.vshls.v2i32")
747 "shl_u32" => Intrinsic {
748 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::I32x2]; &INPUTS },
750 definition: Named("llvm.arm.neon.vshlu.v2i32")
752 "shl_s64" => Intrinsic {
753 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x1, &::I64x1]; &INPUTS },
755 definition: Named("llvm.arm.neon.vshls.v1i64")
757 "shl_u64" => Intrinsic {
758 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::I64x1]; &INPUTS },
760 definition: Named("llvm.arm.neon.vshlu.v1i64")
762 "shlq_s8" => Intrinsic {
763 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
765 definition: Named("llvm.arm.neon.vshls.v16i8")
767 "shlq_u8" => Intrinsic {
768 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::I8x16]; &INPUTS },
770 definition: Named("llvm.arm.neon.vshlu.v16i8")
772 "shlq_s16" => Intrinsic {
773 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
775 definition: Named("llvm.arm.neon.vshls.v8i16")
777 "shlq_u16" => Intrinsic {
778 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::I16x8]; &INPUTS },
780 definition: Named("llvm.arm.neon.vshlu.v8i16")
782 "shlq_s32" => Intrinsic {
783 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
785 definition: Named("llvm.arm.neon.vshls.v4i32")
787 "shlq_u32" => Intrinsic {
788 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::I32x4]; &INPUTS },
790 definition: Named("llvm.arm.neon.vshlu.v4i32")
792 "shlq_s64" => Intrinsic {
793 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
795 definition: Named("llvm.arm.neon.vshls.v2i64")
797 "shlq_u64" => Intrinsic {
798 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::I64x2]; &INPUTS },
800 definition: Named("llvm.arm.neon.vshlu.v2i64")
802 "qshl_s8" => Intrinsic {
803 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
805 definition: Named("llvm.arm.neon.vqshls.v8i8")
807 "qshl_u8" => Intrinsic {
808 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::I8x8]; &INPUTS },
810 definition: Named("llvm.arm.neon.vqshlu.v8i8")
812 "qshl_s16" => Intrinsic {
813 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
815 definition: Named("llvm.arm.neon.vqshls.v4i16")
817 "qshl_u16" => Intrinsic {
818 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::I16x4]; &INPUTS },
820 definition: Named("llvm.arm.neon.vqshlu.v4i16")
822 "qshl_s32" => Intrinsic {
823 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
825 definition: Named("llvm.arm.neon.vqshls.v2i32")
827 "qshl_u32" => Intrinsic {
828 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::I32x2]; &INPUTS },
830 definition: Named("llvm.arm.neon.vqshlu.v2i32")
832 "qshl_s64" => Intrinsic {
833 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x1, &::I64x1]; &INPUTS },
835 definition: Named("llvm.arm.neon.vqshls.v1i64")
837 "qshl_u64" => Intrinsic {
838 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::I64x1]; &INPUTS },
840 definition: Named("llvm.arm.neon.vqshlu.v1i64")
842 "qshlq_s8" => Intrinsic {
843 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
845 definition: Named("llvm.arm.neon.vqshls.v16i8")
847 "qshlq_u8" => Intrinsic {
848 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::I8x16]; &INPUTS },
850 definition: Named("llvm.arm.neon.vqshlu.v16i8")
852 "qshlq_s16" => Intrinsic {
853 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
855 definition: Named("llvm.arm.neon.vqshls.v8i16")
857 "qshlq_u16" => Intrinsic {
858 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::I16x8]; &INPUTS },
860 definition: Named("llvm.arm.neon.vqshlu.v8i16")
862 "qshlq_s32" => Intrinsic {
863 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
865 definition: Named("llvm.arm.neon.vqshls.v4i32")
867 "qshlq_u32" => Intrinsic {
868 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::I32x4]; &INPUTS },
870 definition: Named("llvm.arm.neon.vqshlu.v4i32")
872 "qshlq_s64" => Intrinsic {
873 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
875 definition: Named("llvm.arm.neon.vqshls.v2i64")
877 "qshlq_u64" => Intrinsic {
878 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::I64x2]; &INPUTS },
880 definition: Named("llvm.arm.neon.vqshlu.v2i64")
882 "rshl_s8" => Intrinsic {
883 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
885 definition: Named("llvm.arm.neon.vrshls.v8i8")
887 "rshl_u8" => Intrinsic {
888 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::I8x8]; &INPUTS },
890 definition: Named("llvm.arm.neon.vrshlu.v8i8")
892 "rshl_s16" => Intrinsic {
893 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
895 definition: Named("llvm.arm.neon.vrshls.v4i16")
897 "rshl_u16" => Intrinsic {
898 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::I16x4]; &INPUTS },
900 definition: Named("llvm.arm.neon.vrshlu.v4i16")
902 "rshl_s32" => Intrinsic {
903 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
905 definition: Named("llvm.arm.neon.vrshls.v2i32")
907 "rshl_u32" => Intrinsic {
908 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::I32x2]; &INPUTS },
910 definition: Named("llvm.arm.neon.vrshlu.v2i32")
912 "rshl_s64" => Intrinsic {
913 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x1, &::I64x1]; &INPUTS },
915 definition: Named("llvm.arm.neon.vrshls.v1i64")
917 "rshl_u64" => Intrinsic {
918 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::I64x1]; &INPUTS },
920 definition: Named("llvm.arm.neon.vrshlu.v1i64")
922 "rshlq_s8" => Intrinsic {
923 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
925 definition: Named("llvm.arm.neon.vrshls.v16i8")
927 "rshlq_u8" => Intrinsic {
928 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::I8x16]; &INPUTS },
930 definition: Named("llvm.arm.neon.vrshlu.v16i8")
932 "rshlq_s16" => Intrinsic {
933 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
935 definition: Named("llvm.arm.neon.vrshls.v8i16")
937 "rshlq_u16" => Intrinsic {
938 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::I16x8]; &INPUTS },
940 definition: Named("llvm.arm.neon.vrshlu.v8i16")
942 "rshlq_s32" => Intrinsic {
943 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
945 definition: Named("llvm.arm.neon.vrshls.v4i32")
947 "rshlq_u32" => Intrinsic {
948 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::I32x4]; &INPUTS },
950 definition: Named("llvm.arm.neon.vrshlu.v4i32")
952 "rshlq_s64" => Intrinsic {
953 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
955 definition: Named("llvm.arm.neon.vrshls.v2i64")
957 "rshlq_u64" => Intrinsic {
958 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::I64x2]; &INPUTS },
960 definition: Named("llvm.arm.neon.vrshlu.v2i64")
962 "qrshl_s8" => Intrinsic {
963 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
965 definition: Named("llvm.arm.neon.vqrshls.v8i8")
967 "qrshl_u8" => Intrinsic {
968 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::I8x8]; &INPUTS },
970 definition: Named("llvm.arm.neon.vqrshlu.v8i8")
972 "qrshl_s16" => Intrinsic {
973 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
975 definition: Named("llvm.arm.neon.vqrshls.v4i16")
977 "qrshl_u16" => Intrinsic {
978 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::I16x4]; &INPUTS },
980 definition: Named("llvm.arm.neon.vqrshlu.v4i16")
982 "qrshl_s32" => Intrinsic {
983 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
985 definition: Named("llvm.arm.neon.vqrshls.v2i32")
987 "qrshl_u32" => Intrinsic {
988 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::I32x2]; &INPUTS },
990 definition: Named("llvm.arm.neon.vqrshlu.v2i32")
992 "qrshl_s64" => Intrinsic {
993 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x1, &::I64x1]; &INPUTS },
995 definition: Named("llvm.arm.neon.vqrshls.v1i64")
997 "qrshl_u64" => Intrinsic {
998 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::I64x1]; &INPUTS },
1000 definition: Named("llvm.arm.neon.vqrshlu.v1i64")
1002 "qrshlq_s8" => Intrinsic {
1003 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
1005 definition: Named("llvm.arm.neon.vqrshls.v16i8")
1007 "qrshlq_u8" => Intrinsic {
1008 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::I8x16]; &INPUTS },
1010 definition: Named("llvm.arm.neon.vqrshlu.v16i8")
1012 "qrshlq_s16" => Intrinsic {
1013 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
1015 definition: Named("llvm.arm.neon.vqrshls.v8i16")
1017 "qrshlq_u16" => Intrinsic {
1018 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::I16x8]; &INPUTS },
1020 definition: Named("llvm.arm.neon.vqrshlu.v8i16")
1022 "qrshlq_s32" => Intrinsic {
1023 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
1025 definition: Named("llvm.arm.neon.vqrshls.v4i32")
1027 "qrshlq_u32" => Intrinsic {
1028 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::I32x4]; &INPUTS },
1030 definition: Named("llvm.arm.neon.vqrshlu.v4i32")
1032 "qrshlq_s64" => Intrinsic {
1033 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
1035 definition: Named("llvm.arm.neon.vqrshls.v2i64")
1037 "qrshlq_u64" => Intrinsic {
1038 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::I64x2]; &INPUTS },
1040 definition: Named("llvm.arm.neon.vqrshlu.v2i64")
1042 "qshrun_n_s16" => Intrinsic {
1043 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::U32]; &INPUTS },
1045 definition: Named("llvm.arm.neon.vsqshrun.v8i8")
1047 "qshrun_n_s32" => Intrinsic {
1048 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::U32]; &INPUTS },
1050 definition: Named("llvm.arm.neon.vsqshrun.v4i16")
1052 "qshrun_n_s64" => Intrinsic {
1053 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::U32]; &INPUTS },
1055 definition: Named("llvm.arm.neon.vsqshrun.v2i32")
1057 "qrshrun_n_s16" => Intrinsic {
1058 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::U32]; &INPUTS },
1060 definition: Named("llvm.arm.neon.vsqrshrun.v8i8")
1062 "qrshrun_n_s32" => Intrinsic {
1063 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::U32]; &INPUTS },
1065 definition: Named("llvm.arm.neon.vsqrshrun.v4i16")
1067 "qrshrun_n_s64" => Intrinsic {
1068 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::U32]; &INPUTS },
1070 definition: Named("llvm.arm.neon.vsqrshrun.v2i32")
1072 "qshrn_n_s16" => Intrinsic {
1073 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::U32]; &INPUTS },
1075 definition: Named("llvm.arm.neon.vqshrns.v8i8")
1077 "qshrn_n_u16" => Intrinsic {
1078 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U32]; &INPUTS },
1080 definition: Named("llvm.arm.neon.vqshrnu.v8i8")
1082 "qshrn_n_s32" => Intrinsic {
1083 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::U32]; &INPUTS },
1085 definition: Named("llvm.arm.neon.vqshrns.v4i16")
1087 "qshrn_n_u32" => Intrinsic {
1088 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32]; &INPUTS },
1090 definition: Named("llvm.arm.neon.vqshrnu.v4i16")
1092 "qshrn_n_s64" => Intrinsic {
1093 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::U32]; &INPUTS },
1095 definition: Named("llvm.arm.neon.vqshrns.v2i32")
1097 "qshrn_n_u64" => Intrinsic {
1098 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U32]; &INPUTS },
1100 definition: Named("llvm.arm.neon.vqshrnu.v2i32")
1102 "rshrn_n_s16" => Intrinsic {
1103 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::U32]; &INPUTS },
1105 definition: Named("llvm.arm.neon.vrshrn.v8i8")
1107 "rshrn_n_u16" => Intrinsic {
1108 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U32]; &INPUTS },
1110 definition: Named("llvm.arm.neon.vrshrn.v8i8")
1112 "rshrn_n_s32" => Intrinsic {
1113 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::U32]; &INPUTS },
1115 definition: Named("llvm.arm.neon.vrshrn.v4i16")
1117 "rshrn_n_u32" => Intrinsic {
1118 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32]; &INPUTS },
1120 definition: Named("llvm.arm.neon.vrshrn.v4i16")
1122 "rshrn_n_s64" => Intrinsic {
1123 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::U32]; &INPUTS },
1125 definition: Named("llvm.arm.neon.vrshrn.v2i32")
1127 "rshrn_n_u64" => Intrinsic {
1128 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U32]; &INPUTS },
1130 definition: Named("llvm.arm.neon.vrshrn.v2i32")
1132 "qrshrn_n_s16" => Intrinsic {
1133 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::U32]; &INPUTS },
1135 definition: Named("llvm.arm.neon.vqrshrns.v8i8")
1137 "qrshrn_n_u16" => Intrinsic {
1138 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U32]; &INPUTS },
1140 definition: Named("llvm.arm.neon.vqrshrnu.v8i8")
1142 "qrshrn_n_s32" => Intrinsic {
1143 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::U32]; &INPUTS },
1145 definition: Named("llvm.arm.neon.vqrshrns.v4i16")
1147 "qrshrn_n_u32" => Intrinsic {
1148 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32]; &INPUTS },
1150 definition: Named("llvm.arm.neon.vqrshrnu.v4i16")
1152 "qrshrn_n_s64" => Intrinsic {
1153 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::U32]; &INPUTS },
1155 definition: Named("llvm.arm.neon.vqrshrns.v2i32")
1157 "qrshrn_n_u64" => Intrinsic {
1158 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U32]; &INPUTS },
1160 definition: Named("llvm.arm.neon.vqrshrnu.v2i32")
1162 "sri_s8" => Intrinsic {
1163 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
1165 definition: Named("llvm.arm.neon.vvsri.v8i8")
1167 "sri_u8" => Intrinsic {
1168 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
1170 definition: Named("llvm.arm.neon.vvsri.v8i8")
1172 "sri_s16" => Intrinsic {
1173 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
1175 definition: Named("llvm.arm.neon.vvsri.v4i16")
1177 "sri_u16" => Intrinsic {
1178 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
1180 definition: Named("llvm.arm.neon.vvsri.v4i16")
1182 "sri_s32" => Intrinsic {
1183 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
1185 definition: Named("llvm.arm.neon.vvsri.v2i32")
1187 "sri_u32" => Intrinsic {
1188 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
1190 definition: Named("llvm.arm.neon.vvsri.v2i32")
1192 "sri_s64" => Intrinsic {
1193 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x1, &::I64x1]; &INPUTS },
1195 definition: Named("llvm.arm.neon.vvsri.v1i64")
1197 "sri_u64" => Intrinsic {
1198 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::U64x1]; &INPUTS },
1200 definition: Named("llvm.arm.neon.vvsri.v1i64")
1202 "sriq_s8" => Intrinsic {
1203 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
1205 definition: Named("llvm.arm.neon.vvsri.v16i8")
1207 "sriq_u8" => Intrinsic {
1208 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
1210 definition: Named("llvm.arm.neon.vvsri.v16i8")
1212 "sriq_s16" => Intrinsic {
1213 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
1215 definition: Named("llvm.arm.neon.vvsri.v8i16")
1217 "sriq_u16" => Intrinsic {
1218 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
1220 definition: Named("llvm.arm.neon.vvsri.v8i16")
1222 "sriq_s32" => Intrinsic {
1223 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
1225 definition: Named("llvm.arm.neon.vvsri.v4i32")
1227 "sriq_u32" => Intrinsic {
1228 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
1230 definition: Named("llvm.arm.neon.vvsri.v4i32")
1232 "sriq_s64" => Intrinsic {
1233 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
1235 definition: Named("llvm.arm.neon.vvsri.v2i64")
1237 "sriq_u64" => Intrinsic {
1238 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U64x2]; &INPUTS },
1240 definition: Named("llvm.arm.neon.vvsri.v2i64")
1242 "sli_s8" => Intrinsic {
1243 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
1245 definition: Named("llvm.arm.neon.vvsli.v8i8")
1247 "sli_u8" => Intrinsic {
1248 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
1250 definition: Named("llvm.arm.neon.vvsli.v8i8")
1252 "sli_s16" => Intrinsic {
1253 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
1255 definition: Named("llvm.arm.neon.vvsli.v4i16")
1257 "sli_u16" => Intrinsic {
1258 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
1260 definition: Named("llvm.arm.neon.vvsli.v4i16")
1262 "sli_s32" => Intrinsic {
1263 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
1265 definition: Named("llvm.arm.neon.vvsli.v2i32")
1267 "sli_u32" => Intrinsic {
1268 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
1270 definition: Named("llvm.arm.neon.vvsli.v2i32")
1272 "sli_s64" => Intrinsic {
1273 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x1, &::I64x1]; &INPUTS },
1275 definition: Named("llvm.arm.neon.vvsli.v1i64")
1277 "sli_u64" => Intrinsic {
1278 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::U64x1]; &INPUTS },
1280 definition: Named("llvm.arm.neon.vvsli.v1i64")
1282 "sliq_s8" => Intrinsic {
1283 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
1285 definition: Named("llvm.arm.neon.vvsli.v16i8")
1287 "sliq_u8" => Intrinsic {
1288 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
1290 definition: Named("llvm.arm.neon.vvsli.v16i8")
1292 "sliq_s16" => Intrinsic {
1293 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
1295 definition: Named("llvm.arm.neon.vvsli.v8i16")
1297 "sliq_u16" => Intrinsic {
1298 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
1300 definition: Named("llvm.arm.neon.vvsli.v8i16")
1302 "sliq_s32" => Intrinsic {
1303 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
1305 definition: Named("llvm.arm.neon.vvsli.v4i32")
1307 "sliq_u32" => Intrinsic {
1308 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
1310 definition: Named("llvm.arm.neon.vvsli.v4i32")
1312 "sliq_s64" => Intrinsic {
1313 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I64x2]; &INPUTS },
1315 definition: Named("llvm.arm.neon.vvsli.v2i64")
1317 "sliq_u64" => Intrinsic {
1318 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U64x2]; &INPUTS },
1320 definition: Named("llvm.arm.neon.vvsli.v2i64")
1322 "vqmovn_s16" => Intrinsic {
1323 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x8]; &INPUTS },
1325 definition: Named("llvm.arm.neon.vqxtns.v8i8")
1327 "vqmovn_u16" => Intrinsic {
1328 inputs: { static INPUTS: [&'static Type; 1] = [&::U16x8]; &INPUTS },
1330 definition: Named("llvm.arm.neon.vqxtnu.v8i8")
1332 "vqmovn_s32" => Intrinsic {
1333 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x4]; &INPUTS },
1335 definition: Named("llvm.arm.neon.vqxtns.v4i16")
1337 "vqmovn_u32" => Intrinsic {
1338 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x4]; &INPUTS },
1340 definition: Named("llvm.arm.neon.vqxtnu.v4i16")
1342 "vqmovn_s64" => Intrinsic {
1343 inputs: { static INPUTS: [&'static Type; 1] = [&::I64x2]; &INPUTS },
1345 definition: Named("llvm.arm.neon.vqxtns.v2i32")
1347 "vqmovn_u64" => Intrinsic {
1348 inputs: { static INPUTS: [&'static Type; 1] = [&::U64x2]; &INPUTS },
1350 definition: Named("llvm.arm.neon.vqxtnu.v2i32")
1352 "abs_s8" => Intrinsic {
1353 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x8]; &INPUTS },
1355 definition: Named("llvm.arm.neon.vabs.v8i8")
1357 "abs_s16" => Intrinsic {
1358 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x4]; &INPUTS },
1360 definition: Named("llvm.arm.neon.vabs.v4i16")
1362 "abs_s32" => Intrinsic {
1363 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x2]; &INPUTS },
1365 definition: Named("llvm.arm.neon.vabs.v2i32")
1367 "absq_s8" => Intrinsic {
1368 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x16]; &INPUTS },
1370 definition: Named("llvm.arm.neon.vabs.v16i8")
1372 "absq_s16" => Intrinsic {
1373 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x8]; &INPUTS },
1375 definition: Named("llvm.arm.neon.vabs.v8i16")
1377 "absq_s32" => Intrinsic {
1378 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x4]; &INPUTS },
1380 definition: Named("llvm.arm.neon.vabs.v4i32")
1382 "abs_f32" => Intrinsic {
1383 inputs: { static INPUTS: [&'static Type; 1] = [&::F32x2]; &INPUTS },
1385 definition: Named("llvm.fabs.v2f32")
1387 "absq_f32" => Intrinsic {
1388 inputs: { static INPUTS: [&'static Type; 1] = [&::F32x4]; &INPUTS },
1390 definition: Named("llvm.fabs.v4f32")
1392 "qabs_s8" => Intrinsic {
1393 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x8]; &INPUTS },
1395 definition: Named("llvm.arm.neon.vsqabs.v8i8")
1397 "qabs_s16" => Intrinsic {
1398 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x4]; &INPUTS },
1400 definition: Named("llvm.arm.neon.vsqabs.v4i16")
1402 "qabs_s32" => Intrinsic {
1403 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x2]; &INPUTS },
1405 definition: Named("llvm.arm.neon.vsqabs.v2i32")
1407 "qabsq_s8" => Intrinsic {
1408 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x16]; &INPUTS },
1410 definition: Named("llvm.arm.neon.vsqabs.v16i8")
1412 "qabsq_s16" => Intrinsic {
1413 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x8]; &INPUTS },
1415 definition: Named("llvm.arm.neon.vsqabs.v8i16")
1417 "qabsq_s32" => Intrinsic {
1418 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x4]; &INPUTS },
1420 definition: Named("llvm.arm.neon.vsqabs.v4i32")
1422 "qneg_s8" => Intrinsic {
1423 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x8]; &INPUTS },
1425 definition: Named("llvm.arm.neon.vsqneg.v8i8")
1427 "qneg_s16" => Intrinsic {
1428 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x4]; &INPUTS },
1430 definition: Named("llvm.arm.neon.vsqneg.v4i16")
1432 "qneg_s32" => Intrinsic {
1433 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x2]; &INPUTS },
1435 definition: Named("llvm.arm.neon.vsqneg.v2i32")
1437 "qnegq_s8" => Intrinsic {
1438 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x16]; &INPUTS },
1440 definition: Named("llvm.arm.neon.vsqneg.v16i8")
1442 "qnegq_s16" => Intrinsic {
1443 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x8]; &INPUTS },
1445 definition: Named("llvm.arm.neon.vsqneg.v8i16")
1447 "qnegq_s32" => Intrinsic {
1448 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x4]; &INPUTS },
1450 definition: Named("llvm.arm.neon.vsqneg.v4i32")
1452 "clz_s8" => Intrinsic {
1453 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x8]; &INPUTS },
1455 definition: Named("llvm.ctlz.v8i8")
1457 "clz_u8" => Intrinsic {
1458 inputs: { static INPUTS: [&'static Type; 1] = [&::U8x8]; &INPUTS },
1460 definition: Named("llvm.ctlz.v8i8")
1462 "clz_s16" => Intrinsic {
1463 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x4]; &INPUTS },
1465 definition: Named("llvm.ctlz.v4i16")
1467 "clz_u16" => Intrinsic {
1468 inputs: { static INPUTS: [&'static Type; 1] = [&::U16x4]; &INPUTS },
1470 definition: Named("llvm.ctlz.v4i16")
1472 "clz_s32" => Intrinsic {
1473 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x2]; &INPUTS },
1475 definition: Named("llvm.ctlz.v2i32")
1477 "clz_u32" => Intrinsic {
1478 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x2]; &INPUTS },
1480 definition: Named("llvm.ctlz.v2i32")
1482 "clzq_s8" => Intrinsic {
1483 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x16]; &INPUTS },
1485 definition: Named("llvm.ctlz.v16i8")
1487 "clzq_u8" => Intrinsic {
1488 inputs: { static INPUTS: [&'static Type; 1] = [&::U8x16]; &INPUTS },
1490 definition: Named("llvm.ctlz.v16i8")
1492 "clzq_s16" => Intrinsic {
1493 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x8]; &INPUTS },
1495 definition: Named("llvm.ctlz.v8i16")
1497 "clzq_u16" => Intrinsic {
1498 inputs: { static INPUTS: [&'static Type; 1] = [&::U16x8]; &INPUTS },
1500 definition: Named("llvm.ctlz.v8i16")
1502 "clzq_s32" => Intrinsic {
1503 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x4]; &INPUTS },
1505 definition: Named("llvm.ctlz.v4i32")
1507 "clzq_u32" => Intrinsic {
1508 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x4]; &INPUTS },
1510 definition: Named("llvm.ctlz.v4i32")
1512 "cls_s8" => Intrinsic {
1513 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x8]; &INPUTS },
1515 definition: Named("llvm.arm.neon.vcls.v8i8")
1517 "cls_u8" => Intrinsic {
1518 inputs: { static INPUTS: [&'static Type; 1] = [&::U8x8]; &INPUTS },
1520 definition: Named("llvm.arm.neon.vcls.v8i8")
1522 "cls_s16" => Intrinsic {
1523 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x4]; &INPUTS },
1525 definition: Named("llvm.arm.neon.vcls.v4i16")
1527 "cls_u16" => Intrinsic {
1528 inputs: { static INPUTS: [&'static Type; 1] = [&::U16x4]; &INPUTS },
1530 definition: Named("llvm.arm.neon.vcls.v4i16")
1532 "cls_s32" => Intrinsic {
1533 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x2]; &INPUTS },
1535 definition: Named("llvm.arm.neon.vcls.v2i32")
1537 "cls_u32" => Intrinsic {
1538 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x2]; &INPUTS },
1540 definition: Named("llvm.arm.neon.vcls.v2i32")
1542 "clsq_s8" => Intrinsic {
1543 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x16]; &INPUTS },
1545 definition: Named("llvm.arm.neon.vcls.v16i8")
1547 "clsq_u8" => Intrinsic {
1548 inputs: { static INPUTS: [&'static Type; 1] = [&::U8x16]; &INPUTS },
1550 definition: Named("llvm.arm.neon.vcls.v16i8")
1552 "clsq_s16" => Intrinsic {
1553 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x8]; &INPUTS },
1555 definition: Named("llvm.arm.neon.vcls.v8i16")
1557 "clsq_u16" => Intrinsic {
1558 inputs: { static INPUTS: [&'static Type; 1] = [&::U16x8]; &INPUTS },
1560 definition: Named("llvm.arm.neon.vcls.v8i16")
1562 "clsq_s32" => Intrinsic {
1563 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x4]; &INPUTS },
1565 definition: Named("llvm.arm.neon.vcls.v4i32")
1567 "clsq_u32" => Intrinsic {
1568 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x4]; &INPUTS },
1570 definition: Named("llvm.arm.neon.vcls.v4i32")
1572 "cnt_s8" => Intrinsic {
1573 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x8]; &INPUTS },
1575 definition: Named("llvm.ctpop.v8i8")
1577 "cnt_u8" => Intrinsic {
1578 inputs: { static INPUTS: [&'static Type; 1] = [&::U8x8]; &INPUTS },
1580 definition: Named("llvm.ctpop.v8i8")
1582 "cntq_s8" => Intrinsic {
1583 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x16]; &INPUTS },
1585 definition: Named("llvm.ctpop.v16i8")
1587 "cntq_u8" => Intrinsic {
1588 inputs: { static INPUTS: [&'static Type; 1] = [&::U8x16]; &INPUTS },
1590 definition: Named("llvm.ctpop.v16i8")
1592 "recpe_u32" => Intrinsic {
1593 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x2]; &INPUTS },
1595 definition: Named("llvm.arm.neon.vrecpe.v2i32")
1597 "recpe_f32" => Intrinsic {
1598 inputs: { static INPUTS: [&'static Type; 1] = [&::F32x2]; &INPUTS },
1600 definition: Named("llvm.arm.neon.vrecpe.v2f32")
1602 "recpeq_u32" => Intrinsic {
1603 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x4]; &INPUTS },
1605 definition: Named("llvm.arm.neon.vrecpe.v4i32")
1607 "recpeq_f32" => Intrinsic {
1608 inputs: { static INPUTS: [&'static Type; 1] = [&::F32x4]; &INPUTS },
1610 definition: Named("llvm.arm.neon.vrecpe.v4f32")
1612 "recps_f32" => Intrinsic {
1613 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x2, &::F32x2]; &INPUTS },
1615 definition: Named("llvm.arm.neon.vfrecps.v2f32")
1617 "recpsq_f32" => Intrinsic {
1618 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x4, &::F32x4]; &INPUTS },
1620 definition: Named("llvm.arm.neon.vfrecps.v4f32")
1622 "sqrt_f32" => Intrinsic {
1623 inputs: { static INPUTS: [&'static Type; 1] = [&::F32x2]; &INPUTS },
1625 definition: Named("llvm.sqrt.v2f32")
1627 "sqrtq_f32" => Intrinsic {
1628 inputs: { static INPUTS: [&'static Type; 1] = [&::F32x4]; &INPUTS },
1630 definition: Named("llvm.sqrt.v4f32")
1632 "rsqrte_u32" => Intrinsic {
1633 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x2]; &INPUTS },
1635 definition: Named("llvm.arm.neon.vrsqrte.v2i32")
1637 "rsqrte_f32" => Intrinsic {
1638 inputs: { static INPUTS: [&'static Type; 1] = [&::F32x2]; &INPUTS },
1640 definition: Named("llvm.arm.neon.vrsqrte.v2f32")
1642 "rsqrteq_u32" => Intrinsic {
1643 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x4]; &INPUTS },
1645 definition: Named("llvm.arm.neon.vrsqrte.v4i32")
1647 "rsqrteq_f32" => Intrinsic {
1648 inputs: { static INPUTS: [&'static Type; 1] = [&::F32x4]; &INPUTS },
1650 definition: Named("llvm.arm.neon.vrsqrte.v4f32")
1652 "rsqrts_f32" => Intrinsic {
1653 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x2, &::F32x2]; &INPUTS },
1655 definition: Named("llvm.arm.neon.vrsqrts.v2f32")
1657 "rsqrtsq_f32" => Intrinsic {
1658 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x4, &::F32x4]; &INPUTS },
1660 definition: Named("llvm.arm.neon.vrsqrts.v4f32")
1662 "bsl_s8" => Intrinsic {
1663 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::I8x8]; &INPUTS },
1665 definition: Named("llvm.arm.neon.vbsl.v8i8")
1667 "bsl_u8" => Intrinsic {
1668 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
1670 definition: Named("llvm.arm.neon.vbsl.v8i8")
1672 "bsl_s16" => Intrinsic {
1673 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::I16x4]; &INPUTS },
1675 definition: Named("llvm.arm.neon.vbsl.v4i16")
1677 "bsl_u16" => Intrinsic {
1678 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
1680 definition: Named("llvm.arm.neon.vbsl.v4i16")
1682 "bsl_s32" => Intrinsic {
1683 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::I32x2]; &INPUTS },
1685 definition: Named("llvm.arm.neon.vbsl.v2i32")
1687 "bsl_u32" => Intrinsic {
1688 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
1690 definition: Named("llvm.arm.neon.vbsl.v2i32")
1692 "bsl_s64" => Intrinsic {
1693 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::I64x1]; &INPUTS },
1695 definition: Named("llvm.arm.neon.vbsl.v1i64")
1697 "bsl_u64" => Intrinsic {
1698 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::U64x1]; &INPUTS },
1700 definition: Named("llvm.arm.neon.vbsl.v1i64")
1702 "bslq_s8" => Intrinsic {
1703 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::I8x16]; &INPUTS },
1705 definition: Named("llvm.arm.neon.vbsl.v16i8")
1707 "bslq_u8" => Intrinsic {
1708 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
1710 definition: Named("llvm.arm.neon.vbsl.v16i8")
1712 "bslq_s16" => Intrinsic {
1713 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::I16x8]; &INPUTS },
1715 definition: Named("llvm.arm.neon.vbsl.v8i16")
1717 "bslq_u16" => Intrinsic {
1718 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
1720 definition: Named("llvm.arm.neon.vbsl.v8i16")
1722 "bslq_s32" => Intrinsic {
1723 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::I32x4]; &INPUTS },
1725 definition: Named("llvm.arm.neon.vbsl.v4i32")
1727 "bslq_u32" => Intrinsic {
1728 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
1730 definition: Named("llvm.arm.neon.vbsl.v4i32")
1732 "bslq_s64" => Intrinsic {
1733 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::I64x2]; &INPUTS },
1735 definition: Named("llvm.arm.neon.vbsl.v2i64")
1737 "bslq_u64" => Intrinsic {
1738 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U64x2]; &INPUTS },
1740 definition: Named("llvm.arm.neon.vbsl.v2i64")
1742 "padd_s8" => Intrinsic {
1743 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
1745 definition: Named("llvm.arm.neon.vpadd.v8i8")
1747 "padd_u8" => Intrinsic {
1748 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
1750 definition: Named("llvm.arm.neon.vpadd.v8i8")
1752 "padd_s16" => Intrinsic {
1753 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
1755 definition: Named("llvm.arm.neon.vpadd.v4i16")
1757 "padd_u16" => Intrinsic {
1758 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
1760 definition: Named("llvm.arm.neon.vpadd.v4i16")
1762 "padd_s32" => Intrinsic {
1763 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
1765 definition: Named("llvm.arm.neon.vpadd.v2i32")
1767 "padd_u32" => Intrinsic {
1768 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
1770 definition: Named("llvm.arm.neon.vpadd.v2i32")
1772 "padd_f32" => Intrinsic {
1773 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x2, &::F32x2]; &INPUTS },
1775 definition: Named("llvm.arm.neon.vpadd.v2f32")
1777 "paddl_s16" => Intrinsic {
1778 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x8]; &INPUTS },
1780 definition: Named("llvm.arm.neon.vpaddls.v4i16.v8i8")
1782 "paddl_u16" => Intrinsic {
1783 inputs: { static INPUTS: [&'static Type; 1] = [&::U8x8]; &INPUTS },
1785 definition: Named("llvm.arm.neon.vpaddlu.v4i16.v8i8")
1787 "paddl_s32" => Intrinsic {
1788 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x4]; &INPUTS },
1790 definition: Named("llvm.arm.neon.vpaddls.v2i32.v4i16")
1792 "paddl_u32" => Intrinsic {
1793 inputs: { static INPUTS: [&'static Type; 1] = [&::U16x4]; &INPUTS },
1795 definition: Named("llvm.arm.neon.vpaddlu.v2i32.v4i16")
1797 "paddl_s64" => Intrinsic {
1798 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x2]; &INPUTS },
1800 definition: Named("llvm.arm.neon.vpaddls.v1i64.v2i32")
1802 "paddl_u64" => Intrinsic {
1803 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x2]; &INPUTS },
1805 definition: Named("llvm.arm.neon.vpaddlu.v1i64.v2i32")
1807 "paddlq_s16" => Intrinsic {
1808 inputs: { static INPUTS: [&'static Type; 1] = [&::I8x16]; &INPUTS },
1810 definition: Named("llvm.arm.neon.vpaddls.v8i16.v16i8")
1812 "paddlq_u16" => Intrinsic {
1813 inputs: { static INPUTS: [&'static Type; 1] = [&::U8x16]; &INPUTS },
1815 definition: Named("llvm.arm.neon.vpaddlu.v8i16.v16i8")
1817 "paddlq_s32" => Intrinsic {
1818 inputs: { static INPUTS: [&'static Type; 1] = [&::I16x8]; &INPUTS },
1820 definition: Named("llvm.arm.neon.vpaddls.v4i32.v8i16")
1822 "paddlq_u32" => Intrinsic {
1823 inputs: { static INPUTS: [&'static Type; 1] = [&::U16x8]; &INPUTS },
1825 definition: Named("llvm.arm.neon.vpaddlu.v4i32.v8i16")
1827 "paddlq_s64" => Intrinsic {
1828 inputs: { static INPUTS: [&'static Type; 1] = [&::I32x4]; &INPUTS },
1830 definition: Named("llvm.arm.neon.vpaddls.v2i64.v4i32")
1832 "paddlq_u64" => Intrinsic {
1833 inputs: { static INPUTS: [&'static Type; 1] = [&::U32x4]; &INPUTS },
1835 definition: Named("llvm.arm.neon.vpaddlu.v2i64.v4i32")
1837 "padal_s16" => Intrinsic {
1838 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I8x8]; &INPUTS },
1840 definition: Named("llvm.arm.neon.vpadals.v4i16.v4i16")
1842 "padal_u16" => Intrinsic {
1843 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U8x8]; &INPUTS },
1845 definition: Named("llvm.arm.neon.vpadalu.v4i16.v4i16")
1847 "padal_s32" => Intrinsic {
1848 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I16x4]; &INPUTS },
1850 definition: Named("llvm.arm.neon.vpadals.v2i32.v2i32")
1852 "padal_u32" => Intrinsic {
1853 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U16x4]; &INPUTS },
1855 definition: Named("llvm.arm.neon.vpadalu.v2i32.v2i32")
1857 "padal_s64" => Intrinsic {
1858 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x1, &::I32x2]; &INPUTS },
1860 definition: Named("llvm.arm.neon.vpadals.v1i64.v1i64")
1862 "padal_u64" => Intrinsic {
1863 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x1, &::U32x2]; &INPUTS },
1865 definition: Named("llvm.arm.neon.vpadalu.v1i64.v1i64")
1867 "padalq_s16" => Intrinsic {
1868 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I8x16]; &INPUTS },
1870 definition: Named("llvm.arm.neon.vpadals.v8i16.v8i16")
1872 "padalq_u16" => Intrinsic {
1873 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U8x16]; &INPUTS },
1875 definition: Named("llvm.arm.neon.vpadalu.v8i16.v8i16")
1877 "padalq_s32" => Intrinsic {
1878 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I16x8]; &INPUTS },
1880 definition: Named("llvm.arm.neon.vpadals.v4i32.v4i32")
1882 "padalq_u32" => Intrinsic {
1883 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U16x8]; &INPUTS },
1885 definition: Named("llvm.arm.neon.vpadalu.v4i32.v4i32")
1887 "padalq_s64" => Intrinsic {
1888 inputs: { static INPUTS: [&'static Type; 2] = [&::I64x2, &::I32x4]; &INPUTS },
1890 definition: Named("llvm.arm.neon.vpadals.v2i64.v2i64")
1892 "padalq_u64" => Intrinsic {
1893 inputs: { static INPUTS: [&'static Type; 2] = [&::U64x2, &::U32x4]; &INPUTS },
1895 definition: Named("llvm.arm.neon.vpadalu.v2i64.v2i64")
1897 "pmax_s8" => Intrinsic {
1898 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
1900 definition: Named("llvm.arm.neon.vpmaxs.v8i8")
1902 "pmax_u8" => Intrinsic {
1903 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
1905 definition: Named("llvm.arm.neon.vpmaxu.v8i8")
1907 "pmax_s16" => Intrinsic {
1908 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
1910 definition: Named("llvm.arm.neon.vpmaxs.v4i16")
1912 "pmax_u16" => Intrinsic {
1913 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
1915 definition: Named("llvm.arm.neon.vpmaxu.v4i16")
1917 "pmax_s32" => Intrinsic {
1918 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
1920 definition: Named("llvm.arm.neon.vpmaxs.v2i32")
1922 "pmax_u32" => Intrinsic {
1923 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
1925 definition: Named("llvm.arm.neon.vpmaxu.v2i32")
1927 "pmax_f32" => Intrinsic {
1928 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x2, &::F32x2]; &INPUTS },
1930 definition: Named("llvm.arm.neon.vpmaxf.v2f32")
1932 "pmin_s8" => Intrinsic {
1933 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &INPUTS },
1935 definition: Named("llvm.arm.neon.vpmins.v8i8")
1937 "pmin_u8" => Intrinsic {
1938 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
1940 definition: Named("llvm.arm.neon.vpminu.v8i8")
1942 "pmin_s16" => Intrinsic {
1943 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x4, &::I16x4]; &INPUTS },
1945 definition: Named("llvm.arm.neon.vpmins.v4i16")
1947 "pmin_u16" => Intrinsic {
1948 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x4, &::U16x4]; &INPUTS },
1950 definition: Named("llvm.arm.neon.vpminu.v4i16")
1952 "pmin_s32" => Intrinsic {
1953 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x2, &::I32x2]; &INPUTS },
1955 definition: Named("llvm.arm.neon.vpmins.v2i32")
1957 "pmin_u32" => Intrinsic {
1958 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x2, &::U32x2]; &INPUTS },
1960 definition: Named("llvm.arm.neon.vpminu.v2i32")
1962 "pmin_f32" => Intrinsic {
1963 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x2, &::F32x2]; &INPUTS },
1965 definition: Named("llvm.arm.neon.vpminf.v2f32")
1967 "pminq_s8" => Intrinsic {
1968 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x16, &::I8x16]; &INPUTS },
1970 definition: Named("llvm.arm.neon.vpmins.v16i8")
1972 "pminq_u8" => Intrinsic {
1973 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x16, &::U8x16]; &INPUTS },
1975 definition: Named("llvm.arm.neon.vpminu.v16i8")
1977 "pminq_s16" => Intrinsic {
1978 inputs: { static INPUTS: [&'static Type; 2] = [&::I16x8, &::I16x8]; &INPUTS },
1980 definition: Named("llvm.arm.neon.vpmins.v8i16")
1982 "pminq_u16" => Intrinsic {
1983 inputs: { static INPUTS: [&'static Type; 2] = [&::U16x8, &::U16x8]; &INPUTS },
1985 definition: Named("llvm.arm.neon.vpminu.v8i16")
1987 "pminq_s32" => Intrinsic {
1988 inputs: { static INPUTS: [&'static Type; 2] = [&::I32x4, &::I32x4]; &INPUTS },
1990 definition: Named("llvm.arm.neon.vpmins.v4i32")
1992 "pminq_u32" => Intrinsic {
1993 inputs: { static INPUTS: [&'static Type; 2] = [&::U32x4, &::U32x4]; &INPUTS },
1995 definition: Named("llvm.arm.neon.vpminu.v4i32")
1997 "pminq_f32" => Intrinsic {
1998 inputs: { static INPUTS: [&'static Type; 2] = [&::F32x4, &::F32x4]; &INPUTS },
2000 definition: Named("llvm.arm.neon.vpminf.v4f32")
2002 "tbl1_s8" => Intrinsic {
2003 inputs: { static INPUTS: [&'static Type; 2] = [&::I8x8, &::U8x8]; &INPUTS },
2005 definition: Named("llvm.arm.neon.vtbl1")
2007 "tbl1_u8" => Intrinsic {
2008 inputs: { static INPUTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &INPUTS },
2010 definition: Named("llvm.arm.neon.vtbl1")
2012 "tbx1_s8" => Intrinsic {
2013 inputs: { static INPUTS: [&'static Type; 3] = [&::I8x8, &::I8x8, &::U8x8]; &INPUTS },
2015 definition: Named("llvm.arm.neon.vtbx1")
2017 "tbx1_u8" => Intrinsic {
2018 inputs: { static INPUTS: [&'static Type; 3] = [&::U8x8, &::U8x8, &::U8x8]; &INPUTS },
2020 definition: Named("llvm.arm.neon.vtbx1")
2022 "tbl2_s8" => Intrinsic {
2023 inputs: { static INPUTS: [&'static Type; 2] = [{ static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2025 definition: Named("llvm.arm.neon.vtbl2")
2027 "tbl2_u8" => Intrinsic {
2028 inputs: { static INPUTS: [&'static Type; 2] = [{ static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2030 definition: Named("llvm.arm.neon.vtbl2")
2032 "tbx2_s8" => Intrinsic {
2033 inputs: { static INPUTS: [&'static Type; 2] = [{ static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 2] = [&::I8x8, &::I8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2035 definition: Named("llvm.arm.neon.vtbx2")
2037 "tbx2_u8" => Intrinsic {
2038 inputs: { static INPUTS: [&'static Type; 2] = [{ static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 2] = [&::U8x8, &::U8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2040 definition: Named("llvm.arm.neon.vtbx2")
2042 "tbl3_s8" => Intrinsic {
2043 inputs: { static INPUTS: [&'static Type; 2] = [{ static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 3] = [&::I8x8, &::I8x8, &::I8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2045 definition: Named("llvm.arm.neon.vtbl3")
2047 "tbl3_u8" => Intrinsic {
2048 inputs: { static INPUTS: [&'static Type; 2] = [{ static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 3] = [&::U8x8, &::U8x8, &::U8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2050 definition: Named("llvm.arm.neon.vtbl3")
2052 "tbx3_s8" => Intrinsic {
2053 inputs: { static INPUTS: [&'static Type; 3] = [&::I8x8, { static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 3] = [&::I8x8, &::I8x8, &::I8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2055 definition: Named("llvm.arm.neon.vtbx3")
2057 "tbx3_u8" => Intrinsic {
2058 inputs: { static INPUTS: [&'static Type; 3] = [&::U8x8, { static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 3] = [&::U8x8, &::U8x8, &::U8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2060 definition: Named("llvm.arm.neon.vtbx3")
2062 "tbl4_s8" => Intrinsic {
2063 inputs: { static INPUTS: [&'static Type; 2] = [{ static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 4] = [&::I8x8, &::I8x8, &::I8x8, &::I8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2065 definition: Named("llvm.arm.neon.vtbl4")
2067 "tbl4_u8" => Intrinsic {
2068 inputs: { static INPUTS: [&'static Type; 2] = [{ static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 4] = [&::U8x8, &::U8x8, &::U8x8, &::U8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2070 definition: Named("llvm.arm.neon.vtbl4")
2072 "tbx4_s8" => Intrinsic {
2073 inputs: { static INPUTS: [&'static Type; 3] = [&::I8x8, { static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 4] = [&::I8x8, &::I8x8, &::I8x8, &::I8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2075 definition: Named("llvm.arm.neon.vtbx4")
2077 "tbx4_u8" => Intrinsic {
2078 inputs: { static INPUTS: [&'static Type; 3] = [&::U8x8, { static AGG: Type = Type::Aggregate(true, { static PARTS: [&'static Type; 4] = [&::U8x8, &::U8x8, &::U8x8, &::U8x8]; &PARTS }); &AGG }, &::U8x8]; &INPUTS },
2080 definition: Named("llvm.arm.neon.vtbx4")