Warning: That file was not part of the compilation database. It may have many parsing errors.

1/* Copyright (C) 2014-2017 Free Software Foundation, Inc.
2
3 This file is part of GCC.
4
5 GCC is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 3, or (at your option)
8 any later version.
9
10 GCC is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 Under Section 7 of GPL version 3, you are granted additional
16 permissions described in the GCC Runtime Library Exception, version
17 3.1, as published by the Free Software Foundation.
18
19 You should have received a copy of the GNU General Public License and
20 a copy of the GCC Runtime Library Exception along with this program;
21 see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
22 <http://www.gnu.org/licenses/>. */
23
24#ifndef _IMMINTRIN_H_INCLUDED
25#error "Never use <avx512vlintrin.h> directly; include <immintrin.h> instead."
26#endif
27
28#ifndef _AVX512VLINTRIN_H_INCLUDED
29#define _AVX512VLINTRIN_H_INCLUDED
30
31#ifndef __AVX512VL__
32#pragma GCC push_options
33#pragma GCC target("avx512vl")
34#define __DISABLE_AVX512VL__
35#endif /* __AVX512VL__ */
36
37/* Internal data types for implementing the intrinsics. */
38typedef unsigned int __mmask32;
39
40extern __inline __m256d
41__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
42_mm256_mask_mov_pd (__m256d __W, __mmask8 __U, __m256d __A)
43{
44 return (__m256d) __builtin_ia32_movapd256_mask ((__v4df) __A,
45 (__v4df) __W,
46 (__mmask8) __U);
47}
48
49extern __inline __m256d
50__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
51_mm256_maskz_mov_pd (__mmask8 __U, __m256d __A)
52{
53 return (__m256d) __builtin_ia32_movapd256_mask ((__v4df) __A,
54 (__v4df)
55 _mm256_setzero_pd (),
56 (__mmask8) __U);
57}
58
59extern __inline __m128d
60__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
61_mm_mask_mov_pd (__m128d __W, __mmask8 __U, __m128d __A)
62{
63 return (__m128d) __builtin_ia32_movapd128_mask ((__v2df) __A,
64 (__v2df) __W,
65 (__mmask8) __U);
66}
67
68extern __inline __m128d
69__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
70_mm_maskz_mov_pd (__mmask8 __U, __m128d __A)
71{
72 return (__m128d) __builtin_ia32_movapd128_mask ((__v2df) __A,
73 (__v2df)
74 _mm_setzero_pd (),
75 (__mmask8) __U);
76}
77
78extern __inline __m256d
79__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
80_mm256_mask_load_pd (__m256d __W, __mmask8 __U, void const *__P)
81{
82 return (__m256d) __builtin_ia32_loadapd256_mask ((__v4df *) __P,
83 (__v4df) __W,
84 (__mmask8) __U);
85}
86
87extern __inline __m256d
88__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
89_mm256_maskz_load_pd (__mmask8 __U, void const *__P)
90{
91 return (__m256d) __builtin_ia32_loadapd256_mask ((__v4df *) __P,
92 (__v4df)
93 _mm256_setzero_pd (),
94 (__mmask8) __U);
95}
96
97extern __inline __m128d
98__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
99_mm_mask_load_pd (__m128d __W, __mmask8 __U, void const *__P)
100{
101 return (__m128d) __builtin_ia32_loadapd128_mask ((__v2df *) __P,
102 (__v2df) __W,
103 (__mmask8) __U);
104}
105
106extern __inline __m128d
107__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
108_mm_maskz_load_pd (__mmask8 __U, void const *__P)
109{
110 return (__m128d) __builtin_ia32_loadapd128_mask ((__v2df *) __P,
111 (__v2df)
112 _mm_setzero_pd (),
113 (__mmask8) __U);
114}
115
116extern __inline void
117__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
118_mm256_mask_store_pd (void *__P, __mmask8 __U, __m256d __A)
119{
120 __builtin_ia32_storeapd256_mask ((__v4df *) __P,
121 (__v4df) __A,
122 (__mmask8) __U);
123}
124
125extern __inline void
126__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
127_mm_mask_store_pd (void *__P, __mmask8 __U, __m128d __A)
128{
129 __builtin_ia32_storeapd128_mask ((__v2df *) __P,
130 (__v2df) __A,
131 (__mmask8) __U);
132}
133
134extern __inline __m256
135__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
136_mm256_mask_mov_ps (__m256 __W, __mmask8 __U, __m256 __A)
137{
138 return (__m256) __builtin_ia32_movaps256_mask ((__v8sf) __A,
139 (__v8sf) __W,
140 (__mmask8) __U);
141}
142
143extern __inline __m256
144__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
145_mm256_maskz_mov_ps (__mmask8 __U, __m256 __A)
146{
147 return (__m256) __builtin_ia32_movaps256_mask ((__v8sf) __A,
148 (__v8sf)
149 _mm256_setzero_ps (),
150 (__mmask8) __U);
151}
152
153extern __inline __m128
154__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
155_mm_mask_mov_ps (__m128 __W, __mmask8 __U, __m128 __A)
156{
157 return (__m128) __builtin_ia32_movaps128_mask ((__v4sf) __A,
158 (__v4sf) __W,
159 (__mmask8) __U);
160}
161
162extern __inline __m128
163__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
164_mm_maskz_mov_ps (__mmask8 __U, __m128 __A)
165{
166 return (__m128) __builtin_ia32_movaps128_mask ((__v4sf) __A,
167 (__v4sf)
168 _mm_setzero_ps (),
169 (__mmask8) __U);
170}
171
172extern __inline __m256
173__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
174_mm256_mask_load_ps (__m256 __W, __mmask8 __U, void const *__P)
175{
176 return (__m256) __builtin_ia32_loadaps256_mask ((__v8sf *) __P,
177 (__v8sf) __W,
178 (__mmask8) __U);
179}
180
181extern __inline __m256
182__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
183_mm256_maskz_load_ps (__mmask8 __U, void const *__P)
184{
185 return (__m256) __builtin_ia32_loadaps256_mask ((__v8sf *) __P,
186 (__v8sf)
187 _mm256_setzero_ps (),
188 (__mmask8) __U);
189}
190
191extern __inline __m128
192__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
193_mm_mask_load_ps (__m128 __W, __mmask8 __U, void const *__P)
194{
195 return (__m128) __builtin_ia32_loadaps128_mask ((__v4sf *) __P,
196 (__v4sf) __W,
197 (__mmask8) __U);
198}
199
200extern __inline __m128
201__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
202_mm_maskz_load_ps (__mmask8 __U, void const *__P)
203{
204 return (__m128) __builtin_ia32_loadaps128_mask ((__v4sf *) __P,
205 (__v4sf)
206 _mm_setzero_ps (),
207 (__mmask8) __U);
208}
209
210extern __inline void
211__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
212_mm256_mask_store_ps (void *__P, __mmask8 __U, __m256 __A)
213{
214 __builtin_ia32_storeaps256_mask ((__v8sf *) __P,
215 (__v8sf) __A,
216 (__mmask8) __U);
217}
218
219extern __inline void
220__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
221_mm_mask_store_ps (void *__P, __mmask8 __U, __m128 __A)
222{
223 __builtin_ia32_storeaps128_mask ((__v4sf *) __P,
224 (__v4sf) __A,
225 (__mmask8) __U);
226}
227
228extern __inline __m256i
229__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
230_mm256_mask_mov_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
231{
232 return (__m256i) __builtin_ia32_movdqa64_256_mask ((__v4di) __A,
233 (__v4di) __W,
234 (__mmask8) __U);
235}
236
237extern __inline __m256i
238__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
239_mm256_maskz_mov_epi64 (__mmask8 __U, __m256i __A)
240{
241 return (__m256i) __builtin_ia32_movdqa64_256_mask ((__v4di) __A,
242 (__v4di)
243 _mm256_setzero_si256 (),
244 (__mmask8) __U);
245}
246
247extern __inline __m128i
248__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
249_mm_mask_mov_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
250{
251 return (__m128i) __builtin_ia32_movdqa64_128_mask ((__v2di) __A,
252 (__v2di) __W,
253 (__mmask8) __U);
254}
255
256extern __inline __m128i
257__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
258_mm_maskz_mov_epi64 (__mmask8 __U, __m128i __A)
259{
260 return (__m128i) __builtin_ia32_movdqa64_128_mask ((__v2di) __A,
261 (__v2di)
262 _mm_setzero_si128 (),
263 (__mmask8) __U);
264}
265
266extern __inline __m256i
267__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
268_mm256_mask_load_epi64 (__m256i __W, __mmask8 __U, void const *__P)
269{
270 return (__m256i) __builtin_ia32_movdqa64load256_mask ((__v4di *) __P,
271 (__v4di) __W,
272 (__mmask8)
273 __U);
274}
275
276extern __inline __m256i
277__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
278_mm256_maskz_load_epi64 (__mmask8 __U, void const *__P)
279{
280 return (__m256i) __builtin_ia32_movdqa64load256_mask ((__v4di *) __P,
281 (__v4di)
282 _mm256_setzero_si256 (),
283 (__mmask8)
284 __U);
285}
286
287extern __inline __m128i
288__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
289_mm_mask_load_epi64 (__m128i __W, __mmask8 __U, void const *__P)
290{
291 return (__m128i) __builtin_ia32_movdqa64load128_mask ((__v2di *) __P,
292 (__v2di) __W,
293 (__mmask8)
294 __U);
295}
296
297extern __inline __m128i
298__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
299_mm_maskz_load_epi64 (__mmask8 __U, void const *__P)
300{
301 return (__m128i) __builtin_ia32_movdqa64load128_mask ((__v2di *) __P,
302 (__v2di)
303 _mm_setzero_si128 (),
304 (__mmask8)
305 __U);
306}
307
308extern __inline void
309__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
310_mm256_mask_store_epi64 (void *__P, __mmask8 __U, __m256i __A)
311{
312 __builtin_ia32_movdqa64store256_mask ((__v4di *) __P,
313 (__v4di) __A,
314 (__mmask8) __U);
315}
316
317extern __inline void
318__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
319_mm_mask_store_epi64 (void *__P, __mmask8 __U, __m128i __A)
320{
321 __builtin_ia32_movdqa64store128_mask ((__v2di *) __P,
322 (__v2di) __A,
323 (__mmask8) __U);
324}
325
326extern __inline __m256i
327__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
328_mm256_mask_mov_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
329{
330 return (__m256i) __builtin_ia32_movdqa32_256_mask ((__v8si) __A,
331 (__v8si) __W,
332 (__mmask8) __U);
333}
334
335extern __inline __m256i
336__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
337_mm256_maskz_mov_epi32 (__mmask8 __U, __m256i __A)
338{
339 return (__m256i) __builtin_ia32_movdqa32_256_mask ((__v8si) __A,
340 (__v8si)
341 _mm256_setzero_si256 (),
342 (__mmask8) __U);
343}
344
345extern __inline __m128i
346__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
347_mm_mask_mov_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
348{
349 return (__m128i) __builtin_ia32_movdqa32_128_mask ((__v4si) __A,
350 (__v4si) __W,
351 (__mmask8) __U);
352}
353
354extern __inline __m128i
355__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
356_mm_maskz_mov_epi32 (__mmask8 __U, __m128i __A)
357{
358 return (__m128i) __builtin_ia32_movdqa32_128_mask ((__v4si) __A,
359 (__v4si)
360 _mm_setzero_si128 (),
361 (__mmask8) __U);
362}
363
364extern __inline __m256i
365__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
366_mm256_mask_load_epi32 (__m256i __W, __mmask8 __U, void const *__P)
367{
368 return (__m256i) __builtin_ia32_movdqa32load256_mask ((__v8si *) __P,
369 (__v8si) __W,
370 (__mmask8)
371 __U);
372}
373
374extern __inline __m256i
375__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
376_mm256_maskz_load_epi32 (__mmask8 __U, void const *__P)
377{
378 return (__m256i) __builtin_ia32_movdqa32load256_mask ((__v8si *) __P,
379 (__v8si)
380 _mm256_setzero_si256 (),
381 (__mmask8)
382 __U);
383}
384
385extern __inline __m128i
386__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
387_mm_mask_load_epi32 (__m128i __W, __mmask8 __U, void const *__P)
388{
389 return (__m128i) __builtin_ia32_movdqa32load128_mask ((__v4si *) __P,
390 (__v4si) __W,
391 (__mmask8)
392 __U);
393}
394
395extern __inline __m128i
396__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
397_mm_maskz_load_epi32 (__mmask8 __U, void const *__P)
398{
399 return (__m128i) __builtin_ia32_movdqa32load128_mask ((__v4si *) __P,
400 (__v4si)
401 _mm_setzero_si128 (),
402 (__mmask8)
403 __U);
404}
405
406extern __inline void
407__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
408_mm256_mask_store_epi32 (void *__P, __mmask8 __U, __m256i __A)
409{
410 __builtin_ia32_movdqa32store256_mask ((__v8si *) __P,
411 (__v8si) __A,
412 (__mmask8) __U);
413}
414
415extern __inline void
416__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
417_mm_mask_store_epi32 (void *__P, __mmask8 __U, __m128i __A)
418{
419 __builtin_ia32_movdqa32store128_mask ((__v4si *) __P,
420 (__v4si) __A,
421 (__mmask8) __U);
422}
423
424extern __inline __m128d
425__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
426_mm_mask_add_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
427{
428 return (__m128d) __builtin_ia32_addpd128_mask ((__v2df) __A,
429 (__v2df) __B,
430 (__v2df) __W,
431 (__mmask8) __U);
432}
433
434extern __inline __m128d
435__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
436_mm_maskz_add_pd (__mmask8 __U, __m128d __A, __m128d __B)
437{
438 return (__m128d) __builtin_ia32_addpd128_mask ((__v2df) __A,
439 (__v2df) __B,
440 (__v2df)
441 _mm_setzero_pd (),
442 (__mmask8) __U);
443}
444
445extern __inline __m256d
446__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
447_mm256_mask_add_pd (__m256d __W, __mmask8 __U, __m256d __A,
448 __m256d __B)
449{
450 return (__m256d) __builtin_ia32_addpd256_mask ((__v4df) __A,
451 (__v4df) __B,
452 (__v4df) __W,
453 (__mmask8) __U);
454}
455
456extern __inline __m256d
457__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
458_mm256_maskz_add_pd (__mmask8 __U, __m256d __A, __m256d __B)
459{
460 return (__m256d) __builtin_ia32_addpd256_mask ((__v4df) __A,
461 (__v4df) __B,
462 (__v4df)
463 _mm256_setzero_pd (),
464 (__mmask8) __U);
465}
466
467extern __inline __m128
468__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
469_mm_mask_add_ps (__m128 __W, __mmask16 __U, __m128 __A, __m128 __B)
470{
471 return (__m128) __builtin_ia32_addps128_mask ((__v4sf) __A,
472 (__v4sf) __B,
473 (__v4sf) __W,
474 (__mmask8) __U);
475}
476
477extern __inline __m128
478__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
479_mm_maskz_add_ps (__mmask16 __U, __m128 __A, __m128 __B)
480{
481 return (__m128) __builtin_ia32_addps128_mask ((__v4sf) __A,
482 (__v4sf) __B,
483 (__v4sf)
484 _mm_setzero_ps (),
485 (__mmask8) __U);
486}
487
488extern __inline __m256
489__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
490_mm256_mask_add_ps (__m256 __W, __mmask16 __U, __m256 __A, __m256 __B)
491{
492 return (__m256) __builtin_ia32_addps256_mask ((__v8sf) __A,
493 (__v8sf) __B,
494 (__v8sf) __W,
495 (__mmask8) __U);
496}
497
498extern __inline __m256
499__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
500_mm256_maskz_add_ps (__mmask16 __U, __m256 __A, __m256 __B)
501{
502 return (__m256) __builtin_ia32_addps256_mask ((__v8sf) __A,
503 (__v8sf) __B,
504 (__v8sf)
505 _mm256_setzero_ps (),
506 (__mmask8) __U);
507}
508
509extern __inline __m128d
510__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
511_mm_mask_sub_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
512{
513 return (__m128d) __builtin_ia32_subpd128_mask ((__v2df) __A,
514 (__v2df) __B,
515 (__v2df) __W,
516 (__mmask8) __U);
517}
518
519extern __inline __m128d
520__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
521_mm_maskz_sub_pd (__mmask8 __U, __m128d __A, __m128d __B)
522{
523 return (__m128d) __builtin_ia32_subpd128_mask ((__v2df) __A,
524 (__v2df) __B,
525 (__v2df)
526 _mm_setzero_pd (),
527 (__mmask8) __U);
528}
529
530extern __inline __m256d
531__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
532_mm256_mask_sub_pd (__m256d __W, __mmask8 __U, __m256d __A,
533 __m256d __B)
534{
535 return (__m256d) __builtin_ia32_subpd256_mask ((__v4df) __A,
536 (__v4df) __B,
537 (__v4df) __W,
538 (__mmask8) __U);
539}
540
541extern __inline __m256d
542__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
543_mm256_maskz_sub_pd (__mmask8 __U, __m256d __A, __m256d __B)
544{
545 return (__m256d) __builtin_ia32_subpd256_mask ((__v4df) __A,
546 (__v4df) __B,
547 (__v4df)
548 _mm256_setzero_pd (),
549 (__mmask8) __U);
550}
551
552extern __inline __m128
553__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
554_mm_mask_sub_ps (__m128 __W, __mmask16 __U, __m128 __A, __m128 __B)
555{
556 return (__m128) __builtin_ia32_subps128_mask ((__v4sf) __A,
557 (__v4sf) __B,
558 (__v4sf) __W,
559 (__mmask8) __U);
560}
561
562extern __inline __m128
563__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
564_mm_maskz_sub_ps (__mmask16 __U, __m128 __A, __m128 __B)
565{
566 return (__m128) __builtin_ia32_subps128_mask ((__v4sf) __A,
567 (__v4sf) __B,
568 (__v4sf)
569 _mm_setzero_ps (),
570 (__mmask8) __U);
571}
572
573extern __inline __m256
574__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
575_mm256_mask_sub_ps (__m256 __W, __mmask16 __U, __m256 __A, __m256 __B)
576{
577 return (__m256) __builtin_ia32_subps256_mask ((__v8sf) __A,
578 (__v8sf) __B,
579 (__v8sf) __W,
580 (__mmask8) __U);
581}
582
583extern __inline __m256
584__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
585_mm256_maskz_sub_ps (__mmask16 __U, __m256 __A, __m256 __B)
586{
587 return (__m256) __builtin_ia32_subps256_mask ((__v8sf) __A,
588 (__v8sf) __B,
589 (__v8sf)
590 _mm256_setzero_ps (),
591 (__mmask8) __U);
592}
593
594extern __inline void
595__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
596_mm256_store_epi64 (void *__P, __m256i __A)
597{
598 *(__m256i *) __P = __A;
599}
600
601extern __inline void
602__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
603_mm_store_epi64 (void *__P, __m128i __A)
604{
605 *(__m128i *) __P = __A;
606}
607
608extern __inline __m256d
609__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
610_mm256_mask_loadu_pd (__m256d __W, __mmask8 __U, void const *__P)
611{
612 return (__m256d) __builtin_ia32_loadupd256_mask ((const double *) __P,
613 (__v4df) __W,
614 (__mmask8) __U);
615}
616
617extern __inline __m256d
618__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
619_mm256_maskz_loadu_pd (__mmask8 __U, void const *__P)
620{
621 return (__m256d) __builtin_ia32_loadupd256_mask ((const double *) __P,
622 (__v4df)
623 _mm256_setzero_pd (),
624 (__mmask8) __U);
625}
626
627extern __inline __m128d
628__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
629_mm_mask_loadu_pd (__m128d __W, __mmask8 __U, void const *__P)
630{
631 return (__m128d) __builtin_ia32_loadupd128_mask ((const double *) __P,
632 (__v2df) __W,
633 (__mmask8) __U);
634}
635
636extern __inline __m128d
637__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
638_mm_maskz_loadu_pd (__mmask8 __U, void const *__P)
639{
640 return (__m128d) __builtin_ia32_loadupd128_mask ((const double *) __P,
641 (__v2df)
642 _mm_setzero_pd (),
643 (__mmask8) __U);
644}
645
646extern __inline void
647__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
648_mm256_mask_storeu_pd (void *__P, __mmask8 __U, __m256d __A)
649{
650 __builtin_ia32_storeupd256_mask ((double *) __P,
651 (__v4df) __A,
652 (__mmask8) __U);
653}
654
655extern __inline void
656__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
657_mm_mask_storeu_pd (void *__P, __mmask8 __U, __m128d __A)
658{
659 __builtin_ia32_storeupd128_mask ((double *) __P,
660 (__v2df) __A,
661 (__mmask8) __U);
662}
663
664extern __inline __m256
665__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
666_mm256_mask_loadu_ps (__m256 __W, __mmask8 __U, void const *__P)
667{
668 return (__m256) __builtin_ia32_loadups256_mask ((const float *) __P,
669 (__v8sf) __W,
670 (__mmask8) __U);
671}
672
673extern __inline __m256
674__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
675_mm256_maskz_loadu_ps (__mmask8 __U, void const *__P)
676{
677 return (__m256) __builtin_ia32_loadups256_mask ((const float *) __P,
678 (__v8sf)
679 _mm256_setzero_ps (),
680 (__mmask8) __U);
681}
682
683extern __inline __m128
684__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
685_mm_mask_loadu_ps (__m128 __W, __mmask8 __U, void const *__P)
686{
687 return (__m128) __builtin_ia32_loadups128_mask ((const float *) __P,
688 (__v4sf) __W,
689 (__mmask8) __U);
690}
691
692extern __inline __m128
693__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
694_mm_maskz_loadu_ps (__mmask8 __U, void const *__P)
695{
696 return (__m128) __builtin_ia32_loadups128_mask ((const float *) __P,
697 (__v4sf)
698 _mm_setzero_ps (),
699 (__mmask8) __U);
700}
701
702extern __inline void
703__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
704_mm256_mask_storeu_ps (void *__P, __mmask8 __U, __m256 __A)
705{
706 __builtin_ia32_storeups256_mask ((float *) __P,
707 (__v8sf) __A,
708 (__mmask8) __U);
709}
710
711extern __inline void
712__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
713_mm_mask_storeu_ps (void *__P, __mmask8 __U, __m128 __A)
714{
715 __builtin_ia32_storeups128_mask ((float *) __P,
716 (__v4sf) __A,
717 (__mmask8) __U);
718}
719
720extern __inline __m256i
721__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
722_mm256_mask_loadu_epi64 (__m256i __W, __mmask8 __U, void const *__P)
723{
724 return (__m256i) __builtin_ia32_loaddqudi256_mask ((const long long *) __P,
725 (__v4di) __W,
726 (__mmask8) __U);
727}
728
729extern __inline __m256i
730__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
731_mm256_maskz_loadu_epi64 (__mmask8 __U, void const *__P)
732{
733 return (__m256i) __builtin_ia32_loaddqudi256_mask ((const long long *) __P,
734 (__v4di)
735 _mm256_setzero_si256 (),
736 (__mmask8) __U);
737}
738
739extern __inline __m128i
740__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
741_mm_mask_loadu_epi64 (__m128i __W, __mmask8 __U, void const *__P)
742{
743 return (__m128i) __builtin_ia32_loaddqudi128_mask ((const long long *) __P,
744 (__v2di) __W,
745 (__mmask8) __U);
746}
747
748extern __inline __m128i
749__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
750_mm_maskz_loadu_epi64 (__mmask8 __U, void const *__P)
751{
752 return (__m128i) __builtin_ia32_loaddqudi128_mask ((const long long *) __P,
753 (__v2di)
754 _mm_setzero_si128 (),
755 (__mmask8) __U);
756}
757
758extern __inline void
759__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
760_mm256_mask_storeu_epi64 (void *__P, __mmask8 __U, __m256i __A)
761{
762 __builtin_ia32_storedqudi256_mask ((long long *) __P,
763 (__v4di) __A,
764 (__mmask8) __U);
765}
766
767extern __inline void
768__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
769_mm_mask_storeu_epi64 (void *__P, __mmask8 __U, __m128i __A)
770{
771 __builtin_ia32_storedqudi128_mask ((long long *) __P,
772 (__v2di) __A,
773 (__mmask8) __U);
774}
775
776extern __inline __m256i
777__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
778_mm256_mask_loadu_epi32 (__m256i __W, __mmask8 __U, void const *__P)
779{
780 return (__m256i) __builtin_ia32_loaddqusi256_mask ((const int *) __P,
781 (__v8si) __W,
782 (__mmask8) __U);
783}
784
785extern __inline __m256i
786__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
787_mm256_maskz_loadu_epi32 (__mmask8 __U, void const *__P)
788{
789 return (__m256i) __builtin_ia32_loaddqusi256_mask ((const int *) __P,
790 (__v8si)
791 _mm256_setzero_si256 (),
792 (__mmask8) __U);
793}
794
795extern __inline __m128i
796__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
797_mm_mask_loadu_epi32 (__m128i __W, __mmask8 __U, void const *__P)
798{
799 return (__m128i) __builtin_ia32_loaddqusi128_mask ((const int *) __P,
800 (__v4si) __W,
801 (__mmask8) __U);
802}
803
804extern __inline __m128i
805__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
806_mm_maskz_loadu_epi32 (__mmask8 __U, void const *__P)
807{
808 return (__m128i) __builtin_ia32_loaddqusi128_mask ((const int *) __P,
809 (__v4si)
810 _mm_setzero_si128 (),
811 (__mmask8) __U);
812}
813
814extern __inline void
815__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
816_mm256_mask_storeu_epi32 (void *__P, __mmask8 __U, __m256i __A)
817{
818 __builtin_ia32_storedqusi256_mask ((int *) __P,
819 (__v8si) __A,
820 (__mmask8) __U);
821}
822
823extern __inline void
824__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
825_mm_mask_storeu_epi32 (void *__P, __mmask8 __U, __m128i __A)
826{
827 __builtin_ia32_storedqusi128_mask ((int *) __P,
828 (__v4si) __A,
829 (__mmask8) __U);
830}
831
832extern __inline __m256i
833__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
834_mm256_mask_abs_epi32 (__m256i __W, __mmask8 __U, __m256i __A)
835{
836 return (__m256i) __builtin_ia32_pabsd256_mask ((__v8si) __A,
837 (__v8si) __W,
838 (__mmask8) __U);
839}
840
841extern __inline __m256i
842__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
843_mm256_maskz_abs_epi32 (__mmask8 __U, __m256i __A)
844{
845 return (__m256i) __builtin_ia32_pabsd256_mask ((__v8si) __A,
846 (__v8si)
847 _mm256_setzero_si256 (),
848 (__mmask8) __U);
849}
850
851extern __inline __m128i
852__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
853_mm_mask_abs_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
854{
855 return (__m128i) __builtin_ia32_pabsd128_mask ((__v4si) __A,
856 (__v4si) __W,
857 (__mmask8) __U);
858}
859
860extern __inline __m128i
861__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
862_mm_maskz_abs_epi32 (__mmask8 __U, __m128i __A)
863{
864 return (__m128i) __builtin_ia32_pabsd128_mask ((__v4si) __A,
865 (__v4si)
866 _mm_setzero_si128 (),
867 (__mmask8) __U);
868}
869
870extern __inline __m256i
871__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
872_mm256_abs_epi64 (__m256i __A)
873{
874 return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
875 (__v4di)
876 _mm256_setzero_si256 (),
877 (__mmask8) -1);
878}
879
880extern __inline __m256i
881__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
882_mm256_mask_abs_epi64 (__m256i __W, __mmask8 __U, __m256i __A)
883{
884 return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
885 (__v4di) __W,
886 (__mmask8) __U);
887}
888
889extern __inline __m256i
890__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
891_mm256_maskz_abs_epi64 (__mmask8 __U, __m256i __A)
892{
893 return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
894 (__v4di)
895 _mm256_setzero_si256 (),
896 (__mmask8) __U);
897}
898
899extern __inline __m128i
900__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
901_mm_abs_epi64 (__m128i __A)
902{
903 return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
904 (__v2di)
905 _mm_setzero_si128 (),
906 (__mmask8) -1);
907}
908
909extern __inline __m128i
910__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
911_mm_mask_abs_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
912{
913 return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
914 (__v2di) __W,
915 (__mmask8) __U);
916}
917
918extern __inline __m128i
919__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
920_mm_maskz_abs_epi64 (__mmask8 __U, __m128i __A)
921{
922 return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
923 (__v2di)
924 _mm_setzero_si128 (),
925 (__mmask8) __U);
926}
927
928extern __inline __m128i
929__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
930_mm256_cvtpd_epu32 (__m256d __A)
931{
932 return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
933 (__v4si)
934 _mm_setzero_si128 (),
935 (__mmask8) -1);
936}
937
938extern __inline __m128i
939__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
940_mm256_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A)
941{
942 return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
943 (__v4si) __W,
944 (__mmask8) __U);
945}
946
947extern __inline __m128i
948__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
949_mm256_maskz_cvtpd_epu32 (__mmask8 __U, __m256d __A)
950{
951 return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
952 (__v4si)
953 _mm_setzero_si128 (),
954 (__mmask8) __U);
955}
956
957extern __inline __m128i
958__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
959_mm_cvtpd_epu32 (__m128d __A)
960{
961 return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
962 (__v4si)
963 _mm_setzero_si128 (),
964 (__mmask8) -1);
965}
966
967extern __inline __m128i
968__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
969_mm_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A)
970{
971 return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
972 (__v4si) __W,
973 (__mmask8) __U);
974}
975
976extern __inline __m128i
977__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
978_mm_maskz_cvtpd_epu32 (__mmask8 __U, __m128d __A)
979{
980 return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
981 (__v4si)
982 _mm_setzero_si128 (),
983 (__mmask8) __U);
984}
985
986extern __inline __m256i
987__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
988_mm256_mask_cvttps_epi32 (__m256i __W, __mmask8 __U, __m256 __A)
989{
990 return (__m256i) __builtin_ia32_cvttps2dq256_mask ((__v8sf) __A,
991 (__v8si) __W,
992 (__mmask8) __U);
993}
994
995extern __inline __m256i
996__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
997_mm256_maskz_cvttps_epi32 (__mmask8 __U, __m256 __A)
998{
999 return (__m256i) __builtin_ia32_cvttps2dq256_mask ((__v8sf) __A,
1000 (__v8si)
1001 _mm256_setzero_si256 (),
1002 (__mmask8) __U);
1003}
1004
1005extern __inline __m128i
1006__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1007_mm_mask_cvttps_epi32 (__m128i __W, __mmask8 __U, __m128 __A)
1008{
1009 return (__m128i) __builtin_ia32_cvttps2dq128_mask ((__v4sf) __A,
1010 (__v4si) __W,
1011 (__mmask8) __U);
1012}
1013
1014extern __inline __m128i
1015__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1016_mm_maskz_cvttps_epi32 (__mmask8 __U, __m128 __A)
1017{
1018 return (__m128i) __builtin_ia32_cvttps2dq128_mask ((__v4sf) __A,
1019 (__v4si)
1020 _mm_setzero_si128 (),
1021 (__mmask8) __U);
1022}
1023
1024extern __inline __m256i
1025__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1026_mm256_cvttps_epu32 (__m256 __A)
1027{
1028 return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
1029 (__v8si)
1030 _mm256_setzero_si256 (),
1031 (__mmask8) -1);
1032}
1033
1034extern __inline __m256i
1035__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1036_mm256_mask_cvttps_epu32 (__m256i __W, __mmask8 __U, __m256 __A)
1037{
1038 return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
1039 (__v8si) __W,
1040 (__mmask8) __U);
1041}
1042
1043extern __inline __m256i
1044__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1045_mm256_maskz_cvttps_epu32 (__mmask8 __U, __m256 __A)
1046{
1047 return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
1048 (__v8si)
1049 _mm256_setzero_si256 (),
1050 (__mmask8) __U);
1051}
1052
1053extern __inline __m128i
1054__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1055_mm_cvttps_epu32 (__m128 __A)
1056{
1057 return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
1058 (__v4si)
1059 _mm_setzero_si128 (),
1060 (__mmask8) -1);
1061}
1062
1063extern __inline __m128i
1064__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1065_mm_mask_cvttps_epu32 (__m128i __W, __mmask8 __U, __m128 __A)
1066{
1067 return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
1068 (__v4si) __W,
1069 (__mmask8) __U);
1070}
1071
1072extern __inline __m128i
1073__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1074_mm_maskz_cvttps_epu32 (__mmask8 __U, __m128 __A)
1075{
1076 return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
1077 (__v4si)
1078 _mm_setzero_si128 (),
1079 (__mmask8) __U);
1080}
1081
1082extern __inline __m128i
1083__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1084_mm256_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A)
1085{
1086 return (__m128i) __builtin_ia32_cvttpd2dq256_mask ((__v4df) __A,
1087 (__v4si) __W,
1088 (__mmask8) __U);
1089}
1090
1091extern __inline __m128i
1092__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1093_mm256_maskz_cvttpd_epi32 (__mmask8 __U, __m256d __A)
1094{
1095 return (__m128i) __builtin_ia32_cvttpd2dq256_mask ((__v4df) __A,
1096 (__v4si)
1097 _mm_setzero_si128 (),
1098 (__mmask8) __U);
1099}
1100
1101extern __inline __m128i
1102__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1103_mm_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A)
1104{
1105 return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A,
1106 (__v4si) __W,
1107 (__mmask8) __U);
1108}
1109
1110extern __inline __m128i
1111__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1112_mm_maskz_cvttpd_epi32 (__mmask8 __U, __m128d __A)
1113{
1114 return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A,
1115 (__v4si)
1116 _mm_setzero_si128 (),
1117 (__mmask8) __U);
1118}
1119
1120extern __inline __m128i
1121__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1122_mm256_cvttpd_epu32 (__m256d __A)
1123{
1124 return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
1125 (__v4si)
1126 _mm_setzero_si128 (),
1127 (__mmask8) -1);
1128}
1129
1130extern __inline __m128i
1131__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1132_mm256_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A)
1133{
1134 return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
1135 (__v4si) __W,
1136 (__mmask8) __U);
1137}
1138
1139extern __inline __m128i
1140__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1141_mm256_maskz_cvttpd_epu32 (__mmask8 __U, __m256d __A)
1142{
1143 return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
1144 (__v4si)
1145 _mm_setzero_si128 (),
1146 (__mmask8) __U);
1147}
1148
1149extern __inline __m128i
1150__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1151_mm_cvttpd_epu32 (__m128d __A)
1152{
1153 return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
1154 (__v4si)
1155 _mm_setzero_si128 (),
1156 (__mmask8) -1);
1157}
1158
1159extern __inline __m128i
1160__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1161_mm_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A)
1162{
1163 return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
1164 (__v4si) __W,
1165 (__mmask8) __U);
1166}
1167
1168extern __inline __m128i
1169__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1170_mm_maskz_cvttpd_epu32 (__mmask8 __U, __m128d __A)
1171{
1172 return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
1173 (__v4si)
1174 _mm_setzero_si128 (),
1175 (__mmask8) __U);
1176}
1177
1178extern __inline __m128i
1179__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1180_mm256_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A)
1181{
1182 return (__m128i) __builtin_ia32_cvtpd2dq256_mask ((__v4df) __A,
1183 (__v4si) __W,
1184 (__mmask8) __U);
1185}
1186
1187extern __inline __m128i
1188__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1189_mm256_maskz_cvtpd_epi32 (__mmask8 __U, __m256d __A)
1190{
1191 return (__m128i) __builtin_ia32_cvtpd2dq256_mask ((__v4df) __A,
1192 (__v4si)
1193 _mm_setzero_si128 (),
1194 (__mmask8) __U);
1195}
1196
1197extern __inline __m128i
1198__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1199_mm_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A)
1200{
1201 return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A,
1202 (__v4si) __W,
1203 (__mmask8) __U);
1204}
1205
1206extern __inline __m128i
1207__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1208_mm_maskz_cvtpd_epi32 (__mmask8 __U, __m128d __A)
1209{
1210 return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A,
1211 (__v4si)
1212 _mm_setzero_si128 (),
1213 (__mmask8) __U);
1214}
1215
1216extern __inline __m256d
1217__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1218_mm256_mask_cvtepi32_pd (__m256d __W, __mmask8 __U, __m128i __A)
1219{
1220 return (__m256d) __builtin_ia32_cvtdq2pd256_mask ((__v4si) __A,
1221 (__v4df) __W,
1222 (__mmask8) __U);
1223}
1224
1225extern __inline __m256d
1226__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1227_mm256_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A)
1228{
1229 return (__m256d) __builtin_ia32_cvtdq2pd256_mask ((__v4si) __A,
1230 (__v4df)
1231 _mm256_setzero_pd (),
1232 (__mmask8) __U);
1233}
1234
1235extern __inline __m128d
1236__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1237_mm_mask_cvtepi32_pd (__m128d __W, __mmask8 __U, __m128i __A)
1238{
1239 return (__m128d) __builtin_ia32_cvtdq2pd128_mask ((__v4si) __A,
1240 (__v2df) __W,
1241 (__mmask8) __U);
1242}
1243
1244extern __inline __m128d
1245__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1246_mm_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A)
1247{
1248 return (__m128d) __builtin_ia32_cvtdq2pd128_mask ((__v4si) __A,
1249 (__v2df)
1250 _mm_setzero_pd (),
1251 (__mmask8) __U);
1252}
1253
1254extern __inline __m256d
1255__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1256_mm256_cvtepu32_pd (__m128i __A)
1257{
1258 return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
1259 (__v4df)
1260 _mm256_setzero_pd (),
1261 (__mmask8) -1);
1262}
1263
1264extern __inline __m256d
1265__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1266_mm256_mask_cvtepu32_pd (__m256d __W, __mmask8 __U, __m128i __A)
1267{
1268 return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
1269 (__v4df) __W,
1270 (__mmask8) __U);
1271}
1272
1273extern __inline __m256d
1274__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1275_mm256_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A)
1276{
1277 return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
1278 (__v4df)
1279 _mm256_setzero_pd (),
1280 (__mmask8) __U);
1281}
1282
1283extern __inline __m128d
1284__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1285_mm_cvtepu32_pd (__m128i __A)
1286{
1287 return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
1288 (__v2df)
1289 _mm_setzero_pd (),
1290 (__mmask8) -1);
1291}
1292
1293extern __inline __m128d
1294__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1295_mm_mask_cvtepu32_pd (__m128d __W, __mmask8 __U, __m128i __A)
1296{
1297 return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
1298 (__v2df) __W,
1299 (__mmask8) __U);
1300}
1301
1302extern __inline __m128d
1303__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1304_mm_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A)
1305{
1306 return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
1307 (__v2df)
1308 _mm_setzero_pd (),
1309 (__mmask8) __U);
1310}
1311
1312extern __inline __m256
1313__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1314_mm256_mask_cvtepi32_ps (__m256 __W, __mmask8 __U, __m256i __A)
1315{
1316 return (__m256) __builtin_ia32_cvtdq2ps256_mask ((__v8si) __A,
1317 (__v8sf) __W,
1318 (__mmask8) __U);
1319}
1320
1321extern __inline __m256
1322__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1323_mm256_maskz_cvtepi32_ps (__mmask16 __U, __m256i __A)
1324{
1325 return (__m256) __builtin_ia32_cvtdq2ps256_mask ((__v8si) __A,
1326 (__v8sf)
1327 _mm256_setzero_ps (),
1328 (__mmask8) __U);
1329}
1330
1331extern __inline __m128
1332__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1333_mm_mask_cvtepi32_ps (__m128 __W, __mmask8 __U, __m128i __A)
1334{
1335 return (__m128) __builtin_ia32_cvtdq2ps128_mask ((__v4si) __A,
1336 (__v4sf) __W,
1337 (__mmask8) __U);
1338}
1339
1340extern __inline __m128
1341__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1342_mm_maskz_cvtepi32_ps (__mmask16 __U, __m128i __A)
1343{
1344 return (__m128) __builtin_ia32_cvtdq2ps128_mask ((__v4si) __A,
1345 (__v4sf)
1346 _mm_setzero_ps (),
1347 (__mmask8) __U);
1348}
1349
1350extern __inline __m256
1351__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1352_mm256_cvtepu32_ps (__m256i __A)
1353{
1354 return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
1355 (__v8sf)
1356 _mm256_setzero_ps (),
1357 (__mmask8) -1);
1358}
1359
1360extern __inline __m256
1361__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1362_mm256_mask_cvtepu32_ps (__m256 __W, __mmask8 __U, __m256i __A)
1363{
1364 return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
1365 (__v8sf) __W,
1366 (__mmask8) __U);
1367}
1368
1369extern __inline __m256
1370__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1371_mm256_maskz_cvtepu32_ps (__mmask8 __U, __m256i __A)
1372{
1373 return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
1374 (__v8sf)
1375 _mm256_setzero_ps (),
1376 (__mmask8) __U);
1377}
1378
1379extern __inline __m128
1380__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1381_mm_cvtepu32_ps (__m128i __A)
1382{
1383 return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
1384 (__v4sf)
1385 _mm_setzero_ps (),
1386 (__mmask8) -1);
1387}
1388
1389extern __inline __m128
1390__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1391_mm_mask_cvtepu32_ps (__m128 __W, __mmask8 __U, __m128i __A)
1392{
1393 return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
1394 (__v4sf) __W,
1395 (__mmask8) __U);
1396}
1397
1398extern __inline __m128
1399__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1400_mm_maskz_cvtepu32_ps (__mmask8 __U, __m128i __A)
1401{
1402 return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
1403 (__v4sf)
1404 _mm_setzero_ps (),
1405 (__mmask8) __U);
1406}
1407
1408extern __inline __m256d
1409__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1410_mm256_mask_cvtps_pd (__m256d __W, __mmask8 __U, __m128 __A)
1411{
1412 return (__m256d) __builtin_ia32_cvtps2pd256_mask ((__v4sf) __A,
1413 (__v4df) __W,
1414 (__mmask8) __U);
1415}
1416
1417extern __inline __m256d
1418__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1419_mm256_maskz_cvtps_pd (__mmask8 __U, __m128 __A)
1420{
1421 return (__m256d) __builtin_ia32_cvtps2pd256_mask ((__v4sf) __A,
1422 (__v4df)
1423 _mm256_setzero_pd (),
1424 (__mmask8) __U);
1425}
1426
1427extern __inline __m128d
1428__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1429_mm_mask_cvtps_pd (__m128d __W, __mmask8 __U, __m128 __A)
1430{
1431 return (__m128d) __builtin_ia32_cvtps2pd128_mask ((__v4sf) __A,
1432 (__v2df) __W,
1433 (__mmask8) __U);
1434}
1435
1436extern __inline __m128d
1437__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1438_mm_maskz_cvtps_pd (__mmask8 __U, __m128 __A)
1439{
1440 return (__m128d) __builtin_ia32_cvtps2pd128_mask ((__v4sf) __A,
1441 (__v2df)
1442 _mm_setzero_pd (),
1443 (__mmask8) __U);
1444}
1445
1446extern __inline __m128i
1447__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1448_mm_cvtepi32_epi8 (__m128i __A)
1449{
1450 return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A,
1451 (__v16qi)
1452 _mm_undefined_si128 (),
1453 (__mmask8) -1);
1454}
1455
1456extern __inline void
1457__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1458_mm_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
1459{
1460 __builtin_ia32_pmovdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M);
1461}
1462
1463extern __inline __m128i
1464__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1465_mm_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
1466{
1467 return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A,
1468 (__v16qi) __O, __M);
1469}
1470
1471extern __inline __m128i
1472__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1473_mm_maskz_cvtepi32_epi8 (__mmask8 __M, __m128i __A)
1474{
1475 return (__m128i) __builtin_ia32_pmovdb128_mask ((__v4si) __A,
1476 (__v16qi)
1477 _mm_setzero_si128 (),
1478 __M);
1479}
1480
1481extern __inline __m128i
1482__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1483_mm256_cvtepi32_epi8 (__m256i __A)
1484{
1485 return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A,
1486 (__v16qi)
1487 _mm_undefined_si128 (),
1488 (__mmask8) -1);
1489}
1490
1491extern __inline __m128i
1492__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1493_mm256_mask_cvtepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
1494{
1495 return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A,
1496 (__v16qi) __O, __M);
1497}
1498
1499extern __inline void
1500__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1501_mm256_mask_cvtepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
1502{
1503 __builtin_ia32_pmovdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M);
1504}
1505
1506extern __inline __m128i
1507__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1508_mm256_maskz_cvtepi32_epi8 (__mmask8 __M, __m256i __A)
1509{
1510 return (__m128i) __builtin_ia32_pmovdb256_mask ((__v8si) __A,
1511 (__v16qi)
1512 _mm_setzero_si128 (),
1513 __M);
1514}
1515
1516extern __inline __m128i
1517__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1518_mm_cvtsepi32_epi8 (__m128i __A)
1519{
1520 return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A,
1521 (__v16qi)
1522 _mm_undefined_si128 (),
1523 (__mmask8) -1);
1524}
1525
1526extern __inline void
1527__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1528_mm_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
1529{
1530 __builtin_ia32_pmovsdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M);
1531}
1532
1533extern __inline __m128i
1534__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1535_mm_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
1536{
1537 return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A,
1538 (__v16qi) __O, __M);
1539}
1540
1541extern __inline __m128i
1542__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1543_mm_maskz_cvtsepi32_epi8 (__mmask8 __M, __m128i __A)
1544{
1545 return (__m128i) __builtin_ia32_pmovsdb128_mask ((__v4si) __A,
1546 (__v16qi)
1547 _mm_setzero_si128 (),
1548 __M);
1549}
1550
1551extern __inline __m128i
1552__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1553_mm256_cvtsepi32_epi8 (__m256i __A)
1554{
1555 return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A,
1556 (__v16qi)
1557 _mm_undefined_si128 (),
1558 (__mmask8) -1);
1559}
1560
1561extern __inline void
1562__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1563_mm256_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
1564{
1565 __builtin_ia32_pmovsdb256mem_mask ((__v16qi *) __P, (__v8si) __A, __M);
1566}
1567
1568extern __inline __m128i
1569__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1570_mm256_mask_cvtsepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
1571{
1572 return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A,
1573 (__v16qi) __O, __M);
1574}
1575
1576extern __inline __m128i
1577__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1578_mm256_maskz_cvtsepi32_epi8 (__mmask8 __M, __m256i __A)
1579{
1580 return (__m128i) __builtin_ia32_pmovsdb256_mask ((__v8si) __A,
1581 (__v16qi)
1582 _mm_setzero_si128 (),
1583 __M);
1584}
1585
1586extern __inline __m128i
1587__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1588_mm_cvtusepi32_epi8 (__m128i __A)
1589{
1590 return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A,
1591 (__v16qi)
1592 _mm_undefined_si128 (),
1593 (__mmask8) -1);
1594}
1595
1596extern __inline void
1597__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1598_mm_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
1599{
1600 __builtin_ia32_pmovusdb128mem_mask ((__v16qi *) __P, (__v4si) __A, __M);
1601}
1602
1603extern __inline __m128i
1604__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1605_mm_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
1606{
1607 return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A,
1608 (__v16qi) __O,
1609 __M);
1610}
1611
1612extern __inline __m128i
1613__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1614_mm_maskz_cvtusepi32_epi8 (__mmask8 __M, __m128i __A)
1615{
1616 return (__m128i) __builtin_ia32_pmovusdb128_mask ((__v4si) __A,
1617 (__v16qi)
1618 _mm_setzero_si128 (),
1619 __M);
1620}
1621
1622extern __inline __m128i
1623__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1624_mm256_cvtusepi32_epi8 (__m256i __A)
1625{
1626 return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A,
1627 (__v16qi)
1628 _mm_undefined_si128 (),
1629 (__mmask8) -1);
1630}
1631
1632extern __inline void
1633__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1634_mm256_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
1635{
1636 __builtin_ia32_pmovusdb256mem_mask ((__v16qi*) __P, (__v8si) __A, __M);
1637}
1638
1639extern __inline __m128i
1640__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1641_mm256_mask_cvtusepi32_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
1642{
1643 return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A,
1644 (__v16qi) __O,
1645 __M);
1646}
1647
1648extern __inline __m128i
1649__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1650_mm256_maskz_cvtusepi32_epi8 (__mmask8 __M, __m256i __A)
1651{
1652 return (__m128i) __builtin_ia32_pmovusdb256_mask ((__v8si) __A,
1653 (__v16qi)
1654 _mm_setzero_si128 (),
1655 __M);
1656}
1657
1658extern __inline __m128i
1659__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1660_mm_cvtepi32_epi16 (__m128i __A)
1661{
1662 return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A,
1663 (__v8hi)
1664 _mm_setzero_si128 (),
1665 (__mmask8) -1);
1666}
1667
1668extern __inline void
1669__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1670_mm_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
1671{
1672 __builtin_ia32_pmovdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M);
1673}
1674
1675extern __inline __m128i
1676__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1677_mm_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
1678{
1679 return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A,
1680 (__v8hi) __O, __M);
1681}
1682
1683extern __inline __m128i
1684__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1685_mm_maskz_cvtepi32_epi16 (__mmask8 __M, __m128i __A)
1686{
1687 return (__m128i) __builtin_ia32_pmovdw128_mask ((__v4si) __A,
1688 (__v8hi)
1689 _mm_setzero_si128 (),
1690 __M);
1691}
1692
1693extern __inline __m128i
1694__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1695_mm256_cvtepi32_epi16 (__m256i __A)
1696{
1697 return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A,
1698 (__v8hi)
1699 _mm_setzero_si128 (),
1700 (__mmask8) -1);
1701}
1702
1703extern __inline void
1704__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1705_mm256_mask_cvtepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
1706{
1707 __builtin_ia32_pmovdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M);
1708}
1709
1710extern __inline __m128i
1711__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1712_mm256_mask_cvtepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
1713{
1714 return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A,
1715 (__v8hi) __O, __M);
1716}
1717
1718extern __inline __m128i
1719__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1720_mm256_maskz_cvtepi32_epi16 (__mmask8 __M, __m256i __A)
1721{
1722 return (__m128i) __builtin_ia32_pmovdw256_mask ((__v8si) __A,
1723 (__v8hi)
1724 _mm_setzero_si128 (),
1725 __M);
1726}
1727
1728extern __inline __m128i
1729__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1730_mm_cvtsepi32_epi16 (__m128i __A)
1731{
1732 return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A,
1733 (__v8hi)
1734 _mm_setzero_si128 (),
1735 (__mmask8) -1);
1736}
1737
1738extern __inline void
1739__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1740_mm_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
1741{
1742 __builtin_ia32_pmovsdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M);
1743}
1744
1745extern __inline __m128i
1746__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1747_mm_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
1748{
1749 return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A,
1750 (__v8hi)__O,
1751 __M);
1752}
1753
1754extern __inline __m128i
1755__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1756_mm_maskz_cvtsepi32_epi16 (__mmask8 __M, __m128i __A)
1757{
1758 return (__m128i) __builtin_ia32_pmovsdw128_mask ((__v4si) __A,
1759 (__v8hi)
1760 _mm_setzero_si128 (),
1761 __M);
1762}
1763
1764extern __inline __m128i
1765__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1766_mm256_cvtsepi32_epi16 (__m256i __A)
1767{
1768 return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A,
1769 (__v8hi)
1770 _mm_undefined_si128 (),
1771 (__mmask8) -1);
1772}
1773
1774extern __inline void
1775__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1776_mm256_mask_cvtsepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
1777{
1778 __builtin_ia32_pmovsdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M);
1779}
1780
1781extern __inline __m128i
1782__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1783_mm256_mask_cvtsepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
1784{
1785 return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A,
1786 (__v8hi) __O, __M);
1787}
1788
1789extern __inline __m128i
1790__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1791_mm256_maskz_cvtsepi32_epi16 (__mmask8 __M, __m256i __A)
1792{
1793 return (__m128i) __builtin_ia32_pmovsdw256_mask ((__v8si) __A,
1794 (__v8hi)
1795 _mm_setzero_si128 (),
1796 __M);
1797}
1798
1799extern __inline __m128i
1800__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1801_mm_cvtusepi32_epi16 (__m128i __A)
1802{
1803 return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A,
1804 (__v8hi)
1805 _mm_undefined_si128 (),
1806 (__mmask8) -1);
1807}
1808
1809extern __inline void
1810__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1811_mm_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
1812{
1813 __builtin_ia32_pmovusdw128mem_mask ((__v8hi *) __P, (__v4si) __A, __M);
1814}
1815
1816extern __inline __m128i
1817__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1818_mm_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
1819{
1820 return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A,
1821 (__v8hi) __O, __M);
1822}
1823
1824extern __inline __m128i
1825__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1826_mm_maskz_cvtusepi32_epi16 (__mmask8 __M, __m128i __A)
1827{
1828 return (__m128i) __builtin_ia32_pmovusdw128_mask ((__v4si) __A,
1829 (__v8hi)
1830 _mm_setzero_si128 (),
1831 __M);
1832}
1833
1834extern __inline __m128i
1835__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1836_mm256_cvtusepi32_epi16 (__m256i __A)
1837{
1838 return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A,
1839 (__v8hi)
1840 _mm_undefined_si128 (),
1841 (__mmask8) -1);
1842}
1843
1844extern __inline void
1845__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1846_mm256_mask_cvtusepi32_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
1847{
1848 __builtin_ia32_pmovusdw256mem_mask ((__v8hi *) __P, (__v8si) __A, __M);
1849}
1850
1851extern __inline __m128i
1852__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1853_mm256_mask_cvtusepi32_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
1854{
1855 return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A,
1856 (__v8hi) __O, __M);
1857}
1858
1859extern __inline __m128i
1860__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1861_mm256_maskz_cvtusepi32_epi16 (__mmask8 __M, __m256i __A)
1862{
1863 return (__m128i) __builtin_ia32_pmovusdw256_mask ((__v8si) __A,
1864 (__v8hi)
1865 _mm_setzero_si128 (),
1866 __M);
1867}
1868
1869extern __inline __m128i
1870__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1871_mm_cvtepi64_epi8 (__m128i __A)
1872{
1873 return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A,
1874 (__v16qi)
1875 _mm_undefined_si128 (),
1876 (__mmask8) -1);
1877}
1878
1879extern __inline void
1880__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1881_mm_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
1882{
1883 __builtin_ia32_pmovqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M);
1884}
1885
1886extern __inline __m128i
1887__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1888_mm_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
1889{
1890 return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A,
1891 (__v16qi) __O, __M);
1892}
1893
1894extern __inline __m128i
1895__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1896_mm_maskz_cvtepi64_epi8 (__mmask8 __M, __m128i __A)
1897{
1898 return (__m128i) __builtin_ia32_pmovqb128_mask ((__v2di) __A,
1899 (__v16qi)
1900 _mm_setzero_si128 (),
1901 __M);
1902}
1903
1904extern __inline __m128i
1905__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1906_mm256_cvtepi64_epi8 (__m256i __A)
1907{
1908 return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A,
1909 (__v16qi)
1910 _mm_undefined_si128 (),
1911 (__mmask8) -1);
1912}
1913
1914extern __inline void
1915__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1916_mm256_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
1917{
1918 __builtin_ia32_pmovqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M);
1919}
1920
1921extern __inline __m128i
1922__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1923_mm256_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
1924{
1925 return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A,
1926 (__v16qi) __O, __M);
1927}
1928
1929extern __inline __m128i
1930__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1931_mm256_maskz_cvtepi64_epi8 (__mmask8 __M, __m256i __A)
1932{
1933 return (__m128i) __builtin_ia32_pmovqb256_mask ((__v4di) __A,
1934 (__v16qi)
1935 _mm_setzero_si128 (),
1936 __M);
1937}
1938
1939extern __inline __m128i
1940__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1941_mm_cvtsepi64_epi8 (__m128i __A)
1942{
1943 return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A,
1944 (__v16qi)
1945 _mm_undefined_si128 (),
1946 (__mmask8) -1);
1947}
1948
1949extern __inline void
1950__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1951_mm_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
1952{
1953 __builtin_ia32_pmovsqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M);
1954}
1955
1956extern __inline __m128i
1957__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1958_mm_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
1959{
1960 return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A,
1961 (__v16qi) __O, __M);
1962}
1963
1964extern __inline __m128i
1965__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1966_mm_maskz_cvtsepi64_epi8 (__mmask8 __M, __m128i __A)
1967{
1968 return (__m128i) __builtin_ia32_pmovsqb128_mask ((__v2di) __A,
1969 (__v16qi)
1970 _mm_setzero_si128 (),
1971 __M);
1972}
1973
1974extern __inline __m128i
1975__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1976_mm256_cvtsepi64_epi8 (__m256i __A)
1977{
1978 return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A,
1979 (__v16qi)
1980 _mm_undefined_si128 (),
1981 (__mmask8) -1);
1982}
1983
1984extern __inline void
1985__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1986_mm256_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
1987{
1988 __builtin_ia32_pmovsqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M);
1989}
1990
1991extern __inline __m128i
1992__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
1993_mm256_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
1994{
1995 return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A,
1996 (__v16qi) __O, __M);
1997}
1998
1999extern __inline __m128i
2000__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2001_mm256_maskz_cvtsepi64_epi8 (__mmask8 __M, __m256i __A)
2002{
2003 return (__m128i) __builtin_ia32_pmovsqb256_mask ((__v4di) __A,
2004 (__v16qi)
2005 _mm_setzero_si128 (),
2006 __M);
2007}
2008
2009extern __inline __m128i
2010__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2011_mm_cvtusepi64_epi8 (__m128i __A)
2012{
2013 return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A,
2014 (__v16qi)
2015 _mm_undefined_si128 (),
2016 (__mmask8) -1);
2017}
2018
2019extern __inline void
2020__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2021_mm_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m128i __A)
2022{
2023 __builtin_ia32_pmovusqb128mem_mask ((__v16qi *) __P, (__v2di) __A, __M);
2024}
2025
2026extern __inline __m128i
2027__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2028_mm_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
2029{
2030 return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A,
2031 (__v16qi) __O,
2032 __M);
2033}
2034
2035extern __inline __m128i
2036__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2037_mm_maskz_cvtusepi64_epi8 (__mmask8 __M, __m128i __A)
2038{
2039 return (__m128i) __builtin_ia32_pmovusqb128_mask ((__v2di) __A,
2040 (__v16qi)
2041 _mm_setzero_si128 (),
2042 __M);
2043}
2044
2045extern __inline __m128i
2046__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2047_mm256_cvtusepi64_epi8 (__m256i __A)
2048{
2049 return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A,
2050 (__v16qi)
2051 _mm_undefined_si128 (),
2052 (__mmask8) -1);
2053}
2054
2055extern __inline void
2056__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2057_mm256_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m256i __A)
2058{
2059 __builtin_ia32_pmovusqb256mem_mask ((__v16qi *) __P, (__v4di) __A, __M);
2060}
2061
2062extern __inline __m128i
2063__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2064_mm256_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m256i __A)
2065{
2066 return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A,
2067 (__v16qi) __O,
2068 __M);
2069}
2070
2071extern __inline __m128i
2072__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2073_mm256_maskz_cvtusepi64_epi8 (__mmask8 __M, __m256i __A)
2074{
2075 return (__m128i) __builtin_ia32_pmovusqb256_mask ((__v4di) __A,
2076 (__v16qi)
2077 _mm_setzero_si128 (),
2078 __M);
2079}
2080
2081extern __inline __m128i
2082__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2083_mm_cvtepi64_epi16 (__m128i __A)
2084{
2085 return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A,
2086 (__v8hi)
2087 _mm_undefined_si128 (),
2088 (__mmask8) -1);
2089}
2090
2091extern __inline void
2092__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2093_mm_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
2094{
2095 __builtin_ia32_pmovqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M);
2096}
2097
2098extern __inline __m128i
2099__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2100_mm_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
2101{
2102 return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A,
2103 (__v8hi)__O,
2104 __M);
2105}
2106
2107extern __inline __m128i
2108__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2109_mm_maskz_cvtepi64_epi16 (__mmask8 __M, __m128i __A)
2110{
2111 return (__m128i) __builtin_ia32_pmovqw128_mask ((__v2di) __A,
2112 (__v8hi)
2113 _mm_setzero_si128 (),
2114 __M);
2115}
2116
2117extern __inline __m128i
2118__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2119_mm256_cvtepi64_epi16 (__m256i __A)
2120{
2121 return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A,
2122 (__v8hi)
2123 _mm_undefined_si128 (),
2124 (__mmask8) -1);
2125}
2126
2127extern __inline void
2128__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2129_mm256_mask_cvtepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
2130{
2131 __builtin_ia32_pmovqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M);
2132}
2133
2134extern __inline __m128i
2135__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2136_mm256_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
2137{
2138 return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A,
2139 (__v8hi) __O, __M);
2140}
2141
2142extern __inline __m128i
2143__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2144_mm256_maskz_cvtepi64_epi16 (__mmask8 __M, __m256i __A)
2145{
2146 return (__m128i) __builtin_ia32_pmovqw256_mask ((__v4di) __A,
2147 (__v8hi)
2148 _mm_setzero_si128 (),
2149 __M);
2150}
2151
2152extern __inline __m128i
2153__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2154_mm_cvtsepi64_epi16 (__m128i __A)
2155{
2156 return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A,
2157 (__v8hi)
2158 _mm_undefined_si128 (),
2159 (__mmask8) -1);
2160}
2161
2162extern __inline void
2163__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2164_mm_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
2165{
2166 __builtin_ia32_pmovsqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M);
2167}
2168
2169extern __inline __m128i
2170__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2171_mm_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
2172{
2173 return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A,
2174 (__v8hi) __O, __M);
2175}
2176
2177extern __inline __m128i
2178__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2179_mm_maskz_cvtsepi64_epi16 (__mmask8 __M, __m128i __A)
2180{
2181 return (__m128i) __builtin_ia32_pmovsqw128_mask ((__v2di) __A,
2182 (__v8hi)
2183 _mm_setzero_si128 (),
2184 __M);
2185}
2186
2187extern __inline __m128i
2188__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2189_mm256_cvtsepi64_epi16 (__m256i __A)
2190{
2191 return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A,
2192 (__v8hi)
2193 _mm_undefined_si128 (),
2194 (__mmask8) -1);
2195}
2196
2197extern __inline void
2198__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2199_mm256_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
2200{
2201 __builtin_ia32_pmovsqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M);
2202}
2203
2204extern __inline __m128i
2205__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2206_mm256_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
2207{
2208 return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A,
2209 (__v8hi) __O, __M);
2210}
2211
2212extern __inline __m128i
2213__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2214_mm256_maskz_cvtsepi64_epi16 (__mmask8 __M, __m256i __A)
2215{
2216 return (__m128i) __builtin_ia32_pmovsqw256_mask ((__v4di) __A,
2217 (__v8hi)
2218 _mm_setzero_si128 (),
2219 __M);
2220}
2221
2222extern __inline __m128i
2223__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2224_mm_cvtusepi64_epi16 (__m128i __A)
2225{
2226 return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A,
2227 (__v8hi)
2228 _mm_undefined_si128 (),
2229 (__mmask8) -1);
2230}
2231
2232extern __inline void
2233__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2234_mm_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m128i __A)
2235{
2236 __builtin_ia32_pmovusqw128mem_mask ((__v8hi *) __P, (__v2di) __A, __M);
2237}
2238
2239extern __inline __m128i
2240__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2241_mm_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
2242{
2243 return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A,
2244 (__v8hi) __O, __M);
2245}
2246
2247extern __inline __m128i
2248__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2249_mm_maskz_cvtusepi64_epi16 (__mmask8 __M, __m128i __A)
2250{
2251 return (__m128i) __builtin_ia32_pmovusqw128_mask ((__v2di) __A,
2252 (__v8hi)
2253 _mm_setzero_si128 (),
2254 __M);
2255}
2256
2257extern __inline __m128i
2258__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2259_mm256_cvtusepi64_epi16 (__m256i __A)
2260{
2261 return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A,
2262 (__v8hi)
2263 _mm_undefined_si128 (),
2264 (__mmask8) -1);
2265}
2266
2267extern __inline void
2268__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2269_mm256_mask_cvtusepi64_storeu_epi16 (void * __P, __mmask8 __M, __m256i __A)
2270{
2271 __builtin_ia32_pmovusqw256mem_mask ((__v8hi *) __P, (__v4di) __A, __M);
2272}
2273
2274extern __inline __m128i
2275__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2276_mm256_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m256i __A)
2277{
2278 return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A,
2279 (__v8hi) __O, __M);
2280}
2281
2282extern __inline __m128i
2283__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2284_mm256_maskz_cvtusepi64_epi16 (__mmask8 __M, __m256i __A)
2285{
2286 return (__m128i) __builtin_ia32_pmovusqw256_mask ((__v4di) __A,
2287 (__v8hi)
2288 _mm_setzero_si128 (),
2289 __M);
2290}
2291
2292extern __inline __m128i
2293__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2294_mm_cvtepi64_epi32 (__m128i __A)
2295{
2296 return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A,
2297 (__v4si)
2298 _mm_undefined_si128 (),
2299 (__mmask8) -1);
2300}
2301
2302extern __inline void
2303__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2304_mm_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A)
2305{
2306 __builtin_ia32_pmovqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M);
2307}
2308
2309extern __inline __m128i
2310__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2311_mm_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
2312{
2313 return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A,
2314 (__v4si) __O, __M);
2315}
2316
2317extern __inline __m128i
2318__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2319_mm_maskz_cvtepi64_epi32 (__mmask8 __M, __m128i __A)
2320{
2321 return (__m128i) __builtin_ia32_pmovqd128_mask ((__v2di) __A,
2322 (__v4si)
2323 _mm_setzero_si128 (),
2324 __M);
2325}
2326
2327extern __inline __m128i
2328__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2329_mm256_cvtepi64_epi32 (__m256i __A)
2330{
2331 return (__m128i) __builtin_ia32_pmovqd256_mask ((__v4di) __A,
2332 (__v4si)
2333 _mm_undefined_si128 (),
2334 (__mmask8) -1);
2335}
2336
2337extern __inline void
2338__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2339_mm256_mask_cvtepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A)
2340{
2341 __builtin_ia32_pmovqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M);
2342}
2343
2344extern __inline __m128i
2345__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2346_mm256_mask_cvtepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A)
2347{
2348 return (__m128i) __builtin_ia32_pmovqd256_mask ((__v4di) __A,
2349 (__v4si) __O, __M);
2350}
2351
2352extern __inline __m128i
2353__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2354_mm256_maskz_cvtepi64_epi32 (__mmask8 __M, __m256i __A)
2355{
2356 return (__m128i) __builtin_ia32_pmovqd256_mask ((__v4di) __A,
2357 (__v4si)
2358 _mm_setzero_si128 (),
2359 __M);
2360}
2361
2362extern __inline __m128i
2363__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2364_mm_cvtsepi64_epi32 (__m128i __A)
2365{
2366 return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A,
2367 (__v4si)
2368 _mm_undefined_si128 (),
2369 (__mmask8) -1);
2370}
2371
2372extern __inline void
2373__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2374_mm_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A)
2375{
2376 __builtin_ia32_pmovsqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M);
2377}
2378
2379extern __inline __m128i
2380__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2381_mm_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
2382{
2383 return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A,
2384 (__v4si) __O, __M);
2385}
2386
2387extern __inline __m128i
2388__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2389_mm_maskz_cvtsepi64_epi32 (__mmask8 __M, __m128i __A)
2390{
2391 return (__m128i) __builtin_ia32_pmovsqd128_mask ((__v2di) __A,
2392 (__v4si)
2393 _mm_setzero_si128 (),
2394 __M);
2395}
2396
2397extern __inline __m128i
2398__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2399_mm256_cvtsepi64_epi32 (__m256i __A)
2400{
2401 return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A,
2402 (__v4si)
2403 _mm_undefined_si128 (),
2404 (__mmask8) -1);
2405}
2406
2407extern __inline void
2408__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2409_mm256_mask_cvtsepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A)
2410{
2411 __builtin_ia32_pmovsqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M);
2412}
2413
2414extern __inline __m128i
2415__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2416_mm256_mask_cvtsepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A)
2417{
2418 return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A,
2419 (__v4si)__O,
2420 __M);
2421}
2422
2423extern __inline __m128i
2424__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2425_mm256_maskz_cvtsepi64_epi32 (__mmask8 __M, __m256i __A)
2426{
2427 return (__m128i) __builtin_ia32_pmovsqd256_mask ((__v4di) __A,
2428 (__v4si)
2429 _mm_setzero_si128 (),
2430 __M);
2431}
2432
2433extern __inline __m128i
2434__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2435_mm_cvtusepi64_epi32 (__m128i __A)
2436{
2437 return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A,
2438 (__v4si)
2439 _mm_undefined_si128 (),
2440 (__mmask8) -1);
2441}
2442
2443extern __inline void
2444__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2445_mm_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m128i __A)
2446{
2447 __builtin_ia32_pmovusqd128mem_mask ((__v4si *) __P, (__v2di) __A, __M);
2448}
2449
2450extern __inline __m128i
2451__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2452_mm_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
2453{
2454 return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A,
2455 (__v4si) __O, __M);
2456}
2457
2458extern __inline __m128i
2459__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2460_mm_maskz_cvtusepi64_epi32 (__mmask8 __M, __m128i __A)
2461{
2462 return (__m128i) __builtin_ia32_pmovusqd128_mask ((__v2di) __A,
2463 (__v4si)
2464 _mm_setzero_si128 (),
2465 __M);
2466}
2467
2468extern __inline __m128i
2469__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2470_mm256_cvtusepi64_epi32 (__m256i __A)
2471{
2472 return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A,
2473 (__v4si)
2474 _mm_undefined_si128 (),
2475 (__mmask8) -1);
2476}
2477
2478extern __inline void
2479__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2480_mm256_mask_cvtusepi64_storeu_epi32 (void * __P, __mmask8 __M, __m256i __A)
2481{
2482 __builtin_ia32_pmovusqd256mem_mask ((__v4si *) __P, (__v4di) __A, __M);
2483}
2484
2485extern __inline __m128i
2486__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2487_mm256_mask_cvtusepi64_epi32 (__m128i __O, __mmask8 __M, __m256i __A)
2488{
2489 return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A,
2490 (__v4si) __O, __M);
2491}
2492
2493extern __inline __m128i
2494__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2495_mm256_maskz_cvtusepi64_epi32 (__mmask8 __M, __m256i __A)
2496{
2497 return (__m128i) __builtin_ia32_pmovusqd256_mask ((__v4di) __A,
2498 (__v4si)
2499 _mm_setzero_si128 (),
2500 __M);
2501}
2502
2503extern __inline __m256
2504__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2505_mm256_mask_broadcastss_ps (__m256 __O, __mmask8 __M, __m128 __A)
2506{
2507 return (__m256) __builtin_ia32_broadcastss256_mask ((__v4sf) __A,
2508 (__v8sf) __O,
2509 __M);
2510}
2511
2512extern __inline __m256
2513__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2514_mm256_maskz_broadcastss_ps (__mmask8 __M, __m128 __A)
2515{
2516 return (__m256) __builtin_ia32_broadcastss256_mask ((__v4sf) __A,
2517 (__v8sf)
2518 _mm256_setzero_ps (),
2519 __M);
2520}
2521
2522extern __inline __m128
2523__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2524_mm_mask_broadcastss_ps (__m128 __O, __mmask8 __M, __m128 __A)
2525{
2526 return (__m128) __builtin_ia32_broadcastss128_mask ((__v4sf) __A,
2527 (__v4sf) __O,
2528 __M);
2529}
2530
2531extern __inline __m128
2532__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2533_mm_maskz_broadcastss_ps (__mmask8 __M, __m128 __A)
2534{
2535 return (__m128) __builtin_ia32_broadcastss128_mask ((__v4sf) __A,
2536 (__v4sf)
2537 _mm_setzero_ps (),
2538 __M);
2539}
2540
2541extern __inline __m256d
2542__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2543_mm256_mask_broadcastsd_pd (__m256d __O, __mmask8 __M, __m128d __A)
2544{
2545 return (__m256d) __builtin_ia32_broadcastsd256_mask ((__v2df) __A,
2546 (__v4df) __O,
2547 __M);
2548}
2549
2550extern __inline __m256d
2551__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2552_mm256_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A)
2553{
2554 return (__m256d) __builtin_ia32_broadcastsd256_mask ((__v2df) __A,
2555 (__v4df)
2556 _mm256_setzero_pd (),
2557 __M);
2558}
2559
2560extern __inline __m256i
2561__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2562_mm256_mask_broadcastd_epi32 (__m256i __O, __mmask8 __M, __m128i __A)
2563{
2564 return (__m256i) __builtin_ia32_pbroadcastd256_mask ((__v4si) __A,
2565 (__v8si) __O,
2566 __M);
2567}
2568
2569extern __inline __m256i
2570__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2571_mm256_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A)
2572{
2573 return (__m256i) __builtin_ia32_pbroadcastd256_mask ((__v4si) __A,
2574 (__v8si)
2575 _mm256_setzero_si256 (),
2576 __M);
2577}
2578
2579extern __inline __m256i
2580__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2581_mm256_mask_set1_epi32 (__m256i __O, __mmask8 __M, int __A)
2582{
2583 return (__m256i) __builtin_ia32_pbroadcastd256_gpr_mask (__A, (__v8si) __O,
2584 __M);
2585}
2586
2587extern __inline __m256i
2588__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2589_mm256_maskz_set1_epi32 (__mmask8 __M, int __A)
2590{
2591 return (__m256i) __builtin_ia32_pbroadcastd256_gpr_mask (__A,
2592 (__v8si)
2593 _mm256_setzero_si256 (),
2594 __M);
2595}
2596
2597extern __inline __m128i
2598__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2599_mm_mask_broadcastd_epi32 (__m128i __O, __mmask8 __M, __m128i __A)
2600{
2601 return (__m128i) __builtin_ia32_pbroadcastd128_mask ((__v4si) __A,
2602 (__v4si) __O,
2603 __M);
2604}
2605
2606extern __inline __m128i
2607__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2608_mm_maskz_broadcastd_epi32 (__mmask8 __M, __m128i __A)
2609{
2610 return (__m128i) __builtin_ia32_pbroadcastd128_mask ((__v4si) __A,
2611 (__v4si)
2612 _mm_setzero_si128 (),
2613 __M);
2614}
2615
2616extern __inline __m128i
2617__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2618_mm_mask_set1_epi32 (__m128i __O, __mmask8 __M, int __A)
2619{
2620 return (__m128i) __builtin_ia32_pbroadcastd128_gpr_mask (__A, (__v4si) __O,
2621 __M);
2622}
2623
2624extern __inline __m128i
2625__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2626_mm_maskz_set1_epi32 (__mmask8 __M, int __A)
2627{
2628 return (__m128i)
2629 __builtin_ia32_pbroadcastd128_gpr_mask (__A,
2630 (__v4si) _mm_setzero_si128 (),
2631 __M);
2632}
2633
2634extern __inline __m256i
2635__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2636_mm256_mask_broadcastq_epi64 (__m256i __O, __mmask8 __M, __m128i __A)
2637{
2638 return (__m256i) __builtin_ia32_pbroadcastq256_mask ((__v2di) __A,
2639 (__v4di) __O,
2640 __M);
2641}
2642
2643extern __inline __m256i
2644__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2645_mm256_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
2646{
2647 return (__m256i) __builtin_ia32_pbroadcastq256_mask ((__v2di) __A,
2648 (__v4di)
2649 _mm256_setzero_si256 (),
2650 __M);
2651}
2652
2653extern __inline __m256i
2654__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2655_mm256_mask_set1_epi64 (__m256i __O, __mmask8 __M, long long __A)
2656{
2657 return (__m256i) __builtin_ia32_pbroadcastq256_gpr_mask (__A, (__v4di) __O,
2658 __M);
2659}
2660
2661extern __inline __m256i
2662__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2663_mm256_maskz_set1_epi64 (__mmask8 __M, long long __A)
2664{
2665 return (__m256i) __builtin_ia32_pbroadcastq256_gpr_mask (__A,
2666 (__v4di)
2667 _mm256_setzero_si256 (),
2668 __M);
2669}
2670
2671extern __inline __m128i
2672__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2673_mm_mask_broadcastq_epi64 (__m128i __O, __mmask8 __M, __m128i __A)
2674{
2675 return (__m128i) __builtin_ia32_pbroadcastq128_mask ((__v2di) __A,
2676 (__v2di) __O,
2677 __M);
2678}
2679
2680extern __inline __m128i
2681__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2682_mm_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
2683{
2684 return (__m128i) __builtin_ia32_pbroadcastq128_mask ((__v2di) __A,
2685 (__v2di)
2686 _mm_setzero_si128 (),
2687 __M);
2688}
2689
2690extern __inline __m128i
2691__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2692_mm_mask_set1_epi64 (__m128i __O, __mmask8 __M, long long __A)
2693{
2694 return (__m128i) __builtin_ia32_pbroadcastq128_gpr_mask (__A, (__v2di) __O,
2695 __M);
2696}
2697
2698extern __inline __m128i
2699__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2700_mm_maskz_set1_epi64 (__mmask8 __M, long long __A)
2701{
2702 return (__m128i)
2703 __builtin_ia32_pbroadcastq128_gpr_mask (__A,
2704 (__v2di) _mm_setzero_si128 (),
2705 __M);
2706}
2707
2708extern __inline __m256
2709__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2710_mm256_broadcast_f32x4 (__m128 __A)
2711{
2712 return (__m256) __builtin_ia32_broadcastf32x4_256_mask ((__v4sf) __A,
2713 (__v8sf)_mm256_undefined_pd (),
2714 (__mmask8) -1);
2715}
2716
2717extern __inline __m256
2718__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2719_mm256_mask_broadcast_f32x4 (__m256 __O, __mmask8 __M, __m128 __A)
2720{
2721 return (__m256) __builtin_ia32_broadcastf32x4_256_mask ((__v4sf) __A,
2722 (__v8sf) __O,
2723 __M);
2724}
2725
2726extern __inline __m256
2727__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2728_mm256_maskz_broadcast_f32x4 (__mmask8 __M, __m128 __A)
2729{
2730 return (__m256) __builtin_ia32_broadcastf32x4_256_mask ((__v4sf) __A,
2731 (__v8sf)
2732 _mm256_setzero_ps (),
2733 __M);
2734}
2735
2736extern __inline __m256i
2737__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2738_mm256_broadcast_i32x4 (__m128i __A)
2739{
2740 return (__m256i) __builtin_ia32_broadcasti32x4_256_mask ((__v4si)
2741 __A,
2742 (__v8si)_mm256_undefined_si256 (),
2743 (__mmask8) -1);
2744}
2745
2746extern __inline __m256i
2747__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2748_mm256_mask_broadcast_i32x4 (__m256i __O, __mmask8 __M, __m128i __A)
2749{
2750 return (__m256i) __builtin_ia32_broadcasti32x4_256_mask ((__v4si)
2751 __A,
2752 (__v8si)
2753 __O, __M);
2754}
2755
2756extern __inline __m256i
2757__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2758_mm256_maskz_broadcast_i32x4 (__mmask8 __M, __m128i __A)
2759{
2760 return (__m256i) __builtin_ia32_broadcasti32x4_256_mask ((__v4si)
2761 __A,
2762 (__v8si)
2763 _mm256_setzero_si256 (),
2764 __M);
2765}
2766
2767extern __inline __m256i
2768__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2769_mm256_mask_cvtepi8_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
2770{
2771 return (__m256i) __builtin_ia32_pmovsxbd256_mask ((__v16qi) __A,
2772 (__v8si) __W,
2773 (__mmask8) __U);
2774}
2775
2776extern __inline __m256i
2777__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2778_mm256_maskz_cvtepi8_epi32 (__mmask8 __U, __m128i __A)
2779{
2780 return (__m256i) __builtin_ia32_pmovsxbd256_mask ((__v16qi) __A,
2781 (__v8si)
2782 _mm256_setzero_si256 (),
2783 (__mmask8) __U);
2784}
2785
2786extern __inline __m128i
2787__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2788_mm_mask_cvtepi8_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
2789{
2790 return (__m128i) __builtin_ia32_pmovsxbd128_mask ((__v16qi) __A,
2791 (__v4si) __W,
2792 (__mmask8) __U);
2793}
2794
2795extern __inline __m128i
2796__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2797_mm_maskz_cvtepi8_epi32 (__mmask8 __U, __m128i __A)
2798{
2799 return (__m128i) __builtin_ia32_pmovsxbd128_mask ((__v16qi) __A,
2800 (__v4si)
2801 _mm_setzero_si128 (),
2802 (__mmask8) __U);
2803}
2804
2805extern __inline __m256i
2806__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2807_mm256_mask_cvtepi8_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
2808{
2809 return (__m256i) __builtin_ia32_pmovsxbq256_mask ((__v16qi) __A,
2810 (__v4di) __W,
2811 (__mmask8) __U);
2812}
2813
2814extern __inline __m256i
2815__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2816_mm256_maskz_cvtepi8_epi64 (__mmask8 __U, __m128i __A)
2817{
2818 return (__m256i) __builtin_ia32_pmovsxbq256_mask ((__v16qi) __A,
2819 (__v4di)
2820 _mm256_setzero_si256 (),
2821 (__mmask8) __U);
2822}
2823
2824extern __inline __m128i
2825__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2826_mm_mask_cvtepi8_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
2827{
2828 return (__m128i) __builtin_ia32_pmovsxbq128_mask ((__v16qi) __A,
2829 (__v2di) __W,
2830 (__mmask8) __U);
2831}
2832
2833extern __inline __m128i
2834__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2835_mm_maskz_cvtepi8_epi64 (__mmask8 __U, __m128i __A)
2836{
2837 return (__m128i) __builtin_ia32_pmovsxbq128_mask ((__v16qi) __A,
2838 (__v2di)
2839 _mm_setzero_si128 (),
2840 (__mmask8) __U);
2841}
2842
2843extern __inline __m256i
2844__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2845_mm256_mask_cvtepi16_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
2846{
2847 return (__m256i) __builtin_ia32_pmovsxwd256_mask ((__v8hi) __A,
2848 (__v8si) __W,
2849 (__mmask8) __U);
2850}
2851
2852extern __inline __m256i
2853__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2854_mm256_maskz_cvtepi16_epi32 (__mmask8 __U, __m128i __A)
2855{
2856 return (__m256i) __builtin_ia32_pmovsxwd256_mask ((__v8hi) __A,
2857 (__v8si)
2858 _mm256_setzero_si256 (),
2859 (__mmask8) __U);
2860}
2861
2862extern __inline __m128i
2863__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2864_mm_mask_cvtepi16_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
2865{
2866 return (__m128i) __builtin_ia32_pmovsxwd128_mask ((__v8hi) __A,
2867 (__v4si) __W,
2868 (__mmask8) __U);
2869}
2870
2871extern __inline __m128i
2872__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2873_mm_maskz_cvtepi16_epi32 (__mmask8 __U, __m128i __A)
2874{
2875 return (__m128i) __builtin_ia32_pmovsxwd128_mask ((__v8hi) __A,
2876 (__v4si)
2877 _mm_setzero_si128 (),
2878 (__mmask8) __U);
2879}
2880
2881extern __inline __m256i
2882__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2883_mm256_mask_cvtepi16_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
2884{
2885 return (__m256i) __builtin_ia32_pmovsxwq256_mask ((__v8hi) __A,
2886 (__v4di) __W,
2887 (__mmask8) __U);
2888}
2889
2890extern __inline __m256i
2891__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2892_mm256_maskz_cvtepi16_epi64 (__mmask8 __U, __m128i __A)
2893{
2894 return (__m256i) __builtin_ia32_pmovsxwq256_mask ((__v8hi) __A,
2895 (__v4di)
2896 _mm256_setzero_si256 (),
2897 (__mmask8) __U);
2898}
2899
2900extern __inline __m128i
2901__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2902_mm_mask_cvtepi16_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
2903{
2904 return (__m128i) __builtin_ia32_pmovsxwq128_mask ((__v8hi) __A,
2905 (__v2di) __W,
2906 (__mmask8) __U);
2907}
2908
2909extern __inline __m128i
2910__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2911_mm_maskz_cvtepi16_epi64 (__mmask8 __U, __m128i __A)
2912{
2913 return (__m128i) __builtin_ia32_pmovsxwq128_mask ((__v8hi) __A,
2914 (__v2di)
2915 _mm_setzero_si128 (),
2916 (__mmask8) __U);
2917}
2918
2919extern __inline __m256i
2920__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2921_mm256_mask_cvtepi32_epi64 (__m256i __W, __mmask8 __U, __m128i __X)
2922{
2923 return (__m256i) __builtin_ia32_pmovsxdq256_mask ((__v4si) __X,
2924 (__v4di) __W,
2925 (__mmask8) __U);
2926}
2927
2928extern __inline __m256i
2929__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2930_mm256_maskz_cvtepi32_epi64 (__mmask8 __U, __m128i __X)
2931{
2932 return (__m256i) __builtin_ia32_pmovsxdq256_mask ((__v4si) __X,
2933 (__v4di)
2934 _mm256_setzero_si256 (),
2935 (__mmask8) __U);
2936}
2937
2938extern __inline __m128i
2939__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2940_mm_mask_cvtepi32_epi64 (__m128i __W, __mmask8 __U, __m128i __X)
2941{
2942 return (__m128i) __builtin_ia32_pmovsxdq128_mask ((__v4si) __X,
2943 (__v2di) __W,
2944 (__mmask8) __U);
2945}
2946
2947extern __inline __m128i
2948__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2949_mm_maskz_cvtepi32_epi64 (__mmask8 __U, __m128i __X)
2950{
2951 return (__m128i) __builtin_ia32_pmovsxdq128_mask ((__v4si) __X,
2952 (__v2di)
2953 _mm_setzero_si128 (),
2954 (__mmask8) __U);
2955}
2956
2957extern __inline __m256i
2958__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2959_mm256_mask_cvtepu8_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
2960{
2961 return (__m256i) __builtin_ia32_pmovzxbd256_mask ((__v16qi) __A,
2962 (__v8si) __W,
2963 (__mmask8) __U);
2964}
2965
2966extern __inline __m256i
2967__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2968_mm256_maskz_cvtepu8_epi32 (__mmask8 __U, __m128i __A)
2969{
2970 return (__m256i) __builtin_ia32_pmovzxbd256_mask ((__v16qi) __A,
2971 (__v8si)
2972 _mm256_setzero_si256 (),
2973 (__mmask8) __U);
2974}
2975
2976extern __inline __m128i
2977__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2978_mm_mask_cvtepu8_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
2979{
2980 return (__m128i) __builtin_ia32_pmovzxbd128_mask ((__v16qi) __A,
2981 (__v4si) __W,
2982 (__mmask8) __U);
2983}
2984
2985extern __inline __m128i
2986__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2987_mm_maskz_cvtepu8_epi32 (__mmask8 __U, __m128i __A)
2988{
2989 return (__m128i) __builtin_ia32_pmovzxbd128_mask ((__v16qi) __A,
2990 (__v4si)
2991 _mm_setzero_si128 (),
2992 (__mmask8) __U);
2993}
2994
2995extern __inline __m256i
2996__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
2997_mm256_mask_cvtepu8_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
2998{
2999 return (__m256i) __builtin_ia32_pmovzxbq256_mask ((__v16qi) __A,
3000 (__v4di) __W,
3001 (__mmask8) __U);
3002}
3003
3004extern __inline __m256i
3005__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3006_mm256_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A)
3007{
3008 return (__m256i) __builtin_ia32_pmovzxbq256_mask ((__v16qi) __A,
3009 (__v4di)
3010 _mm256_setzero_si256 (),
3011 (__mmask8) __U);
3012}
3013
3014extern __inline __m128i
3015__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3016_mm_mask_cvtepu8_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
3017{
3018 return (__m128i) __builtin_ia32_pmovzxbq128_mask ((__v16qi) __A,
3019 (__v2di) __W,
3020 (__mmask8) __U);
3021}
3022
3023extern __inline __m128i
3024__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3025_mm_maskz_cvtepu8_epi64 (__mmask8 __U, __m128i __A)
3026{
3027 return (__m128i) __builtin_ia32_pmovzxbq128_mask ((__v16qi) __A,
3028 (__v2di)
3029 _mm_setzero_si128 (),
3030 (__mmask8) __U);
3031}
3032
3033extern __inline __m256i
3034__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3035_mm256_mask_cvtepu16_epi32 (__m256i __W, __mmask8 __U, __m128i __A)
3036{
3037 return (__m256i) __builtin_ia32_pmovzxwd256_mask ((__v8hi) __A,
3038 (__v8si) __W,
3039 (__mmask8) __U);
3040}
3041
3042extern __inline __m256i
3043__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3044_mm256_maskz_cvtepu16_epi32 (__mmask8 __U, __m128i __A)
3045{
3046 return (__m256i) __builtin_ia32_pmovzxwd256_mask ((__v8hi) __A,
3047 (__v8si)
3048 _mm256_setzero_si256 (),
3049 (__mmask8) __U);
3050}
3051
3052extern __inline __m128i
3053__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3054_mm_mask_cvtepu16_epi32 (__m128i __W, __mmask8 __U, __m128i __A)
3055{
3056 return (__m128i) __builtin_ia32_pmovzxwd128_mask ((__v8hi) __A,
3057 (__v4si) __W,
3058 (__mmask8) __U);
3059}
3060
3061extern __inline __m128i
3062__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3063_mm_maskz_cvtepu16_epi32 (__mmask8 __U, __m128i __A)
3064{
3065 return (__m128i) __builtin_ia32_pmovzxwd128_mask ((__v8hi) __A,
3066 (__v4si)
3067 _mm_setzero_si128 (),
3068 (__mmask8) __U);
3069}
3070
3071extern __inline __m256i
3072__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3073_mm256_mask_cvtepu16_epi64 (__m256i __W, __mmask8 __U, __m128i __A)
3074{
3075 return (__m256i) __builtin_ia32_pmovzxwq256_mask ((__v8hi) __A,
3076 (__v4di) __W,
3077 (__mmask8) __U);
3078}
3079
3080extern __inline __m256i
3081__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3082_mm256_maskz_cvtepu16_epi64 (__mmask8 __U, __m128i __A)
3083{
3084 return (__m256i) __builtin_ia32_pmovzxwq256_mask ((__v8hi) __A,
3085 (__v4di)
3086 _mm256_setzero_si256 (),
3087 (__mmask8) __U);
3088}
3089
3090extern __inline __m128i
3091__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3092_mm_mask_cvtepu16_epi64 (__m128i __W, __mmask8 __U, __m128i __A)
3093{
3094 return (__m128i) __builtin_ia32_pmovzxwq128_mask ((__v8hi) __A,
3095 (__v2di) __W,
3096 (__mmask8) __U);
3097}
3098
3099extern __inline __m128i
3100__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3101_mm_maskz_cvtepu16_epi64 (__mmask8 __U, __m128i __A)
3102{
3103 return (__m128i) __builtin_ia32_pmovzxwq128_mask ((__v8hi) __A,
3104 (__v2di)
3105 _mm_setzero_si128 (),
3106 (__mmask8) __U);
3107}
3108
3109extern __inline __m256i
3110__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3111_mm256_mask_cvtepu32_epi64 (__m256i __W, __mmask8 __U, __m128i __X)
3112{
3113 return (__m256i) __builtin_ia32_pmovzxdq256_mask ((__v4si) __X,
3114 (__v4di) __W,
3115 (__mmask8) __U);
3116}
3117
3118extern __inline __m256i
3119__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3120_mm256_maskz_cvtepu32_epi64 (__mmask8 __U, __m128i __X)
3121{
3122 return (__m256i) __builtin_ia32_pmovzxdq256_mask ((__v4si) __X,
3123 (__v4di)
3124 _mm256_setzero_si256 (),
3125 (__mmask8) __U);
3126}
3127
3128extern __inline __m128i
3129__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3130_mm_mask_cvtepu32_epi64 (__m128i __W, __mmask8 __U, __m128i __X)
3131{
3132 return (__m128i) __builtin_ia32_pmovzxdq128_mask ((__v4si) __X,
3133 (__v2di) __W,
3134 (__mmask8) __U);
3135}
3136
3137extern __inline __m128i
3138__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3139_mm_maskz_cvtepu32_epi64 (__mmask8 __U, __m128i __X)
3140{
3141 return (__m128i) __builtin_ia32_pmovzxdq128_mask ((__v4si) __X,
3142 (__v2di)
3143 _mm_setzero_si128 (),
3144 (__mmask8) __U);
3145}
3146
3147extern __inline __m256d
3148__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3149_mm256_rcp14_pd (__m256d __A)
3150{
3151 return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A,
3152 (__v4df)
3153 _mm256_setzero_pd (),
3154 (__mmask8) -1);
3155}
3156
3157extern __inline __m256d
3158__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3159_mm256_mask_rcp14_pd (__m256d __W, __mmask8 __U, __m256d __A)
3160{
3161 return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A,
3162 (__v4df) __W,
3163 (__mmask8) __U);
3164}
3165
3166extern __inline __m256d
3167__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3168_mm256_maskz_rcp14_pd (__mmask8 __U, __m256d __A)
3169{
3170 return (__m256d) __builtin_ia32_rcp14pd256_mask ((__v4df) __A,
3171 (__v4df)
3172 _mm256_setzero_pd (),
3173 (__mmask8) __U);
3174}
3175
3176extern __inline __m128d
3177__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3178_mm_rcp14_pd (__m128d __A)
3179{
3180 return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A,
3181 (__v2df)
3182 _mm_setzero_pd (),
3183 (__mmask8) -1);
3184}
3185
3186extern __inline __m128d
3187__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3188_mm_mask_rcp14_pd (__m128d __W, __mmask8 __U, __m128d __A)
3189{
3190 return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A,
3191 (__v2df) __W,
3192 (__mmask8) __U);
3193}
3194
3195extern __inline __m128d
3196__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3197_mm_maskz_rcp14_pd (__mmask8 __U, __m128d __A)
3198{
3199 return (__m128d) __builtin_ia32_rcp14pd128_mask ((__v2df) __A,
3200 (__v2df)
3201 _mm_setzero_pd (),
3202 (__mmask8) __U);
3203}
3204
3205extern __inline __m256
3206__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3207_mm256_rcp14_ps (__m256 __A)
3208{
3209 return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A,
3210 (__v8sf)
3211 _mm256_setzero_ps (),
3212 (__mmask8) -1);
3213}
3214
3215extern __inline __m256
3216__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3217_mm256_mask_rcp14_ps (__m256 __W, __mmask8 __U, __m256 __A)
3218{
3219 return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A,
3220 (__v8sf) __W,
3221 (__mmask8) __U);
3222}
3223
3224extern __inline __m256
3225__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3226_mm256_maskz_rcp14_ps (__mmask8 __U, __m256 __A)
3227{
3228 return (__m256) __builtin_ia32_rcp14ps256_mask ((__v8sf) __A,
3229 (__v8sf)
3230 _mm256_setzero_ps (),
3231 (__mmask8) __U);
3232}
3233
3234extern __inline __m128
3235__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3236_mm_rcp14_ps (__m128 __A)
3237{
3238 return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A,
3239 (__v4sf)
3240 _mm_setzero_ps (),
3241 (__mmask8) -1);
3242}
3243
3244extern __inline __m128
3245__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3246_mm_mask_rcp14_ps (__m128 __W, __mmask8 __U, __m128 __A)
3247{
3248 return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A,
3249 (__v4sf) __W,
3250 (__mmask8) __U);
3251}
3252
3253extern __inline __m128
3254__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3255_mm_maskz_rcp14_ps (__mmask8 __U, __m128 __A)
3256{
3257 return (__m128) __builtin_ia32_rcp14ps128_mask ((__v4sf) __A,
3258 (__v4sf)
3259 _mm_setzero_ps (),
3260 (__mmask8) __U);
3261}
3262
3263extern __inline __m256d
3264__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3265_mm256_rsqrt14_pd (__m256d __A)
3266{
3267 return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A,
3268 (__v4df)
3269 _mm256_setzero_pd (),
3270 (__mmask8) -1);
3271}
3272
3273extern __inline __m256d
3274__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3275_mm256_mask_rsqrt14_pd (__m256d __W, __mmask8 __U, __m256d __A)
3276{
3277 return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A,
3278 (__v4df) __W,
3279 (__mmask8) __U);
3280}
3281
3282extern __inline __m256d
3283__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3284_mm256_maskz_rsqrt14_pd (__mmask8 __U, __m256d __A)
3285{
3286 return (__m256d) __builtin_ia32_rsqrt14pd256_mask ((__v4df) __A,
3287 (__v4df)
3288 _mm256_setzero_pd (),
3289 (__mmask8) __U);
3290}
3291
3292extern __inline __m128d
3293__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3294_mm_rsqrt14_pd (__m128d __A)
3295{
3296 return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A,
3297 (__v2df)
3298 _mm_setzero_pd (),
3299 (__mmask8) -1);
3300}
3301
3302extern __inline __m128d
3303__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3304_mm_mask_rsqrt14_pd (__m128d __W, __mmask8 __U, __m128d __A)
3305{
3306 return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A,
3307 (__v2df) __W,
3308 (__mmask8) __U);
3309}
3310
3311extern __inline __m128d
3312__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3313_mm_maskz_rsqrt14_pd (__mmask8 __U, __m128d __A)
3314{
3315 return (__m128d) __builtin_ia32_rsqrt14pd128_mask ((__v2df) __A,
3316 (__v2df)
3317 _mm_setzero_pd (),
3318 (__mmask8) __U);
3319}
3320
3321extern __inline __m256
3322__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3323_mm256_rsqrt14_ps (__m256 __A)
3324{
3325 return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A,
3326 (__v8sf)
3327 _mm256_setzero_ps (),
3328 (__mmask8) -1);
3329}
3330
3331extern __inline __m256
3332__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3333_mm256_mask_rsqrt14_ps (__m256 __W, __mmask8 __U, __m256 __A)
3334{
3335 return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A,
3336 (__v8sf) __W,
3337 (__mmask8) __U);
3338}
3339
3340extern __inline __m256
3341__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3342_mm256_maskz_rsqrt14_ps (__mmask8 __U, __m256 __A)
3343{
3344 return (__m256) __builtin_ia32_rsqrt14ps256_mask ((__v8sf) __A,
3345 (__v8sf)
3346 _mm256_setzero_ps (),
3347 (__mmask8) __U);
3348}
3349
3350extern __inline __m128
3351__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3352_mm_rsqrt14_ps (__m128 __A)
3353{
3354 return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A,
3355 (__v4sf)
3356 _mm_setzero_ps (),
3357 (__mmask8) -1);
3358}
3359
3360extern __inline __m128
3361__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3362_mm_mask_rsqrt14_ps (__m128 __W, __mmask8 __U, __m128 __A)
3363{
3364 return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A,
3365 (__v4sf) __W,
3366 (__mmask8) __U);
3367}
3368
3369extern __inline __m128
3370__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3371_mm_maskz_rsqrt14_ps (__mmask8 __U, __m128 __A)
3372{
3373 return (__m128) __builtin_ia32_rsqrt14ps128_mask ((__v4sf) __A,
3374 (__v4sf)
3375 _mm_setzero_ps (),
3376 (__mmask8) __U);
3377}
3378
3379extern __inline __m256d
3380__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3381_mm256_mask_sqrt_pd (__m256d __W, __mmask8 __U, __m256d __A)
3382{
3383 return (__m256d) __builtin_ia32_sqrtpd256_mask ((__v4df) __A,
3384 (__v4df) __W,
3385 (__mmask8) __U);
3386}
3387
3388extern __inline __m256d
3389__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3390_mm256_maskz_sqrt_pd (__mmask8 __U, __m256d __A)
3391{
3392 return (__m256d) __builtin_ia32_sqrtpd256_mask ((__v4df) __A,
3393 (__v4df)
3394 _mm256_setzero_pd (),
3395 (__mmask8) __U);
3396}
3397
3398extern __inline __m128d
3399__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3400_mm_mask_sqrt_pd (__m128d __W, __mmask8 __U, __m128d __A)
3401{
3402 return (__m128d) __builtin_ia32_sqrtpd128_mask ((__v2df) __A,
3403 (__v2df) __W,
3404 (__mmask8) __U);
3405}
3406
3407extern __inline __m128d
3408__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3409_mm_maskz_sqrt_pd (__mmask8 __U, __m128d __A)
3410{
3411 return (__m128d) __builtin_ia32_sqrtpd128_mask ((__v2df) __A,
3412 (__v2df)
3413 _mm_setzero_pd (),
3414 (__mmask8) __U);
3415}
3416
3417extern __inline __m256
3418__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3419_mm256_mask_sqrt_ps (__m256 __W, __mmask8 __U, __m256 __A)
3420{
3421 return (__m256) __builtin_ia32_sqrtps256_mask ((__v8sf) __A,
3422 (__v8sf) __W,
3423 (__mmask8) __U);
3424}
3425
3426extern __inline __m256
3427__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3428_mm256_maskz_sqrt_ps (__mmask8 __U, __m256 __A)
3429{
3430 return (__m256) __builtin_ia32_sqrtps256_mask ((__v8sf) __A,
3431 (__v8sf)
3432 _mm256_setzero_ps (),
3433 (__mmask8) __U);
3434}
3435
3436extern __inline __m128
3437__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3438_mm_mask_sqrt_ps (__m128 __W, __mmask8 __U, __m128 __A)
3439{
3440 return (__m128) __builtin_ia32_sqrtps128_mask ((__v4sf) __A,
3441 (__v4sf) __W,
3442 (__mmask8) __U);
3443}
3444
3445extern __inline __m128
3446__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3447_mm_maskz_sqrt_ps (__mmask8 __U, __m128 __A)
3448{
3449 return (__m128) __builtin_ia32_sqrtps128_mask ((__v4sf) __A,
3450 (__v4sf)
3451 _mm_setzero_ps (),
3452 (__mmask8) __U);
3453}
3454
3455extern __inline __m256i
3456__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3457_mm256_mask_add_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
3458 __m256i __B)
3459{
3460 return (__m256i) __builtin_ia32_paddd256_mask ((__v8si) __A,
3461 (__v8si) __B,
3462 (__v8si) __W,
3463 (__mmask8) __U);
3464}
3465
3466extern __inline __m256i
3467__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3468_mm256_maskz_add_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
3469{
3470 return (__m256i) __builtin_ia32_paddd256_mask ((__v8si) __A,
3471 (__v8si) __B,
3472 (__v8si)
3473 _mm256_setzero_si256 (),
3474 (__mmask8) __U);
3475}
3476
3477extern __inline __m256i
3478__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3479_mm256_mask_add_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
3480 __m256i __B)
3481{
3482 return (__m256i) __builtin_ia32_paddq256_mask ((__v4di) __A,
3483 (__v4di) __B,
3484 (__v4di) __W,
3485 (__mmask8) __U);
3486}
3487
3488extern __inline __m256i
3489__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3490_mm256_maskz_add_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
3491{
3492 return (__m256i) __builtin_ia32_paddq256_mask ((__v4di) __A,
3493 (__v4di) __B,
3494 (__v4di)
3495 _mm256_setzero_si256 (),
3496 (__mmask8) __U);
3497}
3498
3499extern __inline __m256i
3500__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3501_mm256_mask_sub_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
3502 __m256i __B)
3503{
3504 return (__m256i) __builtin_ia32_psubd256_mask ((__v8si) __A,
3505 (__v8si) __B,
3506 (__v8si) __W,
3507 (__mmask8) __U);
3508}
3509
3510extern __inline __m256i
3511__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3512_mm256_maskz_sub_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
3513{
3514 return (__m256i) __builtin_ia32_psubd256_mask ((__v8si) __A,
3515 (__v8si) __B,
3516 (__v8si)
3517 _mm256_setzero_si256 (),
3518 (__mmask8) __U);
3519}
3520
3521extern __inline __m256i
3522__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3523_mm256_mask_sub_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
3524 __m256i __B)
3525{
3526 return (__m256i) __builtin_ia32_psubq256_mask ((__v4di) __A,
3527 (__v4di) __B,
3528 (__v4di) __W,
3529 (__mmask8) __U);
3530}
3531
3532extern __inline __m256i
3533__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3534_mm256_maskz_sub_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
3535{
3536 return (__m256i) __builtin_ia32_psubq256_mask ((__v4di) __A,
3537 (__v4di) __B,
3538 (__v4di)
3539 _mm256_setzero_si256 (),
3540 (__mmask8) __U);
3541}
3542
3543extern __inline __m128i
3544__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3545_mm_mask_add_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
3546 __m128i __B)
3547{
3548 return (__m128i) __builtin_ia32_paddd128_mask ((__v4si) __A,
3549 (__v4si) __B,
3550 (__v4si) __W,
3551 (__mmask8) __U);
3552}
3553
3554extern __inline __m128i
3555__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3556_mm_maskz_add_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
3557{
3558 return (__m128i) __builtin_ia32_paddd128_mask ((__v4si) __A,
3559 (__v4si) __B,
3560 (__v4si)
3561 _mm_setzero_si128 (),
3562 (__mmask8) __U);
3563}
3564
3565extern __inline __m128i
3566__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3567_mm_mask_add_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
3568 __m128i __B)
3569{
3570 return (__m128i) __builtin_ia32_paddq128_mask ((__v2di) __A,
3571 (__v2di) __B,
3572 (__v2di) __W,
3573 (__mmask8) __U);
3574}
3575
3576extern __inline __m128i
3577__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3578_mm_maskz_add_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
3579{
3580 return (__m128i) __builtin_ia32_paddq128_mask ((__v2di) __A,
3581 (__v2di) __B,
3582 (__v2di)
3583 _mm_setzero_si128 (),
3584 (__mmask8) __U);
3585}
3586
3587extern __inline __m128i
3588__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3589_mm_mask_sub_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
3590 __m128i __B)
3591{
3592 return (__m128i) __builtin_ia32_psubd128_mask ((__v4si) __A,
3593 (__v4si) __B,
3594 (__v4si) __W,
3595 (__mmask8) __U);
3596}
3597
3598extern __inline __m128i
3599__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3600_mm_maskz_sub_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
3601{
3602 return (__m128i) __builtin_ia32_psubd128_mask ((__v4si) __A,
3603 (__v4si) __B,
3604 (__v4si)
3605 _mm_setzero_si128 (),
3606 (__mmask8) __U);
3607}
3608
3609extern __inline __m128i
3610__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3611_mm_mask_sub_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
3612 __m128i __B)
3613{
3614 return (__m128i) __builtin_ia32_psubq128_mask ((__v2di) __A,
3615 (__v2di) __B,
3616 (__v2di) __W,
3617 (__mmask8) __U);
3618}
3619
3620extern __inline __m128i
3621__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3622_mm_maskz_sub_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
3623{
3624 return (__m128i) __builtin_ia32_psubq128_mask ((__v2di) __A,
3625 (__v2di) __B,
3626 (__v2di)
3627 _mm_setzero_si128 (),
3628 (__mmask8) __U);
3629}
3630
3631extern __inline __m256
3632__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3633_mm256_getexp_ps (__m256 __A)
3634{
3635 return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
3636 (__v8sf)
3637 _mm256_setzero_ps (),
3638 (__mmask8) -1);
3639}
3640
3641extern __inline __m256
3642__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3643_mm256_mask_getexp_ps (__m256 __W, __mmask8 __U, __m256 __A)
3644{
3645 return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
3646 (__v8sf) __W,
3647 (__mmask8) __U);
3648}
3649
3650extern __inline __m256
3651__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3652_mm256_maskz_getexp_ps (__mmask8 __U, __m256 __A)
3653{
3654 return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
3655 (__v8sf)
3656 _mm256_setzero_ps (),
3657 (__mmask8) __U);
3658}
3659
3660extern __inline __m256d
3661__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3662_mm256_getexp_pd (__m256d __A)
3663{
3664 return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
3665 (__v4df)
3666 _mm256_setzero_pd (),
3667 (__mmask8) -1);
3668}
3669
3670extern __inline __m256d
3671__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3672_mm256_mask_getexp_pd (__m256d __W, __mmask8 __U, __m256d __A)
3673{
3674 return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
3675 (__v4df) __W,
3676 (__mmask8) __U);
3677}
3678
3679extern __inline __m256d
3680__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3681_mm256_maskz_getexp_pd (__mmask8 __U, __m256d __A)
3682{
3683 return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
3684 (__v4df)
3685 _mm256_setzero_pd (),
3686 (__mmask8) __U);
3687}
3688
3689extern __inline __m128
3690__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3691_mm_getexp_ps (__m128 __A)
3692{
3693 return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
3694 (__v4sf)
3695 _mm_setzero_ps (),
3696 (__mmask8) -1);
3697}
3698
3699extern __inline __m128
3700__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3701_mm_mask_getexp_ps (__m128 __W, __mmask8 __U, __m128 __A)
3702{
3703 return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
3704 (__v4sf) __W,
3705 (__mmask8) __U);
3706}
3707
3708extern __inline __m128
3709__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3710_mm_maskz_getexp_ps (__mmask8 __U, __m128 __A)
3711{
3712 return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
3713 (__v4sf)
3714 _mm_setzero_ps (),
3715 (__mmask8) __U);
3716}
3717
3718extern __inline __m128d
3719__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3720_mm_getexp_pd (__m128d __A)
3721{
3722 return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
3723 (__v2df)
3724 _mm_setzero_pd (),
3725 (__mmask8) -1);
3726}
3727
3728extern __inline __m128d
3729__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3730_mm_mask_getexp_pd (__m128d __W, __mmask8 __U, __m128d __A)
3731{
3732 return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
3733 (__v2df) __W,
3734 (__mmask8) __U);
3735}
3736
3737extern __inline __m128d
3738__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3739_mm_maskz_getexp_pd (__mmask8 __U, __m128d __A)
3740{
3741 return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
3742 (__v2df)
3743 _mm_setzero_pd (),
3744 (__mmask8) __U);
3745}
3746
3747extern __inline __m256i
3748__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3749_mm256_mask_srl_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
3750 __m128i __B)
3751{
3752 return (__m256i) __builtin_ia32_psrld256_mask ((__v8si) __A,
3753 (__v4si) __B,
3754 (__v8si) __W,
3755 (__mmask8) __U);
3756}
3757
3758extern __inline __m256i
3759__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3760_mm256_maskz_srl_epi32 (__mmask8 __U, __m256i __A, __m128i __B)
3761{
3762 return (__m256i) __builtin_ia32_psrld256_mask ((__v8si) __A,
3763 (__v4si) __B,
3764 (__v8si)
3765 _mm256_setzero_si256 (),
3766 (__mmask8) __U);
3767}
3768
3769extern __inline __m128i
3770__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3771_mm_mask_srl_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
3772 __m128i __B)
3773{
3774 return (__m128i) __builtin_ia32_psrld128_mask ((__v4si) __A,
3775 (__v4si) __B,
3776 (__v4si) __W,
3777 (__mmask8) __U);
3778}
3779
3780extern __inline __m128i
3781__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3782_mm_maskz_srl_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
3783{
3784 return (__m128i) __builtin_ia32_psrld128_mask ((__v4si) __A,
3785 (__v4si) __B,
3786 (__v4si)
3787 _mm_setzero_si128 (),
3788 (__mmask8) __U);
3789}
3790
3791extern __inline __m256i
3792__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3793_mm256_mask_srl_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
3794 __m128i __B)
3795{
3796 return (__m256i) __builtin_ia32_psrlq256_mask ((__v4di) __A,
3797 (__v2di) __B,
3798 (__v4di) __W,
3799 (__mmask8) __U);
3800}
3801
3802extern __inline __m256i
3803__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3804_mm256_maskz_srl_epi64 (__mmask8 __U, __m256i __A, __m128i __B)
3805{
3806 return (__m256i) __builtin_ia32_psrlq256_mask ((__v4di) __A,
3807 (__v2di) __B,
3808 (__v4di)
3809 _mm256_setzero_si256 (),
3810 (__mmask8) __U);
3811}
3812
3813extern __inline __m128i
3814__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3815_mm_mask_srl_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
3816 __m128i __B)
3817{
3818 return (__m128i) __builtin_ia32_psrlq128_mask ((__v2di) __A,
3819 (__v2di) __B,
3820 (__v2di) __W,
3821 (__mmask8) __U);
3822}
3823
3824extern __inline __m128i
3825__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3826_mm_maskz_srl_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
3827{
3828 return (__m128i) __builtin_ia32_psrlq128_mask ((__v2di) __A,
3829 (__v2di) __B,
3830 (__v2di)
3831 _mm_setzero_si128 (),
3832 (__mmask8) __U);
3833}
3834
3835extern __inline __m256i
3836__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3837_mm256_mask_and_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
3838 __m256i __B)
3839{
3840 return (__m256i) __builtin_ia32_pandd256_mask ((__v8si) __A,
3841 (__v8si) __B,
3842 (__v8si) __W,
3843 (__mmask8) __U);
3844}
3845
3846extern __inline __m256i
3847__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3848_mm256_maskz_and_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
3849{
3850 return (__m256i) __builtin_ia32_pandd256_mask ((__v8si) __A,
3851 (__v8si) __B,
3852 (__v8si)
3853 _mm256_setzero_si256 (),
3854 (__mmask8) __U);
3855}
3856
3857extern __inline __m256d
3858__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3859_mm256_scalef_pd (__m256d __A, __m256d __B)
3860{
3861 return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
3862 (__v4df) __B,
3863 (__v4df)
3864 _mm256_setzero_pd (),
3865 (__mmask8) -1);
3866}
3867
3868extern __inline __m256d
3869__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3870_mm256_mask_scalef_pd (__m256d __W, __mmask8 __U, __m256d __A,
3871 __m256d __B)
3872{
3873 return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
3874 (__v4df) __B,
3875 (__v4df) __W,
3876 (__mmask8) __U);
3877}
3878
3879extern __inline __m256d
3880__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3881_mm256_maskz_scalef_pd (__mmask8 __U, __m256d __A, __m256d __B)
3882{
3883 return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
3884 (__v4df) __B,
3885 (__v4df)
3886 _mm256_setzero_pd (),
3887 (__mmask8) __U);
3888}
3889
3890extern __inline __m256
3891__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3892_mm256_scalef_ps (__m256 __A, __m256 __B)
3893{
3894 return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
3895 (__v8sf) __B,
3896 (__v8sf)
3897 _mm256_setzero_ps (),
3898 (__mmask8) -1);
3899}
3900
3901extern __inline __m256
3902__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3903_mm256_mask_scalef_ps (__m256 __W, __mmask8 __U, __m256 __A,
3904 __m256 __B)
3905{
3906 return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
3907 (__v8sf) __B,
3908 (__v8sf) __W,
3909 (__mmask8) __U);
3910}
3911
3912extern __inline __m256
3913__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3914_mm256_maskz_scalef_ps (__mmask8 __U, __m256 __A, __m256 __B)
3915{
3916 return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
3917 (__v8sf) __B,
3918 (__v8sf)
3919 _mm256_setzero_ps (),
3920 (__mmask8) __U);
3921}
3922
3923extern __inline __m128d
3924__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3925_mm_scalef_pd (__m128d __A, __m128d __B)
3926{
3927 return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
3928 (__v2df) __B,
3929 (__v2df)
3930 _mm_setzero_pd (),
3931 (__mmask8) -1);
3932}
3933
3934extern __inline __m128d
3935__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3936_mm_mask_scalef_pd (__m128d __W, __mmask8 __U, __m128d __A,
3937 __m128d __B)
3938{
3939 return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
3940 (__v2df) __B,
3941 (__v2df) __W,
3942 (__mmask8) __U);
3943}
3944
3945extern __inline __m128d
3946__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3947_mm_maskz_scalef_pd (__mmask8 __U, __m128d __A, __m128d __B)
3948{
3949 return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
3950 (__v2df) __B,
3951 (__v2df)
3952 _mm_setzero_pd (),
3953 (__mmask8) __U);
3954}
3955
3956extern __inline __m128
3957__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3958_mm_scalef_ps (__m128 __A, __m128 __B)
3959{
3960 return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
3961 (__v4sf) __B,
3962 (__v4sf)
3963 _mm_setzero_ps (),
3964 (__mmask8) -1);
3965}
3966
3967extern __inline __m128
3968__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3969_mm_mask_scalef_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
3970{
3971 return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
3972 (__v4sf) __B,
3973 (__v4sf) __W,
3974 (__mmask8) __U);
3975}
3976
3977extern __inline __m128
3978__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3979_mm_maskz_scalef_ps (__mmask8 __U, __m128 __A, __m128 __B)
3980{
3981 return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
3982 (__v4sf) __B,
3983 (__v4sf)
3984 _mm_setzero_ps (),
3985 (__mmask8) __U);
3986}
3987
3988extern __inline __m256d
3989__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
3990_mm256_mask_fmadd_pd (__m256d __A, __mmask8 __U, __m256d __B,
3991 __m256d __C)
3992{
3993 return (__m256d) __builtin_ia32_vfmaddpd256_mask ((__v4df) __A,
3994 (__v4df) __B,
3995 (__v4df) __C,
3996 (__mmask8) __U);
3997}
3998
3999extern __inline __m256d
4000__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4001_mm256_mask3_fmadd_pd (__m256d __A, __m256d __B, __m256d __C,
4002 __mmask8 __U)
4003{
4004 return (__m256d) __builtin_ia32_vfmaddpd256_mask3 ((__v4df) __A,
4005 (__v4df) __B,
4006 (__v4df) __C,
4007 (__mmask8) __U);
4008}
4009
4010extern __inline __m256d
4011__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4012_mm256_maskz_fmadd_pd (__mmask8 __U, __m256d __A, __m256d __B,
4013 __m256d __C)
4014{
4015 return (__m256d) __builtin_ia32_vfmaddpd256_maskz ((__v4df) __A,
4016 (__v4df) __B,
4017 (__v4df) __C,
4018 (__mmask8) __U);
4019}
4020
4021extern __inline __m128d
4022__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4023_mm_mask_fmadd_pd (__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
4024{
4025 return (__m128d) __builtin_ia32_vfmaddpd128_mask ((__v2df) __A,
4026 (__v2df) __B,
4027 (__v2df) __C,
4028 (__mmask8) __U);
4029}
4030
4031extern __inline __m128d
4032__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4033_mm_mask3_fmadd_pd (__m128d __A, __m128d __B, __m128d __C,
4034 __mmask8 __U)
4035{
4036 return (__m128d) __builtin_ia32_vfmaddpd128_mask3 ((__v2df) __A,
4037 (__v2df) __B,
4038 (__v2df) __C,
4039 (__mmask8) __U);
4040}
4041
4042extern __inline __m128d
4043__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4044_mm_maskz_fmadd_pd (__mmask8 __U, __m128d __A, __m128d __B,
4045 __m128d __C)
4046{
4047 return (__m128d) __builtin_ia32_vfmaddpd128_maskz ((__v2df) __A,
4048 (__v2df) __B,
4049 (__v2df) __C,
4050 (__mmask8) __U);
4051}
4052
4053extern __inline __m256
4054__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4055_mm256_mask_fmadd_ps (__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
4056{
4057 return (__m256) __builtin_ia32_vfmaddps256_mask ((__v8sf) __A,
4058 (__v8sf) __B,
4059 (__v8sf) __C,
4060 (__mmask8) __U);
4061}
4062
4063extern __inline __m256
4064__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4065_mm256_mask3_fmadd_ps (__m256 __A, __m256 __B, __m256 __C,
4066 __mmask8 __U)
4067{
4068 return (__m256) __builtin_ia32_vfmaddps256_mask3 ((__v8sf) __A,
4069 (__v8sf) __B,
4070 (__v8sf) __C,
4071 (__mmask8) __U);
4072}
4073
4074extern __inline __m256
4075__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4076_mm256_maskz_fmadd_ps (__mmask8 __U, __m256 __A, __m256 __B,
4077 __m256 __C)
4078{
4079 return (__m256) __builtin_ia32_vfmaddps256_maskz ((__v8sf) __A,
4080 (__v8sf) __B,
4081 (__v8sf) __C,
4082 (__mmask8) __U);
4083}
4084
4085extern __inline __m128
4086__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4087_mm_mask_fmadd_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
4088{
4089 return (__m128) __builtin_ia32_vfmaddps128_mask ((__v4sf) __A,
4090 (__v4sf) __B,
4091 (__v4sf) __C,
4092 (__mmask8) __U);
4093}
4094
4095extern __inline __m128
4096__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4097_mm_mask3_fmadd_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
4098{
4099 return (__m128) __builtin_ia32_vfmaddps128_mask3 ((__v4sf) __A,
4100 (__v4sf) __B,
4101 (__v4sf) __C,
4102 (__mmask8) __U);
4103}
4104
4105extern __inline __m128
4106__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4107_mm_maskz_fmadd_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
4108{
4109 return (__m128) __builtin_ia32_vfmaddps128_maskz ((__v4sf) __A,
4110 (__v4sf) __B,
4111 (__v4sf) __C,
4112 (__mmask8) __U);
4113}
4114
4115extern __inline __m256d
4116__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4117_mm256_mask_fmsub_pd (__m256d __A, __mmask8 __U, __m256d __B,
4118 __m256d __C)
4119{
4120 return (__m256d) __builtin_ia32_vfmaddpd256_mask ((__v4df) __A,
4121 (__v4df) __B,
4122 -(__v4df) __C,
4123 (__mmask8) __U);
4124}
4125
4126extern __inline __m256d
4127__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4128_mm256_mask3_fmsub_pd (__m256d __A, __m256d __B, __m256d __C,
4129 __mmask8 __U)
4130{
4131 return (__m256d) __builtin_ia32_vfmsubpd256_mask3 ((__v4df) __A,
4132 (__v4df) __B,
4133 (__v4df) __C,
4134 (__mmask8) __U);
4135}
4136
4137extern __inline __m256d
4138__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4139_mm256_maskz_fmsub_pd (__mmask8 __U, __m256d __A, __m256d __B,
4140 __m256d __C)
4141{
4142 return (__m256d) __builtin_ia32_vfmaddpd256_maskz ((__v4df) __A,
4143 (__v4df) __B,
4144 -(__v4df) __C,
4145 (__mmask8) __U);
4146}
4147
4148extern __inline __m128d
4149__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4150_mm_mask_fmsub_pd (__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
4151{
4152 return (__m128d) __builtin_ia32_vfmaddpd128_mask ((__v2df) __A,
4153 (__v2df) __B,
4154 -(__v2df) __C,
4155 (__mmask8) __U);
4156}
4157
4158extern __inline __m128d
4159__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4160_mm_mask3_fmsub_pd (__m128d __A, __m128d __B, __m128d __C,
4161 __mmask8 __U)
4162{
4163 return (__m128d) __builtin_ia32_vfmsubpd128_mask3 ((__v2df) __A,
4164 (__v2df) __B,
4165 (__v2df) __C,
4166 (__mmask8) __U);
4167}
4168
4169extern __inline __m128d
4170__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4171_mm_maskz_fmsub_pd (__mmask8 __U, __m128d __A, __m128d __B,
4172 __m128d __C)
4173{
4174 return (__m128d) __builtin_ia32_vfmaddpd128_maskz ((__v2df) __A,
4175 (__v2df) __B,
4176 -(__v2df) __C,
4177 (__mmask8) __U);
4178}
4179
4180extern __inline __m256
4181__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4182_mm256_mask_fmsub_ps (__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
4183{
4184 return (__m256) __builtin_ia32_vfmaddps256_mask ((__v8sf) __A,
4185 (__v8sf) __B,
4186 -(__v8sf) __C,
4187 (__mmask8) __U);
4188}
4189
4190extern __inline __m256
4191__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4192_mm256_mask3_fmsub_ps (__m256 __A, __m256 __B, __m256 __C,
4193 __mmask8 __U)
4194{
4195 return (__m256) __builtin_ia32_vfmsubps256_mask3 ((__v8sf) __A,
4196 (__v8sf) __B,
4197 (__v8sf) __C,
4198 (__mmask8) __U);
4199}
4200
4201extern __inline __m256
4202__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4203_mm256_maskz_fmsub_ps (__mmask8 __U, __m256 __A, __m256 __B,
4204 __m256 __C)
4205{
4206 return (__m256) __builtin_ia32_vfmaddps256_maskz ((__v8sf) __A,
4207 (__v8sf) __B,
4208 -(__v8sf) __C,
4209 (__mmask8) __U);
4210}
4211
4212extern __inline __m128
4213__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4214_mm_mask_fmsub_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
4215{
4216 return (__m128) __builtin_ia32_vfmaddps128_mask ((__v4sf) __A,
4217 (__v4sf) __B,
4218 -(__v4sf) __C,
4219 (__mmask8) __U);
4220}
4221
4222extern __inline __m128
4223__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4224_mm_mask3_fmsub_ps (__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
4225{
4226 return (__m128) __builtin_ia32_vfmsubps128_mask3 ((__v4sf) __A,
4227 (__v4sf) __B,
4228 (__v4sf) __C,
4229 (__mmask8) __U);
4230}
4231
4232extern __inline __m128
4233__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4234_mm_maskz_fmsub_ps (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
4235{
4236 return (__m128) __builtin_ia32_vfmaddps128_maskz ((__v4sf) __A,
4237 (__v4sf) __B,
4238 -(__v4sf) __C,
4239 (__mmask8) __U);
4240}
4241
4242extern __inline __m256d
4243__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4244_mm256_mask_fmaddsub_pd (__m256d __A, __mmask8 __U, __m256d __B,
4245 __m256d __C)
4246{
4247 return (__m256d) __builtin_ia32_vfmaddsubpd256_mask ((__v4df) __A,
4248 (__v4df) __B,
4249 (__v4df) __C,
4250 (__mmask8) __U);
4251}
4252
4253extern __inline __m256d
4254__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4255_mm256_mask3_fmaddsub_pd (__m256d __A, __m256d __B, __m256d __C,
4256 __mmask8 __U)
4257{
4258 return (__m256d) __builtin_ia32_vfmaddsubpd256_mask3 ((__v4df) __A,
4259 (__v4df) __B,
4260 (__v4df) __C,
4261 (__mmask8)
4262 __U);
4263}
4264
4265extern __inline __m256d
4266__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4267_mm256_maskz_fmaddsub_pd (__mmask8 __U, __m256d __A, __m256d __B,
4268 __m256d __C)
4269{
4270 return (__m256d) __builtin_ia32_vfmaddsubpd256_maskz ((__v4df) __A,
4271 (__v4df) __B,
4272 (__v4df) __C,
4273 (__mmask8)
4274 __U);
4275}
4276
4277extern __inline __m128d
4278__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4279_mm_mask_fmaddsub_pd (__m128d __A, __mmask8 __U, __m128d __B,
4280 __m128d __C)
4281{
4282 return (__m128d) __builtin_ia32_vfmaddsubpd128_mask ((__v2df) __A,
4283 (__v2df) __B,
4284 (__v2df) __C,
4285 (__mmask8) __U);
4286}
4287
4288extern __inline __m128d
4289__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4290_mm_mask3_fmaddsub_pd (__m128d __A, __m128d __B, __m128d __C,
4291 __mmask8 __U)
4292{
4293 return (__m128d) __builtin_ia32_vfmaddsubpd128_mask3 ((__v2df) __A,
4294 (__v2df) __B,
4295 (__v2df) __C,
4296 (__mmask8)
4297 __U);
4298}
4299
4300extern __inline __m128d
4301__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4302_mm_maskz_fmaddsub_pd (__mmask8 __U, __m128d __A, __m128d __B,
4303 __m128d __C)
4304{
4305 return (__m128d) __builtin_ia32_vfmaddsubpd128_maskz ((__v2df) __A,
4306 (__v2df) __B,
4307 (__v2df) __C,
4308 (__mmask8)
4309 __U);
4310}
4311
4312extern __inline __m256
4313__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4314_mm256_mask_fmaddsub_ps (__m256 __A, __mmask8 __U, __m256 __B,
4315 __m256 __C)
4316{
4317 return (__m256) __builtin_ia32_vfmaddsubps256_mask ((__v8sf) __A,
4318 (__v8sf) __B,
4319 (__v8sf) __C,
4320 (__mmask8) __U);
4321}
4322
4323extern __inline __m256
4324__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4325_mm256_mask3_fmaddsub_ps (__m256 __A, __m256 __B, __m256 __C,
4326 __mmask8 __U)
4327{
4328 return (__m256) __builtin_ia32_vfmaddsubps256_mask3 ((__v8sf) __A,
4329 (__v8sf) __B,
4330 (__v8sf) __C,
4331 (__mmask8) __U);
4332}
4333
4334extern __inline __m256
4335__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4336_mm256_maskz_fmaddsub_ps (__mmask8 __U, __m256 __A, __m256 __B,
4337 __m256 __C)
4338{
4339 return (__m256) __builtin_ia32_vfmaddsubps256_maskz ((__v8sf) __A,
4340 (__v8sf) __B,
4341 (__v8sf) __C,
4342 (__mmask8) __U);
4343}
4344
4345extern __inline __m128
4346__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4347_mm_mask_fmaddsub_ps (__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
4348{
4349 return (__m128) __builtin_ia32_vfmaddsubps128_mask ((__v4sf) __A,
4350 (__v4sf) __B,
4351 (__v4sf) __C,
4352 (__mmask8) __U);
4353}
4354
4355extern __inline __m128
4356__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
4357_mm_mask3_fmaddsub_ps (__m128 __A, __m128 __B, __m128 __C,
4358 __mmask8 __U)
4359{
4360 return (__m128) __builtin_ia32_vfmaddsubps128_mask3 ((