xref: /aosp_15_r20/prebuilts/clang-tools/linux-x86/clang-headers/avx512vldqintrin.h (revision bed243d3d9cd544cfb038bfa7be843dedc6e6bf7)
1*bed243d3SAndroid Build Coastguard Worker /*===---- avx512vldqintrin.h - AVX512VL and AVX512DQ intrinsics ------------===
2*bed243d3SAndroid Build Coastguard Worker  *
3*bed243d3SAndroid Build Coastguard Worker  * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*bed243d3SAndroid Build Coastguard Worker  * See https://llvm.org/LICENSE.txt for license information.
5*bed243d3SAndroid Build Coastguard Worker  * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*bed243d3SAndroid Build Coastguard Worker  *
7*bed243d3SAndroid Build Coastguard Worker  *===-----------------------------------------------------------------------===
8*bed243d3SAndroid Build Coastguard Worker  */
9*bed243d3SAndroid Build Coastguard Worker 
10*bed243d3SAndroid Build Coastguard Worker #ifndef __IMMINTRIN_H
11*bed243d3SAndroid Build Coastguard Worker #error "Never use <avx512vldqintrin.h> directly; include <immintrin.h> instead."
12*bed243d3SAndroid Build Coastguard Worker #endif
13*bed243d3SAndroid Build Coastguard Worker 
14*bed243d3SAndroid Build Coastguard Worker #ifndef __AVX512VLDQINTRIN_H
15*bed243d3SAndroid Build Coastguard Worker #define __AVX512VLDQINTRIN_H
16*bed243d3SAndroid Build Coastguard Worker 
17*bed243d3SAndroid Build Coastguard Worker /* Define the default attributes for the functions in this file. */
18*bed243d3SAndroid Build Coastguard Worker #define __DEFAULT_FN_ATTRS128                                                  \
19*bed243d3SAndroid Build Coastguard Worker   __attribute__((__always_inline__, __nodebug__,                               \
20*bed243d3SAndroid Build Coastguard Worker                  __target__("avx512vl,avx512dq,no-evex512"),                   \
21*bed243d3SAndroid Build Coastguard Worker                  __min_vector_width__(128)))
22*bed243d3SAndroid Build Coastguard Worker #define __DEFAULT_FN_ATTRS256                                                  \
23*bed243d3SAndroid Build Coastguard Worker   __attribute__((__always_inline__, __nodebug__,                               \
24*bed243d3SAndroid Build Coastguard Worker                  __target__("avx512vl,avx512dq,no-evex512"),                   \
25*bed243d3SAndroid Build Coastguard Worker                  __min_vector_width__(256)))
26*bed243d3SAndroid Build Coastguard Worker 
27*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mullo_epi64(__m256i __A,__m256i __B)28*bed243d3SAndroid Build Coastguard Worker _mm256_mullo_epi64 (__m256i __A, __m256i __B) {
29*bed243d3SAndroid Build Coastguard Worker   return (__m256i) ((__v4du) __A * (__v4du) __B);
30*bed243d3SAndroid Build Coastguard Worker }
31*bed243d3SAndroid Build Coastguard Worker 
32*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_mullo_epi64(__m256i __W,__mmask8 __U,__m256i __A,__m256i __B)33*bed243d3SAndroid Build Coastguard Worker _mm256_mask_mullo_epi64(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) {
34*bed243d3SAndroid Build Coastguard Worker   return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U,
35*bed243d3SAndroid Build Coastguard Worker                                              (__v4di)_mm256_mullo_epi64(__A, __B),
36*bed243d3SAndroid Build Coastguard Worker                                              (__v4di)__W);
37*bed243d3SAndroid Build Coastguard Worker }
38*bed243d3SAndroid Build Coastguard Worker 
39*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_mullo_epi64(__mmask8 __U,__m256i __A,__m256i __B)40*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_mullo_epi64(__mmask8 __U, __m256i __A, __m256i __B) {
41*bed243d3SAndroid Build Coastguard Worker   return (__m256i)__builtin_ia32_selectq_256((__mmask8)__U,
42*bed243d3SAndroid Build Coastguard Worker                                              (__v4di)_mm256_mullo_epi64(__A, __B),
43*bed243d3SAndroid Build Coastguard Worker                                              (__v4di)_mm256_setzero_si256());
44*bed243d3SAndroid Build Coastguard Worker }
45*bed243d3SAndroid Build Coastguard Worker 
46*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mullo_epi64(__m128i __A,__m128i __B)47*bed243d3SAndroid Build Coastguard Worker _mm_mullo_epi64 (__m128i __A, __m128i __B) {
48*bed243d3SAndroid Build Coastguard Worker   return (__m128i) ((__v2du) __A * (__v2du) __B);
49*bed243d3SAndroid Build Coastguard Worker }
50*bed243d3SAndroid Build Coastguard Worker 
51*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_mullo_epi64(__m128i __W,__mmask8 __U,__m128i __A,__m128i __B)52*bed243d3SAndroid Build Coastguard Worker _mm_mask_mullo_epi64(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
53*bed243d3SAndroid Build Coastguard Worker   return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U,
54*bed243d3SAndroid Build Coastguard Worker                                              (__v2di)_mm_mullo_epi64(__A, __B),
55*bed243d3SAndroid Build Coastguard Worker                                              (__v2di)__W);
56*bed243d3SAndroid Build Coastguard Worker }
57*bed243d3SAndroid Build Coastguard Worker 
58*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_mullo_epi64(__mmask8 __U,__m128i __A,__m128i __B)59*bed243d3SAndroid Build Coastguard Worker _mm_maskz_mullo_epi64(__mmask8 __U, __m128i __A, __m128i __B) {
60*bed243d3SAndroid Build Coastguard Worker   return (__m128i)__builtin_ia32_selectq_128((__mmask8)__U,
61*bed243d3SAndroid Build Coastguard Worker                                              (__v2di)_mm_mullo_epi64(__A, __B),
62*bed243d3SAndroid Build Coastguard Worker                                              (__v2di)_mm_setzero_si128());
63*bed243d3SAndroid Build Coastguard Worker }
64*bed243d3SAndroid Build Coastguard Worker 
65*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_mask_andnot_pd(__m256d __W,__mmask8 __U,__m256d __A,__m256d __B)66*bed243d3SAndroid Build Coastguard Worker _mm256_mask_andnot_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
67*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
68*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_andnot_pd(__A, __B),
69*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)__W);
70*bed243d3SAndroid Build Coastguard Worker }
71*bed243d3SAndroid Build Coastguard Worker 
72*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_maskz_andnot_pd(__mmask8 __U,__m256d __A,__m256d __B)73*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_andnot_pd(__mmask8 __U, __m256d __A, __m256d __B) {
74*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
75*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_andnot_pd(__A, __B),
76*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_setzero_pd());
77*bed243d3SAndroid Build Coastguard Worker }
78*bed243d3SAndroid Build Coastguard Worker 
79*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_mask_andnot_pd(__m128d __W,__mmask8 __U,__m128d __A,__m128d __B)80*bed243d3SAndroid Build Coastguard Worker _mm_mask_andnot_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
81*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
82*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_andnot_pd(__A, __B),
83*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)__W);
84*bed243d3SAndroid Build Coastguard Worker }
85*bed243d3SAndroid Build Coastguard Worker 
86*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_maskz_andnot_pd(__mmask8 __U,__m128d __A,__m128d __B)87*bed243d3SAndroid Build Coastguard Worker _mm_maskz_andnot_pd(__mmask8 __U, __m128d __A, __m128d __B) {
88*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
89*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_andnot_pd(__A, __B),
90*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_setzero_pd());
91*bed243d3SAndroid Build Coastguard Worker }
92*bed243d3SAndroid Build Coastguard Worker 
93*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_mask_andnot_ps(__m256 __W,__mmask8 __U,__m256 __A,__m256 __B)94*bed243d3SAndroid Build Coastguard Worker _mm256_mask_andnot_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
95*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__U,
96*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_andnot_ps(__A, __B),
97*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)__W);
98*bed243d3SAndroid Build Coastguard Worker }
99*bed243d3SAndroid Build Coastguard Worker 
100*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_maskz_andnot_ps(__mmask8 __U,__m256 __A,__m256 __B)101*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_andnot_ps(__mmask8 __U, __m256 __A, __m256 __B) {
102*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__U,
103*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_andnot_ps(__A, __B),
104*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_setzero_ps());
105*bed243d3SAndroid Build Coastguard Worker }
106*bed243d3SAndroid Build Coastguard Worker 
107*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_mask_andnot_ps(__m128 __W,__mmask8 __U,__m128 __A,__m128 __B)108*bed243d3SAndroid Build Coastguard Worker _mm_mask_andnot_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
109*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
110*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_andnot_ps(__A, __B),
111*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)__W);
112*bed243d3SAndroid Build Coastguard Worker }
113*bed243d3SAndroid Build Coastguard Worker 
114*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_maskz_andnot_ps(__mmask8 __U,__m128 __A,__m128 __B)115*bed243d3SAndroid Build Coastguard Worker _mm_maskz_andnot_ps(__mmask8 __U, __m128 __A, __m128 __B) {
116*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
117*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_andnot_ps(__A, __B),
118*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_setzero_ps());
119*bed243d3SAndroid Build Coastguard Worker }
120*bed243d3SAndroid Build Coastguard Worker 
121*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_mask_and_pd(__m256d __W,__mmask8 __U,__m256d __A,__m256d __B)122*bed243d3SAndroid Build Coastguard Worker _mm256_mask_and_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
123*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
124*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_and_pd(__A, __B),
125*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)__W);
126*bed243d3SAndroid Build Coastguard Worker }
127*bed243d3SAndroid Build Coastguard Worker 
128*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_maskz_and_pd(__mmask8 __U,__m256d __A,__m256d __B)129*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_and_pd(__mmask8 __U, __m256d __A, __m256d __B) {
130*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
131*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_and_pd(__A, __B),
132*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_setzero_pd());
133*bed243d3SAndroid Build Coastguard Worker }
134*bed243d3SAndroid Build Coastguard Worker 
135*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_mask_and_pd(__m128d __W,__mmask8 __U,__m128d __A,__m128d __B)136*bed243d3SAndroid Build Coastguard Worker _mm_mask_and_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
137*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
138*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_and_pd(__A, __B),
139*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)__W);
140*bed243d3SAndroid Build Coastguard Worker }
141*bed243d3SAndroid Build Coastguard Worker 
142*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_maskz_and_pd(__mmask8 __U,__m128d __A,__m128d __B)143*bed243d3SAndroid Build Coastguard Worker _mm_maskz_and_pd(__mmask8 __U, __m128d __A, __m128d __B) {
144*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
145*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_and_pd(__A, __B),
146*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_setzero_pd());
147*bed243d3SAndroid Build Coastguard Worker }
148*bed243d3SAndroid Build Coastguard Worker 
149*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_mask_and_ps(__m256 __W,__mmask8 __U,__m256 __A,__m256 __B)150*bed243d3SAndroid Build Coastguard Worker _mm256_mask_and_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
151*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__U,
152*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_and_ps(__A, __B),
153*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)__W);
154*bed243d3SAndroid Build Coastguard Worker }
155*bed243d3SAndroid Build Coastguard Worker 
156*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_maskz_and_ps(__mmask8 __U,__m256 __A,__m256 __B)157*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_and_ps(__mmask8 __U, __m256 __A, __m256 __B) {
158*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__U,
159*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_and_ps(__A, __B),
160*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_setzero_ps());
161*bed243d3SAndroid Build Coastguard Worker }
162*bed243d3SAndroid Build Coastguard Worker 
163*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_mask_and_ps(__m128 __W,__mmask8 __U,__m128 __A,__m128 __B)164*bed243d3SAndroid Build Coastguard Worker _mm_mask_and_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
165*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
166*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_and_ps(__A, __B),
167*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)__W);
168*bed243d3SAndroid Build Coastguard Worker }
169*bed243d3SAndroid Build Coastguard Worker 
170*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_maskz_and_ps(__mmask8 __U,__m128 __A,__m128 __B)171*bed243d3SAndroid Build Coastguard Worker _mm_maskz_and_ps(__mmask8 __U, __m128 __A, __m128 __B) {
172*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
173*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_and_ps(__A, __B),
174*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_setzero_ps());
175*bed243d3SAndroid Build Coastguard Worker }
176*bed243d3SAndroid Build Coastguard Worker 
177*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_mask_xor_pd(__m256d __W,__mmask8 __U,__m256d __A,__m256d __B)178*bed243d3SAndroid Build Coastguard Worker _mm256_mask_xor_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
179*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
180*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_xor_pd(__A, __B),
181*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)__W);
182*bed243d3SAndroid Build Coastguard Worker }
183*bed243d3SAndroid Build Coastguard Worker 
184*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_maskz_xor_pd(__mmask8 __U,__m256d __A,__m256d __B)185*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_xor_pd(__mmask8 __U, __m256d __A, __m256d __B) {
186*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
187*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_xor_pd(__A, __B),
188*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_setzero_pd());
189*bed243d3SAndroid Build Coastguard Worker }
190*bed243d3SAndroid Build Coastguard Worker 
191*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_mask_xor_pd(__m128d __W,__mmask8 __U,__m128d __A,__m128d __B)192*bed243d3SAndroid Build Coastguard Worker _mm_mask_xor_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
193*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
194*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_xor_pd(__A, __B),
195*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)__W);
196*bed243d3SAndroid Build Coastguard Worker }
197*bed243d3SAndroid Build Coastguard Worker 
198*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_maskz_xor_pd(__mmask8 __U,__m128d __A,__m128d __B)199*bed243d3SAndroid Build Coastguard Worker _mm_maskz_xor_pd (__mmask8 __U, __m128d __A, __m128d __B) {
200*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
201*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_xor_pd(__A, __B),
202*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_setzero_pd());
203*bed243d3SAndroid Build Coastguard Worker }
204*bed243d3SAndroid Build Coastguard Worker 
205*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_mask_xor_ps(__m256 __W,__mmask8 __U,__m256 __A,__m256 __B)206*bed243d3SAndroid Build Coastguard Worker _mm256_mask_xor_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
207*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__U,
208*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_xor_ps(__A, __B),
209*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)__W);
210*bed243d3SAndroid Build Coastguard Worker }
211*bed243d3SAndroid Build Coastguard Worker 
212*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_maskz_xor_ps(__mmask8 __U,__m256 __A,__m256 __B)213*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_xor_ps(__mmask8 __U, __m256 __A, __m256 __B) {
214*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__U,
215*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_xor_ps(__A, __B),
216*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_setzero_ps());
217*bed243d3SAndroid Build Coastguard Worker }
218*bed243d3SAndroid Build Coastguard Worker 
219*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_mask_xor_ps(__m128 __W,__mmask8 __U,__m128 __A,__m128 __B)220*bed243d3SAndroid Build Coastguard Worker _mm_mask_xor_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
221*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
222*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_xor_ps(__A, __B),
223*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)__W);
224*bed243d3SAndroid Build Coastguard Worker }
225*bed243d3SAndroid Build Coastguard Worker 
226*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_maskz_xor_ps(__mmask8 __U,__m128 __A,__m128 __B)227*bed243d3SAndroid Build Coastguard Worker _mm_maskz_xor_ps(__mmask8 __U, __m128 __A, __m128 __B) {
228*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
229*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_xor_ps(__A, __B),
230*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_setzero_ps());
231*bed243d3SAndroid Build Coastguard Worker }
232*bed243d3SAndroid Build Coastguard Worker 
233*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_mask_or_pd(__m256d __W,__mmask8 __U,__m256d __A,__m256d __B)234*bed243d3SAndroid Build Coastguard Worker _mm256_mask_or_pd(__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
235*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
236*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_or_pd(__A, __B),
237*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)__W);
238*bed243d3SAndroid Build Coastguard Worker }
239*bed243d3SAndroid Build Coastguard Worker 
240*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_maskz_or_pd(__mmask8 __U,__m256d __A,__m256d __B)241*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_or_pd(__mmask8 __U, __m256d __A, __m256d __B) {
242*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
243*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_or_pd(__A, __B),
244*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_setzero_pd());
245*bed243d3SAndroid Build Coastguard Worker }
246*bed243d3SAndroid Build Coastguard Worker 
247*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_mask_or_pd(__m128d __W,__mmask8 __U,__m128d __A,__m128d __B)248*bed243d3SAndroid Build Coastguard Worker _mm_mask_or_pd(__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
249*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
250*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_or_pd(__A, __B),
251*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)__W);
252*bed243d3SAndroid Build Coastguard Worker }
253*bed243d3SAndroid Build Coastguard Worker 
254*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_maskz_or_pd(__mmask8 __U,__m128d __A,__m128d __B)255*bed243d3SAndroid Build Coastguard Worker _mm_maskz_or_pd(__mmask8 __U, __m128d __A, __m128d __B) {
256*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
257*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_or_pd(__A, __B),
258*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_setzero_pd());
259*bed243d3SAndroid Build Coastguard Worker }
260*bed243d3SAndroid Build Coastguard Worker 
261*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_mask_or_ps(__m256 __W,__mmask8 __U,__m256 __A,__m256 __B)262*bed243d3SAndroid Build Coastguard Worker _mm256_mask_or_ps(__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
263*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__U,
264*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_or_ps(__A, __B),
265*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)__W);
266*bed243d3SAndroid Build Coastguard Worker }
267*bed243d3SAndroid Build Coastguard Worker 
268*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_maskz_or_ps(__mmask8 __U,__m256 __A,__m256 __B)269*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_or_ps(__mmask8 __U, __m256 __A, __m256 __B) {
270*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__U,
271*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_or_ps(__A, __B),
272*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_setzero_ps());
273*bed243d3SAndroid Build Coastguard Worker }
274*bed243d3SAndroid Build Coastguard Worker 
275*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_mask_or_ps(__m128 __W,__mmask8 __U,__m128 __A,__m128 __B)276*bed243d3SAndroid Build Coastguard Worker _mm_mask_or_ps(__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
277*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
278*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_or_ps(__A, __B),
279*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)__W);
280*bed243d3SAndroid Build Coastguard Worker }
281*bed243d3SAndroid Build Coastguard Worker 
282*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_maskz_or_ps(__mmask8 __U,__m128 __A,__m128 __B)283*bed243d3SAndroid Build Coastguard Worker _mm_maskz_or_ps(__mmask8 __U, __m128 __A, __m128 __B) {
284*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
285*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_or_ps(__A, __B),
286*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_setzero_ps());
287*bed243d3SAndroid Build Coastguard Worker }
288*bed243d3SAndroid Build Coastguard Worker 
289*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_cvtpd_epi64(__m128d __A)290*bed243d3SAndroid Build Coastguard Worker _mm_cvtpd_epi64 (__m128d __A) {
291*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,
292*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
293*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
294*bed243d3SAndroid Build Coastguard Worker }
295*bed243d3SAndroid Build Coastguard Worker 
296*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_cvtpd_epi64(__m128i __W,__mmask8 __U,__m128d __A)297*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvtpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A) {
298*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,
299*bed243d3SAndroid Build Coastguard Worker                 (__v2di) __W,
300*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
301*bed243d3SAndroid Build Coastguard Worker }
302*bed243d3SAndroid Build Coastguard Worker 
303*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_cvtpd_epi64(__mmask8 __U,__m128d __A)304*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvtpd_epi64 (__mmask8 __U, __m128d __A) {
305*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtpd2qq128_mask ((__v2df) __A,
306*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
307*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
308*bed243d3SAndroid Build Coastguard Worker }
309*bed243d3SAndroid Build Coastguard Worker 
310*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_cvtpd_epi64(__m256d __A)311*bed243d3SAndroid Build Coastguard Worker _mm256_cvtpd_epi64 (__m256d __A) {
312*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,
313*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
314*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
315*bed243d3SAndroid Build Coastguard Worker }
316*bed243d3SAndroid Build Coastguard Worker 
317*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_cvtpd_epi64(__m256i __W,__mmask8 __U,__m256d __A)318*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvtpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A) {
319*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,
320*bed243d3SAndroid Build Coastguard Worker                 (__v4di) __W,
321*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
322*bed243d3SAndroid Build Coastguard Worker }
323*bed243d3SAndroid Build Coastguard Worker 
324*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_cvtpd_epi64(__mmask8 __U,__m256d __A)325*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvtpd_epi64 (__mmask8 __U, __m256d __A) {
326*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtpd2qq256_mask ((__v4df) __A,
327*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
328*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
329*bed243d3SAndroid Build Coastguard Worker }
330*bed243d3SAndroid Build Coastguard Worker 
331*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_cvtpd_epu64(__m128d __A)332*bed243d3SAndroid Build Coastguard Worker _mm_cvtpd_epu64 (__m128d __A) {
333*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,
334*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
335*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
336*bed243d3SAndroid Build Coastguard Worker }
337*bed243d3SAndroid Build Coastguard Worker 
338*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_cvtpd_epu64(__m128i __W,__mmask8 __U,__m128d __A)339*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvtpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A) {
340*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,
341*bed243d3SAndroid Build Coastguard Worker                 (__v2di) __W,
342*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
343*bed243d3SAndroid Build Coastguard Worker }
344*bed243d3SAndroid Build Coastguard Worker 
345*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_cvtpd_epu64(__mmask8 __U,__m128d __A)346*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvtpd_epu64 (__mmask8 __U, __m128d __A) {
347*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtpd2uqq128_mask ((__v2df) __A,
348*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
349*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
350*bed243d3SAndroid Build Coastguard Worker }
351*bed243d3SAndroid Build Coastguard Worker 
352*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_cvtpd_epu64(__m256d __A)353*bed243d3SAndroid Build Coastguard Worker _mm256_cvtpd_epu64 (__m256d __A) {
354*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,
355*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
356*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
357*bed243d3SAndroid Build Coastguard Worker }
358*bed243d3SAndroid Build Coastguard Worker 
359*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_cvtpd_epu64(__m256i __W,__mmask8 __U,__m256d __A)360*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvtpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A) {
361*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,
362*bed243d3SAndroid Build Coastguard Worker                 (__v4di) __W,
363*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
364*bed243d3SAndroid Build Coastguard Worker }
365*bed243d3SAndroid Build Coastguard Worker 
366*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_cvtpd_epu64(__mmask8 __U,__m256d __A)367*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvtpd_epu64 (__mmask8 __U, __m256d __A) {
368*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtpd2uqq256_mask ((__v4df) __A,
369*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
370*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
371*bed243d3SAndroid Build Coastguard Worker }
372*bed243d3SAndroid Build Coastguard Worker 
373*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_cvtps_epi64(__m128 __A)374*bed243d3SAndroid Build Coastguard Worker _mm_cvtps_epi64 (__m128 __A) {
375*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,
376*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
377*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
378*bed243d3SAndroid Build Coastguard Worker }
379*bed243d3SAndroid Build Coastguard Worker 
380*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_cvtps_epi64(__m128i __W,__mmask8 __U,__m128 __A)381*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvtps_epi64 (__m128i __W, __mmask8 __U, __m128 __A) {
382*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,
383*bed243d3SAndroid Build Coastguard Worker                 (__v2di) __W,
384*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
385*bed243d3SAndroid Build Coastguard Worker }
386*bed243d3SAndroid Build Coastguard Worker 
387*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_cvtps_epi64(__mmask8 __U,__m128 __A)388*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A) {
389*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtps2qq128_mask ((__v4sf) __A,
390*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
391*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
392*bed243d3SAndroid Build Coastguard Worker }
393*bed243d3SAndroid Build Coastguard Worker 
394*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_cvtps_epi64(__m128 __A)395*bed243d3SAndroid Build Coastguard Worker _mm256_cvtps_epi64 (__m128 __A) {
396*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,
397*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
398*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
399*bed243d3SAndroid Build Coastguard Worker }
400*bed243d3SAndroid Build Coastguard Worker 
401*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_cvtps_epi64(__m256i __W,__mmask8 __U,__m128 __A)402*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvtps_epi64 (__m256i __W, __mmask8 __U, __m128 __A) {
403*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,
404*bed243d3SAndroid Build Coastguard Worker                 (__v4di) __W,
405*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
406*bed243d3SAndroid Build Coastguard Worker }
407*bed243d3SAndroid Build Coastguard Worker 
408*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_cvtps_epi64(__mmask8 __U,__m128 __A)409*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvtps_epi64 (__mmask8 __U, __m128 __A) {
410*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtps2qq256_mask ((__v4sf) __A,
411*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
412*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
413*bed243d3SAndroid Build Coastguard Worker }
414*bed243d3SAndroid Build Coastguard Worker 
415*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_cvtps_epu64(__m128 __A)416*bed243d3SAndroid Build Coastguard Worker _mm_cvtps_epu64 (__m128 __A) {
417*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,
418*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
419*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
420*bed243d3SAndroid Build Coastguard Worker }
421*bed243d3SAndroid Build Coastguard Worker 
422*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_cvtps_epu64(__m128i __W,__mmask8 __U,__m128 __A)423*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvtps_epu64 (__m128i __W, __mmask8 __U, __m128 __A) {
424*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,
425*bed243d3SAndroid Build Coastguard Worker                 (__v2di) __W,
426*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
427*bed243d3SAndroid Build Coastguard Worker }
428*bed243d3SAndroid Build Coastguard Worker 
429*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_cvtps_epu64(__mmask8 __U,__m128 __A)430*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A) {
431*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtps2uqq128_mask ((__v4sf) __A,
432*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
433*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
434*bed243d3SAndroid Build Coastguard Worker }
435*bed243d3SAndroid Build Coastguard Worker 
436*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_cvtps_epu64(__m128 __A)437*bed243d3SAndroid Build Coastguard Worker _mm256_cvtps_epu64 (__m128 __A) {
438*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,
439*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
440*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
441*bed243d3SAndroid Build Coastguard Worker }
442*bed243d3SAndroid Build Coastguard Worker 
443*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_cvtps_epu64(__m256i __W,__mmask8 __U,__m128 __A)444*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvtps_epu64 (__m256i __W, __mmask8 __U, __m128 __A) {
445*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,
446*bed243d3SAndroid Build Coastguard Worker                 (__v4di) __W,
447*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
448*bed243d3SAndroid Build Coastguard Worker }
449*bed243d3SAndroid Build Coastguard Worker 
450*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_cvtps_epu64(__mmask8 __U,__m128 __A)451*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvtps_epu64 (__mmask8 __U, __m128 __A) {
452*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtps2uqq256_mask ((__v4sf) __A,
453*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
454*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
455*bed243d3SAndroid Build Coastguard Worker }
456*bed243d3SAndroid Build Coastguard Worker 
457*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_cvtepi64_pd(__m128i __A)458*bed243d3SAndroid Build Coastguard Worker _mm_cvtepi64_pd (__m128i __A) {
459*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_convertvector((__v2di)__A, __v2df);
460*bed243d3SAndroid Build Coastguard Worker }
461*bed243d3SAndroid Build Coastguard Worker 
462*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_mask_cvtepi64_pd(__m128d __W,__mmask8 __U,__m128i __A)463*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvtepi64_pd (__m128d __W, __mmask8 __U, __m128i __A) {
464*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
465*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_cvtepi64_pd(__A),
466*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)__W);
467*bed243d3SAndroid Build Coastguard Worker }
468*bed243d3SAndroid Build Coastguard Worker 
469*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_maskz_cvtepi64_pd(__mmask8 __U,__m128i __A)470*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvtepi64_pd (__mmask8 __U, __m128i __A) {
471*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
472*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_cvtepi64_pd(__A),
473*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_setzero_pd());
474*bed243d3SAndroid Build Coastguard Worker }
475*bed243d3SAndroid Build Coastguard Worker 
476*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_cvtepi64_pd(__m256i __A)477*bed243d3SAndroid Build Coastguard Worker _mm256_cvtepi64_pd (__m256i __A) {
478*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_convertvector((__v4di)__A, __v4df);
479*bed243d3SAndroid Build Coastguard Worker }
480*bed243d3SAndroid Build Coastguard Worker 
481*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_mask_cvtepi64_pd(__m256d __W,__mmask8 __U,__m256i __A)482*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvtepi64_pd (__m256d __W, __mmask8 __U, __m256i __A) {
483*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
484*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_cvtepi64_pd(__A),
485*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)__W);
486*bed243d3SAndroid Build Coastguard Worker }
487*bed243d3SAndroid Build Coastguard Worker 
488*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_maskz_cvtepi64_pd(__mmask8 __U,__m256i __A)489*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvtepi64_pd (__mmask8 __U, __m256i __A) {
490*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
491*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_cvtepi64_pd(__A),
492*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_setzero_pd());
493*bed243d3SAndroid Build Coastguard Worker }
494*bed243d3SAndroid Build Coastguard Worker 
495*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_cvtepi64_ps(__m128i __A)496*bed243d3SAndroid Build Coastguard Worker _mm_cvtepi64_ps (__m128i __A) {
497*bed243d3SAndroid Build Coastguard Worker   return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,
498*bed243d3SAndroid Build Coastguard Worker                 (__v4sf) _mm_setzero_ps(),
499*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
500*bed243d3SAndroid Build Coastguard Worker }
501*bed243d3SAndroid Build Coastguard Worker 
502*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_mask_cvtepi64_ps(__m128 __W,__mmask8 __U,__m128i __A)503*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m128i __A) {
504*bed243d3SAndroid Build Coastguard Worker   return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,
505*bed243d3SAndroid Build Coastguard Worker                 (__v4sf) __W,
506*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
507*bed243d3SAndroid Build Coastguard Worker }
508*bed243d3SAndroid Build Coastguard Worker 
509*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_maskz_cvtepi64_ps(__mmask8 __U,__m128i __A)510*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvtepi64_ps (__mmask8 __U, __m128i __A) {
511*bed243d3SAndroid Build Coastguard Worker   return (__m128) __builtin_ia32_cvtqq2ps128_mask ((__v2di) __A,
512*bed243d3SAndroid Build Coastguard Worker                 (__v4sf) _mm_setzero_ps(),
513*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
514*bed243d3SAndroid Build Coastguard Worker }
515*bed243d3SAndroid Build Coastguard Worker 
516*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS256
_mm256_cvtepi64_ps(__m256i __A)517*bed243d3SAndroid Build Coastguard Worker _mm256_cvtepi64_ps (__m256i __A) {
518*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_convertvector((__v4di)__A, __v4sf);
519*bed243d3SAndroid Build Coastguard Worker }
520*bed243d3SAndroid Build Coastguard Worker 
521*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS256
_mm256_mask_cvtepi64_ps(__m128 __W,__mmask8 __U,__m256i __A)522*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvtepi64_ps (__m128 __W, __mmask8 __U, __m256i __A) {
523*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
524*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm256_cvtepi64_ps(__A),
525*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)__W);
526*bed243d3SAndroid Build Coastguard Worker }
527*bed243d3SAndroid Build Coastguard Worker 
528*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS256
_mm256_maskz_cvtepi64_ps(__mmask8 __U,__m256i __A)529*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvtepi64_ps (__mmask8 __U, __m256i __A) {
530*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
531*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm256_cvtepi64_ps(__A),
532*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_setzero_ps());
533*bed243d3SAndroid Build Coastguard Worker }
534*bed243d3SAndroid Build Coastguard Worker 
535*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_cvttpd_epi64(__m128d __A)536*bed243d3SAndroid Build Coastguard Worker _mm_cvttpd_epi64 (__m128d __A) {
537*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,
538*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
539*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
540*bed243d3SAndroid Build Coastguard Worker }
541*bed243d3SAndroid Build Coastguard Worker 
542*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_cvttpd_epi64(__m128i __W,__mmask8 __U,__m128d __A)543*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvttpd_epi64 (__m128i __W, __mmask8 __U, __m128d __A) {
544*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,
545*bed243d3SAndroid Build Coastguard Worker                 (__v2di) __W,
546*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
547*bed243d3SAndroid Build Coastguard Worker }
548*bed243d3SAndroid Build Coastguard Worker 
549*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_cvttpd_epi64(__mmask8 __U,__m128d __A)550*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvttpd_epi64 (__mmask8 __U, __m128d __A) {
551*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttpd2qq128_mask ((__v2df) __A,
552*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
553*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
554*bed243d3SAndroid Build Coastguard Worker }
555*bed243d3SAndroid Build Coastguard Worker 
556*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_cvttpd_epi64(__m256d __A)557*bed243d3SAndroid Build Coastguard Worker _mm256_cvttpd_epi64 (__m256d __A) {
558*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,
559*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
560*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
561*bed243d3SAndroid Build Coastguard Worker }
562*bed243d3SAndroid Build Coastguard Worker 
563*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_cvttpd_epi64(__m256i __W,__mmask8 __U,__m256d __A)564*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvttpd_epi64 (__m256i __W, __mmask8 __U, __m256d __A) {
565*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,
566*bed243d3SAndroid Build Coastguard Worker                 (__v4di) __W,
567*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
568*bed243d3SAndroid Build Coastguard Worker }
569*bed243d3SAndroid Build Coastguard Worker 
570*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_cvttpd_epi64(__mmask8 __U,__m256d __A)571*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvttpd_epi64 (__mmask8 __U, __m256d __A) {
572*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttpd2qq256_mask ((__v4df) __A,
573*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
574*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
575*bed243d3SAndroid Build Coastguard Worker }
576*bed243d3SAndroid Build Coastguard Worker 
577*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_cvttpd_epu64(__m128d __A)578*bed243d3SAndroid Build Coastguard Worker _mm_cvttpd_epu64 (__m128d __A) {
579*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,
580*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
581*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
582*bed243d3SAndroid Build Coastguard Worker }
583*bed243d3SAndroid Build Coastguard Worker 
584*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_cvttpd_epu64(__m128i __W,__mmask8 __U,__m128d __A)585*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvttpd_epu64 (__m128i __W, __mmask8 __U, __m128d __A) {
586*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,
587*bed243d3SAndroid Build Coastguard Worker                 (__v2di) __W,
588*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
589*bed243d3SAndroid Build Coastguard Worker }
590*bed243d3SAndroid Build Coastguard Worker 
591*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_cvttpd_epu64(__mmask8 __U,__m128d __A)592*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvttpd_epu64 (__mmask8 __U, __m128d __A) {
593*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttpd2uqq128_mask ((__v2df) __A,
594*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
595*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
596*bed243d3SAndroid Build Coastguard Worker }
597*bed243d3SAndroid Build Coastguard Worker 
598*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_cvttpd_epu64(__m256d __A)599*bed243d3SAndroid Build Coastguard Worker _mm256_cvttpd_epu64 (__m256d __A) {
600*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,
601*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
602*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
603*bed243d3SAndroid Build Coastguard Worker }
604*bed243d3SAndroid Build Coastguard Worker 
605*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_cvttpd_epu64(__m256i __W,__mmask8 __U,__m256d __A)606*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvttpd_epu64 (__m256i __W, __mmask8 __U, __m256d __A) {
607*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,
608*bed243d3SAndroid Build Coastguard Worker                 (__v4di) __W,
609*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
610*bed243d3SAndroid Build Coastguard Worker }
611*bed243d3SAndroid Build Coastguard Worker 
612*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_cvttpd_epu64(__mmask8 __U,__m256d __A)613*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvttpd_epu64 (__mmask8 __U, __m256d __A) {
614*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttpd2uqq256_mask ((__v4df) __A,
615*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
616*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
617*bed243d3SAndroid Build Coastguard Worker }
618*bed243d3SAndroid Build Coastguard Worker 
619*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_cvttps_epi64(__m128 __A)620*bed243d3SAndroid Build Coastguard Worker _mm_cvttps_epi64 (__m128 __A) {
621*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,
622*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
623*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
624*bed243d3SAndroid Build Coastguard Worker }
625*bed243d3SAndroid Build Coastguard Worker 
626*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_cvttps_epi64(__m128i __W,__mmask8 __U,__m128 __A)627*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvttps_epi64 (__m128i __W, __mmask8 __U, __m128 __A) {
628*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,
629*bed243d3SAndroid Build Coastguard Worker                 (__v2di) __W,
630*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
631*bed243d3SAndroid Build Coastguard Worker }
632*bed243d3SAndroid Build Coastguard Worker 
633*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_cvttps_epi64(__mmask8 __U,__m128 __A)634*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A) {
635*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttps2qq128_mask ((__v4sf) __A,
636*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
637*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
638*bed243d3SAndroid Build Coastguard Worker }
639*bed243d3SAndroid Build Coastguard Worker 
640*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_cvttps_epi64(__m128 __A)641*bed243d3SAndroid Build Coastguard Worker _mm256_cvttps_epi64 (__m128 __A) {
642*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,
643*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
644*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
645*bed243d3SAndroid Build Coastguard Worker }
646*bed243d3SAndroid Build Coastguard Worker 
647*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_cvttps_epi64(__m256i __W,__mmask8 __U,__m128 __A)648*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvttps_epi64 (__m256i __W, __mmask8 __U, __m128 __A) {
649*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,
650*bed243d3SAndroid Build Coastguard Worker                 (__v4di) __W,
651*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
652*bed243d3SAndroid Build Coastguard Worker }
653*bed243d3SAndroid Build Coastguard Worker 
654*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_cvttps_epi64(__mmask8 __U,__m128 __A)655*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvttps_epi64 (__mmask8 __U, __m128 __A) {
656*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttps2qq256_mask ((__v4sf) __A,
657*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
658*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
659*bed243d3SAndroid Build Coastguard Worker }
660*bed243d3SAndroid Build Coastguard Worker 
661*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_cvttps_epu64(__m128 __A)662*bed243d3SAndroid Build Coastguard Worker _mm_cvttps_epu64 (__m128 __A) {
663*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,
664*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
665*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
666*bed243d3SAndroid Build Coastguard Worker }
667*bed243d3SAndroid Build Coastguard Worker 
668*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_cvttps_epu64(__m128i __W,__mmask8 __U,__m128 __A)669*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvttps_epu64 (__m128i __W, __mmask8 __U, __m128 __A) {
670*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,
671*bed243d3SAndroid Build Coastguard Worker                 (__v2di) __W,
672*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
673*bed243d3SAndroid Build Coastguard Worker }
674*bed243d3SAndroid Build Coastguard Worker 
675*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_cvttps_epu64(__mmask8 __U,__m128 __A)676*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A) {
677*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvttps2uqq128_mask ((__v4sf) __A,
678*bed243d3SAndroid Build Coastguard Worker                 (__v2di) _mm_setzero_si128(),
679*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
680*bed243d3SAndroid Build Coastguard Worker }
681*bed243d3SAndroid Build Coastguard Worker 
682*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_cvttps_epu64(__m128 __A)683*bed243d3SAndroid Build Coastguard Worker _mm256_cvttps_epu64 (__m128 __A) {
684*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,
685*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
686*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
687*bed243d3SAndroid Build Coastguard Worker }
688*bed243d3SAndroid Build Coastguard Worker 
689*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_cvttps_epu64(__m256i __W,__mmask8 __U,__m128 __A)690*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvttps_epu64 (__m256i __W, __mmask8 __U, __m128 __A) {
691*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,
692*bed243d3SAndroid Build Coastguard Worker                 (__v4di) __W,
693*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
694*bed243d3SAndroid Build Coastguard Worker }
695*bed243d3SAndroid Build Coastguard Worker 
696*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_cvttps_epu64(__mmask8 __U,__m128 __A)697*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvttps_epu64 (__mmask8 __U, __m128 __A) {
698*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvttps2uqq256_mask ((__v4sf) __A,
699*bed243d3SAndroid Build Coastguard Worker                 (__v4di) _mm256_setzero_si256(),
700*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
701*bed243d3SAndroid Build Coastguard Worker }
702*bed243d3SAndroid Build Coastguard Worker 
703*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_cvtepu64_pd(__m128i __A)704*bed243d3SAndroid Build Coastguard Worker _mm_cvtepu64_pd (__m128i __A) {
705*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_convertvector((__v2du)__A, __v2df);
706*bed243d3SAndroid Build Coastguard Worker }
707*bed243d3SAndroid Build Coastguard Worker 
708*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_mask_cvtepu64_pd(__m128d __W,__mmask8 __U,__m128i __A)709*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvtepu64_pd (__m128d __W, __mmask8 __U, __m128i __A) {
710*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
711*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_cvtepu64_pd(__A),
712*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)__W);
713*bed243d3SAndroid Build Coastguard Worker }
714*bed243d3SAndroid Build Coastguard Worker 
715*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128d __DEFAULT_FN_ATTRS128
_mm_maskz_cvtepu64_pd(__mmask8 __U,__m128i __A)716*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvtepu64_pd (__mmask8 __U, __m128i __A) {
717*bed243d3SAndroid Build Coastguard Worker   return (__m128d)__builtin_ia32_selectpd_128((__mmask8)__U,
718*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_cvtepu64_pd(__A),
719*bed243d3SAndroid Build Coastguard Worker                                               (__v2df)_mm_setzero_pd());
720*bed243d3SAndroid Build Coastguard Worker }
721*bed243d3SAndroid Build Coastguard Worker 
722*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_cvtepu64_pd(__m256i __A)723*bed243d3SAndroid Build Coastguard Worker _mm256_cvtepu64_pd (__m256i __A) {
724*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_convertvector((__v4du)__A, __v4df);
725*bed243d3SAndroid Build Coastguard Worker }
726*bed243d3SAndroid Build Coastguard Worker 
727*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_mask_cvtepu64_pd(__m256d __W,__mmask8 __U,__m256i __A)728*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvtepu64_pd (__m256d __W, __mmask8 __U, __m256i __A) {
729*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
730*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_cvtepu64_pd(__A),
731*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)__W);
732*bed243d3SAndroid Build Coastguard Worker }
733*bed243d3SAndroid Build Coastguard Worker 
734*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_maskz_cvtepu64_pd(__mmask8 __U,__m256i __A)735*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvtepu64_pd (__mmask8 __U, __m256i __A) {
736*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__U,
737*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_cvtepu64_pd(__A),
738*bed243d3SAndroid Build Coastguard Worker                                               (__v4df)_mm256_setzero_pd());
739*bed243d3SAndroid Build Coastguard Worker }
740*bed243d3SAndroid Build Coastguard Worker 
741*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_cvtepu64_ps(__m128i __A)742*bed243d3SAndroid Build Coastguard Worker _mm_cvtepu64_ps (__m128i __A) {
743*bed243d3SAndroid Build Coastguard Worker   return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,
744*bed243d3SAndroid Build Coastguard Worker                 (__v4sf) _mm_setzero_ps(),
745*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) -1);
746*bed243d3SAndroid Build Coastguard Worker }
747*bed243d3SAndroid Build Coastguard Worker 
748*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_mask_cvtepu64_ps(__m128 __W,__mmask8 __U,__m128i __A)749*bed243d3SAndroid Build Coastguard Worker _mm_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m128i __A) {
750*bed243d3SAndroid Build Coastguard Worker   return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,
751*bed243d3SAndroid Build Coastguard Worker                 (__v4sf) __W,
752*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
753*bed243d3SAndroid Build Coastguard Worker }
754*bed243d3SAndroid Build Coastguard Worker 
755*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS128
_mm_maskz_cvtepu64_ps(__mmask8 __U,__m128i __A)756*bed243d3SAndroid Build Coastguard Worker _mm_maskz_cvtepu64_ps (__mmask8 __U, __m128i __A) {
757*bed243d3SAndroid Build Coastguard Worker   return (__m128) __builtin_ia32_cvtuqq2ps128_mask ((__v2di) __A,
758*bed243d3SAndroid Build Coastguard Worker                 (__v4sf) _mm_setzero_ps(),
759*bed243d3SAndroid Build Coastguard Worker                 (__mmask8) __U);
760*bed243d3SAndroid Build Coastguard Worker }
761*bed243d3SAndroid Build Coastguard Worker 
762*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS256
_mm256_cvtepu64_ps(__m256i __A)763*bed243d3SAndroid Build Coastguard Worker _mm256_cvtepu64_ps (__m256i __A) {
764*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_convertvector((__v4du)__A, __v4sf);
765*bed243d3SAndroid Build Coastguard Worker }
766*bed243d3SAndroid Build Coastguard Worker 
767*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS256
_mm256_mask_cvtepu64_ps(__m128 __W,__mmask8 __U,__m256i __A)768*bed243d3SAndroid Build Coastguard Worker _mm256_mask_cvtepu64_ps (__m128 __W, __mmask8 __U, __m256i __A) {
769*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
770*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm256_cvtepu64_ps(__A),
771*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)__W);
772*bed243d3SAndroid Build Coastguard Worker }
773*bed243d3SAndroid Build Coastguard Worker 
774*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128 __DEFAULT_FN_ATTRS256
_mm256_maskz_cvtepu64_ps(__mmask8 __U,__m256i __A)775*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_cvtepu64_ps (__mmask8 __U, __m256i __A) {
776*bed243d3SAndroid Build Coastguard Worker   return (__m128)__builtin_ia32_selectps_128((__mmask8)__U,
777*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm256_cvtepu64_ps(__A),
778*bed243d3SAndroid Build Coastguard Worker                                              (__v4sf)_mm_setzero_ps());
779*bed243d3SAndroid Build Coastguard Worker }
780*bed243d3SAndroid Build Coastguard Worker 
781*bed243d3SAndroid Build Coastguard Worker #define _mm_range_pd(A, B, C) \
782*bed243d3SAndroid Build Coastguard Worker   ((__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \
783*bed243d3SAndroid Build Coastguard Worker                                            (__v2df)(__m128d)(B), (int)(C), \
784*bed243d3SAndroid Build Coastguard Worker                                            (__v2df)_mm_setzero_pd(), \
785*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)-1))
786*bed243d3SAndroid Build Coastguard Worker 
787*bed243d3SAndroid Build Coastguard Worker #define _mm_mask_range_pd(W, U, A, B, C) \
788*bed243d3SAndroid Build Coastguard Worker   ((__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \
789*bed243d3SAndroid Build Coastguard Worker                                            (__v2df)(__m128d)(B), (int)(C), \
790*bed243d3SAndroid Build Coastguard Worker                                            (__v2df)(__m128d)(W), \
791*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)(U)))
792*bed243d3SAndroid Build Coastguard Worker 
793*bed243d3SAndroid Build Coastguard Worker #define _mm_maskz_range_pd(U, A, B, C) \
794*bed243d3SAndroid Build Coastguard Worker   ((__m128d)__builtin_ia32_rangepd128_mask((__v2df)(__m128d)(A), \
795*bed243d3SAndroid Build Coastguard Worker                                            (__v2df)(__m128d)(B), (int)(C), \
796*bed243d3SAndroid Build Coastguard Worker                                            (__v2df)_mm_setzero_pd(), \
797*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)(U)))
798*bed243d3SAndroid Build Coastguard Worker 
799*bed243d3SAndroid Build Coastguard Worker #define _mm256_range_pd(A, B, C) \
800*bed243d3SAndroid Build Coastguard Worker   ((__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \
801*bed243d3SAndroid Build Coastguard Worker                                            (__v4df)(__m256d)(B), (int)(C), \
802*bed243d3SAndroid Build Coastguard Worker                                            (__v4df)_mm256_setzero_pd(), \
803*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)-1))
804*bed243d3SAndroid Build Coastguard Worker 
805*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_range_pd(W, U, A, B, C) \
806*bed243d3SAndroid Build Coastguard Worker   ((__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \
807*bed243d3SAndroid Build Coastguard Worker                                            (__v4df)(__m256d)(B), (int)(C), \
808*bed243d3SAndroid Build Coastguard Worker                                            (__v4df)(__m256d)(W), \
809*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)(U)))
810*bed243d3SAndroid Build Coastguard Worker 
811*bed243d3SAndroid Build Coastguard Worker #define _mm256_maskz_range_pd(U, A, B, C) \
812*bed243d3SAndroid Build Coastguard Worker   ((__m256d)__builtin_ia32_rangepd256_mask((__v4df)(__m256d)(A), \
813*bed243d3SAndroid Build Coastguard Worker                                            (__v4df)(__m256d)(B), (int)(C), \
814*bed243d3SAndroid Build Coastguard Worker                                            (__v4df)_mm256_setzero_pd(), \
815*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)(U)))
816*bed243d3SAndroid Build Coastguard Worker 
817*bed243d3SAndroid Build Coastguard Worker #define _mm_range_ps(A, B, C) \
818*bed243d3SAndroid Build Coastguard Worker   ((__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \
819*bed243d3SAndroid Build Coastguard Worker                                           (__v4sf)(__m128)(B), (int)(C), \
820*bed243d3SAndroid Build Coastguard Worker                                           (__v4sf)_mm_setzero_ps(), \
821*bed243d3SAndroid Build Coastguard Worker                                           (__mmask8)-1))
822*bed243d3SAndroid Build Coastguard Worker 
823*bed243d3SAndroid Build Coastguard Worker #define _mm_mask_range_ps(W, U, A, B, C) \
824*bed243d3SAndroid Build Coastguard Worker   ((__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \
825*bed243d3SAndroid Build Coastguard Worker                                           (__v4sf)(__m128)(B), (int)(C), \
826*bed243d3SAndroid Build Coastguard Worker                                           (__v4sf)(__m128)(W), (__mmask8)(U)))
827*bed243d3SAndroid Build Coastguard Worker 
828*bed243d3SAndroid Build Coastguard Worker #define _mm_maskz_range_ps(U, A, B, C) \
829*bed243d3SAndroid Build Coastguard Worker   ((__m128)__builtin_ia32_rangeps128_mask((__v4sf)(__m128)(A), \
830*bed243d3SAndroid Build Coastguard Worker                                           (__v4sf)(__m128)(B), (int)(C), \
831*bed243d3SAndroid Build Coastguard Worker                                           (__v4sf)_mm_setzero_ps(), \
832*bed243d3SAndroid Build Coastguard Worker                                           (__mmask8)(U)))
833*bed243d3SAndroid Build Coastguard Worker 
834*bed243d3SAndroid Build Coastguard Worker #define _mm256_range_ps(A, B, C) \
835*bed243d3SAndroid Build Coastguard Worker   ((__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \
836*bed243d3SAndroid Build Coastguard Worker                                           (__v8sf)(__m256)(B), (int)(C), \
837*bed243d3SAndroid Build Coastguard Worker                                           (__v8sf)_mm256_setzero_ps(), \
838*bed243d3SAndroid Build Coastguard Worker                                           (__mmask8)-1))
839*bed243d3SAndroid Build Coastguard Worker 
840*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_range_ps(W, U, A, B, C) \
841*bed243d3SAndroid Build Coastguard Worker   ((__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \
842*bed243d3SAndroid Build Coastguard Worker                                           (__v8sf)(__m256)(B), (int)(C), \
843*bed243d3SAndroid Build Coastguard Worker                                           (__v8sf)(__m256)(W), (__mmask8)(U)))
844*bed243d3SAndroid Build Coastguard Worker 
845*bed243d3SAndroid Build Coastguard Worker #define _mm256_maskz_range_ps(U, A, B, C) \
846*bed243d3SAndroid Build Coastguard Worker   ((__m256)__builtin_ia32_rangeps256_mask((__v8sf)(__m256)(A), \
847*bed243d3SAndroid Build Coastguard Worker                                           (__v8sf)(__m256)(B), (int)(C), \
848*bed243d3SAndroid Build Coastguard Worker                                           (__v8sf)_mm256_setzero_ps(), \
849*bed243d3SAndroid Build Coastguard Worker                                           (__mmask8)(U)))
850*bed243d3SAndroid Build Coastguard Worker 
851*bed243d3SAndroid Build Coastguard Worker #define _mm_reduce_pd(A, B) \
852*bed243d3SAndroid Build Coastguard Worker   ((__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \
853*bed243d3SAndroid Build Coastguard Worker                                             (__v2df)_mm_setzero_pd(), \
854*bed243d3SAndroid Build Coastguard Worker                                             (__mmask8)-1))
855*bed243d3SAndroid Build Coastguard Worker 
856*bed243d3SAndroid Build Coastguard Worker #define _mm_mask_reduce_pd(W, U, A, B) \
857*bed243d3SAndroid Build Coastguard Worker   ((__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \
858*bed243d3SAndroid Build Coastguard Worker                                             (__v2df)(__m128d)(W), \
859*bed243d3SAndroid Build Coastguard Worker                                             (__mmask8)(U)))
860*bed243d3SAndroid Build Coastguard Worker 
861*bed243d3SAndroid Build Coastguard Worker #define _mm_maskz_reduce_pd(U, A, B) \
862*bed243d3SAndroid Build Coastguard Worker   ((__m128d)__builtin_ia32_reducepd128_mask((__v2df)(__m128d)(A), (int)(B), \
863*bed243d3SAndroid Build Coastguard Worker                                             (__v2df)_mm_setzero_pd(), \
864*bed243d3SAndroid Build Coastguard Worker                                             (__mmask8)(U)))
865*bed243d3SAndroid Build Coastguard Worker 
866*bed243d3SAndroid Build Coastguard Worker #define _mm256_reduce_pd(A, B) \
867*bed243d3SAndroid Build Coastguard Worker   ((__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \
868*bed243d3SAndroid Build Coastguard Worker                                             (__v4df)_mm256_setzero_pd(), \
869*bed243d3SAndroid Build Coastguard Worker                                             (__mmask8)-1))
870*bed243d3SAndroid Build Coastguard Worker 
871*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_reduce_pd(W, U, A, B) \
872*bed243d3SAndroid Build Coastguard Worker   ((__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \
873*bed243d3SAndroid Build Coastguard Worker                                             (__v4df)(__m256d)(W), \
874*bed243d3SAndroid Build Coastguard Worker                                             (__mmask8)(U)))
875*bed243d3SAndroid Build Coastguard Worker 
876*bed243d3SAndroid Build Coastguard Worker #define _mm256_maskz_reduce_pd(U, A, B) \
877*bed243d3SAndroid Build Coastguard Worker   ((__m256d)__builtin_ia32_reducepd256_mask((__v4df)(__m256d)(A), (int)(B), \
878*bed243d3SAndroid Build Coastguard Worker                                             (__v4df)_mm256_setzero_pd(), \
879*bed243d3SAndroid Build Coastguard Worker                                             (__mmask8)(U)))
880*bed243d3SAndroid Build Coastguard Worker 
881*bed243d3SAndroid Build Coastguard Worker #define _mm_reduce_ps(A, B) \
882*bed243d3SAndroid Build Coastguard Worker   ((__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \
883*bed243d3SAndroid Build Coastguard Worker                                            (__v4sf)_mm_setzero_ps(), \
884*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)-1))
885*bed243d3SAndroid Build Coastguard Worker 
886*bed243d3SAndroid Build Coastguard Worker #define _mm_mask_reduce_ps(W, U, A, B) \
887*bed243d3SAndroid Build Coastguard Worker   ((__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \
888*bed243d3SAndroid Build Coastguard Worker                                            (__v4sf)(__m128)(W), \
889*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)(U)))
890*bed243d3SAndroid Build Coastguard Worker 
891*bed243d3SAndroid Build Coastguard Worker #define _mm_maskz_reduce_ps(U, A, B) \
892*bed243d3SAndroid Build Coastguard Worker   ((__m128)__builtin_ia32_reduceps128_mask((__v4sf)(__m128)(A), (int)(B), \
893*bed243d3SAndroid Build Coastguard Worker                                            (__v4sf)_mm_setzero_ps(), \
894*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)(U)))
895*bed243d3SAndroid Build Coastguard Worker 
896*bed243d3SAndroid Build Coastguard Worker #define _mm256_reduce_ps(A, B) \
897*bed243d3SAndroid Build Coastguard Worker   ((__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \
898*bed243d3SAndroid Build Coastguard Worker                                            (__v8sf)_mm256_setzero_ps(), \
899*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)-1))
900*bed243d3SAndroid Build Coastguard Worker 
901*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_reduce_ps(W, U, A, B) \
902*bed243d3SAndroid Build Coastguard Worker   ((__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \
903*bed243d3SAndroid Build Coastguard Worker                                            (__v8sf)(__m256)(W), \
904*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)(U)))
905*bed243d3SAndroid Build Coastguard Worker 
906*bed243d3SAndroid Build Coastguard Worker #define _mm256_maskz_reduce_ps(U, A, B) \
907*bed243d3SAndroid Build Coastguard Worker   ((__m256)__builtin_ia32_reduceps256_mask((__v8sf)(__m256)(A), (int)(B), \
908*bed243d3SAndroid Build Coastguard Worker                                            (__v8sf)_mm256_setzero_ps(), \
909*bed243d3SAndroid Build Coastguard Worker                                            (__mmask8)(U)))
910*bed243d3SAndroid Build Coastguard Worker 
911*bed243d3SAndroid Build Coastguard Worker static __inline__ __mmask8 __DEFAULT_FN_ATTRS128
_mm_movepi32_mask(__m128i __A)912*bed243d3SAndroid Build Coastguard Worker _mm_movepi32_mask (__m128i __A)
913*bed243d3SAndroid Build Coastguard Worker {
914*bed243d3SAndroid Build Coastguard Worker   return (__mmask8) __builtin_ia32_cvtd2mask128 ((__v4si) __A);
915*bed243d3SAndroid Build Coastguard Worker }
916*bed243d3SAndroid Build Coastguard Worker 
917*bed243d3SAndroid Build Coastguard Worker static __inline__ __mmask8 __DEFAULT_FN_ATTRS256
_mm256_movepi32_mask(__m256i __A)918*bed243d3SAndroid Build Coastguard Worker _mm256_movepi32_mask (__m256i __A)
919*bed243d3SAndroid Build Coastguard Worker {
920*bed243d3SAndroid Build Coastguard Worker   return (__mmask8) __builtin_ia32_cvtd2mask256 ((__v8si) __A);
921*bed243d3SAndroid Build Coastguard Worker }
922*bed243d3SAndroid Build Coastguard Worker 
923*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_movm_epi32(__mmask8 __A)924*bed243d3SAndroid Build Coastguard Worker _mm_movm_epi32 (__mmask8 __A)
925*bed243d3SAndroid Build Coastguard Worker {
926*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtmask2d128 (__A);
927*bed243d3SAndroid Build Coastguard Worker }
928*bed243d3SAndroid Build Coastguard Worker 
929*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_movm_epi32(__mmask8 __A)930*bed243d3SAndroid Build Coastguard Worker _mm256_movm_epi32 (__mmask8 __A)
931*bed243d3SAndroid Build Coastguard Worker {
932*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtmask2d256 (__A);
933*bed243d3SAndroid Build Coastguard Worker }
934*bed243d3SAndroid Build Coastguard Worker 
935*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_movm_epi64(__mmask8 __A)936*bed243d3SAndroid Build Coastguard Worker _mm_movm_epi64 (__mmask8 __A)
937*bed243d3SAndroid Build Coastguard Worker {
938*bed243d3SAndroid Build Coastguard Worker   return (__m128i) __builtin_ia32_cvtmask2q128 (__A);
939*bed243d3SAndroid Build Coastguard Worker }
940*bed243d3SAndroid Build Coastguard Worker 
941*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_movm_epi64(__mmask8 __A)942*bed243d3SAndroid Build Coastguard Worker _mm256_movm_epi64 (__mmask8 __A)
943*bed243d3SAndroid Build Coastguard Worker {
944*bed243d3SAndroid Build Coastguard Worker   return (__m256i) __builtin_ia32_cvtmask2q256 (__A);
945*bed243d3SAndroid Build Coastguard Worker }
946*bed243d3SAndroid Build Coastguard Worker 
947*bed243d3SAndroid Build Coastguard Worker static __inline__ __mmask8 __DEFAULT_FN_ATTRS128
_mm_movepi64_mask(__m128i __A)948*bed243d3SAndroid Build Coastguard Worker _mm_movepi64_mask (__m128i __A)
949*bed243d3SAndroid Build Coastguard Worker {
950*bed243d3SAndroid Build Coastguard Worker   return (__mmask8) __builtin_ia32_cvtq2mask128 ((__v2di) __A);
951*bed243d3SAndroid Build Coastguard Worker }
952*bed243d3SAndroid Build Coastguard Worker 
953*bed243d3SAndroid Build Coastguard Worker static __inline__ __mmask8 __DEFAULT_FN_ATTRS256
_mm256_movepi64_mask(__m256i __A)954*bed243d3SAndroid Build Coastguard Worker _mm256_movepi64_mask (__m256i __A)
955*bed243d3SAndroid Build Coastguard Worker {
956*bed243d3SAndroid Build Coastguard Worker   return (__mmask8) __builtin_ia32_cvtq2mask256 ((__v4di) __A);
957*bed243d3SAndroid Build Coastguard Worker }
958*bed243d3SAndroid Build Coastguard Worker 
959*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_broadcast_f32x2(__m128 __A)960*bed243d3SAndroid Build Coastguard Worker _mm256_broadcast_f32x2 (__m128 __A)
961*bed243d3SAndroid Build Coastguard Worker {
962*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_shufflevector((__v4sf)__A, (__v4sf)__A,
963*bed243d3SAndroid Build Coastguard Worker                                          0, 1, 0, 1, 0, 1, 0, 1);
964*bed243d3SAndroid Build Coastguard Worker }
965*bed243d3SAndroid Build Coastguard Worker 
966*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_mask_broadcast_f32x2(__m256 __O,__mmask8 __M,__m128 __A)967*bed243d3SAndroid Build Coastguard Worker _mm256_mask_broadcast_f32x2 (__m256 __O, __mmask8 __M, __m128 __A)
968*bed243d3SAndroid Build Coastguard Worker {
969*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__M,
970*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_broadcast_f32x2(__A),
971*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)__O);
972*bed243d3SAndroid Build Coastguard Worker }
973*bed243d3SAndroid Build Coastguard Worker 
974*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256 __DEFAULT_FN_ATTRS256
_mm256_maskz_broadcast_f32x2(__mmask8 __M,__m128 __A)975*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_broadcast_f32x2 (__mmask8 __M, __m128 __A)
976*bed243d3SAndroid Build Coastguard Worker {
977*bed243d3SAndroid Build Coastguard Worker   return (__m256)__builtin_ia32_selectps_256((__mmask8)__M,
978*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_broadcast_f32x2(__A),
979*bed243d3SAndroid Build Coastguard Worker                                              (__v8sf)_mm256_setzero_ps());
980*bed243d3SAndroid Build Coastguard Worker }
981*bed243d3SAndroid Build Coastguard Worker 
982*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_broadcast_f64x2(__m128d __A)983*bed243d3SAndroid Build Coastguard Worker _mm256_broadcast_f64x2(__m128d __A)
984*bed243d3SAndroid Build Coastguard Worker {
985*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_shufflevector((__v2df)__A, (__v2df)__A,
986*bed243d3SAndroid Build Coastguard Worker                                           0, 1, 0, 1);
987*bed243d3SAndroid Build Coastguard Worker }
988*bed243d3SAndroid Build Coastguard Worker 
989*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_mask_broadcast_f64x2(__m256d __O,__mmask8 __M,__m128d __A)990*bed243d3SAndroid Build Coastguard Worker _mm256_mask_broadcast_f64x2(__m256d __O, __mmask8 __M, __m128d __A)
991*bed243d3SAndroid Build Coastguard Worker {
992*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__M,
993*bed243d3SAndroid Build Coastguard Worker                                             (__v4df)_mm256_broadcast_f64x2(__A),
994*bed243d3SAndroid Build Coastguard Worker                                             (__v4df)__O);
995*bed243d3SAndroid Build Coastguard Worker }
996*bed243d3SAndroid Build Coastguard Worker 
997*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256d __DEFAULT_FN_ATTRS256
_mm256_maskz_broadcast_f64x2(__mmask8 __M,__m128d __A)998*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_broadcast_f64x2 (__mmask8 __M, __m128d __A)
999*bed243d3SAndroid Build Coastguard Worker {
1000*bed243d3SAndroid Build Coastguard Worker   return (__m256d)__builtin_ia32_selectpd_256((__mmask8)__M,
1001*bed243d3SAndroid Build Coastguard Worker                                             (__v4df)_mm256_broadcast_f64x2(__A),
1002*bed243d3SAndroid Build Coastguard Worker                                             (__v4df)_mm256_setzero_pd());
1003*bed243d3SAndroid Build Coastguard Worker }
1004*bed243d3SAndroid Build Coastguard Worker 
1005*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_broadcast_i32x2(__m128i __A)1006*bed243d3SAndroid Build Coastguard Worker _mm_broadcast_i32x2 (__m128i __A)
1007*bed243d3SAndroid Build Coastguard Worker {
1008*bed243d3SAndroid Build Coastguard Worker   return (__m128i)__builtin_shufflevector((__v4si)__A, (__v4si)__A,
1009*bed243d3SAndroid Build Coastguard Worker                                           0, 1, 0, 1);
1010*bed243d3SAndroid Build Coastguard Worker }
1011*bed243d3SAndroid Build Coastguard Worker 
1012*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_mask_broadcast_i32x2(__m128i __O,__mmask8 __M,__m128i __A)1013*bed243d3SAndroid Build Coastguard Worker _mm_mask_broadcast_i32x2 (__m128i __O, __mmask8 __M, __m128i __A)
1014*bed243d3SAndroid Build Coastguard Worker {
1015*bed243d3SAndroid Build Coastguard Worker   return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M,
1016*bed243d3SAndroid Build Coastguard Worker                                              (__v4si)_mm_broadcast_i32x2(__A),
1017*bed243d3SAndroid Build Coastguard Worker                                              (__v4si)__O);
1018*bed243d3SAndroid Build Coastguard Worker }
1019*bed243d3SAndroid Build Coastguard Worker 
1020*bed243d3SAndroid Build Coastguard Worker static __inline__ __m128i __DEFAULT_FN_ATTRS128
_mm_maskz_broadcast_i32x2(__mmask8 __M,__m128i __A)1021*bed243d3SAndroid Build Coastguard Worker _mm_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A)
1022*bed243d3SAndroid Build Coastguard Worker {
1023*bed243d3SAndroid Build Coastguard Worker   return (__m128i)__builtin_ia32_selectd_128((__mmask8)__M,
1024*bed243d3SAndroid Build Coastguard Worker                                              (__v4si)_mm_broadcast_i32x2(__A),
1025*bed243d3SAndroid Build Coastguard Worker                                              (__v4si)_mm_setzero_si128());
1026*bed243d3SAndroid Build Coastguard Worker }
1027*bed243d3SAndroid Build Coastguard Worker 
1028*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_broadcast_i32x2(__m128i __A)1029*bed243d3SAndroid Build Coastguard Worker _mm256_broadcast_i32x2 (__m128i __A)
1030*bed243d3SAndroid Build Coastguard Worker {
1031*bed243d3SAndroid Build Coastguard Worker   return (__m256i)__builtin_shufflevector((__v4si)__A, (__v4si)__A,
1032*bed243d3SAndroid Build Coastguard Worker                                           0, 1, 0, 1, 0, 1, 0, 1);
1033*bed243d3SAndroid Build Coastguard Worker }
1034*bed243d3SAndroid Build Coastguard Worker 
1035*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_broadcast_i32x2(__m256i __O,__mmask8 __M,__m128i __A)1036*bed243d3SAndroid Build Coastguard Worker _mm256_mask_broadcast_i32x2 (__m256i __O, __mmask8 __M, __m128i __A)
1037*bed243d3SAndroid Build Coastguard Worker {
1038*bed243d3SAndroid Build Coastguard Worker   return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M,
1039*bed243d3SAndroid Build Coastguard Worker                                              (__v8si)_mm256_broadcast_i32x2(__A),
1040*bed243d3SAndroid Build Coastguard Worker                                              (__v8si)__O);
1041*bed243d3SAndroid Build Coastguard Worker }
1042*bed243d3SAndroid Build Coastguard Worker 
1043*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_broadcast_i32x2(__mmask8 __M,__m128i __A)1044*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_broadcast_i32x2 (__mmask8 __M, __m128i __A)
1045*bed243d3SAndroid Build Coastguard Worker {
1046*bed243d3SAndroid Build Coastguard Worker   return (__m256i)__builtin_ia32_selectd_256((__mmask8)__M,
1047*bed243d3SAndroid Build Coastguard Worker                                              (__v8si)_mm256_broadcast_i32x2(__A),
1048*bed243d3SAndroid Build Coastguard Worker                                              (__v8si)_mm256_setzero_si256());
1049*bed243d3SAndroid Build Coastguard Worker }
1050*bed243d3SAndroid Build Coastguard Worker 
1051*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_broadcast_i64x2(__m128i __A)1052*bed243d3SAndroid Build Coastguard Worker _mm256_broadcast_i64x2(__m128i __A)
1053*bed243d3SAndroid Build Coastguard Worker {
1054*bed243d3SAndroid Build Coastguard Worker   return (__m256i)__builtin_shufflevector((__v2di)__A, (__v2di)__A,
1055*bed243d3SAndroid Build Coastguard Worker                                           0, 1, 0, 1);
1056*bed243d3SAndroid Build Coastguard Worker }
1057*bed243d3SAndroid Build Coastguard Worker 
1058*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_mask_broadcast_i64x2(__m256i __O,__mmask8 __M,__m128i __A)1059*bed243d3SAndroid Build Coastguard Worker _mm256_mask_broadcast_i64x2(__m256i __O, __mmask8 __M, __m128i __A)
1060*bed243d3SAndroid Build Coastguard Worker {
1061*bed243d3SAndroid Build Coastguard Worker   return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M,
1062*bed243d3SAndroid Build Coastguard Worker                                             (__v4di)_mm256_broadcast_i64x2(__A),
1063*bed243d3SAndroid Build Coastguard Worker                                             (__v4di)__O);
1064*bed243d3SAndroid Build Coastguard Worker }
1065*bed243d3SAndroid Build Coastguard Worker 
1066*bed243d3SAndroid Build Coastguard Worker static __inline__ __m256i __DEFAULT_FN_ATTRS256
_mm256_maskz_broadcast_i64x2(__mmask8 __M,__m128i __A)1067*bed243d3SAndroid Build Coastguard Worker _mm256_maskz_broadcast_i64x2 (__mmask8 __M, __m128i __A)
1068*bed243d3SAndroid Build Coastguard Worker {
1069*bed243d3SAndroid Build Coastguard Worker   return (__m256i)__builtin_ia32_selectq_256((__mmask8)__M,
1070*bed243d3SAndroid Build Coastguard Worker                                             (__v4di)_mm256_broadcast_i64x2(__A),
1071*bed243d3SAndroid Build Coastguard Worker                                             (__v4di)_mm256_setzero_si256());
1072*bed243d3SAndroid Build Coastguard Worker }
1073*bed243d3SAndroid Build Coastguard Worker 
1074*bed243d3SAndroid Build Coastguard Worker #define _mm256_extractf64x2_pd(A, imm) \
1075*bed243d3SAndroid Build Coastguard Worker   ((__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \
1076*bed243d3SAndroid Build Coastguard Worker                                                  (int)(imm), \
1077*bed243d3SAndroid Build Coastguard Worker                                                  (__v2df)_mm_undefined_pd(), \
1078*bed243d3SAndroid Build Coastguard Worker                                                  (__mmask8)-1))
1079*bed243d3SAndroid Build Coastguard Worker 
1080*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_extractf64x2_pd(W, U, A, imm) \
1081*bed243d3SAndroid Build Coastguard Worker   ((__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \
1082*bed243d3SAndroid Build Coastguard Worker                                                  (int)(imm), \
1083*bed243d3SAndroid Build Coastguard Worker                                                  (__v2df)(__m128d)(W), \
1084*bed243d3SAndroid Build Coastguard Worker                                                  (__mmask8)(U)))
1085*bed243d3SAndroid Build Coastguard Worker 
1086*bed243d3SAndroid Build Coastguard Worker #define _mm256_maskz_extractf64x2_pd(U, A, imm) \
1087*bed243d3SAndroid Build Coastguard Worker   ((__m128d)__builtin_ia32_extractf64x2_256_mask((__v4df)(__m256d)(A), \
1088*bed243d3SAndroid Build Coastguard Worker                                                  (int)(imm), \
1089*bed243d3SAndroid Build Coastguard Worker                                                  (__v2df)_mm_setzero_pd(), \
1090*bed243d3SAndroid Build Coastguard Worker                                                  (__mmask8)(U)))
1091*bed243d3SAndroid Build Coastguard Worker 
1092*bed243d3SAndroid Build Coastguard Worker #define _mm256_extracti64x2_epi64(A, imm) \
1093*bed243d3SAndroid Build Coastguard Worker   ((__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \
1094*bed243d3SAndroid Build Coastguard Worker                                                 (int)(imm), \
1095*bed243d3SAndroid Build Coastguard Worker                                                 (__v2di)_mm_undefined_si128(), \
1096*bed243d3SAndroid Build Coastguard Worker                                                 (__mmask8)-1))
1097*bed243d3SAndroid Build Coastguard Worker 
1098*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_extracti64x2_epi64(W, U, A, imm) \
1099*bed243d3SAndroid Build Coastguard Worker   ((__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \
1100*bed243d3SAndroid Build Coastguard Worker                                                  (int)(imm), \
1101*bed243d3SAndroid Build Coastguard Worker                                                  (__v2di)(__m128i)(W), \
1102*bed243d3SAndroid Build Coastguard Worker                                                  (__mmask8)(U)))
1103*bed243d3SAndroid Build Coastguard Worker 
1104*bed243d3SAndroid Build Coastguard Worker #define _mm256_maskz_extracti64x2_epi64(U, A, imm) \
1105*bed243d3SAndroid Build Coastguard Worker   ((__m128i)__builtin_ia32_extracti64x2_256_mask((__v4di)(__m256i)(A), \
1106*bed243d3SAndroid Build Coastguard Worker                                                  (int)(imm), \
1107*bed243d3SAndroid Build Coastguard Worker                                                  (__v2di)_mm_setzero_si128(), \
1108*bed243d3SAndroid Build Coastguard Worker                                                  (__mmask8)(U)))
1109*bed243d3SAndroid Build Coastguard Worker 
1110*bed243d3SAndroid Build Coastguard Worker #define _mm256_insertf64x2(A, B, imm) \
1111*bed243d3SAndroid Build Coastguard Worker   ((__m256d)__builtin_ia32_insertf64x2_256((__v4df)(__m256d)(A), \
1112*bed243d3SAndroid Build Coastguard Worker                                            (__v2df)(__m128d)(B), (int)(imm)))
1113*bed243d3SAndroid Build Coastguard Worker 
1114*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_insertf64x2(W, U, A, B, imm) \
1115*bed243d3SAndroid Build Coastguard Worker   ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \
1116*bed243d3SAndroid Build Coastguard Worker                                   (__v4df)_mm256_insertf64x2((A), (B), (imm)), \
1117*bed243d3SAndroid Build Coastguard Worker                                   (__v4df)(__m256d)(W)))
1118*bed243d3SAndroid Build Coastguard Worker 
1119*bed243d3SAndroid Build Coastguard Worker #define _mm256_maskz_insertf64x2(U, A, B, imm) \
1120*bed243d3SAndroid Build Coastguard Worker   ((__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \
1121*bed243d3SAndroid Build Coastguard Worker                                   (__v4df)_mm256_insertf64x2((A), (B), (imm)), \
1122*bed243d3SAndroid Build Coastguard Worker                                   (__v4df)_mm256_setzero_pd()))
1123*bed243d3SAndroid Build Coastguard Worker 
1124*bed243d3SAndroid Build Coastguard Worker #define _mm256_inserti64x2(A, B, imm) \
1125*bed243d3SAndroid Build Coastguard Worker   ((__m256i)__builtin_ia32_inserti64x2_256((__v4di)(__m256i)(A), \
1126*bed243d3SAndroid Build Coastguard Worker                                            (__v2di)(__m128i)(B), (int)(imm)))
1127*bed243d3SAndroid Build Coastguard Worker 
1128*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_inserti64x2(W, U, A, B, imm) \
1129*bed243d3SAndroid Build Coastguard Worker   ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \
1130*bed243d3SAndroid Build Coastguard Worker                                    (__v4di)_mm256_inserti64x2((A), (B), (imm)), \
1131*bed243d3SAndroid Build Coastguard Worker                                    (__v4di)(__m256i)(W)))
1132*bed243d3SAndroid Build Coastguard Worker 
1133*bed243d3SAndroid Build Coastguard Worker #define _mm256_maskz_inserti64x2(U, A, B, imm) \
1134*bed243d3SAndroid Build Coastguard Worker   ((__m256i)__builtin_ia32_selectq_256((__mmask8)(U), \
1135*bed243d3SAndroid Build Coastguard Worker                                    (__v4di)_mm256_inserti64x2((A), (B), (imm)), \
1136*bed243d3SAndroid Build Coastguard Worker                                    (__v4di)_mm256_setzero_si256()))
1137*bed243d3SAndroid Build Coastguard Worker 
1138*bed243d3SAndroid Build Coastguard Worker #define _mm_mask_fpclass_pd_mask(U, A, imm) \
1139*bed243d3SAndroid Build Coastguard Worker   ((__mmask8)__builtin_ia32_fpclasspd128_mask((__v2df)(__m128d)(A), (int)(imm), \
1140*bed243d3SAndroid Build Coastguard Worker                                               (__mmask8)(U)))
1141*bed243d3SAndroid Build Coastguard Worker 
1142*bed243d3SAndroid Build Coastguard Worker #define _mm_fpclass_pd_mask(A, imm) \
1143*bed243d3SAndroid Build Coastguard Worker   ((__mmask8)__builtin_ia32_fpclasspd128_mask((__v2df)(__m128d)(A), (int)(imm), \
1144*bed243d3SAndroid Build Coastguard Worker                                               (__mmask8)-1))
1145*bed243d3SAndroid Build Coastguard Worker 
1146*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_fpclass_pd_mask(U, A, imm) \
1147*bed243d3SAndroid Build Coastguard Worker   ((__mmask8)__builtin_ia32_fpclasspd256_mask((__v4df)(__m256d)(A), (int)(imm), \
1148*bed243d3SAndroid Build Coastguard Worker                                               (__mmask8)(U)))
1149*bed243d3SAndroid Build Coastguard Worker 
1150*bed243d3SAndroid Build Coastguard Worker #define _mm256_fpclass_pd_mask(A, imm) \
1151*bed243d3SAndroid Build Coastguard Worker   ((__mmask8)__builtin_ia32_fpclasspd256_mask((__v4df)(__m256d)(A), (int)(imm), \
1152*bed243d3SAndroid Build Coastguard Worker                                               (__mmask8)-1))
1153*bed243d3SAndroid Build Coastguard Worker 
1154*bed243d3SAndroid Build Coastguard Worker #define _mm_mask_fpclass_ps_mask(U, A, imm) \
1155*bed243d3SAndroid Build Coastguard Worker   ((__mmask8)__builtin_ia32_fpclassps128_mask((__v4sf)(__m128)(A), (int)(imm), \
1156*bed243d3SAndroid Build Coastguard Worker                                               (__mmask8)(U)))
1157*bed243d3SAndroid Build Coastguard Worker 
1158*bed243d3SAndroid Build Coastguard Worker #define _mm_fpclass_ps_mask(A, imm) \
1159*bed243d3SAndroid Build Coastguard Worker   ((__mmask8)__builtin_ia32_fpclassps128_mask((__v4sf)(__m128)(A), (int)(imm), \
1160*bed243d3SAndroid Build Coastguard Worker                                               (__mmask8)-1))
1161*bed243d3SAndroid Build Coastguard Worker 
1162*bed243d3SAndroid Build Coastguard Worker #define _mm256_mask_fpclass_ps_mask(U, A, imm) \
1163*bed243d3SAndroid Build Coastguard Worker   ((__mmask8)__builtin_ia32_fpclassps256_mask((__v8sf)(__m256)(A), (int)(imm), \
1164*bed243d3SAndroid Build Coastguard Worker                                               (__mmask8)(U)))
1165*bed243d3SAndroid Build Coastguard Worker 
1166*bed243d3SAndroid Build Coastguard Worker #define _mm256_fpclass_ps_mask(A, imm) \
1167*bed243d3SAndroid Build Coastguard Worker   ((__mmask8)__builtin_ia32_fpclassps256_mask((__v8sf)(__m256)(A), (int)(imm), \
1168*bed243d3SAndroid Build Coastguard Worker                                               (__mmask8)-1))
1169*bed243d3SAndroid Build Coastguard Worker 
1170*bed243d3SAndroid Build Coastguard Worker #undef __DEFAULT_FN_ATTRS128
1171*bed243d3SAndroid Build Coastguard Worker #undef __DEFAULT_FN_ATTRS256
1172*bed243d3SAndroid Build Coastguard Worker 
1173*bed243d3SAndroid Build Coastguard Worker #endif
1174