clang 22.0.0git
avx512vlbwintrin.h
Go to the documentation of this file.
1/*===---- avx512vlbwintrin.h - AVX512VL and AVX512BW intrinsics ------------===
2 *
3 * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 * See https://llvm.org/LICENSE.txt for license information.
5 * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 *
7 *===-----------------------------------------------------------------------===
8 */
9
10#ifndef __IMMINTRIN_H
11#error "Never use <avx512vlbwintrin.h> directly; include <immintrin.h> instead."
12#endif
13
14#ifndef __AVX512VLBWINTRIN_H
15#define __AVX512VLBWINTRIN_H
16
17/* Define the default attributes for the functions in this file. */
18#define __DEFAULT_FN_ATTRS128 \
19 __attribute__((__always_inline__, __nodebug__, \
20 __target__("avx512vl,avx512bw"), __min_vector_width__(128)))
21#define __DEFAULT_FN_ATTRS256 \
22 __attribute__((__always_inline__, __nodebug__, \
23 __target__("avx512vl,avx512bw"), __min_vector_width__(256)))
24
25#if defined(__cplusplus) && (__cplusplus >= 201103L)
26#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128 constexpr
27#define __DEFAULT_FN_ATTRS256_CONSTEXPR __DEFAULT_FN_ATTRS256 constexpr
28#else
29#define __DEFAULT_FN_ATTRS128_CONSTEXPR __DEFAULT_FN_ATTRS128
30#define __DEFAULT_FN_ATTRS256_CONSTEXPR __DEFAULT_FN_ATTRS256
31#endif
32
33/* Integer compare */
34
35#define _mm_cmp_epi8_mask(a, b, p) \
36 ((__mmask16)__builtin_ia32_cmpb128_mask((__v16qi)(__m128i)(a), \
37 (__v16qi)(__m128i)(b), (int)(p), \
38 (__mmask16)-1))
39
40#define _mm_mask_cmp_epi8_mask(m, a, b, p) \
41 ((__mmask16)__builtin_ia32_cmpb128_mask((__v16qi)(__m128i)(a), \
42 (__v16qi)(__m128i)(b), (int)(p), \
43 (__mmask16)(m)))
44
45#define _mm_cmp_epu8_mask(a, b, p) \
46 ((__mmask16)__builtin_ia32_ucmpb128_mask((__v16qi)(__m128i)(a), \
47 (__v16qi)(__m128i)(b), (int)(p), \
48 (__mmask16)-1))
49
50#define _mm_mask_cmp_epu8_mask(m, a, b, p) \
51 ((__mmask16)__builtin_ia32_ucmpb128_mask((__v16qi)(__m128i)(a), \
52 (__v16qi)(__m128i)(b), (int)(p), \
53 (__mmask16)(m)))
54
55#define _mm256_cmp_epi8_mask(a, b, p) \
56 ((__mmask32)__builtin_ia32_cmpb256_mask((__v32qi)(__m256i)(a), \
57 (__v32qi)(__m256i)(b), (int)(p), \
58 (__mmask32)-1))
59
60#define _mm256_mask_cmp_epi8_mask(m, a, b, p) \
61 ((__mmask32)__builtin_ia32_cmpb256_mask((__v32qi)(__m256i)(a), \
62 (__v32qi)(__m256i)(b), (int)(p), \
63 (__mmask32)(m)))
64
65#define _mm256_cmp_epu8_mask(a, b, p) \
66 ((__mmask32)__builtin_ia32_ucmpb256_mask((__v32qi)(__m256i)(a), \
67 (__v32qi)(__m256i)(b), (int)(p), \
68 (__mmask32)-1))
69
70#define _mm256_mask_cmp_epu8_mask(m, a, b, p) \
71 ((__mmask32)__builtin_ia32_ucmpb256_mask((__v32qi)(__m256i)(a), \
72 (__v32qi)(__m256i)(b), (int)(p), \
73 (__mmask32)(m)))
74
75#define _mm_cmp_epi16_mask(a, b, p) \
76 ((__mmask8)__builtin_ia32_cmpw128_mask((__v8hi)(__m128i)(a), \
77 (__v8hi)(__m128i)(b), (int)(p), \
78 (__mmask8)-1))
79
80#define _mm_mask_cmp_epi16_mask(m, a, b, p) \
81 ((__mmask8)__builtin_ia32_cmpw128_mask((__v8hi)(__m128i)(a), \
82 (__v8hi)(__m128i)(b), (int)(p), \
83 (__mmask8)(m)))
84
85#define _mm_cmp_epu16_mask(a, b, p) \
86 ((__mmask8)__builtin_ia32_ucmpw128_mask((__v8hi)(__m128i)(a), \
87 (__v8hi)(__m128i)(b), (int)(p), \
88 (__mmask8)-1))
89
90#define _mm_mask_cmp_epu16_mask(m, a, b, p) \
91 ((__mmask8)__builtin_ia32_ucmpw128_mask((__v8hi)(__m128i)(a), \
92 (__v8hi)(__m128i)(b), (int)(p), \
93 (__mmask8)(m)))
94
95#define _mm256_cmp_epi16_mask(a, b, p) \
96 ((__mmask16)__builtin_ia32_cmpw256_mask((__v16hi)(__m256i)(a), \
97 (__v16hi)(__m256i)(b), (int)(p), \
98 (__mmask16)-1))
99
100#define _mm256_mask_cmp_epi16_mask(m, a, b, p) \
101 ((__mmask16)__builtin_ia32_cmpw256_mask((__v16hi)(__m256i)(a), \
102 (__v16hi)(__m256i)(b), (int)(p), \
103 (__mmask16)(m)))
104
105#define _mm256_cmp_epu16_mask(a, b, p) \
106 ((__mmask16)__builtin_ia32_ucmpw256_mask((__v16hi)(__m256i)(a), \
107 (__v16hi)(__m256i)(b), (int)(p), \
108 (__mmask16)-1))
109
110#define _mm256_mask_cmp_epu16_mask(m, a, b, p) \
111 ((__mmask16)__builtin_ia32_ucmpw256_mask((__v16hi)(__m256i)(a), \
112 (__v16hi)(__m256i)(b), (int)(p), \
113 (__mmask16)(m)))
114
115#define _mm_cmpeq_epi8_mask(A, B) \
116 _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_EQ)
117#define _mm_mask_cmpeq_epi8_mask(k, A, B) \
118 _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_EQ)
119#define _mm_cmpge_epi8_mask(A, B) \
120 _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_GE)
121#define _mm_mask_cmpge_epi8_mask(k, A, B) \
122 _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GE)
123#define _mm_cmpgt_epi8_mask(A, B) \
124 _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_GT)
125#define _mm_mask_cmpgt_epi8_mask(k, A, B) \
126 _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GT)
127#define _mm_cmple_epi8_mask(A, B) \
128 _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_LE)
129#define _mm_mask_cmple_epi8_mask(k, A, B) \
130 _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LE)
131#define _mm_cmplt_epi8_mask(A, B) \
132 _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_LT)
133#define _mm_mask_cmplt_epi8_mask(k, A, B) \
134 _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LT)
135#define _mm_cmpneq_epi8_mask(A, B) \
136 _mm_cmp_epi8_mask((A), (B), _MM_CMPINT_NE)
137#define _mm_mask_cmpneq_epi8_mask(k, A, B) \
138 _mm_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_NE)
139
140#define _mm256_cmpeq_epi8_mask(A, B) \
141 _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_EQ)
142#define _mm256_mask_cmpeq_epi8_mask(k, A, B) \
143 _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_EQ)
144#define _mm256_cmpge_epi8_mask(A, B) \
145 _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_GE)
146#define _mm256_mask_cmpge_epi8_mask(k, A, B) \
147 _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GE)
148#define _mm256_cmpgt_epi8_mask(A, B) \
149 _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_GT)
150#define _mm256_mask_cmpgt_epi8_mask(k, A, B) \
151 _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_GT)
152#define _mm256_cmple_epi8_mask(A, B) \
153 _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_LE)
154#define _mm256_mask_cmple_epi8_mask(k, A, B) \
155 _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LE)
156#define _mm256_cmplt_epi8_mask(A, B) \
157 _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_LT)
158#define _mm256_mask_cmplt_epi8_mask(k, A, B) \
159 _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_LT)
160#define _mm256_cmpneq_epi8_mask(A, B) \
161 _mm256_cmp_epi8_mask((A), (B), _MM_CMPINT_NE)
162#define _mm256_mask_cmpneq_epi8_mask(k, A, B) \
163 _mm256_mask_cmp_epi8_mask((k), (A), (B), _MM_CMPINT_NE)
164
165#define _mm_cmpeq_epu8_mask(A, B) \
166 _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_EQ)
167#define _mm_mask_cmpeq_epu8_mask(k, A, B) \
168 _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_EQ)
169#define _mm_cmpge_epu8_mask(A, B) \
170 _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_GE)
171#define _mm_mask_cmpge_epu8_mask(k, A, B) \
172 _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GE)
173#define _mm_cmpgt_epu8_mask(A, B) \
174 _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_GT)
175#define _mm_mask_cmpgt_epu8_mask(k, A, B) \
176 _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GT)
177#define _mm_cmple_epu8_mask(A, B) \
178 _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_LE)
179#define _mm_mask_cmple_epu8_mask(k, A, B) \
180 _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LE)
181#define _mm_cmplt_epu8_mask(A, B) \
182 _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_LT)
183#define _mm_mask_cmplt_epu8_mask(k, A, B) \
184 _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LT)
185#define _mm_cmpneq_epu8_mask(A, B) \
186 _mm_cmp_epu8_mask((A), (B), _MM_CMPINT_NE)
187#define _mm_mask_cmpneq_epu8_mask(k, A, B) \
188 _mm_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_NE)
189
190#define _mm256_cmpeq_epu8_mask(A, B) \
191 _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_EQ)
192#define _mm256_mask_cmpeq_epu8_mask(k, A, B) \
193 _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_EQ)
194#define _mm256_cmpge_epu8_mask(A, B) \
195 _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_GE)
196#define _mm256_mask_cmpge_epu8_mask(k, A, B) \
197 _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GE)
198#define _mm256_cmpgt_epu8_mask(A, B) \
199 _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_GT)
200#define _mm256_mask_cmpgt_epu8_mask(k, A, B) \
201 _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_GT)
202#define _mm256_cmple_epu8_mask(A, B) \
203 _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_LE)
204#define _mm256_mask_cmple_epu8_mask(k, A, B) \
205 _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LE)
206#define _mm256_cmplt_epu8_mask(A, B) \
207 _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_LT)
208#define _mm256_mask_cmplt_epu8_mask(k, A, B) \
209 _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_LT)
210#define _mm256_cmpneq_epu8_mask(A, B) \
211 _mm256_cmp_epu8_mask((A), (B), _MM_CMPINT_NE)
212#define _mm256_mask_cmpneq_epu8_mask(k, A, B) \
213 _mm256_mask_cmp_epu8_mask((k), (A), (B), _MM_CMPINT_NE)
214
215#define _mm_cmpeq_epi16_mask(A, B) \
216 _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_EQ)
217#define _mm_mask_cmpeq_epi16_mask(k, A, B) \
218 _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_EQ)
219#define _mm_cmpge_epi16_mask(A, B) \
220 _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_GE)
221#define _mm_mask_cmpge_epi16_mask(k, A, B) \
222 _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GE)
223#define _mm_cmpgt_epi16_mask(A, B) \
224 _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_GT)
225#define _mm_mask_cmpgt_epi16_mask(k, A, B) \
226 _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GT)
227#define _mm_cmple_epi16_mask(A, B) \
228 _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_LE)
229#define _mm_mask_cmple_epi16_mask(k, A, B) \
230 _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LE)
231#define _mm_cmplt_epi16_mask(A, B) \
232 _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_LT)
233#define _mm_mask_cmplt_epi16_mask(k, A, B) \
234 _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LT)
235#define _mm_cmpneq_epi16_mask(A, B) \
236 _mm_cmp_epi16_mask((A), (B), _MM_CMPINT_NE)
237#define _mm_mask_cmpneq_epi16_mask(k, A, B) \
238 _mm_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_NE)
239
240#define _mm256_cmpeq_epi16_mask(A, B) \
241 _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_EQ)
242#define _mm256_mask_cmpeq_epi16_mask(k, A, B) \
243 _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_EQ)
244#define _mm256_cmpge_epi16_mask(A, B) \
245 _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_GE)
246#define _mm256_mask_cmpge_epi16_mask(k, A, B) \
247 _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GE)
248#define _mm256_cmpgt_epi16_mask(A, B) \
249 _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_GT)
250#define _mm256_mask_cmpgt_epi16_mask(k, A, B) \
251 _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_GT)
252#define _mm256_cmple_epi16_mask(A, B) \
253 _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_LE)
254#define _mm256_mask_cmple_epi16_mask(k, A, B) \
255 _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LE)
256#define _mm256_cmplt_epi16_mask(A, B) \
257 _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_LT)
258#define _mm256_mask_cmplt_epi16_mask(k, A, B) \
259 _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_LT)
260#define _mm256_cmpneq_epi16_mask(A, B) \
261 _mm256_cmp_epi16_mask((A), (B), _MM_CMPINT_NE)
262#define _mm256_mask_cmpneq_epi16_mask(k, A, B) \
263 _mm256_mask_cmp_epi16_mask((k), (A), (B), _MM_CMPINT_NE)
264
265#define _mm_cmpeq_epu16_mask(A, B) \
266 _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_EQ)
267#define _mm_mask_cmpeq_epu16_mask(k, A, B) \
268 _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_EQ)
269#define _mm_cmpge_epu16_mask(A, B) \
270 _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_GE)
271#define _mm_mask_cmpge_epu16_mask(k, A, B) \
272 _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GE)
273#define _mm_cmpgt_epu16_mask(A, B) \
274 _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_GT)
275#define _mm_mask_cmpgt_epu16_mask(k, A, B) \
276 _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GT)
277#define _mm_cmple_epu16_mask(A, B) \
278 _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_LE)
279#define _mm_mask_cmple_epu16_mask(k, A, B) \
280 _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LE)
281#define _mm_cmplt_epu16_mask(A, B) \
282 _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_LT)
283#define _mm_mask_cmplt_epu16_mask(k, A, B) \
284 _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LT)
285#define _mm_cmpneq_epu16_mask(A, B) \
286 _mm_cmp_epu16_mask((A), (B), _MM_CMPINT_NE)
287#define _mm_mask_cmpneq_epu16_mask(k, A, B) \
288 _mm_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_NE)
289
290#define _mm256_cmpeq_epu16_mask(A, B) \
291 _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_EQ)
292#define _mm256_mask_cmpeq_epu16_mask(k, A, B) \
293 _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_EQ)
294#define _mm256_cmpge_epu16_mask(A, B) \
295 _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_GE)
296#define _mm256_mask_cmpge_epu16_mask(k, A, B) \
297 _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GE)
298#define _mm256_cmpgt_epu16_mask(A, B) \
299 _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_GT)
300#define _mm256_mask_cmpgt_epu16_mask(k, A, B) \
301 _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_GT)
302#define _mm256_cmple_epu16_mask(A, B) \
303 _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_LE)
304#define _mm256_mask_cmple_epu16_mask(k, A, B) \
305 _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LE)
306#define _mm256_cmplt_epu16_mask(A, B) \
307 _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_LT)
308#define _mm256_mask_cmplt_epu16_mask(k, A, B) \
309 _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_LT)
310#define _mm256_cmpneq_epu16_mask(A, B) \
311 _mm256_cmp_epu16_mask((A), (B), _MM_CMPINT_NE)
312#define _mm256_mask_cmpneq_epu16_mask(k, A, B) \
313 _mm256_mask_cmp_epu16_mask((k), (A), (B), _MM_CMPINT_NE)
314
315static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
316_mm256_mask_add_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) {
317 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
318 (__v32qi)_mm256_add_epi8(__A, __B),
319 (__v32qi)__W);
320}
321
322static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
323_mm256_maskz_add_epi8(__mmask32 __U, __m256i __A, __m256i __B) {
324 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
325 (__v32qi)_mm256_add_epi8(__A, __B),
326 (__v32qi)_mm256_setzero_si256());
327}
328
329static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
330_mm256_mask_add_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
331 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
332 (__v16hi)_mm256_add_epi16(__A, __B),
333 (__v16hi)__W);
334}
335
336static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
337_mm256_maskz_add_epi16(__mmask16 __U, __m256i __A, __m256i __B) {
338 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
339 (__v16hi)_mm256_add_epi16(__A, __B),
340 (__v16hi)_mm256_setzero_si256());
341}
342
343static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
344_mm256_mask_sub_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) {
345 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
346 (__v32qi)_mm256_sub_epi8(__A, __B),
347 (__v32qi)__W);
348}
349
350static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
351_mm256_maskz_sub_epi8(__mmask32 __U, __m256i __A, __m256i __B) {
352 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
353 (__v32qi)_mm256_sub_epi8(__A, __B),
354 (__v32qi)_mm256_setzero_si256());
355}
356
357static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
358_mm256_mask_sub_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
359 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
360 (__v16hi)_mm256_sub_epi16(__A, __B),
361 (__v16hi)__W);
362}
363
364static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
365_mm256_maskz_sub_epi16(__mmask16 __U, __m256i __A, __m256i __B) {
366 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
367 (__v16hi)_mm256_sub_epi16(__A, __B),
368 (__v16hi)_mm256_setzero_si256());
369}
370
371static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
372_mm_mask_add_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) {
373 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
374 (__v16qi)_mm_add_epi8(__A, __B),
375 (__v16qi)__W);
376}
377
378static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
379_mm_maskz_add_epi8(__mmask16 __U, __m128i __A, __m128i __B) {
380 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
381 (__v16qi)_mm_add_epi8(__A, __B),
382 (__v16qi)_mm_setzero_si128());
383}
384
385static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
386_mm_mask_add_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
387 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
388 (__v8hi)_mm_add_epi16(__A, __B),
389 (__v8hi)__W);
390}
391
392static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
393_mm_maskz_add_epi16(__mmask8 __U, __m128i __A, __m128i __B) {
394 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
395 (__v8hi)_mm_add_epi16(__A, __B),
396 (__v8hi)_mm_setzero_si128());
397}
398
399static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
400_mm_mask_sub_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) {
401 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
402 (__v16qi)_mm_sub_epi8(__A, __B),
403 (__v16qi)__W);
404}
405
406static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
407_mm_maskz_sub_epi8(__mmask16 __U, __m128i __A, __m128i __B) {
408 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
409 (__v16qi)_mm_sub_epi8(__A, __B),
410 (__v16qi)_mm_setzero_si128());
411}
412
413static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
414_mm_mask_sub_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
415 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
416 (__v8hi)_mm_sub_epi16(__A, __B),
417 (__v8hi)__W);
418}
419
420static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
421_mm_maskz_sub_epi16(__mmask8 __U, __m128i __A, __m128i __B) {
422 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
423 (__v8hi)_mm_sub_epi16(__A, __B),
424 (__v8hi)_mm_setzero_si128());
425}
426
427static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
428_mm256_mask_mullo_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
429 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
430 (__v16hi)_mm256_mullo_epi16(__A, __B),
431 (__v16hi)__W);
432}
433
434static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
435_mm256_maskz_mullo_epi16(__mmask16 __U, __m256i __A, __m256i __B) {
436 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
437 (__v16hi)_mm256_mullo_epi16(__A, __B),
438 (__v16hi)_mm256_setzero_si256());
439}
440
441static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
442_mm_mask_mullo_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
443 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
444 (__v8hi)_mm_mullo_epi16(__A, __B),
445 (__v8hi)__W);
446}
447
448static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
449_mm_maskz_mullo_epi16(__mmask8 __U, __m128i __A, __m128i __B) {
450 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
451 (__v8hi)_mm_mullo_epi16(__A, __B),
452 (__v8hi)_mm_setzero_si128());
453}
454
455static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
456_mm_mask_blend_epi8(__mmask16 __U, __m128i __A, __m128i __W) {
457 return (__m128i) __builtin_ia32_selectb_128 ((__mmask16) __U,
458 (__v16qi) __W,
459 (__v16qi) __A);
460}
461
462static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
463_mm256_mask_blend_epi8(__mmask32 __U, __m256i __A, __m256i __W) {
464 return (__m256i) __builtin_ia32_selectb_256 ((__mmask32) __U,
465 (__v32qi) __W,
466 (__v32qi) __A);
467}
468
469static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
470_mm_mask_blend_epi16(__mmask8 __U, __m128i __A, __m128i __W) {
471 return (__m128i) __builtin_ia32_selectw_128 ((__mmask8) __U,
472 (__v8hi) __W,
473 (__v8hi) __A);
474}
475
476static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
477_mm256_mask_blend_epi16(__mmask16 __U, __m256i __A, __m256i __W) {
478 return (__m256i) __builtin_ia32_selectw_256 ((__mmask16) __U,
479 (__v16hi) __W,
480 (__v16hi) __A);
481}
482
483static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
484_mm_mask_abs_epi8(__m128i __W, __mmask16 __U, __m128i __A) {
485 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
486 (__v16qi)_mm_abs_epi8(__A),
487 (__v16qi)__W);
488}
489
490static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
491_mm_maskz_abs_epi8(__mmask16 __U, __m128i __A) {
492 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
493 (__v16qi)_mm_abs_epi8(__A),
494 (__v16qi)_mm_setzero_si128());
495}
496
497static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
498_mm256_mask_abs_epi8(__m256i __W, __mmask32 __U, __m256i __A) {
499 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
500 (__v32qi)_mm256_abs_epi8(__A),
501 (__v32qi)__W);
502}
503
504static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
506 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
507 (__v32qi)_mm256_abs_epi8(__A),
508 (__v32qi)_mm256_setzero_si256());
509}
510
511static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
512_mm_mask_abs_epi16(__m128i __W, __mmask8 __U, __m128i __A) {
513 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
514 (__v8hi)_mm_abs_epi16(__A),
515 (__v8hi)__W);
516}
517
518static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
519_mm_maskz_abs_epi16(__mmask8 __U, __m128i __A) {
520 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
521 (__v8hi)_mm_abs_epi16(__A),
522 (__v8hi)_mm_setzero_si128());
523}
524
525static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
526_mm256_mask_abs_epi16(__m256i __W, __mmask16 __U, __m256i __A) {
527 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
528 (__v16hi)_mm256_abs_epi16(__A),
529 (__v16hi)__W);
530}
531
532static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
534 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
535 (__v16hi)_mm256_abs_epi16(__A),
536 (__v16hi)_mm256_setzero_si256());
537}
538
539static __inline__ __m128i __DEFAULT_FN_ATTRS128
540_mm_maskz_packs_epi32(__mmask8 __M, __m128i __A, __m128i __B) {
541 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
542 (__v8hi)_mm_packs_epi32(__A, __B),
543 (__v8hi)_mm_setzero_si128());
544}
545
546static __inline__ __m128i __DEFAULT_FN_ATTRS128
547_mm_mask_packs_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B)
548{
549 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
550 (__v8hi)_mm_packs_epi32(__A, __B),
551 (__v8hi)__W);
552}
553
554static __inline__ __m256i __DEFAULT_FN_ATTRS256
555_mm256_maskz_packs_epi32(__mmask16 __M, __m256i __A, __m256i __B)
556{
557 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
558 (__v16hi)_mm256_packs_epi32(__A, __B),
559 (__v16hi)_mm256_setzero_si256());
560}
561
562static __inline__ __m256i __DEFAULT_FN_ATTRS256
563_mm256_mask_packs_epi32(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B)
564{
565 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
566 (__v16hi)_mm256_packs_epi32(__A, __B),
567 (__v16hi)__W);
568}
569
570static __inline__ __m128i __DEFAULT_FN_ATTRS128
571_mm_maskz_packs_epi16(__mmask16 __M, __m128i __A, __m128i __B)
572{
573 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
574 (__v16qi)_mm_packs_epi16(__A, __B),
575 (__v16qi)_mm_setzero_si128());
576}
577
578static __inline__ __m128i __DEFAULT_FN_ATTRS128
579_mm_mask_packs_epi16(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B)
580{
581 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
582 (__v16qi)_mm_packs_epi16(__A, __B),
583 (__v16qi)__W);
584}
585
586static __inline__ __m256i __DEFAULT_FN_ATTRS256
587_mm256_maskz_packs_epi16(__mmask32 __M, __m256i __A, __m256i __B)
588{
589 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
590 (__v32qi)_mm256_packs_epi16(__A, __B),
591 (__v32qi)_mm256_setzero_si256());
592}
593
594static __inline__ __m256i __DEFAULT_FN_ATTRS256
595_mm256_mask_packs_epi16(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B)
596{
597 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
598 (__v32qi)_mm256_packs_epi16(__A, __B),
599 (__v32qi)__W);
600}
601
602static __inline__ __m128i __DEFAULT_FN_ATTRS128
603_mm_maskz_packus_epi32(__mmask8 __M, __m128i __A, __m128i __B)
604{
605 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
606 (__v8hi)_mm_packus_epi32(__A, __B),
607 (__v8hi)_mm_setzero_si128());
608}
609
610static __inline__ __m128i __DEFAULT_FN_ATTRS128
611_mm_mask_packus_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B)
612{
613 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
614 (__v8hi)_mm_packus_epi32(__A, __B),
615 (__v8hi)__W);
616}
617
618static __inline__ __m256i __DEFAULT_FN_ATTRS256
619_mm256_maskz_packus_epi32(__mmask16 __M, __m256i __A, __m256i __B)
620{
621 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
622 (__v16hi)_mm256_packus_epi32(__A, __B),
623 (__v16hi)_mm256_setzero_si256());
624}
625
626static __inline__ __m256i __DEFAULT_FN_ATTRS256
627_mm256_mask_packus_epi32(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B)
628{
629 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
630 (__v16hi)_mm256_packus_epi32(__A, __B),
631 (__v16hi)__W);
632}
633
634static __inline__ __m128i __DEFAULT_FN_ATTRS128
635_mm_maskz_packus_epi16(__mmask16 __M, __m128i __A, __m128i __B)
636{
637 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
638 (__v16qi)_mm_packus_epi16(__A, __B),
639 (__v16qi)_mm_setzero_si128());
640}
641
642static __inline__ __m128i __DEFAULT_FN_ATTRS128
643_mm_mask_packus_epi16(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B)
644{
645 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
646 (__v16qi)_mm_packus_epi16(__A, __B),
647 (__v16qi)__W);
648}
649
650static __inline__ __m256i __DEFAULT_FN_ATTRS256
651_mm256_maskz_packus_epi16(__mmask32 __M, __m256i __A, __m256i __B)
652{
653 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
654 (__v32qi)_mm256_packus_epi16(__A, __B),
655 (__v32qi)_mm256_setzero_si256());
656}
657
658static __inline__ __m256i __DEFAULT_FN_ATTRS256
659_mm256_mask_packus_epi16(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B)
660{
661 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
662 (__v32qi)_mm256_packus_epi16(__A, __B),
663 (__v32qi)__W);
664}
665
666static __inline__ __m128i __DEFAULT_FN_ATTRS128
667_mm_mask_adds_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
668{
669 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
670 (__v16qi)_mm_adds_epi8(__A, __B),
671 (__v16qi)__W);
672}
673
674static __inline__ __m128i __DEFAULT_FN_ATTRS128
675_mm_maskz_adds_epi8(__mmask16 __U, __m128i __A, __m128i __B)
676{
677 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
678 (__v16qi)_mm_adds_epi8(__A, __B),
679 (__v16qi)_mm_setzero_si128());
680}
681
682static __inline__ __m256i __DEFAULT_FN_ATTRS256
683_mm256_mask_adds_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
684{
685 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
686 (__v32qi)_mm256_adds_epi8(__A, __B),
687 (__v32qi)__W);
688}
689
690static __inline__ __m256i __DEFAULT_FN_ATTRS256
691_mm256_maskz_adds_epi8(__mmask32 __U, __m256i __A, __m256i __B)
692{
693 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
694 (__v32qi)_mm256_adds_epi8(__A, __B),
695 (__v32qi)_mm256_setzero_si256());
696}
697
698static __inline__ __m128i __DEFAULT_FN_ATTRS128
699_mm_mask_adds_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
700{
701 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
702 (__v8hi)_mm_adds_epi16(__A, __B),
703 (__v8hi)__W);
704}
705
706static __inline__ __m128i __DEFAULT_FN_ATTRS128
707_mm_maskz_adds_epi16(__mmask8 __U, __m128i __A, __m128i __B)
708{
709 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
710 (__v8hi)_mm_adds_epi16(__A, __B),
711 (__v8hi)_mm_setzero_si128());
712}
713
714static __inline__ __m256i __DEFAULT_FN_ATTRS256
715_mm256_mask_adds_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
716{
717 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
718 (__v16hi)_mm256_adds_epi16(__A, __B),
719 (__v16hi)__W);
720}
721
722static __inline__ __m256i __DEFAULT_FN_ATTRS256
723_mm256_maskz_adds_epi16(__mmask16 __U, __m256i __A, __m256i __B)
724{
725 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
726 (__v16hi)_mm256_adds_epi16(__A, __B),
727 (__v16hi)_mm256_setzero_si256());
728}
729
730static __inline__ __m128i __DEFAULT_FN_ATTRS128
731_mm_mask_adds_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
732{
733 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
734 (__v16qi)_mm_adds_epu8(__A, __B),
735 (__v16qi)__W);
736}
737
738static __inline__ __m128i __DEFAULT_FN_ATTRS128
739_mm_maskz_adds_epu8(__mmask16 __U, __m128i __A, __m128i __B)
740{
741 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
742 (__v16qi)_mm_adds_epu8(__A, __B),
743 (__v16qi)_mm_setzero_si128());
744}
745
746static __inline__ __m256i __DEFAULT_FN_ATTRS256
747_mm256_mask_adds_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
748{
749 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
750 (__v32qi)_mm256_adds_epu8(__A, __B),
751 (__v32qi)__W);
752}
753
754static __inline__ __m256i __DEFAULT_FN_ATTRS256
755_mm256_maskz_adds_epu8(__mmask32 __U, __m256i __A, __m256i __B)
756{
757 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
758 (__v32qi)_mm256_adds_epu8(__A, __B),
759 (__v32qi)_mm256_setzero_si256());
760}
761
762static __inline__ __m128i __DEFAULT_FN_ATTRS128
763_mm_mask_adds_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
764{
765 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
766 (__v8hi)_mm_adds_epu16(__A, __B),
767 (__v8hi)__W);
768}
769
770static __inline__ __m128i __DEFAULT_FN_ATTRS128
771_mm_maskz_adds_epu16(__mmask8 __U, __m128i __A, __m128i __B)
772{
773 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
774 (__v8hi)_mm_adds_epu16(__A, __B),
775 (__v8hi)_mm_setzero_si128());
776}
777
778static __inline__ __m256i __DEFAULT_FN_ATTRS256
779_mm256_mask_adds_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
780{
781 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
782 (__v16hi)_mm256_adds_epu16(__A, __B),
783 (__v16hi)__W);
784}
785
786static __inline__ __m256i __DEFAULT_FN_ATTRS256
787_mm256_maskz_adds_epu16(__mmask16 __U, __m256i __A, __m256i __B)
788{
789 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
790 (__v16hi)_mm256_adds_epu16(__A, __B),
791 (__v16hi)_mm256_setzero_si256());
792}
793
794static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
795_mm_mask_avg_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) {
796 return (__m128i)__builtin_ia32_selectb_128(
797 (__mmask16)__U, (__v16qi)_mm_avg_epu8(__A, __B), (__v16qi)__W);
798}
799
800static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
801_mm_maskz_avg_epu8(__mmask16 __U, __m128i __A, __m128i __B) {
802 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
803 (__v16qi)_mm_avg_epu8(__A, __B),
804 (__v16qi)_mm_setzero_si128());
805}
806
807static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
808_mm256_mask_avg_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) {
809 return (__m256i)__builtin_ia32_selectb_256(
810 (__mmask32)__U, (__v32qi)_mm256_avg_epu8(__A, __B), (__v32qi)__W);
811}
812
813static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
814_mm256_maskz_avg_epu8(__mmask32 __U, __m256i __A, __m256i __B) {
815 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
816 (__v32qi)_mm256_avg_epu8(__A, __B),
817 (__v32qi)_mm256_setzero_si256());
818}
819
820static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
821_mm_mask_avg_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
822 return (__m128i)__builtin_ia32_selectw_128(
823 (__mmask8)__U, (__v8hi)_mm_avg_epu16(__A, __B), (__v8hi)__W);
824}
825
826static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
827_mm_maskz_avg_epu16(__mmask8 __U, __m128i __A, __m128i __B) {
828 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
829 (__v8hi)_mm_avg_epu16(__A, __B),
830 (__v8hi)_mm_setzero_si128());
831}
832
833static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
834_mm256_mask_avg_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
835 return (__m256i)__builtin_ia32_selectw_256(
836 (__mmask16)__U, (__v16hi)_mm256_avg_epu16(__A, __B), (__v16hi)__W);
837}
838
839static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
840_mm256_maskz_avg_epu16(__mmask16 __U, __m256i __A, __m256i __B) {
841 return (__m256i)__builtin_ia32_selectw_256(
842 (__mmask16)__U, (__v16hi)_mm256_avg_epu16(__A, __B),
843 (__v16hi)_mm256_setzero_si256());
844}
845
846static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
847_mm_maskz_max_epi8(__mmask16 __M, __m128i __A, __m128i __B) {
848 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
849 (__v16qi)_mm_max_epi8(__A, __B),
850 (__v16qi)_mm_setzero_si128());
851}
852
853static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
854_mm_mask_max_epi8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) {
855 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
856 (__v16qi)_mm_max_epi8(__A, __B),
857 (__v16qi)__W);
858}
859
860static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
861_mm256_maskz_max_epi8(__mmask32 __M, __m256i __A, __m256i __B) {
862 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
863 (__v32qi)_mm256_max_epi8(__A, __B),
864 (__v32qi)_mm256_setzero_si256());
865}
866
867static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
868_mm256_mask_max_epi8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) {
869 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
870 (__v32qi)_mm256_max_epi8(__A, __B),
871 (__v32qi)__W);
872}
873
874static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
875_mm_maskz_max_epi16(__mmask8 __M, __m128i __A, __m128i __B) {
876 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
877 (__v8hi)_mm_max_epi16(__A, __B),
878 (__v8hi)_mm_setzero_si128());
879}
880
881static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
882_mm_mask_max_epi16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) {
883 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
884 (__v8hi)_mm_max_epi16(__A, __B),
885 (__v8hi)__W);
886}
887
888static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
889_mm256_maskz_max_epi16(__mmask16 __M, __m256i __A, __m256i __B) {
890 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
891 (__v16hi)_mm256_max_epi16(__A, __B),
892 (__v16hi)_mm256_setzero_si256());
893}
894
895static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
896_mm256_mask_max_epi16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) {
897 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
898 (__v16hi)_mm256_max_epi16(__A, __B),
899 (__v16hi)__W);
900}
901
902static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
903_mm_maskz_max_epu8(__mmask16 __M, __m128i __A, __m128i __B) {
904 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
905 (__v16qi)_mm_max_epu8(__A, __B),
906 (__v16qi)_mm_setzero_si128());
907}
908
909static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
910_mm_mask_max_epu8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) {
911 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
912 (__v16qi)_mm_max_epu8(__A, __B),
913 (__v16qi)__W);
914}
915
916static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
917_mm256_maskz_max_epu8(__mmask32 __M, __m256i __A, __m256i __B) {
918 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
919 (__v32qi)_mm256_max_epu8(__A, __B),
920 (__v32qi)_mm256_setzero_si256());
921}
922
923static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
924_mm256_mask_max_epu8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) {
925 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
926 (__v32qi)_mm256_max_epu8(__A, __B),
927 (__v32qi)__W);
928}
929
930static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
931_mm_maskz_max_epu16(__mmask8 __M, __m128i __A, __m128i __B) {
932 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
933 (__v8hi)_mm_max_epu16(__A, __B),
934 (__v8hi)_mm_setzero_si128());
935}
936
937static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
938_mm_mask_max_epu16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) {
939 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
940 (__v8hi)_mm_max_epu16(__A, __B),
941 (__v8hi)__W);
942}
943
944static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
945_mm256_maskz_max_epu16(__mmask16 __M, __m256i __A, __m256i __B) {
946 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
947 (__v16hi)_mm256_max_epu16(__A, __B),
948 (__v16hi)_mm256_setzero_si256());
949}
950
951static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
952_mm256_mask_max_epu16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) {
953 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
954 (__v16hi)_mm256_max_epu16(__A, __B),
955 (__v16hi)__W);
956}
957
958static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
959_mm_maskz_min_epi8(__mmask16 __M, __m128i __A, __m128i __B) {
960 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
961 (__v16qi)_mm_min_epi8(__A, __B),
962 (__v16qi)_mm_setzero_si128());
963}
964
965static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
966_mm_mask_min_epi8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) {
967 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
968 (__v16qi)_mm_min_epi8(__A, __B),
969 (__v16qi)__W);
970}
971
972static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
973_mm256_maskz_min_epi8(__mmask32 __M, __m256i __A, __m256i __B) {
974 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
975 (__v32qi)_mm256_min_epi8(__A, __B),
976 (__v32qi)_mm256_setzero_si256());
977}
978
979static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
980_mm256_mask_min_epi8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) {
981 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
982 (__v32qi)_mm256_min_epi8(__A, __B),
983 (__v32qi)__W);
984}
985
986static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
987_mm_maskz_min_epi16(__mmask8 __M, __m128i __A, __m128i __B) {
988 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
989 (__v8hi)_mm_min_epi16(__A, __B),
990 (__v8hi)_mm_setzero_si128());
991}
992
993static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
994_mm_mask_min_epi16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) {
995 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
996 (__v8hi)_mm_min_epi16(__A, __B),
997 (__v8hi)__W);
998}
999
1000static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1001_mm256_maskz_min_epi16(__mmask16 __M, __m256i __A, __m256i __B) {
1002 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
1003 (__v16hi)_mm256_min_epi16(__A, __B),
1004 (__v16hi)_mm256_setzero_si256());
1005}
1006
1007static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1008_mm256_mask_min_epi16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) {
1009 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
1010 (__v16hi)_mm256_min_epi16(__A, __B),
1011 (__v16hi)__W);
1012}
1013
1014static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1015_mm_maskz_min_epu8(__mmask16 __M, __m128i __A, __m128i __B) {
1016 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
1017 (__v16qi)_mm_min_epu8(__A, __B),
1018 (__v16qi)_mm_setzero_si128());
1019}
1020
1021static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1022_mm_mask_min_epu8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B) {
1023 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
1024 (__v16qi)_mm_min_epu8(__A, __B),
1025 (__v16qi)__W);
1026}
1027
1028static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1029_mm256_maskz_min_epu8(__mmask32 __M, __m256i __A, __m256i __B) {
1030 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
1031 (__v32qi)_mm256_min_epu8(__A, __B),
1032 (__v32qi)_mm256_setzero_si256());
1033}
1034
1035static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1036_mm256_mask_min_epu8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B) {
1037 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__M,
1038 (__v32qi)_mm256_min_epu8(__A, __B),
1039 (__v32qi)__W);
1040}
1041
1042static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1043_mm_maskz_min_epu16(__mmask8 __M, __m128i __A, __m128i __B) {
1044 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
1045 (__v8hi)_mm_min_epu16(__A, __B),
1046 (__v8hi)_mm_setzero_si128());
1047}
1048
1049static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1050_mm_mask_min_epu16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B) {
1051 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
1052 (__v8hi)_mm_min_epu16(__A, __B),
1053 (__v8hi)__W);
1054}
1055
1056static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1057_mm256_maskz_min_epu16(__mmask16 __M, __m256i __A, __m256i __B) {
1058 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
1059 (__v16hi)_mm256_min_epu16(__A, __B),
1060 (__v16hi)_mm256_setzero_si256());
1061}
1062
1063static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1064_mm256_mask_min_epu16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B) {
1065 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
1066 (__v16hi)_mm256_min_epu16(__A, __B),
1067 (__v16hi)__W);
1068}
1069
1070static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1071_mm_mask_shuffle_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) {
1072 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
1073 (__v16qi)_mm_shuffle_epi8(__A, __B),
1074 (__v16qi)__W);
1075}
1076
1077static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1078_mm_maskz_shuffle_epi8(__mmask16 __U, __m128i __A, __m128i __B) {
1079 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
1080 (__v16qi)_mm_shuffle_epi8(__A, __B),
1081 (__v16qi)_mm_setzero_si128());
1082}
1083
1084static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1085_mm256_mask_shuffle_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) {
1086 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1087 (__v32qi)_mm256_shuffle_epi8(__A, __B),
1088 (__v32qi)__W);
1089}
1090
1091static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1092_mm256_maskz_shuffle_epi8(__mmask32 __U, __m256i __A, __m256i __B) {
1093 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1094 (__v32qi)_mm256_shuffle_epi8(__A, __B),
1095 (__v32qi)_mm256_setzero_si256());
1096}
1097
1098static __inline__ __m128i __DEFAULT_FN_ATTRS128
1099_mm_mask_subs_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
1100{
1101 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
1102 (__v16qi)_mm_subs_epi8(__A, __B),
1103 (__v16qi)__W);
1104}
1105
1106static __inline__ __m128i __DEFAULT_FN_ATTRS128
1107_mm_maskz_subs_epi8(__mmask16 __U, __m128i __A, __m128i __B)
1108{
1109 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
1110 (__v16qi)_mm_subs_epi8(__A, __B),
1111 (__v16qi)_mm_setzero_si128());
1112}
1113
1114static __inline__ __m256i __DEFAULT_FN_ATTRS256
1115_mm256_mask_subs_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
1116{
1117 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1118 (__v32qi)_mm256_subs_epi8(__A, __B),
1119 (__v32qi)__W);
1120}
1121
1122static __inline__ __m256i __DEFAULT_FN_ATTRS256
1123_mm256_maskz_subs_epi8(__mmask32 __U, __m256i __A, __m256i __B)
1124{
1125 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1126 (__v32qi)_mm256_subs_epi8(__A, __B),
1127 (__v32qi)_mm256_setzero_si256());
1128}
1129
1130static __inline__ __m128i __DEFAULT_FN_ATTRS128
1131_mm_mask_subs_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
1132{
1133 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1134 (__v8hi)_mm_subs_epi16(__A, __B),
1135 (__v8hi)__W);
1136}
1137
1138static __inline__ __m128i __DEFAULT_FN_ATTRS128
1139_mm_maskz_subs_epi16(__mmask8 __U, __m128i __A, __m128i __B)
1140{
1141 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1142 (__v8hi)_mm_subs_epi16(__A, __B),
1143 (__v8hi)_mm_setzero_si128());
1144}
1145
1146static __inline__ __m256i __DEFAULT_FN_ATTRS256
1147_mm256_mask_subs_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
1148{
1149 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1150 (__v16hi)_mm256_subs_epi16(__A, __B),
1151 (__v16hi)__W);
1152}
1153
1154static __inline__ __m256i __DEFAULT_FN_ATTRS256
1155_mm256_maskz_subs_epi16(__mmask16 __U, __m256i __A, __m256i __B)
1156{
1157 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1158 (__v16hi)_mm256_subs_epi16(__A, __B),
1159 (__v16hi)_mm256_setzero_si256());
1160}
1161
1162static __inline__ __m128i __DEFAULT_FN_ATTRS128
1163_mm_mask_subs_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
1164{
1165 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
1166 (__v16qi)_mm_subs_epu8(__A, __B),
1167 (__v16qi)__W);
1168}
1169
1170static __inline__ __m128i __DEFAULT_FN_ATTRS128
1171_mm_maskz_subs_epu8(__mmask16 __U, __m128i __A, __m128i __B)
1172{
1173 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
1174 (__v16qi)_mm_subs_epu8(__A, __B),
1175 (__v16qi)_mm_setzero_si128());
1176}
1177
1178static __inline__ __m256i __DEFAULT_FN_ATTRS256
1179_mm256_mask_subs_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
1180{
1181 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1182 (__v32qi)_mm256_subs_epu8(__A, __B),
1183 (__v32qi)__W);
1184}
1185
1186static __inline__ __m256i __DEFAULT_FN_ATTRS256
1187_mm256_maskz_subs_epu8(__mmask32 __U, __m256i __A, __m256i __B)
1188{
1189 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1190 (__v32qi)_mm256_subs_epu8(__A, __B),
1191 (__v32qi)_mm256_setzero_si256());
1192}
1193
1194static __inline__ __m128i __DEFAULT_FN_ATTRS128
1195_mm_mask_subs_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
1196{
1197 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1198 (__v8hi)_mm_subs_epu16(__A, __B),
1199 (__v8hi)__W);
1200}
1201
1202static __inline__ __m128i __DEFAULT_FN_ATTRS128
1203_mm_maskz_subs_epu16(__mmask8 __U, __m128i __A, __m128i __B)
1204{
1205 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1206 (__v8hi)_mm_subs_epu16(__A, __B),
1207 (__v8hi)_mm_setzero_si128());
1208}
1209
1210static __inline__ __m256i __DEFAULT_FN_ATTRS256
1211_mm256_mask_subs_epu16(__m256i __W, __mmask16 __U, __m256i __A,
1212 __m256i __B) {
1213 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1214 (__v16hi)_mm256_subs_epu16(__A, __B),
1215 (__v16hi)__W);
1216}
1217
1218static __inline__ __m256i __DEFAULT_FN_ATTRS256
1219_mm256_maskz_subs_epu16(__mmask16 __U, __m256i __A, __m256i __B)
1220{
1221 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1222 (__v16hi)_mm256_subs_epu16(__A, __B),
1223 (__v16hi)_mm256_setzero_si256());
1224}
1225
1226static __inline__ __m128i __DEFAULT_FN_ATTRS128
1227_mm_permutex2var_epi16(__m128i __A, __m128i __I, __m128i __B)
1228{
1229 return (__m128i)__builtin_ia32_vpermi2varhi128((__v8hi)__A, (__v8hi)__I,
1230 (__v8hi) __B);
1231}
1232
1233static __inline__ __m128i __DEFAULT_FN_ATTRS128
1234_mm_mask_permutex2var_epi16(__m128i __A, __mmask8 __U, __m128i __I,
1235 __m128i __B)
1236{
1237 return (__m128i)__builtin_ia32_selectw_128(__U,
1238 (__v8hi)_mm_permutex2var_epi16(__A, __I, __B),
1239 (__v8hi)__A);
1240}
1241
1242static __inline__ __m128i __DEFAULT_FN_ATTRS128
1243_mm_mask2_permutex2var_epi16(__m128i __A, __m128i __I, __mmask8 __U,
1244 __m128i __B)
1245{
1246 return (__m128i)__builtin_ia32_selectw_128(__U,
1247 (__v8hi)_mm_permutex2var_epi16(__A, __I, __B),
1248 (__v8hi)__I);
1249}
1250
1251static __inline__ __m128i __DEFAULT_FN_ATTRS128
1252_mm_maskz_permutex2var_epi16 (__mmask8 __U, __m128i __A, __m128i __I,
1253 __m128i __B)
1254{
1255 return (__m128i)__builtin_ia32_selectw_128(__U,
1256 (__v8hi)_mm_permutex2var_epi16(__A, __I, __B),
1257 (__v8hi)_mm_setzero_si128());
1258}
1259
1260static __inline__ __m256i __DEFAULT_FN_ATTRS256
1261_mm256_permutex2var_epi16(__m256i __A, __m256i __I, __m256i __B)
1262{
1263 return (__m256i)__builtin_ia32_vpermi2varhi256((__v16hi)__A, (__v16hi)__I,
1264 (__v16hi)__B);
1265}
1266
1267static __inline__ __m256i __DEFAULT_FN_ATTRS256
1268_mm256_mask_permutex2var_epi16(__m256i __A, __mmask16 __U, __m256i __I,
1269 __m256i __B)
1270{
1271 return (__m256i)__builtin_ia32_selectw_256(__U,
1272 (__v16hi)_mm256_permutex2var_epi16(__A, __I, __B),
1273 (__v16hi)__A);
1274}
1275
1276static __inline__ __m256i __DEFAULT_FN_ATTRS256
1277_mm256_mask2_permutex2var_epi16(__m256i __A, __m256i __I, __mmask16 __U,
1278 __m256i __B)
1279{
1280 return (__m256i)__builtin_ia32_selectw_256(__U,
1281 (__v16hi)_mm256_permutex2var_epi16(__A, __I, __B),
1282 (__v16hi)__I);
1283}
1284
1285static __inline__ __m256i __DEFAULT_FN_ATTRS256
1286_mm256_maskz_permutex2var_epi16 (__mmask16 __U, __m256i __A, __m256i __I,
1287 __m256i __B)
1288{
1289 return (__m256i)__builtin_ia32_selectw_256(__U,
1290 (__v16hi)_mm256_permutex2var_epi16(__A, __I, __B),
1291 (__v16hi)_mm256_setzero_si256());
1292}
1293
1294static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1295_mm_mask_maddubs_epi16(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) {
1296 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1297 (__v8hi)_mm_maddubs_epi16(__X, __Y),
1298 (__v8hi)__W);
1299}
1300
1301static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1302_mm_maskz_maddubs_epi16(__mmask8 __U, __m128i __X, __m128i __Y) {
1303 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1304 (__v8hi)_mm_maddubs_epi16(__X, __Y),
1305 (__v8hi)_mm_setzero_si128());
1306}
1307
1308static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1309_mm256_mask_maddubs_epi16(__m256i __W, __mmask16 __U, __m256i __X,
1310 __m256i __Y) {
1311 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1312 (__v16hi)_mm256_maddubs_epi16(__X, __Y),
1313 (__v16hi)__W);
1314}
1315
1316static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1317_mm256_maskz_maddubs_epi16(__mmask16 __U, __m256i __X, __m256i __Y) {
1318 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1319 (__v16hi)_mm256_maddubs_epi16(__X, __Y),
1320 (__v16hi)_mm256_setzero_si256());
1321}
1322
1323static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1324_mm_mask_madd_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
1325 return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U,
1326 (__v4si)_mm_madd_epi16(__A, __B),
1327 (__v4si)__W);
1328}
1329
1330static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1331_mm_maskz_madd_epi16(__mmask8 __U, __m128i __A, __m128i __B) {
1332 return (__m128i)__builtin_ia32_selectd_128((__mmask8)__U,
1333 (__v4si)_mm_madd_epi16(__A, __B),
1334 (__v4si)_mm_setzero_si128());
1335}
1336
1337static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1338_mm256_mask_madd_epi16(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B) {
1339 return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U,
1340 (__v8si)_mm256_madd_epi16(__A, __B),
1341 (__v8si)__W);
1342}
1343
1344static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1345_mm256_maskz_madd_epi16(__mmask8 __U, __m256i __A, __m256i __B) {
1346 return (__m256i)__builtin_ia32_selectd_256((__mmask8)__U,
1347 (__v8si)_mm256_madd_epi16(__A, __B),
1348 (__v8si)_mm256_setzero_si256());
1349}
1350
1351static __inline__ __m128i __DEFAULT_FN_ATTRS128
1352_mm_cvtsepi16_epi8 (__m128i __A) {
1353 return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A,
1354 (__v16qi) _mm_setzero_si128(),
1355 (__mmask8) -1);
1356}
1357
1358static __inline__ __m128i __DEFAULT_FN_ATTRS128
1359_mm_mask_cvtsepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A) {
1360 return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A,
1361 (__v16qi) __O,
1362 __M);
1363}
1364
1365static __inline__ __m128i __DEFAULT_FN_ATTRS128
1367 return (__m128i) __builtin_ia32_pmovswb128_mask ((__v8hi) __A,
1368 (__v16qi) _mm_setzero_si128(),
1369 __M);
1370}
1371
1372static __inline__ __m128i __DEFAULT_FN_ATTRS256
1374 return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A,
1375 (__v16qi) _mm_setzero_si128(),
1376 (__mmask16) -1);
1377}
1378
1379static __inline__ __m128i __DEFAULT_FN_ATTRS256
1380_mm256_mask_cvtsepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A) {
1381 return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A,
1382 (__v16qi) __O,
1383 __M);
1384}
1385
1386static __inline__ __m128i __DEFAULT_FN_ATTRS256
1388 return (__m128i) __builtin_ia32_pmovswb256_mask ((__v16hi) __A,
1389 (__v16qi) _mm_setzero_si128(),
1390 __M);
1391}
1392
1393static __inline__ __m128i __DEFAULT_FN_ATTRS128
1394_mm_cvtusepi16_epi8 (__m128i __A) {
1395 return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A,
1396 (__v16qi) _mm_setzero_si128(),
1397 (__mmask8) -1);
1398}
1399
1400static __inline__ __m128i __DEFAULT_FN_ATTRS128
1401_mm_mask_cvtusepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A) {
1402 return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A,
1403 (__v16qi) __O,
1404 __M);
1405}
1406
1407static __inline__ __m128i __DEFAULT_FN_ATTRS128
1409 return (__m128i) __builtin_ia32_pmovuswb128_mask ((__v8hi) __A,
1410 (__v16qi) _mm_setzero_si128(),
1411 __M);
1412}
1413
1414static __inline__ __m128i __DEFAULT_FN_ATTRS256
1416 return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A,
1417 (__v16qi) _mm_setzero_si128(),
1418 (__mmask16) -1);
1419}
1420
1421static __inline__ __m128i __DEFAULT_FN_ATTRS256
1422_mm256_mask_cvtusepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A) {
1423 return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A,
1424 (__v16qi) __O,
1425 __M);
1426}
1427
1428static __inline__ __m128i __DEFAULT_FN_ATTRS256
1430 return (__m128i) __builtin_ia32_pmovuswb256_mask ((__v16hi) __A,
1431 (__v16qi) _mm_setzero_si128(),
1432 __M);
1433}
1434
1435static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1436_mm_cvtepi16_epi8(__m128i __A) {
1437 return (__m128i)__builtin_shufflevector(
1438 __builtin_convertvector((__v8hi)__A, __v8qi),
1439 (__v8qi){0, 0, 0, 0, 0, 0, 0, 0}, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
1440 12, 13, 14, 15);
1441}
1442
1443static __inline__ __m128i __DEFAULT_FN_ATTRS128
1444_mm_mask_cvtepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A) {
1445 return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A,
1446 (__v16qi) __O,
1447 __M);
1448}
1449
1450static __inline__ __m128i __DEFAULT_FN_ATTRS128
1452 return (__m128i) __builtin_ia32_pmovwb128_mask ((__v8hi) __A,
1453 (__v16qi) _mm_setzero_si128(),
1454 __M);
1455}
1456
1457static __inline__ void __DEFAULT_FN_ATTRS128
1459{
1460 __builtin_ia32_pmovwb128mem_mask ((__v16qi *) __P, (__v8hi) __A, __M);
1461}
1462
1463
1464static __inline__ void __DEFAULT_FN_ATTRS128
1466{
1467 __builtin_ia32_pmovswb128mem_mask ((__v16qi *) __P, (__v8hi) __A, __M);
1468}
1469
1470static __inline__ void __DEFAULT_FN_ATTRS128
1472{
1473 __builtin_ia32_pmovuswb128mem_mask ((__v16qi *) __P, (__v8hi) __A, __M);
1474}
1475
1476static __inline__ __m128i __DEFAULT_FN_ATTRS256_CONSTEXPR
1478 return (__m128i)__builtin_convertvector((__v16hi) __A, __v16qi);
1479}
1480
1481static __inline__ __m128i __DEFAULT_FN_ATTRS256_CONSTEXPR
1482_mm256_mask_cvtepi16_epi8(__m128i __O, __mmask16 __M, __m256i __A) {
1483 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
1484 (__v16qi)_mm256_cvtepi16_epi8(__A),
1485 (__v16qi)__O);
1486}
1487
1488static __inline__ __m128i __DEFAULT_FN_ATTRS256_CONSTEXPR
1490 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__M,
1491 (__v16qi)_mm256_cvtepi16_epi8(__A),
1492 (__v16qi)_mm_setzero_si128());
1493}
1494
1495static __inline__ void __DEFAULT_FN_ATTRS256
1497{
1498 __builtin_ia32_pmovwb256mem_mask ((__v16qi *) __P, (__v16hi) __A, __M);
1499}
1500
1501static __inline__ void __DEFAULT_FN_ATTRS256
1503{
1504 __builtin_ia32_pmovswb256mem_mask ((__v16qi *) __P, (__v16hi) __A, __M);
1505}
1506
1507static __inline__ void __DEFAULT_FN_ATTRS256
1509{
1510 __builtin_ia32_pmovuswb256mem_mask ((__v16qi*) __P, (__v16hi) __A, __M);
1511}
1512
1513static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1514_mm_mask_mulhrs_epi16(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y) {
1515 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1516 (__v8hi)_mm_mulhrs_epi16(__X, __Y),
1517 (__v8hi)__W);
1518}
1519
1520static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1521_mm_maskz_mulhrs_epi16(__mmask8 __U, __m128i __X, __m128i __Y) {
1522 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1523 (__v8hi)_mm_mulhrs_epi16(__X, __Y),
1524 (__v8hi)_mm_setzero_si128());
1525}
1526
1527static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1528_mm256_mask_mulhrs_epi16(__m256i __W, __mmask16 __U, __m256i __X, __m256i __Y) {
1529 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1530 (__v16hi)_mm256_mulhrs_epi16(__X, __Y),
1531 (__v16hi)__W);
1532}
1533
1534static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1535_mm256_maskz_mulhrs_epi16(__mmask16 __U, __m256i __X, __m256i __Y) {
1536 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1537 (__v16hi)_mm256_mulhrs_epi16(__X, __Y),
1538 (__v16hi)_mm256_setzero_si256());
1539}
1540
1541static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1542_mm_mask_mulhi_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
1543 return (__m128i)__builtin_ia32_selectw_128(
1544 (__mmask8)__U, (__v8hi)_mm_mulhi_epu16(__A, __B), (__v8hi)__W);
1545}
1546
1547static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1548_mm_maskz_mulhi_epu16(__mmask8 __U, __m128i __A, __m128i __B) {
1549 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1550 (__v8hi)_mm_mulhi_epu16(__A, __B),
1551 (__v8hi)_mm_setzero_si128());
1552}
1553
1554static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1555_mm256_mask_mulhi_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
1556 return (__m256i)__builtin_ia32_selectw_256(
1557 (__mmask16)__U, (__v16hi)_mm256_mulhi_epu16(__A, __B), (__v16hi)__W);
1558}
1559
1560static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1561_mm256_maskz_mulhi_epu16(__mmask16 __U, __m256i __A, __m256i __B) {
1562 return (__m256i)__builtin_ia32_selectw_256(
1563 (__mmask16)__U, (__v16hi)_mm256_mulhi_epu16(__A, __B),
1564 (__v16hi)_mm256_setzero_si256());
1565}
1566
1567static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1568_mm_mask_mulhi_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
1569 return (__m128i)__builtin_ia32_selectw_128(
1570 (__mmask8)__U, (__v8hi)_mm_mulhi_epi16(__A, __B), (__v8hi)__W);
1571}
1572
1573static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1574_mm_maskz_mulhi_epi16(__mmask8 __U, __m128i __A, __m128i __B) {
1575 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1576 (__v8hi)_mm_mulhi_epi16(__A, __B),
1577 (__v8hi)_mm_setzero_si128());
1578}
1579
1580static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1581_mm256_mask_mulhi_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
1582 return (__m256i)__builtin_ia32_selectw_256(
1583 (__mmask16)__U, (__v16hi)_mm256_mulhi_epi16(__A, __B), (__v16hi)__W);
1584}
1585
1586static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1587_mm256_maskz_mulhi_epi16(__mmask16 __U, __m256i __A, __m256i __B) {
1588 return (__m256i)__builtin_ia32_selectw_256(
1589 (__mmask16)__U, (__v16hi)_mm256_mulhi_epi16(__A, __B),
1590 (__v16hi)_mm256_setzero_si256());
1591}
1592
1593static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1594_mm_mask_unpackhi_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) {
1595 return (__m128i)__builtin_ia32_selectb_128(
1596 (__mmask16)__U, (__v16qi)_mm_unpackhi_epi8(__A, __B), (__v16qi)__W);
1597}
1598
1599static __inline__ __m128i __DEFAULT_FN_ATTRS128
1600_mm_maskz_unpackhi_epi8(__mmask16 __U, __m128i __A, __m128i __B) {
1601 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
1602 (__v16qi)_mm_unpackhi_epi8(__A, __B),
1603 (__v16qi)_mm_setzero_si128());
1604}
1605
1606static __inline__ __m256i __DEFAULT_FN_ATTRS256
1607_mm256_mask_unpackhi_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) {
1608 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1609 (__v32qi)_mm256_unpackhi_epi8(__A, __B),
1610 (__v32qi)__W);
1611}
1612
1613static __inline__ __m256i __DEFAULT_FN_ATTRS256
1614_mm256_maskz_unpackhi_epi8(__mmask32 __U, __m256i __A, __m256i __B) {
1615 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1616 (__v32qi)_mm256_unpackhi_epi8(__A, __B),
1617 (__v32qi)_mm256_setzero_si256());
1618}
1619
1620static __inline__ __m128i __DEFAULT_FN_ATTRS128
1621_mm_mask_unpackhi_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
1622 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1623 (__v8hi)_mm_unpackhi_epi16(__A, __B),
1624 (__v8hi)__W);
1625}
1626
1627static __inline__ __m128i __DEFAULT_FN_ATTRS128
1628_mm_maskz_unpackhi_epi16(__mmask8 __U, __m128i __A, __m128i __B) {
1629 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1630 (__v8hi)_mm_unpackhi_epi16(__A, __B),
1631 (__v8hi) _mm_setzero_si128());
1632}
1633
1634static __inline__ __m256i __DEFAULT_FN_ATTRS256
1635_mm256_mask_unpackhi_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
1636 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1637 (__v16hi)_mm256_unpackhi_epi16(__A, __B),
1638 (__v16hi)__W);
1639}
1640
1641static __inline__ __m256i __DEFAULT_FN_ATTRS256
1642_mm256_maskz_unpackhi_epi16(__mmask16 __U, __m256i __A, __m256i __B) {
1643 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1644 (__v16hi)_mm256_unpackhi_epi16(__A, __B),
1645 (__v16hi)_mm256_setzero_si256());
1646}
1647
1648static __inline__ __m128i __DEFAULT_FN_ATTRS128
1649_mm_mask_unpacklo_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B) {
1650 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
1651 (__v16qi)_mm_unpacklo_epi8(__A, __B),
1652 (__v16qi)__W);
1653}
1654
1655static __inline__ __m128i __DEFAULT_FN_ATTRS128
1656_mm_maskz_unpacklo_epi8(__mmask16 __U, __m128i __A, __m128i __B) {
1657 return (__m128i)__builtin_ia32_selectb_128((__mmask16)__U,
1658 (__v16qi)_mm_unpacklo_epi8(__A, __B),
1659 (__v16qi)_mm_setzero_si128());
1660}
1661
1662static __inline__ __m256i __DEFAULT_FN_ATTRS256
1663_mm256_mask_unpacklo_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B) {
1664 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1665 (__v32qi)_mm256_unpacklo_epi8(__A, __B),
1666 (__v32qi)__W);
1667}
1668
1669static __inline__ __m256i __DEFAULT_FN_ATTRS256
1670_mm256_maskz_unpacklo_epi8(__mmask32 __U, __m256i __A, __m256i __B) {
1671 return (__m256i)__builtin_ia32_selectb_256((__mmask32)__U,
1672 (__v32qi)_mm256_unpacklo_epi8(__A, __B),
1673 (__v32qi)_mm256_setzero_si256());
1674}
1675
1676static __inline__ __m128i __DEFAULT_FN_ATTRS128
1677_mm_mask_unpacklo_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B) {
1678 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1679 (__v8hi)_mm_unpacklo_epi16(__A, __B),
1680 (__v8hi)__W);
1681}
1682
1683static __inline__ __m128i __DEFAULT_FN_ATTRS128
1684_mm_maskz_unpacklo_epi16(__mmask8 __U, __m128i __A, __m128i __B) {
1685 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1686 (__v8hi)_mm_unpacklo_epi16(__A, __B),
1687 (__v8hi) _mm_setzero_si128());
1688}
1689
1690static __inline__ __m256i __DEFAULT_FN_ATTRS256
1691_mm256_mask_unpacklo_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B) {
1692 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1693 (__v16hi)_mm256_unpacklo_epi16(__A, __B),
1694 (__v16hi)__W);
1695}
1696
1697static __inline__ __m256i __DEFAULT_FN_ATTRS256
1698_mm256_maskz_unpacklo_epi16(__mmask16 __U, __m256i __A, __m256i __B) {
1699 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1700 (__v16hi)_mm256_unpacklo_epi16(__A, __B),
1701 (__v16hi)_mm256_setzero_si256());
1702}
1703
1704static __inline__ __m128i __DEFAULT_FN_ATTRS128
1705_mm_mask_cvtepi8_epi16(__m128i __W, __mmask8 __U, __m128i __A)
1706{
1707 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1708 (__v8hi)_mm_cvtepi8_epi16(__A),
1709 (__v8hi)__W);
1710}
1711
1712static __inline__ __m128i __DEFAULT_FN_ATTRS128
1714{
1715 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1716 (__v8hi)_mm_cvtepi8_epi16(__A),
1717 (__v8hi)_mm_setzero_si128());
1718}
1719
1720static __inline__ __m256i __DEFAULT_FN_ATTRS256
1721_mm256_mask_cvtepi8_epi16(__m256i __W, __mmask16 __U, __m128i __A)
1722{
1723 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1724 (__v16hi)_mm256_cvtepi8_epi16(__A),
1725 (__v16hi)__W);
1726}
1727
1728static __inline__ __m256i __DEFAULT_FN_ATTRS256
1730{
1731 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1732 (__v16hi)_mm256_cvtepi8_epi16(__A),
1733 (__v16hi)_mm256_setzero_si256());
1734}
1735
1736
1737static __inline__ __m128i __DEFAULT_FN_ATTRS128
1738_mm_mask_cvtepu8_epi16(__m128i __W, __mmask8 __U, __m128i __A)
1739{
1740 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1741 (__v8hi)_mm_cvtepu8_epi16(__A),
1742 (__v8hi)__W);
1743}
1744
1745static __inline__ __m128i __DEFAULT_FN_ATTRS128
1747{
1748 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1749 (__v8hi)_mm_cvtepu8_epi16(__A),
1750 (__v8hi)_mm_setzero_si128());
1751}
1752
1753static __inline__ __m256i __DEFAULT_FN_ATTRS256
1754_mm256_mask_cvtepu8_epi16(__m256i __W, __mmask16 __U, __m128i __A)
1755{
1756 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1757 (__v16hi)_mm256_cvtepu8_epi16(__A),
1758 (__v16hi)__W);
1759}
1760
1761static __inline__ __m256i __DEFAULT_FN_ATTRS256
1763{
1764 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1765 (__v16hi)_mm256_cvtepu8_epi16(__A),
1766 (__v16hi)_mm256_setzero_si256());
1767}
1768
1769
1770#define _mm_mask_shufflehi_epi16(W, U, A, imm) \
1771 ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
1772 (__v8hi)_mm_shufflehi_epi16((A), (imm)), \
1773 (__v8hi)(__m128i)(W)))
1774
1775#define _mm_maskz_shufflehi_epi16(U, A, imm) \
1776 ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
1777 (__v8hi)_mm_shufflehi_epi16((A), (imm)), \
1778 (__v8hi)_mm_setzero_si128()))
1779
1780#define _mm256_mask_shufflehi_epi16(W, U, A, imm) \
1781 ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
1782 (__v16hi)_mm256_shufflehi_epi16((A), (imm)), \
1783 (__v16hi)(__m256i)(W)))
1784
1785#define _mm256_maskz_shufflehi_epi16(U, A, imm) \
1786 ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
1787 (__v16hi)_mm256_shufflehi_epi16((A), (imm)), \
1788 (__v16hi)_mm256_setzero_si256()))
1789
1790#define _mm_mask_shufflelo_epi16(W, U, A, imm) \
1791 ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
1792 (__v8hi)_mm_shufflelo_epi16((A), (imm)), \
1793 (__v8hi)(__m128i)(W)))
1794
1795#define _mm_maskz_shufflelo_epi16(U, A, imm) \
1796 ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
1797 (__v8hi)_mm_shufflelo_epi16((A), (imm)), \
1798 (__v8hi)_mm_setzero_si128()))
1799
1800#define _mm256_mask_shufflelo_epi16(W, U, A, imm) \
1801 ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
1802 (__v16hi)_mm256_shufflelo_epi16((A), \
1803 (imm)), \
1804 (__v16hi)(__m256i)(W)))
1805
1806#define _mm256_maskz_shufflelo_epi16(U, A, imm) \
1807 ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
1808 (__v16hi)_mm256_shufflelo_epi16((A), \
1809 (imm)), \
1810 (__v16hi)_mm256_setzero_si256()))
1811
1812static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1813_mm256_sllv_epi16(__m256i __A, __m256i __B)
1814{
1815 return (__m256i)__builtin_ia32_psllv16hi((__v16hi)__A, (__v16hi)__B);
1816}
1817
1818static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1819_mm256_mask_sllv_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
1820{
1821 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1822 (__v16hi)_mm256_sllv_epi16(__A, __B),
1823 (__v16hi)__W);
1824}
1825
1826static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1827_mm256_maskz_sllv_epi16(__mmask16 __U, __m256i __A, __m256i __B)
1828{
1829 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1830 (__v16hi)_mm256_sllv_epi16(__A, __B),
1831 (__v16hi)_mm256_setzero_si256());
1832}
1833
1834static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1835_mm_sllv_epi16(__m128i __A, __m128i __B)
1836{
1837 return (__m128i)__builtin_ia32_psllv8hi((__v8hi)__A, (__v8hi)__B);
1838}
1839
1840static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1841_mm_mask_sllv_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
1842{
1843 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1844 (__v8hi)_mm_sllv_epi16(__A, __B),
1845 (__v8hi)__W);
1846}
1847
1848static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1849_mm_maskz_sllv_epi16(__mmask8 __U, __m128i __A, __m128i __B)
1850{
1851 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1852 (__v8hi)_mm_sllv_epi16(__A, __B),
1853 (__v8hi)_mm_setzero_si128());
1854}
1855
1856static __inline__ __m128i __DEFAULT_FN_ATTRS128
1857_mm_mask_sll_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
1858{
1859 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1860 (__v8hi)_mm_sll_epi16(__A, __B),
1861 (__v8hi)__W);
1862}
1863
1864static __inline__ __m128i __DEFAULT_FN_ATTRS128
1865_mm_maskz_sll_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
1866{
1867 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1868 (__v8hi)_mm_sll_epi16(__A, __B),
1869 (__v8hi)_mm_setzero_si128());
1870}
1871
1872static __inline__ __m256i __DEFAULT_FN_ATTRS256
1873_mm256_mask_sll_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B)
1874{
1875 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1876 (__v16hi)_mm256_sll_epi16(__A, __B),
1877 (__v16hi)__W);
1878}
1879
1880static __inline__ __m256i __DEFAULT_FN_ATTRS256
1881_mm256_maskz_sll_epi16(__mmask16 __U, __m256i __A, __m128i __B)
1882{
1883 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1884 (__v16hi)_mm256_sll_epi16(__A, __B),
1885 (__v16hi)_mm256_setzero_si256());
1886}
1887
1888static __inline__ __m128i __DEFAULT_FN_ATTRS128
1889_mm_mask_slli_epi16(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B)
1890{
1891 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1892 (__v8hi)_mm_slli_epi16(__A, (int)__B),
1893 (__v8hi)__W);
1894}
1895
1896static __inline__ __m128i __DEFAULT_FN_ATTRS128
1897_mm_maskz_slli_epi16 (__mmask8 __U, __m128i __A, unsigned int __B)
1898{
1899 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1900 (__v8hi)_mm_slli_epi16(__A, (int)__B),
1901 (__v8hi)_mm_setzero_si128());
1902}
1903
1904static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1905_mm256_mask_slli_epi16(__m256i __W, __mmask16 __U, __m256i __A,
1906 unsigned int __B) {
1907 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1908 (__v16hi)_mm256_slli_epi16(__A, (int)__B),
1909 (__v16hi)__W);
1910}
1911
1912static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1913_mm256_maskz_slli_epi16(__mmask16 __U, __m256i __A, unsigned int __B) {
1914 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1915 (__v16hi)_mm256_slli_epi16(__A, (int)__B),
1916 (__v16hi)_mm256_setzero_si256());
1917}
1918
1919static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1920_mm256_srlv_epi16(__m256i __A, __m256i __B)
1921{
1922 return (__m256i)__builtin_ia32_psrlv16hi((__v16hi)__A, (__v16hi)__B);
1923}
1924
1925static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1926_mm256_mask_srlv_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
1927{
1928 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1929 (__v16hi)_mm256_srlv_epi16(__A, __B),
1930 (__v16hi)__W);
1931}
1932
1933static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1934_mm256_maskz_srlv_epi16(__mmask16 __U, __m256i __A, __m256i __B)
1935{
1936 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1937 (__v16hi)_mm256_srlv_epi16(__A, __B),
1938 (__v16hi)_mm256_setzero_si256());
1939}
1940
1941static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1942_mm_srlv_epi16(__m128i __A, __m128i __B)
1943{
1944 return (__m128i)__builtin_ia32_psrlv8hi((__v8hi)__A, (__v8hi)__B);
1945}
1946
1947static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1948_mm_mask_srlv_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
1949{
1950 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1951 (__v8hi)_mm_srlv_epi16(__A, __B),
1952 (__v8hi)__W);
1953}
1954
1955static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1956_mm_maskz_srlv_epi16(__mmask8 __U, __m128i __A, __m128i __B)
1957{
1958 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1959 (__v8hi)_mm_srlv_epi16(__A, __B),
1960 (__v8hi)_mm_setzero_si128());
1961}
1962
1963static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1964_mm256_srav_epi16(__m256i __A, __m256i __B)
1965{
1966 return (__m256i)__builtin_ia32_psrav16hi((__v16hi)__A, (__v16hi)__B);
1967}
1968
1969static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1970_mm256_mask_srav_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
1971{
1972 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1973 (__v16hi)_mm256_srav_epi16(__A, __B),
1974 (__v16hi)__W);
1975}
1976
1977static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
1978_mm256_maskz_srav_epi16(__mmask16 __U, __m256i __A, __m256i __B)
1979{
1980 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
1981 (__v16hi)_mm256_srav_epi16(__A, __B),
1982 (__v16hi)_mm256_setzero_si256());
1983}
1984
1985static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1986_mm_srav_epi16(__m128i __A, __m128i __B)
1987{
1988 return (__m128i)__builtin_ia32_psrav8hi((__v8hi)__A, (__v8hi)__B);
1989}
1990
1991static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
1992_mm_mask_srav_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
1993{
1994 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
1995 (__v8hi)_mm_srav_epi16(__A, __B),
1996 (__v8hi)__W);
1997}
1998
1999static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
2000_mm_maskz_srav_epi16(__mmask8 __U, __m128i __A, __m128i __B)
2001{
2002 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
2003 (__v8hi)_mm_srav_epi16(__A, __B),
2004 (__v8hi)_mm_setzero_si128());
2005}
2006
2007static __inline__ __m128i __DEFAULT_FN_ATTRS128
2008_mm_mask_sra_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
2009{
2010 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
2011 (__v8hi)_mm_sra_epi16(__A, __B),
2012 (__v8hi)__W);
2013}
2014
2015static __inline__ __m128i __DEFAULT_FN_ATTRS128
2016_mm_maskz_sra_epi16(__mmask8 __U, __m128i __A, __m128i __B)
2017{
2018 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
2019 (__v8hi)_mm_sra_epi16(__A, __B),
2020 (__v8hi)_mm_setzero_si128());
2021}
2022
2023static __inline__ __m256i __DEFAULT_FN_ATTRS256
2024_mm256_mask_sra_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B)
2025{
2026 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
2027 (__v16hi)_mm256_sra_epi16(__A, __B),
2028 (__v16hi)__W);
2029}
2030
2031static __inline__ __m256i __DEFAULT_FN_ATTRS256
2032_mm256_maskz_sra_epi16(__mmask16 __U, __m256i __A, __m128i __B)
2033{
2034 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
2035 (__v16hi)_mm256_sra_epi16(__A, __B),
2036 (__v16hi)_mm256_setzero_si256());
2037}
2038
2039static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
2040_mm_mask_srai_epi16(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B) {
2041 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
2042 (__v8hi)_mm_srai_epi16(__A, (int)__B),
2043 (__v8hi)__W);
2044}
2045
2046static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
2047_mm_maskz_srai_epi16(__mmask8 __U, __m128i __A, unsigned int __B) {
2048 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
2049 (__v8hi)_mm_srai_epi16(__A, (int)__B),
2050 (__v8hi)_mm_setzero_si128());
2051}
2052
2053static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
2054_mm256_mask_srai_epi16(__m256i __W, __mmask16 __U, __m256i __A,
2055 unsigned int __B) {
2056 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
2057 (__v16hi)_mm256_srai_epi16(__A, (int)__B),
2058 (__v16hi)__W);
2059}
2060
2061static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
2062_mm256_maskz_srai_epi16(__mmask16 __U, __m256i __A, unsigned int __B) {
2063 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
2064 (__v16hi)_mm256_srai_epi16(__A, (int)__B),
2065 (__v16hi)_mm256_setzero_si256());
2066}
2067
2068static __inline__ __m128i __DEFAULT_FN_ATTRS128
2069_mm_mask_srl_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
2070{
2071 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
2072 (__v8hi)_mm_srl_epi16(__A, __B),
2073 (__v8hi)__W);
2074}
2075
2076static __inline__ __m128i __DEFAULT_FN_ATTRS128
2077_mm_maskz_srl_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
2078{
2079 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
2080 (__v8hi)_mm_srl_epi16(__A, __B),
2081 (__v8hi)_mm_setzero_si128());
2082}
2083
2084static __inline__ __m256i __DEFAULT_FN_ATTRS256
2085_mm256_mask_srl_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B)
2086{
2087 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
2088 (__v16hi)_mm256_srl_epi16(__A, __B),
2089 (__v16hi)__W);
2090}
2091
2092static __inline__ __m256i __DEFAULT_FN_ATTRS256
2093_mm256_maskz_srl_epi16(__mmask16 __U, __m256i __A, __m128i __B)
2094{
2095 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
2096 (__v16hi)_mm256_srl_epi16(__A, __B),
2097 (__v16hi)_mm256_setzero_si256());
2098}
2099
2100static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
2101_mm_mask_srli_epi16(__m128i __W, __mmask8 __U, __m128i __A, int __B) {
2102 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
2103 (__v8hi)_mm_srli_epi16(__A, __B),
2104 (__v8hi)__W);
2105}
2106
2107static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
2108_mm_maskz_srli_epi16(__mmask8 __U, __m128i __A, int __B) {
2109 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__U,
2110 (__v8hi)_mm_srli_epi16(__A, __B),
2111 (__v8hi)_mm_setzero_si128());
2112}
2113
2114static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
2115_mm256_mask_srli_epi16(__m256i __W, __mmask16 __U, __m256i __A, int __B) {
2116 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
2117 (__v16hi)_mm256_srli_epi16(__A, __B),
2118 (__v16hi)__W);
2119}
2120
2121static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
2122_mm256_maskz_srli_epi16(__mmask16 __U, __m256i __A, int __B) {
2123 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__U,
2124 (__v16hi)_mm256_srli_epi16(__A, __B),
2125 (__v16hi)_mm256_setzero_si256());
2126}
2127
2128static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
2129_mm_mask_mov_epi16(__m128i __W, __mmask8 __U, __m128i __A) {
2130 return (__m128i) __builtin_ia32_selectw_128 ((__mmask8) __U,
2131 (__v8hi) __A,
2132 (__v8hi) __W);
2133}
2134
2135static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
2137 return (__m128i) __builtin_ia32_selectw_128 ((__mmask8) __U,
2138 (__v8hi) __A,
2139 (__v8hi) _mm_setzero_si128 ());
2140}
2141
2142static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
2143_mm256_mask_mov_epi16(__m256i __W, __mmask16 __U, __m256i __A) {
2144 return (__m256i) __builtin_ia32_selectw_256 ((__mmask16) __U,
2145 (__v16hi) __A,
2146 (__v16hi) __W);
2147}
2148
2149static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
2151 return (__m256i) __builtin_ia32_selectw_256 ((__mmask16) __U,
2152 (__v16hi) __A,
2153 (__v16hi) _mm256_setzero_si256 ());
2154}
2155
2156static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
2157_mm_mask_mov_epi8(__m128i __W, __mmask16 __U, __m128i __A) {
2158 return (__m128i) __builtin_ia32_selectb_128 ((__mmask16) __U,
2159 (__v16qi) __A,
2160 (__v16qi) __W);
2161}
2162
2163static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR
2165 return (__m128i) __builtin_ia32_selectb_128 ((__mmask16) __U,
2166 (__v16qi) __A,
2167 (__v16qi) _mm_setzero_si128 ());
2168}
2169
2170static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
2171_mm256_mask_mov_epi8(__m256i __W, __mmask32 __U, __m256i __A) {
2172 return (__m256i) __builtin_ia32_selectb_256 ((__mmask32) __U,
2173 (__v32qi) __A,
2174 (__v32qi) __W);
2175}
2176
2177static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR
2179 return (__m256i) __builtin_ia32_selectb_256 ((__mmask32) __U,
2180 (__v32qi) __A,
2181 (__v32qi) _mm256_setzero_si256 ());
2182}
2183
2184static __inline__ __m128i __DEFAULT_FN_ATTRS128
2185_mm_mask_set1_epi8 (__m128i __O, __mmask16 __M, char __A)
2186{
2187 return (__m128i) __builtin_ia32_selectb_128(__M,
2188 (__v16qi) _mm_set1_epi8(__A),
2189 (__v16qi) __O);
2190}
2191
2192static __inline__ __m128i __DEFAULT_FN_ATTRS128
2194{
2195 return (__m128i) __builtin_ia32_selectb_128(__M,
2196 (__v16qi) _mm_set1_epi8(__A),
2197 (__v16qi) _mm_setzero_si128());
2198}
2199
2200static __inline__ __m256i __DEFAULT_FN_ATTRS256
2201_mm256_mask_set1_epi8 (__m256i __O, __mmask32 __M, char __A)
2202{
2203 return (__m256i) __builtin_ia32_selectb_256(__M,
2204 (__v32qi) _mm256_set1_epi8(__A),
2205 (__v32qi) __O);
2206}
2207
2208static __inline__ __m256i __DEFAULT_FN_ATTRS256
2210{
2211 return (__m256i) __builtin_ia32_selectb_256(__M,
2212 (__v32qi) _mm256_set1_epi8(__A),
2213 (__v32qi) _mm256_setzero_si256());
2214}
2215
2216static __inline __m128i __DEFAULT_FN_ATTRS128
2218{
2219 struct __loadu_epi16 {
2220 __m128i_u __v;
2221 } __attribute__((__packed__, __may_alias__));
2222 return ((const struct __loadu_epi16*)__P)->__v;
2223}
2224
2225static __inline__ __m128i __DEFAULT_FN_ATTRS128
2226_mm_mask_loadu_epi16 (__m128i __W, __mmask8 __U, void const *__P)
2227{
2228 return (__m128i) __builtin_ia32_loaddquhi128_mask ((const __v8hi *) __P,
2229 (__v8hi) __W,
2230 (__mmask8) __U);
2231}
2232
2233static __inline__ __m128i __DEFAULT_FN_ATTRS128
2235{
2236 return (__m128i) __builtin_ia32_loaddquhi128_mask ((const __v8hi *) __P,
2237 (__v8hi)
2239 (__mmask8) __U);
2240}
2241
2242static __inline __m256i __DEFAULT_FN_ATTRS256
2244{
2245 struct __loadu_epi16 {
2246 __m256i_u __v;
2247 } __attribute__((__packed__, __may_alias__));
2248 return ((const struct __loadu_epi16*)__P)->__v;
2249}
2250
2251static __inline__ __m256i __DEFAULT_FN_ATTRS256
2252_mm256_mask_loadu_epi16 (__m256i __W, __mmask16 __U, void const *__P)
2253{
2254 return (__m256i) __builtin_ia32_loaddquhi256_mask ((const __v16hi *) __P,
2255 (__v16hi) __W,
2256 (__mmask16) __U);
2257}
2258
2259static __inline__ __m256i __DEFAULT_FN_ATTRS256
2261{
2262 return (__m256i) __builtin_ia32_loaddquhi256_mask ((const __v16hi *) __P,
2263 (__v16hi)
2265 (__mmask16) __U);
2266}
2267
2268static __inline __m128i __DEFAULT_FN_ATTRS128
2269_mm_loadu_epi8 (void const *__P)
2270{
2271 struct __loadu_epi8 {
2272 __m128i_u __v;
2273 } __attribute__((__packed__, __may_alias__));
2274 return ((const struct __loadu_epi8*)__P)->__v;
2275}
2276
2277static __inline__ __m128i __DEFAULT_FN_ATTRS128
2278_mm_mask_loadu_epi8 (__m128i __W, __mmask16 __U, void const *__P)
2279{
2280 return (__m128i) __builtin_ia32_loaddquqi128_mask ((const __v16qi *) __P,
2281 (__v16qi) __W,
2282 (__mmask16) __U);
2283}
2284
2285static __inline__ __m128i __DEFAULT_FN_ATTRS128
2287{
2288 return (__m128i) __builtin_ia32_loaddquqi128_mask ((const __v16qi *) __P,
2289 (__v16qi)
2291 (__mmask16) __U);
2292}
2293
2294static __inline __m256i __DEFAULT_FN_ATTRS256
2296{
2297 struct __loadu_epi8 {
2298 __m256i_u __v;
2299 } __attribute__((__packed__, __may_alias__));
2300 return ((const struct __loadu_epi8*)__P)->__v;
2301}
2302
2303static __inline__ __m256i __DEFAULT_FN_ATTRS256
2304_mm256_mask_loadu_epi8 (__m256i __W, __mmask32 __U, void const *__P)
2305{
2306 return (__m256i) __builtin_ia32_loaddquqi256_mask ((const __v32qi *) __P,
2307 (__v32qi) __W,
2308 (__mmask32) __U);
2309}
2310
2311static __inline__ __m256i __DEFAULT_FN_ATTRS256
2313{
2314 return (__m256i) __builtin_ia32_loaddquqi256_mask ((const __v32qi *) __P,
2315 (__v32qi)
2317 (__mmask32) __U);
2318}
2319
2320static __inline void __DEFAULT_FN_ATTRS128
2321_mm_storeu_epi16 (void *__P, __m128i __A)
2322{
2323 struct __storeu_epi16 {
2324 __m128i_u __v;
2325 } __attribute__((__packed__, __may_alias__));
2326 ((struct __storeu_epi16*)__P)->__v = __A;
2327}
2328
2329static __inline__ void __DEFAULT_FN_ATTRS128
2330_mm_mask_storeu_epi16 (void *__P, __mmask8 __U, __m128i __A)
2331{
2332 __builtin_ia32_storedquhi128_mask ((__v8hi *) __P,
2333 (__v8hi) __A,
2334 (__mmask8) __U);
2335}
2336
2337static __inline void __DEFAULT_FN_ATTRS256
2338_mm256_storeu_epi16 (void *__P, __m256i __A)
2339{
2340 struct __storeu_epi16 {
2341 __m256i_u __v;
2342 } __attribute__((__packed__, __may_alias__));
2343 ((struct __storeu_epi16*)__P)->__v = __A;
2344}
2345
2346static __inline__ void __DEFAULT_FN_ATTRS256
2347_mm256_mask_storeu_epi16 (void *__P, __mmask16 __U, __m256i __A)
2348{
2349 __builtin_ia32_storedquhi256_mask ((__v16hi *) __P,
2350 (__v16hi) __A,
2351 (__mmask16) __U);
2352}
2353
2354static __inline void __DEFAULT_FN_ATTRS128
2355_mm_storeu_epi8 (void *__P, __m128i __A)
2356{
2357 struct __storeu_epi8 {
2358 __m128i_u __v;
2359 } __attribute__((__packed__, __may_alias__));
2360 ((struct __storeu_epi8*)__P)->__v = __A;
2361}
2362
2363static __inline__ void __DEFAULT_FN_ATTRS128
2364_mm_mask_storeu_epi8 (void *__P, __mmask16 __U, __m128i __A)
2365{
2366 __builtin_ia32_storedquqi128_mask ((__v16qi *) __P,
2367 (__v16qi) __A,
2368 (__mmask16) __U);
2369}
2370
2371static __inline void __DEFAULT_FN_ATTRS256
2372_mm256_storeu_epi8 (void *__P, __m256i __A)
2373{
2374 struct __storeu_epi8 {
2375 __m256i_u __v;
2376 } __attribute__((__packed__, __may_alias__));
2377 ((struct __storeu_epi8*)__P)->__v = __A;
2378}
2379
2380static __inline__ void __DEFAULT_FN_ATTRS256
2381_mm256_mask_storeu_epi8 (void *__P, __mmask32 __U, __m256i __A)
2382{
2383 __builtin_ia32_storedquqi256_mask ((__v32qi *) __P,
2384 (__v32qi) __A,
2385 (__mmask32) __U);
2386}
2387
2389_mm_test_epi8_mask(__m128i __A, __m128i __B) {
2391}
2392
2394_mm_mask_test_epi8_mask(__mmask16 __U, __m128i __A, __m128i __B) {
2395 return _mm_mask_cmpneq_epi8_mask (__U, _mm_and_si128 (__A, __B),
2397}
2398
2400_mm256_test_epi8_mask(__m256i __A, __m256i __B) {
2401 return _mm256_cmpneq_epi8_mask (_mm256_and_si256(__A, __B),
2403}
2404
2405static __inline__ __mmask32 __DEFAULT_FN_ATTRS256
2406_mm256_mask_test_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
2407{
2408 return _mm256_mask_cmpneq_epi8_mask (__U, _mm256_and_si256(__A, __B),
2410}
2411
2412static __inline__ __mmask8 __DEFAULT_FN_ATTRS128
2413_mm_test_epi16_mask (__m128i __A, __m128i __B)
2414{
2416}
2417
2418static __inline__ __mmask8 __DEFAULT_FN_ATTRS128
2419_mm_mask_test_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
2420{
2421 return _mm_mask_cmpneq_epi16_mask (__U, _mm_and_si128 (__A, __B),
2423}
2424
2425static __inline__ __mmask16 __DEFAULT_FN_ATTRS256
2426_mm256_test_epi16_mask (__m256i __A, __m256i __B)
2427{
2428 return _mm256_cmpneq_epi16_mask (_mm256_and_si256 (__A, __B),
2430}
2431
2432static __inline__ __mmask16 __DEFAULT_FN_ATTRS256
2433_mm256_mask_test_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
2434{
2435 return _mm256_mask_cmpneq_epi16_mask (__U, _mm256_and_si256(__A, __B),
2437}
2438
2440_mm_testn_epi8_mask(__m128i __A, __m128i __B) {
2442}
2443
2444static __inline__ __mmask16 __DEFAULT_FN_ATTRS128
2445_mm_mask_testn_epi8_mask (__mmask16 __U, __m128i __A, __m128i __B)
2446{
2447 return _mm_mask_cmpeq_epi8_mask (__U, _mm_and_si128 (__A, __B),
2449}
2450
2451static __inline__ __mmask32 __DEFAULT_FN_ATTRS256
2452_mm256_testn_epi8_mask (__m256i __A, __m256i __B)
2453{
2454 return _mm256_cmpeq_epi8_mask (_mm256_and_si256 (__A, __B),
2456}
2457
2458static __inline__ __mmask32 __DEFAULT_FN_ATTRS256
2459_mm256_mask_testn_epi8_mask (__mmask32 __U, __m256i __A, __m256i __B)
2460{
2461 return _mm256_mask_cmpeq_epi8_mask (__U, _mm256_and_si256 (__A, __B),
2463}
2464
2465static __inline__ __mmask8 __DEFAULT_FN_ATTRS128
2466_mm_testn_epi16_mask (__m128i __A, __m128i __B)
2467{
2469}
2470
2471static __inline__ __mmask8 __DEFAULT_FN_ATTRS128
2472_mm_mask_testn_epi16_mask (__mmask8 __U, __m128i __A, __m128i __B)
2473{
2475}
2476
2477static __inline__ __mmask16 __DEFAULT_FN_ATTRS256
2478_mm256_testn_epi16_mask (__m256i __A, __m256i __B)
2479{
2480 return _mm256_cmpeq_epi16_mask (_mm256_and_si256(__A, __B),
2482}
2483
2484static __inline__ __mmask16 __DEFAULT_FN_ATTRS256
2485_mm256_mask_testn_epi16_mask (__mmask16 __U, __m256i __A, __m256i __B)
2486{
2487 return _mm256_mask_cmpeq_epi16_mask (__U, _mm256_and_si256 (__A, __B),
2489}
2490
2491static __inline__ __mmask16 __DEFAULT_FN_ATTRS128
2492_mm_movepi8_mask (__m128i __A)
2493{
2494 return (__mmask16) __builtin_ia32_cvtb2mask128 ((__v16qi) __A);
2495}
2496
2497static __inline__ __mmask32 __DEFAULT_FN_ATTRS256
2499{
2500 return (__mmask32) __builtin_ia32_cvtb2mask256 ((__v32qi) __A);
2501}
2502
2503static __inline__ __mmask8 __DEFAULT_FN_ATTRS128
2505{
2506 return (__mmask8) __builtin_ia32_cvtw2mask128 ((__v8hi) __A);
2507}
2508
2509static __inline__ __mmask16 __DEFAULT_FN_ATTRS256
2511{
2512 return (__mmask16) __builtin_ia32_cvtw2mask256 ((__v16hi) __A);
2513}
2514
2515static __inline__ __m128i __DEFAULT_FN_ATTRS128
2517{
2518 return (__m128i) __builtin_ia32_cvtmask2b128 (__A);
2519}
2520
2521static __inline__ __m256i __DEFAULT_FN_ATTRS256
2523{
2524 return (__m256i) __builtin_ia32_cvtmask2b256 (__A);
2525}
2526
2527static __inline__ __m128i __DEFAULT_FN_ATTRS128
2529{
2530 return (__m128i) __builtin_ia32_cvtmask2w128 (__A);
2531}
2532
2533static __inline__ __m256i __DEFAULT_FN_ATTRS256
2535{
2536 return (__m256i) __builtin_ia32_cvtmask2w256 (__A);
2537}
2538
2539static __inline__ __m128i __DEFAULT_FN_ATTRS128
2540_mm_mask_broadcastb_epi8 (__m128i __O, __mmask16 __M, __m128i __A)
2541{
2542 return (__m128i)__builtin_ia32_selectb_128(__M,
2543 (__v16qi) _mm_broadcastb_epi8(__A),
2544 (__v16qi) __O);
2545}
2546
2547static __inline__ __m128i __DEFAULT_FN_ATTRS128
2549{
2550 return (__m128i)__builtin_ia32_selectb_128(__M,
2551 (__v16qi) _mm_broadcastb_epi8(__A),
2552 (__v16qi) _mm_setzero_si128());
2553}
2554
2555static __inline__ __m256i __DEFAULT_FN_ATTRS256
2556_mm256_mask_broadcastb_epi8 (__m256i __O, __mmask32 __M, __m128i __A)
2557{
2558 return (__m256i)__builtin_ia32_selectb_256(__M,
2559 (__v32qi) _mm256_broadcastb_epi8(__A),
2560 (__v32qi) __O);
2561}
2562
2563static __inline__ __m256i __DEFAULT_FN_ATTRS256
2565{
2566 return (__m256i)__builtin_ia32_selectb_256(__M,
2567 (__v32qi) _mm256_broadcastb_epi8(__A),
2568 (__v32qi) _mm256_setzero_si256());
2569}
2570
2571static __inline__ __m128i __DEFAULT_FN_ATTRS128
2572_mm_mask_broadcastw_epi16 (__m128i __O, __mmask8 __M, __m128i __A)
2573{
2574 return (__m128i)__builtin_ia32_selectw_128(__M,
2575 (__v8hi) _mm_broadcastw_epi16(__A),
2576 (__v8hi) __O);
2577}
2578
2579static __inline__ __m128i __DEFAULT_FN_ATTRS128
2581{
2582 return (__m128i)__builtin_ia32_selectw_128(__M,
2583 (__v8hi) _mm_broadcastw_epi16(__A),
2584 (__v8hi) _mm_setzero_si128());
2585}
2586
2587static __inline__ __m256i __DEFAULT_FN_ATTRS256
2588_mm256_mask_broadcastw_epi16 (__m256i __O, __mmask16 __M, __m128i __A)
2589{
2590 return (__m256i)__builtin_ia32_selectw_256(__M,
2591 (__v16hi) _mm256_broadcastw_epi16(__A),
2592 (__v16hi) __O);
2593}
2594
2595static __inline__ __m256i __DEFAULT_FN_ATTRS256
2597{
2598 return (__m256i)__builtin_ia32_selectw_256(__M,
2599 (__v16hi) _mm256_broadcastw_epi16(__A),
2600 (__v16hi) _mm256_setzero_si256());
2601}
2602
2603static __inline__ __m256i __DEFAULT_FN_ATTRS256
2604_mm256_mask_set1_epi16 (__m256i __O, __mmask16 __M, short __A)
2605{
2606 return (__m256i) __builtin_ia32_selectw_256 (__M,
2607 (__v16hi) _mm256_set1_epi16(__A),
2608 (__v16hi) __O);
2609}
2610
2611static __inline__ __m256i __DEFAULT_FN_ATTRS256
2613{
2614 return (__m256i) __builtin_ia32_selectw_256(__M,
2615 (__v16hi)_mm256_set1_epi16(__A),
2616 (__v16hi) _mm256_setzero_si256());
2617}
2618
2619static __inline__ __m128i __DEFAULT_FN_ATTRS128
2620_mm_mask_set1_epi16 (__m128i __O, __mmask8 __M, short __A)
2621{
2622 return (__m128i) __builtin_ia32_selectw_128(__M,
2623 (__v8hi) _mm_set1_epi16(__A),
2624 (__v8hi) __O);
2625}
2626
2627static __inline__ __m128i __DEFAULT_FN_ATTRS128
2629{
2630 return (__m128i) __builtin_ia32_selectw_128(__M,
2631 (__v8hi) _mm_set1_epi16(__A),
2632 (__v8hi) _mm_setzero_si128());
2633}
2634
2635static __inline__ __m128i __DEFAULT_FN_ATTRS128
2636_mm_permutexvar_epi16 (__m128i __A, __m128i __B)
2637{
2638 return (__m128i)__builtin_ia32_permvarhi128((__v8hi) __B, (__v8hi) __A);
2639}
2640
2641static __inline__ __m128i __DEFAULT_FN_ATTRS128
2642_mm_maskz_permutexvar_epi16 (__mmask8 __M, __m128i __A, __m128i __B)
2643{
2644 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
2645 (__v8hi)_mm_permutexvar_epi16(__A, __B),
2646 (__v8hi) _mm_setzero_si128());
2647}
2648
2649static __inline__ __m128i __DEFAULT_FN_ATTRS128
2650_mm_mask_permutexvar_epi16 (__m128i __W, __mmask8 __M, __m128i __A,
2651 __m128i __B)
2652{
2653 return (__m128i)__builtin_ia32_selectw_128((__mmask8)__M,
2654 (__v8hi)_mm_permutexvar_epi16(__A, __B),
2655 (__v8hi)__W);
2656}
2657
2658static __inline__ __m256i __DEFAULT_FN_ATTRS256
2659_mm256_permutexvar_epi16 (__m256i __A, __m256i __B)
2660{
2661 return (__m256i)__builtin_ia32_permvarhi256((__v16hi) __B, (__v16hi) __A);
2662}
2663
2664static __inline__ __m256i __DEFAULT_FN_ATTRS256
2666 __m256i __B)
2667{
2668 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
2669 (__v16hi)_mm256_permutexvar_epi16(__A, __B),
2670 (__v16hi)_mm256_setzero_si256());
2671}
2672
2673static __inline__ __m256i __DEFAULT_FN_ATTRS256
2674_mm256_mask_permutexvar_epi16 (__m256i __W, __mmask16 __M, __m256i __A,
2675 __m256i __B)
2676{
2677 return (__m256i)__builtin_ia32_selectw_256((__mmask16)__M,
2678 (__v16hi)_mm256_permutexvar_epi16(__A, __B),
2679 (__v16hi)__W);
2680}
2681
2682#define _mm_mask_alignr_epi8(W, U, A, B, N) \
2683 ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \
2684 (__v16qi)_mm_alignr_epi8((A), (B), (int)(N)), \
2685 (__v16qi)(__m128i)(W)))
2686
2687#define _mm_maskz_alignr_epi8(U, A, B, N) \
2688 ((__m128i)__builtin_ia32_selectb_128((__mmask16)(U), \
2689 (__v16qi)_mm_alignr_epi8((A), (B), (int)(N)), \
2690 (__v16qi)_mm_setzero_si128()))
2691
2692#define _mm256_mask_alignr_epi8(W, U, A, B, N) \
2693 ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \
2694 (__v32qi)_mm256_alignr_epi8((A), (B), (int)(N)), \
2695 (__v32qi)(__m256i)(W)))
2696
2697#define _mm256_maskz_alignr_epi8(U, A, B, N) \
2698 ((__m256i)__builtin_ia32_selectb_256((__mmask32)(U), \
2699 (__v32qi)_mm256_alignr_epi8((A), (B), (int)(N)), \
2700 (__v32qi)_mm256_setzero_si256()))
2701
2702#define _mm_dbsad_epu8(A, B, imm) \
2703 ((__m128i)__builtin_ia32_dbpsadbw128((__v16qi)(__m128i)(A), \
2704 (__v16qi)(__m128i)(B), (int)(imm)))
2705
2706#define _mm_mask_dbsad_epu8(W, U, A, B, imm) \
2707 ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
2708 (__v8hi)_mm_dbsad_epu8((A), (B), (imm)), \
2709 (__v8hi)(__m128i)(W)))
2710
2711#define _mm_maskz_dbsad_epu8(U, A, B, imm) \
2712 ((__m128i)__builtin_ia32_selectw_128((__mmask8)(U), \
2713 (__v8hi)_mm_dbsad_epu8((A), (B), (imm)), \
2714 (__v8hi)_mm_setzero_si128()))
2715
2716#define _mm256_dbsad_epu8(A, B, imm) \
2717 ((__m256i)__builtin_ia32_dbpsadbw256((__v32qi)(__m256i)(A), \
2718 (__v32qi)(__m256i)(B), (int)(imm)))
2719
2720#define _mm256_mask_dbsad_epu8(W, U, A, B, imm) \
2721 ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
2722 (__v16hi)_mm256_dbsad_epu8((A), (B), (imm)), \
2723 (__v16hi)(__m256i)(W)))
2724
2725#define _mm256_maskz_dbsad_epu8(U, A, B, imm) \
2726 ((__m256i)__builtin_ia32_selectw_256((__mmask16)(U), \
2727 (__v16hi)_mm256_dbsad_epu8((A), (B), (imm)), \
2728 (__v16hi)_mm256_setzero_si256()))
2729
2730static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2732 return __builtin_reduce_add((__v8hi)__W);
2733}
2734
2735static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2737 return __builtin_reduce_mul((__v8hi)__W);
2738}
2739
2740static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2742 return __builtin_reduce_and((__v8hi)__W);
2743}
2744
2745static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2747 return __builtin_reduce_or((__v8hi)__W);
2748}
2749
2750static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2752 __W = _mm_maskz_mov_epi16(__M, __W);
2753 return __builtin_reduce_add((__v8hi)__W);
2754}
2755
2756static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2758 __W = _mm_mask_mov_epi16(_mm_set1_epi16(1), __M, __W);
2759 return __builtin_reduce_mul((__v8hi)__W);
2760}
2761
2762static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2764 __W = _mm_mask_mov_epi16(_mm_set1_epi16(-1), __M, __W);
2765 return __builtin_reduce_and((__v8hi)__W);
2766}
2767
2768static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2770 __W = _mm_maskz_mov_epi16(__M, __W);
2771 return __builtin_reduce_or((__v8hi)__W);
2772}
2773
2774static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2776 return __builtin_reduce_max((__v8hi)__V);
2777}
2778
2779static __inline__ unsigned short __DEFAULT_FN_ATTRS128_CONSTEXPR
2781 return __builtin_reduce_max((__v8hu)__V);
2782}
2783
2784static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2786 return __builtin_reduce_min((__v8hi)__V);
2787}
2788
2789static __inline__ unsigned short __DEFAULT_FN_ATTRS128_CONSTEXPR
2791 return __builtin_reduce_min((__v8hu)__V);
2792}
2793
2794static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2796 __V = _mm_mask_mov_epi16(_mm_set1_epi16(-32767-1), __M, __V);
2797 return __builtin_reduce_max((__v8hi)__V);
2798}
2799
2800static __inline__ unsigned short __DEFAULT_FN_ATTRS128_CONSTEXPR
2802 __V = _mm_maskz_mov_epi16(__M, __V);
2803 return __builtin_reduce_max((__v8hu)__V);
2804}
2805
2806static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR
2808 __V = _mm_mask_mov_epi16(_mm_set1_epi16(32767), __M, __V);
2809 return __builtin_reduce_min((__v8hi)__V);
2810}
2811
2812static __inline__ unsigned short __DEFAULT_FN_ATTRS128_CONSTEXPR
2814 __V = _mm_mask_mov_epi16(_mm_set1_epi16(-1), __M, __V);
2815 return __builtin_reduce_min((__v8hu)__V);
2816}
2817
2818static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2820 return __builtin_reduce_add((__v16hi)__W);
2821}
2822
2823static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2825 return __builtin_reduce_mul((__v16hi)__W);
2826}
2827
2828static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2830 return __builtin_reduce_and((__v16hi)__W);
2831}
2832
2833static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2835 return __builtin_reduce_or((__v16hi)__W);
2836}
2837
2838static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2840 __W = _mm256_maskz_mov_epi16(__M, __W);
2841 return __builtin_reduce_add((__v16hi)__W);
2842}
2843
2844static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2846 __W = _mm256_mask_mov_epi16(_mm256_set1_epi16(1), __M, __W);
2847 return __builtin_reduce_mul((__v16hi)__W);
2848}
2849
2850static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2852 __W = _mm256_mask_mov_epi16(_mm256_set1_epi16(-1), __M, __W);
2853 return __builtin_reduce_and((__v16hi)__W);
2854}
2855
2856static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2858 __W = _mm256_maskz_mov_epi16(__M, __W);
2859 return __builtin_reduce_or((__v16hi)__W);
2860}
2861
2862static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2864 return __builtin_reduce_max((__v16hi)__V);
2865}
2866
2867static __inline__ unsigned short __DEFAULT_FN_ATTRS256_CONSTEXPR
2869 return __builtin_reduce_max((__v16hu)__V);
2870}
2871
2872static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2874 return __builtin_reduce_min((__v16hi)__V);
2875}
2876
2877static __inline__ unsigned short __DEFAULT_FN_ATTRS256_CONSTEXPR
2879 return __builtin_reduce_min((__v16hu)__V);
2880}
2881
2882static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2884 __V = _mm256_mask_mov_epi16(_mm256_set1_epi16(-32767-1), __M, __V);
2885 return __builtin_reduce_max((__v16hi)__V);
2886}
2887
2888static __inline__ unsigned short __DEFAULT_FN_ATTRS256_CONSTEXPR
2890 __V = _mm256_maskz_mov_epi16(__M, __V);
2891 return __builtin_reduce_max((__v16hu)__V);
2892}
2893
2894static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR
2896 __V = _mm256_mask_mov_epi16(_mm256_set1_epi16(32767), __M, __V);
2897 return __builtin_reduce_min((__v16hi)__V);
2898}
2899
2900static __inline__ unsigned short __DEFAULT_FN_ATTRS256_CONSTEXPR
2902 __V = _mm256_mask_mov_epi16(_mm256_set1_epi16(-1), __M, __V);
2903 return __builtin_reduce_min((__v16hu)__V);
2904}
2905
2906static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2908 return __builtin_reduce_add((__v16qs)__W);
2909}
2910
2911static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2913 return __builtin_reduce_mul((__v16qs)__W);
2914}
2915
2916static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2918 return __builtin_reduce_and((__v16qs)__W);
2919}
2920
2921static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2923 return __builtin_reduce_or((__v16qs)__W);
2924}
2925
2926static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2928 __W = _mm_maskz_mov_epi8(__M, __W);
2929 return __builtin_reduce_add((__v16qs)__W);
2930}
2931
2932static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2934 __W = _mm_mask_mov_epi8(_mm_set1_epi8(1), __M, __W);
2935 return __builtin_reduce_mul((__v16qs)__W);
2936}
2937
2938static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2940 __W = _mm_mask_mov_epi8(_mm_set1_epi8(-1), __M, __W);
2941 return __builtin_reduce_and((__v16qs)__W);
2942}
2943
2944static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2946 __W = _mm_maskz_mov_epi8(__M, __W);
2947 return __builtin_reduce_or((__v16qs)__W);
2948}
2949
2950static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2952 return __builtin_reduce_max((__v16qs)__V);
2953}
2954
2955static __inline__ unsigned char __DEFAULT_FN_ATTRS128_CONSTEXPR
2957 return __builtin_reduce_max((__v16qu)__V);
2958}
2959
2960static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2962 return __builtin_reduce_min((__v16qs)__V);
2963}
2964
2965static __inline__ unsigned char __DEFAULT_FN_ATTRS128_CONSTEXPR
2967 return __builtin_reduce_min((__v16qu)__V);
2968}
2969
2970static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2972 __V = _mm_mask_mov_epi8(_mm_set1_epi8(-127-1), __M, __V);
2973 return __builtin_reduce_max((__v16qs)__V);
2974}
2975
2976static __inline__ unsigned char __DEFAULT_FN_ATTRS128_CONSTEXPR
2978 __V = _mm_maskz_mov_epi8(__M, __V);
2979 return __builtin_reduce_max((__v16qu)__V);
2980}
2981
2982static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR
2984 __V = _mm_mask_mov_epi8(_mm_set1_epi8(127), __M, __V);
2985 return __builtin_reduce_min((__v16qs)__V);
2986}
2987
2988static __inline__ unsigned char __DEFAULT_FN_ATTRS128_CONSTEXPR
2990 __V = _mm_mask_mov_epi8(_mm_set1_epi8(-1), __M, __V);
2991 return __builtin_reduce_min((__v16qu)__V);
2992}
2993
2994static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
2996 return __builtin_reduce_add((__v32qs)__W);
2997}
2998
2999static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3001 return __builtin_reduce_mul((__v32qs)__W);
3002}
3003
3004static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3006 return __builtin_reduce_and((__v32qs)__W);
3007}
3008
3009static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3011 return __builtin_reduce_or((__v32qs)__W);
3012}
3013
3014static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3016 __W = _mm256_maskz_mov_epi8(__M, __W);
3017 return __builtin_reduce_add((__v32qs)__W);
3018}
3019
3020static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3022 __W = _mm256_mask_mov_epi8(_mm256_set1_epi8(1), __M, __W);
3023 return __builtin_reduce_mul((__v32qs)__W);
3024}
3025
3026static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3028 __W = _mm256_mask_mov_epi8(_mm256_set1_epi8(-1), __M, __W);
3029 return __builtin_reduce_and((__v32qs)__W);
3030}
3031
3032static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3034 __W = _mm256_maskz_mov_epi8(__M, __W);
3035 return __builtin_reduce_or((__v32qs)__W);
3036}
3037
3038static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3040 return __builtin_reduce_max((__v32qs)__V);
3041}
3042
3043static __inline__ unsigned char __DEFAULT_FN_ATTRS256_CONSTEXPR
3045 return __builtin_reduce_max((__v32qu)__V);
3046}
3047
3048static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3050 return __builtin_reduce_min((__v32qs)__V);
3051}
3052
3053static __inline__ unsigned char __DEFAULT_FN_ATTRS256_CONSTEXPR
3055 return __builtin_reduce_min((__v32qu)__V);
3056}
3057
3058static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3060 __V = _mm256_mask_mov_epi8(_mm256_set1_epi8(-127-1), __M, __V);
3061 return __builtin_reduce_max((__v32qs)__V);
3062}
3063
3064static __inline__ unsigned char __DEFAULT_FN_ATTRS256_CONSTEXPR
3066 __V = _mm256_maskz_mov_epi8(__M, __V);
3067 return __builtin_reduce_max((__v32qu)__V);
3068}
3069
3070static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR
3072 __V = _mm256_mask_mov_epi8(_mm256_set1_epi8(127), __M, __V);
3073 return __builtin_reduce_min((__v32qs)__V);
3074}
3075
3076static __inline__ unsigned char __DEFAULT_FN_ATTRS256_CONSTEXPR
3078 __V = _mm256_mask_mov_epi8(_mm256_set1_epi8(-1), __M, __V);
3079 return __builtin_reduce_min((__v32qu)__V);
3080}
3081
3082#undef __DEFAULT_FN_ATTRS128
3083#undef __DEFAULT_FN_ATTRS256
3084#undef __DEFAULT_FN_ATTRS128_CONSTEXPR
3085#undef __DEFAULT_FN_ATTRS256_CONSTEXPR
3086
3087#endif /* __AVX512VLBWINTRIN_H */
_Float16 __2f16 __attribute__((ext_vector_type(2)))
Zeroes the upper 128 bits (bits 255:128) of all YMM registers.
return __v
Definition arm_acle.h:88
#define __DEFAULT_FN_ATTRS128
#define __DEFAULT_FN_ATTRS256
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_srl_epi16(__m256i __a, __m128i __count)
Shifts each 16-bit element of the 256-bit vector of [16 x i16] in __a right by the number of bits giv...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_max_epu16(__m256i __a, __m256i __b)
Compares the corresponding unsigned 16-bit integers in the two 256-bit vectors of [16 x i16] in __a a...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mulhi_epi16(__m256i __a, __m256i __b)
Multiplies signed 16-bit integer elements of two 256-bit vectors of [16 x i16], and returns the upper...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_adds_epu8(__m256i __a, __m256i __b)
Adds 8-bit integers from corresponding bytes of two 256-bit integer vectors using unsigned saturation...
Definition avx2intrin.h:386
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maddubs_epi16(__m256i __a, __m256i __b)
Multiplies each unsigned byte from the 256-bit integer vector in __a with the corresponding signed by...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mulhi_epu16(__m256i __a, __m256i __b)
Multiplies unsigned 16-bit integer elements of two 256-bit vectors of [16 x i16], and returns the upp...
#define __DEFAULT_FN_ATTRS128_CONSTEXPR
Definition avx2intrin.h:30
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_broadcastb_epi8(__m128i __X)
Broadcasts the low byte from the 128-bit integer vector in __X to all bytes of the 128-bit result.
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_cvtepu8_epi16(__m128i __V)
Zero-extends bytes from the 128-bit integer vector in __V and returns the 16-bit values in the corres...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_subs_epu16(__m256i __a, __m256i __b)
Subtracts 16-bit integers from corresponding elements of two 256-bit vectors of [16 x i16] using unsi...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_packus_epi32(__m256i __V1, __m256i __V2)
Converts elements from two 256-bit vectors of [8 x i32] to 16-bit integers using unsigned saturation,...
Definition avx2intrin.h:261
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_broadcastb_epi8(__m128i __X)
Broadcasts the low byte from the 128-bit integer vector in __X to all bytes of the 256-bit result.
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_unpacklo_epi16(__m256i __a, __m256i __b)
Unpacks and interleaves 16-bit integers from parts of the 256-bit vectors of [16 x i16] in __a and __...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mullo_epi16(__m256i __a, __m256i __b)
Multiplies signed 16-bit integer elements of two 256-bit vectors of [16 x i16], and returns the lower...
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_broadcastw_epi16(__m128i __X)
Broadcasts the low element from the 128-bit vector of [8 x i16] in __X to all elements of the result'...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_adds_epi16(__m256i __a, __m256i __b)
Adds 16-bit integers from corresponding elements of two 256-bit vectors of [16 x i16] using signed sa...
Definition avx2intrin.h:368
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_min_epi8(__m256i __a, __m256i __b)
Compares the corresponding signed bytes in the two 256-bit integer vectors in __a and __b and returns...
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_sll_epi16(__m256i __a, __m128i __count)
Shifts each 16-bit element of the 256-bit vector of [16 x i16] in __a left by the number of bits spec...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_srli_epi16(__m256i __a, int __count)
Shifts each 16-bit element of the 256-bit vector of [16 x i16] in __a right by __count bits,...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_max_epi16(__m256i __a, __m256i __b)
Compares the corresponding signed 16-bit integers in the two 256-bit vectors of [16 x i16] in __a and...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_shuffle_epi8(__m256i __a, __m256i __b)
Shuffles 8-bit integers in the 256-bit integer vector __a according to control information in the 256...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_cvtepi8_epi16(__m128i __V)
Sign-extends bytes from the 128-bit integer vector in __V and returns the 16-bit values in the corres...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_unpacklo_epi8(__m256i __a, __m256i __b)
Unpacks and interleaves 8-bit integers from parts of the 256-bit integer vectors in __a and __b to fo...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_broadcastw_epi16(__m128i __X)
Broadcasts the low element from the 128-bit vector of [8 x i16] in __X to all elements of the result'...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_srai_epi16(__m256i __a, int __count)
Shifts each 16-bit element of the 256-bit vector of [16 x i16] in __a right by __count bits,...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_add_epi8(__m256i __a, __m256i __b)
Adds 8-bit integers from corresponding bytes of two 256-bit integer vectors and returns the lower 8 b...
Definition avx2intrin.h:279
#define __DEFAULT_FN_ATTRS256_CONSTEXPR
Definition avx2intrin.h:29
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_min_epu16(__m256i __a, __m256i __b)
Compares the corresponding unsigned 16-bit integers in the two 256-bit vectors of [16 x i16] in __a a...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_subs_epu8(__m256i __a, __m256i __b)
Subtracts 8-bit integers from corresponding bytes of two 256-bit integer vectors using unsigned satur...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_subs_epi16(__m256i __a, __m256i __b)
Subtracts 16-bit integers from corresponding elements of two 256-bit vectors of [16 x i16] using sign...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_abs_epi8(__m256i __a)
Computes the absolute value of each signed byte in the 256-bit integer vector __a and returns each va...
Definition avx2intrin.h:107
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_unpackhi_epi8(__m256i __a, __m256i __b)
Unpacks and interleaves 8-bit integers from parts of the 256-bit integer vectors in __a and __b to fo...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_sub_epi16(__m256i __a, __m256i __b)
Subtracts 16-bit integers from corresponding elements of two 256-bit vectors of [16 x i16].
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_and_si256(__m256i __a, __m256i __b)
Computes the bitwise AND of the 256-bit integer vectors in __a and __b.
Definition avx2intrin.h:448
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_packus_epi16(__m256i __a, __m256i __b)
Converts elements from two 256-bit vectors of [16 x i16] to 8-bit integers using unsigned saturation,...
Definition avx2intrin.h:230
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_abs_epi16(__m256i __a)
Computes the absolute value of each signed 16-bit element in the 256-bit vector of [16 x i16] in __a ...
Definition avx2intrin.h:123
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_max_epu8(__m256i __a, __m256i __b)
Compares the corresponding unsigned bytes in the two 256-bit integer vectors in __a and __b and retur...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_add_epi16(__m256i __a, __m256i __b)
Adds 16-bit integers from corresponding elements of two 256-bit vectors of [16 x i16] and returns the...
Definition avx2intrin.h:297
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_min_epu8(__m256i __a, __m256i __b)
Compares the corresponding unsigned bytes in the two 256-bit integer vectors in __a and __b and retur...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_sub_epi8(__m256i __a, __m256i __b)
Subtracts 8-bit integers from corresponding bytes of two 256-bit integer vectors.
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_min_epi16(__m256i __a, __m256i __b)
Compares the corresponding signed 16-bit integers in the two 256-bit vectors of [16 x i16] in __a and...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_avg_epu16(__m256i __a, __m256i __b)
Computes the averages of the corresponding unsigned 16-bit integers in the two 256-bit vectors of [16...
Definition avx2intrin.h:517
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_sra_epi16(__m256i __a, __m128i __count)
Shifts each 16-bit element of the 256-bit vector of [16 x i16] in __a right by the number of bits giv...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_adds_epu16(__m256i __a, __m256i __b)
Adds 16-bit integers from corresponding elements of two 256-bit vectors of [16 x i16] using unsigned ...
Definition avx2intrin.h:403
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_madd_epi16(__m256i __a, __m256i __b)
Multiplies corresponding 16-bit elements of two 256-bit vectors of [16 x i16], forming 32-bit interme...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_max_epi8(__m256i __a, __m256i __b)
Compares the corresponding signed bytes in the two 256-bit integer vectors in __a and __b and returns...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_unpackhi_epi16(__m256i __a, __m256i __b)
Unpacks and interleaves 16-bit integers from parts of the 256-bit vectors of [16 x i16] in __a and __...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_subs_epi8(__m256i __a, __m256i __b)
Subtracts 8-bit integers from corresponding bytes of two 256-bit integer vectors using signed saturat...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_packs_epi32(__m256i __a, __m256i __b)
Converts the elements of two 256-bit vectors of [8 x i32] to 16-bit integers using signed saturation,...
Definition avx2intrin.h:200
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mulhrs_epi16(__m256i __a, __m256i __b)
Multiplies signed 16-bit integer elements of two 256-bit vectors of [16 x i16], truncates the 32-bit ...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_adds_epi8(__m256i __a, __m256i __b)
Adds 8-bit integers from corresponding bytes of two 256-bit integer vectors using signed saturation,...
Definition avx2intrin.h:351
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_slli_epi16(__m256i __a, int __count)
Shifts each 16-bit element of the 256-bit vector of [16 x i16] in __a left by __count bits,...
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_packs_epi16(__m256i __a, __m256i __b)
Converts the elements of two 256-bit vectors of [16 x i16] to 8-bit integers using signed saturation,...
Definition avx2intrin.h:169
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_avg_epu8(__m256i __a, __m256i __b)
Computes the averages of the corresponding unsigned bytes in the two 256-bit integer vectors in __a a...
Definition avx2intrin.h:492
unsigned int __mmask32
unsigned char __mmask8
unsigned short __mmask16
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_sra_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_add_epi8(__mmask32 __M, __m256i __W)
static __inline__ unsigned short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_max_epu16(__m128i __V)
#define _mm256_mask_cmpeq_epi16_mask(k, A, B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_mul_epi8(__m256i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_slli_epi16(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_min_epi8(__m256i __V)
static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 _mm256_mask_test_epi8_mask(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_srav_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline void __DEFAULT_FN_ATTRS128 _mm_storeu_epi16(void *__P, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_cvtepu8_epi16(__m128i __W, __mmask8 __U, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_mulhrs_epi16(__mmask8 __U, __m128i __X, __m128i __Y)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_sub_epi8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_broadcastb_epi8(__m128i __O, __mmask16 __M, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_subs_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_cvtsepi16_epi8(__mmask8 __M, __m128i __A)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 _mm_movepi8_mask(__m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_loadu_epi8(__m128i __W, __mmask16 __U, void const *__P)
static __inline__ unsigned char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_min_epu8(__mmask16 __M, __m128i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_cvtepi8_epi16(__mmask8 __U, __m128i __A)
static __inline __m128i __DEFAULT_FN_ATTRS128 _mm_loadu_epi8(void const *__P)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_broadcastb_epi8(__m256i __O, __mmask32 __M, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_mulhi_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
#define _mm256_cmpeq_epi8_mask(A, B)
static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 _mm_movepi16_mask(__m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_subs_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask2_permutex2var_epi16(__m128i __A, __m128i __I, __mmask8 __U, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_adds_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_cvtepu8_epi16(__mmask8 __U, __m128i __A)
#define _mm_cmpneq_epi16_mask(A, B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_unpackhi_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_abs_epi8(__m256i __W, __mmask32 __U, __m256i __A)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_and_epi16(__m128i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_unpackhi_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
#define _mm_mask_cmpeq_epi8_mask(k, A, B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_min_epi8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_adds_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_add_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_srai_epi16(__mmask16 __U, __m256i __A, unsigned int __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_max_epi16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_unpackhi_epi8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_unpackhi_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_abs_epi8(__mmask32 __U, __m256i __A)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_and_epi8(__m128i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_srav_epi16(__m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_maddubs_epi16(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_min_epi8(__mmask32 __M, __m256i __V)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_mul_epi16(__mmask16 __M, __m256i __W)
static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 _mm_mask_testn_epi16_mask(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_broadcastb_epi8(__mmask32 __M, __m128i __A)
#define _mm_cmpneq_epi8_mask(A, B)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_or_epi8(__mmask16 __M, __m128i __W)
static __inline__ void __DEFAULT_FN_ATTRS256 _mm256_mask_cvtusepi16_storeu_epi8(void *__P, __mmask16 __M, __m256i __A)
static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 _mm_testn_epi16_mask(__m128i __A, __m128i __B)
#define _mm256_mask_cmpneq_epi8_mask(k, A, B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_sll_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_permutexvar_epi16(__mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_sub_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_max_epu16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_min_epi16(__m256i __V)
static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 _mm_mask_test_epi16_mask(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_min_epi16(__mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_subs_epi8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_packs_epi16(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_min_epu16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_packus_epi16(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_and_epi8(__mmask32 __M, __m256i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_mulhi_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_packus_epi32(__mmask8 __M, __m128i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_add_epi8(__m256i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_subs_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline __m256i __DEFAULT_FN_ATTRS256 _mm256_loadu_epi16(void const *__P)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_min_epi16(__mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_subs_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
static __inline__ void __DEFAULT_FN_ATTRS256 _mm256_mask_storeu_epi16(void *__P, __mmask16 __U, __m256i __A)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_mul_epi16(__m128i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_cvtusepi16_epi8(__mmask8 __M, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_packus_epi32(__mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_max_epi16(__mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_srav_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_sub_epi8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ unsigned short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_min_epu16(__mmask16 __M, __m256i __V)
#define _mm256_cmpneq_epi8_mask(A, B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_max_epi8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_permutexvar_epi16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_maddubs_epi16(__mmask16 __U, __m256i __X, __m256i __Y)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_blend_epi8(__mmask32 __U, __m256i __A, __m256i __W)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_and_epi16(__mmask8 __M, __m128i __W)
static __inline__ unsigned char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_max_epu8(__mmask32 __M, __m256i __V)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_maddubs_epi16(__m256i __W, __mmask16 __U, __m256i __X, __m256i __Y)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_adds_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __mmask32 __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_test_epi8_mask(__m256i __A, __m256i __B)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_max_epi16(__m128i __V)
static __inline__ unsigned short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_min_epu16(__m256i __V)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS128 _mm_mask_testn_epi8_mask(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_or_epi8(__mmask32 __M, __m256i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_add_epi8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_unpackhi_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 _mm256_mask_test_epi16_mask(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_packs_epi16(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_packs_epi16(__mmask32 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_set1_epi16(__mmask8 __M, short __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_srlv_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_add_epi8(__mmask16 __M, __m128i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_set1_epi8(__m256i __O, __mmask32 __M, char __A)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_min_epi8(__mmask16 __M, __m128i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_min_epu16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_loadu_epi8(__mmask16 __U, void const *__P)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_max_epu8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_or_epi16(__m128i __W)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_max_epi8(__mmask16 __M, __m128i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_adds_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __mmask8 __DEFAULT_FN_ATTRS128 _mm_test_epi16_mask(__m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_maskz_cvtsepi16_epi8(__mmask16 __M, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_set1_epi8(__m128i __O, __mmask16 __M, char __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_abs_epi8(__m128i __W, __mmask16 __U, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_adds_epi8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_subs_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_srlv_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_subs_epu8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_subs_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_adds_epu8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_and_epi16(__m256i __W)
static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 _mm256_mask_testn_epi8_mask(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 _mm256_movepi8_mask(__m256i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_add_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
#define _mm_cmpeq_epi8_mask(A, B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_srli_epi16(__mmask16 __U, __m256i __A, int __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_cvtepi16_epi8(__mmask8 __M, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_packus_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B)
static __inline void __DEFAULT_FN_ATTRS256 _mm256_storeu_epi16(void *__P, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_sll_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_set1_epi8(__mmask32 __M, char __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_cvtsepi16_epi8(__m128i __O, __mmask8 __M, __m128i __A)
static __inline__ __mmask32 __DEFAULT_FN_ATTRS256 _mm256_testn_epi8_mask(__m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_mulhi_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_mulhi_epu16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_cvtepu8_epi16(__mmask16 __U, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_adds_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_loadu_epi8(__m256i __W, __mmask32 __U, void const *__P)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_mul_epi8(__m128i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_max_epi8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_permutex2var_epi16(__m256i __A, __m256i __I, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_min_epu8(__mmask16 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_add_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_add_epi8(__m128i __W)
static __inline__ unsigned short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_min_epu16(__m128i __V)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_adds_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_slli_epi16(__mmask16 __U, __m256i __A, unsigned int __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_permutex2var_epi16(__mmask8 __U, __m128i __A, __m128i __I, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_adds_epi8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_max_epi16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_subs_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ void __DEFAULT_FN_ATTRS256 _mm256_mask_storeu_epi8(void *__P, __mmask32 __U, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_srai_epi16(__m128i __W, __mmask8 __U, __m128i __A, unsigned int __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_set1_epi16(__mmask16 __M, short __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_srav_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_max_epi8(__m256i __V)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_add_epi16(__m128i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_packs_epi16(__mmask16 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_packs_epi32(__mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_min_epu16(__mmask16 __M, __m256i __A, __m256i __B)
static __inline__ void __DEFAULT_FN_ATTRS128 _mm_mask_storeu_epi16(void *__P, __mmask8 __U, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_cvtepi16_epi8(__m128i __O, __mmask16 __M, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_sub_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_or_epi16(__mmask16 __M, __m256i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_movm_epi8(__mmask16 __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_unpacklo_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_packus_epi16(__mmask32 __M, __m256i __A, __m256i __B)
static __inline__ unsigned char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_max_epu8(__mmask16 __M, __m128i __V)
#define _mm256_cmpeq_epi16_mask(A, B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_max_epi8(__mmask32 __M, __m256i __V)
static __inline void __DEFAULT_FN_ATTRS128 _mm_storeu_epi8(void *__P, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_permutex2var_epi16(__m128i __A, __mmask8 __U, __m128i __I, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_blend_epi16(__mmask8 __U, __m128i __A, __m128i __W)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_and_epi8(__mmask16 __M, __m128i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_packus_epi16(__mmask16 __M, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_srlv_epi16(__m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_sra_epi16(__mmask16 __U, __m256i __A, __m128i __B)
static __inline__ unsigned char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_max_epu8(__m128i __V)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_min_epu8(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_or_epi16(__mmask8 __M, __m128i __W)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_mul_epi8(__mmask16 __M, __m128i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtusepi16_epi8(__m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_adds_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 _mm256_movepi16_mask(__m256i __A)
static __inline__ void __DEFAULT_FN_ATTRS256 _mm256_mask_cvtsepi16_storeu_epi8(void *__P, __mmask16 __M, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_set1_epi16(__m128i __O, __mmask8 __M, short __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_mov_epi16(__mmask16 __U, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_min_epi8(__mmask16 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_abs_epi16(__mmask16 __U, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_add_epi8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_loadu_epi16(__m256i __W, __mmask16 __U, void const *__P)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_permutexvar_epi16(__mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_subs_epi8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_srl_epi16(__mmask16 __U, __m256i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_mulhi_epu16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_cvtepi8_epi16(__m128i __W, __mmask8 __U, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_cvtepi16_epi8(__m128i __O, __mmask8 __M, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_mov_epi8(__m256i __W, __mmask32 __U, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_max_epu16(__mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_broadcastw_epi16(__mmask8 __M, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_avg_epu8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_mul_epi16(__mmask8 __M, __m128i __W)
static __inline__ unsigned char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_max_epu8(__m256i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_max_epu8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B)
static __inline__ void __DEFAULT_FN_ATTRS128 _mm_mask_cvtsepi16_storeu_epi8(void *__P, __mmask8 __M, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_min_epu8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_adds_epu16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_blend_epi8(__mmask16 __U, __m128i __A, __m128i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_avg_epu16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_srai_epi16(__mmask8 __U, __m128i __A, unsigned int __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_sub_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_mulhrs_epi16(__m128i __W, __mmask8 __U, __m128i __X, __m128i __Y)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_sllv_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_mulhi_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_mov_epi16(__m256i __W, __mmask16 __U, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_set1_epi8(__mmask16 __M, char __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_unpackhi_epi8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_loadu_epi8(__mmask32 __U, void const *__P)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_permutex2var_epi16(__m256i __A, __mmask16 __U, __m256i __I, __m256i __B)
static __inline__ void __DEFAULT_FN_ATTRS128 _mm_mask_cvtepi16_storeu_epi8(void *__P, __mmask8 __M, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_max_epi16(__mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_max_epu8(__mmask16 __M, __m128i __A, __m128i __B)
static __inline__ void __DEFAULT_FN_ATTRS128 _mm_mask_cvtusepi16_storeu_epi8(void *__P, __mmask8 __M, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_max_epu16(__mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_adds_epu8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_shuffle_epi8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_subs_epu16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_subs_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
static __inline__ void __DEFAULT_FN_ATTRS256 _mm256_mask_cvtepi16_storeu_epi8(void *__P, __mmask16 __M, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_max_epu16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_testn_epi8_mask(__m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_permutex2var_epi16(__mmask16 __U, __m256i __A, __m256i __I, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_packs_epi32(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B)
#define _mm_mask_cmpneq_epi16_mask(k, A, B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_madd_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_max_epi8(__mmask32 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_srlv_epi16(__m256i __A, __m256i __B)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 _mm256_test_epi16_mask(__m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_maskz_cvtusepi16_epi8(__mmask16 __M, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_avg_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_subs_epu8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_sllv_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_min_epi16(__mmask16 __M, __m128i __V)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_srlv_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_srav_epi16(__m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_sub_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_movm_epi8(__mmask32 __A)
#define _mm_cmpeq_epi16_mask(A, B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_sllv_epi16(__mmask8 __U, __m128i __A, __m128i __B)
#define _mm_mask_cmpeq_epi16_mask(k, A, B)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_max_epi16(__m256i __V)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_avg_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_mov_epi16(__mmask8 __U, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_min_epi8(__mmask32 __M, __m256i __A, __m256i __B)
static __inline__ unsigned short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_max_epu16(__mmask16 __M, __m128i __V)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_max_epi8(__m128i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_mask_cvtsepi16_epi8(__m128i __O, __mmask16 __M, __m256i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_adds_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_sub_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline void __DEFAULT_FN_ATTRS256 _mm256_storeu_epi8(void *__P, __m256i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_movm_epi16(__mmask16 __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_permutexvar_epi16(__m128i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_or_epi8(__m128i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_mov_epi8(__m128i __W, __mmask16 __U, __m128i __A)
static __inline__ void __DEFAULT_FN_ATTRS128 _mm_mask_storeu_epi8(void *__P, __mmask16 __U, __m128i __A)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_add_epi16(__m256i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_avg_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_permutexvar_epi16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_add_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_sra_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_unpacklo_epi8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_max_epi16(__mmask16 __M, __m128i __V)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_adds_epu8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
static __inline__ unsigned char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_min_epu8(__mmask32 __M, __m256i __V)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_srli_epi16(__m256i __W, __mmask16 __U, __m256i __A, int __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_loadu_epi16(__mmask8 __U, void const *__P)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_mullo_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_or_epi16(__m256i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_shuffle_epi8(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_add_epi16(__mmask16 __M, __m256i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_abs_epi8(__mmask16 __U, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_packs_epi32(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_sub_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_srli_epi16(__mmask8 __U, __m128i __A, int __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_mullo_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_min_epi16(__m128i __V)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_mov_epi8(__mmask32 __U, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_permutex2var_epi16(__m128i __A, __m128i __I, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_broadcastw_epi16(__m256i __O, __mmask16 __M, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_cvtusepi16_epi8(__m128i __O, __mmask8 __M, __m128i __A)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 _mm256_testn_epi16_mask(__m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_cvtepi16_epi8(__mmask16 __M, __m256i __A)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS256 _mm256_mask_testn_epi16_mask(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_unpacklo_epi8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_min_epi16(__mmask16 __M, __m256i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_unpackhi_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_mullo_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_srav_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_slli_epi16(__mmask8 __U, __m128i __A, unsigned int __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_adds_epu16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline __m256i __DEFAULT_FN_ATTRS256 _mm256_loadu_epi8(void const *__P)
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_mask_cvtusepi16_epi8(__m128i __O, __mmask16 __M, __m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_max_epi8(__mmask16 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_sllv_epi16(__m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_packs_epi32(__mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_sllv_epi16(__m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_avg_epu16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_shuffle_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_unpacklo_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_subs_epu16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_mulhrs_epi16(__m256i __W, __mmask16 __U, __m256i __X, __m256i __Y)
#define _mm256_mask_cmpeq_epi8_mask(k, A, B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_subs_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_srli_epi16(__m128i __W, __mmask8 __U, __m128i __A, int __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_cvtsepi16_epi8(__m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_cvtepi16_epi8(__m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_unpacklo_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ unsigned short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_max_epu16(__mmask16 __M, __m256i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_cvtsepi16_epi8(__m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_shuffle_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ unsigned char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_min_epu8(__m128i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_broadcastw_epi16(__m128i __O, __mmask8 __M, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_add_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_test_epi8_mask(__m128i __A, __m128i __B)
static __inline__ unsigned char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_min_epu8(__m256i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_broadcastb_epi8(__mmask16 __M, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_mullo_epi16(__mmask16 __U, __m256i __A, __m256i __B)
#define _mm256_mask_cmpneq_epi16_mask(k, A, B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_sll_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_abs_epi16(__m256i __W, __mmask16 __U, __m256i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_unpacklo_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_srlv_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_mul_epi8(__mmask32 __M, __m256i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_mulhrs_epi16(__mmask16 __U, __m256i __X, __m256i __Y)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_min_epu16(__mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_srai_epi16(__m256i __W, __mmask16 __U, __m256i __A, unsigned int __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_set1_epi16(__m256i __O, __mmask16 __M, short __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_add_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_sra_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_maddubs_epi16(__mmask8 __U, __m128i __X, __m128i __Y)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_abs_epi16(__m128i __W, __mmask8 __U, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_sll_epi16(__mmask16 __U, __m256i __A, __m128i __B)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_max_epi16(__mmask16 __M, __m256i __V)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_cvtepi8_epi16(__mmask16 __U, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_unpacklo_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_min_epu8(__mmask32 __M, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_subs_epi16(__mmask16 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_min_epi16(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_mov_epi8(__mmask16 __U, __m128i __A)
static __inline__ unsigned short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_max_epu16(__m256i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_loadu_epi16(__m128i __W, __mmask8 __U, void const *__P)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_movm_epi16(__mmask8 __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_mulhi_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_reduce_and_epi16(__mmask16 __M, __m256i __W)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_or_epi8(__m256i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS256 _mm256_cvtusepi16_epi8(__m256i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_avg_epu8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_avg_epu8(__mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_mask_srl_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_blend_epi16(__mmask16 __U, __m256i __A, __m256i __W)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_srl_epi16(__mmask8 __U, __m128i __A, __m128i __B)
#define _mm_mask_cmpneq_epi8_mask(k, A, B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_broadcastw_epi16(__mmask16 __M, __m128i __A)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask2_permutex2var_epi16(__m256i __A, __m256i __I, __mmask16 __U, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_cvtepu8_epi16(__m256i __W, __mmask16 __U, __m128i __A)
static __inline__ short __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_mul_epi16(__m256i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_packus_epi16(__m256i __W, __mmask32 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_min_epi8(__m128i __W, __mmask16 __M, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_max_epu8(__mmask32 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_mov_epi16(__m128i __W, __mmask8 __U, __m128i __A)
#define _mm256_cmpneq_epi16_mask(A, B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_madd_epi16(__m256i __W, __mmask8 __U, __m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_maskz_loadu_epi16(__mmask16 __U, void const *__P)
static __inline__ unsigned short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_min_epu16(__mmask16 __M, __m128i __V)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_cvtepi16_epi8(__m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_min_epi16(__m128i __W, __mmask8 __M, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_sllv_epi16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_mulhi_epu16(__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_permutexvar_epi16(__m256i __A, __m256i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_unpacklo_epi8(__m256i __W, __mmask32 __U, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_unpackhi_epi8(__m128i __W, __mmask16 __U, __m128i __A, __m128i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_madd_epi16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_srl_epi16(__m256i __W, __mmask16 __U, __m256i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_reduce_and_epi8(__m256i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_cvtepi8_epi16(__m256i __W, __mmask16 __U, __m128i __A)
static __inline__ __m128i __DEFAULT_FN_ATTRS128 _mm_maskz_adds_epu16(__mmask8 __U, __m128i __A, __m128i __B)
static __inline __m128i __DEFAULT_FN_ATTRS128 _mm_loadu_epi16(void const *__P)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_mask_slli_epi16(__m256i __W, __mmask16 __U, __m256i __A, unsigned int __B)
static __inline__ __m256i __DEFAULT_FN_ATTRS256 _mm256_mask_packus_epi32(__m256i __W, __mmask16 __M, __m256i __A, __m256i __B)
static __inline__ __m128i __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_maskz_abs_epi16(__mmask8 __U, __m128i __A)
static __inline__ short __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_reduce_add_epi16(__mmask8 __M, __m128i __W)
static __inline__ __m256i __DEFAULT_FN_ATTRS256_CONSTEXPR _mm256_maskz_madd_epi16(__mmask8 __U, __m256i __A, __m256i __B)
static __inline__ __mmask16 __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_mask_test_epi8_mask(__mmask16 __U, __m128i __A, __m128i __B)
static __inline__ signed char __DEFAULT_FN_ATTRS128_CONSTEXPR _mm_reduce_min_epi8(__m128i __V)
static __inline __m256i __DEFAULT_FN_ATTRS_CONSTEXPR _mm256_setzero_si256(void)
Constructs a 256-bit integer vector initialized to zero.
Definition avxintrin.h:4316
static __inline __m256i __DEFAULT_FN_ATTRS_CONSTEXPR _mm256_set1_epi16(short __w)
Constructs a 256-bit integer vector of [16 x i16], with each of the 16-bit integral vector elements s...
Definition avxintrin.h:4239
static __inline __m256i __DEFAULT_FN_ATTRS_CONSTEXPR _mm256_set1_epi8(char __b)
Constructs a 256-bit integer vector of [32 x i8], with each of the 8-bit integral vector elements set...
Definition avxintrin.h:4257
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_subs_epu16(__m128i __a, __m128i __b)
Subtracts, with saturation, corresponding 16-bit unsigned integer values in the input and returns the...
Definition emmintrin.h:2657
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_min_epu8(__m128i __a, __m128i __b)
Compares corresponding elements of two 128-bit unsigned [16 x i8] vectors, saving the smaller value f...
Definition emmintrin.h:2370
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_packs_epi32(__m128i __a, __m128i __b)
Converts, with saturation, 32-bit signed integers from both 128-bit integer vector operands into 16-b...
Definition emmintrin.h:4186
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_avg_epu8(__m128i __a, __m128i __b)
Computes the rounded averages of corresponding elements of two 128-bit unsigned [16 x i8] vectors,...
Definition emmintrin.h:2250
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_srai_epi16(__m128i __a, int __count)
Right-shifts each 16-bit value in the 128-bit integer vector operand by the specified number of bits.
Definition emmintrin.h:2878
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_max_epu8(__m128i __a, __m128i __b)
Compares corresponding elements of two 128-bit unsigned [16 x i8] vectors, saving the greater value f...
Definition emmintrin.h:2332
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_unpacklo_epi8(__m128i __a, __m128i __b)
Unpacks the low-order (index 0-7) values from two 128-bit vectors of [16 x i8] and interleaves them i...
Definition emmintrin.h:4524
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_avg_epu16(__m128i __a, __m128i __b)
Computes the rounded averages of corresponding elements of two 128-bit unsigned [8 x i16] vectors,...
Definition emmintrin.h:2269
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_unpacklo_epi16(__m128i __a, __m128i __b)
Unpacks the low-order (index 0-3) values from each of the two 128-bit vectors of [8 x i16] and interl...
Definition emmintrin.h:4553
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_sub_epi16(__m128i __a, __m128i __b)
Subtracts the corresponding 16-bit integer values in the operands.
Definition emmintrin.h:2519
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_set1_epi16(short __w)
Initializes all values in a 128-bit vector of [8 x i16] with the specified 16-bit value.
Definition emmintrin.h:3727
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_add_epi8(__m128i __a, __m128i __b)
Adds the corresponding elements of two 128-bit vectors of [16 x i8], saving the lower 8 bits of each ...
Definition emmintrin.h:2063
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_mullo_epi16(__m128i __a, __m128i __b)
Multiplies the corresponding elements of two signed [8 x i16] vectors, saving the lower 16 bits of ea...
Definition emmintrin.h:2427
static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_srl_epi16(__m128i __a, __m128i __count)
Right-shifts each of 16-bit values in the 128-bit integer vector operand by the specified number of b...
Definition emmintrin.h:2995
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_setzero_si128(void)
Creates a 128-bit integer vector initialized to zero.
Definition emmintrin.h:3878
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_madd_epi16(__m128i __a, __m128i __b)
Multiplies the corresponding elements of two 128-bit signed [8 x i16] vectors, producing eight interm...
Definition emmintrin.h:2294
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_packus_epi16(__m128i __a, __m128i __b)
Converts, with saturation, 16-bit signed integers from both 128-bit integer vector operands into 8-bi...
Definition emmintrin.h:4209
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_min_epi16(__m128i __a, __m128i __b)
Compares corresponding elements of two 128-bit signed [8 x i16] vectors, saving the smaller value fro...
Definition emmintrin.h:2351
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_subs_epi8(__m128i __a, __m128i __b)
Subtracts, with saturation, corresponding 8-bit signed integer values in the input and returns the di...
Definition emmintrin.h:2593
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_adds_epu8(__m128i __a, __m128i __b)
Adds, with saturation, the corresponding elements of two 128-bit unsigned [16 x i8] vectors,...
Definition emmintrin.h:2209
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_slli_epi16(__m128i __a, int __count)
Left-shifts each 16-bit value in the 128-bit integer vector operand by the specified number of bits.
Definition emmintrin.h:2769
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_adds_epu16(__m128i __a, __m128i __b)
Adds, with saturation, the corresponding elements of two 128-bit unsigned [8 x i16] vectors,...
Definition emmintrin.h:2231
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_srli_epi16(__m128i __a, int __count)
Right-shifts each of 16-bit values in the 128-bit integer vector operand by the specified number of b...
Definition emmintrin.h:2978
static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sra_epi16(__m128i __a, __m128i __count)
Right-shifts each 16-bit value in the 128-bit integer vector operand by the specified number of bits.
Definition emmintrin.h:2896
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_unpackhi_epi8(__m128i __a, __m128i __b)
Unpacks the high-order (index 8-15) values from two 128-bit vectors of [16 x i8] and interleaves them...
Definition emmintrin.h:4418
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_adds_epi8(__m128i __a, __m128i __b)
Adds, with saturation, the corresponding elements of two 128-bit signed [16 x i8] vectors,...
Definition emmintrin.h:2165
static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_sll_epi16(__m128i __a, __m128i __count)
Left-shifts each 16-bit value in the 128-bit integer vector operand by the specified number of bits.
Definition emmintrin.h:2786
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_mulhi_epi16(__m128i __a, __m128i __b)
Multiplies the corresponding elements of two signed [8 x i16] vectors, saving the upper 16 bits of ea...
Definition emmintrin.h:2389
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_sub_epi8(__m128i __a, __m128i __b)
Subtracts the corresponding 8-bit integer values in the operands.
Definition emmintrin.h:2502
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_packs_epi16(__m128i __a, __m128i __b)
Converts, with saturation, 16-bit signed integers from both 128-bit integer vector operands into 8-bi...
Definition emmintrin.h:4163
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_unpackhi_epi16(__m128i __a, __m128i __b)
Unpacks the high-order (index 4-7) values from two 128-bit vectors of [8 x i16] and interleaves them ...
Definition emmintrin.h:4446
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_and_si128(__m128i __a, __m128i __b)
Performs a bitwise AND of two 128-bit integer vectors.
Definition emmintrin.h:2674
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_mulhi_epu16(__m128i __a, __m128i __b)
Multiplies the corresponding elements of two unsigned [8 x i16] vectors, saving the upper 16 bits of ...
Definition emmintrin.h:2408
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_max_epi16(__m128i __a, __m128i __b)
Compares corresponding elements of two 128-bit signed [8 x i16] vectors, saving the greater value fro...
Definition emmintrin.h:2313
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_subs_epi16(__m128i __a, __m128i __b)
Subtracts, with saturation, corresponding 16-bit signed integer values in the input and returns the d...
Definition emmintrin.h:2615
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_add_epi16(__m128i __a, __m128i __b)
Adds the corresponding elements of two 128-bit vectors of [8 x i16], saving the lower 16 bits of each...
Definition emmintrin.h:2084
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_adds_epi16(__m128i __a, __m128i __b)
Adds, with saturation, the corresponding elements of two 128-bit signed [8 x i16] vectors,...
Definition emmintrin.h:2187
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_subs_epu8(__m128i __a, __m128i __b)
Subtracts, with saturation, corresponding 8-bit unsigned integer values in the input and returns the ...
Definition emmintrin.h:2636
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_set1_epi8(char __b)
Initializes all values in a 128-bit vector of [16 x i8] with the specified 8-bit value.
Definition emmintrin.h:3744
__inline unsigned int unsigned int unsigned int * __P
Definition bmi2intrin.h:25
__inline unsigned int unsigned int __Y
Definition bmi2intrin.h:19
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_min_epu16(__m128i __V1, __m128i __V2)
Compares the corresponding elements of two 128-bit vectors of [8 x u16] and returns a 128-bit vector ...
Definition smmintrin.h:706
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_max_epi8(__m128i __V1, __m128i __V2)
Compares the corresponding elements of two 128-bit vectors of [16 x i8] and returns a 128-bit vector ...
Definition smmintrin.h:688
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_cvtepu8_epi16(__m128i __V)
Zero-extends each of the lower eight 8-bit integer elements of a 128-bit vector of [16 x i8] to 16-bi...
Definition smmintrin.h:1348
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_packus_epi32(__m128i __V1, __m128i __V2)
Converts, with saturation, 32-bit signed integers from both 128-bit integer vector operands into 16-b...
Definition smmintrin.h:1470
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_max_epu16(__m128i __V1, __m128i __V2)
Compares the corresponding elements of two 128-bit vectors of [8 x u16] and returns a 128-bit vector ...
Definition smmintrin.h:724
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_cvtepi8_epi16(__m128i __V)
Sign-extends each of the lower eight 8-bit integer elements of a 128-bit vector of [16 x i8] to 16-bi...
Definition smmintrin.h:1225
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_min_epi8(__m128i __V1, __m128i __V2)
Compares the corresponding elements of two 128-bit vectors of [16 x i8] and returns a 128-bit vector ...
Definition smmintrin.h:670
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_abs_epi16(__m128i __a)
Computes the absolute value of each of the packed 16-bit signed integers in the source operand and st...
Definition tmmintrin.h:98
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_maddubs_epi16(__m128i __a, __m128i __b)
Multiplies corresponding pairs of packed 8-bit unsigned integer values contained in the first source ...
Definition tmmintrin.h:496
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_mulhrs_epi16(__m128i __a, __m128i __b)
Multiplies packed 16-bit signed integer values, truncates the 32-bit products to the 18 most signific...
Definition tmmintrin.h:545
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_shuffle_epi8(__m128i __a, __m128i __b)
Copies the 8-bit integers from a 128-bit integer vector to the destination or clears 8-bit values in ...
Definition tmmintrin.h:590
static __inline__ __m128i __DEFAULT_FN_ATTRS_CONSTEXPR _mm_abs_epi8(__m128i __a)
Computes the absolute value of each of the packed 8-bit signed integers in the source operand and sto...
Definition tmmintrin.h:65