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