11188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/*===---- avx2intrin.h - AVX2 intrinsics -----------------------------------=== 21188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * 31188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * Permission is hereby granted, free of charge, to any person obtaining a copy 41188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * of this software and associated documentation files (the "Software"), to deal 51188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * in the Software without restriction, including without limitation the rights 61188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 71188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * copies of the Software, and to permit persons to whom the Software is 81188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * furnished to do so, subject to the following conditions: 91188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * 101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * The above copyright notice and this permission notice shall be included in 111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * all copies or substantial portions of the Software. 121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * 131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * THE SOFTWARE. 201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * 211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker *===-----------------------------------------------------------------------=== 221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker */ 231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifndef __IMMINTRIN_H 251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#error "Never use <avx2intrin.h> directly; include <immintrin.h> instead." 261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif 271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifndef __AVX2INTRIN_H 291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define __AVX2INTRIN_H 301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Define the default attributes for the functions in this file. */ 321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx2"))) 331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* SSE4 Multiple Packed Sums of Absolute Difference. */ 351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_mpsadbw_epu8(X, Y, M) \ 361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_mpsadbw256((__v32qi)(__m256i)(X), \ 371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v32qi)(__m256i)(Y), (int)(M)) 381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_abs_epi8(__m256i __a) 411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pabsb256((__v32qi)__a); 431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_abs_epi16(__m256i __a) 471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pabsw256((__v16hi)__a); 491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 511188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_abs_epi32(__m256i __a) 531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pabsd256((__v8si)__a); 551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_packs_epi16(__m256i __a, __m256i __b) 591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_packsswb256((__v16hi)__a, (__v16hi)__b); 611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_packs_epi32(__m256i __a, __m256i __b) 651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_packssdw256((__v8si)__a, (__v8si)__b); 671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 691188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_packus_epi16(__m256i __a, __m256i __b) 711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_packuswb256((__v16hi)__a, (__v16hi)__b); 731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 751188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_packus_epi32(__m256i __V1, __m256i __V2) 771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i) __builtin_ia32_packusdw256((__v8si)__V1, (__v8si)__V2); 791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 811188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_add_epi8(__m256i __a, __m256i __b) 831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v32qi)__a + (__v32qi)__b); 851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 871188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_add_epi16(__m256i __a, __m256i __b) 891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v16hi)__a + (__v16hi)__b); 911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 931188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_add_epi32(__m256i __a, __m256i __b) 951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v8si)__a + (__v8si)__b); 971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 991188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_add_epi64(__m256i __a, __m256i __b) 1011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v4di)__a + (__v4di)__b); 1031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1051188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_adds_epi8(__m256i __a, __m256i __b) 1071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_paddsb256((__v32qi)__a, (__v32qi)__b); 1091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_adds_epi16(__m256i __a, __m256i __b) 1131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_paddsw256((__v16hi)__a, (__v16hi)__b); 1151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_adds_epu8(__m256i __a, __m256i __b) 1191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_paddusb256((__v32qi)__a, (__v32qi)__b); 1211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1231188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_adds_epu16(__m256i __a, __m256i __b) 1251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_paddusw256((__v16hi)__a, (__v16hi)__b); 1271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_alignr_epi8(a, b, n) __extension__ ({ \ 1301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_palignr256((__v32qi)(__m256i)(a), \ 1311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v32qi)(__m256i)(b), (n)); }) 1321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1331188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_and_si256(__m256i __a, __m256i __b) 1351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v4di)__a & (__v4di)__b); 1371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_andnot_si256(__m256i __a, __m256i __b) 1411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)(~(__v4di)__a & (__v4di)__b); 1431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_avg_epu8(__m256i __a, __m256i __b) 1471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pavgb256((__v32qi)__a, (__v32qi)__b); 1491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1511188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_avg_epu16(__m256i __a, __m256i __b) 1531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pavgw256((__v16hi)__a, (__v16hi)__b); 1551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_blendv_epi8(__m256i __V1, __m256i __V2, __m256i __M) 1591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pblendvb256((__v32qi)__V1, (__v32qi)__V2, 1611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v32qi)__M); 1621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_blend_epi16(V1, V2, M) __extension__ ({ \ 1651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_shufflevector((__v16hi)(__m256i)(V1), \ 1661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v16hi)(__m256i)(V2), \ 1671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x01) ? 16 : 0), \ 1681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x02) ? 17 : 1), \ 1691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x04) ? 18 : 2), \ 1701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x08) ? 19 : 3), \ 1711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x10) ? 20 : 4), \ 1721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x20) ? 21 : 5), \ 1731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x40) ? 22 : 6), \ 1741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x80) ? 23 : 7), \ 1751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x01) ? 24 : 8), \ 1761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x02) ? 25 : 9), \ 1771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x04) ? 26 : 10), \ 1781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x08) ? 27 : 11), \ 1791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x10) ? 28 : 12), \ 1801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x20) ? 29 : 13), \ 1811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x40) ? 30 : 14), \ 1821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x80) ? 31 : 15)); }) 1831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1841188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cmpeq_epi8(__m256i __a, __m256i __b) 1861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v32qi)__a == (__v32qi)__b); 1881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1901188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cmpeq_epi16(__m256i __a, __m256i __b) 1921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v16hi)__a == (__v16hi)__b); 1941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 1951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 1961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 1971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cmpeq_epi32(__m256i __a, __m256i __b) 1981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 1991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v8si)__a == (__v8si)__b); 2001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cmpeq_epi64(__m256i __a, __m256i __b) 2041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v4di)__a == (__v4di)__b); 2061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cmpgt_epi8(__m256i __a, __m256i __b) 2101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker /* This function always performs a signed comparison, but __v32qi is a char 2121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker which may be signed or unsigned, so use __v32qs. */ 2131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v32qs)__a > (__v32qs)__b); 2141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2161188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cmpgt_epi16(__m256i __a, __m256i __b) 2181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v16hi)__a > (__v16hi)__b); 2201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cmpgt_epi32(__m256i __a, __m256i __b) 2241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v8si)__a > (__v8si)__b); 2261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cmpgt_epi64(__m256i __a, __m256i __b) 2301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v4di)__a > (__v4di)__b); 2321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_hadd_epi16(__m256i __a, __m256i __b) 2361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_phaddw256((__v16hi)__a, (__v16hi)__b); 2381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_hadd_epi32(__m256i __a, __m256i __b) 2421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_phaddd256((__v8si)__a, (__v8si)__b); 2441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_hadds_epi16(__m256i __a, __m256i __b) 2481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_phaddsw256((__v16hi)__a, (__v16hi)__b); 2501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_hsub_epi16(__m256i __a, __m256i __b) 2541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_phsubw256((__v16hi)__a, (__v16hi)__b); 2561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2581188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_hsub_epi32(__m256i __a, __m256i __b) 2601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_phsubd256((__v8si)__a, (__v8si)__b); 2621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2641188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_hsubs_epi16(__m256i __a, __m256i __b) 2661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_phsubsw256((__v16hi)__a, (__v16hi)__b); 2681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_maddubs_epi16(__m256i __a, __m256i __b) 2721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmaddubsw256((__v32qi)__a, (__v32qi)__b); 2741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_madd_epi16(__m256i __a, __m256i __b) 2781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmaddwd256((__v16hi)__a, (__v16hi)__b); 2801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_max_epi8(__m256i __a, __m256i __b) 2841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmaxsb256((__v32qi)__a, (__v32qi)__b); 2861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_max_epi16(__m256i __a, __m256i __b) 2901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmaxsw256((__v16hi)__a, (__v16hi)__b); 2921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 2941188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 2951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_max_epi32(__m256i __a, __m256i __b) 2961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 2971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmaxsd256((__v8si)__a, (__v8si)__b); 2981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 2991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_max_epu8(__m256i __a, __m256i __b) 3021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmaxub256((__v32qi)__a, (__v32qi)__b); 3041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_max_epu16(__m256i __a, __m256i __b) 3081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmaxuw256((__v16hi)__a, (__v16hi)__b); 3101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_max_epu32(__m256i __a, __m256i __b) 3141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmaxud256((__v8si)__a, (__v8si)__b); 3161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_min_epi8(__m256i __a, __m256i __b) 3201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pminsb256((__v32qi)__a, (__v32qi)__b); 3221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_min_epi16(__m256i __a, __m256i __b) 3261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pminsw256((__v16hi)__a, (__v16hi)__b); 3281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_min_epi32(__m256i __a, __m256i __b) 3321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pminsd256((__v8si)__a, (__v8si)__b); 3341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_min_epu8(__m256i __a, __m256i __b) 3381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pminub256((__v32qi)__a, (__v32qi)__b); 3401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3421188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_min_epu16(__m256i __a, __m256i __b) 3441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pminuw256 ((__v16hi)__a, (__v16hi)__b); 3461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_min_epu32(__m256i __a, __m256i __b) 3501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pminud256((__v8si)__a, (__v8si)__b); 3521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_movemask_epi8(__m256i __a) 3561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return __builtin_ia32_pmovmskb256((__v32qi)__a); 3581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepi8_epi16(__m128i __V) 3621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker /* This function always performs a signed extension, but __v16qi is a char 3641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker which may be signed or unsigned, so use __v16qs. */ 3651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector((__v16qs)__V, __v16hi); 3661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepi8_epi32(__m128i __V) 3701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker /* This function always performs a signed extension, but __v16qi is a char 3721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker which may be signed or unsigned, so use __v16qs. */ 3731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3, 4, 5, 6, 7), __v8si); 3741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepi8_epi64(__m128i __V) 3781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker /* This function always performs a signed extension, but __v16qi is a char 3801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker which may be signed or unsigned, so use __v16qs. */ 3811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__V, (__v16qs)__V, 0, 1, 2, 3), __v4di); 3821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3841188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepi16_epi32(__m128i __V) 3861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector((__v8hi)__V, __v8si); 3881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3901188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepi16_epi64(__m128i __V) 3921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v8hi)__V, (__v8hi)__V, 0, 1, 2, 3), __v4di); 3941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 3951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 3961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 3971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepi32_epi64(__m128i __V) 3981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 3991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector((__v4si)__V, __v4di); 4001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepu8_epi16(__m128i __V) 4041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector((__v16qu)__V, __v16hi); 4061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepu8_epi32(__m128i __V) 4101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3, 4, 5, 6, 7), __v8si); 4121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4141188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepu8_epi64(__m128i __V) 4161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__V, (__v16qu)__V, 0, 1, 2, 3), __v4di); 4181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepu16_epi32(__m128i __V) 4221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector((__v8hu)__V, __v8si); 4241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4261188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepu16_epi64(__m128i __V) 4281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector(__builtin_shufflevector((__v8hu)__V, (__v8hu)__V, 0, 1, 2, 3), __v4di); 4301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4321188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_cvtepu32_epi64(__m128i __V) 4341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_convertvector((__v4su)__V, __v4di); 4361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4381188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_mul_epi32(__m256i __a, __m256i __b) 4401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmuldq256((__v8si)__a, (__v8si)__b); 4421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4441188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_mulhrs_epi16(__m256i __a, __m256i __b) 4461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmulhrsw256((__v16hi)__a, (__v16hi)__b); 4481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4501188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_mulhi_epu16(__m256i __a, __m256i __b) 4521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmulhuw256((__v16hi)__a, (__v16hi)__b); 4541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_mulhi_epi16(__m256i __a, __m256i __b) 4581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pmulhw256((__v16hi)__a, (__v16hi)__b); 4601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_mullo_epi16(__m256i __a, __m256i __b) 4641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v16hi)__a * (__v16hi)__b); 4661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_mullo_epi32 (__m256i __a, __m256i __b) 4701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v8si)__a * (__v8si)__b); 4721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_mul_epu32(__m256i __a, __m256i __b) 4761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return __builtin_ia32_pmuludq256((__v8si)__a, (__v8si)__b); 4781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_or_si256(__m256i __a, __m256i __b) 4821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v4di)__a | (__v4di)__b); 4841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4861188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sad_epu8(__m256i __a, __m256i __b) 4881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return __builtin_ia32_psadbw256((__v32qi)__a, (__v32qi)__b); 4901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4921188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 4931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_shuffle_epi8(__m256i __a, __m256i __b) 4941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 4951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pshufb256((__v32qi)__a, (__v32qi)__b); 4961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 4971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_shuffle_epi32(a, imm) __extension__ ({ \ 4991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_shufflevector((__v8si)(__m256i)(a), \ 5001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v8si)_mm256_setzero_si256(), \ 5011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (imm) & 0x3, ((imm) & 0xc) >> 2, \ 5021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker ((imm) & 0x30) >> 4, ((imm) & 0xc0) >> 6, \ 5031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4 + (((imm) & 0x03) >> 0), \ 5041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4 + (((imm) & 0x0c) >> 2), \ 5051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4 + (((imm) & 0x30) >> 4), \ 5061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4 + (((imm) & 0xc0) >> 6)); }) 5071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_shufflehi_epi16(a, imm) __extension__ ({ \ 5091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_shufflevector((__v16hi)(__m256i)(a), \ 5101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v16hi)_mm256_setzero_si256(), \ 5111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 0, 1, 2, 3, \ 5121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4 + (((imm) & 0x03) >> 0), \ 5131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4 + (((imm) & 0x0c) >> 2), \ 5141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4 + (((imm) & 0x30) >> 4), \ 5151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4 + (((imm) & 0xc0) >> 6), \ 5161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8, 9, 10, 11, \ 5171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12 + (((imm) & 0x03) >> 0), \ 5181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12 + (((imm) & 0x0c) >> 2), \ 5191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12 + (((imm) & 0x30) >> 4), \ 5201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12 + (((imm) & 0xc0) >> 6)); }) 5211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_shufflelo_epi16(a, imm) __extension__ ({ \ 5231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_shufflevector((__v16hi)(__m256i)(a), \ 5241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v16hi)_mm256_setzero_si256(), \ 5251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (imm) & 0x3,((imm) & 0xc) >> 2, \ 5261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker ((imm) & 0x30) >> 4, ((imm) & 0xc0) >> 6, \ 5271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 4, 5, 6, 7, \ 5281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8 + (((imm) & 0x03) >> 0), \ 5291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8 + (((imm) & 0x0c) >> 2), \ 5301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8 + (((imm) & 0x30) >> 4), \ 5311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8 + (((imm) & 0xc0) >> 6), \ 5321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12, 13, 14, 15); }) 5331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sign_epi8(__m256i __a, __m256i __b) 5361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psignb256((__v32qi)__a, (__v32qi)__b); 5381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sign_epi16(__m256i __a, __m256i __b) 5421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psignw256((__v16hi)__a, (__v16hi)__b); 5441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sign_epi32(__m256i __a, __m256i __b) 5481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psignd256((__v8si)__a, (__v8si)__b); 5501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_slli_si256(a, count) __extension__ ({ \ 5531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_pslldqi256((__m256i)(a), (count)*8); }) 5541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_bslli_epi128(a, count) _mm256_slli_si256((a), (count)) 5561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_slli_epi16(__m256i __a, int __count) 5591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psllwi256((__v16hi)__a, __count); 5611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sll_epi16(__m256i __a, __m128i __count) 5651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psllw256((__v16hi)__a, (__v8hi)__count); 5671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5691188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_slli_epi32(__m256i __a, int __count) 5711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pslldi256((__v8si)__a, __count); 5731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5751188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sll_epi32(__m256i __a, __m128i __count) 5771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_pslld256((__v8si)__a, (__v4si)__count); 5791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5811188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_slli_epi64(__m256i __a, int __count) 5831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return __builtin_ia32_psllqi256((__v4di)__a, __count); 5851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5871188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sll_epi64(__m256i __a, __m128i __count) 5891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return __builtin_ia32_psllq256((__v4di)__a, __count); 5911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5931188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 5941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srai_epi16(__m256i __a, int __count) 5951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 5961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psrawi256((__v16hi)__a, __count); 5971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 5981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 5991188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sra_epi16(__m256i __a, __m128i __count) 6011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psraw256((__v16hi)__a, (__v8hi)__count); 6031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6051188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srai_epi32(__m256i __a, int __count) 6071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psradi256((__v8si)__a, __count); 6091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sra_epi32(__m256i __a, __m128i __count) 6131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psrad256((__v8si)__a, (__v4si)__count); 6151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_srli_si256(a, count) __extension__ ({ \ 6181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_psrldqi256((__m256i)(a), (count)*8); }) 6191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_bsrli_epi128(a, count) _mm256_srli_si256((a), (count)) 6211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srli_epi16(__m256i __a, int __count) 6241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psrlwi256((__v16hi)__a, __count); 6261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srl_epi16(__m256i __a, __m128i __count) 6301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psrlw256((__v16hi)__a, (__v8hi)__count); 6321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srli_epi32(__m256i __a, int __count) 6361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psrldi256((__v8si)__a, __count); 6381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srl_epi32(__m256i __a, __m128i __count) 6421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psrld256((__v8si)__a, (__v4si)__count); 6441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srli_epi64(__m256i __a, int __count) 6481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return __builtin_ia32_psrlqi256((__v4di)__a, __count); 6501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srl_epi64(__m256i __a, __m128i __count) 6541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return __builtin_ia32_psrlq256((__v4di)__a, __count); 6561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6581188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sub_epi8(__m256i __a, __m256i __b) 6601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v32qi)__a - (__v32qi)__b); 6621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6641188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sub_epi16(__m256i __a, __m256i __b) 6661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v16hi)__a - (__v16hi)__b); 6681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sub_epi32(__m256i __a, __m256i __b) 6721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v8si)__a - (__v8si)__b); 6741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sub_epi64(__m256i __a, __m256i __b) 6781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v4di)__a - (__v4di)__b); 6801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_subs_epi8(__m256i __a, __m256i __b) 6841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psubsb256((__v32qi)__a, (__v32qi)__b); 6861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_subs_epi16(__m256i __a, __m256i __b) 6901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psubsw256((__v16hi)__a, (__v16hi)__b); 6921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 6941188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 6951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_subs_epu8(__m256i __a, __m256i __b) 6961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 6971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psubusb256((__v32qi)__a, (__v32qi)__b); 6981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 6991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_subs_epu16(__m256i __a, __m256i __b) 7021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psubusw256((__v16hi)__a, (__v16hi)__b); 7041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_unpackhi_epi8(__m256i __a, __m256i __b) 7081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v32qi)__a, (__v32qi)__b, 8, 32+8, 9, 32+9, 10, 32+10, 11, 32+11, 12, 32+12, 13, 32+13, 14, 32+14, 15, 32+15, 24, 32+24, 25, 32+25, 26, 32+26, 27, 32+27, 28, 32+28, 29, 32+29, 30, 32+30, 31, 32+31); 7101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_unpackhi_epi16(__m256i __a, __m256i __b) 7141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)__b, 4, 16+4, 5, 16+5, 6, 16+6, 7, 16+7, 12, 16+12, 13, 16+13, 14, 16+14, 15, 16+15); 7161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_unpackhi_epi32(__m256i __a, __m256i __b) 7201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v8si)__a, (__v8si)__b, 2, 8+2, 3, 8+3, 6, 8+6, 7, 8+7); 7221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_unpackhi_epi64(__m256i __a, __m256i __b) 7261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v4di)__a, (__v4di)__b, 1, 4+1, 3, 4+3); 7281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_unpacklo_epi8(__m256i __a, __m256i __b) 7321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v32qi)__a, (__v32qi)__b, 0, 32+0, 1, 32+1, 2, 32+2, 3, 32+3, 4, 32+4, 5, 32+5, 6, 32+6, 7, 32+7, 16, 32+16, 17, 32+17, 18, 32+18, 19, 32+19, 20, 32+20, 21, 32+21, 22, 32+22, 23, 32+23); 7341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_unpacklo_epi16(__m256i __a, __m256i __b) 7381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v16hi)__a, (__v16hi)__b, 0, 16+0, 1, 16+1, 2, 16+2, 3, 16+3, 8, 16+8, 9, 16+9, 10, 16+10, 11, 16+11); 7401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7421188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_unpacklo_epi32(__m256i __a, __m256i __b) 7441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v8si)__a, (__v8si)__b, 0, 8+0, 1, 8+1, 4, 8+4, 5, 8+5); 7461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_unpacklo_epi64(__m256i __a, __m256i __b) 7501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v4di)__a, (__v4di)__b, 0, 4+0, 2, 4+2); 7521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_xor_si256(__m256i __a, __m256i __b) 7561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)((__v4di)__a ^ (__v4di)__b); 7581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_stream_load_si256(__m256i const *__V) 7621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_movntdqa256((const __v4di *)__V); 7641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7661188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS 7671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_broadcastss_ps(__m128 __X) 7681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128)__builtin_shufflevector((__v4sf)__X, (__v4sf)__X, 0, 0, 0, 0); 7701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7721188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 7731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_broadcastsd_pd(__m128d __a) 7741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return __builtin_shufflevector((__v2df)__a, (__v2df)__a, 0, 0); 7761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7781188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256 __DEFAULT_FN_ATTRS 7791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_broadcastss_ps(__m128 __X) 7801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256)__builtin_shufflevector((__v4sf)__X, (__v4sf)__X, 0, 0, 0, 0, 0, 0, 0, 0); 7821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7841188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256d __DEFAULT_FN_ATTRS 7851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_broadcastsd_pd(__m128d __X) 7861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256d)__builtin_shufflevector((__v2df)__X, (__v2df)__X, 0, 0, 0, 0); 7881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7901188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 7911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_broadcastsi128_si256(__m128i __X) 7921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 7931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v2di)__X, (__v2di)__X, 0, 1, 0, 1); 7941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 7951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 7961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_blend_epi32(V1, V2, M) __extension__ ({ \ 7971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_shufflevector((__v4si)(__m128i)(V1), \ 7981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(V2), \ 7991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x01) ? 4 : 0), \ 8001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x02) ? 5 : 1), \ 8011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x04) ? 6 : 2), \ 8021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x08) ? 7 : 3)); }) 8031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_blend_epi32(V1, V2, M) __extension__ ({ \ 8051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_shufflevector((__v8si)(__m256i)(V1), \ 8061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v8si)(__m256i)(V2), \ 8071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x01) ? 8 : 0), \ 8081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x02) ? 9 : 1), \ 8091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x04) ? 10 : 2), \ 8101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x08) ? 11 : 3), \ 8111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x10) ? 12 : 4), \ 8121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x20) ? 13 : 5), \ 8131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x40) ? 14 : 6), \ 8141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 0x80) ? 15 : 7)); }) 8151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8161188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 8171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_broadcastb_epi8(__m128i __X) 8181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v16qi)__X, (__v16qi)__X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); 8201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 8231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_broadcastw_epi16(__m128i __X) 8241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v8hi)__X, (__v8hi)__X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); 8261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 8291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_broadcastd_epi32(__m128i __X) 8301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v4si)__X, (__v4si)__X, 0, 0, 0, 0, 0, 0, 0, 0); 8321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 8351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_broadcastq_epi64(__m128i __X) 8361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_shufflevector((__v2di)__X, (__v2di)__X, 0, 0, 0, 0); 8381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_broadcastb_epi8(__m128i __X) 8421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_shufflevector((__v16qi)__X, (__v16qi)__X, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); 8441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_broadcastw_epi16(__m128i __X) 8481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_shufflevector((__v8hi)__X, (__v8hi)__X, 0, 0, 0, 0, 0, 0, 0, 0); 8501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_broadcastd_epi32(__m128i __X) 8551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_shufflevector((__v4si)__X, (__v4si)__X, 0, 0, 0, 0); 8571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_broadcastq_epi64(__m128i __X) 8611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_shufflevector((__v2di)__X, (__v2di)__X, 0, 0); 8631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 8661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_permutevar8x32_epi32(__m256i __a, __m256i __b) 8671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_permvarsi256((__v8si)__a, (__v8si)__b); 8691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_permute4x64_pd(V, M) __extension__ ({ \ 8721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256d)__builtin_shufflevector((__v4df)(__m256d)(V), \ 8731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4df)_mm256_setzero_pd(), \ 8741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (M) & 0x3, ((M) & 0xc) >> 2, \ 8751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker ((M) & 0x30) >> 4, ((M) & 0xc0) >> 6); }) 8761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8771188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256 __DEFAULT_FN_ATTRS 8781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_permutevar8x32_ps(__m256 __a, __m256i __b) 8791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 8801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256)__builtin_ia32_permvarsf256((__v8sf)__a, (__v8si)__b); 8811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 8821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_permute4x64_epi64(V, M) __extension__ ({ \ 8841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_shufflevector((__v4di)(__m256i)(V), \ 8851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)_mm256_setzero_si256(), \ 8861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (M) & 0x3, ((M) & 0xc) >> 2, \ 8871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker ((M) & 0x30) >> 4, ((M) & 0xc0) >> 6); }) 8881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_permute2x128_si256(V1, V2, M) __extension__ ({ \ 8901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_permti256((__m256i)(V1), (__m256i)(V2), (M)); }) 8911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_extracti128_si256(V, M) __extension__ ({ \ 8931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_shufflevector((__v4di)(__m256i)(V), \ 8941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)_mm256_setzero_si256(), \ 8951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 1) ? 2 : 0), \ 8961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 1) ? 3 : 1) ); }) 8971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 8981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_inserti128_si256(V1, V2, M) __extension__ ({ \ 8991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_shufflevector((__v4di)(__m256i)(V1), \ 9001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)_mm256_castsi128_si256((__m128i)(V2)), \ 9011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 1) ? 0 : 4), \ 9021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 1) ? 1 : 5), \ 9031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 1) ? 4 : 2), \ 9041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (((M) & 1) ? 5 : 3) ); }) 9051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 9071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_maskload_epi32(int const *__X, __m256i __M) 9081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_maskloadd256((const __v8si *)__X, (__v8si)__M); 9101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 9131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_maskload_epi64(long long const *__X, __m256i __M) 9141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_maskloadq256((const __v4di *)__X, (__v4di)__M); 9161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskload_epi32(int const *__X, __m128i __M) 9201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_ia32_maskloadd((const __v4si *)__X, (__v4si)__M); 9221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskload_epi64(long long const *__X, __m128i __M) 9261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_ia32_maskloadq((const __v2di *)__X, (__v2di)__M); 9281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 9311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_maskstore_epi32(int *__X, __m256i __M, __m256i __Y) 9321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker __builtin_ia32_maskstored256((__v8si *)__X, (__v8si)__M, (__v8si)__Y); 9341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 9371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_maskstore_epi64(long long *__X, __m256i __M, __m256i __Y) 9381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker __builtin_ia32_maskstoreq256((__v4di *)__X, (__v4di)__M, (__v4di)__Y); 9401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9421188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 9431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskstore_epi32(int *__X, __m128i __M, __m128i __Y) 9441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker __builtin_ia32_maskstored((__v4si *)__X, (__v4si)__M, (__v4si)__Y); 9461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 9491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskstore_epi64(long long *__X, __m128i __M, __m128i __Y) 9501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker __builtin_ia32_maskstoreq(( __v2di *)__X, (__v2di)__M, (__v2di)__Y); 9521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 9551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sllv_epi32(__m256i __X, __m256i __Y) 9561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psllv8si((__v8si)__X, (__v8si)__Y); 9581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_sllv_epi32(__m128i __X, __m128i __Y) 9621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_ia32_psllv4si((__v4si)__X, (__v4si)__Y); 9641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9661188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 9671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_sllv_epi64(__m256i __X, __m256i __Y) 9681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psllv4di((__v4di)__X, (__v4di)__Y); 9701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9721188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_sllv_epi64(__m128i __X, __m128i __Y) 9741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_ia32_psllv2di((__v2di)__X, (__v2di)__Y); 9761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9781188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 9791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srav_epi32(__m256i __X, __m256i __Y) 9801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psrav8si((__v8si)__X, (__v8si)__Y); 9821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9841188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_srav_epi32(__m128i __X, __m128i __Y) 9861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_ia32_psrav4si((__v4si)__X, (__v4si)__Y); 9881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9901188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 9911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srlv_epi32(__m256i __X, __m256i __Y) 9921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psrlv8si((__v8si)__X, (__v8si)__Y); 9941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 9951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 9961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_srlv_epi32(__m128i __X, __m128i __Y) 9981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 9991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_ia32_psrlv4si((__v4si)__X, (__v4si)__Y); 10001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 10011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS 10031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm256_srlv_epi64(__m256i __X, __m256i __Y) 10041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 10051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m256i)__builtin_ia32_psrlv4di((__v4di)__X, (__v4di)__Y); 10061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 10071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_srlv_epi64(__m128i __X, __m128i __Y) 10101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{ 10111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128i)__builtin_ia32_psrlv2di((__v2di)__X, (__v2di)__Y); 10121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} 10131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_i32gather_pd(a, m, i, mask, s) __extension__ ({ \ 10151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128d)__builtin_ia32_gatherd_pd((__v2df)(__m128i)(a), \ 10161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (double const *)(m), \ 10171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 10181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2df)(__m128d)(mask), (s)); }) 10191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_mask_i32gather_pd(a, m, i, mask, s) __extension__ ({ \ 10211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256d)__builtin_ia32_gatherd_pd256((__v4df)(__m256d)(a), \ 10221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (double const *)(m), \ 10231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 10241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4df)(__m256d)(mask), (s)); }) 10251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_i64gather_pd(a, m, i, mask, s) __extension__ ({ \ 10271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128d)__builtin_ia32_gatherq_pd((__v2df)(__m128d)(a), \ 10281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (double const *)(m), \ 10291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)(__m128i)(i), \ 10301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2df)(__m128d)(mask), (s)); }) 10311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_mask_i64gather_pd(a, m, i, mask, s) __extension__ ({ \ 10331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256d)__builtin_ia32_gatherq_pd256((__v4df)(__m256d)(a), \ 10341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (double const *)(m), \ 10351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)(__m256i)(i), \ 10361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4df)(__m256d)(mask), (s)); }) 10371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_i32gather_ps(a, m, i, mask, s) __extension__ ({ \ 10391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128)__builtin_ia32_gatherd_ps((__v4sf)(__m128)(a), \ 10401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (float const *)(m), \ 10411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 10421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4sf)(__m128)(mask), (s)); }) 10431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_mask_i32gather_ps(a, m, i, mask, s) __extension__ ({ \ 10451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256)__builtin_ia32_gatherd_ps256((__v8sf)(__m256)(a), \ 10461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (float const *)(m), \ 10471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v8si)(__m256i)(i), \ 10481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v8sf)(__m256)(mask), (s)); }) 10491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_i64gather_ps(a, m, i, mask, s) __extension__ ({ \ 10511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128)__builtin_ia32_gatherq_ps((__v4sf)(__m128)(a), \ 10521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (float const *)(m), \ 10531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)(__m128i)(i), \ 10541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4sf)(__m128)(mask), (s)); }) 10551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_mask_i64gather_ps(a, m, i, mask, s) __extension__ ({ \ 10571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128)__builtin_ia32_gatherq_ps256((__v4sf)(__m128)(a), \ 10581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (float const *)(m), \ 10591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)(__m256i)(i), \ 10601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4sf)(__m128)(mask), (s)); }) 10611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_i32gather_epi32(a, m, i, mask, s) __extension__ ({ \ 10631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherd_d((__v4si)(__m128i)(a), \ 10641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (int const *)(m), \ 10651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 10661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(mask), (s)); }) 10671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_mask_i32gather_epi32(a, m, i, mask, s) __extension__ ({ \ 10691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_gatherd_d256((__v8si)(__m256i)(a), \ 10701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (int const *)(m), \ 10711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v8si)(__m256i)(i), \ 10721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v8si)(__m256i)(mask), (s)); }) 10731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_i64gather_epi32(a, m, i, mask, s) __extension__ ({ \ 10751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherq_d((__v4si)(__m128i)(a), \ 10761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (int const *)(m), \ 10771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)(__m128i)(i), \ 10781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(mask), (s)); }) 10791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_mask_i64gather_epi32(a, m, i, mask, s) __extension__ ({ \ 10811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherq_d256((__v4si)(__m128i)(a), \ 10821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (int const *)(m), \ 10831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)(__m256i)(i), \ 10841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(mask), (s)); }) 10851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_i32gather_epi64(a, m, i, mask, s) __extension__ ({ \ 10871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherd_q((__v2di)(__m128i)(a), \ 10881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (long long const *)(m), \ 10891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 10901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)(__m128i)(mask), (s)); }) 10911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_mask_i32gather_epi64(a, m, i, mask, s) __extension__ ({ \ 10931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_gatherd_q256((__v4di)(__m256i)(a), \ 10941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (long long const *)(m), \ 10951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 10961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)(__m256i)(mask), (s)); }) 10971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 10981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_i64gather_epi64(a, m, i, mask, s) __extension__ ({ \ 10991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherq_q((__v2di)(__m128i)(a), \ 11001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (long long const *)(m), \ 11011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)(__m128i)(i), \ 11021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)(__m128i)(mask), (s)); }) 11031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_mask_i64gather_epi64(a, m, i, mask, s) __extension__ ({ \ 11051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_gatherq_q256((__v4di)(__m256i)(a), \ 11061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (long long const *)(m), \ 11071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)(__m256i)(i), \ 11081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)(__m256i)(mask), (s)); }) 11091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_i32gather_pd(m, i, s) __extension__ ({ \ 11111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128d)__builtin_ia32_gatherd_pd((__v2df)_mm_undefined_pd(), \ 11121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (double const *)(m), \ 11131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 11141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2df)_mm_cmpeq_pd(_mm_setzero_pd(), \ 11151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _mm_setzero_pd()), \ 11161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (s)); }) 11171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_i32gather_pd(m, i, s) __extension__ ({ \ 11191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256d)__builtin_ia32_gatherd_pd256((__v4df)_mm256_undefined_pd(), \ 11201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (double const *)(m), \ 11211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 11221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4df)_mm256_cmp_pd(_mm256_setzero_pd(), \ 11231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _mm256_setzero_pd(), \ 11241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _CMP_EQ_OQ), \ 11251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (s)); }) 11261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_i64gather_pd(m, i, s) __extension__ ({ \ 11281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128d)__builtin_ia32_gatherq_pd((__v2df)_mm_undefined_pd(), \ 11291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (double const *)(m), \ 11301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)(__m128i)(i), \ 11311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2df)_mm_cmpeq_pd(_mm_setzero_pd(), \ 11321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _mm_setzero_pd()), \ 11331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (s)); }) 11341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_i64gather_pd(m, i, s) __extension__ ({ \ 11361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256d)__builtin_ia32_gatherq_pd256((__v4df)_mm256_undefined_pd(), \ 11371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (double const *)(m), \ 11381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)(__m256i)(i), \ 11391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4df)_mm256_cmp_pd(_mm256_setzero_pd(), \ 11401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _mm256_setzero_pd(), \ 11411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _CMP_EQ_OQ), \ 11421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (s)); }) 11431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_i32gather_ps(m, i, s) __extension__ ({ \ 11451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128)__builtin_ia32_gatherd_ps((__v4sf)_mm_undefined_ps(), \ 11461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (float const *)(m), \ 11471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 11481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4sf)_mm_cmpeq_ps(_mm_setzero_ps(), \ 11491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _mm_setzero_ps()), \ 11501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (s)); }) 11511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_i32gather_ps(m, i, s) __extension__ ({ \ 11531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256)__builtin_ia32_gatherd_ps256((__v8sf)_mm256_undefined_ps(), \ 11541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (float const *)(m), \ 11551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v8si)(__m256i)(i), \ 11561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v8sf)_mm256_cmp_ps(_mm256_setzero_ps(), \ 11571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _mm256_setzero_ps(), \ 11581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _CMP_EQ_OQ), \ 11591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (s)); }) 11601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_i64gather_ps(m, i, s) __extension__ ({ \ 11621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128)__builtin_ia32_gatherq_ps((__v4sf)_mm_undefined_ps(), \ 11631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (float const *)(m), \ 11641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)(__m128i)(i), \ 11651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4sf)_mm_cmpeq_ps(_mm_setzero_ps(), \ 11661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _mm_setzero_ps()), \ 11671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (s)); }) 11681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_i64gather_ps(m, i, s) __extension__ ({ \ 11701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128)__builtin_ia32_gatherq_ps256((__v4sf)_mm_undefined_ps(), \ 11711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (float const *)(m), \ 11721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)(__m256i)(i), \ 11731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4sf)_mm_cmpeq_ps(_mm_setzero_ps(), \ 11741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker _mm_setzero_ps()), \ 11751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (s)); }) 11761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_i32gather_epi32(m, i, s) __extension__ ({ \ 11781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherd_d((__v4si)_mm_undefined_si128(), \ 11791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (int const *)(m), (__v4si)(__m128i)(i), \ 11801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)_mm_set1_epi32(-1), (s)); }) 11811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_i32gather_epi32(m, i, s) __extension__ ({ \ 11831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_gatherd_d256((__v8si)_mm256_undefined_si256(), \ 11841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (int const *)(m), (__v8si)(__m256i)(i), \ 11851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v8si)_mm256_set1_epi32(-1), (s)); }) 11861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_i64gather_epi32(m, i, s) __extension__ ({ \ 11881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherq_d((__v4si)_mm_undefined_si128(), \ 11891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (int const *)(m), (__v2di)(__m128i)(i), \ 11901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)_mm_set1_epi32(-1), (s)); }) 11911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_i64gather_epi32(m, i, s) __extension__ ({ \ 11931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherq_d256((__v4si)_mm_undefined_si128(), \ 11941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (int const *)(m), (__v4di)(__m256i)(i), \ 11951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)_mm_set1_epi32(-1), (s)); }) 11961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 11971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_i32gather_epi64(m, i, s) __extension__ ({ \ 11981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherd_q((__v2di)_mm_undefined_si128(), \ 11991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (long long const *)(m), \ 12001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 12011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)_mm_set1_epi64x(-1), (s)); }) 12021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_i32gather_epi64(m, i, s) __extension__ ({ \ 12041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_gatherd_q256((__v4di)_mm256_undefined_si256(), \ 12051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (long long const *)(m), \ 12061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4si)(__m128i)(i), \ 12071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)_mm256_set1_epi64x(-1), (s)); }) 12081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_i64gather_epi64(m, i, s) __extension__ ({ \ 12101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m128i)__builtin_ia32_gatherq_q((__v2di)_mm_undefined_si128(), \ 12111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (long long const *)(m), \ 12121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)(__m128i)(i), \ 12131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v2di)_mm_set1_epi64x(-1), (s)); }) 12141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm256_i64gather_epi64(m, i, s) __extension__ ({ \ 12161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__m256i)__builtin_ia32_gatherq_q256((__v4di)_mm256_undefined_si256(), \ 12171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (long long const *)(m), \ 12181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)(__m256i)(i), \ 12191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker (__v4di)_mm256_set1_epi64x(-1), (s)); }) 12201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#undef __DEFAULT_FN_ATTRS 12221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker 12231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif /* __AVX2INTRIN_H */ 1224