16bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker/*===---- emmintrin.h - SSE2 intrinsics ------------------------------------=== 26bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * 36bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * Permission is hereby granted, free of charge, to any person obtaining a copy 46bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * of this software and associated documentation files (the "Software"), to deal 56bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * in the Software without restriction, including without limitation the rights 66bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 76bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * copies of the Software, and to permit persons to whom the Software is 86bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * furnished to do so, subject to the following conditions: 96bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * 106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * The above copyright notice and this permission notice shall be included in 116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * all copies or substantial portions of the Software. 126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * 136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * THE SOFTWARE. 206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * 216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker *===-----------------------------------------------------------------------=== 226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker */ 236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#ifndef __EMMINTRIN_H 256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define __EMMINTRIN_H 266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#include <xmmintrin.h> 286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickertypedef double __m128d __attribute__((__vector_size__(16))); 306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickertypedef long long __m128i __attribute__((__vector_size__(16))); 316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker/* Type defines. */ 336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickertypedef double __v2df __attribute__ ((__vector_size__ (16))); 346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickertypedef long long __v2di __attribute__ ((__vector_size__ (16))); 356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickertypedef short __v8hi __attribute__((__vector_size__(16))); 366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickertypedef char __v16qi __attribute__((__vector_size__(16))); 376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker/* We need an explicitly signed variant for char. Note that this shouldn't 396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker * appear in the interface though. */ 406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickertypedef signed char __v16qs __attribute__((__vector_size__(16))); 416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#include <f16cintrin.h> 436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker/* Define the default attributes for the functions in this file. */ 456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("sse2"))) 466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_add_sd(__m128d __a, __m128d __b) 496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __a[0] += __b[0]; 516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a; 526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_add_pd(__m128d __a, __m128d __b) 566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a + __b; 586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sub_sd(__m128d __a, __m128d __b) 626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __a[0] -= __b[0]; 646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a; 656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sub_pd(__m128d __a, __m128d __b) 696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a - __b; 716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_mul_sd(__m128d __a, __m128d __b) 756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __a[0] *= __b[0]; 776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a; 786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_mul_pd(__m128d __a, __m128d __b) 826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a * __b; 846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_div_sd(__m128d __a, __m128d __b) 886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __a[0] /= __b[0]; 906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a; 916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_div_pd(__m128d __a, __m128d __b) 956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a / __b; 976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sqrt_sd(__m128d __a, __m128d __b) 1016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __m128d __c = __builtin_ia32_sqrtsd(__b); 1036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d) { __c[0], __a[1] }; 1046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sqrt_pd(__m128d __a) 1086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_sqrtpd(__a); 1106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_min_sd(__m128d __a, __m128d __b) 1146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_minsd(__a, __b); 1166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_min_pd(__m128d __a, __m128d __b) 1206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_minpd(__a, __b); 1226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_max_sd(__m128d __a, __m128d __b) 1266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_maxsd(__a, __b); 1286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_max_pd(__m128d __a, __m128d __b) 1326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_maxpd(__a, __b); 1346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_and_pd(__m128d __a, __m128d __b) 1386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)((__v4si)__a & (__v4si)__b); 1406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_andnot_pd(__m128d __a, __m128d __b) 1446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)(~(__v4si)__a & (__v4si)__b); 1466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_or_pd(__m128d __a, __m128d __b) 1506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)((__v4si)__a | (__v4si)__b); 1526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_xor_pd(__m128d __a, __m128d __b) 1566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)((__v4si)__a ^ (__v4si)__b); 1586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpeq_pd(__m128d __a, __m128d __b) 1626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpeqpd(__a, __b); 1646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmplt_pd(__m128d __a, __m128d __b) 1686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpltpd(__a, __b); 1706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmple_pd(__m128d __a, __m128d __b) 1746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmplepd(__a, __b); 1766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpgt_pd(__m128d __a, __m128d __b) 1806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpltpd(__b, __a); 1826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpge_pd(__m128d __a, __m128d __b) 1866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmplepd(__b, __a); 1886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpord_pd(__m128d __a, __m128d __b) 1926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpordpd(__a, __b); 1946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 1956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 1966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 1976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpunord_pd(__m128d __a, __m128d __b) 1986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 1996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpunordpd(__a, __b); 2006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpneq_pd(__m128d __a, __m128d __b) 2046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpneqpd(__a, __b); 2066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpnlt_pd(__m128d __a, __m128d __b) 2106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpnltpd(__a, __b); 2126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpnle_pd(__m128d __a, __m128d __b) 2166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpnlepd(__a, __b); 2186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpngt_pd(__m128d __a, __m128d __b) 2226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpnltpd(__b, __a); 2246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpnge_pd(__m128d __a, __m128d __b) 2286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpnlepd(__b, __a); 2306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpeq_sd(__m128d __a, __m128d __b) 2346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpeqsd(__a, __b); 2366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmplt_sd(__m128d __a, __m128d __b) 2406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpltsd(__a, __b); 2426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmple_sd(__m128d __a, __m128d __b) 2466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmplesd(__a, __b); 2486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpgt_sd(__m128d __a, __m128d __b) 2526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __m128d __c = __builtin_ia32_cmpltsd(__b, __a); 2546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d) { __c[0], __a[1] }; 2556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpge_sd(__m128d __a, __m128d __b) 2596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __m128d __c = __builtin_ia32_cmplesd(__b, __a); 2616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d) { __c[0], __a[1] }; 2626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpord_sd(__m128d __a, __m128d __b) 2666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpordsd(__a, __b); 2686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpunord_sd(__m128d __a, __m128d __b) 2726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpunordsd(__a, __b); 2746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpneq_sd(__m128d __a, __m128d __b) 2786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpneqsd(__a, __b); 2806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpnlt_sd(__m128d __a, __m128d __b) 2846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpnltsd(__a, __b); 2866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpnle_sd(__m128d __a, __m128d __b) 2906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_cmpnlesd(__a, __b); 2926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 2936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 2946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 2956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpngt_sd(__m128d __a, __m128d __b) 2966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 2976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __m128d __c = __builtin_ia32_cmpnltsd(__b, __a); 2986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d) { __c[0], __a[1] }; 2996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 3026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpnge_sd(__m128d __a, __m128d __b) 3036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __m128d __c = __builtin_ia32_cmpnlesd(__b, __a); 3056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d) { __c[0], __a[1] }; 3066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_comieq_sd(__m128d __a, __m128d __b) 3106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_comisdeq(__a, __b); 3126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_comilt_sd(__m128d __a, __m128d __b) 3166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_comisdlt(__a, __b); 3186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_comile_sd(__m128d __a, __m128d __b) 3226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_comisdle(__a, __b); 3246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_comigt_sd(__m128d __a, __m128d __b) 3286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_comisdgt(__a, __b); 3306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_comige_sd(__m128d __a, __m128d __b) 3346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_comisdge(__a, __b); 3366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_comineq_sd(__m128d __a, __m128d __b) 3406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_comisdneq(__a, __b); 3426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_ucomieq_sd(__m128d __a, __m128d __b) 3466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_ucomisdeq(__a, __b); 3486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_ucomilt_sd(__m128d __a, __m128d __b) 3526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_ucomisdlt(__a, __b); 3546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_ucomile_sd(__m128d __a, __m128d __b) 3586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_ucomisdle(__a, __b); 3606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_ucomigt_sd(__m128d __a, __m128d __b) 3646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_ucomisdgt(__a, __b); 3666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_ucomige_sd(__m128d __a, __m128d __b) 3706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_ucomisdge(__a, __b); 3726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 3756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_ucomineq_sd(__m128d __a, __m128d __b) 3766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_ucomisdneq(__a, __b); 3786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS 3816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtpd_ps(__m128d __a) 3826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_cvtpd2ps(__a); 3846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 3876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtps_pd(__m128 __a) 3886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_cvtps2pd(__a); 3906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 3936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtepi32_pd(__m128i __a) 3946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 3956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_cvtdq2pd((__v4si)__a); 3966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 3976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 3986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 3996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtpd_epi32(__m128d __a) 4006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_cvtpd2dq(__a); 4026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 4056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsd_si32(__m128d __a) 4066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_cvtsd2si(__a); 4086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS 4116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsd_ss(__m128 __a, __m128d __b) 4126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __a[0] = __b[0]; 4146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a; 4156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 4186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsi32_sd(__m128d __a, int __b) 4196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __a[0] = __b; 4216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a; 4226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 4256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtss_sd(__m128d __a, __m128 __b) 4266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __a[0] = __b[0]; 4286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a; 4296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 4326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvttpd_epi32(__m128d __a) 4336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_cvttpd2dq(__a); 4356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 4386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvttsd_si32(__m128d __a) 4396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a[0]; 4416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m64 __DEFAULT_FN_ATTRS 4446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtpd_pi32(__m128d __a) 4456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m64)__builtin_ia32_cvtpd2pi(__a); 4476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m64 __DEFAULT_FN_ATTRS 4506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvttpd_pi32(__m128d __a) 4516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m64)__builtin_ia32_cvttpd2pi(__a); 4536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 4566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtpi32_pd(__m64 __a) 4576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_cvtpi2pd((__v2si)__a); 4596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ double __DEFAULT_FN_ATTRS 4626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsd_f64(__m128d __a) 4636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a[0]; 4656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 4686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_load_pd(double const *__dp) 4696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return *(__m128d*)__dp; 4716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 4746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_load1_pd(double const *__dp) 4756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_load1_pd_struct { 4776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u; 4786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 4796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u = ((struct __mm_load1_pd_struct*)__dp)->__u; 4806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ __u, __u }; 4816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _mm_load_pd1(dp) _mm_load1_pd(dp) 4846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 4866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_loadr_pd(double const *__dp) 4876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __m128d __u = *(__m128d*)__dp; 4896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_shufflevector(__u, __u, 1, 0); 4906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 4916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 4936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_loadu_pd(double const *__dp) 4946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 4956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __loadu_pd { 4966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __m128d __v; 4976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 4986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return ((struct __loadu_pd*)__dp)->__v; 4996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_load_sd(double const *__dp) 5036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_load_sd_struct { 5056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u; 5066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 5076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u = ((struct __mm_load_sd_struct*)__dp)->__u; 5086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ __u, 0 }; 5096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_loadh_pd(__m128d __a, double const *__dp) 5136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_loadh_pd_struct { 5156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u; 5166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 5176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u = ((struct __mm_loadh_pd_struct*)__dp)->__u; 5186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ __a[0], __u }; 5196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_loadl_pd(__m128d __a, double const *__dp) 5236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_loadl_pd_struct { 5256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u; 5266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 5276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u = ((struct __mm_loadl_pd_struct*)__dp)->__u; 5286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ __u, __a[1] }; 5296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_undefined_pd() 5336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__builtin_ia32_undef128(); 5356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set_sd(double __w) 5396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ __w, 0 }; 5416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set1_pd(double __w) 5456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ __w, __w }; 5476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set_pd(double __w, double __x) 5516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ __x, __w }; 5536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_setr_pd(double __w, double __x) 5576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ __w, __x }; 5596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_setzero_pd(void) 5636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ 0, 0 }; 5656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 5686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_move_sd(__m128d __a, __m128d __b) 5696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d){ __b[0], __a[1] }; 5716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 5746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_store_sd(double *__dp, __m128d __a) 5756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_store_sd_struct { 5776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u; 5786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 5796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((struct __mm_store_sd_struct*)__dp)->__u = __a[0]; 5806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 5836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_store1_pd(double *__dp, __m128d __a) 5846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_store1_pd_struct { 5866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u[2]; 5876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 5886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((struct __mm_store1_pd_struct*)__dp)->__u[0] = __a[0]; 5896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((struct __mm_store1_pd_struct*)__dp)->__u[1] = __a[0]; 5906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 5936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_store_pd(double *__dp, __m128d __a) 5946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 5956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker *(__m128d *)__dp = __a; 5966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 5976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 5986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 5996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_storeu_pd(double *__dp, __m128d __a) 6006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_storeupd(__dp, __a); 6026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 6056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_storer_pd(double *__dp, __m128d __a) 6066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __a = __builtin_shufflevector(__a, __a, 1, 0); 6086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker *(__m128d *)__dp = __a; 6096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 6126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_storeh_pd(double *__dp, __m128d __a) 6136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_storeh_pd_struct { 6156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u; 6166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 6176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((struct __mm_storeh_pd_struct*)__dp)->__u = __a[1]; 6186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 6216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_storel_pd(double *__dp, __m128d __a) 6226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_storeh_pd_struct { 6246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker double __u; 6256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 6266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((struct __mm_storeh_pd_struct*)__dp)->__u = __a[0]; 6276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_add_epi8(__m128i __a, __m128i __b) 6316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v16qi)__a + (__v16qi)__b); 6336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_add_epi16(__m128i __a, __m128i __b) 6376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v8hi)__a + (__v8hi)__b); 6396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_add_epi32(__m128i __a, __m128i __b) 6436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v4si)__a + (__v4si)__b); 6456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m64 __DEFAULT_FN_ATTRS 6486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_add_si64(__m64 __a, __m64 __b) 6496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m64)__builtin_ia32_paddq(__a, __b); 6516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_add_epi64(__m128i __a, __m128i __b) 6556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a + __b; 6576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_adds_epi8(__m128i __a, __m128i __b) 6616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_paddsb128((__v16qi)__a, (__v16qi)__b); 6636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_adds_epi16(__m128i __a, __m128i __b) 6676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_paddsw128((__v8hi)__a, (__v8hi)__b); 6696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_adds_epu8(__m128i __a, __m128i __b) 6736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_paddusb128((__v16qi)__a, (__v16qi)__b); 6756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_adds_epu16(__m128i __a, __m128i __b) 6796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_paddusw128((__v8hi)__a, (__v8hi)__b); 6816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_avg_epu8(__m128i __a, __m128i __b) 6856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pavgb128((__v16qi)__a, (__v16qi)__b); 6876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_avg_epu16(__m128i __a, __m128i __b) 6916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pavgw128((__v8hi)__a, (__v8hi)__b); 6936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 6946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 6956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 6966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_madd_epi16(__m128i __a, __m128i __b) 6976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 6986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pmaddwd128((__v8hi)__a, (__v8hi)__b); 6996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_max_epi16(__m128i __a, __m128i __b) 7036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pmaxsw128((__v8hi)__a, (__v8hi)__b); 7056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_max_epu8(__m128i __a, __m128i __b) 7096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pmaxub128((__v16qi)__a, (__v16qi)__b); 7116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_min_epi16(__m128i __a, __m128i __b) 7156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pminsw128((__v8hi)__a, (__v8hi)__b); 7176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_min_epu8(__m128i __a, __m128i __b) 7216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pminub128((__v16qi)__a, (__v16qi)__b); 7236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_mulhi_epi16(__m128i __a, __m128i __b) 7276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pmulhw128((__v8hi)__a, (__v8hi)__b); 7296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_mulhi_epu16(__m128i __a, __m128i __b) 7336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pmulhuw128((__v8hi)__a, (__v8hi)__b); 7356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_mullo_epi16(__m128i __a, __m128i __b) 7396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v8hi)__a * (__v8hi)__b); 7416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m64 __DEFAULT_FN_ATTRS 7446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_mul_su32(__m64 __a, __m64 __b) 7456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_pmuludq((__v2si)__a, (__v2si)__b); 7476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_mul_epu32(__m128i __a, __m128i __b) 7516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_pmuludq128((__v4si)__a, (__v4si)__b); 7536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sad_epu8(__m128i __a, __m128i __b) 7576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_psadbw128((__v16qi)__a, (__v16qi)__b); 7596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sub_epi8(__m128i __a, __m128i __b) 7636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v16qi)__a - (__v16qi)__b); 7656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sub_epi16(__m128i __a, __m128i __b) 7696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v8hi)__a - (__v8hi)__b); 7716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sub_epi32(__m128i __a, __m128i __b) 7756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v4si)__a - (__v4si)__b); 7776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m64 __DEFAULT_FN_ATTRS 7806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sub_si64(__m64 __a, __m64 __b) 7816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m64)__builtin_ia32_psubq(__a, __b); 7836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sub_epi64(__m128i __a, __m128i __b) 7876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a - __b; 7896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_subs_epi8(__m128i __a, __m128i __b) 7936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 7946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psubsb128((__v16qi)__a, (__v16qi)__b); 7956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 7966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 7976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 7986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_subs_epi16(__m128i __a, __m128i __b) 7996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psubsw128((__v8hi)__a, (__v8hi)__b); 8016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_subs_epu8(__m128i __a, __m128i __b) 8056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psubusb128((__v16qi)__a, (__v16qi)__b); 8076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_subs_epu16(__m128i __a, __m128i __b) 8116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psubusw128((__v8hi)__a, (__v8hi)__b); 8136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_and_si128(__m128i __a, __m128i __b) 8176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a & __b; 8196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_andnot_si128(__m128i __a, __m128i __b) 8236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return ~__a & __b; 8256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_or_si128(__m128i __a, __m128i __b) 8296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a | __b; 8316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_xor_si128(__m128i __a, __m128i __b) 8356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a ^ __b; 8376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _mm_slli_si128(a, imm) __extension__ ({ \ 8406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__m128i)__builtin_shufflevector((__v16qi)_mm_setzero_si128(), \ 8416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__v16qi)(__m128i)(a), \ 8426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 16 - ((imm)&0xF), \ 8436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 17 - ((imm)&0xF), \ 8446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 18 - ((imm)&0xF), \ 8456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 19 - ((imm)&0xF), \ 8466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 20 - ((imm)&0xF), \ 8476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 21 - ((imm)&0xF), \ 8486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 22 - ((imm)&0xF), \ 8496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 23 - ((imm)&0xF), \ 8506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 24 - ((imm)&0xF), \ 8516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 25 - ((imm)&0xF), \ 8526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 26 - ((imm)&0xF), \ 8536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 27 - ((imm)&0xF), \ 8546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 28 - ((imm)&0xF), \ 8556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 29 - ((imm)&0xF), \ 8566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 30 - ((imm)&0xF), \ 8576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 0 : 31 - ((imm)&0xF)); }) 8586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _mm_bslli_si128(a, imm) \ 8606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker _mm_slli_si128((a), (imm)) 8616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_slli_epi16(__m128i __a, int __count) 8646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psllwi128((__v8hi)__a, __count); 8666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sll_epi16(__m128i __a, __m128i __count) 8706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psllw128((__v8hi)__a, (__v8hi)__count); 8726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_slli_epi32(__m128i __a, int __count) 8766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pslldi128((__v4si)__a, __count); 8786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sll_epi32(__m128i __a, __m128i __count) 8826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_pslld128((__v4si)__a, (__v4si)__count); 8846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_slli_epi64(__m128i __a, int __count) 8886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_psllqi128(__a, __count); 8906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sll_epi64(__m128i __a, __m128i __count) 8946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 8956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_psllq128(__a, __count); 8966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 8976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 8986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 8996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_srai_epi16(__m128i __a, int __count) 9006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psrawi128((__v8hi)__a, __count); 9026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sra_epi16(__m128i __a, __m128i __count) 9066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psraw128((__v8hi)__a, (__v8hi)__count); 9086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_srai_epi32(__m128i __a, int __count) 9126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psradi128((__v4si)__a, __count); 9146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_sra_epi32(__m128i __a, __m128i __count) 9186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psrad128((__v4si)__a, (__v4si)__count); 9206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _mm_srli_si128(a, imm) __extension__ ({ \ 9236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__m128i)__builtin_shufflevector((__v16qi)(__m128i)(a), \ 9246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__v16qi)_mm_setzero_si128(), \ 9256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 0, \ 9266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 1, \ 9276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 2, \ 9286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 3, \ 9296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 4, \ 9306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 5, \ 9316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 6, \ 9326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 7, \ 9336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 8, \ 9346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 9, \ 9356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 10, \ 9366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 11, \ 9376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 12, \ 9386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 13, \ 9396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 14, \ 9406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm)&0xF0) ? 16 : ((imm)&0xF) + 15); }) 9416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _mm_bsrli_si128(a, imm) \ 9436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker _mm_srli_si128((a), (imm)) 9446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_srli_epi16(__m128i __a, int __count) 9476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psrlwi128((__v8hi)__a, __count); 9496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_srl_epi16(__m128i __a, __m128i __count) 9536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psrlw128((__v8hi)__a, (__v8hi)__count); 9556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_srli_epi32(__m128i __a, int __count) 9596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psrldi128((__v4si)__a, __count); 9616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_srl_epi32(__m128i __a, __m128i __count) 9656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_psrld128((__v4si)__a, (__v4si)__count); 9676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_srli_epi64(__m128i __a, int __count) 9716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_psrlqi128(__a, __count); 9736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_srl_epi64(__m128i __a, __m128i __count) 9776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_psrlq128(__a, __count); 9796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpeq_epi8(__m128i __a, __m128i __b) 9836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v16qi)__a == (__v16qi)__b); 9856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpeq_epi16(__m128i __a, __m128i __b) 9896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v8hi)__a == (__v8hi)__b); 9916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 9946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpeq_epi32(__m128i __a, __m128i __b) 9956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 9966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v4si)__a == (__v4si)__b); 9976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 9986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 9996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpgt_epi8(__m128i __a, __m128i __b) 10016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker /* This function always performs a signed comparison, but __v16qi is a char 10036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker which may be signed or unsigned, so use __v16qs. */ 10046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v16qs)__a > (__v16qs)__b); 10056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpgt_epi16(__m128i __a, __m128i __b) 10096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v8hi)__a > (__v8hi)__b); 10116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmpgt_epi32(__m128i __a, __m128i __b) 10156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)((__v4si)__a > (__v4si)__b); 10176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmplt_epi8(__m128i __a, __m128i __b) 10216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return _mm_cmpgt_epi8(__b, __a); 10236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmplt_epi16(__m128i __a, __m128i __b) 10276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return _mm_cmpgt_epi16(__b, __a); 10296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cmplt_epi32(__m128i __a, __m128i __b) 10336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return _mm_cmpgt_epi32(__b, __a); 10356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#ifdef __x86_64__ 10386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 10396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsi64_sd(__m128d __a, long long __b) 10406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __a[0] = __b; 10426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a; 10436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS 10466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsd_si64(__m128d __a) 10476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_cvtsd2si64(__a); 10496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS 10526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvttsd_si64(__m128d __a) 10536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a[0]; 10556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#endif 10576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS 10596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtepi32_ps(__m128i __a) 10606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_cvtdq2ps((__v4si)__a); 10626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtps_epi32(__m128 __a) 10666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_cvtps2dq(__a); 10686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvttps_epi32(__m128 __a) 10726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_cvttps2dq(__a); 10746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsi32_si128(int __a) 10786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v4si){ __a, 0, 0, 0 }; 10806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#ifdef __x86_64__ 10836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 10846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsi64_si128(long long __a) 10856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i){ __a, 0 }; 10876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#endif 10896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 10916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsi128_si32(__m128i __a) 10926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 10936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __v4si __b = (__v4si)__a; 10946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __b[0]; 10956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 10966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 10976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#ifdef __x86_64__ 10986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS 10996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_cvtsi128_si64(__m128i __a) 11006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __a[0]; 11026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#endif 11046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_load_si128(__m128i const *__p) 11076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return *__p; 11096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_loadu_si128(__m128i const *__p) 11136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __loadu_si128 { 11156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __m128i __v; 11166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 11176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return ((struct __loadu_si128*)__p)->__v; 11186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_loadl_epi64(__m128i const *__p) 11226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_loadl_epi64_struct { 11246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker long long __u; 11256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 11266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i) { ((struct __mm_loadl_epi64_struct*)__p)->__u, 0}; 11276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_undefined_si128() 11316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_undef128(); 11336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set_epi64x(long long __q1, long long __q0) 11376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i){ __q0, __q1 }; 11396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set_epi64(__m64 __q1, __m64 __q0) 11436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i){ (long long)__q0, (long long)__q1 }; 11456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set_epi32(int __i3, int __i2, int __i1, int __i0) 11496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v4si){ __i0, __i1, __i2, __i3}; 11516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set_epi16(short __w7, short __w6, short __w5, short __w4, short __w3, short __w2, short __w1, short __w0) 11556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v8hi){ __w0, __w1, __w2, __w3, __w4, __w5, __w6, __w7 }; 11576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set_epi8(char __b15, char __b14, char __b13, char __b12, char __b11, char __b10, char __b9, char __b8, char __b7, char __b6, char __b5, char __b4, char __b3, char __b2, char __b1, char __b0) 11616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v16qi){ __b0, __b1, __b2, __b3, __b4, __b5, __b6, __b7, __b8, __b9, __b10, __b11, __b12, __b13, __b14, __b15 }; 11636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set1_epi64x(long long __q) 11676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i){ __q, __q }; 11696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set1_epi64(__m64 __q) 11736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i){ (long long)__q, (long long)__q }; 11756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set1_epi32(int __i) 11796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v4si){ __i, __i, __i, __i }; 11816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set1_epi16(short __w) 11856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v8hi){ __w, __w, __w, __w, __w, __w, __w, __w }; 11876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_set1_epi8(char __b) 11916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v16qi){ __b, __b, __b, __b, __b, __b, __b, __b, __b, __b, __b, __b, __b, __b, __b, __b }; 11936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 11946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 11956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 11966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_setr_epi64(__m64 __q0, __m64 __q1) 11976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 11986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i){ (long long)__q0, (long long)__q1 }; 11996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 12026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_setr_epi32(int __i0, int __i1, int __i2, int __i3) 12036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v4si){ __i0, __i1, __i2, __i3}; 12056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 12086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_setr_epi16(short __w0, short __w1, short __w2, short __w3, short __w4, short __w5, short __w6, short __w7) 12096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v8hi){ __w0, __w1, __w2, __w3, __w4, __w5, __w6, __w7 }; 12116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 12146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_setr_epi8(char __b0, char __b1, char __b2, char __b3, char __b4, char __b5, char __b6, char __b7, char __b8, char __b9, char __b10, char __b11, char __b12, char __b13, char __b14, char __b15) 12156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)(__v16qi){ __b0, __b1, __b2, __b3, __b4, __b5, __b6, __b7, __b8, __b9, __b10, __b11, __b12, __b13, __b14, __b15 }; 12176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 12206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_setzero_si128(void) 12216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i){ 0LL, 0LL }; 12236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_store_si128(__m128i *__p, __m128i __b) 12276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker *__p = __b; 12296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_storeu_si128(__m128i *__p, __m128i __b) 12336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_storedqu((char *)__p, (__v16qi)__b); 12356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_maskmoveu_si128(__m128i __d, __m128i __n, char *__p) 12396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_maskmovdqu((__v16qi)__d, (__v16qi)__n, __p); 12416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_storel_epi64(__m128i *__p, __m128i __a) 12456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker struct __mm_storel_epi64_struct { 12476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker long long __u; 12486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker } __attribute__((__packed__, __may_alias__)); 12496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((struct __mm_storel_epi64_struct*)__p)->__u = __a[0]; 12506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_stream_pd(double *__p, __m128d __a) 12546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_movntpd(__p, __a); 12566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_stream_si128(__m128i *__p, __m128i __a) 12606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_movntdq(__p, __a); 12626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_stream_si32(int *__p, int __a) 12666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_movnti(__p, __a); 12686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#ifdef __x86_64__ 12716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_stream_si64(long long *__p, long long __a) 12736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_movnti64(__p, __a); 12756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#endif 12776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_clflush(void const *__p) 12806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_clflush(__p); 12826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_lfence(void) 12866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_lfence(); 12886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 12916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_mfence(void) 12926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_mfence(); 12946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 12956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 12966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 12976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_packs_epi16(__m128i __a, __m128i __b) 12986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 12996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_packsswb128((__v8hi)__a, (__v8hi)__b); 13006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_packs_epi32(__m128i __a, __m128i __b) 13046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_packssdw128((__v4si)__a, (__v4si)__b); 13066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_packus_epi16(__m128i __a, __m128i __b) 13106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_ia32_packuswb128((__v8hi)__a, (__v8hi)__b); 13126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 13156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_extract_epi16(__m128i __a, int __imm) 13166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __v8hi __b = (__v8hi)__a; 13186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (unsigned short)__b[__imm & 7]; 13196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_insert_epi16(__m128i __a, int __b, int __imm) 13236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __v8hi __c = (__v8hi)__a; 13256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __c[__imm & 7] = __b; 13266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__c; 13276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 13306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_movemask_epi8(__m128i __a) 13316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_pmovmskb128((__v16qi)__a); 13336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _mm_shuffle_epi32(a, imm) __extension__ ({ \ 13366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__m128i)__builtin_shufflevector((__v4si)(__m128i)(a), \ 13376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__v4si)_mm_setzero_si128(), \ 13386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (imm) & 0x3, ((imm) & 0xc) >> 2, \ 13396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm) & 0x30) >> 4, ((imm) & 0xc0) >> 6); }) 13406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _mm_shufflelo_epi16(a, imm) __extension__ ({ \ 13426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__m128i)__builtin_shufflevector((__v8hi)(__m128i)(a), \ 13436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__v8hi)_mm_setzero_si128(), \ 13446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (imm) & 0x3, ((imm) & 0xc) >> 2, \ 13456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker ((imm) & 0x30) >> 4, ((imm) & 0xc0) >> 6, \ 13466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4, 5, 6, 7); }) 13476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _mm_shufflehi_epi16(a, imm) __extension__ ({ \ 13496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__m128i)__builtin_shufflevector((__v8hi)(__m128i)(a), \ 13506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__v8hi)_mm_setzero_si128(), \ 13516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 0, 1, 2, 3, \ 13526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4 + (((imm) & 0x03) >> 0), \ 13536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4 + (((imm) & 0x0c) >> 2), \ 13546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4 + (((imm) & 0x30) >> 4), \ 13556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 4 + (((imm) & 0xc0) >> 6)); }) 13566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpackhi_epi8(__m128i __a, __m128i __b) 13596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_shufflevector((__v16qi)__a, (__v16qi)__b, 8, 16+8, 9, 16+9, 10, 16+10, 11, 16+11, 12, 16+12, 13, 16+13, 14, 16+14, 15, 16+15); 13616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpackhi_epi16(__m128i __a, __m128i __b) 13656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_shufflevector((__v8hi)__a, (__v8hi)__b, 4, 8+4, 5, 8+5, 6, 8+6, 7, 8+7); 13676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpackhi_epi32(__m128i __a, __m128i __b) 13716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_shufflevector((__v4si)__a, (__v4si)__b, 2, 4+2, 3, 4+3); 13736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpackhi_epi64(__m128i __a, __m128i __b) 13776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_shufflevector(__a, __b, 1, 2+1); 13796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpacklo_epi8(__m128i __a, __m128i __b) 13836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_shufflevector((__v16qi)__a, (__v16qi)__b, 0, 16+0, 1, 16+1, 2, 16+2, 3, 16+3, 4, 16+4, 5, 16+5, 6, 16+6, 7, 16+7); 13856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpacklo_epi16(__m128i __a, __m128i __b) 13896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_shufflevector((__v8hi)__a, (__v8hi)__b, 0, 8+0, 1, 8+1, 2, 8+2, 3, 8+3); 13916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13926bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13936bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 13946bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpacklo_epi32(__m128i __a, __m128i __b) 13956bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 13966bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_shufflevector((__v4si)__a, (__v4si)__b, 0, 4+0, 1, 4+1); 13976bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 13986bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 13996bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 14006bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpacklo_epi64(__m128i __a, __m128i __b) 14016bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14026bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__builtin_shufflevector(__a, __b, 0, 2+0); 14036bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14046bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14056bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m64 __DEFAULT_FN_ATTRS 14066bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_movepi64_pi64(__m128i __a) 14076bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14086bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m64)__a[0]; 14096bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14106bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14116bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 14126bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_movpi64_epi64(__m64 __a) 14136bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14146bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i){ (long long)__a, 0 }; 14156bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14166bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14176bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 14186bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_move_epi64(__m128i __a) 14196bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14206bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_shufflevector(__a, (__m128i){ 0 }, 0, 2); 14216bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14226bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14236bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 14246bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpackhi_pd(__m128d __a, __m128d __b) 14256bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14266bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_shufflevector(__a, __b, 1, 2+1); 14276bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14286bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14296bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 14306bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_unpacklo_pd(__m128d __a, __m128d __b) 14316bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14326bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_shufflevector(__a, __b, 0, 2+0); 14336bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14346bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14356bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS 14366bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_movemask_pd(__m128d __a) 14376bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14386bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return __builtin_ia32_movmskpd(__a); 14396bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14406bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14416bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _mm_shuffle_pd(a, b, i) __extension__ ({ \ 14426bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (__m128d)__builtin_shufflevector((__v2df)(__m128d)(a), (__v2df)(__m128d)(b), \ 14436bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker (i) & 1, (((i) & 2) >> 1) + 2); }) 14446bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14456bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS 14466bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_castpd_ps(__m128d __a) 14476bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14486bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128)__a; 14496bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14506bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14516bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 14526bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_castpd_si128(__m128d __a) 14536bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14546bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__a; 14556bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14566bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14576bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 14586bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_castps_pd(__m128 __a) 14596bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14606bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__a; 14616bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14626bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14636bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS 14646bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_castps_si128(__m128 __a) 14656bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14666bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128i)__a; 14676bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14686bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14696bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS 14706bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_castsi128_ps(__m128i __a) 14716bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14726bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128)__a; 14736bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14746bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14756bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS 14766bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_castsi128_pd(__m128i __a) 14776bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14786bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker return (__m128d)__a; 14796bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14806bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14816bdbd720989797e8a53237ef3ef213c4114f869gitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS 14826bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker_mm_pause(void) 14836bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker{ 14846bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker __builtin_ia32_pause(); 14856bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker} 14866bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14876bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#undef __DEFAULT_FN_ATTRS 14886bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14896bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#define _MM_SHUFFLE2(x, y) (((x) << 1) | (y)) 14906bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker 14916bdbd720989797e8a53237ef3ef213c4114f869gitbuildkicker#endif /* __EMMINTRIN_H */ 1492