clang 8.0.0

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