Lines Matching refs:__m256i
34 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
35 _mm256_abs_epi8(__m256i __a) in _mm256_abs_epi8()
37 return (__m256i)__builtin_ia32_pabsb256((__v32qi)__a); in _mm256_abs_epi8()
40 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
41 _mm256_abs_epi16(__m256i __a) in _mm256_abs_epi16()
43 return (__m256i)__builtin_ia32_pabsw256((__v16hi)__a); in _mm256_abs_epi16()
46 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
47 _mm256_abs_epi32(__m256i __a) in _mm256_abs_epi32()
49 return (__m256i)__builtin_ia32_pabsd256((__v8si)__a); in _mm256_abs_epi32()
52 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
53 _mm256_packs_epi16(__m256i __a, __m256i __b) in _mm256_packs_epi16()
55 return (__m256i)__builtin_ia32_packsswb256((__v16hi)__a, (__v16hi)__b); in _mm256_packs_epi16()
58 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
59 _mm256_packs_epi32(__m256i __a, __m256i __b) in _mm256_packs_epi32()
61 return (__m256i)__builtin_ia32_packssdw256((__v8si)__a, (__v8si)__b); in _mm256_packs_epi32()
64 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
65 _mm256_packus_epi16(__m256i __a, __m256i __b) in _mm256_packus_epi16()
67 return (__m256i)__builtin_ia32_packuswb256((__v16hi)__a, (__v16hi)__b); in _mm256_packus_epi16()
70 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
71 _mm256_packus_epi32(__m256i __V1, __m256i __V2) in _mm256_packus_epi32()
73 return (__m256i) __builtin_ia32_packusdw256((__v8si)__V1, (__v8si)__V2); in _mm256_packus_epi32()
76 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
77 _mm256_add_epi8(__m256i __a, __m256i __b) in _mm256_add_epi8()
79 return (__m256i)((__v32qi)__a + (__v32qi)__b); in _mm256_add_epi8()
82 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
83 _mm256_add_epi16(__m256i __a, __m256i __b) in _mm256_add_epi16()
85 return (__m256i)((__v16hi)__a + (__v16hi)__b); in _mm256_add_epi16()
88 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
89 _mm256_add_epi32(__m256i __a, __m256i __b) in _mm256_add_epi32()
91 return (__m256i)((__v8si)__a + (__v8si)__b); in _mm256_add_epi32()
94 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
95 _mm256_add_epi64(__m256i __a, __m256i __b) in _mm256_add_epi64()
100 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
101 _mm256_adds_epi8(__m256i __a, __m256i __b) in _mm256_adds_epi8()
103 return (__m256i)__builtin_ia32_paddsb256((__v32qi)__a, (__v32qi)__b); in _mm256_adds_epi8()
106 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
107 _mm256_adds_epi16(__m256i __a, __m256i __b) in _mm256_adds_epi16()
109 return (__m256i)__builtin_ia32_paddsw256((__v16hi)__a, (__v16hi)__b); in _mm256_adds_epi16()
112 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
113 _mm256_adds_epu8(__m256i __a, __m256i __b) in _mm256_adds_epu8()
115 return (__m256i)__builtin_ia32_paddusb256((__v32qi)__a, (__v32qi)__b); in _mm256_adds_epu8()
118 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
119 _mm256_adds_epu16(__m256i __a, __m256i __b) in _mm256_adds_epu16()
121 return (__m256i)__builtin_ia32_paddusw256((__v16hi)__a, (__v16hi)__b); in _mm256_adds_epu16()
125 __m256i __a = (a); \
126 __m256i __b = (b); \
127 (__m256i)__builtin_ia32_palignr256((__v32qi)__a, (__v32qi)__b, (n)); })
129 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
130 _mm256_and_si256(__m256i __a, __m256i __b) in _mm256_and_si256()
135 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
136 _mm256_andnot_si256(__m256i __a, __m256i __b) in _mm256_andnot_si256()
141 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
142 _mm256_avg_epu8(__m256i __a, __m256i __b) in _mm256_avg_epu8()
144 return (__m256i)__builtin_ia32_pavgb256((__v32qi)__a, (__v32qi)__b); in _mm256_avg_epu8()
147 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
148 _mm256_avg_epu16(__m256i __a, __m256i __b) in _mm256_avg_epu16()
150 return (__m256i)__builtin_ia32_pavgw256((__v16hi)__a, (__v16hi)__b); in _mm256_avg_epu16()
153 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
154 _mm256_blendv_epi8(__m256i __V1, __m256i __V2, __m256i __M) in _mm256_blendv_epi8()
156 return (__m256i)__builtin_ia32_pblendvb256((__v32qi)__V1, (__v32qi)__V2, in _mm256_blendv_epi8()
161 __m256i __V1 = (V1); \
162 __m256i __V2 = (V2); \
163 (__m256i)__builtin_shufflevector((__v16hi)__V1, (__v16hi)__V2, \
181 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
182 _mm256_cmpeq_epi8(__m256i __a, __m256i __b) in _mm256_cmpeq_epi8()
184 return (__m256i)((__v32qi)__a == (__v32qi)__b); in _mm256_cmpeq_epi8()
187 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
188 _mm256_cmpeq_epi16(__m256i __a, __m256i __b) in _mm256_cmpeq_epi16()
190 return (__m256i)((__v16hi)__a == (__v16hi)__b); in _mm256_cmpeq_epi16()
193 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
194 _mm256_cmpeq_epi32(__m256i __a, __m256i __b) in _mm256_cmpeq_epi32()
196 return (__m256i)((__v8si)__a == (__v8si)__b); in _mm256_cmpeq_epi32()
199 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
200 _mm256_cmpeq_epi64(__m256i __a, __m256i __b) in _mm256_cmpeq_epi64()
202 return (__m256i)(__a == __b); in _mm256_cmpeq_epi64()
205 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
206 _mm256_cmpgt_epi8(__m256i __a, __m256i __b) in _mm256_cmpgt_epi8()
208 return (__m256i)((__v32qi)__a > (__v32qi)__b); in _mm256_cmpgt_epi8()
211 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
212 _mm256_cmpgt_epi16(__m256i __a, __m256i __b) in _mm256_cmpgt_epi16()
214 return (__m256i)((__v16hi)__a > (__v16hi)__b); in _mm256_cmpgt_epi16()
217 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
218 _mm256_cmpgt_epi32(__m256i __a, __m256i __b) in _mm256_cmpgt_epi32()
220 return (__m256i)((__v8si)__a > (__v8si)__b); in _mm256_cmpgt_epi32()
223 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
224 _mm256_cmpgt_epi64(__m256i __a, __m256i __b) in _mm256_cmpgt_epi64()
226 return (__m256i)(__a > __b); in _mm256_cmpgt_epi64()
229 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
230 _mm256_hadd_epi16(__m256i __a, __m256i __b) in _mm256_hadd_epi16()
232 return (__m256i)__builtin_ia32_phaddw256((__v16hi)__a, (__v16hi)__b); in _mm256_hadd_epi16()
235 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
236 _mm256_hadd_epi32(__m256i __a, __m256i __b) in _mm256_hadd_epi32()
238 return (__m256i)__builtin_ia32_phaddd256((__v8si)__a, (__v8si)__b); in _mm256_hadd_epi32()
241 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
242 _mm256_hadds_epi16(__m256i __a, __m256i __b) in _mm256_hadds_epi16()
244 return (__m256i)__builtin_ia32_phaddsw256((__v16hi)__a, (__v16hi)__b); in _mm256_hadds_epi16()
247 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
248 _mm256_hsub_epi16(__m256i __a, __m256i __b) in _mm256_hsub_epi16()
250 return (__m256i)__builtin_ia32_phsubw256((__v16hi)__a, (__v16hi)__b); in _mm256_hsub_epi16()
253 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
254 _mm256_hsub_epi32(__m256i __a, __m256i __b) in _mm256_hsub_epi32()
256 return (__m256i)__builtin_ia32_phsubd256((__v8si)__a, (__v8si)__b); in _mm256_hsub_epi32()
259 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
260 _mm256_hsubs_epi16(__m256i __a, __m256i __b) in _mm256_hsubs_epi16()
262 return (__m256i)__builtin_ia32_phsubsw256((__v16hi)__a, (__v16hi)__b); in _mm256_hsubs_epi16()
265 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
266 _mm256_maddubs_epi16(__m256i __a, __m256i __b) in _mm256_maddubs_epi16()
268 return (__m256i)__builtin_ia32_pmaddubsw256((__v32qi)__a, (__v32qi)__b); in _mm256_maddubs_epi16()
271 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
272 _mm256_madd_epi16(__m256i __a, __m256i __b) in _mm256_madd_epi16()
274 return (__m256i)__builtin_ia32_pmaddwd256((__v16hi)__a, (__v16hi)__b); in _mm256_madd_epi16()
277 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
278 _mm256_max_epi8(__m256i __a, __m256i __b) in _mm256_max_epi8()
280 return (__m256i)__builtin_ia32_pmaxsb256((__v32qi)__a, (__v32qi)__b); in _mm256_max_epi8()
283 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
284 _mm256_max_epi16(__m256i __a, __m256i __b) in _mm256_max_epi16()
286 return (__m256i)__builtin_ia32_pmaxsw256((__v16hi)__a, (__v16hi)__b); in _mm256_max_epi16()
289 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
290 _mm256_max_epi32(__m256i __a, __m256i __b) in _mm256_max_epi32()
292 return (__m256i)__builtin_ia32_pmaxsd256((__v8si)__a, (__v8si)__b); in _mm256_max_epi32()
295 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
296 _mm256_max_epu8(__m256i __a, __m256i __b) in _mm256_max_epu8()
298 return (__m256i)__builtin_ia32_pmaxub256((__v32qi)__a, (__v32qi)__b); in _mm256_max_epu8()
301 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
302 _mm256_max_epu16(__m256i __a, __m256i __b) in _mm256_max_epu16()
304 return (__m256i)__builtin_ia32_pmaxuw256((__v16hi)__a, (__v16hi)__b); in _mm256_max_epu16()
307 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
308 _mm256_max_epu32(__m256i __a, __m256i __b) in _mm256_max_epu32()
310 return (__m256i)__builtin_ia32_pmaxud256((__v8si)__a, (__v8si)__b); in _mm256_max_epu32()
313 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
314 _mm256_min_epi8(__m256i __a, __m256i __b) in _mm256_min_epi8()
316 return (__m256i)__builtin_ia32_pminsb256((__v32qi)__a, (__v32qi)__b); in _mm256_min_epi8()
319 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
320 _mm256_min_epi16(__m256i __a, __m256i __b) in _mm256_min_epi16()
322 return (__m256i)__builtin_ia32_pminsw256((__v16hi)__a, (__v16hi)__b); in _mm256_min_epi16()
325 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
326 _mm256_min_epi32(__m256i __a, __m256i __b) in _mm256_min_epi32()
328 return (__m256i)__builtin_ia32_pminsd256((__v8si)__a, (__v8si)__b); in _mm256_min_epi32()
331 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
332 _mm256_min_epu8(__m256i __a, __m256i __b) in _mm256_min_epu8()
334 return (__m256i)__builtin_ia32_pminub256((__v32qi)__a, (__v32qi)__b); in _mm256_min_epu8()
337 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
338 _mm256_min_epu16(__m256i __a, __m256i __b) in _mm256_min_epu16()
340 return (__m256i)__builtin_ia32_pminuw256 ((__v16hi)__a, (__v16hi)__b); in _mm256_min_epu16()
343 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
344 _mm256_min_epu32(__m256i __a, __m256i __b) in _mm256_min_epu32()
346 return (__m256i)__builtin_ia32_pminud256((__v8si)__a, (__v8si)__b); in _mm256_min_epu32()
350 _mm256_movemask_epi8(__m256i __a) in _mm256_movemask_epi8()
355 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
358 return (__m256i)__builtin_ia32_pmovsxbw256((__v16qi)__V); in _mm256_cvtepi8_epi16()
361 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
364 return (__m256i)__builtin_ia32_pmovsxbd256((__v16qi)__V); in _mm256_cvtepi8_epi32()
367 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
370 return (__m256i)__builtin_ia32_pmovsxbq256((__v16qi)__V); in _mm256_cvtepi8_epi64()
373 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
376 return (__m256i)__builtin_ia32_pmovsxwd256((__v8hi)__V); in _mm256_cvtepi16_epi32()
379 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
382 return (__m256i)__builtin_ia32_pmovsxwq256((__v8hi)__V); in _mm256_cvtepi16_epi64()
385 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
388 return (__m256i)__builtin_ia32_pmovsxdq256((__v4si)__V); in _mm256_cvtepi32_epi64()
391 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
394 return (__m256i)__builtin_ia32_pmovzxbw256((__v16qi)__V); in _mm256_cvtepu8_epi16()
397 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
400 return (__m256i)__builtin_ia32_pmovzxbd256((__v16qi)__V); in _mm256_cvtepu8_epi32()
403 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
406 return (__m256i)__builtin_ia32_pmovzxbq256((__v16qi)__V); in _mm256_cvtepu8_epi64()
409 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
412 return (__m256i)__builtin_ia32_pmovzxwd256((__v8hi)__V); in _mm256_cvtepu16_epi32()
415 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
418 return (__m256i)__builtin_ia32_pmovzxwq256((__v8hi)__V); in _mm256_cvtepu16_epi64()
421 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
424 return (__m256i)__builtin_ia32_pmovzxdq256((__v4si)__V); in _mm256_cvtepu32_epi64()
427 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
428 _mm256_mul_epi32(__m256i __a, __m256i __b) in _mm256_mul_epi32()
430 return (__m256i)__builtin_ia32_pmuldq256((__v8si)__a, (__v8si)__b); in _mm256_mul_epi32()
433 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
434 _mm256_mulhrs_epi16(__m256i __a, __m256i __b) in _mm256_mulhrs_epi16()
436 return (__m256i)__builtin_ia32_pmulhrsw256((__v16hi)__a, (__v16hi)__b); in _mm256_mulhrs_epi16()
439 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
440 _mm256_mulhi_epu16(__m256i __a, __m256i __b) in _mm256_mulhi_epu16()
442 return (__m256i)__builtin_ia32_pmulhuw256((__v16hi)__a, (__v16hi)__b); in _mm256_mulhi_epu16()
445 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
446 _mm256_mulhi_epi16(__m256i __a, __m256i __b) in _mm256_mulhi_epi16()
448 return (__m256i)__builtin_ia32_pmulhw256((__v16hi)__a, (__v16hi)__b); in _mm256_mulhi_epi16()
451 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
452 _mm256_mullo_epi16(__m256i __a, __m256i __b) in _mm256_mullo_epi16()
454 return (__m256i)((__v16hi)__a * (__v16hi)__b); in _mm256_mullo_epi16()
457 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
458 _mm256_mullo_epi32 (__m256i __a, __m256i __b) in _mm256_mullo_epi32()
460 return (__m256i)((__v8si)__a * (__v8si)__b); in _mm256_mullo_epi32()
463 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
464 _mm256_mul_epu32(__m256i __a, __m256i __b) in _mm256_mul_epu32()
469 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
470 _mm256_or_si256(__m256i __a, __m256i __b) in _mm256_or_si256()
475 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
476 _mm256_sad_epu8(__m256i __a, __m256i __b) in _mm256_sad_epu8()
481 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
482 _mm256_shuffle_epi8(__m256i __a, __m256i __b) in _mm256_shuffle_epi8()
484 return (__m256i)__builtin_ia32_pshufb256((__v32qi)__a, (__v32qi)__b); in _mm256_shuffle_epi8()
488 __m256i __a = (a); \
489 (__m256i)__builtin_shufflevector((__v8si)__a, (__v8si)_mm256_set1_epi32(0), \
498 __m256i __a = (a); \
499 (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)_mm256_set1_epi16(0), \
512 __m256i __a = (a); \
513 (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)_mm256_set1_epi16(0), \
523 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
524 _mm256_sign_epi8(__m256i __a, __m256i __b) in _mm256_sign_epi8()
526 return (__m256i)__builtin_ia32_psignb256((__v32qi)__a, (__v32qi)__b); in _mm256_sign_epi8()
529 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
530 _mm256_sign_epi16(__m256i __a, __m256i __b) in _mm256_sign_epi16()
532 return (__m256i)__builtin_ia32_psignw256((__v16hi)__a, (__v16hi)__b); in _mm256_sign_epi16()
535 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
536 _mm256_sign_epi32(__m256i __a, __m256i __b) in _mm256_sign_epi32()
538 return (__m256i)__builtin_ia32_psignd256((__v8si)__a, (__v8si)__b); in _mm256_sign_epi32()
542 __m256i __a = (a); \
543 (__m256i)__builtin_ia32_pslldqi256(__a, (count)*8); })
545 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
546 _mm256_slli_epi16(__m256i __a, int __count) in _mm256_slli_epi16()
548 return (__m256i)__builtin_ia32_psllwi256((__v16hi)__a, __count); in _mm256_slli_epi16()
551 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
552 _mm256_sll_epi16(__m256i __a, __m128i __count) in _mm256_sll_epi16()
554 return (__m256i)__builtin_ia32_psllw256((__v16hi)__a, (__v8hi)__count); in _mm256_sll_epi16()
557 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
558 _mm256_slli_epi32(__m256i __a, int __count) in _mm256_slli_epi32()
560 return (__m256i)__builtin_ia32_pslldi256((__v8si)__a, __count); in _mm256_slli_epi32()
563 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
564 _mm256_sll_epi32(__m256i __a, __m128i __count) in _mm256_sll_epi32()
566 return (__m256i)__builtin_ia32_pslld256((__v8si)__a, (__v4si)__count); in _mm256_sll_epi32()
569 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
570 _mm256_slli_epi64(__m256i __a, int __count) in _mm256_slli_epi64()
575 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
576 _mm256_sll_epi64(__m256i __a, __m128i __count) in _mm256_sll_epi64()
581 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
582 _mm256_srai_epi16(__m256i __a, int __count) in _mm256_srai_epi16()
584 return (__m256i)__builtin_ia32_psrawi256((__v16hi)__a, __count); in _mm256_srai_epi16()
587 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
588 _mm256_sra_epi16(__m256i __a, __m128i __count) in _mm256_sra_epi16()
590 return (__m256i)__builtin_ia32_psraw256((__v16hi)__a, (__v8hi)__count); in _mm256_sra_epi16()
593 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
594 _mm256_srai_epi32(__m256i __a, int __count) in _mm256_srai_epi32()
596 return (__m256i)__builtin_ia32_psradi256((__v8si)__a, __count); in _mm256_srai_epi32()
599 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
600 _mm256_sra_epi32(__m256i __a, __m128i __count) in _mm256_sra_epi32()
602 return (__m256i)__builtin_ia32_psrad256((__v8si)__a, (__v4si)__count); in _mm256_sra_epi32()
606 __m256i __a = (a); \
607 (__m256i)__builtin_ia32_psrldqi256(__a, (count)*8); })
609 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
610 _mm256_srli_epi16(__m256i __a, int __count) in _mm256_srli_epi16()
612 return (__m256i)__builtin_ia32_psrlwi256((__v16hi)__a, __count); in _mm256_srli_epi16()
615 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
616 _mm256_srl_epi16(__m256i __a, __m128i __count) in _mm256_srl_epi16()
618 return (__m256i)__builtin_ia32_psrlw256((__v16hi)__a, (__v8hi)__count); in _mm256_srl_epi16()
621 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
622 _mm256_srli_epi32(__m256i __a, int __count) in _mm256_srli_epi32()
624 return (__m256i)__builtin_ia32_psrldi256((__v8si)__a, __count); in _mm256_srli_epi32()
627 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
628 _mm256_srl_epi32(__m256i __a, __m128i __count) in _mm256_srl_epi32()
630 return (__m256i)__builtin_ia32_psrld256((__v8si)__a, (__v4si)__count); in _mm256_srl_epi32()
633 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
634 _mm256_srli_epi64(__m256i __a, int __count) in _mm256_srli_epi64()
639 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
640 _mm256_srl_epi64(__m256i __a, __m128i __count) in _mm256_srl_epi64()
645 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
646 _mm256_sub_epi8(__m256i __a, __m256i __b) in _mm256_sub_epi8()
648 return (__m256i)((__v32qi)__a - (__v32qi)__b); in _mm256_sub_epi8()
651 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
652 _mm256_sub_epi16(__m256i __a, __m256i __b) in _mm256_sub_epi16()
654 return (__m256i)((__v16hi)__a - (__v16hi)__b); in _mm256_sub_epi16()
657 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
658 _mm256_sub_epi32(__m256i __a, __m256i __b) in _mm256_sub_epi32()
660 return (__m256i)((__v8si)__a - (__v8si)__b); in _mm256_sub_epi32()
663 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
664 _mm256_sub_epi64(__m256i __a, __m256i __b) in _mm256_sub_epi64()
669 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
670 _mm256_subs_epi8(__m256i __a, __m256i __b) in _mm256_subs_epi8()
672 return (__m256i)__builtin_ia32_psubsb256((__v32qi)__a, (__v32qi)__b); in _mm256_subs_epi8()
675 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
676 _mm256_subs_epi16(__m256i __a, __m256i __b) in _mm256_subs_epi16()
678 return (__m256i)__builtin_ia32_psubsw256((__v16hi)__a, (__v16hi)__b); in _mm256_subs_epi16()
681 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
682 _mm256_subs_epu8(__m256i __a, __m256i __b) in _mm256_subs_epu8()
684 return (__m256i)__builtin_ia32_psubusb256((__v32qi)__a, (__v32qi)__b); in _mm256_subs_epu8()
687 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
688 _mm256_subs_epu16(__m256i __a, __m256i __b) in _mm256_subs_epu16()
690 return (__m256i)__builtin_ia32_psubusw256((__v16hi)__a, (__v16hi)__b); in _mm256_subs_epu16()
693 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
694 _mm256_unpackhi_epi8(__m256i __a, __m256i __b) in _mm256_unpackhi_epi8()
696 …return (__m256i)__builtin_shufflevector((__v32qi)__a, (__v32qi)__b, 8, 32+8, 9, 32+9, 10, 32+10, 1… in _mm256_unpackhi_epi8()
699 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
700 _mm256_unpackhi_epi16(__m256i __a, __m256i __b) in _mm256_unpackhi_epi16()
702 …return (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)__b, 4, 16+4, 5, 16+5, 6, 16+6, 7, … in _mm256_unpackhi_epi16()
705 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
706 _mm256_unpackhi_epi32(__m256i __a, __m256i __b) in _mm256_unpackhi_epi32()
708 return (__m256i)__builtin_shufflevector((__v8si)__a, (__v8si)__b, 2, 8+2, 3, 8+3, 6, 8+6, 7, 8+7); in _mm256_unpackhi_epi32()
711 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
712 _mm256_unpackhi_epi64(__m256i __a, __m256i __b) in _mm256_unpackhi_epi64()
714 return (__m256i)__builtin_shufflevector(__a, __b, 1, 4+1, 3, 4+3); in _mm256_unpackhi_epi64()
717 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
718 _mm256_unpacklo_epi8(__m256i __a, __m256i __b) in _mm256_unpacklo_epi8()
720 …return (__m256i)__builtin_shufflevector((__v32qi)__a, (__v32qi)__b, 0, 32+0, 1, 32+1, 2, 32+2, 3, … in _mm256_unpacklo_epi8()
723 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
724 _mm256_unpacklo_epi16(__m256i __a, __m256i __b) in _mm256_unpacklo_epi16()
726 …return (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)__b, 0, 16+0, 1, 16+1, 2, 16+2, 3, … in _mm256_unpacklo_epi16()
729 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
730 _mm256_unpacklo_epi32(__m256i __a, __m256i __b) in _mm256_unpacklo_epi32()
732 return (__m256i)__builtin_shufflevector((__v8si)__a, (__v8si)__b, 0, 8+0, 1, 8+1, 4, 8+4, 5, 8+5); in _mm256_unpacklo_epi32()
735 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
736 _mm256_unpacklo_epi64(__m256i __a, __m256i __b) in _mm256_unpacklo_epi64()
738 return (__m256i)__builtin_shufflevector(__a, __b, 0, 4+0, 2, 4+2); in _mm256_unpacklo_epi64()
741 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
742 _mm256_xor_si256(__m256i __a, __m256i __b) in _mm256_xor_si256()
747 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
748 _mm256_stream_load_si256(__m256i *__V) in _mm256_stream_load_si256()
750 return (__m256i)__builtin_ia32_movntdqa256((__v4di *)__V); in _mm256_stream_load_si256()
771 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
774 return (__m256i)__builtin_shufflevector(__X, __X, 0, 1, 0, 1); in _mm256_broadcastsi128_si256()
787 __m256i __V1 = (V1); \
788 __m256i __V2 = (V2); \
789 (__m256i)__builtin_shufflevector((__v8si)__V1, (__v8si)__V2, \
799 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
802 return (__m256i)__builtin_ia32_pbroadcastb256((__v16qi)__X); in _mm256_broadcastb_epi8()
805 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
808 return (__m256i)__builtin_ia32_pbroadcastw256((__v8hi)__X); in _mm256_broadcastw_epi16()
811 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
814 return (__m256i)__builtin_ia32_pbroadcastd256((__v4si)__X); in _mm256_broadcastd_epi32()
817 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
820 return (__m256i)__builtin_ia32_pbroadcastq256(__X); in _mm256_broadcastq_epi64()
848 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
849 _mm256_permutevar8x32_epi32(__m256i __a, __m256i __b) in _mm256_permutevar8x32_epi32()
851 return (__m256i)__builtin_ia32_permvarsi256((__v8si)__a, (__v8si)__b); in _mm256_permutevar8x32_epi32()
867 __m256i __V = (V); \
868 (__m256i)__builtin_shufflevector((__v4di)__V, (__v4di) _mm256_setzero_si256(), \
873 __m256i __V1 = (V1); \
874 __m256i __V2 = (V2); \
875 (__m256i)__builtin_ia32_permti256(__V1, __V2, (M)); })
885 (__m256i)__builtin_shufflevector( \
893 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
894 _mm256_maskload_epi32(int const *__X, __m256i __M) in _mm256_maskload_epi32()
896 return (__m256i)__builtin_ia32_maskloadd256((const __v8si *)__X, (__v8si)__M); in _mm256_maskload_epi32()
899 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
900 _mm256_maskload_epi64(long long const *__X, __m256i __M) in _mm256_maskload_epi64()
902 return (__m256i)__builtin_ia32_maskloadq256((const __v4di *)__X, __M); in _mm256_maskload_epi64()
918 _mm256_maskstore_epi32(int *__X, __m256i __M, __m256i __Y) in _mm256_maskstore_epi32()
924 _mm256_maskstore_epi64(long long *__X, __m256i __M, __m256i __Y) in _mm256_maskstore_epi64()
941 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
942 _mm256_sllv_epi32(__m256i __X, __m256i __Y) in _mm256_sllv_epi32()
944 return (__m256i)__builtin_ia32_psllv8si((__v8si)__X, (__v8si)__Y); in _mm256_sllv_epi32()
953 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
954 _mm256_sllv_epi64(__m256i __X, __m256i __Y) in _mm256_sllv_epi64()
956 return (__m256i)__builtin_ia32_psllv4di(__X, __Y); in _mm256_sllv_epi64()
965 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
966 _mm256_srav_epi32(__m256i __X, __m256i __Y) in _mm256_srav_epi32()
968 return (__m256i)__builtin_ia32_psrav8si((__v8si)__X, (__v8si)__Y); in _mm256_srav_epi32()
977 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
978 _mm256_srlv_epi32(__m256i __X, __m256i __Y) in _mm256_srlv_epi32()
980 return (__m256i)__builtin_ia32_psrlv8si((__v8si)__X, (__v8si)__Y); in _mm256_srlv_epi32()
989 static __inline__ __m256i __attribute__((__always_inline__, __nodebug__))
990 _mm256_srlv_epi64(__m256i __X, __m256i __Y) in _mm256_srlv_epi64()
992 return (__m256i)__builtin_ia32_psrlv4di(__X, __Y); in _mm256_srlv_epi64()
1028 __m256i __i = (i); \
1044 __m256i __i = (i); \
1060 __m256i __i = (i); \
1074 __m256i __a = (a); \
1076 __m256i __i = (i); \
1077 __m256i __mask = (mask); \
1078 (__m256i)__builtin_ia32_gatherd_d256((__v8si)__a, (const __v8si *)__m, \
1092 __m256i __i = (i); \
1106 __m256i __a = (a); \
1109 __m256i __mask = (mask); \
1110 (__m256i)__builtin_ia32_gatherd_q256((__v4di)__a, (const __v4di *)__m, \
1122 __m256i __a = (a); \
1124 __m256i __i = (i); \
1125 __m256i __mask = (mask); \
1126 (__m256i)__builtin_ia32_gatherq_q256((__v4di)__a, (const __v4di *)__m, \
1152 __m256i __i = (i); \
1166 __m256i __i = (i); \
1180 __m256i __i = (i); \
1194 __m256i __i = (i); \
1195 (__m256i)__builtin_ia32_gatherd_d256((__v8si)_mm256_setzero_si256(), \
1208 __m256i __i = (i); \
1223 (__m256i)__builtin_ia32_gatherd_q256((__v4di)_mm256_setzero_si256(), \
1236 __m256i __i = (i); \
1237 (__m256i)__builtin_ia32_gatherq_q256((__v4di)_mm256_setzero_si256(), \