11188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/*===---- avx512fintrin.h - AVX512F intrinsics -----------------------------===
21188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker *
31188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * Permission is hereby granted, free of charge, to any person obtaining a copy
41188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * of this software and associated documentation files (the "Software"), to deal
51188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * in the Software without restriction, including without limitation the rights
61188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
71188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * copies of the Software, and to permit persons to whom the Software is
81188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * furnished to do so, subject to the following conditions:
91188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker *
101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * The above copyright notice and this permission notice shall be included in
111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * all copies or substantial portions of the Software.
121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker *
131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker * THE SOFTWARE.
201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker *
211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker *===-----------------------------------------------------------------------===
221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker */
231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifndef __IMMINTRIN_H
241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#error "Never use <avx512fintrin.h> directly; include <immintrin.h> instead."
251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifndef __AVX512FINTRIN_H
281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define __AVX512FINTRIN_H
291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef char __v64qi __attribute__((__vector_size__(64)));
311188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef short __v32hi __attribute__((__vector_size__(64)));
321188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef double __v8df __attribute__((__vector_size__(64)));
331188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef float __v16sf __attribute__((__vector_size__(64)));
341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef long long __v8di __attribute__((__vector_size__(64)));
351188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef int __v16si __attribute__((__vector_size__(64)));
361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Unsigned types */
381188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef unsigned char __v64qu __attribute__((__vector_size__(64)));
391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef unsigned short __v32hu __attribute__((__vector_size__(64)));
401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef unsigned long long __v8du __attribute__((__vector_size__(64)));
411188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef unsigned int __v16su __attribute__((__vector_size__(64)));
421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef float __m512 __attribute__((__vector_size__(64)));
441188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef double __m512d __attribute__((__vector_size__(64)));
451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef long long __m512i __attribute__((__vector_size__(64)));
461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef unsigned char __mmask8;
481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef unsigned short __mmask16;
491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Rounding mode macros.  */
511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _MM_FROUND_TO_NEAREST_INT   0x00
521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _MM_FROUND_TO_NEG_INF       0x01
531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _MM_FROUND_TO_POS_INF       0x02
541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _MM_FROUND_TO_ZERO          0x03
551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _MM_FROUND_CUR_DIRECTION    0x04
561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Constants for integer comparison predicates */
581188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef enum {
591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _MM_CMPINT_EQ,      /* Equal */
601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _MM_CMPINT_LT,      /* Less than */
611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _MM_CMPINT_LE,      /* Less than or Equal */
621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _MM_CMPINT_UNUSED,
631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _MM_CMPINT_NE,      /* Not Equal */
641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _MM_CMPINT_NLT,     /* Not Less than */
651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _MM_CMPINT_GE   _MM_CMPINT_NLT  /* Greater than or Equal */
661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _MM_CMPINT_NLE      /* Not Less than or Equal */
671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _MM_CMPINT_GT   _MM_CMPINT_NLE  /* Greater than */
681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} _MM_CMPINT_ENUM;
691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef enum
711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_AAAA = 0x00, _MM_PERM_AAAB = 0x01, _MM_PERM_AAAC = 0x02,
731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_AAAD = 0x03, _MM_PERM_AABA = 0x04, _MM_PERM_AABB = 0x05,
741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_AABC = 0x06, _MM_PERM_AABD = 0x07, _MM_PERM_AACA = 0x08,
751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_AACB = 0x09, _MM_PERM_AACC = 0x0A, _MM_PERM_AACD = 0x0B,
761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_AADA = 0x0C, _MM_PERM_AADB = 0x0D, _MM_PERM_AADC = 0x0E,
771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_AADD = 0x0F, _MM_PERM_ABAA = 0x10, _MM_PERM_ABAB = 0x11,
781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ABAC = 0x12, _MM_PERM_ABAD = 0x13, _MM_PERM_ABBA = 0x14,
791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ABBB = 0x15, _MM_PERM_ABBC = 0x16, _MM_PERM_ABBD = 0x17,
801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ABCA = 0x18, _MM_PERM_ABCB = 0x19, _MM_PERM_ABCC = 0x1A,
811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ABCD = 0x1B, _MM_PERM_ABDA = 0x1C, _MM_PERM_ABDB = 0x1D,
821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ABDC = 0x1E, _MM_PERM_ABDD = 0x1F, _MM_PERM_ACAA = 0x20,
831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ACAB = 0x21, _MM_PERM_ACAC = 0x22, _MM_PERM_ACAD = 0x23,
841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ACBA = 0x24, _MM_PERM_ACBB = 0x25, _MM_PERM_ACBC = 0x26,
851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ACBD = 0x27, _MM_PERM_ACCA = 0x28, _MM_PERM_ACCB = 0x29,
861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ACCC = 0x2A, _MM_PERM_ACCD = 0x2B, _MM_PERM_ACDA = 0x2C,
871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ACDB = 0x2D, _MM_PERM_ACDC = 0x2E, _MM_PERM_ACDD = 0x2F,
881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ADAA = 0x30, _MM_PERM_ADAB = 0x31, _MM_PERM_ADAC = 0x32,
891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ADAD = 0x33, _MM_PERM_ADBA = 0x34, _MM_PERM_ADBB = 0x35,
901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ADBC = 0x36, _MM_PERM_ADBD = 0x37, _MM_PERM_ADCA = 0x38,
911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ADCB = 0x39, _MM_PERM_ADCC = 0x3A, _MM_PERM_ADCD = 0x3B,
921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ADDA = 0x3C, _MM_PERM_ADDB = 0x3D, _MM_PERM_ADDC = 0x3E,
931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_ADDD = 0x3F, _MM_PERM_BAAA = 0x40, _MM_PERM_BAAB = 0x41,
941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BAAC = 0x42, _MM_PERM_BAAD = 0x43, _MM_PERM_BABA = 0x44,
951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BABB = 0x45, _MM_PERM_BABC = 0x46, _MM_PERM_BABD = 0x47,
961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BACA = 0x48, _MM_PERM_BACB = 0x49, _MM_PERM_BACC = 0x4A,
971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BACD = 0x4B, _MM_PERM_BADA = 0x4C, _MM_PERM_BADB = 0x4D,
981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BADC = 0x4E, _MM_PERM_BADD = 0x4F, _MM_PERM_BBAA = 0x50,
991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BBAB = 0x51, _MM_PERM_BBAC = 0x52, _MM_PERM_BBAD = 0x53,
1001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BBBA = 0x54, _MM_PERM_BBBB = 0x55, _MM_PERM_BBBC = 0x56,
1011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BBBD = 0x57, _MM_PERM_BBCA = 0x58, _MM_PERM_BBCB = 0x59,
1021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BBCC = 0x5A, _MM_PERM_BBCD = 0x5B, _MM_PERM_BBDA = 0x5C,
1031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BBDB = 0x5D, _MM_PERM_BBDC = 0x5E, _MM_PERM_BBDD = 0x5F,
1041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BCAA = 0x60, _MM_PERM_BCAB = 0x61, _MM_PERM_BCAC = 0x62,
1051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BCAD = 0x63, _MM_PERM_BCBA = 0x64, _MM_PERM_BCBB = 0x65,
1061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BCBC = 0x66, _MM_PERM_BCBD = 0x67, _MM_PERM_BCCA = 0x68,
1071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BCCB = 0x69, _MM_PERM_BCCC = 0x6A, _MM_PERM_BCCD = 0x6B,
1081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BCDA = 0x6C, _MM_PERM_BCDB = 0x6D, _MM_PERM_BCDC = 0x6E,
1091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BCDD = 0x6F, _MM_PERM_BDAA = 0x70, _MM_PERM_BDAB = 0x71,
1101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BDAC = 0x72, _MM_PERM_BDAD = 0x73, _MM_PERM_BDBA = 0x74,
1111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BDBB = 0x75, _MM_PERM_BDBC = 0x76, _MM_PERM_BDBD = 0x77,
1121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BDCA = 0x78, _MM_PERM_BDCB = 0x79, _MM_PERM_BDCC = 0x7A,
1131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BDCD = 0x7B, _MM_PERM_BDDA = 0x7C, _MM_PERM_BDDB = 0x7D,
1141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_BDDC = 0x7E, _MM_PERM_BDDD = 0x7F, _MM_PERM_CAAA = 0x80,
1151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CAAB = 0x81, _MM_PERM_CAAC = 0x82, _MM_PERM_CAAD = 0x83,
1161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CABA = 0x84, _MM_PERM_CABB = 0x85, _MM_PERM_CABC = 0x86,
1171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CABD = 0x87, _MM_PERM_CACA = 0x88, _MM_PERM_CACB = 0x89,
1181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CACC = 0x8A, _MM_PERM_CACD = 0x8B, _MM_PERM_CADA = 0x8C,
1191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CADB = 0x8D, _MM_PERM_CADC = 0x8E, _MM_PERM_CADD = 0x8F,
1201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CBAA = 0x90, _MM_PERM_CBAB = 0x91, _MM_PERM_CBAC = 0x92,
1211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CBAD = 0x93, _MM_PERM_CBBA = 0x94, _MM_PERM_CBBB = 0x95,
1221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CBBC = 0x96, _MM_PERM_CBBD = 0x97, _MM_PERM_CBCA = 0x98,
1231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CBCB = 0x99, _MM_PERM_CBCC = 0x9A, _MM_PERM_CBCD = 0x9B,
1241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CBDA = 0x9C, _MM_PERM_CBDB = 0x9D, _MM_PERM_CBDC = 0x9E,
1251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CBDD = 0x9F, _MM_PERM_CCAA = 0xA0, _MM_PERM_CCAB = 0xA1,
1261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CCAC = 0xA2, _MM_PERM_CCAD = 0xA3, _MM_PERM_CCBA = 0xA4,
1271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CCBB = 0xA5, _MM_PERM_CCBC = 0xA6, _MM_PERM_CCBD = 0xA7,
1281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CCCA = 0xA8, _MM_PERM_CCCB = 0xA9, _MM_PERM_CCCC = 0xAA,
1291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CCCD = 0xAB, _MM_PERM_CCDA = 0xAC, _MM_PERM_CCDB = 0xAD,
1301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CCDC = 0xAE, _MM_PERM_CCDD = 0xAF, _MM_PERM_CDAA = 0xB0,
1311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CDAB = 0xB1, _MM_PERM_CDAC = 0xB2, _MM_PERM_CDAD = 0xB3,
1321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CDBA = 0xB4, _MM_PERM_CDBB = 0xB5, _MM_PERM_CDBC = 0xB6,
1331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CDBD = 0xB7, _MM_PERM_CDCA = 0xB8, _MM_PERM_CDCB = 0xB9,
1341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CDCC = 0xBA, _MM_PERM_CDCD = 0xBB, _MM_PERM_CDDA = 0xBC,
1351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_CDDB = 0xBD, _MM_PERM_CDDC = 0xBE, _MM_PERM_CDDD = 0xBF,
1361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DAAA = 0xC0, _MM_PERM_DAAB = 0xC1, _MM_PERM_DAAC = 0xC2,
1371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DAAD = 0xC3, _MM_PERM_DABA = 0xC4, _MM_PERM_DABB = 0xC5,
1381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DABC = 0xC6, _MM_PERM_DABD = 0xC7, _MM_PERM_DACA = 0xC8,
1391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DACB = 0xC9, _MM_PERM_DACC = 0xCA, _MM_PERM_DACD = 0xCB,
1401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DADA = 0xCC, _MM_PERM_DADB = 0xCD, _MM_PERM_DADC = 0xCE,
1411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DADD = 0xCF, _MM_PERM_DBAA = 0xD0, _MM_PERM_DBAB = 0xD1,
1421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DBAC = 0xD2, _MM_PERM_DBAD = 0xD3, _MM_PERM_DBBA = 0xD4,
1431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DBBB = 0xD5, _MM_PERM_DBBC = 0xD6, _MM_PERM_DBBD = 0xD7,
1441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DBCA = 0xD8, _MM_PERM_DBCB = 0xD9, _MM_PERM_DBCC = 0xDA,
1451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DBCD = 0xDB, _MM_PERM_DBDA = 0xDC, _MM_PERM_DBDB = 0xDD,
1461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DBDC = 0xDE, _MM_PERM_DBDD = 0xDF, _MM_PERM_DCAA = 0xE0,
1471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DCAB = 0xE1, _MM_PERM_DCAC = 0xE2, _MM_PERM_DCAD = 0xE3,
1481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DCBA = 0xE4, _MM_PERM_DCBB = 0xE5, _MM_PERM_DCBC = 0xE6,
1491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DCBD = 0xE7, _MM_PERM_DCCA = 0xE8, _MM_PERM_DCCB = 0xE9,
1501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DCCC = 0xEA, _MM_PERM_DCCD = 0xEB, _MM_PERM_DCDA = 0xEC,
1511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DCDB = 0xED, _MM_PERM_DCDC = 0xEE, _MM_PERM_DCDD = 0xEF,
1521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DDAA = 0xF0, _MM_PERM_DDAB = 0xF1, _MM_PERM_DDAC = 0xF2,
1531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DDAD = 0xF3, _MM_PERM_DDBA = 0xF4, _MM_PERM_DDBB = 0xF5,
1541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DDBC = 0xF6, _MM_PERM_DDBD = 0xF7, _MM_PERM_DDCA = 0xF8,
1551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DDCB = 0xF9, _MM_PERM_DDCC = 0xFA, _MM_PERM_DDCD = 0xFB,
1561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DDDA = 0xFC, _MM_PERM_DDDB = 0xFD, _MM_PERM_DDDC = 0xFE,
1571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_PERM_DDDD = 0xFF
1581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} _MM_PERM_ENUM;
1591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
1601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef enum
1611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
1621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_MANT_NORM_1_2,    /* interval [1, 2)      */
1631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_MANT_NORM_p5_2,   /* interval [0.5, 2)    */
1641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_MANT_NORM_p5_1,   /* interval [0.5, 1)    */
1651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_MANT_NORM_p75_1p5   /* interval [0.75, 1.5) */
1661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} _MM_MANTISSA_NORM_ENUM;
1671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
1681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickertypedef enum
1691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
1701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_MANT_SIGN_src,    /* sign = sign(SRC)     */
1711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_MANT_SIGN_zero,   /* sign = 0             */
1721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _MM_MANT_SIGN_nan   /* DEST = NaN if sign(SRC) = 1 */
1731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker} _MM_MANTISSA_SIGN_ENUM;
1741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
1751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Define the default attributes for the functions in this file. */
1761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512f")))
1771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
1781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Create vectors with repeated elements */
1791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
1801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline __m512i __DEFAULT_FN_ATTRS
1811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_setzero_si512(void)
1821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
1831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)(__v8di){ 0, 0, 0, 0, 0, 0, 0, 0 };
1841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
1851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
1861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setzero_epi32 _mm512_setzero_si512
1871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
1881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
1891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_undefined_pd(void)
1901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
1911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_undef512();
1921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
1931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
1941188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
1951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_undefined(void)
1961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
1971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_undef512();
1981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
1991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
2011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_undefined_ps(void)
2021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_undef512();
2041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
2071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_undefined_epi32(void)
2081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_undef512();
2101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
2131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_broadcastd_epi32 (__m128i __A)
2141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_shufflevector((__v4si) __A,
2161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4si)_mm_undefined_si128(),
2171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
2181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
2211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_broadcastd_epi32 (__m512i __O, __mmask16 __M, __m128i __A)
2221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512(__M,
2241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si) _mm512_broadcastd_epi32(__A),
2251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si) __O);
2261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
2291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_broadcastd_epi32 (__mmask16 __M, __m128i __A)
2301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512(__M,
2321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si) _mm512_broadcastd_epi32(__A),
2331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si) _mm512_setzero_si512());
2341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
2371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_broadcastq_epi64 (__m128i __A)
2381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_shufflevector((__v2di) __A,
2401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2di) _mm_undefined_si128(),
2411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0, 0, 0, 0, 0, 0, 0, 0);
2421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2441188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
2451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_broadcastq_epi64 (__m512i __O, __mmask8 __M, __m128i __A)
2461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512(__M,
2481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di) _mm512_broadcastq_epi64(__A),
2491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di) __O);
2501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
2541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_broadcastq_epi64 (__mmask8 __M, __m128i __A)
2551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512(__M,
2571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di) _mm512_broadcastq_epi64(__A),
2581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di) _mm512_setzero_si512());
2591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2611188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
2621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_set1_epi32(__mmask16 __M, int __A)
2631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pbroadcastd512_gpr_mask (__A,
2651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si)
2661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_si512 (),
2671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
2681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
2711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_set1_epi64(__mmask8 __M, long long __A)
2721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
2741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pbroadcastq512_gpr_mask (__A,
2751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di)
2761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_si512 (),
2771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
2781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#else
2791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pbroadcastq512_mem_mask (__A,
2801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di)
2811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_si512 (),
2821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
2831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
2841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2861188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
2871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_setzero_ps(void)
2881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512){ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
2901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
2911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
2921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setzero _mm512_setzero_ps
2941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
2951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline __m512d __DEFAULT_FN_ATTRS
2961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_setzero_pd(void)
2971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
2981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d){ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
2991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
3021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set1_ps(float __w)
3031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512){ __w, __w, __w, __w, __w, __w, __w, __w,
3051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   __w, __w, __w, __w, __w, __w, __w, __w  };
3061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
3091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set1_pd(double __w)
3101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d){ __w, __w, __w, __w, __w, __w, __w, __w };
3121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3141188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
3151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set1_epi8(char __w)
3161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)(__v64qi){ __w, __w, __w, __w, __w, __w, __w, __w,
3181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w,
3191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w,
3201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w,
3211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w,
3221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w,
3231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w,
3241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w  };
3251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3271188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
3281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set1_epi16(short __w)
3291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)(__v32hi){ __w, __w, __w, __w, __w, __w, __w, __w,
3311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w,
3321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w,
3331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __w, __w, __w, __w, __w, __w, __w, __w };
3341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
3371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set1_epi32(int __s)
3381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)(__v16si){ __s, __s, __s, __s, __s, __s, __s, __s,
3401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             __s, __s, __s, __s, __s, __s, __s, __s };
3411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
3441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set1_epi64(long long __d)
3451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)(__v8di){ __d, __d, __d, __d, __d, __d, __d, __d };
3471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3491188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
3501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_broadcastss_ps(__m128 __A)
3511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_shufflevector((__v4sf) __A,
3531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)_mm_undefined_ps(),
3541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
3551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
3581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set4_epi32 (int __A, int __B, int __C, int __D)
3591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return  (__m512i)(__v16si)
3611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker   { __D, __C, __B, __A, __D, __C, __B, __A,
3621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker     __D, __C, __B, __A, __D, __C, __B, __A };
3631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
3661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set4_epi64 (long long __A, long long __B, long long __C,
3671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker       long long __D)
3681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return  (__m512i) (__v8di)
3701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker   { __D, __C, __B, __A, __D, __C, __B, __A };
3711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3731188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
3741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set4_pd (double __A, double __B, double __C, double __D)
3751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return  (__m512d)
3771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker   { __D, __C, __B, __A, __D, __C, __B, __A };
3781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
3811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set4_ps (float __A, float __B, float __C, float __D)
3821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
3831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return  (__m512)
3841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker   { __D, __C, __B, __A, __D, __C, __B, __A,
3851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker     __D, __C, __B, __A, __D, __C, __B, __A };
3861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
3871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setr4_epi32(e0,e1,e2,e3)               \
3891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_set4_epi32((e3),(e2),(e1),(e0))
3901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setr4_epi64(e0,e1,e2,e3)               \
3921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_set4_epi64((e3),(e2),(e1),(e0))
3931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setr4_pd(e0,e1,e2,e3)                \
3951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_set4_pd((e3),(e2),(e1),(e0))
3961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
3971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setr4_ps(e0,e1,e2,e3)                \
3981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_set4_ps((e3),(e2),(e1),(e0))
3991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
4011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_broadcastsd_pd(__m128d __A)
4021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_shufflevector((__v2df) __A,
4041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df) _mm_undefined_pd(),
4051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0, 0, 0, 0, 0, 0, 0, 0);
4061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Cast between vector types */
4091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4101188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
4111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castpd256_pd512(__m256d __a)
4121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_shufflevector(__a, __a, 0, 1, 2, 3, -1, -1, -1, -1);
4141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4161188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
4171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castps256_ps512(__m256 __a)
4181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_shufflevector(__a, __a, 0,  1,  2,  3,  4,  5,  6,  7,
4201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          -1, -1, -1, -1, -1, -1, -1, -1);
4211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4231188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m128d __DEFAULT_FN_ATTRS
4241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castpd512_pd128(__m512d __a)
4251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_shufflevector(__a, __a, 0, 1);
4271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4291188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m256d __DEFAULT_FN_ATTRS
4301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castpd512_pd256 (__m512d __A)
4311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_shufflevector(__A, __A, 0, 1, 2, 3);
4331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4351188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m128 __DEFAULT_FN_ATTRS
4361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castps512_ps128(__m512 __a)
4371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_shufflevector(__a, __a, 0, 1, 2, 3);
4391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4411188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m256 __DEFAULT_FN_ATTRS
4421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castps512_ps256 (__m512 __A)
4431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_shufflevector(__A, __A, 0, 1, 2, 3, 4, 5, 6, 7);
4451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
4481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castpd_ps (__m512d __A)
4491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) (__A);
4511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
4541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castpd_si512 (__m512d __A)
4551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) (__A);
4571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
4601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castpd128_pd512 (__m128d __A)
4611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_shufflevector( __A, __A, 0, 1, -1, -1, -1, -1, -1, -1);
4631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
4661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castps_pd (__m512 __A)
4671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) (__A);
4691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
4721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castps_si512 (__m512 __A)
4731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) (__A);
4751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4771188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
4781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castps128_ps512 (__m128 __A)
4791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    return  __builtin_shufflevector( __A, __A, 0, 1, 2, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1);
4811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
4841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castsi128_si512 (__m128i __A)
4851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker   return  __builtin_shufflevector( __A, __A, 0, 1, -1, -1, -1, -1, -1, -1);
4871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
4901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castsi256_si512 (__m256i __A)
4911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker   return  __builtin_shufflevector( __A, __A, 0, 1, 2, 3, -1, -1, -1, -1);
4931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
4941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
4951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
4961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castsi512_ps (__m512i __A)
4971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
4981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) (__A);
4991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
5021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castsi512_pd (__m512i __A)
5031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) (__A);
5051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5071188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m128i __DEFAULT_FN_ATTRS
5081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castsi512_si128 (__m512i __A)
5091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i)__builtin_shufflevector(__A, __A , 0, 1);
5111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5131188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m256i __DEFAULT_FN_ATTRS
5141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_castsi512_si256 (__m512i __A)
5151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i)__builtin_shufflevector(__A, __A , 0, 1, 2, 3);
5171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Bitwise operators */
5201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_and_epi32(__m512i __a, __m512i __b)
5221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)((__v16su)__a & (__v16su)__b);
5241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5261188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_and_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b)
5281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k,
5301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16si) _mm512_and_epi32(__a, __b),
5311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16si) __src);
5321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_and_epi32(__mmask16 __k, __m512i __a, __m512i __b)
5361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) _mm512_mask_and_epi32(_mm512_setzero_si512 (),
5381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         __k, __a, __b);
5391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5411188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_and_epi64(__m512i __a, __m512i __b)
5431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)((__v8du)__a & (__v8du)__b);
5451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_and_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b)
5491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __k,
5511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8di) _mm512_and_epi64(__a, __b),
5521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8di) __src);
5531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5551188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_and_epi64(__mmask8 __k, __m512i __a, __m512i __b)
5571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) _mm512_mask_and_epi64(_mm512_setzero_si512 (),
5591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         __k, __a, __b);
5601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_andnot_si512 (__m512i __A, __m512i __B)
5641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)(~(__v8du)(__A) & (__v8du)__B);
5661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_andnot_epi32 (__m512i __A, __m512i __B)
5701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)(~(__v16su)(__A) & (__v16su)__B);
5721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_andnot_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
5761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
5781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)_mm512_andnot_epi32(__A, __B),
5791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)__W);
5801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_andnot_epi32(__mmask16 __U, __m512i __A, __m512i __B)
5841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)_mm512_mask_andnot_epi32(_mm512_setzero_si512(),
5861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           __U, __A, __B);
5871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_andnot_epi64(__m512i __A, __m512i __B)
5911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)(~(__v8du)(__A) & (__v8du)__B);
5931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
5941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
5951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
5961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_andnot_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
5971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
5981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
5991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8di)_mm512_andnot_epi64(__A, __B),
6001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8di)__W);
6011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6031188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_andnot_epi64(__mmask8 __U, __m512i __A, __m512i __B)
6051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)_mm512_mask_andnot_epi64(_mm512_setzero_si512(),
6071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           __U, __A, __B);
6081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6101188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_or_epi32(__m512i __a, __m512i __b)
6121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)((__v16su)__a | (__v16su)__b);
6141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6161188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_or_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b)
6181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k,
6201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_or_epi32(__a, __b),
6211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)__src);
6221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_or_epi32(__mmask16 __k, __m512i __a, __m512i __b)
6261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)_mm512_mask_or_epi32(_mm512_setzero_si512(), __k, __a, __b);
6281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_or_epi64(__m512i __a, __m512i __b)
6321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)((__v8du)__a | (__v8du)__b);
6341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_or_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b)
6381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__k,
6401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_or_epi64(__a, __b),
6411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__src);
6421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6441188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_or_epi64(__mmask8 __k, __m512i __a, __m512i __b)
6461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)_mm512_mask_or_epi64(_mm512_setzero_si512(), __k, __a, __b);
6481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6501188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_xor_epi32(__m512i __a, __m512i __b)
6521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)((__v16su)__a ^ (__v16su)__b);
6541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_xor_epi32(__m512i __src, __mmask16 __k, __m512i __a, __m512i __b)
6581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__k,
6601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_xor_epi32(__a, __b),
6611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)__src);
6621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6641188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_xor_epi32(__mmask16 __k, __m512i __a, __m512i __b)
6661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)_mm512_mask_xor_epi32(_mm512_setzero_si512(), __k, __a, __b);
6681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_xor_epi64(__m512i __a, __m512i __b)
6721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)((__v8du)__a ^ (__v8du)__b);
6741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_xor_epi64(__m512i __src, __mmask8 __k, __m512i __a, __m512i __b)
6781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__k,
6801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_xor_epi64(__a, __b),
6811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__src);
6821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6841188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_xor_epi64(__mmask8 __k, __m512i __a, __m512i __b)
6861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)_mm512_mask_xor_epi64(_mm512_setzero_si512(), __k, __a, __b);
6881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6901188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_and_si512(__m512i __a, __m512i __b)
6921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)((__v8du)__a & (__v8du)__b);
6941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
6951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
6961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
6971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_or_si512(__m512i __a, __m512i __b)
6981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
6991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)((__v8du)__a | (__v8du)__b);
7001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
7031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_xor_si512(__m512i __a, __m512i __b)
7041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)((__v8du)__a ^ (__v8du)__b);
7061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Arithmetic */
7091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7101188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
7111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_add_pd(__m512d __a, __m512d __b)
7121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)((__v8df)__a + (__v8df)__b);
7141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7161188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
7171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_add_ps(__m512 __a, __m512 __b)
7181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)((__v16sf)__a + (__v16sf)__b);
7201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
7231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mul_pd(__m512d __a, __m512d __b)
7241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)((__v8df)__a * (__v8df)__b);
7261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
7291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mul_ps(__m512 __a, __m512 __b)
7301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)((__v16sf)__a * (__v16sf)__b);
7321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
7351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sub_pd(__m512d __a, __m512d __b)
7361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)((__v8df)__a - (__v8df)__b);
7381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
7411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sub_ps(__m512 __a, __m512 __b)
7421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)((__v16sf)__a - (__v16sf)__b);
7441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
7471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_add_epi64 (__m512i __A, __m512i __B)
7481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) ((__v8du) __A + (__v8du) __B);
7501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
7531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_add_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
7541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
7561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_add_epi64(__A, __B),
7571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__W);
7581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
7611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_add_epi64(__mmask8 __U, __m512i __A, __m512i __B)
7621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
7641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_add_epi64(__A, __B),
7651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_setzero_si512());
7661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
7691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sub_epi64 (__m512i __A, __m512i __B)
7701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) ((__v8du) __A - (__v8du) __B);
7721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
7751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sub_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
7761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
7781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_sub_epi64(__A, __B),
7791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__W);
7801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
7831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sub_epi64(__mmask8 __U, __m512i __A, __m512i __B)
7841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
7861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_sub_epi64(__A, __B),
7871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_setzero_si512());
7881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7901188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
7911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_add_epi32 (__m512i __A, __m512i __B)
7921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) ((__v16su) __A + (__v16su) __B);
7941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
7951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
7961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
7971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_add_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
7981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
7991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
8001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_add_epi32(__A, __B),
8011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)__W);
8021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
8031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8041188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
8051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_add_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
8061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
8071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
8081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_add_epi32(__A, __B),
8091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_setzero_si512());
8101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
8111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
8131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sub_epi32 (__m512i __A, __m512i __B)
8141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
8151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) ((__v16su) __A - (__v16su) __B);
8161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
8171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
8191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sub_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
8201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
8211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
8221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_sub_epi32(__A, __B),
8231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)__W);
8241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
8251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8261188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
8271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sub_epi32(__mmask16 __U, __m512i __A, __m512i __B)
8281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
8291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
8301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_sub_epi32(__A, __B),
8311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_setzero_si512());
8321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
8331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_max_round_pd(W, U, A, B, R) __extension__ ({ \
8351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_maxpd512_mask((__v8df)(__m512d)(A), \
8361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
8371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(W), (__mmask8)(U), \
8381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
8391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_max_round_pd(U, A, B, R) __extension__ ({ \
8411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_maxpd512_mask((__v8df)(__m512d)(A), \
8421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
8431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
8441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(U), (int)(R)); })
8451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_max_round_pd(A, B, R) __extension__ ({ \
8471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_maxpd512_mask((__v8df)(__m512d)(A), \
8481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
8491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_undefined_pd(), \
8501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1, (int)(R)); })
8511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512d __DEFAULT_FN_ATTRS
8531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_max_pd(__m512d __A, __m512d __B)
8541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
8551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
8561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8df) __B,
8571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8df)
8581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_pd (),
8591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1,
8601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _MM_FROUND_CUR_DIRECTION);
8611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
8621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
8641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_max_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
8651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
8661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
8671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __B,
8681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __W,
8691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
8701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
8711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
8721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8731188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
8741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_max_pd (__mmask8 __U, __m512d __A, __m512d __B)
8751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
8761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_maxpd512_mask ((__v8df) __A,
8771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __B,
8781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df)
8791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_pd (),
8801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
8811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
8821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
8831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_max_round_ps(W, U, A, B, R) __extension__ ({ \
8851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_maxps512_mask((__v16sf)(__m512)(A), \
8861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
8871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(W), (__mmask16)(U), \
8881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(R)); })
8891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_max_round_ps(U, A, B, R) __extension__ ({ \
8911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_maxps512_mask((__v16sf)(__m512)(A), \
8921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
8931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
8941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)(U), (int)(R)); })
8951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
8961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_max_round_ps(A, B, R) __extension__ ({ \
8971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_maxps512_mask((__v16sf)(__m512)(A), \
8981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
8991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_undefined_ps(), \
9001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)-1, (int)(R)); })
9011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512 __DEFAULT_FN_ATTRS
9031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_max_ps(__m512 __A, __m512 __B)
9041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
9051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
9061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__v16sf) __B,
9071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__v16sf)
9081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            _mm512_setzero_ps (),
9091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask16) -1,
9101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            _MM_FROUND_CUR_DIRECTION);
9111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
9121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9131188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
9141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_max_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
9151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
9161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
9171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __B,
9181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __W,
9191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
9201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
9211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
9221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9231188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
9241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_max_ps (__mmask16 __U, __m512 __A, __m512 __B)
9251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
9261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_maxps512_mask ((__v16sf) __A,
9271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __B,
9281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf)
9291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_ps (),
9301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
9311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
9321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
9331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
9351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_max_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
9361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A,
9371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
9381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __W,
9391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
9401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
9411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
9421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
9441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_max_ss(__mmask8 __U,__m128 __A, __m128 __B) {
9451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_maxss_round_mask ((__v4sf) __A,
9461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
9471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf)  _mm_setzero_ps (),
9481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
9491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
9501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
9511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_max_round_ss(A, B, R) __extension__ ({ \
9531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_maxss_round_mask((__v4sf)(__m128)(A), \
9541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
9551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
9561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, (int)(R)); })
9571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_max_round_ss(W, U, A, B, R) __extension__ ({ \
9591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_maxss_round_mask((__v4sf)(__m128)(A), \
9601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
9611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(W), (__mmask8)(U), \
9621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
9631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_max_round_ss(U, A, B, R) __extension__ ({ \
9651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_maxss_round_mask((__v4sf)(__m128)(A), \
9661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
9671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
9681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
9691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
9711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_max_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
9721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A,
9731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
9741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __W,
9751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
9761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
9771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
9781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9791188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
9801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_max_sd(__mmask8 __U,__m128d __A, __m128d __B) {
9811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_maxsd_round_mask ((__v2df) __A,
9821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
9831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df)  _mm_setzero_pd (),
9841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
9851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
9861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
9871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_max_round_sd(A, B, R) __extension__ ({ \
9891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_maxsd_round_mask((__v2df)(__m128d)(A), \
9901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
9911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
9921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
9931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
9941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_max_round_sd(W, U, A, B, R) __extension__ ({ \
9951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_maxsd_round_mask((__v2df)(__m128d)(A), \
9961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
9971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(W), \
9981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
9991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_max_round_sd(U, A, B, R) __extension__ ({ \
10011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_maxsd_round_mask((__v2df)(__m128d)(A), \
10021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
10031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
10041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
10051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i
10071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker__DEFAULT_FN_ATTRS
10081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_max_epi32(__m512i __A, __m512i __B)
10091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxsd512_mask ((__v16si) __A,
10111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
10121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
10131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
10141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
10151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
10161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
10181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_max_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
10191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxsd512_mask ((__v16si) __A,
10211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __B,
10221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __W, __M);
10231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
10241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10251188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
10261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_max_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
10271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxsd512_mask ((__v16si) __A,
10291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __B,
10301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si)
10311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_si512 (),
10321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   __M);
10331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
10341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10351188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
10361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_max_epu32(__m512i __A, __m512i __B)
10371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxud512_mask ((__v16si) __A,
10391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
10401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
10411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
10421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
10431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
10441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
10461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_max_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
10471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxud512_mask ((__v16si) __A,
10491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __B,
10501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __W, __M);
10511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
10521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
10541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_max_epu32 (__mmask16 __M, __m512i __A, __m512i __B)
10551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxud512_mask ((__v16si) __A,
10571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __B,
10581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si)
10591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_si512 (),
10601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   __M);
10611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
10621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
10641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_max_epi64(__m512i __A, __m512i __B)
10651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxsq512_mask ((__v8di) __A,
10671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
10681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
10691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
10701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
10711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
10721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10731188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
10741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_max_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
10751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxsq512_mask ((__v8di) __A,
10771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __B,
10781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __W, __M);
10791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
10801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10811188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
10821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_max_epi64 (__mmask8 __M, __m512i __A, __m512i __B)
10831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxsq512_mask ((__v8di) __A,
10851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __B,
10861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di)
10871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_si512 (),
10881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   __M);
10891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
10901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
10911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
10921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_max_epu64(__m512i __A, __m512i __B)
10931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
10941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxuq512_mask ((__v8di) __A,
10951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
10961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
10971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
10981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
10991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
11001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
11021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_max_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
11031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
11041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxuq512_mask ((__v8di) __A,
11051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __B,
11061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __W, __M);
11071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
11081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
11101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_max_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
11111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
11121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmaxuq512_mask ((__v8di) __A,
11131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __B,
11141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di)
11151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_si512 (),
11161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   __M);
11171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
11181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_min_round_pd(W, U, A, B, R) __extension__ ({ \
11201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_minpd512_mask((__v8df)(__m512d)(A), \
11211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
11221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(W), (__mmask8)(U), \
11231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
11241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_min_round_pd(U, A, B, R) __extension__ ({ \
11261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_minpd512_mask((__v8df)(__m512d)(A), \
11271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
11281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
11291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(U), (int)(R)); })
11301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_min_round_pd(A, B, R) __extension__ ({ \
11321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_minpd512_mask((__v8df)(__m512d)(A), \
11331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
11341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_undefined_pd(), \
11351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1, (int)(R)); })
11361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512d __DEFAULT_FN_ATTRS
11381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_min_pd(__m512d __A, __m512d __B)
11391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
11401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
11411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8df) __B,
11421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8df)
11431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_pd (),
11441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1,
11451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _MM_FROUND_CUR_DIRECTION);
11461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
11471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
11491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_min_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
11501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
11511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
11521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __B,
11531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __W,
11541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
11551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
11561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
11571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_min_round_ps(W, U, A, B, R) __extension__ ({ \
11591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_minps512_mask((__v16sf)(__m512)(A), \
11601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
11611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(W), (__mmask16)(U), \
11621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(R)); })
11631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_min_round_ps(U, A, B, R) __extension__ ({ \
11651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_minps512_mask((__v16sf)(__m512)(A), \
11661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
11671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
11681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)(U), (int)(R)); })
11691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_min_round_ps(A, B, R) __extension__ ({ \
11711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_minps512_mask((__v16sf)(__m512)(A), \
11721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
11731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_undefined_ps(), \
11741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)-1, (int)(R)); })
11751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
11771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_min_pd (__mmask8 __U, __m512d __A, __m512d __B)
11781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
11791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_minpd512_mask ((__v8df) __A,
11801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __B,
11811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df)
11821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_pd (),
11831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
11841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
11851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
11861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11871188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512 __DEFAULT_FN_ATTRS
11881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_min_ps(__m512 __A, __m512 __B)
11891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
11901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
11911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__v16sf) __B,
11921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__v16sf)
11931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            _mm512_setzero_ps (),
11941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask16) -1,
11951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            _MM_FROUND_CUR_DIRECTION);
11961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
11971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
11981188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
11991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_min_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
12001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
12011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
12021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __B,
12031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __W,
12041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
12051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
12061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
12071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
12091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_min_ps (__mmask16 __U, __m512 __A, __m512 __B)
12101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
12111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_minps512_mask ((__v16sf) __A,
12121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __B,
12131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf)
12141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_ps (),
12151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
12161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
12171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
12181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
12201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_min_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
12211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A,
12221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
12231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __W,
12241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
12251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
12261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
12271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
12291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_min_ss(__mmask8 __U,__m128 __A, __m128 __B) {
12301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_minss_round_mask ((__v4sf) __A,
12311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
12321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf)  _mm_setzero_ps (),
12331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
12341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
12351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
12361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_min_round_ss(A, B, R) __extension__ ({ \
12381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_minss_round_mask((__v4sf)(__m128)(A), \
12391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
12401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
12411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, (int)(R)); })
12421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_min_round_ss(W, U, A, B, R) __extension__ ({ \
12441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_minss_round_mask((__v4sf)(__m128)(A), \
12451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
12461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(W), (__mmask8)(U), \
12471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
12481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_min_round_ss(U, A, B, R) __extension__ ({ \
12501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_minss_round_mask((__v4sf)(__m128)(A), \
12511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
12521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
12531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
12541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12551188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
12561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_min_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
12571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A,
12581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
12591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __W,
12601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
12611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
12621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
12631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12641188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
12651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_min_sd(__mmask8 __U,__m128d __A, __m128d __B) {
12661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_minsd_round_mask ((__v2df) __A,
12671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
12681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df)  _mm_setzero_pd (),
12691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
12701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
12711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
12721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_min_round_sd(A, B, R) __extension__ ({ \
12741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_minsd_round_mask((__v2df)(__m128d)(A), \
12751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
12761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
12771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
12781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_min_round_sd(W, U, A, B, R) __extension__ ({ \
12801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_minsd_round_mask((__v2df)(__m128d)(A), \
12811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
12821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(W), \
12831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
12841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_min_round_sd(U, A, B, R) __extension__ ({ \
12861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_minsd_round_mask((__v2df)(__m128d)(A), \
12871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
12881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
12891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
12901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
12911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i
12921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker__DEFAULT_FN_ATTRS
12931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_min_epi32(__m512i __A, __m512i __B)
12941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
12951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminsd512_mask ((__v16si) __A,
12961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
12971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
12981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
12991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
13001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
13031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_min_epi32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
13041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminsd512_mask ((__v16si) __A,
13061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __B,
13071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __W, __M);
13081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13101188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
13111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_min_epi32 (__mmask16 __M, __m512i __A, __m512i __B)
13121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminsd512_mask ((__v16si) __A,
13141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __B,
13151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si)
13161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_si512 (),
13171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   __M);
13181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
13211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_min_epu32(__m512i __A, __m512i __B)
13221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminud512_mask ((__v16si) __A,
13241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
13251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
13261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
13271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
13281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
13311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_min_epu32 (__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
13321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminud512_mask ((__v16si) __A,
13341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __B,
13351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __W, __M);
13361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13381188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
13391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_min_epu32 (__mmask16 __M, __m512i __A, __m512i __B)
13401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminud512_mask ((__v16si) __A,
13421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __B,
13431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si)
13441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_si512 (),
13451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   __M);
13461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
13491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_min_epi64(__m512i __A, __m512i __B)
13501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminsq512_mask ((__v8di) __A,
13521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
13531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
13541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
13551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
13561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13581188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
13591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_min_epi64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
13601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminsq512_mask ((__v8di) __A,
13621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __B,
13631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __W, __M);
13641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13661188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
13671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_min_epi64 (__mmask8 __M, __m512i __A, __m512i __B)
13681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminsq512_mask ((__v8di) __A,
13701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __B,
13711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di)
13721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_si512 (),
13731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   __M);
13741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
13771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_min_epu64(__m512i __A, __m512i __B)
13781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminuq512_mask ((__v8di) __A,
13801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
13811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
13821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
13831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
13841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13861188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
13871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_min_epu64 (__m512i __W, __mmask8 __M, __m512i __A, __m512i __B)
13881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminuq512_mask ((__v8di) __A,
13901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __B,
13911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __W, __M);
13921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
13931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
13941188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
13951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_min_epu64 (__mmask8 __M, __m512i __A, __m512i __B)
13961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
13971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pminuq512_mask ((__v8di) __A,
13981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __B,
13991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di)
14001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_si512 (),
14011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   __M);
14021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14041188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
14051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mul_epi32(__m512i __X, __m512i __Y)
14061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
14071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmuldq512_mask ((__v16si) __X,
14081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
14091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
14101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
14111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
14121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14141188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
14151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_mul_epi32 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
14161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
14171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmuldq512_mask ((__v16si) __X,
14181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
14191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __W, __M);
14201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
14231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_mul_epi32 (__mmask8 __M, __m512i __X, __m512i __Y)
14241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
14251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmuldq512_mask ((__v16si) __X,
14261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
14271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
14281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
14291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              __M);
14301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14321188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
14331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mul_epu32(__m512i __X, __m512i __Y)
14341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
14351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmuludq512_mask ((__v16si) __X,
14361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16si) __Y,
14371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8di)
14381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _mm512_setzero_si512 (),
14391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask8) -1);
14401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14421188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
14431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_mul_epu32 (__m512i __W, __mmask8 __M, __m512i __X, __m512i __Y)
14441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
14451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmuludq512_mask ((__v16si) __X,
14461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16si) __Y,
14471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8di) __W, __M);
14481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14501188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
14511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_mul_epu32 (__mmask8 __M, __m512i __X, __m512i __Y)
14521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
14531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pmuludq512_mask ((__v16si) __X,
14541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16si) __Y,
14551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8di)
14561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _mm512_setzero_si512 (),
14571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               __M);
14581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
14611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mullo_epi32 (__m512i __A, __m512i __B)
14621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
14631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) ((__v16su) __A * (__v16su) __B);
14641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14661188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
14671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_mullo_epi32(__mmask16 __M, __m512i __A, __m512i __B)
14681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
14691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
14701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_mullo_epi32(__A, __B),
14711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_setzero_si512());
14721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
14751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_mullo_epi32(__m512i __W, __mmask16 __M, __m512i __A, __m512i __B)
14761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
14771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__M,
14781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_mullo_epi32(__A, __B),
14791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)__W);
14801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
14811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_sqrt_round_pd(W, U, A, R) __extension__ ({ \
14831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_sqrtpd512_mask((__v8df)(__m512d)(A), \
14841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8df)(__m512d)(W), (__mmask8)(U), \
14851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
14861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_sqrt_round_pd(U, A, R) __extension__ ({ \
14881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_sqrtpd512_mask((__v8df)(__m512d)(A), \
14891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8df)_mm512_setzero_pd(), \
14901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U), (int)(R)); })
14911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_sqrt_round_pd(A, R) __extension__ ({ \
14931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_sqrtpd512_mask((__v8df)(__m512d)(A), \
14941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8df)_mm512_undefined_pd(), \
14951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)-1, (int)(R)); })
14961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
14971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512d __DEFAULT_FN_ATTRS
14981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sqrt_pd(__m512d __a)
14991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_sqrtpd512_mask((__v8df)__a,
15011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8df) _mm512_setzero_pd (),
15021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8) -1,
15031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                _MM_FROUND_CUR_DIRECTION);
15041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
15051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
15071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sqrt_pd (__m512d __W, __mmask8 __U, __m512d __A)
15081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
15101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8df) __W,
15111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask8) __U,
15121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _MM_FROUND_CUR_DIRECTION);
15131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
15141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15151188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
15161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sqrt_pd (__mmask8 __U, __m512d __A)
15171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_sqrtpd512_mask ((__v8df) __A,
15191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8df)
15201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_pd (),
15211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask8) __U,
15221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _MM_FROUND_CUR_DIRECTION);
15231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
15241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_sqrt_round_ps(W, U, A, R) __extension__ ({ \
15261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_sqrtps512_mask((__v16sf)(__m512)(A), \
15271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16sf)(__m512)(W), (__mmask16)(U), \
15281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
15291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_sqrt_round_ps(U, A, R) __extension__ ({ \
15311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_sqrtps512_mask((__v16sf)(__m512)(A), \
15321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16sf)_mm512_setzero_ps(), \
15331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)(U), (int)(R)); })
15341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_sqrt_round_ps(A, R) __extension__ ({ \
15361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_sqrtps512_mask((__v16sf)(__m512)(A), \
15371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16sf)_mm512_undefined_ps(), \
15381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)-1, (int)(R)); })
15391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512 __DEFAULT_FN_ATTRS
15411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sqrt_ps(__m512 __a)
15421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_sqrtps512_mask((__v16sf)__a,
15441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v16sf) _mm512_setzero_ps (),
15451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask16) -1,
15461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               _MM_FROUND_CUR_DIRECTION);
15471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
15481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15491188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512 __DEFAULT_FN_ATTRS
15501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sqrt_ps(__m512 __W, __mmask16 __U, __m512 __A)
15511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_sqrtps512_mask((__v16sf)__A,
15531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v16sf) __W,
15541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask16) __U,
15551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               _MM_FROUND_CUR_DIRECTION);
15561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
15571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15581188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512 __DEFAULT_FN_ATTRS
15591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sqrt_ps( __mmask16 __U, __m512 __A)
15601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_sqrtps512_mask((__v16sf)__A,
15621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v16sf) _mm512_setzero_ps (),
15631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask16) __U,
15641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               _MM_FROUND_CUR_DIRECTION);
15651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
15661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15671188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512d __DEFAULT_FN_ATTRS
15681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_rsqrt14_pd(__m512d __A)
15691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A,
15711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8df)
15721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_pd (),
15731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) -1);}
15741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15751188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
15761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_rsqrt14_pd (__m512d __W, __mmask8 __U, __m512d __A)
15771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A,
15791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __W,
15801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
15811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
15821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
15841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_rsqrt14_pd (__mmask8 __U, __m512d __A)
15851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rsqrt14pd512_mask ((__v8df) __A,
15871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df)
15881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_pd (),
15891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
15901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
15911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
15921188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512 __DEFAULT_FN_ATTRS
15931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_rsqrt14_ps(__m512 __A)
15941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
15951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A,
15961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf)
15971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _mm512_setzero_ps (),
15981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) -1);
15991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
16021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_rsqrt14_ps (__m512 __W, __mmask16 __U, __m512 __A)
16031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A,
16051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __W,
16061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U);
16071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
16101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_rsqrt14_ps (__mmask16 __U, __m512 __A)
16111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rsqrt14ps512_mask ((__v16sf) __A,
16131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf)
16141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_ps (),
16151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U);
16161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m128 __DEFAULT_FN_ATTRS
16191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_rsqrt14_ss(__m128 __A, __m128 __B)
16201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __A,
16221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4sf) __B,
16231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4sf)
16241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm_setzero_ps (),
16251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1);
16261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
16291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_rsqrt14_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
16301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __A,
16321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
16331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __W,
16341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U);
16351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
16381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_rsqrt14_ss (__mmask8 __U, __m128 __A, __m128 __B)
16391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_rsqrt14ss_mask ((__v4sf) __A,
16411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
16421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) _mm_setzero_ps (),
16431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U);
16441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m128d __DEFAULT_FN_ATTRS
16471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_rsqrt14_sd(__m128d __A, __m128d __B)
16481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_rsqrt14sd_mask ((__v2df) __A,
16501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v2df) __B,
16511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v2df)
16521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm_setzero_pd (),
16531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
16541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
16571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_rsqrt14_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
16581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_rsqrt14sd_mask ( (__v2df) __A,
16601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
16611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __W,
16621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U);
16631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
16661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_rsqrt14_sd (__mmask8 __U, __m128d __A, __m128d __B)
16671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_rsqrt14sd_mask ( (__v2df) __A,
16691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
16701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) _mm_setzero_pd (),
16711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U);
16721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512d __DEFAULT_FN_ATTRS
16751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_rcp14_pd(__m512d __A)
16761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A,
16781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8df)
16791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _mm512_setzero_pd (),
16801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask8) -1);
16811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
16841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_rcp14_pd (__m512d __W, __mmask8 __U, __m512d __A)
16851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A,
16871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __W,
16881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U);
16891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
16911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
16921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_rcp14_pd (__mmask8 __U, __m512d __A)
16931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
16941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rcp14pd512_mask ((__v8df) __A,
16951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df)
16961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _mm512_setzero_pd (),
16971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U);
16981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
16991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m512 __DEFAULT_FN_ATTRS
17011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_rcp14_ps(__m512 __A)
17021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A,
17041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16sf)
17051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_ps (),
17061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
17071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
17101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_rcp14_ps (__m512 __W, __mmask16 __U, __m512 __A)
17111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A,
17131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf) __W,
17141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
17151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
17181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_rcp14_ps (__mmask16 __U, __m512 __A)
17191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rcp14ps512_mask ((__v16sf) __A,
17211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf)
17221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_ps (),
17231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
17241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17261188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m128 __DEFAULT_FN_ATTRS
17271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_rcp14_ss(__m128 __A, __m128 __B)
17281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __A,
17301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v4sf) __B,
17311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v4sf)
17321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm_setzero_ps (),
17331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) -1);
17341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
17371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_rcp14_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
17381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __A,
17401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
17411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __W,
17421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U);
17431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
17461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_rcp14_ss (__mmask8 __U, __m128 __A, __m128 __B)
17471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_rcp14ss_mask ((__v4sf) __A,
17491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
17501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) _mm_setzero_ps (),
17511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U);
17521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline__ __m128d __DEFAULT_FN_ATTRS
17551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_rcp14_sd(__m128d __A, __m128d __B)
17561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_rcp14sd_mask ((__v2df) __A,
17581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__v2df) __B,
17591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__v2df)
17601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            _mm_setzero_pd (),
17611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask8) -1);
17621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17641188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
17651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_rcp14_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
17661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_rcp14sd_mask ( (__v2df) __A,
17681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
17691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __W,
17701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U);
17711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17731188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
17741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_rcp14_sd (__mmask8 __U, __m128d __A, __m128d __B)
17751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_rcp14sd_mask ( (__v2df) __A,
17771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
17781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) _mm_setzero_pd (),
17791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U);
17801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
17831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_floor_ps(__m512 __A)
17841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
17861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  _MM_FROUND_FLOOR,
17871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__v16sf) __A, -1,
17881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  _MM_FROUND_CUR_DIRECTION);
17891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
17911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
17921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_floor_ps (__m512 __W, __mmask16 __U, __m512 __A)
17931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
17941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
17951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _MM_FROUND_FLOOR,
17961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf) __W, __U,
17971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _MM_FROUND_CUR_DIRECTION);
17981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
17991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
18011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_floor_pd(__m512d __A)
18021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
18041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_FLOOR,
18051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v8df) __A, -1,
18061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_CUR_DIRECTION);
18071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
18101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_floor_pd (__m512d __W, __mmask8 __U, __m512d __A)
18111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
18131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_FLOOR,
18141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __W, __U,
18151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
18161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
18191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_ceil_ps (__m512 __W, __mmask16 __U, __m512 __A)
18201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
18221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _MM_FROUND_CEIL,
18231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf) __W, __U,
18241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _MM_FROUND_CUR_DIRECTION);
18251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18271188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
18281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_ceil_ps(__m512 __A)
18291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_rndscaleps_mask ((__v16sf) __A,
18311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  _MM_FROUND_CEIL,
18321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__v16sf) __A, -1,
18331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  _MM_FROUND_CUR_DIRECTION);
18341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
18371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_ceil_pd(__m512d __A)
18381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
18401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_CEIL,
18411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v8df) __A, -1,
18421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_CUR_DIRECTION);
18431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
18461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_ceil_pd (__m512d __W, __mmask8 __U, __m512d __A)
18471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_rndscalepd_mask ((__v8df) __A,
18491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CEIL,
18501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __W, __U,
18511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
18521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
18551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_abs_epi64(__m512i __A)
18561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pabsq512_mask ((__v8di) __A,
18581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
18591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
18601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1);
18611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
18641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_abs_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
18651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pabsq512_mask ((__v8di) __A,
18671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8di) __W,
18681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
18691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
18721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_abs_epi64 (__mmask8 __U, __m512i __A)
18731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pabsq512_mask ((__v8di) __A,
18751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8di)
18761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_si512 (),
18771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
18781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
18811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_abs_epi32(__m512i __A)
18821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pabsd512_mask ((__v16si) __A,
18841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si)
18851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
18861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) -1);
18871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
18901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_abs_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
18911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
18921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pabsd512_mask ((__v16si) __A,
18931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si) __W,
18941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) __U);
18951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
18961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
18971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
18981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_abs_epi32 (__mmask16 __U, __m512i __A)
18991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
19001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pabsd512_mask ((__v16si) __A,
19011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si)
19021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_si512 (),
19031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) __U);
19041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
19051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
19071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_add_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
19081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_addss_round_mask ((__v4sf) __A,
19091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
19101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __W,
19111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
19121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
19131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
19141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19151188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
19161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_add_ss(__mmask8 __U,__m128 __A, __m128 __B) {
19171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_addss_round_mask ((__v4sf) __A,
19181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
19191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf)  _mm_setzero_ps (),
19201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
19211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
19221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
19231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_add_round_ss(A, B, R) __extension__ ({ \
19251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_addss_round_mask((__v4sf)(__m128)(A), \
19261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
19271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
19281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, (int)(R)); })
19291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_add_round_ss(W, U, A, B, R) __extension__ ({ \
19311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_addss_round_mask((__v4sf)(__m128)(A), \
19321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
19331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(W), (__mmask8)(U), \
19341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
19351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_add_round_ss(U, A, B, R) __extension__ ({ \
19371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_addss_round_mask((__v4sf)(__m128)(A), \
19381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
19391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
19401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
19411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19421188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
19431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_add_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
19441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_addsd_round_mask ((__v2df) __A,
19451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
19461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __W,
19471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
19481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
19491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
19501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19511188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
19521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_add_sd(__mmask8 __U,__m128d __A, __m128d __B) {
19531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_addsd_round_mask ((__v2df) __A,
19541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
19551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df)  _mm_setzero_pd (),
19561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
19571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
19581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
19591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_add_round_sd(A, B, R) __extension__ ({ \
19601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_addsd_round_mask((__v2df)(__m128d)(A), \
19611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
19621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
19631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
19641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_add_round_sd(W, U, A, B, R) __extension__ ({ \
19661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_addsd_round_mask((__v2df)(__m128d)(A), \
19671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
19681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(W), \
19691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
19701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_add_round_sd(U, A, B, R) __extension__ ({ \
19721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_addsd_round_mask((__v2df)(__m128d)(A), \
19731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
19741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
19751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
19761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19771188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
19781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_add_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
19791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
19801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_add_pd(__A, __B),
19811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)__W);
19821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
19831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19841188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
19851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_add_pd(__mmask8 __U, __m512d __A, __m512d __B) {
19861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
19871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_add_pd(__A, __B),
19881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_setzero_pd());
19891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
19901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
19921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_add_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
19931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
19941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_add_ps(__A, __B),
19951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)__W);
19961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
19971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
19981188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
19991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_add_ps(__mmask16 __U, __m512 __A, __m512 __B) {
20001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
20011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_add_ps(__A, __B),
20021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_setzero_ps());
20031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
20041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_add_round_pd(A, B, R) __extension__ ({ \
20061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_addpd512_mask((__v8df)(__m512d)(A), \
20071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
20081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
20091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1, (int)(R)); })
20101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_add_round_pd(W, U, A, B, R) __extension__ ({ \
20121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_addpd512_mask((__v8df)(__m512d)(A), \
20131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
20141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(W), (__mmask8)(U), \
20151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
20161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_add_round_pd(U, A, B, R) __extension__ ({ \
20181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_addpd512_mask((__v8df)(__m512d)(A), \
20191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
20201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
20211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(U), (int)(R)); })
20221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_add_round_ps(A, B, R) __extension__ ({ \
20241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_addps512_mask((__v16sf)(__m512)(A), \
20251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
20261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
20271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)-1, (int)(R)); })
20281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_add_round_ps(W, U, A, B, R) __extension__ ({ \
20301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_addps512_mask((__v16sf)(__m512)(A), \
20311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
20321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(W), (__mmask16)(U), \
20331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(R)); })
20341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_add_round_ps(U, A, B, R) __extension__ ({ \
20361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_addps512_mask((__v16sf)(__m512)(A), \
20371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
20381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
20391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)(U), (int)(R)); })
20401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20411188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
20421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_sub_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
20431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_subss_round_mask ((__v4sf) __A,
20441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
20451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __W,
20461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
20471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
20481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
20491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20501188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
20511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_sub_ss(__mmask8 __U,__m128 __A, __m128 __B) {
20521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_subss_round_mask ((__v4sf) __A,
20531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
20541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf)  _mm_setzero_ps (),
20551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
20561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
20571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
20581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_sub_round_ss(A, B, R) __extension__ ({ \
20591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_subss_round_mask((__v4sf)(__m128)(A), \
20601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
20611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
20621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, (int)(R)); })
20631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_sub_round_ss(W, U, A, B, R) __extension__ ({ \
20651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_subss_round_mask((__v4sf)(__m128)(A), \
20661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
20671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(W), (__mmask8)(U), \
20681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
20691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_sub_round_ss(U, A, B, R) __extension__ ({ \
20711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_subss_round_mask((__v4sf)(__m128)(A), \
20721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
20731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
20741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
20751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
20771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_sub_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
20781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_subsd_round_mask ((__v2df) __A,
20791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
20801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __W,
20811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
20821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
20831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
20841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
20861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_sub_sd(__mmask8 __U,__m128d __A, __m128d __B) {
20871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_subsd_round_mask ((__v2df) __A,
20881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
20891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df)  _mm_setzero_pd (),
20901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
20911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
20921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
20931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
20941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_sub_round_sd(A, B, R) __extension__ ({ \
20951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_subsd_round_mask((__v2df)(__m128d)(A), \
20961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
20971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
20981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
20991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_sub_round_sd(W, U, A, B, R) __extension__ ({ \
21011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_subsd_round_mask((__v2df)(__m128d)(A), \
21021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
21031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(W), \
21041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
21051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_sub_round_sd(U, A, B, R) __extension__ ({ \
21071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_subsd_round_mask((__v2df)(__m128d)(A), \
21081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
21091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
21101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
21111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
21131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sub_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
21141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
21151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_sub_pd(__A, __B),
21161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)__W);
21171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
21181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
21201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sub_pd(__mmask8 __U, __m512d __A, __m512d __B) {
21211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
21221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_sub_pd(__A, __B),
21231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_setzero_pd());
21241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
21251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21261188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
21271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sub_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
21281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
21291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_sub_ps(__A, __B),
21301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)__W);
21311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
21321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21331188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
21341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sub_ps(__mmask16 __U, __m512 __A, __m512 __B) {
21351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
21361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_sub_ps(__A, __B),
21371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_setzero_ps());
21381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
21391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_sub_round_pd(A, B, R) __extension__ ({ \
21411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_subpd512_mask((__v8df)(__m512d)(A), \
21421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
21431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
21441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1, (int)(R)); })
21451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_sub_round_pd(W, U, A, B, R) __extension__ ({ \
21471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_subpd512_mask((__v8df)(__m512d)(A), \
21481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
21491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(W), (__mmask8)(U), \
21501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
21511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_sub_round_pd(U, A, B, R) __extension__ ({ \
21531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_subpd512_mask((__v8df)(__m512d)(A), \
21541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
21551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
21561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(U), (int)(R)); })
21571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_sub_round_ps(A, B, R) __extension__ ({ \
21591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_subps512_mask((__v16sf)(__m512)(A), \
21601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
21611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
21621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)-1, (int)(R)); })
21631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_sub_round_ps(W, U, A, B, R)  __extension__ ({ \
21651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_subps512_mask((__v16sf)(__m512)(A), \
21661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
21671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(W), (__mmask16)(U), \
21681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(R)); });
21691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_sub_round_ps(U, A, B, R)  __extension__ ({ \
21711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_subps512_mask((__v16sf)(__m512)(A), \
21721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
21731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
21741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)(U), (int)(R)); });
21751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
21771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_mul_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
21781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_mulss_round_mask ((__v4sf) __A,
21791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
21801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __W,
21811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
21821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
21831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
21841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
21861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_mul_ss(__mmask8 __U,__m128 __A, __m128 __B) {
21871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_mulss_round_mask ((__v4sf) __A,
21881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
21891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf)  _mm_setzero_ps (),
21901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
21911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
21921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
21931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mul_round_ss(A, B, R) __extension__ ({ \
21941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_mulss_round_mask((__v4sf)(__m128)(A), \
21951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
21961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
21971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, (int)(R)); })
21981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
21991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_mul_round_ss(W, U, A, B, R) __extension__ ({ \
22001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_mulss_round_mask((__v4sf)(__m128)(A), \
22011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
22021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(W), (__mmask8)(U), \
22031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
22041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_mul_round_ss(U, A, B, R) __extension__ ({ \
22061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_mulss_round_mask((__v4sf)(__m128)(A), \
22071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
22081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
22091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
22101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
22121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_mul_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
22131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_mulsd_round_mask ((__v2df) __A,
22141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
22151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __W,
22161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
22171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
22181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
22191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
22211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_mul_sd(__mmask8 __U,__m128d __A, __m128d __B) {
22221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_mulsd_round_mask ((__v2df) __A,
22231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
22241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df)  _mm_setzero_pd (),
22251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
22261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
22271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
22281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mul_round_sd(A, B, R) __extension__ ({ \
22301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_mulsd_round_mask((__v2df)(__m128d)(A), \
22311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
22321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
22331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
22341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_mul_round_sd(W, U, A, B, R) __extension__ ({ \
22361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_mulsd_round_mask((__v2df)(__m128d)(A), \
22371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
22381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(W), \
22391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
22401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_mul_round_sd(U, A, B, R) __extension__ ({ \
22421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_mulsd_round_mask((__v2df)(__m128d)(A), \
22431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
22441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
22451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
22461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
22481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_mul_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
22491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
22501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_mul_pd(__A, __B),
22511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)__W);
22521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
22531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
22551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_mul_pd(__mmask8 __U, __m512d __A, __m512d __B) {
22561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
22571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_mul_pd(__A, __B),
22581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_setzero_pd());
22591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
22601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22611188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
22621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_mul_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
22631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
22641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_mul_ps(__A, __B),
22651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)__W);
22661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
22671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
22691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_mul_ps(__mmask16 __U, __m512 __A, __m512 __B) {
22701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
22711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_mul_ps(__A, __B),
22721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_setzero_ps());
22731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
22741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mul_round_pd(A, B, R) __extension__ ({ \
22761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_mulpd512_mask((__v8df)(__m512d)(A), \
22771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
22781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
22791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1, (int)(R)); })
22801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_mul_round_pd(W, U, A, B, R) __extension__ ({ \
22821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_mulpd512_mask((__v8df)(__m512d)(A), \
22831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
22841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(W), (__mmask8)(U), \
22851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
22861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_mul_round_pd(U, A, B, R) __extension__ ({ \
22881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_mulpd512_mask((__v8df)(__m512d)(A), \
22891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
22901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
22911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(U), (int)(R)); })
22921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mul_round_ps(A, B, R) __extension__ ({ \
22941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_mulps512_mask((__v16sf)(__m512)(A), \
22951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
22961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
22971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)-1, (int)(R)); })
22981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
22991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_mul_round_ps(W, U, A, B, R)  __extension__ ({ \
23001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_mulps512_mask((__v16sf)(__m512)(A), \
23011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
23021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(W), (__mmask16)(U), \
23031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(R)); });
23041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_mul_round_ps(U, A, B, R)  __extension__ ({ \
23061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_mulps512_mask((__v16sf)(__m512)(A), \
23071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
23081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
23091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)(U), (int)(R)); });
23101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
23121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_div_ss(__m128 __W, __mmask8 __U,__m128 __A, __m128 __B) {
23131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_divss_round_mask ((__v4sf) __A,
23141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
23151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __W,
23161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
23171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
23181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
23191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
23211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_div_ss(__mmask8 __U,__m128 __A, __m128 __B) {
23221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_divss_round_mask ((__v4sf) __A,
23231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
23241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf)  _mm_setzero_ps (),
23251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
23261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
23271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
23281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_div_round_ss(A, B, R) __extension__ ({ \
23301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_divss_round_mask((__v4sf)(__m128)(A), \
23311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
23321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
23331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, (int)(R)); })
23341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_div_round_ss(W, U, A, B, R) __extension__ ({ \
23361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_divss_round_mask((__v4sf)(__m128)(A), \
23371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
23381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(W), (__mmask8)(U), \
23391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
23401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_div_round_ss(U, A, B, R) __extension__ ({ \
23421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_divss_round_mask((__v4sf)(__m128)(A), \
23431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
23441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)_mm_setzero_ps(), \
23451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
23461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
23481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_div_sd(__m128d __W, __mmask8 __U,__m128d __A, __m128d __B) {
23491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_divsd_round_mask ((__v2df) __A,
23501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
23511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __W,
23521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
23531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
23541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
23551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
23571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_div_sd(__mmask8 __U,__m128d __A, __m128d __B) {
23581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_divsd_round_mask ((__v2df) __A,
23591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __B,
23601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df)  _mm_setzero_pd (),
23611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
23621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
23631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
23641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_div_round_sd(A, B, R) __extension__ ({ \
23661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_divsd_round_mask((__v2df)(__m128d)(A), \
23671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
23681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
23691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
23701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_div_round_sd(W, U, A, B, R) __extension__ ({ \
23721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_divsd_round_mask((__v2df)(__m128d)(A), \
23731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
23741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(W), \
23751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
23761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_div_round_sd(U, A, B, R) __extension__ ({ \
23781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_divsd_round_mask((__v2df)(__m128d)(A), \
23791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
23801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)_mm_setzero_pd(), \
23811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
23821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
23841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_div_pd(__m512d __a, __m512d __b)
23851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
23861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)((__v8df)__a/(__v8df)__b);
23871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
23881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
23901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_div_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B) {
23911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
23921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_div_pd(__A, __B),
23931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)__W);
23941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
23951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
23961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
23971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_div_pd(__mmask8 __U, __m512d __A, __m512d __B) {
23981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
23991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_div_pd(__A, __B),
24001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_setzero_pd());
24011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
24021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24031188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
24041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_div_ps(__m512 __a, __m512 __b)
24051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
24061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)((__v16sf)__a/(__v16sf)__b);
24071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
24081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
24101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_div_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B) {
24111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
24121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_div_ps(__A, __B),
24131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)__W);
24141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
24151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24161188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
24171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_div_ps(__mmask16 __U, __m512 __A, __m512 __B) {
24181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
24191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_div_ps(__A, __B),
24201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_setzero_ps());
24211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
24221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_div_round_pd(A, B, R) __extension__ ({ \
24241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_divpd512_mask((__v8df)(__m512d)(A), \
24251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
24261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
24271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1, (int)(R)); })
24281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_div_round_pd(W, U, A, B, R) __extension__ ({ \
24301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_divpd512_mask((__v8df)(__m512d)(A), \
24311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
24321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(W), (__mmask8)(U), \
24331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
24341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_div_round_pd(U, A, B, R) __extension__ ({ \
24361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_divpd512_mask((__v8df)(__m512d)(A), \
24371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)(__m512d)(B), \
24381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8df)_mm512_setzero_pd(), \
24391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(U), (int)(R)); })
24401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_div_round_ps(A, B, R) __extension__ ({ \
24421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_divps512_mask((__v16sf)(__m512)(A), \
24431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
24441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
24451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)-1, (int)(R)); })
24461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_div_round_ps(W, U, A, B, R)  __extension__ ({ \
24481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_divps512_mask((__v16sf)(__m512)(A), \
24491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
24501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(W), (__mmask16)(U), \
24511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(R)); });
24521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_div_round_ps(U, A, B, R)  __extension__ ({ \
24541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_divps512_mask((__v16sf)(__m512)(A), \
24551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(B), \
24561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)_mm512_setzero_ps(), \
24571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)(U), (int)(R)); });
24581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_roundscale_ps(A, B) __extension__ ({ \
24601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(A), (int)(B), \
24611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)(__m512)(A), (__mmask16)-1, \
24621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         _MM_FROUND_CUR_DIRECTION); })
24631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_roundscale_ps(A, B, C, imm) __extension__ ({\
24651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(C), (int)(imm), \
24661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)(__m512)(A), (__mmask16)(B), \
24671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         _MM_FROUND_CUR_DIRECTION); })
24681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_roundscale_ps(A, B, imm) __extension__ ({\
24701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(B), (int)(imm), \
24711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)_mm512_setzero_ps(), \
24721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(A), \
24731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         _MM_FROUND_CUR_DIRECTION); })
24741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_roundscale_round_ps(A, B, C, imm, R) __extension__ ({ \
24761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(C), (int)(imm), \
24771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)(__m512)(A), (__mmask16)(B), \
24781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
24791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_roundscale_round_ps(A, B, imm, R) __extension__ ({ \
24811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(B), (int)(imm), \
24821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)_mm512_setzero_ps(), \
24831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(A), (int)(R)); })
24841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_roundscale_round_ps(A, imm, R) __extension__ ({ \
24861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_rndscaleps_mask((__v16sf)(__m512)(A), (int)(imm), \
24871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)_mm512_undefined_ps(), \
24881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)-1, (int)(R)); })
24891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_roundscale_pd(A, B) __extension__ ({ \
24911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(A), (int)(B), \
24921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)(__m512d)(A), (__mmask8)-1, \
24931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          _MM_FROUND_CUR_DIRECTION); })
24941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
24951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_roundscale_pd(A, B, C, imm) __extension__ ({\
24961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(C), (int)(imm), \
24971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)(__m512d)(A), (__mmask8)(B), \
24981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          _MM_FROUND_CUR_DIRECTION); })
24991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_roundscale_pd(A, B, imm) __extension__ ({\
25011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(B), (int)(imm), \
25021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)_mm512_setzero_pd(), \
25031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(A), \
25041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          _MM_FROUND_CUR_DIRECTION); })
25051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_roundscale_round_pd(A, B, C, imm, R) __extension__ ({ \
25071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(C), (int)(imm), \
25081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)(__m512d)(A), (__mmask8)(B), \
25091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
25101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_roundscale_round_pd(A, B, imm, R) __extension__ ({ \
25121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(B), (int)(imm), \
25131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)_mm512_setzero_pd(), \
25141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(A), (int)(R)); })
25151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_roundscale_round_pd(A, imm, R) __extension__ ({ \
25171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_rndscalepd_mask((__v8df)(__m512d)(A), (int)(imm), \
25181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)_mm512_undefined_pd(), \
25191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, (int)(R)); })
25201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fmadd_round_pd(A, B, C, R) __extension__ ({ \
25221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \
25231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(B), \
25241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(C), (__mmask8)-1, \
25251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (int)(R)); })
25261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fmadd_round_pd(A, U, B, C, R) __extension__ ({ \
25291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \
25301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(B), \
25311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(C), \
25321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
25331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fmadd_round_pd(A, B, C, U, R) __extension__ ({ \
25361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_mask3((__v8df)(__m512d)(A), \
25371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(B), \
25381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(C), \
25391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
25401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fmadd_round_pd(U, A, B, C, R) __extension__ ({ \
25431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_maskz((__v8df)(__m512d)(A), \
25441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(B), \
25451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(C), \
25461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
25471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fmsub_round_pd(A, B, C, R) __extension__ ({ \
25501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \
25511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(B), \
25521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           -(__v8df)(__m512d)(C), \
25531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
25541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fmsub_round_pd(A, U, B, C, R) __extension__ ({ \
25571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_mask((__v8df)(__m512d)(A), \
25581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(B), \
25591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           -(__v8df)(__m512d)(C), \
25601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
25611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fmsub_round_pd(U, A, B, C, R) __extension__ ({ \
25641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_maskz((__v8df)(__m512d)(A), \
25651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(B), \
25661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            -(__v8df)(__m512d)(C), \
25671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
25681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fnmadd_round_pd(A, B, C, R) __extension__ ({ \
25711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_mask(-(__v8df)(__m512d)(A), \
25721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(B), \
25731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(C), (__mmask8)-1, \
25741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (int)(R)); })
25751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fnmadd_round_pd(A, B, C, U, R) __extension__ ({ \
25781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_mask3(-(__v8df)(__m512d)(A), \
25791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(B), \
25801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(C), \
25811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
25821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fnmadd_round_pd(U, A, B, C, R) __extension__ ({ \
25851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_maskz(-(__v8df)(__m512d)(A), \
25861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(B), \
25871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(C), \
25881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
25891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fnmsub_round_pd(A, B, C, R) __extension__ ({ \
25921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_mask(-(__v8df)(__m512d)(A), \
25931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(B), \
25941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           -(__v8df)(__m512d)(C), \
25951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
25961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
25981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fnmsub_round_pd(U, A, B, C, R) __extension__ ({ \
25991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddpd512_maskz(-(__v8df)(__m512d)(A), \
26001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(B), \
26011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            -(__v8df)(__m512d)(C), \
26021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
26031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26051188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fmadd_pd(__m512d __A, __m512d __B, __m512d __C)
26071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
26091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v8df) __B,
26101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v8df) __C,
26111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask8) -1,
26121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
26131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
26141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26151188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
26171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
26191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v8df) __B,
26201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v8df) __C,
26211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask8) __U,
26221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
26231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
26241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26251188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
26271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_mask3 ((__v8df) __A,
26291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __B,
26301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __C,
26311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U,
26321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
26331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
26341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26351188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
26371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A,
26391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __B,
26401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __C,
26411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U,
26421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
26431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
26441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fmsub_pd(__m512d __A, __m512d __B, __m512d __C)
26471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
26491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v8df) __B,
26501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    -(__v8df) __C,
26511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask8) -1,
26521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
26531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
26541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26551188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
26571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_mask ((__v8df) __A,
26591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v8df) __B,
26601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    -(__v8df) __C,
26611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask8) __U,
26621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
26631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
26641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
26671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_maskz ((__v8df) __A,
26691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __B,
26701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     -(__v8df) __C,
26711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U,
26721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
26731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
26741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26751188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C)
26771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_mask (-(__v8df) __A,
26791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v8df) __B,
26801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v8df) __C,
26811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask8) -1,
26821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
26831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
26841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fnmadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
26871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_mask3 (-(__v8df) __A,
26891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __B,
26901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __C,
26911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U,
26921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
26931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
26941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
26951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
26961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fnmadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
26971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
26981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A,
26991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __B,
27001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __C,
27011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U,
27021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
27031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
27041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27051188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
27061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C)
27071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
27081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_mask (-(__v8df) __A,
27091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v8df) __B,
27101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    -(__v8df) __C,
27111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask8) -1,
27121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
27131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
27141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27151188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
27161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fnmsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
27171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
27181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddpd512_maskz (-(__v8df) __A,
27191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __B,
27201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     -(__v8df) __C,
27211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U,
27221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
27231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
27241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fmadd_round_ps(A, B, C, R) __extension__ ({ \
27261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \
27271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), \
27281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(C), (__mmask16)-1, \
27291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
27301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fmadd_round_ps(A, U, B, C, R) __extension__ ({ \
27331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \
27341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), \
27351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(C), \
27361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U), (int)(R)); })
27371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fmadd_round_ps(A, B, C, U, R) __extension__ ({ \
27401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_mask3((__v16sf)(__m512)(A), \
27411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(B), \
27421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(C), \
27431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
27441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fmadd_round_ps(U, A, B, C, R) __extension__ ({ \
27471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_maskz((__v16sf)(__m512)(A), \
27481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(B), \
27491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(C), \
27501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
27511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fmsub_round_ps(A, B, C, R) __extension__ ({ \
27541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \
27551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), \
27561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          -(__v16sf)(__m512)(C), \
27571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)-1, (int)(R)); })
27581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fmsub_round_ps(A, U, B, C, R) __extension__ ({ \
27611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_mask((__v16sf)(__m512)(A), \
27621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), \
27631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          -(__v16sf)(__m512)(C), \
27641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U), (int)(R)); })
27651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fmsub_round_ps(U, A, B, C, R) __extension__ ({ \
27681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_maskz((__v16sf)(__m512)(A), \
27691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(B), \
27701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           -(__v16sf)(__m512)(C), \
27711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
27721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fnmadd_round_ps(A, B, C, R) __extension__ ({ \
27751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_mask(-(__v16sf)(__m512)(A), \
27761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), \
27771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(C), (__mmask16)-1, \
27781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
27791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fnmadd_round_ps(A, B, C, U, R) __extension__ ({ \
27821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_mask3(-(__v16sf)(__m512)(A), \
27831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(B), \
27841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(C), \
27851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
27861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fnmadd_round_ps(U, A, B, C, R) __extension__ ({ \
27891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_maskz(-(__v16sf)(__m512)(A), \
27901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(B), \
27911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(C), \
27921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
27931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
27951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fnmsub_round_ps(A, B, C, R) __extension__ ({ \
27961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_mask(-(__v16sf)(__m512)(A), \
27971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), \
27981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          -(__v16sf)(__m512)(C), \
27991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)-1, (int)(R)); })
28001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fnmsub_round_ps(U, A, B, C, R) __extension__ ({ \
28031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddps512_maskz(-(__v16sf)(__m512)(A), \
28041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(B), \
28051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           -(__v16sf)(__m512)(C), \
28061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
28071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
28101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fmadd_ps(__m512 __A, __m512 __B, __m512 __C)
28111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
28121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
28131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v16sf) __B,
28141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v16sf) __C,
28151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask16) -1,
28161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_CUR_DIRECTION);
28171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
28181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
28201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
28211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
28221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
28231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v16sf) __B,
28241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v16sf) __C,
28251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask16) __U,
28261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_CUR_DIRECTION);
28271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
28281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28291188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
28301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
28311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
28321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_mask3 ((__v16sf) __A,
28331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __B,
28341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __C,
28351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask16) __U,
28361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
28371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
28381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
28401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
28411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
28421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A,
28431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __B,
28441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __C,
28451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask16) __U,
28461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
28471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
28481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28491188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
28501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fmsub_ps(__m512 __A, __m512 __B, __m512 __C)
28511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
28521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
28531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v16sf) __B,
28541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   -(__v16sf) __C,
28551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask16) -1,
28561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_CUR_DIRECTION);
28571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
28581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
28601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
28611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
28621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_mask ((__v16sf) __A,
28631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v16sf) __B,
28641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   -(__v16sf) __C,
28651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask16) __U,
28661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_CUR_DIRECTION);
28671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
28681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28691188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
28701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
28711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
28721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_maskz ((__v16sf) __A,
28731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __B,
28741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    -(__v16sf) __C,
28751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask16) __U,
28761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
28771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
28781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28791188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
28801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C)
28811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
28821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_mask (-(__v16sf) __A,
28831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v16sf) __B,
28841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v16sf) __C,
28851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask16) -1,
28861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_CUR_DIRECTION);
28871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
28881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
28901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fnmadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
28911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
28921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_mask3 (-(__v16sf) __A,
28931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __B,
28941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __C,
28951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask16) __U,
28961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
28971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
28981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
28991188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
29001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fnmadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
29011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
29021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A,
29031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __B,
29041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __C,
29051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask16) __U,
29061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
29071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
29081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
29101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C)
29111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
29121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_mask (-(__v16sf) __A,
29131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v16sf) __B,
29141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   -(__v16sf) __C,
29151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask16) -1,
29161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _MM_FROUND_CUR_DIRECTION);
29171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
29181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
29201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fnmsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
29211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
29221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddps512_maskz (-(__v16sf) __A,
29231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __B,
29241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    -(__v16sf) __C,
29251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask16) __U,
29261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
29271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
29281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fmaddsub_round_pd(A, B, C, R) __extension__ ({ \
29301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \
29311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)(__m512d)(B), \
29321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)(__m512d)(C), \
29331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)-1, (int)(R)); })
29341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fmaddsub_round_pd(A, U, B, C, R) __extension__ ({ \
29371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \
29381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)(__m512d)(B), \
29391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)(__m512d)(C), \
29401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), (int)(R)); })
29411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fmaddsub_round_pd(A, B, C, U, R) __extension__ ({ \
29441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddsubpd512_mask3((__v8df)(__m512d)(A), \
29451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v8df)(__m512d)(B), \
29461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v8df)(__m512d)(C), \
29471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(R)); })
29481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fmaddsub_round_pd(U, A, B, C, R) __extension__ ({ \
29511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddsubpd512_maskz((__v8df)(__m512d)(A), \
29521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v8df)(__m512d)(B), \
29531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v8df)(__m512d)(C), \
29541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(R)); })
29551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fmsubadd_round_pd(A, B, C, R) __extension__ ({ \
29581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \
29591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)(__m512d)(B), \
29601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              -(__v8df)(__m512d)(C), \
29611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)-1, (int)(R)); })
29621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fmsubadd_round_pd(A, U, B, C, R) __extension__ ({ \
29651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddsubpd512_mask((__v8df)(__m512d)(A), \
29661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)(__m512d)(B), \
29671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              -(__v8df)(__m512d)(C), \
29681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), (int)(R)); })
29691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fmsubadd_round_pd(U, A, B, C, R) __extension__ ({ \
29721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmaddsubpd512_maskz((__v8df)(__m512d)(A), \
29731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v8df)(__m512d)(B), \
29741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               -(__v8df)(__m512d)(C), \
29751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(R)); })
29761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29781188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
29791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fmaddsub_pd(__m512d __A, __m512d __B, __m512d __C)
29801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
29811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
29821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8df) __B,
29831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8df) __C,
29841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask8) -1,
29851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       _MM_FROUND_CUR_DIRECTION);
29861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
29871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
29891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fmaddsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
29901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
29911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
29921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8df) __B,
29931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8df) __C,
29941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask8) __U,
29951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       _MM_FROUND_CUR_DIRECTION);
29961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
29971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
29981188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
29991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fmaddsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
30001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
30011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddsubpd512_mask3 ((__v8df) __A,
30021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v8df) __B,
30031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v8df) __C,
30041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__mmask8) __U,
30051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        _MM_FROUND_CUR_DIRECTION);
30061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
30071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
30091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fmaddsub_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
30101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
30111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A,
30121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v8df) __B,
30131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v8df) __C,
30141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__mmask8) __U,
30151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        _MM_FROUND_CUR_DIRECTION);
30161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
30171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
30191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fmsubadd_pd(__m512d __A, __m512d __B, __m512d __C)
30201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
30211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
30221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8df) __B,
30231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       -(__v8df) __C,
30241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask8) -1,
30251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       _MM_FROUND_CUR_DIRECTION);
30261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
30271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
30291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fmsubadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
30301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
30311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddsubpd512_mask ((__v8df) __A,
30321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8df) __B,
30331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       -(__v8df) __C,
30341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask8) __U,
30351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       _MM_FROUND_CUR_DIRECTION);
30361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
30371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30381188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
30391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fmsubadd_pd(__mmask8 __U, __m512d __A, __m512d __B, __m512d __C)
30401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
30411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmaddsubpd512_maskz ((__v8df) __A,
30421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v8df) __B,
30431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        -(__v8df) __C,
30441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__mmask8) __U,
30451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        _MM_FROUND_CUR_DIRECTION);
30461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
30471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fmaddsub_round_ps(A, B, C, R) __extension__ ({ \
30491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \
30501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)(__m512)(B), \
30511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)(__m512)(C), \
30521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask16)-1, (int)(R)); })
30531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fmaddsub_round_ps(A, U, B, C, R) __extension__ ({ \
30561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \
30571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)(__m512)(B), \
30581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)(__m512)(C), \
30591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask16)(U), (int)(R)); })
30601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fmaddsub_round_ps(A, B, C, U, R) __extension__ ({ \
30631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddsubps512_mask3((__v16sf)(__m512)(A), \
30641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v16sf)(__m512)(B), \
30651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v16sf)(__m512)(C), \
30661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask16)(U), (int)(R)); })
30671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fmaddsub_round_ps(U, A, B, C, R) __extension__ ({ \
30701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddsubps512_maskz((__v16sf)(__m512)(A), \
30711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v16sf)(__m512)(B), \
30721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v16sf)(__m512)(C), \
30731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask16)(U), (int)(R)); })
30741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fmsubadd_round_ps(A, B, C, R) __extension__ ({ \
30771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \
30781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)(__m512)(B), \
30791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             -(__v16sf)(__m512)(C), \
30801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask16)-1, (int)(R)); })
30811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fmsubadd_round_ps(A, U, B, C, R) __extension__ ({ \
30841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddsubps512_mask((__v16sf)(__m512)(A), \
30851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)(__m512)(B), \
30861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             -(__v16sf)(__m512)(C), \
30871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask16)(U), (int)(R)); })
30881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fmsubadd_round_ps(U, A, B, C, R) __extension__ ({ \
30911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmaddsubps512_maskz((__v16sf)(__m512)(A), \
30921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v16sf)(__m512)(B), \
30931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              -(__v16sf)(__m512)(C), \
30941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask16)(U), (int)(R)); })
30951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
30971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
30981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fmaddsub_ps(__m512 __A, __m512 __B, __m512 __C)
30991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
31001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
31011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__v16sf) __B,
31021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__v16sf) __C,
31031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__mmask16) -1,
31041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      _MM_FROUND_CUR_DIRECTION);
31051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
31061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31071188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
31081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fmaddsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
31091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
31101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
31111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__v16sf) __B,
31121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__v16sf) __C,
31131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__mmask16) __U,
31141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      _MM_FROUND_CUR_DIRECTION);
31151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
31161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
31181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fmaddsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
31191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
31201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddsubps512_mask3 ((__v16sf) __A,
31211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v16sf) __B,
31221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v16sf) __C,
31231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask16) __U,
31241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       _MM_FROUND_CUR_DIRECTION);
31251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
31261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31271188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
31281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fmaddsub_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
31291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
31301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A,
31311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v16sf) __B,
31321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v16sf) __C,
31331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask16) __U,
31341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       _MM_FROUND_CUR_DIRECTION);
31351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
31361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
31381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_fmsubadd_ps(__m512 __A, __m512 __B, __m512 __C)
31391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
31401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
31411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__v16sf) __B,
31421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      -(__v16sf) __C,
31431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__mmask16) -1,
31441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      _MM_FROUND_CUR_DIRECTION);
31451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
31461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
31481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fmsubadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
31491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
31501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddsubps512_mask ((__v16sf) __A,
31511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__v16sf) __B,
31521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      -(__v16sf) __C,
31531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__mmask16) __U,
31541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      _MM_FROUND_CUR_DIRECTION);
31551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
31561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
31581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_fmsubadd_ps(__mmask16 __U, __m512 __A, __m512 __B, __m512 __C)
31591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
31601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmaddsubps512_maskz ((__v16sf) __A,
31611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v16sf) __B,
31621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       -(__v16sf) __C,
31631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask16) __U,
31641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       _MM_FROUND_CUR_DIRECTION);
31651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
31661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fmsub_round_pd(A, B, C, U, R) __extension__ ({ \
31681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmsubpd512_mask3((__v8df)(__m512d)(A), \
31691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(B), \
31701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(C), \
31711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
31721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
31751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
31761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
31771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmsubpd512_mask3 ((__v8df) __A,
31781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __B,
31791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __C,
31801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U,
31811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
31821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
31831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fmsub_round_ps(A, B, C, U, R) __extension__ ({ \
31851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmsubps512_mask3((__v16sf)(__m512)(A), \
31861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(B), \
31871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(C), \
31881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
31891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
31911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
31921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
31931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
31941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmsubps512_mask3 ((__v16sf) __A,
31951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __B,
31961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __C,
31971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask16) __U,
31981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
31991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
32001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fmsubadd_round_pd(A, B, C, U, R) __extension__ ({ \
32021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfmsubaddpd512_mask3((__v8df)(__m512d)(A), \
32031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v8df)(__m512d)(B), \
32041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v8df)(__m512d)(C), \
32051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(R)); })
32061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
32091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fmsubadd_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
32101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
32111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfmsubaddpd512_mask3 ((__v8df) __A,
32121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v8df) __B,
32131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v8df) __C,
32141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__mmask8) __U,
32151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        _MM_FROUND_CUR_DIRECTION);
32161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
32171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fmsubadd_round_ps(A, B, C, U, R) __extension__ ({ \
32191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfmsubaddps512_mask3((__v16sf)(__m512)(A), \
32201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v16sf)(__m512)(B), \
32211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v16sf)(__m512)(C), \
32221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask16)(U), (int)(R)); })
32231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32251188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
32261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fmsubadd_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
32271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
32281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfmsubaddps512_mask3 ((__v16sf) __A,
32291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v16sf) __B,
32301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v16sf) __C,
32311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask16) __U,
32321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       _MM_FROUND_CUR_DIRECTION);
32331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
32341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fnmadd_round_pd(A, U, B, C, R) __extension__ ({ \
32361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfnmaddpd512_mask((__v8df)(__m512d)(A), \
32371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(B), \
32381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(C), \
32391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
32401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32421188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
32431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fnmadd_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
32441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
32451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfnmaddpd512_mask ((__v8df) __A,
32461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __B,
32471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __C,
32481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U,
32491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
32501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
32511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fnmadd_round_ps(A, U, B, C, R) __extension__ ({ \
32531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfnmaddps512_mask((__v16sf)(__m512)(A), \
32541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(B), \
32551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(C), \
32561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
32571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
32601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fnmadd_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
32611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
32621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfnmaddps512_mask ((__v16sf) __A,
32631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __B,
32641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __C,
32651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask16) __U,
32661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
32671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
32681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fnmsub_round_pd(A, U, B, C, R) __extension__ ({ \
32701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfnmsubpd512_mask((__v8df)(__m512d)(A), \
32711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(B), \
32721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(C), \
32731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
32741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fnmsub_round_pd(A, B, C, U, R) __extension__ ({ \
32771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_vfnmsubpd512_mask3((__v8df)(__m512d)(A), \
32781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8df)(__m512d)(B), \
32791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8df)(__m512d)(C), \
32801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U), (int)(R)); })
32811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
32841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fnmsub_pd(__m512d __A, __mmask8 __U, __m512d __B, __m512d __C)
32851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
32861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfnmsubpd512_mask ((__v8df) __A,
32871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __B,
32881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8df) __C,
32891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U,
32901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
32911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
32921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
32931188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
32941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fnmsub_pd(__m512d __A, __m512d __B, __m512d __C, __mmask8 __U)
32951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
32961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vfnmsubpd512_mask3 ((__v8df) __A,
32971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__v8df) __B,
32981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__v8df) __C,
32991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      (__mmask8) __U,
33001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                      _MM_FROUND_CUR_DIRECTION);
33011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
33021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fnmsub_round_ps(A, U, B, C, R) __extension__ ({ \
33041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfnmsubps512_mask((__v16sf)(__m512)(A), \
33051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(B), \
33061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(C), \
33071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
33081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask3_fnmsub_round_ps(A, B, C, U, R) __extension__ ({ \
33111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vfnmsubps512_mask3((__v16sf)(__m512)(A), \
33121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16sf)(__m512)(B), \
33131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16sf)(__m512)(C), \
33141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(U), (int)(R)); })
33151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
33181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_fnmsub_ps(__m512 __A, __mmask16 __U, __m512 __B, __m512 __C)
33191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
33201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfnmsubps512_mask ((__v16sf) __A,
33211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __B,
33221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__v16sf) __C,
33231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    (__mmask16) __U,
33241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
33251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
33261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33271188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
33281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask3_fnmsub_ps(__m512 __A, __m512 __B, __m512 __C, __mmask16 __U)
33291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
33301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vfnmsubps512_mask3 ((__v16sf) __A,
33311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v16sf) __B,
33321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v16sf) __C,
33331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask16) __U,
33341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _MM_FROUND_CUR_DIRECTION);
33351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
33361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Vector permutations */
33401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33411188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
33421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutex2var_epi32(__m512i __A, __m512i __I, __m512i __B)
33431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
33441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_vpermt2vard512_mask ((__v16si) __I
33451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       /* idx */ ,
33461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v16si) __A,
33471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v16si) __B,
33481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask16) -1);
33491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
33501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33511188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
33521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutex2var_epi32 (__m512i __A, __mmask16 __U,
33531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                __m512i __I, __m512i __B)
33541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
33551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_vpermt2vard512_mask ((__v16si) __I
33561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        /* idx */ ,
33571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v16si) __A,
33581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v16si) __B,
33591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__mmask16) __U);
33601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
33611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
33631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutex2var_epi32 (__mmask16 __U, __m512i __A,
33641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 __m512i __I, __m512i __B)
33651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
33661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_vpermt2vard512_maskz ((__v16si) __I
33671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        /* idx */ ,
33681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v16si) __A,
33691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v16si) __B,
33701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__mmask16) __U);
33711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
33721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33731188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
33741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutex2var_epi64(__m512i __A, __m512i __I, __m512i __B)
33751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
33761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_vpermt2varq512_mask ((__v8di) __I
33771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       /* idx */ ,
33781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8di) __A,
33791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8di) __B,
33801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask8) -1);
33811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
33821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
33841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutex2var_epi64 (__m512i __A, __mmask8 __U, __m512i __I,
33851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                __m512i __B)
33861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
33871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_vpermt2varq512_mask ((__v8di) __I
33881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       /* idx */ ,
33891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8di) __A,
33901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__v8di) __B,
33911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                       (__mmask8) __U);
33921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
33931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
33951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
33961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutex2var_epi64 (__mmask8 __U, __m512i __A,
33971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker         __m512i __I, __m512i __B)
33981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
33991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_vpermt2varq512_maskz ((__v8di) __I
34001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        /* idx */ ,
34011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v8di) __A,
34021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v8di) __B,
34031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__mmask8) __U);
34041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
34051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_alignr_epi64(A, B, I) __extension__ ({ \
34071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_alignq512_mask((__v8di)(__m512i)(A), \
34081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)(__m512i)(B), (int)(I), \
34091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)_mm512_setzero_si512(), \
34101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)-1); })
34111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_alignr_epi64(W, U, A, B, imm) __extension__({\
34131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_alignq512_mask((__v8di)(__m512i)(A), \
34141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)(__m512i)(B), (int)(imm), \
34151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)(__m512i)(W), \
34161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U)); })
34171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_alignr_epi64(U, A, B, imm) __extension__({\
34191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_alignq512_mask((__v8di)(__m512i)(A), \
34201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)(__m512i)(B), (int)(imm), \
34211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)_mm512_setzero_si512(), \
34221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U)); })
34231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_alignr_epi32(A, B, I) __extension__ ({ \
34251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_alignd512_mask((__v16si)(__m512i)(A), \
34261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)(__m512i)(B), (int)(I), \
34271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)_mm512_setzero_si512(), \
34281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)-1); })
34291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_alignr_epi32(W, U, A, B, imm) __extension__ ({\
34311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_alignd512_mask((__v16si)(__m512i)(A), \
34321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)(__m512i)(B), (int)(imm), \
34331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)(__m512i)(W), \
34341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
34351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_alignr_epi32(U, A, B, imm) __extension__({\
34371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_alignd512_mask((__v16si)(__m512i)(A), \
34381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)(__m512i)(B), (int)(imm), \
34391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)_mm512_setzero_si512(), \
34401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
34411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Vector Extract */
34421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_extractf64x4_pd(A, I) __extension__ ({             \
34441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256d)__builtin_shufflevector((__v8df)(__m512d)(A),          \
34451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v8df)_mm512_undefined_pd(), \
34461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   ((I) & 1) ? 4 : 0,             \
34471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   ((I) & 1) ? 5 : 1,             \
34481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   ((I) & 1) ? 6 : 2,             \
34491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   ((I) & 1) ? 7 : 3); })
34501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_extractf64x4_pd(W, U, A, imm) __extension__ ({\
34521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \
34531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v4df)_mm512_extractf64x4_pd((A), (imm)), \
34541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v4df)(W)); })
34551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_extractf64x4_pd(U, A, imm) __extension__ ({\
34571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256d)__builtin_ia32_selectpd_256((__mmask8)(U), \
34581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v4df)_mm512_extractf64x4_pd((A), (imm)), \
34591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v4df)_mm256_setzero_pd()); })
34601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_extractf32x4_ps(A, I) __extension__ ({             \
34621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_shufflevector((__v16sf)(__m512)(A),           \
34631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16sf)_mm512_undefined_ps(), \
34641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  0 + ((I) & 0x3) * 4,            \
34651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  1 + ((I) & 0x3) * 4,            \
34661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  2 + ((I) & 0x3) * 4,            \
34671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  3 + ((I) & 0x3) * 4); })
34681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_extractf32x4_ps(W, U, A, imm) __extension__ ({\
34701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_selectps_128((__mmask8)(U), \
34711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v4sf)_mm512_extractf32x4_ps((A), (imm)), \
34721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v4sf)(W)); })
34731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_extractf32x4_ps(U, A, imm) __extension__ ({\
34751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_selectps_128((__mmask8)(U), \
34761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v4sf)_mm512_extractf32x4_ps((A), (imm)), \
34771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v4sf)_mm_setzero_ps()); })
34781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Vector Blend */
34801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34811188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
34821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_blend_pd(__mmask8 __U, __m512d __A, __m512d __W)
34831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
34841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U,
34851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8df) __W,
34861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8df) __A);
34871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
34881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
34901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_blend_ps(__mmask16 __U, __m512 __A, __m512 __W)
34911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
34921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U,
34931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf) __W,
34941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf) __A);
34951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
34961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
34971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
34981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_blend_epi64(__mmask8 __U, __m512i __A, __m512i __W)
34991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
35001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U,
35011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8di) __W,
35021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8di) __A);
35031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
35041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35051188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
35061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_blend_epi32(__mmask16 __U, __m512i __A, __m512i __W)
35071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
35081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U,
35091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16si) __W,
35101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16si) __A);
35111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
35121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Compare */
35141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmp_round_ps_mask(A, B, P, R) __extension__ ({ \
35161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask16)__builtin_ia32_cmpps512_mask((__v16sf)(__m512)(A), \
35171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), (int)(P), \
35181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)-1, (int)(R)); })
35191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmp_round_ps_mask(U, A, B, P, R) __extension__ ({ \
35211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask16)__builtin_ia32_cmpps512_mask((__v16sf)(__m512)(A), \
35221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), (int)(P), \
35231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U), (int)(R)); })
35241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmp_ps_mask(A, B, P) \
35261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_cmp_round_ps_mask((A), (B), (P), _MM_FROUND_CUR_DIRECTION)
35271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmp_ps_mask(U, A, B, P) \
35281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_cmp_round_ps_mask((U), (A), (B), (P), _MM_FROUND_CUR_DIRECTION)
35291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpeq_ps_mask(A, B) \
35311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_ps_mask((A), (B), _CMP_EQ_OQ)
35321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpeq_ps_mask(k, A, B) \
35331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_EQ_OQ)
35341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmplt_ps_mask(A, B) \
35361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_ps_mask((A), (B), _CMP_LT_OS)
35371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmplt_ps_mask(k, A, B) \
35381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_LT_OS)
35391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmple_ps_mask(A, B) \
35411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_ps_mask((A), (B), _CMP_LE_OS)
35421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmple_ps_mask(k, A, B) \
35431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_LE_OS)
35441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpunord_ps_mask(A, B) \
35461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_ps_mask((A), (B), _CMP_UNORD_Q)
35471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpunord_ps_mask(k, A, B) \
35481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_UNORD_Q)
35491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpneq_ps_mask(A, B) \
35511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_ps_mask((A), (B), _CMP_NEQ_UQ)
35521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpneq_ps_mask(k, A, B) \
35531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_NEQ_UQ)
35541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpnlt_ps_mask(A, B) \
35561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_ps_mask((A), (B), _CMP_NLT_US)
35571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpnlt_ps_mask(k, A, B) \
35581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_NLT_US)
35591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpnle_ps_mask(A, B) \
35611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_ps_mask((A), (B), _CMP_NLE_US)
35621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpnle_ps_mask(k, A, B) \
35631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_NLE_US)
35641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpord_ps_mask(A, B) \
35661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_ps_mask((A), (B), _CMP_ORD_Q)
35671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpord_ps_mask(k, A, B) \
35681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_ps_mask((k), (A), (B), _CMP_ORD_Q)
35691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmp_round_pd_mask(A, B, P, R) __extension__ ({ \
35711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmppd512_mask((__v8df)(__m512d)(A), \
35721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8df)(__m512d)(B), (int)(P), \
35731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)-1, (int)(R)); })
35741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmp_round_pd_mask(U, A, B, P, R) __extension__ ({ \
35761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmppd512_mask((__v8df)(__m512d)(A), \
35771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8df)(__m512d)(B), (int)(P), \
35781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U), (int)(R)); })
35791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmp_pd_mask(A, B, P) \
35811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_cmp_round_pd_mask((A), (B), (P), _MM_FROUND_CUR_DIRECTION)
35821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmp_pd_mask(U, A, B, P) \
35831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_cmp_round_pd_mask((U), (A), (B), (P), _MM_FROUND_CUR_DIRECTION)
35841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpeq_pd_mask(A, B) \
35861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_pd_mask((A), (B), _CMP_EQ_OQ)
35871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpeq_pd_mask(k, A, B) \
35881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_EQ_OQ)
35891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmplt_pd_mask(A, B) \
35911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_pd_mask((A), (B), _CMP_LT_OS)
35921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmplt_pd_mask(k, A, B) \
35931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_LT_OS)
35941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
35951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmple_pd_mask(A, B) \
35961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_pd_mask((A), (B), _CMP_LE_OS)
35971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmple_pd_mask(k, A, B) \
35981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_LE_OS)
35991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpunord_pd_mask(A, B) \
36011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_pd_mask((A), (B), _CMP_UNORD_Q)
36021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpunord_pd_mask(k, A, B) \
36031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_UNORD_Q)
36041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpneq_pd_mask(A, B) \
36061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_pd_mask((A), (B), _CMP_NEQ_UQ)
36071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpneq_pd_mask(k, A, B) \
36081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_NEQ_UQ)
36091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpnlt_pd_mask(A, B) \
36111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_pd_mask((A), (B), _CMP_NLT_US)
36121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpnlt_pd_mask(k, A, B) \
36131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_NLT_US)
36141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpnle_pd_mask(A, B) \
36161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_pd_mask((A), (B), _CMP_NLE_US)
36171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpnle_pd_mask(k, A, B) \
36181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_NLE_US)
36191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmpord_pd_mask(A, B) \
36211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_cmp_pd_mask((A), (B), _CMP_ORD_Q)
36221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmpord_pd_mask(k, A, B) \
36231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_mask_cmp_pd_mask((k), (A), (B), _CMP_ORD_Q)
36241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Conversion */
36261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvtt_roundps_epu32(A, R) __extension__ ({ \
36281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvttps2udq512_mask((__v16sf)(__m512)(A), \
36291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_undefined_epi32(), \
36301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask16)-1, (int)(R)); })
36311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvtt_roundps_epu32(W, U, A, R) __extension__ ({ \
36331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvttps2udq512_mask((__v16sf)(__m512)(A), \
36341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)(__m512i)(W), \
36351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask16)(U), (int)(R)); })
36361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvtt_roundps_epu32(U, A, R) __extension__ ({ \
36381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvttps2udq512_mask((__v16sf)(__m512)(A), \
36391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_setzero_si512(), \
36401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask16)(U), (int)(R)); })
36411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
36441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvttps_epu32(__m512 __A)
36451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
36461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
36471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si)
36481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_si512 (),
36491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) -1,
36501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
36511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
36521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
36541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvttps_epu32 (__m512i __W, __mmask16 __U, __m512 __A)
36551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
36561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
36571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __W,
36581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U,
36591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _MM_FROUND_CUR_DIRECTION);
36601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
36611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
36631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvttps_epu32 (__mmask16 __U, __m512 __A)
36641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
36651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvttps2udq512_mask ((__v16sf) __A,
36661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) _mm512_setzero_si512 (),
36671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U,
36681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _MM_FROUND_CUR_DIRECTION);
36691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
36701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundepi32_ps(A, R) __extension__ ({ \
36721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(__m512i)(A), \
36731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_setzero_ps(), \
36741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)-1, (int)(R)); })
36751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundepi32_ps(W, U, A, R) __extension__ ({ \
36771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(__m512i)(A), \
36781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(W), \
36791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U), (int)(R)); })
36801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundepi32_ps(U, A, R) __extension__ ({ \
36821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_cvtdq2ps512_mask((__v16si)(__m512i)(A), \
36831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_setzero_ps(), \
36841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U), (int)(R)); })
36851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundepu32_ps(A, R) __extension__ ({ \
36871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(__m512i)(A), \
36881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)_mm512_setzero_ps(), \
36891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)-1, (int)(R)); })
36901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundepu32_ps(W, U, A, R) __extension__ ({ \
36921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(__m512i)(A), \
36931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(W), \
36941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
36951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
36961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundepu32_ps(U, A, R) __extension__ ({ \
36971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_cvtudq2ps512_mask((__v16si)(__m512i)(A), \
36981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)_mm512_setzero_ps(), \
36991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
37001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
37021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepu32_ps (__m512i __A)
37031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
37051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) _mm512_undefined_ps (),
37061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) -1,
37071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
37081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37101188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
37111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepu32_ps (__m512 __W, __mmask16 __U, __m512i __A)
37121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
37141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __W,
37151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
37161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
37171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
37201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepu32_ps (__mmask16 __U, __m512i __A)
37211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_cvtudq2ps512_mask ((__v16si) __A,
37231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) _mm512_setzero_ps (),
37241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
37251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
37261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
37291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi32_pd(__m256i __A)
37301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_cvtdq2pd512_mask ((__v8si) __A,
37321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df)
37331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _mm512_setzero_pd (),
37341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) -1);
37351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
37381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi32_pd (__m512d __W, __mmask8 __U, __m256i __A)
37391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_cvtdq2pd512_mask ((__v8si) __A,
37411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __W,
37421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U);
37431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
37461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi32_pd (__mmask8 __U, __m256i __A)
37471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_cvtdq2pd512_mask ((__v8si) __A,
37491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) _mm512_setzero_pd (),
37501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U);
37511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
37541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi32lo_pd(__m512i __A)
37551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) _mm512_cvtepi32_pd(_mm512_castsi512_si256(__A));
37571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
37601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi32lo_pd(__m512d __W, __mmask8 __U,__m512i __A)
37611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) _mm512_mask_cvtepi32_pd(__W, __U, _mm512_castsi512_si256(__A));
37631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
37661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi32_ps (__m512i __A)
37671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
37691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf) _mm512_undefined_ps (),
37701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) -1,
37711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
37721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
37751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi32_ps (__m512 __W, __mmask16 __U, __m512i __A)
37761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
37781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf) __W,
37791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) __U,
37801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
37811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
37841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi32_ps (__mmask16 __U, __m512i __A)
37851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_cvtdq2ps512_mask ((__v16si) __A,
37871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf) _mm512_setzero_ps (),
37881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) __U,
37891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
37901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
37911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
37921188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
37931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepu32_pd(__m256i __A)
37941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
37951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_cvtudq2pd512_mask ((__v8si) __A,
37961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df)
37971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _mm512_setzero_pd (),
37981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) -1);
37991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
38021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepu32_pd (__m512d __W, __mmask8 __U, __m256i __A)
38031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
38041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_cvtudq2pd512_mask ((__v8si) __A,
38051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __W,
38061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
38071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
38101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepu32_pd (__mmask8 __U, __m256i __A)
38111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
38121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_cvtudq2pd512_mask ((__v8si) __A,
38131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) _mm512_setzero_pd (),
38141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
38151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
38181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepu32lo_pd(__m512i __A)
38191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
38201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) _mm512_cvtepu32_pd(_mm512_castsi512_si256(__A));
38211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38231188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
38241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepu32lo_pd(__m512d __W, __mmask8 __U,__m512i __A)
38251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
38261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) _mm512_mask_cvtepu32_pd(__W, __U, _mm512_castsi512_si256(__A));
38271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundpd_ps(A, R) __extension__ ({ \
38301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256)__builtin_ia32_cvtpd2ps512_mask((__v8df)(__m512d)(A), \
38311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8sf)_mm256_setzero_ps(), \
38321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, (int)(R)); })
38331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundpd_ps(W, U, A, R) __extension__ ({ \
38351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256)__builtin_ia32_cvtpd2ps512_mask((__v8df)(__m512d)(A), \
38361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8sf)(__m256)(W), (__mmask8)(U), \
38371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
38381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundpd_ps(U, A, R) __extension__ ({ \
38401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256)__builtin_ia32_cvtpd2ps512_mask((__v8df)(__m512d)(A), \
38411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8sf)_mm256_setzero_ps(), \
38421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
38431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38441188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256 __DEFAULT_FN_ATTRS
38451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtpd_ps (__m512d __A)
38461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
38471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
38481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8sf) _mm256_undefined_ps (),
38491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) -1,
38501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
38511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256 __DEFAULT_FN_ATTRS
38541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtpd_ps (__m256 __W, __mmask8 __U, __m512d __A)
38551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
38561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
38571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8sf) __W,
38581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
38591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
38601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256 __DEFAULT_FN_ATTRS
38631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtpd_ps (__mmask8 __U, __m512d __A)
38641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
38651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256) __builtin_ia32_cvtpd2ps512_mask ((__v8df) __A,
38661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8sf) _mm256_setzero_ps (),
38671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
38681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
38691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
38721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtpd_pslo (__m512d __A)
38731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
38741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_shufflevector((__v8sf) _mm512_cvtpd_ps(__A),
38751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8sf) _mm256_setzero_ps (),
38761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
38771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38791188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
38801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtpd_pslo (__m512 __W, __mmask8 __U,__m512d __A)
38811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
38821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_shufflevector (
38831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8sf) _mm512_mask_cvtpd_ps (_mm512_castps512_ps256(__W),
38841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               __U, __A),
38851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8sf) _mm256_setzero_ps (),
38861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
38871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
38881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundps_ph(A, I) __extension__ ({ \
38901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \
38911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16hi)_mm256_undefined_si256(), \
38921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)-1); })
38931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundps_ph(U, W, A, I) __extension__ ({ \
38951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \
38961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16hi)(__m256i)(U), \
38971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(W)); })
38981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
38991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundps_ph(W, A, I) __extension__ ({ \
39001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \
39011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16hi)_mm256_setzero_si256(), \
39021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(W)); })
39031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvtps_ph(A, I) __extension__ ({ \
39051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \
39061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16hi)_mm256_setzero_si256(), \
39071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)-1); })
39081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvtps_ph(U, W, A, I) __extension__ ({ \
39101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \
39111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16hi)(__m256i)(U), \
39121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(W)); })
39131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvtps_ph(W, A, I) __extension__ ({\
39151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_vcvtps2ph512_mask((__v16sf)(__m512)(A), (int)(I), \
39161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16hi)_mm256_setzero_si256(), \
39171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(W)); })
39181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundph_ps(A, R) __extension__ ({ \
39201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(__m256i)(A), \
39211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)_mm512_undefined_ps(), \
39221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)-1, (int)(R)); })
39231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundph_ps(W, U, A, R) __extension__ ({ \
39251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(__m256i)(A), \
39261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(W), \
39271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
39281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundph_ps(U, A, R) __extension__ ({ \
39301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_vcvtph2ps512_mask((__v16hi)(__m256i)(A), \
39311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)_mm512_setzero_ps(), \
39321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
39331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39351188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic  __inline __m512 __DEFAULT_FN_ATTRS
39361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtph_ps(__m256i __A)
39371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
39381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
39391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf)
39401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _mm512_setzero_ps (),
39411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) -1,
39421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
39431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
39441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
39461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtph_ps (__m512 __W, __mmask16 __U, __m256i __A)
39471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
39481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
39491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __W,
39501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
39511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
39521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
39531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
39551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtph_ps (__mmask16 __U, __m256i __A)
39561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
39571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vcvtph2ps512_mask ((__v16hi) __A,
39581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) _mm512_setzero_ps (),
39591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
39601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
39611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
39621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvtt_roundpd_epi32(A, R) __extension__ ({ \
39641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df)(__m512d)(A), \
39651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8si)_mm256_setzero_si256(), \
39661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)-1, (int)(R)); })
39671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvtt_roundpd_epi32(W, U, A, R) __extension__ ({ \
39691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df)(__m512d)(A), \
39701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8si)(__m256i)(W), \
39711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
39721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvtt_roundpd_epi32(U, A, R) __extension__ ({ \
39741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df)(__m512d)(A), \
39751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8si)_mm256_setzero_si256(), \
39761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
39771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39781188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m256i __DEFAULT_FN_ATTRS
39791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvttpd_epi32(__m512d __a)
39801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
39811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i)__builtin_ia32_cvttpd2dq512_mask((__v8df) __a,
39821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v8si)_mm256_setzero_si256(),
39831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask8) -1,
39841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                    _MM_FROUND_CUR_DIRECTION);
39851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
39861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39871188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
39881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvttpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A)
39891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
39901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
39911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8si) __W,
39921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
39931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
39941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
39951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
39961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
39971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvttpd_epi32 (__mmask8 __U, __m512d __A)
39981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
39991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvttpd2dq512_mask ((__v8df) __A,
40001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8si) _mm256_setzero_si256 (),
40011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
40021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
40031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
40041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvtt_roundps_epi32(A, R) __extension__ ({ \
40061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvttps2dq512_mask((__v16sf)(__m512)(A), \
40071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_setzero_si512(), \
40081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)-1, (int)(R)); })
40091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvtt_roundps_epi32(W, U, A, R) __extension__ ({ \
40111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvttps2dq512_mask((__v16sf)(__m512)(A), \
40121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(W), \
40131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(U), (int)(R)); })
40141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvtt_roundps_epi32(U, A, R) __extension__ ({ \
40161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvttps2dq512_mask((__v16sf)(__m512)(A), \
40171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_setzero_si512(), \
40181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(U), (int)(R)); })
40191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
40211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvttps_epi32(__m512 __a)
40221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
40231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)
40241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    __builtin_ia32_cvttps2dq512_mask((__v16sf) __a,
40251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (__v16si) _mm512_setzero_si512 (),
40261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (__mmask16) -1, _MM_FROUND_CUR_DIRECTION);
40271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
40281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40291188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
40301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvttps_epi32 (__m512i __W, __mmask16 __U, __m512 __A)
40311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
40321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
40331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si) __W,
40341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) __U,
40351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
40361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
40371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40381188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
40391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvttps_epi32 (__mmask16 __U, __m512 __A)
40401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
40411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvttps2dq512_mask ((__v16sf) __A,
40421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si) _mm512_setzero_si512 (),
40431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) __U,
40441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
40451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
40461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundps_epi32(A, R) __extension__ ({ \
40481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvtps2dq512_mask((__v16sf)(__m512)(A), \
40491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16si)_mm512_setzero_si512(), \
40501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)-1, (int)(R)); })
40511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundps_epi32(W, U, A, R) __extension__ ({ \
40531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvtps2dq512_mask((__v16sf)(__m512)(A), \
40541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16si)(__m512i)(W), \
40551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
40561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundps_epi32(U, A, R) __extension__ ({ \
40581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvtps2dq512_mask((__v16sf)(__m512)(A), \
40591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16si)_mm512_setzero_si512(), \
40601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
40611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
40631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtps_epi32 (__m512 __A)
40641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
40651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
40661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) _mm512_undefined_epi32 (),
40671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) -1,
40681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
40691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
40701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
40721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtps_epi32 (__m512i __W, __mmask16 __U, __m512 __A)
40731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
40741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
40751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) __W,
40761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
40771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
40781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
40791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
40811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtps_epi32 (__mmask16 __U, __m512 __A)
40821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
40831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvtps2dq512_mask ((__v16sf) __A,
40841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si)
40851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_si512 (),
40861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U,
40871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
40881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
40891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundpd_epi32(A, R) __extension__ ({ \
40911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvtpd2dq512_mask((__v8df)(__m512d)(A), \
40921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8si)_mm256_setzero_si256(), \
40931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
40941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
40951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundpd_epi32(W, U, A, R) __extension__ ({ \
40961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvtpd2dq512_mask((__v8df)(__m512d)(A), \
40971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8si)(__m256i)(W), \
40981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
40991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundpd_epi32(U, A, R) __extension__ ({ \
41011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvtpd2dq512_mask((__v8df)(__m512d)(A), \
41021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8si)_mm256_setzero_si256(), \
41031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
41041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41051188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
41061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtpd_epi32 (__m512d __A)
41071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
41081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
41091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8si)
41101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm256_undefined_si256 (),
41111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) -1,
41121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
41131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
41141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41151188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
41161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtpd_epi32 (__m256i __W, __mmask8 __U, __m512d __A)
41171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
41181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
41191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8si) __W,
41201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) __U,
41211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
41221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
41231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
41251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtpd_epi32 (__mmask8 __U, __m512d __A)
41261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
41271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvtpd2dq512_mask ((__v8df) __A,
41281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8si)
41291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm256_setzero_si256 (),
41301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) __U,
41311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
41321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
41331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundps_epu32(A, R) __extension__ ({ \
41351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvtps2udq512_mask((__v16sf)(__m512)(A), \
41361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_setzero_si512(), \
41371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)-1, (int)(R)); })
41381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundps_epu32(W, U, A, R) __extension__ ({ \
41401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvtps2udq512_mask((__v16sf)(__m512)(A), \
41411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(W), \
41421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(U), (int)(R)); })
41431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundps_epu32(U, A, R) __extension__ ({ \
41451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_cvtps2udq512_mask((__v16sf)(__m512)(A), \
41461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_setzero_si512(), \
41471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(U), (int)(R)); })
41481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41491188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
41501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtps_epu32 ( __m512 __A)
41511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
41521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,\
41531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si)\
41541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_undefined_epi32 (),\
41551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) -1,\
41561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);\
41571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
41581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
41601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtps_epu32 (__m512i __W, __mmask16 __U, __m512 __A)
41611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
41621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
41631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si) __W,
41641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) __U,
41651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
41661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
41671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
41691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtps_epu32 ( __mmask16 __U, __m512 __A)
41701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
41711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_cvtps2udq512_mask ((__v16sf) __A,
41721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si)
41731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_si512 (),
41741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) __U ,
41751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
41761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
41771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundpd_epu32(A, R) __extension__ ({ \
41791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvtpd2udq512_mask((__v8df)(__m512d)(A), \
41801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8si)_mm256_setzero_si256(), \
41811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)-1, (int)(R)); })
41821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundpd_epu32(W, U, A, R) __extension__ ({ \
41841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvtpd2udq512_mask((__v8df)(__m512d)(A), \
41851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8si)(W), \
41861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
41871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundpd_epu32(U, A, R) __extension__ ({ \
41891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvtpd2udq512_mask((__v8df)(__m512d)(A), \
41901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8si)_mm256_setzero_si256(), \
41911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
41921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
41931188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
41941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtpd_epu32 (__m512d __A)
41951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
41961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
41971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8si)
41981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm256_undefined_si256 (),
41991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) -1,
42001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
42011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42031188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
42041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A)
42051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
42071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8si) __W,
42081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
42091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
42101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
42131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtpd_epu32 (__mmask8 __U, __m512d __A)
42141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvtpd2udq512_mask ((__v8df) __A,
42161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8si)
42171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm256_setzero_si256 (),
42181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
42191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
42201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Unpack and Interleave */
42231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
42251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_unpackhi_pd(__m512d __a, __m512d __b)
42261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b,
42281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6);
42291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42311188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
42321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_unpackhi_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
42331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
42351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_unpackhi_pd(__A, __B),
42361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)__W);
42371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
42401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_unpackhi_pd(__mmask8 __U, __m512d __A, __m512d __B)
42411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
42431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_unpackhi_pd(__A, __B),
42441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_setzero_pd());
42451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
42481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_unpacklo_pd(__m512d __a, __m512d __b)
42491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_shufflevector((__v8df)__a, (__v8df)__b,
42511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6);
42521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
42551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_unpacklo_pd(__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
42561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
42581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_unpacklo_pd(__A, __B),
42591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)__W);
42601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
42631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_unpacklo_pd (__mmask8 __U, __m512d __A, __m512d __B)
42641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8) __U,
42661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_unpacklo_pd(__A, __B),
42671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_setzero_pd());
42681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
42711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_unpackhi_ps(__m512 __a, __m512 __b)
42721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b,
42741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         2,    18,    3,    19,
42751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         2+4,  18+4,  3+4,  19+4,
42761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         2+8,  18+8,  3+8,  19+8,
42771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         2+12, 18+12, 3+12, 19+12);
42781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
42811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_unpackhi_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
42821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16) __U,
42841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_unpackhi_ps(__A, __B),
42851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)__W);
42861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
42891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_unpackhi_ps (__mmask16 __U, __m512 __A, __m512 __B)
42901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16) __U,
42921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_unpackhi_ps(__A, __B),
42931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_setzero_ps());
42941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
42951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
42961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
42971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_unpacklo_ps(__m512 __a, __m512 __b)
42981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
42991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_shufflevector((__v16sf)__a, (__v16sf)__b,
43001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         0,    16,    1,    17,
43011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         0+4,  16+4,  1+4,  17+4,
43021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         0+8,  16+8,  1+8,  17+8,
43031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         0+12, 16+12, 1+12, 17+12);
43041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
43071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_unpacklo_ps(__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
43081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16) __U,
43101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_unpacklo_ps(__A, __B),
43111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)__W);
43121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43141188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
43151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_unpacklo_ps (__mmask16 __U, __m512 __A, __m512 __B)
43161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16) __U,
43181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_unpacklo_ps(__A, __B),
43191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_setzero_ps());
43201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_unpackhi_epi32(__m512i __A, __m512i __B)
43241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B,
43261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          2,    18,    3,    19,
43271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          2+4,  18+4,  3+4,  19+4,
43281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          2+8,  18+8,  3+8,  19+8,
43291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          2+12, 18+12, 3+12, 19+12);
43301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43321188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_unpackhi_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
43341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U,
43361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16si)_mm512_unpackhi_epi32(__A, __B),
43371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16si)__W);
43381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_unpackhi_epi32(__mmask16 __U, __m512i __A, __m512i __B)
43421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U,
43441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16si)_mm512_unpackhi_epi32(__A, __B),
43451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16si)_mm512_setzero_si512());
43461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_unpacklo_epi32(__m512i __A, __m512i __B)
43501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_shufflevector((__v16si)__A, (__v16si)__B,
43521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0,    16,    1,    17,
43531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0+4,  16+4,  1+4,  17+4,
43541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0+8,  16+8,  1+8,  17+8,
43551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0+12, 16+12, 1+12, 17+12);
43561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43581188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_unpacklo_epi32(__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
43601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U,
43621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16si)_mm512_unpacklo_epi32(__A, __B),
43631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16si)__W);
43641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43661188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_unpacklo_epi32(__mmask16 __U, __m512i __A, __m512i __B)
43681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16) __U,
43701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16si)_mm512_unpacklo_epi32(__A, __B),
43711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16si)_mm512_setzero_si512());
43721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_unpackhi_epi64(__m512i __A, __m512i __B)
43761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B,
43781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          1, 9, 1+2, 9+2, 1+4, 9+4, 1+6, 9+6);
43791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43811188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_unpackhi_epi64(__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
43831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U,
43851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_unpackhi_epi64(__A, __B),
43861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)__W);
43871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_unpackhi_epi64(__mmask8 __U, __m512i __A, __m512i __B)
43911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
43921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U,
43931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_unpackhi_epi64(__A, __B),
43941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_setzero_si512());
43951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
43961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
43971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
43981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_unpacklo_epi64 (__m512i __A, __m512i __B)
43991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_shufflevector((__v8di)__A, (__v8di)__B,
44011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0, 8, 0+2, 8+2, 0+4, 8+4, 0+6, 8+6);
44021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44041188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
44051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_unpacklo_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
44061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U,
44081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_unpacklo_epi64(__A, __B),
44091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)__W);
44101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
44131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_unpacklo_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
44141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8) __U,
44161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_unpacklo_epi64(__A, __B),
44171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_setzero_si512());
44181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Bit Test */
44211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __mmask16 __DEFAULT_FN_ATTRS
44231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_test_epi32_mask(__m512i __A, __m512i __B)
44241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_ptestmd512 ((__v16si) __A,
44261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__v16si) __B,
44271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask16) -1);
44281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
44311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_test_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
44321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_ptestmd512 ((__v16si) __A,
44341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) __B, __U);
44351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __mmask8 __DEFAULT_FN_ATTRS
44381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_test_epi64_mask(__m512i __A, __m512i __B)
44391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8) __builtin_ia32_ptestmq512 ((__v8di) __A,
44411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __B,
44421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) -1);
44431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
44461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_test_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
44471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8) __builtin_ia32_ptestmq512 ((__v8di) __A, (__v8di) __B, __U);
44491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* SIMD load ops */
44531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
44551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_loadu_si512 (void const *__P)
44561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *) __P,
44581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si)
44591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_si512 (),
44601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) -1);
44611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
44641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_loadu_epi32 (__m512i __W, __mmask16 __U, void const *__P)
44651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *) __P,
44671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si) __W,
44681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) __U);
44691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44721188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
44731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_loadu_epi32(__mmask16 __U, void const *__P)
44741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_loaddqusi512_mask ((const int *)__P,
44761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v16si)
44771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _mm512_setzero_si512 (),
44781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask16) __U);
44791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44811188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
44821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_loadu_epi64 (__m512i __W, __mmask8 __U, void const *__P)
44831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *) __P,
44851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8di) __W,
44861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
44871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
44901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_loadu_epi64(__mmask8 __U, void const *__P)
44911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
44921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_loaddqudi512_mask ((const long long *)__P,
44931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__v8di)
44941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     _mm512_setzero_si512 (),
44951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                     (__mmask8) __U);
44961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
44971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
44981188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
44991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_loadu_ps (__m512 __W, __mmask16 __U, void const *__P)
45001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_loadups512_mask ((const float *) __P,
45021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf) __W,
45031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
45041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
45071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_loadu_ps(__mmask16 __U, void const *__P)
45081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_loadups512_mask ((const float *)__P,
45101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__v16sf)
45111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  _mm512_setzero_ps (),
45121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__mmask16) __U);
45131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45151188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
45161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_loadu_pd (__m512d __W, __mmask8 __U, void const *__P)
45171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_loadupd512_mask ((const double *) __P,
45191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __W,
45201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U);
45211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45231188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
45241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_loadu_pd(__mmask8 __U, void const *__P)
45251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_loadupd512_mask ((const double *)__P,
45271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v8df)
45281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _mm512_setzero_pd (),
45291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask8) __U);
45301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45321188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
45331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_loadu_pd(double const *__p)
45341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  struct __loadu_pd {
45361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    __m512d __v;
45371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  } __attribute__((__packed__, __may_alias__));
45381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return ((struct __loadu_pd*)__p)->__v;
45391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45411188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
45421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_loadu_ps(float const *__p)
45431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  struct __loadu_ps {
45451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    __m512 __v;
45461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  } __attribute__((__packed__, __may_alias__));
45471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return ((struct __loadu_ps*)__p)->__v;
45481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45501188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
45511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_load_ps(float const *__p)
45521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *)__p,
45541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__v16sf)
45551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  _mm512_setzero_ps (),
45561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__mmask16) -1);
45571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
45601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_load_ps (__m512 __W, __mmask16 __U, void const *__P)
45611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *) __P,
45631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf) __W,
45641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
45651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45671188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
45681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_load_ps(__mmask16 __U, void const *__P)
45691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_loadaps512_mask ((const __v16sf *)__P,
45711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__v16sf)
45721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  _mm512_setzero_ps (),
45731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__mmask16) __U);
45741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
45771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_load_pd(double const *__p)
45781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *)__p,
45801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v8df)
45811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _mm512_setzero_pd (),
45821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask8) -1);
45831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
45861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_load_pd (__m512d __W, __mmask8 __U, void const *__P)
45871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *) __P,
45891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                          (__v8df) __W,
45901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                          (__mmask8) __U);
45911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
45921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
45931188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
45941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_load_pd(__mmask8 __U, void const *__P)
45951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
45961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_loadapd512_mask ((const __v8df *)__P,
45971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__v8df)
45981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   _mm512_setzero_pd (),
45991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask8) __U);
46001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
46031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_load_si512 (void const *__P)
46041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return *(__m512i *) __P;
46061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
46091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_load_epi32 (void const *__P)
46101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return *(__m512i *) __P;
46121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46141188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
46151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_load_epi64 (void const *__P)
46161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return *(__m512i *) __P;
46181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* SIMD store ops */
46211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_storeu_epi64(void *__P, __mmask8 __U, __m512i __A)
46241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_storedqudi512_mask ((long long *)__P, (__v8di) __A,
46261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (__mmask8) __U);
46271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46291188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_storeu_si512 (void *__P, __m512i __A)
46311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_storedqusi512_mask ((int *) __P, (__v16si) __A,
46331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask16) -1);
46341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_storeu_epi32(void *__P, __mmask16 __U, __m512i __A)
46381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_storedqusi512_mask ((int *)__P, (__v16si) __A,
46401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (__mmask16) __U);
46411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_storeu_pd(void *__P, __mmask8 __U, __m512d __A)
46451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_storeupd512_mask ((double *)__P, (__v8df) __A, (__mmask8) __U);
46471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46491188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_storeu_pd(void *__P, __m512d __A)
46511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_storeupd512_mask((double *)__P, (__v8df)__A, (__mmask8)-1);
46531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46551188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_storeu_ps(void *__P, __mmask16 __U, __m512 __A)
46571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_storeups512_mask ((float *)__P, (__v16sf) __A,
46591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__mmask16) __U);
46601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_storeu_ps(void *__P, __m512 __A)
46641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_storeups512_mask((float *)__P, (__v16sf)__A, (__mmask16)-1);
46661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_store_pd(void *__P, __mmask8 __U, __m512d __A)
46701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_storeapd512_mask ((__v8df *)__P, (__v8df) __A, (__mmask8) __U);
46721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_store_pd(void *__P, __m512d __A)
46761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  *(__m512d*)__P = __A;
46781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_store_ps(void *__P, __mmask16 __U, __m512 __A)
46821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_storeaps512_mask ((__v16sf *)__P, (__v16sf) __A,
46841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__mmask16) __U);
46851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46871188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_store_ps(void *__P, __m512 __A)
46891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  *(__m512*)__P = __A;
46911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46931188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
46941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_store_si512 (void *__P, __m512i __A)
46951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
46961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  *(__m512i *) __P = __A;
46971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
46981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
46991188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
47001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_store_epi32 (void *__P, __m512i __A)
47011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
47021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  *(__m512i *) __P = __A;
47031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47051188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline void __DEFAULT_FN_ATTRS
47061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_store_epi64 (void *__P, __m512i __A)
47071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
47081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  *(__m512i *) __P = __A;
47091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Mask ops */
47121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47131188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __mmask16 __DEFAULT_FN_ATTRS
47141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_knot(__mmask16 __M)
47151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
47161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_ia32_knothi(__M);
47171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker/* Integer compare */
47201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47211188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
47221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpeq_epi32_mask(__m512i __a, __m512i __b) {
47231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_pcmpeqd512_mask((__v16si)__a, (__v16si)__b,
47241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask16)-1);
47251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47271188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
47281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpeq_epi32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
47291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_pcmpeqd512_mask((__v16si)__a, (__v16si)__b,
47301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   __u);
47311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47331188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
47341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpeq_epu32_mask(__m512i __a, __m512i __b) {
47351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 0,
47361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__mmask16)-1);
47371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
47401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpeq_epu32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
47411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 0,
47421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 __u);
47431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
47461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpeq_epi64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
47471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_pcmpeqq512_mask((__v8di)__a, (__v8di)__b,
47481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  __u);
47491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47511188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
47521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpeq_epi64_mask(__m512i __a, __m512i __b) {
47531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_pcmpeqq512_mask((__v8di)__a, (__v8di)__b,
47541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__mmask8)-1);
47551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
47581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpeq_epu64_mask(__m512i __a, __m512i __b) {
47591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 0,
47601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)-1);
47611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
47641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpeq_epu64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
47651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 0,
47661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
47671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47691188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
47701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpge_epi32_mask(__m512i __a, __m512i __b) {
47711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)__a, (__v16si)__b, 5,
47721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask16)-1);
47731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47751188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
47761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpge_epi32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
47771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)__a, (__v16si)__b, 5,
47781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
47791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47811188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
47821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpge_epu32_mask(__m512i __a, __m512i __b) {
47831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 5,
47841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__mmask16)-1);
47851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47871188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
47881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpge_epu32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
47891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 5,
47901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 __u);
47911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47931188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
47941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpge_epi64_mask(__m512i __a, __m512i __b) {
47951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)__a, (__v8di)__b, 5,
47961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)-1);
47971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
47981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
47991188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
48001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpge_epi64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
48011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)__a, (__v8di)__b, 5,
48021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               __u);
48031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48051188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
48061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpge_epu64_mask(__m512i __a, __m512i __b) {
48071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 5,
48081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)-1);
48091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
48121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpge_epu64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
48131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 5,
48141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
48151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
48181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpgt_epi32_mask(__m512i __a, __m512i __b) {
48191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_pcmpgtd512_mask((__v16si)__a, (__v16si)__b,
48201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (__mmask16)-1);
48211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48231188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
48241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpgt_epi32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
48251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_pcmpgtd512_mask((__v16si)__a, (__v16si)__b,
48261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   __u);
48271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48291188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
48301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpgt_epu32_mask(__m512i __a, __m512i __b) {
48311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 6,
48321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__mmask16)-1);
48331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48351188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
48361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpgt_epu32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
48371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 6,
48381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 __u);
48391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48411188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
48421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpgt_epi64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
48431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_pcmpgtq512_mask((__v8di)__a, (__v8di)__b,
48441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  __u);
48451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
48481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpgt_epi64_mask(__m512i __a, __m512i __b) {
48491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_pcmpgtq512_mask((__v8di)__a, (__v8di)__b,
48501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (__mmask8)-1);
48511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
48541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpgt_epu64_mask(__m512i __a, __m512i __b) {
48551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 6,
48561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)-1);
48571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
48601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpgt_epu64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
48611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 6,
48621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
48631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
48661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmple_epi32_mask(__m512i __a, __m512i __b) {
48671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)__a, (__v16si)__b, 2,
48681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask16)-1);
48691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
48721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmple_epi32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
48731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)__a, (__v16si)__b, 2,
48741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
48751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48771188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
48781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmple_epu32_mask(__m512i __a, __m512i __b) {
48791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 2,
48801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__mmask16)-1);
48811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
48841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmple_epu32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
48851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 2,
48861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 __u);
48871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
48901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmple_epi64_mask(__m512i __a, __m512i __b) {
48911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)__a, (__v8di)__b, 2,
48921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)-1);
48931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
48941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
48951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
48961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmple_epi64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
48971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)__a, (__v8di)__b, 2,
48981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               __u);
48991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
49021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmple_epu64_mask(__m512i __a, __m512i __b) {
49031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 2,
49041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)-1);
49051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49071188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
49081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmple_epu64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
49091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 2,
49101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
49111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49131188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
49141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmplt_epi32_mask(__m512i __a, __m512i __b) {
49151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)__a, (__v16si)__b, 1,
49161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask16)-1);
49171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
49201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmplt_epi32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
49211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)__a, (__v16si)__b, 1,
49221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
49231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49251188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
49261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmplt_epu32_mask(__m512i __a, __m512i __b) {
49271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 1,
49281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__mmask16)-1);
49291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49311188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
49321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmplt_epu32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
49331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 1,
49341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 __u);
49351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
49381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmplt_epi64_mask(__m512i __a, __m512i __b) {
49391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)__a, (__v8di)__b, 1,
49401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)-1);
49411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
49441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmplt_epi64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
49451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)__a, (__v8di)__b, 1,
49461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               __u);
49471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49491188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
49501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmplt_epu64_mask(__m512i __a, __m512i __b) {
49511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 1,
49521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)-1);
49531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49551188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
49561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmplt_epu64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
49571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 1,
49581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
49591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49611188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
49621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpneq_epi32_mask(__m512i __a, __m512i __b) {
49631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)__a, (__v16si)__b, 4,
49641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask16)-1);
49651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49671188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
49681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpneq_epi32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
49691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)__a, (__v16si)__b, 4,
49701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
49711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49731188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
49741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpneq_epu32_mask(__m512i __a, __m512i __b) {
49751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 4,
49761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__mmask16)-1);
49771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49791188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
49801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpneq_epu32_mask(__mmask16 __u, __m512i __a, __m512i __b) {
49811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)__a, (__v16si)__b, 4,
49821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 __u);
49831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
49861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpneq_epi64_mask(__m512i __a, __m512i __b) {
49871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)__a, (__v8di)__b, 4,
49881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)-1);
49891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
49921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpneq_epi64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
49931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)__a, (__v8di)__b, 4,
49941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               __u);
49951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
49961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
49971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
49981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cmpneq_epu64_mask(__m512i __a, __m512i __b) {
49991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 4,
50001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)-1);
50011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50031188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
50041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cmpneq_epu64_mask(__mmask8 __u, __m512i __a, __m512i __b) {
50051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)__a, (__v8di)__b, 4,
50061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                __u);
50071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi8_epi32(__m128i __A)
50111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  /* This function always performs a signed extension, but __v16qi is a char
50131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker     which may be signed or unsigned, so use __v16qs. */
50141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector((__v16qs)__A, __v16si);
50151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi8_epi32(__m512i __W, __mmask16 __U, __m128i __A)
50191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
50211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_cvtepi8_epi32(__A),
50221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)__W);
50231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50251188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi8_epi32(__mmask16 __U, __m128i __A)
50271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
50291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_cvtepi8_epi32(__A),
50301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_setzero_si512());
50311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50331188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi8_epi64(__m128i __A)
50351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  /* This function always performs a signed extension, but __v16qi is a char
50371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker     which may be signed or unsigned, so use __v16qs. */
50381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qs)__A, (__v16qs)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di);
50391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50411188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi8_epi64(__m512i __W, __mmask8 __U, __m128i __A)
50431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
50451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepi8_epi64(__A),
50461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__W);
50471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50491188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi8_epi64(__mmask8 __U, __m128i __A)
50511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
50531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepi8_epi64(__A),
50541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_setzero_si512 ());
50551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi32_epi64(__m256i __X)
50591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector((__v8si)__X, __v8di);
50611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi32_epi64(__m512i __W, __mmask8 __U, __m256i __X)
50651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
50671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepi32_epi64(__X),
50681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__W);
50691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi32_epi64(__mmask8 __U, __m256i __X)
50731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
50751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepi32_epi64(__X),
50761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_setzero_si512());
50771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50791188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi16_epi32(__m256i __A)
50811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector((__v16hi)__A, __v16si);
50831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi16_epi32(__m512i __W, __mmask16 __U, __m256i __A)
50871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
50891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_cvtepi16_epi32(__A),
50901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)__W);
50911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
50921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
50931188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
50941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi16_epi32(__mmask16 __U, __m256i __A)
50951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
50961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
50971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_cvtepi16_epi32(__A),
50981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_setzero_si512 ());
50991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi16_epi64(__m128i __A)
51031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector((__v8hi)__A, __v8di);
51051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51071188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi16_epi64(__m512i __W, __mmask8 __U, __m128i __A)
51091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
51111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepi16_epi64(__A),
51121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__W);
51131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51151188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi16_epi64(__mmask8 __U, __m128i __A)
51171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
51191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepi16_epi64(__A),
51201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_setzero_si512());
51211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51231188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepu8_epi32(__m128i __A)
51251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector((__v16qu)__A, __v16si);
51271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51291188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepu8_epi32(__m512i __W, __mmask16 __U, __m128i __A)
51311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
51331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_cvtepu8_epi32(__A),
51341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)__W);
51351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepu8_epi32(__mmask16 __U, __m128i __A)
51391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
51411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_cvtepu8_epi32(__A),
51421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)_mm512_setzero_si512());
51431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepu8_epi64(__m128i __A)
51471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector(__builtin_shufflevector((__v16qu)__A, (__v16qu)__A, 0, 1, 2, 3, 4, 5, 6, 7), __v8di);
51491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51511188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepu8_epi64(__m512i __W, __mmask8 __U, __m128i __A)
51531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
51551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepu8_epi64(__A),
51561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__W);
51571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepu8_epi64(__mmask8 __U, __m128i __A)
51611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
51631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepu8_epi64(__A),
51641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_setzero_si512());
51651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51671188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepu32_epi64(__m256i __X)
51691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector((__v8su)__X, __v8di);
51711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51731188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepu32_epi64(__m512i __W, __mmask8 __U, __m256i __X)
51751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
51771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepu32_epi64(__X),
51781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__W);
51791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51811188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepu32_epi64(__mmask8 __U, __m256i __X)
51831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
51851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepu32_epi64(__X),
51861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_setzero_si512());
51871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepu16_epi32(__m256i __A)
51911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector((__v16hu)__A, __v16si);
51931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
51941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
51951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
51961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepu16_epi32(__m512i __W, __mmask16 __U, __m256i __A)
51971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
51981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
51991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_cvtepu16_epi32(__A),
52001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)__W);
52011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52031188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepu16_epi32(__mmask16 __U, __m256i __A)
52051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectd_512((__mmask16)__U,
52071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_cvtepu16_epi32(__A),
52081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)_mm512_setzero_si512());
52091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepu16_epi64(__m128i __A)
52131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_convertvector((__v8hu)__A, __v8di);
52151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepu16_epi64(__m512i __W, __mmask8 __U, __m128i __A)
52191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
52211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepu16_epi64(__A),
52221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)__W);
52231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52251188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepu16_epi64(__mmask8 __U, __m128i __A)
52271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i)__builtin_ia32_selectq_512((__mmask8)__U,
52291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_cvtepu16_epi64(__A),
52301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)_mm512_setzero_si512());
52311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52331188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_rorv_epi32 (__m512i __A, __m512i __B)
52351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prorvd512_mask ((__v16si) __A,
52371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
52381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
52391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
52401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
52411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_rorv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
52451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prorvd512_mask ((__v16si) __A,
52471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
52481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __W,
52491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
52501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_rorv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
52541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prorvd512_mask ((__v16si) __A,
52561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
52571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
52581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
52591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
52601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_rorv_epi64 (__m512i __A, __m512i __B)
52641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prorvq512_mask ((__v8di) __A,
52661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
52671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
52681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
52691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
52701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52721188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_rorv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
52741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prorvq512_mask ((__v8di) __A,
52761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
52771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __W,
52781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
52791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52811188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
52821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_rorv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
52831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
52841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prorvq512_mask ((__v8di) __A,
52851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
52861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
52871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
52881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
52891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
52901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmp_epi32_mask(a, b, p) __extension__ ({ \
52941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)(__m512i)(a), \
52951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)(__m512i)(b), (int)(p), \
52961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)-1); })
52971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
52981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmp_epu32_mask(a, b, p) __extension__ ({ \
52991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)(__m512i)(a), \
53001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16si)(__m512i)(b), (int)(p), \
53011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)-1); })
53021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmp_epi64_mask(a, b, p) __extension__ ({ \
53041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)(__m512i)(a), \
53051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)(__m512i)(b), (int)(p), \
53061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1); })
53071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cmp_epu64_mask(a, b, p) __extension__ ({ \
53091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)(__m512i)(a), \
53101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)(__m512i)(b), (int)(p), \
53111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)-1); })
53121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmp_epi32_mask(m, a, b, p) __extension__ ({ \
53141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask16)__builtin_ia32_cmpd512_mask((__v16si)(__m512i)(a), \
53151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)(__m512i)(b), (int)(p), \
53161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(m)); })
53171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmp_epu32_mask(m, a, b, p) __extension__ ({ \
53191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask16)__builtin_ia32_ucmpd512_mask((__v16si)(__m512i)(a), \
53201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16si)(__m512i)(b), (int)(p), \
53211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(m)); })
53221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmp_epi64_mask(m, a, b, p) __extension__ ({ \
53241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpq512_mask((__v8di)(__m512i)(a), \
53251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)(__m512i)(b), (int)(p), \
53261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(m)); })
53271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cmp_epu64_mask(m, a, b, p) __extension__ ({ \
53291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_ucmpq512_mask((__v8di)(__m512i)(a), \
53301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)(__m512i)(b), (int)(p), \
53311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(m)); })
53321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_rol_epi32(a, b) __extension__ ({ \
53341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prold512_mask((__v16si)(__m512i)(a), (int)(b), \
53351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16si)_mm512_setzero_si512(), \
53361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)-1); })
53371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_rol_epi32(W, U, a, b) __extension__ ({ \
53391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prold512_mask((__v16si)(__m512i)(a), (int)(b), \
53401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16si)(__m512i)(W), \
53411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)(U)); })
53421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_rol_epi32(U, a, b) __extension__ ({ \
53441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prold512_mask((__v16si)(__m512i)(a), (int)(b), \
53451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16si)_mm512_setzero_si512(), \
53461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)(U)); })
53471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_rol_epi64(a, b) __extension__ ({ \
53491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prolq512_mask((__v8di)(__m512i)(a), (int)(b), \
53501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_setzero_si512(), \
53511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1); })
53521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_rol_epi64(W, U, a, b) __extension__ ({ \
53541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prolq512_mask((__v8di)(__m512i)(a), (int)(b), \
53551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)(__m512i)(W), (__mmask8)(U)); })
53561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_rol_epi64(U, a, b) __extension__ ({ \
53581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prolq512_mask((__v8di)(__m512i)(a), (int)(b), \
53591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_setzero_si512(), \
53601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(U)); })
53611188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
53621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_rolv_epi32 (__m512i __A, __m512i __B)
53631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
53641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prolvd512_mask ((__v16si) __A,
53651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
53661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
53671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
53681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
53691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
53701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
53721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_rolv_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m512i __B)
53731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
53741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prolvd512_mask ((__v16si) __A,
53751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
53761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __W,
53771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
53781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
53791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
53811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_rolv_epi32 (__mmask16 __U, __m512i __A, __m512i __B)
53821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
53831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prolvd512_mask ((__v16si) __A,
53841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __B,
53851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
53861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
53871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
53881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
53891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
53901188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
53911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_rolv_epi64 (__m512i __A, __m512i __B)
53921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
53931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prolvq512_mask ((__v8di) __A,
53941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
53951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
53961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
53971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
53981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
53991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
54011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_rolv_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m512i __B)
54021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
54031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prolvq512_mask ((__v8di) __A,
54041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
54051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __W,
54061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
54071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
54081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
54101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_rolv_epi64 (__mmask8 __U, __m512i __A, __m512i __B)
54111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
54121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_prolvq512_mask ((__v8di) __A,
54131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __B,
54141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
54151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
54161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
54171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
54181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_ror_epi32(A, B) __extension__ ({ \
54201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prord512_mask((__v16si)(__m512i)(A), (int)(B), \
54211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16si)_mm512_setzero_si512(), \
54221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)-1); })
54231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_ror_epi32(W, U, A, B) __extension__ ({ \
54251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prord512_mask((__v16si)(__m512i)(A), (int)(B), \
54261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16si)(__m512i)(W), \
54271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)(U)); })
54281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_ror_epi32(U, A, B) __extension__ ({ \
54301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prord512_mask((__v16si)(__m512i)(A), (int)(B), \
54311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16si)_mm512_setzero_si512(), \
54321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)(U)); })
54331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_ror_epi64(A, B) __extension__ ({ \
54351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prorq512_mask((__v8di)(__m512i)(A), (int)(B), \
54361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_setzero_si512(), \
54371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1); })
54381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_ror_epi64(W, U, A, B) __extension__ ({ \
54401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prorq512_mask((__v8di)(__m512i)(A), (int)(B), \
54411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)(__m512i)(W), (__mmask8)(U)); })
54421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_ror_epi64(U, A, B) __extension__ ({ \
54441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_prorq512_mask((__v8di)(__m512i)(A), (int)(B), \
54451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)_mm512_setzero_si512(), \
54461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(U)); })
54471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_slli_epi32(A, B) __extension__ ({ \
54491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_pslldi512_mask((__v16si)(__m512i)(A), (int)(B), \
54501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)_mm512_setzero_si512(), \
54511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)-1); })
54521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_slli_epi32(W, U, A, B) __extension__ ({ \
54541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_pslldi512_mask((__v16si)(__m512i)(A), (int)(B), \
54551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)(__m512i)(W), \
54561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
54571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_slli_epi32(U, A, B) __extension__ ({ \
54591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_pslldi512_mask((__v16si)(__m512i)(A), (int)(B), \
54601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)_mm512_setzero_si512(), \
54611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
54621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_slli_epi64(A, B) __extension__ ({ \
54641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psllqi512_mask((__v8di)(__m512i)(A), (int)(B), \
54651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)_mm512_setzero_si512(), \
54661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)-1); })
54671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_slli_epi64(W, U, A, B) __extension__ ({ \
54691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psllqi512_mask((__v8di)(__m512i)(A), (int)(B), \
54701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)(__m512i)(W), \
54711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U)); })
54721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_slli_epi64(U, A, B) __extension__ ({ \
54741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psllqi512_mask((__v8di)(__m512i)(A), (int)(B), \
54751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)_mm512_setzero_si512(), \
54761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U)); })
54771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_srli_epi32(A, B) __extension__ ({ \
54811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psrldi512_mask((__v16si)(__m512i)(A), (int)(B), \
54821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)_mm512_setzero_si512(), \
54831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)-1); })
54841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_srli_epi32(W, U, A, B) __extension__ ({ \
54861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psrldi512_mask((__v16si)(__m512i)(A), (int)(B), \
54871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)(__m512i)(W), \
54881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
54891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_srli_epi32(U, A, B) __extension__ ({ \
54911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psrldi512_mask((__v16si)(__m512i)(A), (int)(B), \
54921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)_mm512_setzero_si512(), \
54931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
54941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
54951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_srli_epi64(A, B) __extension__ ({ \
54961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psrlqi512_mask((__v8di)(__m512i)(A), (int)(B), \
54971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)_mm512_setzero_si512(), \
54981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)-1); })
54991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_srli_epi64(W, U, A, B) __extension__ ({ \
55011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psrlqi512_mask((__v8di)(__m512i)(A), (int)(B), \
55021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)(__m512i)(W), \
55031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U)); })
55041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_srli_epi64(U, A, B) __extension__ ({ \
55061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psrlqi512_mask((__v8di)(__m512i)(A), (int)(B), \
55071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)_mm512_setzero_si512(), \
55081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U)); })
55091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55101188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
55111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_load_epi32 (__m512i __W, __mmask16 __U, void const *__P)
55121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P,
55141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __W,
55151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
55161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
55191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_load_epi32 (__mmask16 __U, void const *__P)
55201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_movdqa32load512_mask ((const __v16si *) __P,
55221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
55231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
55241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
55251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55271188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
55281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_store_epi32 (void *__P, __mmask16 __U, __m512i __A)
55291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_movdqa32store512_mask ((__v16si *) __P, (__v16si) __A,
55311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask16) __U);
55321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
55351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_mov_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
55361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U,
55381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) __A,
55391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) __W);
55401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55421188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
55431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_mov_epi32 (__mmask16 __U, __m512i __A)
55441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_selectd_512 ((__mmask16) __U,
55461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) __A,
55471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) _mm512_setzero_si512 ());
55481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55501188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
55511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_mov_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
55521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U,
55541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __A,
55551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __W);
55561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55581188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
55591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_mov_epi64 (__mmask8 __U, __m512i __A)
55601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_selectq_512 ((__mmask8) __U,
55621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __A,
55631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) _mm512_setzero_si512 ());
55641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55661188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
55671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_load_epi64 (__m512i __W, __mmask8 __U, void const *__P)
55681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P,
55701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __W,
55711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
55721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
55751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_load_epi64 (__mmask8 __U, void const *__P)
55761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_movdqa64load512_mask ((const __v8di *) __P,
55781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di)
55791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
55801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
55811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
55841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_store_epi64 (void *__P, __mmask8 __U, __m512i __A)
55851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_movdqa64store512_mask ((__v8di *) __P, (__v8di) __A,
55871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U);
55881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55901188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
55911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_movedup_pd (__m512d __A)
55921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
55931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_shufflevector((__v8df)__A, (__v8df)__A,
55941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          0, 0, 2, 2, 4, 4, 6, 6);
55951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
55961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
55971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
55981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_movedup_pd (__m512d __W, __mmask8 __U, __m512d __A)
55991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
56001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
56011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_movedup_pd(__A),
56021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)__W);
56031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
56041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56051188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
56061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_movedup_pd (__mmask8 __U, __m512d __A)
56071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
56081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512((__mmask8)__U,
56091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_movedup_pd(__A),
56101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)_mm512_setzero_pd());
56111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
56121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fixupimm_round_pd(A, B, C, imm, R) __extension__ ({ \
56141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \
56151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8df)(__m512d)(B), \
56161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)(__m512i)(C), (int)(imm), \
56171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)-1, (int)(R)); })
56181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fixupimm_round_pd(A, U, B, C, imm, R) __extension__ ({ \
56201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \
56211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8df)(__m512d)(B), \
56221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)(__m512i)(C), (int)(imm), \
56231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U), (int)(R)); })
56241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fixupimm_pd(A, B, C, imm) __extension__ ({ \
56261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \
56271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8df)(__m512d)(B), \
56281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)(__m512i)(C), (int)(imm), \
56291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)-1, \
56301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             _MM_FROUND_CUR_DIRECTION); })
56311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fixupimm_pd(A, U, B, C, imm) __extension__ ({ \
56331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_fixupimmpd512_mask((__v8df)(__m512d)(A), \
56341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8df)(__m512d)(B), \
56351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)(__m512i)(C), (int)(imm), \
56361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U), \
56371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             _MM_FROUND_CUR_DIRECTION); })
56381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fixupimm_round_pd(U, A, B, C, imm, R) __extension__ ({ \
56401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_fixupimmpd512_maskz((__v8df)(__m512d)(A), \
56411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)(__m512d)(B), \
56421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8di)(__m512i)(C), \
56431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (int)(imm), (__mmask8)(U), \
56441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (int)(R)); })
56451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fixupimm_pd(U, A, B, C, imm) __extension__ ({ \
56471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_fixupimmpd512_maskz((__v8df)(__m512d)(A), \
56481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df)(__m512d)(B), \
56491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8di)(__m512i)(C), \
56501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (int)(imm), (__mmask8)(U), \
56511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              _MM_FROUND_CUR_DIRECTION); })
56521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fixupimm_round_ps(A, B, C, imm, R) __extension__ ({ \
56541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \
56551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16sf)(__m512)(B), \
56561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(C), (int)(imm), \
56571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)-1, (int)(R)); })
56581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fixupimm_round_ps(A, U, B, C, imm, R) __extension__ ({ \
56601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \
56611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16sf)(__m512)(B), \
56621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(C), (int)(imm), \
56631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(U), (int)(R)); })
56641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_fixupimm_ps(A, B, C, imm) __extension__ ({ \
56661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \
56671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16sf)(__m512)(B), \
56681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(C), (int)(imm), \
56691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)-1, \
56701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            _MM_FROUND_CUR_DIRECTION); })
56711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_fixupimm_ps(A, U, B, C, imm) __extension__ ({ \
56731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_fixupimmps512_mask((__v16sf)(__m512)(A), \
56741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16sf)(__m512)(B), \
56751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(C), (int)(imm), \
56761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(U), \
56771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            _MM_FROUND_CUR_DIRECTION); })
56781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fixupimm_round_ps(U, A, B, C, imm, R) __extension__ ({ \
56801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_fixupimmps512_maskz((__v16sf)(__m512)(A), \
56811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)(__m512)(B), \
56821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)(__m512i)(C), \
56831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (int)(imm), (__mmask16)(U), \
56841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (int)(R)); })
56851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_fixupimm_ps(U, A, B, C, imm) __extension__ ({ \
56871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_fixupimmps512_maskz((__v16sf)(__m512)(A), \
56881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)(__m512)(B), \
56891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)(__m512i)(C), \
56901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (int)(imm), (__mmask16)(U), \
56911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             _MM_FROUND_CUR_DIRECTION); })
56921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_fixupimm_round_sd(A, B, C, imm, R) __extension__ ({ \
56941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \
56951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(B), \
56961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2di)(__m128i)(C), (int)(imm), \
56971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, (int)(R)); })
56981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
56991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fixupimm_round_sd(A, U, B, C, imm, R) __extension__ ({ \
57001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \
57011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(B), \
57021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2di)(__m128i)(C), (int)(imm), \
57031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
57041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_fixupimm_sd(A, B, C, imm) __extension__ ({ \
57061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \
57071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(B), \
57081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2di)(__m128i)(C), (int)(imm), \
57091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1, \
57101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          _MM_FROUND_CUR_DIRECTION); })
57111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fixupimm_sd(A, U, B, C, imm) __extension__ ({ \
57131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_fixupimmsd_mask((__v2df)(__m128d)(A), \
57141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(B), \
57151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2di)(__m128i)(C), (int)(imm), \
57161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), \
57171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          _MM_FROUND_CUR_DIRECTION); })
57181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fixupimm_round_sd(U, A, B, C, imm, R) __extension__ ({ \
57201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_fixupimmsd_maskz((__v2df)(__m128d)(A), \
57211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
57221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2di)(__m128i)(C), (int)(imm), \
57231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
57241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fixupimm_sd(U, A, B, C, imm) __extension__ ({ \
57261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_fixupimmsd_maskz((__v2df)(__m128d)(A), \
57271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2df)(__m128d)(B), \
57281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v2di)(__m128i)(C), (int)(imm), \
57291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), \
57301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           _MM_FROUND_CUR_DIRECTION); })
57311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_fixupimm_round_ss(A, B, C, imm, R) __extension__ ({ \
57331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \
57341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(B), \
57351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4si)(__m128i)(C), (int)(imm), \
57361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)-1, (int)(R)); })
57371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fixupimm_round_ss(A, U, B, C, imm, R) __extension__ ({ \
57391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \
57401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(B), \
57411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4si)(__m128i)(C), (int)(imm), \
57421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U), (int)(R)); })
57431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_fixupimm_ss(A, B, C, imm) __extension__ ({ \
57451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \
57461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(B), \
57471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4si)(__m128i)(C), (int)(imm), \
57481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)-1, \
57491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         _MM_FROUND_CUR_DIRECTION); })
57501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fixupimm_ss(A, U, B, C, imm) __extension__ ({ \
57521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_fixupimmss_mask((__v4sf)(__m128)(A), \
57531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(B), \
57541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4si)(__m128i)(C), (int)(imm), \
57551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U), \
57561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         _MM_FROUND_CUR_DIRECTION); })
57571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fixupimm_round_ss(U, A, B, C, imm, R) __extension__ ({ \
57591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_fixupimmss_maskz((__v4sf)(__m128)(A), \
57601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
57611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4si)(__m128i)(C), (int)(imm), \
57621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
57631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fixupimm_ss(U, A, B, C, imm) __extension__ ({ \
57651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_fixupimmss_maskz((__v4sf)(__m128)(A), \
57661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4sf)(__m128)(B), \
57671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v4si)(__m128i)(C), (int)(imm), \
57681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), \
57691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          _MM_FROUND_CUR_DIRECTION); })
57701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_getexp_round_sd(A, B, R) __extension__ ({ \
57721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_getexpsd128_round_mask((__v2df)(__m128d)(A), \
57731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__v2df)(__m128d)(B), \
57741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__v2df)_mm_setzero_pd(), \
57751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__mmask8)-1, (int)(R)); })
57761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57781188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
57791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_getexp_sd (__m128d __A, __m128d __B)
57801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
57811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_getexpsd128_round_mask ((__v2df) __A,
57821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v2df) __B, (__v2df) _mm_setzero_pd(), (__mmask8) -1, _MM_FROUND_CUR_DIRECTION);
57831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
57841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
57861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_getexp_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
57871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
57881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_getexpsd128_round_mask ( (__v2df) __A,
57891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
57901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __W,
57911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
57921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
57931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
57941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
57951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_getexp_round_sd(W, U, A, B, R) __extension__ ({\
57961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_getexpsd128_round_mask((__v2df)(__m128d)(A), \
57971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__v2df)(__m128d)(B), \
57981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__v2df)(__m128d)(W), \
57991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__mmask8)(U), (int)(R)); })
58001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
58021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_getexp_sd (__mmask8 __U, __m128d __A, __m128d __B)
58031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
58041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_getexpsd128_round_mask ( (__v2df) __A,
58051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
58061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) _mm_setzero_pd (),
58071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
58081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
58091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
58101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_getexp_round_sd(U, A, B, R) __extension__ ({\
58121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_getexpsd128_round_mask((__v2df)(__m128d)(A), \
58131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__v2df)(__m128d)(B), \
58141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__v2df)_mm_setzero_pd(), \
58151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 (__mmask8)(U), (int)(R)); })
58161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_getexp_round_ss(A, B, R) __extension__ ({ \
58181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_getexpss128_round_mask((__v4sf)(__m128)(A), \
58191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v4sf)(__m128)(B), \
58201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v4sf)_mm_setzero_ps(), \
58211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)-1, (int)(R)); })
58221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58231188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
58241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_getexp_ss (__m128 __A, __m128 __B)
58251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
58261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_getexpss128_round_mask ((__v4sf) __A,
58271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B, (__v4sf)  _mm_setzero_ps(), (__mmask8) -1, _MM_FROUND_CUR_DIRECTION);
58281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
58291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
58311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_getexp_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
58321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
58331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_getexpss128_round_mask ((__v4sf) __A,
58341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
58351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __W,
58361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
58371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
58381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
58391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_getexp_round_ss(W, U, A, B, R) __extension__ ({\
58411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_getexpss128_round_mask((__v4sf)(__m128)(A), \
58421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v4sf)(__m128)(B), \
58431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v4sf)(__m128)(W), \
58441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)(U), (int)(R)); })
58451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
58471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_getexp_ss (__mmask8 __U, __m128 __A, __m128 __B)
58481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
58491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_getexpss128_round_mask ((__v4sf) __A,
58501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
58511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) _mm_setzero_pd (),
58521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
58531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
58541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
58551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_getexp_round_ss(U, A, B, R) __extension__ ({\
58571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_getexpss128_round_mask((__v4sf)(__m128)(A), \
58581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v4sf)(__m128)(B), \
58591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v4sf)_mm_setzero_ps(), \
58601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)(U), (int)(R)); })
58611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_getmant_round_sd(A, B, C, D, R) __extension__ ({ \
58631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \
58641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)(__m128d)(B), \
58651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (int)(((D)<<2) | (C)), \
58661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)_mm_setzero_pd(), \
58671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)-1, (int)(R)); })
58681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_getmant_sd(A, B, C, D)  __extension__ ({ \
58701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \
58711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)(__m128d)(B), \
58721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (int)(((D)<<2) | (C)), \
58731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)_mm_setzero_pd(), \
58741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)-1, \
58751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               _MM_FROUND_CUR_DIRECTION); })
58761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_getmant_sd(W, U, A, B, C, D) __extension__ ({\
58781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \
58791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)(__m128d)(B), \
58801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (int)(((D)<<2) | (C)), \
58811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)(__m128d)(W), \
58821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), \
58831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               _MM_FROUND_CUR_DIRECTION); })
58841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_getmant_round_sd(W, U, A, B, C, D, R)({\
58861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \
58871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)(__m128d)(B), \
58881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (int)(((D)<<2) | (C)), \
58891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)(__m128d)(W), \
58901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(R)); })
58911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
58921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_getmant_sd(U, A, B, C, D) __extension__ ({\
58931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \
58941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)(__m128d)(B), \
58951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (int)(((D)<<2) | (C)), \
58961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)_mm_setzero_pd(), \
58971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), \
58981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               _MM_FROUND_CUR_DIRECTION); })
58991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_getmant_round_sd(U, A, B, C, D, R) __extension__ ({\
59011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_getmantsd_round_mask((__v2df)(__m128d)(A), \
59021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)(__m128d)(B), \
59031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (int)(((D)<<2) | (C)), \
59041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v2df)_mm_setzero_pd(), \
59051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(R)); })
59061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_getmant_round_ss(A, B, C, D, R) __extension__ ({ \
59081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \
59091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(B), \
59101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (int)(((D)<<2) | (C)), \
59111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)_mm_setzero_ps(), \
59121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)-1, (int)(R)); })
59131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_getmant_ss(A, B, C, D) __extension__ ({ \
59151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \
59161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(B), \
59171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (int)(((D)<<2) | (C)), \
59181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)_mm_setzero_ps(), \
59191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)-1, \
59201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              _MM_FROUND_CUR_DIRECTION); })
59211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_getmant_ss(W, U, A, B, C, D) __extension__ ({\
59231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \
59241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(B), \
59251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (int)(((D)<<2) | (C)), \
59261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(W), \
59271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), \
59281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              _MM_FROUND_CUR_DIRECTION); })
59291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_getmant_round_ss(W, U, A, B, C, D, R)({\
59311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \
59321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(B), \
59331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (int)(((D)<<2) | (C)), \
59341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(W), \
59351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), (int)(R)); })
59361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_getmant_ss(U, A, B, C, D) __extension__ ({\
59381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \
59391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(B), \
59401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (int)(((D)<<2) | (C)), \
59411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)_mm_setzero_pd(), \
59421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), \
59431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              _MM_FROUND_CUR_DIRECTION); })
59441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_getmant_round_ss(U, A, B, C, D, R) __extension__ ({\
59461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_getmantss_round_mask((__v4sf)(__m128)(A), \
59471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(B), \
59481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (int)(((D)<<2) | (C)), \
59491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)_mm_setzero_ps(), \
59501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), (int)(R)); })
59511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
59531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_kmov (__mmask16 __A)
59541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
59551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return  __A;
59561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
59571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_comi_round_sd(A, B, P, R) __extension__ ({\
59591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcomisd((__v2df)(__m128d)(A), (__v2df)(__m128d)(B), \
59601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                              (int)(P), (int)(R)); })
59611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_comi_round_ss(A, B, P, R) __extension__ ({\
59631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcomiss((__v4sf)(__m128)(A), (__v4sf)(__m128)(B), \
59641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                              (int)(P), (int)(R)); })
59651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
59671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsd_si64(A, R) __extension__ ({ \
59681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (long long)__builtin_ia32_vcvtsd2si64((__v2df)(__m128d)(A), (int)(R)); })
59691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
59701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
59721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask2_permutex2var_epi32 (__m512i __A, __m512i __I,
59731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker         __mmask16 __U, __m512i __B)
59741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
59751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_vpermi2vard512_mask ((__v16si) __A,
59761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __I
59771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   /* idx */ ,
59781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __B,
59791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
59801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
59811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
59831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sll_epi32 (__m512i __A, __m128i __B)
59841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
59851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pslld512_mask ((__v16si) __A,
59861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4si) __B,
59871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si)
59881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
59891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) -1);
59901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
59911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
59921188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
59931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sll_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
59941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
59951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pslld512_mask ((__v16si) __A,
59961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4si) __B,
59971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si) __W,
59981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) __U);
59991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sll_epi32 (__mmask16 __U, __m512i __A, __m128i __B)
60031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pslld512_mask ((__v16si) __A,
60051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4si) __B,
60061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si)
60071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
60081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) __U);
60091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sll_epi64 (__m512i __A, __m128i __B)
60131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psllq512_mask ((__v8di) __A,
60151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v2di) __B,
60161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
60171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
60181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1);
60191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60211188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sll_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
60231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psllq512_mask ((__v8di) __A,
60251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v2di) __B,
60261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __W,
60271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
60281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sll_epi64 (__mmask8 __U, __m512i __A, __m128i __B)
60321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psllq512_mask ((__v8di) __A,
60341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v2di) __B,
60351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
60361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
60371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
60381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sllv_epi32 (__m512i __X, __m512i __Y)
60421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psllv16si_mask ((__v16si) __X,
60441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
60451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
60461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
60471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
60481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60501188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sllv_epi32 (__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
60521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psllv16si_mask ((__v16si) __X,
60541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
60551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __W,
60561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
60571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sllv_epi32 (__mmask16 __U, __m512i __X, __m512i __Y)
60611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psllv16si_mask ((__v16si) __X,
60631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
60641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
60651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
60661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
60671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60691188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sllv_epi64 (__m512i __X, __m512i __Y)
60711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psllv8di_mask ((__v8di) __X,
60731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __Y,
60741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
60751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_undefined_pd (),
60761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1);
60771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60791188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sllv_epi64 (__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
60811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psllv8di_mask ((__v8di) __X,
60831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __Y,
60841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __W,
60851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
60861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sllv_epi64 (__mmask8 __U, __m512i __X, __m512i __Y)
60901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
60911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psllv8di_mask ((__v8di) __X,
60921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __Y,
60931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
60941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
60951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
60961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
60971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
60981188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
60991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sra_epi32 (__m512i __A, __m128i __B)
61001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrad512_mask ((__v16si) __A,
61021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4si) __B,
61031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si)
61041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
61051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) -1);
61061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sra_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
61101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrad512_mask ((__v16si) __A,
61121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4si) __B,
61131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si) __W,
61141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) __U);
61151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sra_epi32 (__mmask16 __U, __m512i __A, __m128i __B)
61191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrad512_mask ((__v16si) __A,
61211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4si) __B,
61221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si)
61231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
61241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) __U);
61251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61271188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_sra_epi64 (__m512i __A, __m128i __B)
61291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psraq512_mask ((__v8di) __A,
61311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v2di) __B,
61321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
61331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
61341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1);
61351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_sra_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
61391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psraq512_mask ((__v8di) __A,
61411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v2di) __B,
61421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __W,
61431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
61441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_sra_epi64 (__mmask8 __U, __m512i __A, __m128i __B)
61481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psraq512_mask ((__v8di) __A,
61501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v2di) __B,
61511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
61521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
61531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
61541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_srav_epi32 (__m512i __X, __m512i __Y)
61581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrav16si_mask ((__v16si) __X,
61601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
61611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
61621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
61631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
61641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61661188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_srav_epi32 (__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
61681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrav16si_mask ((__v16si) __X,
61701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
61711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __W,
61721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
61731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61751188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_srav_epi32 (__mmask16 __U, __m512i __X, __m512i __Y)
61771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrav16si_mask ((__v16si) __X,
61791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
61801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
61811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
61821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
61831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_srav_epi64 (__m512i __X, __m512i __Y)
61871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X,
61891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __Y,
61901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
61911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
61921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1);
61931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
61941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
61951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
61961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_srav_epi64 (__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
61971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
61981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X,
61991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __Y,
62001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __W,
62011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
62021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62041188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_srav_epi64 (__mmask8 __U, __m512i __X, __m512i __Y)
62061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrav8di_mask ((__v8di) __X,
62081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __Y,
62091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
62101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
62111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
62121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62141188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_srl_epi32 (__m512i __A, __m128i __B)
62161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrld512_mask ((__v16si) __A,
62181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4si) __B,
62191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si)
62201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
62211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) -1);
62221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_srl_epi32 (__m512i __W, __mmask16 __U, __m512i __A, __m128i __B)
62261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrld512_mask ((__v16si) __A,
62281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4si) __B,
62291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si) __W,
62301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) __U);
62311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62331188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_srl_epi32 (__mmask16 __U, __m512i __A, __m128i __B)
62351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrld512_mask ((__v16si) __A,
62371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4si) __B,
62381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si)
62391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
62401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) __U);
62411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_srl_epi64 (__m512i __A, __m128i __B)
62451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrlq512_mask ((__v8di) __A,
62471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v2di) __B,
62481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
62491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
62501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1);
62511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_srl_epi64 (__m512i __W, __mmask8 __U, __m512i __A, __m128i __B)
62551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrlq512_mask ((__v8di) __A,
62571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v2di) __B,
62581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __W,
62591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
62601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_srl_epi64 (__mmask8 __U, __m512i __A, __m128i __B)
62641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrlq512_mask ((__v8di) __A,
62661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v2di) __B,
62671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
62681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
62691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
62701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62721188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_srlv_epi32 (__m512i __X, __m512i __Y)
62741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrlv16si_mask ((__v16si) __X,
62761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
62771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
62781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
62791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
62801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_srlv_epi32 (__m512i __W, __mmask16 __U, __m512i __X, __m512i __Y)
62841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrlv16si_mask ((__v16si) __X,
62861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
62871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __W,
62881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
62891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
62901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
62911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
62921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_srlv_epi32 (__mmask16 __U, __m512i __X, __m512i __Y)
62931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
62941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrlv16si_mask ((__v16si) __X,
62951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __Y,
62961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si)
62971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_si512 (),
62981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
62991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
63001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
63021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_srlv_epi64 (__m512i __X, __m512i __Y)
63031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
63041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrlv8di_mask ((__v8di) __X,
63051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __Y,
63061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
63071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
63081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1);
63091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
63101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
63121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_srlv_epi64 (__m512i __W, __mmask8 __U, __m512i __X, __m512i __Y)
63131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
63141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrlv8di_mask ((__v8di) __X,
63151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __Y,
63161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __W,
63171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
63181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
63191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
63211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_srlv_epi64 (__mmask8 __U, __m512i __X, __m512i __Y)
63221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
63231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_psrlv8di_mask ((__v8di) __X,
63241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di) __Y,
63251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v8di)
63261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _mm512_setzero_si512 (),
63271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) __U);
63281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
63291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_ternarylogic_epi32(A, B, C, imm) __extension__ ({ \
63311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_pternlogd512_mask((__v16si)(__m512i)(A), \
63321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(B), \
63331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(C), (int)(imm), \
63341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)-1); })
63351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_ternarylogic_epi32(A, U, B, C, imm) __extension__ ({ \
63371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_pternlogd512_mask((__v16si)(__m512i)(A), \
63381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(B), \
63391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v16si)(__m512i)(C), (int)(imm), \
63401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask16)(U)); })
63411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_ternarylogic_epi32(U, A, B, C, imm) __extension__ ({ \
63431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_pternlogd512_maskz((__v16si)(__m512i)(A), \
63441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)(__m512i)(B), \
63451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16si)(__m512i)(C), \
63461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (int)(imm), (__mmask16)(U)); })
63471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_ternarylogic_epi64(A, B, C, imm) __extension__ ({ \
63491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_pternlogq512_mask((__v8di)(__m512i)(A), \
63501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8di)(__m512i)(B), \
63511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8di)(__m512i)(C), (int)(imm), \
63521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)-1); })
63531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_ternarylogic_epi64(A, U, B, C, imm) __extension__ ({ \
63551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_pternlogq512_mask((__v8di)(__m512i)(A), \
63561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8di)(__m512i)(B), \
63571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8di)(__m512i)(C), (int)(imm), \
63581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U)); })
63591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_ternarylogic_epi64(U, A, B, C, imm) __extension__ ({ \
63611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_pternlogq512_maskz((__v8di)(__m512i)(A), \
63621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)(__m512i)(B), \
63631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8di)(__m512i)(C), (int)(imm), \
63641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U)); })
63651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
63671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsd_i64(A, R) __extension__ ({ \
63681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (long long)__builtin_ia32_vcvtsd2si64((__v2df)(__m128d)(A), (int)(R)); })
63691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
63701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsd_si32(A, R) __extension__ ({ \
63721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcvtsd2si32((__v2df)(__m128d)(A), (int)(R)); })
63731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsd_i32(A, R) __extension__ ({ \
63751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcvtsd2si32((__v2df)(__m128d)(A), (int)(R)); })
63761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsd_u32(A, R) __extension__ ({ \
63781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (unsigned int)__builtin_ia32_vcvtsd2usi32((__v2df)(__m128d)(A), (int)(R)); })
63791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned __DEFAULT_FN_ATTRS
63811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvtsd_u32 (__m128d __A)
63821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
63831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (unsigned) __builtin_ia32_vcvtsd2usi32 ((__v2df) __A,
63841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _MM_FROUND_CUR_DIRECTION);
63851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
63861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
63881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsd_u64(A, R) __extension__ ({ \
63891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (unsigned long long)__builtin_ia32_vcvtsd2usi64((__v2df)(__m128d)(A), \
63901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (int)(R)); })
63911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
63921188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned long long __DEFAULT_FN_ATTRS
63931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvtsd_u64 (__m128d __A)
63941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
63951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (unsigned long long) __builtin_ia32_vcvtsd2usi64 ((__v2df)
63961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __A,
63971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
63981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
63991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
64001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundss_si32(A, R) __extension__ ({ \
64021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcvtss2si32((__v4sf)(__m128)(A), (int)(R)); })
64031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundss_i32(A, R) __extension__ ({ \
64051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcvtss2si32((__v4sf)(__m128)(A), (int)(R)); })
64061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
64081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundss_si64(A, R) __extension__ ({ \
64091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (long long)__builtin_ia32_vcvtss2si64((__v4sf)(__m128)(A), (int)(R)); })
64101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundss_i64(A, R) __extension__ ({ \
64121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (long long)__builtin_ia32_vcvtss2si64((__v4sf)(__m128)(A), (int)(R)); })
64131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
64141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundss_u32(A, R) __extension__ ({ \
64161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (unsigned int)__builtin_ia32_vcvtss2usi32((__v4sf)(__m128)(A), (int)(R)); })
64171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned __DEFAULT_FN_ATTRS
64191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvtss_u32 (__m128 __A)
64201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
64211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (unsigned) __builtin_ia32_vcvtss2usi32 ((__v4sf) __A,
64221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _MM_FROUND_CUR_DIRECTION);
64231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
64241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
64261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundss_u64(A, R) __extension__ ({ \
64271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (unsigned long long)__builtin_ia32_vcvtss2usi64((__v4sf)(__m128)(A), \
64281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                  (int)(R)); })
64291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned long long __DEFAULT_FN_ATTRS
64311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvtss_u64 (__m128 __A)
64321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
64331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (unsigned long long) __builtin_ia32_vcvtss2usi64 ((__v4sf)
64341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __A,
64351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
64361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
64371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
64381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundsd_i32(A, R) __extension__ ({ \
64401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcvttsd2si32((__v2df)(__m128d)(A), (int)(R)); })
64411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundsd_si32(A, R) __extension__ ({ \
64431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcvttsd2si32((__v2df)(__m128d)(A), (int)(R)); })
64441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
64461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvttsd_i32 (__m128d __A)
64471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
64481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (int) __builtin_ia32_vcvttsd2si32 ((__v2df) __A,
64491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _MM_FROUND_CUR_DIRECTION);
64501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
64511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
64531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundsd_si64(A, R) __extension__ ({ \
64541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (long long)__builtin_ia32_vcvttsd2si64((__v2df)(__m128d)(A), (int)(R)); })
64551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundsd_i64(A, R) __extension__ ({ \
64571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (long long)__builtin_ia32_vcvttsd2si64((__v2df)(__m128d)(A), (int)(R)); })
64581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS
64601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvttsd_i64 (__m128d __A)
64611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
64621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (long long) __builtin_ia32_vcvttsd2si64 ((__v2df) __A,
64631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _MM_FROUND_CUR_DIRECTION);
64641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
64651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
64661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundsd_u32(A, R) __extension__ ({ \
64681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (unsigned int)__builtin_ia32_vcvttsd2usi32((__v2df)(__m128d)(A), (int)(R)); })
64691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned __DEFAULT_FN_ATTRS
64711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvttsd_u32 (__m128d __A)
64721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
64731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (unsigned) __builtin_ia32_vcvttsd2usi32 ((__v2df) __A,
64741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _MM_FROUND_CUR_DIRECTION);
64751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
64761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
64781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundsd_u64(A, R) __extension__ ({ \
64791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (unsigned long long)__builtin_ia32_vcvttsd2usi64((__v2df)(__m128d)(A), \
64801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (int)(R)); })
64811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned long long __DEFAULT_FN_ATTRS
64831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvttsd_u64 (__m128d __A)
64841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
64851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (unsigned long long) __builtin_ia32_vcvttsd2usi64 ((__v2df)
64861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  __A,
64871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
64881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
64891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
64901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundss_i32(A, R) __extension__ ({ \
64921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcvttss2si32((__v4sf)(__m128)(A), (int)(R)); })
64931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundss_si32(A, R) __extension__ ({ \
64951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (int)__builtin_ia32_vcvttss2si32((__v4sf)(__m128)(A), (int)(R)); })
64961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
64971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
64981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvttss_i32 (__m128 __A)
64991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
65001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (int) __builtin_ia32_vcvttss2si32 ((__v4sf) __A,
65011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _MM_FROUND_CUR_DIRECTION);
65021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
65031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
65051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundss_i64(A, R) __extension__ ({ \
65061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (long long)__builtin_ia32_vcvttss2si64((__v4sf)(__m128)(A), (int)(R)); })
65071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundss_si64(A, R) __extension__ ({ \
65091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (long long)__builtin_ia32_vcvttss2si64((__v4sf)(__m128)(A), (int)(R)); })
65101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS
65121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvttss_i64 (__m128 __A)
65131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
65141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (long long) __builtin_ia32_vcvttss2si64 ((__v4sf) __A,
65151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _MM_FROUND_CUR_DIRECTION);
65161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
65171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
65181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundss_u32(A, R) __extension__ ({ \
65201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (unsigned int)__builtin_ia32_vcvttss2usi32((__v4sf)(__m128)(A), (int)(R)); })
65211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned __DEFAULT_FN_ATTRS
65231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvttss_u32 (__m128 __A)
65241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
65251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (unsigned) __builtin_ia32_vcvttss2usi32 ((__v4sf) __A,
65261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _MM_FROUND_CUR_DIRECTION);
65271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
65281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
65301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtt_roundss_u64(A, R) __extension__ ({ \
65311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (unsigned long long)__builtin_ia32_vcvttss2usi64((__v4sf)(__m128)(A), \
65321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                   (int)(R)); })
65331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned long long __DEFAULT_FN_ATTRS
65351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvttss_u64 (__m128 __A)
65361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
65371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (unsigned long long) __builtin_ia32_vcvttss2usi64 ((__v4sf)
65381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  __A,
65391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
65401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
65411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
65421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
65441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask2_permutex2var_pd (__m512d __A, __m512i __I, __mmask8 __U,
65451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            __m512d __B)
65461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
65471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vpermi2varpd512_mask ((__v8df) __A,
65481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __I
65491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              /* idx */ ,
65501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df) __B,
65511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
65521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
65531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
65551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask2_permutex2var_ps (__m512 __A, __m512i __I, __mmask16 __U,
65561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            __m512 __B)
65571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
65581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vpermi2varps512_mask ((__v16sf) __A,
65591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __I
65601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   /* idx */ ,
65611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf) __B,
65621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
65631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
65641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
65661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask2_permutex2var_epi64 (__m512i __A, __m512i __I,
65671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker         __mmask8 __U, __m512i __B)
65681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
65691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_vpermi2varq512_mask ((__v8di) __A,
65701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __I
65711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   /* idx */ ,
65721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v8di) __B,
65731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask8) __U);
65741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
65751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_permute_pd(X, C) __extension__ ({ \
65771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_shufflevector((__v8df)(__m512d)(X), \
65781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v8df)_mm512_undefined_pd(), \
65791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 0) & 0x1), \
65801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 1) & 0x1), \
65811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   2 + (((C) >> 2) & 0x1), \
65821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   2 + (((C) >> 3) & 0x1), \
65831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 4) & 0x1), \
65841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 5) & 0x1), \
65851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   6 + (((C) >> 6) & 0x1), \
65861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   6 + (((C) >> 7) & 0x1)); })
65871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_permute_pd(W, U, X, C) __extension__ ({ \
65891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \
65901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)_mm512_permute_pd((X), (C)), \
65911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)(__m512d)(W)); })
65921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_permute_pd(U, X, C) __extension__ ({ \
65941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \
65951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)_mm512_permute_pd((X), (C)), \
65961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)_mm512_setzero_pd()); })
65971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
65981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_permute_ps(X, C) __extension__ ({ \
65991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_shufflevector((__v16sf)(__m512)(X), \
66001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16sf)_mm512_undefined_ps(), \
66011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((C) >> 0) & 0x3), \
66021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((C) >> 2) & 0x3), \
66031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((C) >> 4) & 0x3), \
66041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((C) >> 6) & 0x3), \
66051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((C) >> 0) & 0x3), \
66061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((C) >> 2) & 0x3), \
66071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((C) >> 4) & 0x3), \
66081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((C) >> 6) & 0x3), \
66091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((C) >> 0) & 0x3), \
66101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((C) >> 2) & 0x3), \
66111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((C) >> 4) & 0x3), \
66121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((C) >> 6) & 0x3), \
66131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((C) >> 0) & 0x3), \
66141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((C) >> 2) & 0x3), \
66151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((C) >> 4) & 0x3), \
66161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((C) >> 6) & 0x3)); })
66171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_permute_ps(W, U, X, C) __extension__ ({ \
66191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_selectps_512((__mmask16)(U), \
66201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16sf)_mm512_permute_ps((X), (C)), \
66211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16sf)(__m512)(W)); })
66221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_permute_ps(U, X, C) __extension__ ({ \
66241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_selectps_512((__mmask16)(U), \
66251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16sf)_mm512_permute_ps((X), (C)), \
66261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16sf)_mm512_setzero_ps()); })
66271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
66291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutevar_pd (__m512d __A, __m512i __C)
66301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
66311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vpermilvarpd512_mask ((__v8df) __A,
66321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __C,
66331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df)
66341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_undefined_pd (),
66351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
66361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
66371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66381188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
66391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutevar_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512i __C)
66401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
66411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vpermilvarpd512_mask ((__v8df) __A,
66421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __C,
66431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df) __W,
66441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
66451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
66461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
66481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutevar_pd (__mmask8 __U, __m512d __A, __m512i __C)
66491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
66501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vpermilvarpd512_mask ((__v8df) __A,
66511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __C,
66521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df)
66531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _mm512_setzero_pd (),
66541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
66551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
66561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
66581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutevar_ps (__m512 __A, __m512i __C)
66591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
66601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vpermilvarps512_mask ((__v16sf) __A,
66611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __C,
66621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf)
66631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_undefined_ps (),
66641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) -1);
66651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
66661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66671188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
66681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutevar_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512i __C)
66691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
66701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vpermilvarps512_mask ((__v16sf) __A,
66711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __C,
66721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf) __W,
66731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
66741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
66751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
66771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutevar_ps (__mmask16 __U, __m512 __A, __m512i __C)
66781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
66791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vpermilvarps512_mask ((__v16sf) __A,
66801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16si) __C,
66811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf)
66821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   _mm512_setzero_ps (),
66831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
66841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
66851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66861188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512d __DEFAULT_FN_ATTRS
66871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutex2var_pd(__m512d __A, __m512i __I, __m512d __B)
66881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
66891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vpermt2varpd512_mask ((__v8di) __I
66901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                    /* idx */ ,
66911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                    (__v8df) __A,
66921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                    (__v8df) __B,
66931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                    (__mmask8) -1);
66941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
66951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
66961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
66971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutex2var_pd (__m512d __A, __mmask8 __U, __m512i __I, __m512d __B)
66981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
66991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vpermt2varpd512_mask ((__v8di) __I
67001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                    /* idx */ ,
67011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                    (__v8df) __A,
67021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                    (__v8df) __B,
67031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                    (__mmask8) __U);
67041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
67051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
67071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutex2var_pd (__mmask8 __U, __m512d __A, __m512i __I,
67081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            __m512d __B)
67091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
67101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_vpermt2varpd512_maskz ((__v8di) __I
67111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         /* idx */ ,
67121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         (__v8df) __A,
67131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         (__v8df) __B,
67141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         (__mmask8) __U);
67151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
67161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512 __DEFAULT_FN_ATTRS
67181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutex2var_ps(__m512 __A, __m512i __I, __m512 __B)
67191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
67201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vpermt2varps512_mask ((__v16si) __I
67211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         /* idx */ ,
67221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         (__v16sf) __A,
67231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         (__v16sf) __B,
67241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         (__mmask16) -1);
67251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
67261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67271188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
67281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutex2var_ps (__m512 __A, __mmask16 __U, __m512i __I, __m512 __B)
67291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
67301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vpermt2varps512_mask ((__v16si) __I
67311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         /* idx */ ,
67321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         (__v16sf) __A,
67331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         (__v16sf) __B,
67341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                         (__mmask16) __U);
67351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
67361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
67381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutex2var_ps (__mmask16 __U, __m512 __A, __m512i __I,
67391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            __m512 __B)
67401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
67411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_vpermt2varps512_maskz ((__v16si) __I
67421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        /* idx */ ,
67431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v16sf) __A,
67441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__v16sf) __B,
67451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                        (__mmask16) __U);
67461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
67471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
67491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_testn_epi32_mask (__m512i __A, __m512i __B)
67501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
67511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_ptestnmd512 ((__v16si) __A,
67521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si) __B,
67531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask16) -1);
67541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
67551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
67571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_testn_epi32_mask (__mmask16 __U, __m512i __A, __m512i __B)
67581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
67591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_ptestnmd512 ((__v16si) __A,
67601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16si) __B, __U);
67611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
67621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
67641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_testn_epi64_mask (__m512i __A, __m512i __B)
67651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
67661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8) __builtin_ia32_ptestnmq512 ((__v8di) __A,
67671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__v8di) __B,
67681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask8) -1);
67691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
67701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask8 __DEFAULT_FN_ATTRS
67721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_testn_epi64_mask (__mmask8 __U, __m512i __A, __m512i __B)
67731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
67741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask8) __builtin_ia32_ptestnmq512 ((__v8di) __A,
67751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__v8di) __B, __U);
67761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
67771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvtt_roundpd_epu32(A, R) __extension__ ({ \
67791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \
67801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8si)_mm256_undefined_si256(), \
67811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)-1, (int)(R)); })
67821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvtt_roundpd_epu32(W, U, A, R) __extension__ ({ \
67841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \
67851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8si)(__m256i)(W), \
67861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U), (int)(R)); })
67871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvtt_roundpd_epu32(U, A, R) __extension__ ({ \
67891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_cvttpd2udq512_mask((__v8df)(__m512d)(A), \
67901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v8si)_mm256_setzero_si256(), \
67911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U), (int)(R)); })
67921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
67931188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
67941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvttpd_epu32 (__m512d __A)
67951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
67961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
67971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8si)
67981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm256_undefined_si256 (),
67991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) -1,
68001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
68011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
68021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68031188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
68041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvttpd_epu32 (__m256i __W, __mmask8 __U, __m512d __A)
68051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
68061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
68071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8si) __W,
68081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
68091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
68101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
68111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
68131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvttpd_epu32 (__mmask8 __U, __m512d __A)
68141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
68151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_cvttpd2udq512_mask ((__v8df) __A,
68161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8si)
68171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm256_setzero_si256 (),
68181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U,
68191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _MM_FROUND_CUR_DIRECTION);
68201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
68211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_roundscale_round_sd(A, B, imm, R) __extension__ ({ \
68231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \
68241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)(__m128d)(B), \
68251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)_mm_setzero_pd(), \
68261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)-1, (int)(imm), \
68271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (int)(R)); })
68281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_roundscale_sd(A, B, imm) __extension__ ({ \
68301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \
68311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)(__m128d)(B), \
68321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)_mm_setzero_pd(), \
68331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)-1, (int)(imm), \
68341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                _MM_FROUND_CUR_DIRECTION); })
68351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_roundscale_sd(W, U, A, B, imm) __extension__ ({ \
68371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \
68381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)(__m128d)(B), \
68391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)(__m128d)(W), \
68401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)(U), (int)(imm), \
68411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                _MM_FROUND_CUR_DIRECTION); })
68421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_roundscale_round_sd(W, U, A, B, I, R) __extension__ ({ \
68441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \
68451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)(__m128d)(B), \
68461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)(__m128d)(W), \
68471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)(U), (int)(I), \
68481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (int)(R)); })
68491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_roundscale_sd(U, A, B, I) __extension__ ({ \
68511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \
68521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)(__m128d)(B), \
68531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)_mm_setzero_pd(), \
68541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)(U), (int)(I), \
68551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                _MM_FROUND_CUR_DIRECTION); })
68561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_roundscale_round_sd(U, A, B, I, R) __extension__ ({ \
68581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_rndscalesd_round_mask((__v2df)(__m128d)(A), \
68591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)(__m128d)(B), \
68601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v2df)_mm_setzero_pd(), \
68611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__mmask8)(U), (int)(I), \
68621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (int)(R)); })
68631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_roundscale_round_ss(A, B, imm, R) __extension__ ({ \
68651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \
68661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)(__m128)(B), \
68671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)_mm_setzero_ps(), \
68681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)-1, (int)(imm), \
68691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (int)(R)); })
68701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_roundscale_ss(A, B, imm) __extension__ ({ \
68721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \
68731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)(__m128)(B), \
68741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)_mm_setzero_ps(), \
68751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)-1, (int)(imm), \
68761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               _MM_FROUND_CUR_DIRECTION); })
68771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_roundscale_ss(W, U, A, B, I) __extension__ ({ \
68791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \
68801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)(__m128)(B), \
68811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)(__m128)(W), \
68821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(I), \
68831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               _MM_FROUND_CUR_DIRECTION); })
68841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_roundscale_round_ss(W, U, A, B, I, R) __extension__ ({ \
68861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \
68871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)(__m128)(B), \
68881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)(__m128)(W), \
68891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(I), \
68901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (int)(R)); })
68911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_roundscale_ss(U, A, B, I) __extension__ ({ \
68931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \
68941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)(__m128)(B), \
68951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)_mm_setzero_ps(), \
68961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(I), \
68971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               _MM_FROUND_CUR_DIRECTION); })
68981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
68991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_roundscale_round_ss(U, A, B, I, R) __extension__ ({ \
69001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_rndscaless_round_mask((__v4sf)(__m128)(A), \
69011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)(__m128)(B), \
69021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__v4sf)_mm_setzero_ps(), \
69031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (__mmask8)(U), (int)(I), \
69041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                               (int)(R)); })
69051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_scalef_round_pd(A, B, R) __extension__ ({ \
69071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_scalefpd512_mask((__v8df)(__m512d)(A), \
69081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(B), \
69091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_undefined_pd(), \
69101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
69111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_scalef_round_pd(W, U, A, B, R) __extension__ ({ \
69131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_scalefpd512_mask((__v8df)(__m512d)(A), \
69141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(B), \
69151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(W), \
69161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
69171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_scalef_round_pd(U, A, B, R) __extension__ ({ \
69191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_scalefpd512_mask((__v8df)(__m512d)(A), \
69201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(B), \
69211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_setzero_pd(), \
69221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
69231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
69251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_scalef_pd (__m512d __A, __m512d __B)
69261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
69271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
69281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __B,
69291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df)
69301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _mm512_undefined_pd (),
69311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) -1,
69321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
69331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
69341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69351188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
69361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_scalef_pd (__m512d __W, __mmask8 __U, __m512d __A, __m512d __B)
69371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
69381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
69391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __B,
69401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __W,
69411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
69421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
69431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
69441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
69461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_scalef_pd (__mmask8 __U, __m512d __A, __m512d __B)
69471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
69481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_scalefpd512_mask ((__v8df) __A,
69491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __B,
69501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df)
69511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _mm512_setzero_pd (),
69521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
69531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
69541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
69551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_scalef_round_ps(A, B, R) __extension__ ({ \
69571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_scalefps512_mask((__v16sf)(__m512)(A), \
69581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), \
69591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_undefined_ps(), \
69601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)-1, (int)(R)); })
69611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_scalef_round_ps(W, U, A, B, R) __extension__ ({ \
69631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_scalefps512_mask((__v16sf)(__m512)(A), \
69641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), \
69651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(W), \
69661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U), (int)(R)); })
69671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_scalef_round_ps(U, A, B, R) __extension__ ({ \
69691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_scalefps512_mask((__v16sf)(__m512)(A), \
69701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(B), \
69711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_setzero_ps(), \
69721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U), (int)(R)); })
69731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
69751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_scalef_ps (__m512 __A, __m512 __B)
69761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
69771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
69781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf) __B,
69791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf)
69801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _mm512_undefined_ps (),
69811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) -1,
69821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _MM_FROUND_CUR_DIRECTION);
69831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
69841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
69861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_scalef_ps (__m512 __W, __mmask16 __U, __m512 __A, __m512 __B)
69871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
69881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
69891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf) __B,
69901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf) __W,
69911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) __U,
69921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _MM_FROUND_CUR_DIRECTION);
69931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
69941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
69951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
69961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_scalef_ps (__mmask16 __U, __m512 __A, __m512 __B)
69971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
69981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_scalefps512_mask ((__v16sf) __A,
69991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf) __B,
70001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf)
70011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _mm512_setzero_ps (),
70021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) __U,
70031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _MM_FROUND_CUR_DIRECTION);
70041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
70051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_scalef_round_sd(A, B, R) __extension__ ({ \
70071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_scalefsd_round_mask((__v2df)(__m128d)(A), \
70081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)(__m128d)(B), \
70091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)_mm_setzero_pd(), \
70101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)-1, (int)(R)); })
70111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
70131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_scalef_sd (__m128d __A, __m128d __B)
70141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
70151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_scalefsd_round_mask ((__v2df) __A,
70161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v2df)( __B), (__v2df) _mm_setzero_pd(),
70171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1,
70181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              _MM_FROUND_CUR_DIRECTION);
70191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
70201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70211188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
70221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_scalef_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
70231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
70241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_scalefsd_round_mask ( (__v2df) __A,
70251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v2df) __B,
70261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __W,
70271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
70281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
70291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
70301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_scalef_round_sd(W, U, A, B, R) __extension__ ({ \
70321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_scalefsd_round_mask((__v2df)(__m128d)(A), \
70331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)(__m128d)(B), \
70341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)(__m128d)(W), \
70351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), (int)(R)); })
70361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
70381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_scalef_sd (__mmask8 __U, __m128d __A, __m128d __B)
70391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
70401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_scalefsd_round_mask ( (__v2df) __A,
70411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v2df) __B,
70421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) _mm_setzero_pd (),
70431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
70441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
70451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
70461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_scalef_round_sd(U, A, B, R) __extension__ ({ \
70481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_scalefsd_round_mask((__v2df)(__m128d)(A), \
70491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)(__m128d)(B), \
70501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)_mm_setzero_pd(), \
70511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), (int)(R)); })
70521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_scalef_round_ss(A, B, R) __extension__ ({ \
70541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_scalefss_round_mask((__v4sf)(__m128)(A), \
70551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)(__m128)(B), \
70561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)_mm_setzero_ps(), \
70571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)-1, (int)(R)); })
70581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
70601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_scalef_ss (__m128 __A, __m128 __B)
70611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
70621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_scalefss_round_mask ((__v4sf) __A,
70631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v4sf)( __B), (__v4sf) _mm_setzero_ps(),
70641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__mmask8) -1,
70651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             _MM_FROUND_CUR_DIRECTION);
70661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
70671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
70691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_scalef_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
70701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
70711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_scalefss_round_mask ( (__v4sf) __A,
70721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __B,
70731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __W,
70741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
70751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
70761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
70771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_scalef_round_ss(W, U, A, B, R) __extension__ ({ \
70791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_scalefss_round_mask((__v4sf)(__m128)(A), \
70801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)(__m128)(B), \
70811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)(__m128)(W), \
70821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U), (int)(R)); })
70831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70841188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
70851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_scalef_ss (__mmask8 __U, __m128 __A, __m128 __B)
70861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
70871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_scalefss_round_mask ( (__v4sf) __A,
70881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v4sf) __B,
70891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) _mm_setzero_ps (),
70901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
70911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
70921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
70931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
70941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_scalef_round_ss(U, A, B, R) __extension__ ({ \
70951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_scalefss_round_mask((__v4sf)(__m128)(A), \
70961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)(__m128)(B), \
70971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)_mm_setzero_ps(), \
70981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U), \
70991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             _MM_FROUND_CUR_DIRECTION); })
71001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_srai_epi32(A, B) __extension__ ({ \
71021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psradi512_mask((__v16si)(__m512i)(A), (int)(B), \
71031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)_mm512_setzero_si512(), \
71041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)-1); })
71051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_srai_epi32(W, U, A, B) __extension__ ({ \
71071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psradi512_mask((__v16si)(__m512i)(A), (int)(B), \
71081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)(__m512i)(W), \
71091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
71101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_srai_epi32(U, A, B) __extension__ ({ \
71121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psradi512_mask((__v16si)(__m512i)(A), (int)(B), \
71131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16si)_mm512_setzero_si512(), \
71141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
71151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_srai_epi64(A, B) __extension__ ({ \
71171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psraqi512_mask((__v8di)(__m512i)(A), (int)(B), \
71181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)_mm512_setzero_si512(), \
71191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)-1); })
71201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_srai_epi64(W, U, A, B) __extension__ ({ \
71221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psraqi512_mask((__v8di)(__m512i)(A), (int)(B), \
71231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)(__m512i)(W), \
71241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U)); })
71251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_srai_epi64(U, A, B) __extension__ ({ \
71271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_psraqi512_mask((__v8di)(__m512i)(A), (int)(B), \
71281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v8di)_mm512_setzero_si512(), \
71291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask8)(U)); })
71301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_shuffle_f32x4(A, B, imm) __extension__ ({ \
71321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_shuf_f32x4_mask((__v16sf)(__m512)(A), \
71331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)(__m512)(B), (int)(imm), \
71341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)_mm512_undefined_ps(), \
71351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)-1); })
71361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_shuffle_f32x4(W, U, A, B, imm) __extension__ ({ \
71381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_shuf_f32x4_mask((__v16sf)(__m512)(A), \
71391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)(__m512)(B), (int)(imm), \
71401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)(__m512)(W), \
71411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
71421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_shuffle_f32x4(U, A, B, imm) __extension__ ({ \
71441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_shuf_f32x4_mask((__v16sf)(__m512)(A), \
71451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)(__m512)(B), (int)(imm), \
71461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v16sf)_mm512_setzero_ps(), \
71471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__mmask16)(U)); })
71481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_shuffle_f64x2(A, B, imm) __extension__ ({ \
71501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_shuf_f64x2_mask((__v8df)(__m512d)(A), \
71511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)(__m512d)(B), (int)(imm), \
71521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)_mm512_undefined_pd(), \
71531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1); })
71541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_shuffle_f64x2(W, U, A, B, imm) __extension__ ({ \
71561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_shuf_f64x2_mask((__v8df)(__m512d)(A), \
71571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)(__m512d)(B), (int)(imm), \
71581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)(__m512d)(W), \
71591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U)); })
71601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_shuffle_f64x2(U, A, B, imm) __extension__ ({ \
71621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_shuf_f64x2_mask((__v8df)(__m512d)(A), \
71631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)(__m512d)(B), (int)(imm), \
71641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8df)_mm512_setzero_pd(), \
71651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U)); })
71661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_shuffle_i32x4(A, B, imm) __extension__ ({ \
71681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_shuf_i32x4_mask((__v16si)(__m512i)(A), \
71691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16si)(__m512i)(B), (int)(imm), \
71701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16si)_mm512_setzero_si512(), \
71711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)-1); })
71721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_shuffle_i32x4(W, U, A, B, imm) __extension__ ({ \
71741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_shuf_i32x4_mask((__v16si)(__m512i)(A), \
71751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16si)(__m512i)(B), (int)(imm), \
71761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16si)(__m512i)(W), \
71771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U)); })
71781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_shuffle_i32x4(U, A, B, imm) __extension__ ({ \
71801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_shuf_i32x4_mask((__v16si)(__m512i)(A), \
71811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16si)(__m512i)(B), (int)(imm), \
71821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16si)_mm512_setzero_si512(), \
71831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U)); })
71841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_shuffle_i64x2(A, B, imm) __extension__ ({ \
71861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_shuf_i64x2_mask((__v8di)(__m512i)(A), \
71871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8di)(__m512i)(B), (int)(imm), \
71881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8di)_mm512_setzero_si512(), \
71891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)-1); })
71901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_shuffle_i64x2(W, U, A, B, imm) __extension__ ({ \
71921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_shuf_i64x2_mask((__v8di)(__m512i)(A), \
71931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8di)(__m512i)(B), (int)(imm), \
71941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8di)(__m512i)(W), \
71951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U)); })
71961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
71971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_shuffle_i64x2(U, A, B, imm) __extension__ ({ \
71981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_shuf_i64x2_mask((__v8di)(__m512i)(A), \
71991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8di)(__m512i)(B), (int)(imm), \
72001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v8di)_mm512_setzero_si512(), \
72011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U)); })
72021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_shuffle_pd(A, B, M) __extension__ ({ \
72041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_shufflevector((__v8df)(__m512d)(A), \
72051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v8df)(__m512d)(B), \
72061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((M) >> 0) & 0x1), \
72071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((M) >> 1) & 0x1), \
72081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   2  + (((M) >> 2) & 0x1), \
72091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   10 + (((M) >> 3) & 0x1), \
72101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((M) >> 4) & 0x1), \
72111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((M) >> 5) & 0x1), \
72121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   6  + (((M) >> 6) & 0x1), \
72131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   14 + (((M) >> 7) & 0x1)); })
72141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_shuffle_pd(W, U, A, B, M) __extension__ ({ \
72161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \
72171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)_mm512_shuffle_pd((A), (B), (M)), \
72181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)(__m512d)(W)); })
72191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_shuffle_pd(U, A, B, M) __extension__ ({ \
72211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \
72221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)_mm512_shuffle_pd((A), (B), (M)), \
72231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)_mm512_setzero_pd()); })
72241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_shuffle_ps(A, B, M) __extension__ ({ \
72261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_shufflevector((__v16sf)(__m512)(A), \
72271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v16sf)(__m512)(B), \
72281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((M) >> 0) & 0x3), \
72291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((M) >> 2) & 0x3), \
72301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   16 + (((M) >> 4) & 0x3), \
72311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   16 + (((M) >> 6) & 0x3), \
72321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((M) >> 0) & 0x3), \
72331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((M) >> 2) & 0x3), \
72341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   20 + (((M) >> 4) & 0x3), \
72351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   20 + (((M) >> 6) & 0x3), \
72361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((M) >> 0) & 0x3), \
72371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((M) >> 2) & 0x3), \
72381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   24 + (((M) >> 4) & 0x3), \
72391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   24 + (((M) >> 6) & 0x3), \
72401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((M) >> 0) & 0x3), \
72411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((M) >> 2) & 0x3), \
72421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   28 + (((M) >> 4) & 0x3), \
72431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   28 + (((M) >> 6) & 0x3)); })
72441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_shuffle_ps(W, U, A, B, M) __extension__ ({ \
72461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_selectps_512((__mmask16)(U), \
72471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16sf)_mm512_shuffle_ps((A), (B), (M)), \
72481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16sf)(__m512)(W)); })
72491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_shuffle_ps(U, A, B, M) __extension__ ({ \
72511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_selectps_512((__mmask16)(U), \
72521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16sf)_mm512_shuffle_ps((A), (B), (M)), \
72531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16sf)_mm512_setzero_ps()); })
72541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_sqrt_round_sd(A, B, R) __extension__ ({ \
72561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_sqrtsd_round_mask((__v2df)(__m128d)(A), \
72571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v2df)(__m128d)(B), \
72581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v2df)_mm_setzero_pd(), \
72591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)-1, (int)(R)); })
72601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72611188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
72621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_sqrt_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
72631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
72641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_sqrtsd_round_mask ( (__v2df) __A,
72651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v2df) __B,
72661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) __W,
72671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
72681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
72691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
72701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_sqrt_round_sd(W, U, A, B, R) __extension__ ({ \
72721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_sqrtsd_round_mask((__v2df)(__m128d)(A), \
72731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v2df)(__m128d)(B), \
72741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v2df)(__m128d)(W), \
72751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
72761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72771188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
72781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_sqrt_sd (__mmask8 __U, __m128d __A, __m128d __B)
72791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
72801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_sqrtsd_round_mask ( (__v2df) __A,
72811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v2df) __B,
72821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v2df) _mm_setzero_pd (),
72831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
72841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
72851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
72861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_sqrt_round_sd(U, A, B, R) __extension__ ({ \
72881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_sqrtsd_round_mask((__v2df)(__m128d)(A), \
72891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v2df)(__m128d)(B), \
72901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v2df)_mm_setzero_pd(), \
72911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
72921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_sqrt_round_ss(A, B, R) __extension__ ({ \
72941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_sqrtss_round_mask((__v4sf)(__m128)(A), \
72951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v4sf)(__m128)(B), \
72961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v4sf)_mm_setzero_ps(), \
72971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
72981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
72991188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
73001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_sqrt_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
73011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_sqrtss_round_mask ( (__v4sf) __A,
73031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v4sf) __B,
73041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) __W,
73051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
73061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
73071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_sqrt_round_ss(W, U, A, B, R) __extension__ ({ \
73101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_sqrtss_round_mask((__v4sf)(__m128)(A), \
73111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v4sf)(__m128)(B), \
73121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v4sf)(__m128)(W), (__mmask8)(U), \
73131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (int)(R)); })
73141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73151188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
73161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_sqrt_ss (__mmask8 __U, __m128 __A, __m128 __B)
73171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_sqrtss_round_mask ( (__v4sf) __A,
73191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v4sf) __B,
73201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v4sf) _mm_setzero_ps (),
73211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
73221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
73231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_sqrt_round_ss(U, A, B, R) __extension__ ({ \
73261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_sqrtss_round_mask((__v4sf)(__m128)(A), \
73271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v4sf)(__m128)(B), \
73281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v4sf)_mm_setzero_ps(), \
73291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
73301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73311188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
73321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_broadcast_f32x4 (__m128 __A)
73331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_broadcastf32x4_512 ((__v4sf) __A,
73351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf)
73361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_undefined_ps (),
73371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) -1);
73381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
73411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_broadcast_f32x4 (__m512 __O, __mmask16 __M, __m128 __A)
73421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_broadcastf32x4_512 ((__v4sf) __A,
73441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __O,
73451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
73461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
73491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_broadcast_f32x4 (__mmask16 __M, __m128 __A)
73501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_broadcastf32x4_512 ((__v4sf) __A,
73521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf)
73531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_ps (),
73541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
73551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
73581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_broadcast_f64x4 (__m256d __A)
73591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_broadcastf64x4_512 ((__v4df) __A,
73611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df)
73621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_undefined_pd (),
73631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) -1);
73641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73661188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
73671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_broadcast_f64x4 (__m512d __O, __mmask8 __M, __m256d __A)
73681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_broadcastf64x4_512 ((__v4df) __A,
73701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __O,
73711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  __M);
73721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73741188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
73751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_broadcast_f64x4 (__mmask8 __M, __m256d __A)
73761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_broadcastf64x4_512 ((__v4df) __A,
73781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df)
73791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_pd (),
73801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  __M);
73811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
73841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_broadcast_i32x4 (__m128i __A)
73851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_broadcasti32x4_512 ((__v4si) __A,
73871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si)
73881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_undefined_epi32 (),
73891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) -1);
73901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
73921188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
73931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_broadcast_i32x4 (__m512i __O, __mmask16 __M, __m128i __A)
73941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
73951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_broadcasti32x4_512 ((__v4si) __A,
73961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si) __O,
73971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  __M);
73981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
73991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
74011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_broadcast_i32x4 (__mmask16 __M, __m128i __A)
74021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_broadcasti32x4_512 ((__v4si) __A,
74041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si)
74051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_si512 (),
74061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  __M);
74071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74091188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
74101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_broadcast_i64x4 (__m256i __A)
74111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_broadcasti64x4_512 ((__v4di) __A,
74131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8di)
74141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_undefined_epi32 (),
74151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) -1);
74161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
74191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_broadcast_i64x4 (__m512i __O, __mmask8 __M, __m256i __A)
74201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_broadcasti64x4_512 ((__v4di) __A,
74221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8di) __O,
74231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  __M);
74241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74261188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
74271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_broadcast_i64x4 (__mmask8 __M, __m256i __A)
74281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_broadcasti64x4_512 ((__v4di) __A,
74301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8di)
74311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_si512 (),
74321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  __M);
74331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74351188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
74361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_broadcastsd_pd (__m512d __O, __mmask8 __M, __m128d __A)
74371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512(__M,
74391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df) _mm512_broadcastsd_pd(__A),
74401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df) __O);
74411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
74441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_broadcastsd_pd (__mmask8 __M, __m128d __A)
74451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)__builtin_ia32_selectpd_512(__M,
74471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df) _mm512_broadcastsd_pd(__A),
74481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v8df) _mm512_setzero_pd());
74491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74511188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
74521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_broadcastss_ps (__m512 __O, __mmask16 __M, __m128 __A)
74531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512(__M,
74551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf) _mm512_broadcastss_ps(__A),
74561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf) __O);
74571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
74601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_broadcastss_ps (__mmask16 __M, __m128 __A)
74611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512(__M,
74631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf) _mm512_broadcastss_ps(__A),
74641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf) _mm512_setzero_ps());
74651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74671188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
74681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtsepi32_epi8 (__m512i __A)
74691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A,
74711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16qi) _mm_undefined_si128 (),
74721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) -1);
74731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74751188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
74761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A)
74771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A,
74791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16qi) __O, __M);
74801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
74831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtsepi32_epi8 (__mmask16 __M, __m512i __A)
74841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovsdb512_mask ((__v16si) __A,
74861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16qi) _mm_setzero_si128 (),
74871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               __M);
74881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74901188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
74911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A)
74921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovsdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M);
74941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
74951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
74961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
74971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtsepi32_epi16 (__m512i __A)
74981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
74991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A,
75001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16hi) _mm256_undefined_si256 (),
75011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) -1);
75021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75041188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
75051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A)
75061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A,
75081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16hi) __O, __M);
75091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
75121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtsepi32_epi16 (__mmask16 __M, __m512i __A)
75131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovsdw512_mask ((__v16si) __A,
75151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16hi) _mm256_setzero_si256 (),
75161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               __M);
75171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
75201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A)
75211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovsdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M);
75231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75251188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
75261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtsepi64_epi8 (__m512i __A)
75271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A,
75291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16qi) _mm_undefined_si128 (),
75301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask8) -1);
75311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75331188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
75341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A)
75351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A,
75371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16qi) __O, __M);
75381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
75411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtsepi64_epi8 (__mmask8 __M, __m512i __A)
75421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovsqb512_mask ((__v8di) __A,
75441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16qi) _mm_setzero_si128 (),
75451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               __M);
75461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
75491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A)
75501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovsqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M);
75521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
75551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtsepi64_epi32 (__m512i __A)
75561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A,
75581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8si) _mm256_undefined_si256 (),
75591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask8) -1);
75601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
75631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A)
75641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A,
75661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8si) __O, __M);
75671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75691188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
75701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtsepi64_epi32 (__mmask8 __M, __m512i __A)
75711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovsqd512_mask ((__v8di) __A,
75731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8si) _mm256_setzero_si256 (),
75741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               __M);
75751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75771188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
75781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi64_storeu_epi32 (void *__P, __mmask8 __M, __m512i __A)
75791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovsqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M);
75811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
75841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtsepi64_epi16 (__m512i __A)
75851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A,
75871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8hi) _mm_undefined_si128 (),
75881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask8) -1);
75891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
75921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A)
75931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
75941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A,
75951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8hi) __O, __M);
75961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
75971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
75981188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
75991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtsepi64_epi16 (__mmask8 __M, __m512i __A)
76001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovsqw512_mask ((__v8di) __A,
76021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v8hi) _mm_setzero_si128 (),
76031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               __M);
76041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
76071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtsepi64_storeu_epi16 (void * __P, __mmask8 __M, __m512i __A)
76081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovsqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M);
76101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
76131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtusepi32_epi8 (__m512i __A)
76141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A,
76161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16qi) _mm_undefined_si128 (),
76171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) -1);
76181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
76211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A)
76221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A,
76241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16qi) __O,
76251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                __M);
76261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
76291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtusepi32_epi8 (__mmask16 __M, __m512i __A)
76301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovusdb512_mask ((__v16si) __A,
76321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16qi) _mm_setzero_si128 (),
76331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                __M);
76341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
76371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A)
76381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovusdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M);
76401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76421188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
76431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtusepi32_epi16 (__m512i __A)
76441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A,
76461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16hi) _mm256_undefined_si256 (),
76471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) -1);
76481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76501188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
76511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A)
76521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A,
76541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16hi) __O,
76551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                __M);
76561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76581188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
76591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtusepi32_epi16 (__mmask16 __M, __m512i __A)
76601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovusdw512_mask ((__v16si) __A,
76621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16hi) _mm256_setzero_si256 (),
76631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                __M);
76641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76661188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
76671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi32_storeu_epi16 (void *__P, __mmask16 __M, __m512i __A)
76681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovusdw512mem_mask ((__v16hi*) __P, (__v16si) __A, __M);
76701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76721188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
76731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtusepi64_epi8 (__m512i __A)
76741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A,
76761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16qi) _mm_undefined_si128 (),
76771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) -1);
76781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
76811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A)
76821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A,
76841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16qi) __O,
76851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                __M);
76861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
76891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtusepi64_epi8 (__mmask8 __M, __m512i __A)
76901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovusqb512_mask ((__v8di) __A,
76921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16qi) _mm_setzero_si128 (),
76931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                __M);
76941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
76951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
76961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
76971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A)
76981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
76991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovusqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M);
77001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
77031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtusepi64_epi32 (__m512i __A)
77041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A,
77061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8si) _mm256_undefined_si256 (),
77071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) -1);
77081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77101188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
77111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A)
77121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A,
77141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8si) __O, __M);
77151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77171188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
77181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtusepi64_epi32 (__mmask8 __M, __m512i __A)
77191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovusqd512_mask ((__v8di) __A,
77211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8si) _mm256_setzero_si256 (),
77221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                __M);
77231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77251188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
77261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A)
77271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovusqd512mem_mask ((__v8si*) __P, (__v8di) __A, __M);
77291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77311188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
77321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtusepi64_epi16 (__m512i __A)
77331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A,
77351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8hi) _mm_undefined_si128 (),
77361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) -1);
77371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
77401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A)
77411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A,
77431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8hi) __O, __M);
77441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
77471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtusepi64_epi16 (__mmask8 __M, __m512i __A)
77481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovusqw512_mask ((__v8di) __A,
77501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8hi) _mm_setzero_si128 (),
77511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                __M);
77521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77541188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
77551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtusepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
77561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovusqw512mem_mask ((__v8hi*) __P, (__v8di) __A, __M);
77581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
77611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi32_epi8 (__m512i __A)
77621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A,
77641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16qi) _mm_undefined_si128 (),
77651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
77661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
77691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi32_epi8 (__m128i __O, __mmask16 __M, __m512i __A)
77701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A,
77721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16qi) __O, __M);
77731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77751188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
77761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi32_epi8 (__mmask16 __M, __m512i __A)
77771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovdb512_mask ((__v16si) __A,
77791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16qi) _mm_setzero_si128 (),
77801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              __M);
77811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
77841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi32_storeu_epi8 (void * __P, __mmask16 __M, __m512i __A)
77851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovdb512mem_mask ((__v16qi *) __P, (__v16si) __A, __M);
77871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
77901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi32_epi16 (__m512i __A)
77911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
77921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A,
77931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16hi) _mm256_undefined_si256 (),
77941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) -1);
77951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
77961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
77971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
77981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi32_epi16 (__m256i __O, __mmask16 __M, __m512i __A)
77991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A,
78011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16hi) __O, __M);
78021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78041188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
78051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi32_epi16 (__mmask16 __M, __m512i __A)
78061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovdw512_mask ((__v16si) __A,
78081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16hi) _mm256_setzero_si256 (),
78091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              __M);
78101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
78131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi32_storeu_epi16 (void * __P, __mmask16 __M, __m512i __A)
78141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovdw512mem_mask ((__v16hi *) __P, (__v16si) __A, __M);
78161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78181188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
78191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi64_epi8 (__m512i __A)
78201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A,
78221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16qi) _mm_undefined_si128 (),
78231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
78241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78261188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
78271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi64_epi8 (__m128i __O, __mmask8 __M, __m512i __A)
78281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A,
78301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16qi) __O, __M);
78311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78331188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
78341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi64_epi8 (__mmask8 __M, __m512i __A)
78351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovqb512_mask ((__v8di) __A,
78371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16qi) _mm_setzero_si128 (),
78381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              __M);
78391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78411188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
78421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi64_storeu_epi8 (void * __P, __mmask8 __M, __m512i __A)
78431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovqb512mem_mask ((__v16qi *) __P, (__v8di) __A, __M);
78451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
78481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi64_epi32 (__m512i __A)
78491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A,
78511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8si) _mm256_undefined_si256 (),
78521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
78531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78551188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
78561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi64_epi32 (__m256i __O, __mmask8 __M, __m512i __A)
78571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A,
78591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8si) __O, __M);
78601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78621188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m256i __DEFAULT_FN_ATTRS
78631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi64_epi32 (__mmask8 __M, __m512i __A)
78641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m256i) __builtin_ia32_pmovqd512_mask ((__v8di) __A,
78661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8si) _mm256_setzero_si256 (),
78671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              __M);
78681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
78711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi64_storeu_epi32 (void* __P, __mmask8 __M, __m512i __A)
78721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovqd512mem_mask ((__v8si *) __P, (__v8di) __A, __M);
78741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
78771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtepi64_epi16 (__m512i __A)
78781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A,
78801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8hi) _mm_undefined_si128 (),
78811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) -1);
78821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78841188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
78851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi64_epi16 (__m128i __O, __mmask8 __M, __m512i __A)
78861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A,
78881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8hi) __O, __M);
78891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128i __DEFAULT_FN_ATTRS
78921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtepi64_epi16 (__mmask8 __M, __m512i __A)
78931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
78941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128i) __builtin_ia32_pmovqw512_mask ((__v8di) __A,
78951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8hi) _mm_setzero_si128 (),
78961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              __M);
78971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
78981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
78991188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
79001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtepi64_storeu_epi16 (void *__P, __mmask8 __M, __m512i __A)
79011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
79021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_pmovqw512mem_mask ((__v8hi *) __P, (__v8di) __A, __M);
79031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
79041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_extracti32x4_epi32(A, imm) __extension__ ({            \
79061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128i)__builtin_shufflevector((__v16si)(__m512i)(A),             \
79071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v16si)_mm512_undefined_epi32(), \
79081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + ((imm) & 0x3) * 4,             \
79091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   1 + ((imm) & 0x3) * 4,             \
79101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   2 + ((imm) & 0x3) * 4,             \
79111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   3 + ((imm) & 0x3) * 4); })
79121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_extracti32x4_epi32(W, U, A, imm) __extension__ ({ \
79141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, \
79151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v4si)_mm512_extracti32x4_epi32((A), (imm)), \
79161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v4si)__W); })
79171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_extracti32x4_epi32(U, A, imm) __extension__ ({ \
79191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128i)__builtin_ia32_selectd_128((__mmask8)__U, \
79201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v4si)_mm512_extracti32x4_epi32((A), (imm)), \
79211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v4si)_mm_setzero_si128()); })
79221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_extracti64x4_epi64(A, imm) __extension__ ({           \
79241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_shufflevector((__v8di)(__m512i)(A),             \
79251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v8di)_mm512_undefined_epi32(), \
79261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   ((imm) & 1) ? 4 : 0,              \
79271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   ((imm) & 1) ? 5 : 1,              \
79281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   ((imm) & 1) ? 6 : 2,              \
79291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   ((imm) & 1) ? 7 : 3); })
79301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_extracti64x4_epi64(W, U, A, imm) __extension__ ({ \
79321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_selectq_256((__mmask8)__U,      \
79331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v4di)_mm512_extracti64x4_epi64((A), (imm)), \
79341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v4di)__W); })
79351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_extracti64x4_epi64(U, A, imm) __extension__ ({ \
79371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_selectq_256((__mmask8)__U,      \
79381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v4di)_mm512_extracti64x4_epi64((A), (imm)), \
79391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v4di)_mm256_setzero_si256()); })
79401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_insertf64x4(A, B, imm) __extension__ ({ \
79421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_shufflevector((__v8df)(__m512d)(A), \
79431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v8df)_mm512_castpd256_pd512((__m256d)(B)), \
79441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  0 :  8, \
79451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  1 :  9, \
79461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  2 : 10, \
79471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  3 : 11, \
79481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  8 :  4, \
79491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  9 :  5, \
79501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ? 10 :  6, \
79511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ? 11 :  7); })
79521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_insertf64x4(W, U, A, B, imm) __extension__ ({ \
79541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \
79551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v8df)_mm512_insertf64x4((A), (B), (imm)), \
79561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v8df)(W)); })
79571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_insertf64x4(U, A, B, imm) __extension__ ({ \
79591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \
79601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v8df)_mm512_insertf64x4((A), (B), (imm)), \
79611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v8df)_mm512_setzero_pd()); })
79621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_inserti64x4(A, B, imm) __extension__ ({ \
79641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_shufflevector((__v8di)(__m512i)(A), \
79651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v8di)_mm512_castsi256_si512((__m256i)(B)), \
79661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  0 :  8, \
79671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  1 :  9, \
79681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  2 : 10, \
79691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  3 : 11, \
79701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  8 :  4, \
79711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ?  9 :  5, \
79721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ? 10 :  6, \
79731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 ((imm) & 0x1) ? 11 :  7); })
79741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_inserti64x4(W, U, A, B, imm) __extension__ ({ \
79761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
79771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v8di)_mm512_inserti64x4((A), (B), (imm)), \
79781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v8di)(W)); })
79791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_inserti64x4(U, A, B, imm) __extension__ ({ \
79811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
79821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v8di)_mm512_inserti64x4((A), (B), (imm)), \
79831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v8di)_mm512_setzero_si512()); })
79841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
79851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_insertf32x4(A, B, imm) __extension__ ({ \
79861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_shufflevector((__v16sf)(__m512)(A), \
79871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16sf)_mm512_castps128_ps512((__m128)(B)),\
79881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 0) ? 16 :  0, \
79891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 0) ? 17 :  1, \
79901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 0) ? 18 :  2, \
79911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 0) ? 19 :  3, \
79921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 1) ? 16 :  4, \
79931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 1) ? 17 :  5, \
79941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 1) ? 18 :  6, \
79951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 1) ? 19 :  7, \
79961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 2) ? 16 :  8, \
79971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 2) ? 17 :  9, \
79981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 2) ? 18 : 10, \
79991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 2) ? 19 : 11, \
80001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 3) ? 16 : 12, \
80011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 3) ? 17 : 13, \
80021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 3) ? 18 : 14, \
80031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (((imm) & 0x3) == 3) ? 19 : 15); })
80041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_insertf32x4(W, U, A, B, imm) __extension__ ({ \
80061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_selectps_512((__mmask16)(U), \
80071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v16sf)_mm512_insertf32x4((A), (B), (imm)), \
80081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v16sf)(W)); })
80091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_insertf32x4(U, A, B, imm) __extension__ ({ \
80111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_selectps_512((__mmask16)(U), \
80121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v16sf)_mm512_insertf32x4((A), (B), (imm)), \
80131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v16sf)_mm512_setzero_ps()); })
80141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_inserti32x4(A, B, imm) __extension__ ({ \
80161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_shufflevector((__v16si)(__m512i)(A), \
80171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v16si)_mm512_castsi128_si512((__m128i)(B)),\
80181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 0) ? 16 :  0, \
80191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 0) ? 17 :  1, \
80201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 0) ? 18 :  2, \
80211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 0) ? 19 :  3, \
80221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 1) ? 16 :  4, \
80231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 1) ? 17 :  5, \
80241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 1) ? 18 :  6, \
80251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 1) ? 19 :  7, \
80261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 2) ? 16 :  8, \
80271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 2) ? 17 :  9, \
80281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 2) ? 18 : 10, \
80291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 2) ? 19 : 11, \
80301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 3) ? 16 : 12, \
80311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 3) ? 17 : 13, \
80321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 3) ? 18 : 14, \
80331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (((imm) & 0x3) == 3) ? 19 : 15); })
80341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_inserti32x4(W, U, A, B, imm) __extension__ ({ \
80361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
80371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v16si)_mm512_inserti32x4((A), (B), (imm)), \
80381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v16si)(W)); })
80391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_inserti32x4(U, A, B, imm) __extension__ ({ \
80411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
80421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v16si)_mm512_inserti32x4((A), (B), (imm)), \
80431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                 (__v16si)_mm512_setzero_si512()); })
80441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_getmant_round_pd(A, B, C, R) __extension__ ({ \
80461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \
80471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (int)(((C)<<2) | (B)), \
80481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)_mm512_undefined_pd(), \
80491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)-1, (int)(R)); })
80501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_getmant_round_pd(W, U, A, B, C, R) __extension__ ({ \
80521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \
80531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (int)(((C)<<2) | (B)), \
80541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(W), \
80551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
80561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_getmant_round_pd(U, A, B, C, R) __extension__ ({ \
80581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \
80591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (int)(((C)<<2) | (B)), \
80601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)_mm512_setzero_pd(), \
80611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), (int)(R)); })
80621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_getmant_pd(A, B, C) __extension__ ({ \
80641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \
80651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (int)(((C)<<2) | (B)), \
80661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)_mm512_setzero_pd(), \
80671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)-1, \
80681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            _MM_FROUND_CUR_DIRECTION); })
80691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_getmant_pd(W, U, A, B, C) __extension__ ({ \
80711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \
80721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (int)(((C)<<2) | (B)), \
80731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)(__m512d)(W), \
80741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), \
80751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            _MM_FROUND_CUR_DIRECTION); })
80761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_getmant_pd(U, A, B, C) __extension__ ({ \
80781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_getmantpd512_mask((__v8df)(__m512d)(A), \
80791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (int)(((C)<<2) | (B)), \
80801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__v8df)_mm512_setzero_pd(), \
80811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            (__mmask8)(U), \
80821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                            _MM_FROUND_CUR_DIRECTION); })
80831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_getmant_round_ps(A, B, C, R) __extension__ ({ \
80851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \
80861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (int)(((C)<<2) | (B)), \
80871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)_mm512_undefined_ps(), \
80881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)-1, (int)(R)); })
80891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_getmant_round_ps(W, U, A, B, C, R) __extension__ ({ \
80911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \
80921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (int)(((C)<<2) | (B)), \
80931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(W), \
80941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
80951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
80961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_getmant_round_ps(U, A, B, C, R) __extension__ ({ \
80971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \
80981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (int)(((C)<<2) | (B)), \
80991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)_mm512_setzero_ps(), \
81001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), (int)(R)); })
81011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_getmant_ps(A, B, C) __extension__ ({ \
81031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \
81041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (int)(((C)<<2)|(B)), \
81051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)_mm512_undefined_ps(), \
81061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)-1, \
81071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           _MM_FROUND_CUR_DIRECTION); })
81081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_getmant_ps(W, U, A, B, C) __extension__ ({ \
81101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \
81111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (int)(((C)<<2)|(B)), \
81121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)(__m512)(W), \
81131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), \
81141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           _MM_FROUND_CUR_DIRECTION); })
81151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_getmant_ps(U, A, B, C) __extension__ ({ \
81171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_getmantps512_mask((__v16sf)(__m512)(A), \
81181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (int)(((C)<<2)|(B)), \
81191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v16sf)_mm512_setzero_ps(), \
81201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask16)(U), \
81211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           _MM_FROUND_CUR_DIRECTION); })
81221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_getexp_round_pd(A, R) __extension__ ({ \
81241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \
81251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_undefined_pd(), \
81261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
81271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_getexp_round_pd(W, U, A, R) __extension__ ({ \
81291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \
81301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(W), \
81311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
81321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_getexp_round_pd(U, A, R) __extension__ ({ \
81341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_getexppd512_mask((__v8df)(__m512d)(A), \
81351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_setzero_pd(), \
81361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
81371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81381188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
81391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_getexp_pd (__m512d __A)
81401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
81411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A,
81421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) _mm512_undefined_pd (),
81431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) -1,
81441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
81451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
81461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
81481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_getexp_pd (__m512d __W, __mmask8 __U, __m512d __A)
81491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
81501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A,
81511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __W,
81521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
81531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
81541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
81551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
81571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_getexp_pd (__mmask8 __U, __m512d __A)
81581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
81591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_getexppd512_mask ((__v8df) __A,
81601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) _mm512_setzero_pd (),
81611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
81621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
81631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
81641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_getexp_round_ps(A, R) __extension__ ({ \
81661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \
81671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_undefined_ps(), \
81681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)-1, (int)(R)); })
81691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_getexp_round_ps(W, U, A, R) __extension__ ({ \
81711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \
81721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)(__m512)(W), \
81731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U), (int)(R)); })
81741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_getexp_round_ps(U, A, R) __extension__ ({ \
81761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_getexpps512_mask((__v16sf)(__m512)(A), \
81771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v16sf)_mm512_setzero_ps(), \
81781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask16)(U), (int)(R)); })
81791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
81811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_getexp_ps (__m512 __A)
81821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
81831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A,
81841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf) _mm512_undefined_ps (),
81851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) -1,
81861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _MM_FROUND_CUR_DIRECTION);
81871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
81881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81891188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
81901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_getexp_ps (__m512 __W, __mmask16 __U, __m512 __A)
81911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
81921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A,
81931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf) __W,
81941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) __U,
81951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _MM_FROUND_CUR_DIRECTION);
81961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
81971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
81981188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
81991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_getexp_ps (__mmask16 __U, __m512 __A)
82001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
82011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_getexpps512_mask ((__v16sf) __A,
82021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf) _mm512_setzero_ps (),
82031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) __U,
82041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _MM_FROUND_CUR_DIRECTION);
82051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
82061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i64gather_ps(index, addr, scale) __extension__ ({ \
82081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256)__builtin_ia32_gatherdiv16sf((__v8sf)_mm256_undefined_ps(), \
82091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (float const *)(addr), \
82101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8di)(__m512i)(index), (__mmask8)-1, \
82111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(scale)); })
82121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i64gather_ps( __v1_old, __mask, __index,\
82141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  __addr, __scale) __extension__({\
82151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker__builtin_ia32_gatherdiv16sf ((__v8sf) __v1_old,\
82161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                              __addr,(__v8di) __index, __mask, __scale);\
82171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker})
82181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i64gather_epi32(index, addr, scale) __extension__ ({\
82201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_gatherdiv16si((__v8si)_mm256_undefined_ps(), \
82211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int const *)(addr), \
82221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)(__m512i)(index), \
82231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)-1, (int)(scale)); })
82241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i64gather_epi32(v1_old, mask, index, addr, scale) __extension__ ({\
82261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m256i)__builtin_ia32_gatherdiv16si((__v8si)(__m256i)(v1_old), \
82271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int const *)(addr), \
82281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v8di)(__m512i)(index), \
82291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask8)(mask), (int)(scale)); })
82301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i64gather_pd(index, addr, scale) __extension__ ({\
82321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_gatherdiv8df((__v8df)_mm512_undefined_pd(), \
82331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (double const *)(addr), \
82341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8di)(__m512i)(index), (__mmask8)-1, \
82351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(scale)); })
82361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i64gather_pd(v1_old, mask, index, addr, scale) __extension__ ({\
82381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_gatherdiv8df((__v8df)(__m512d)(v1_old), \
82391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (double const *)(addr), \
82401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8di)(__m512i)(index), \
82411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask8)(mask), (int)(scale)); })
82421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i64gather_epi64(index, addr, scale) __extension__ ({\
82441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_gatherdiv8di((__v8di)_mm512_undefined_pd(), \
82451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (long long const *)(addr), \
82461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8di)(__m512i)(index), (__mmask8)-1, \
82471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(scale)); })
82481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i64gather_epi64(v1_old, mask, index, addr, scale) __extension__ ({\
82501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_gatherdiv8di((__v8di)(__m512i)(v1_old), \
82511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (long long const *)(addr), \
82521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8di)(__m512i)(index), \
82531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask8)(mask), (int)(scale)); })
82541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i32gather_ps(index, addr, scale) __extension__ ({\
82561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_gathersiv16sf((__v16sf)_mm512_undefined_ps(), \
82571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (float const *)(addr), \
82581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(index), \
82591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)-1, (int)(scale)); })
82601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i32gather_ps(v1_old, mask, index, addr, scale) __extension__ ({\
82621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512)__builtin_ia32_gathersiv16sf((__v16sf)(__m512)(v1_old), \
82631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (float const *)(addr), \
82641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v16sf)(__m512)(index), \
82651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask16)(mask), (int)(scale)); })
82661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i32gather_epi32(index, addr, scale) __extension__ ({\
82681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_gathersiv16si((__v16si)_mm512_undefined_epi32(), \
82691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int const *)(addr), \
82701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16si)(__m512i)(index), \
82711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)-1, (int)(scale)); })
82721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i32gather_epi32(v1_old, mask, index, addr, scale) __extension__ ({\
82741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_gathersiv16si((__v16si)(__m512i)(v1_old), \
82751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int const *)(addr), \
82761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16si)(__m512i)(index), \
82771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)(mask), (int)(scale)); })
82781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i32gather_pd(index, addr, scale) __extension__ ({\
82801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_gathersiv8df((__v8df)_mm512_undefined_pd(), \
82811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (double const *)(addr), \
82821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8si)(__m256i)(index), (__mmask8)-1, \
82831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(scale)); })
82841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i32gather_pd(v1_old, mask, index, addr, scale) __extension__ ({\
82861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_gathersiv8df((__v8df)(__m512d)(v1_old), \
82871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (double const *)(addr), \
82881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8si)(__m256i)(index), \
82891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask8)(mask), (int)(scale)); })
82901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i32gather_epi64(index, addr, scale) __extension__ ({\
82921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_gathersiv8di((__v8di)_mm512_undefined_epi32(), \
82931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (long long const *)(addr), \
82941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8si)(__m256i)(index), (__mmask8)-1, \
82951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (int)(scale)); })
82961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
82971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i32gather_epi64(v1_old, mask, index, addr, scale) __extension__ ({\
82981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_gathersiv8di((__v8di)(__m512i)(v1_old), \
82991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (long long const *)(addr), \
83001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8si)(__m256i)(index), \
83011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__mmask8)(mask), (int)(scale)); })
83021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i64scatter_ps(addr, index, v1, scale) __extension__ ({\
83041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scatterdiv16sf((float *)(addr), (__mmask8)-1, \
83051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v8di)(__m512i)(index), \
83061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v8sf)(__m256)(v1), (int)(scale)); })
83071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i64scatter_ps(addr, mask, index, v1, scale) __extension__ ({\
83091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scatterdiv16sf((float *)(addr), (__mmask8)(mask), \
83101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v8di)(__m512i)(index), \
83111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v8sf)(__m256)(v1), (int)(scale)); })
83121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i64scatter_epi32(addr, index, v1, scale) __extension__ ({\
83141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scatterdiv16si((int *)(addr), (__mmask8)-1, \
83151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v8di)(__m512i)(index), \
83161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v8si)(__m256i)(v1), (int)(scale)); })
83171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i64scatter_epi32(addr, mask, index, v1, scale) __extension__ ({\
83191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scatterdiv16si((int *)(addr), (__mmask8)(mask), \
83201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v8di)(__m512i)(index), \
83211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v8si)(__m256i)(v1), (int)(scale)); })
83221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i64scatter_pd(addr, index, v1, scale) __extension__ ({\
83241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scatterdiv8df((double *)(addr), (__mmask8)-1, \
83251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8di)(__m512i)(index), \
83261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8df)(__m512d)(v1), (int)(scale)); })
83271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i64scatter_pd(addr, mask, index, v1, scale) __extension__ ({\
83291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scatterdiv8df((double *)(addr), (__mmask8)(mask), \
83301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8di)(__m512i)(index), \
83311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8df)(__m512d)(v1), (int)(scale)); })
83321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i64scatter_epi64(addr, index, v1, scale) __extension__ ({\
83341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scatterdiv8di((long long *)(addr), (__mmask8)-1, \
83351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8di)(__m512i)(index), \
83361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8di)(__m512i)(v1), (int)(scale)); })
83371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i64scatter_epi64(addr, mask, index, v1, scale) __extension__ ({\
83391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scatterdiv8di((long long *)(addr), (__mmask8)(mask), \
83401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8di)(__m512i)(index), \
83411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8di)(__m512i)(v1), (int)(scale)); })
83421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i32scatter_ps(addr, index, v1, scale) __extension__ ({\
83441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scattersiv16sf((float *)(addr), (__mmask16)-1, \
83451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v16si)(__m512i)(index), \
83461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v16sf)(__m512)(v1), (int)(scale)); })
83471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i32scatter_ps(addr, mask, index, v1, scale) __extension__ ({\
83491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scattersiv16sf((float *)(addr), (__mmask16)(mask), \
83501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v16si)(__m512i)(index), \
83511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v16sf)(__m512)(v1), (int)(scale)); })
83521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i32scatter_epi32(addr, index, v1, scale) __extension__ ({\
83541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scattersiv16si((int *)(addr), (__mmask16)-1, \
83551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v16si)(__m512i)(index), \
83561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v16si)(__m512i)(v1), (int)(scale)); })
83571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i32scatter_epi32(addr, mask, index, v1, scale) __extension__ ({\
83591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scattersiv16si((int *)(addr), (__mmask16)(mask), \
83601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v16si)(__m512i)(index), \
83611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__v16si)(__m512i)(v1), (int)(scale)); })
83621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i32scatter_pd(addr, index, v1, scale) __extension__ ({\
83641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scattersiv8df((double *)(addr), (__mmask8)-1, \
83651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8si)(__m256i)(index), \
83661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8df)(__m512d)(v1), (int)(scale)); })
83671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i32scatter_pd(addr, mask, index, v1, scale) __extension__ ({\
83691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scattersiv8df((double *)(addr), (__mmask8)(mask), \
83701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8si)(__m256i)(index), \
83711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8df)(__m512d)(v1), (int)(scale)); })
83721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_i32scatter_epi64(addr, index, v1, scale) __extension__ ({\
83741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scattersiv8di((long long *)(addr), (__mmask8)-1, \
83751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8si)(__m256i)(index), \
83761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8di)(__m512i)(v1), (int)(scale)); })
83771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_i32scatter_epi64(addr, mask, index, v1, scale) __extension__ ({\
83791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_scattersiv8di((long long *)(addr), (__mmask8)(mask), \
83801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8si)(__m256i)(index), \
83811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                               (__v8di)(__m512i)(v1), (int)(scale)); })
83821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
83841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_fmadd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
83851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
83861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) __W,
83871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __A,
83881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
83891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
83901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
83911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
83921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fmadd_round_ss(W, U, A, B, R) __extension__({\
83941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \
83951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v4sf)(__m128)(A), \
83961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v4sf)(__m128)(B), (__mmask8)(U), \
83971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
83981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
83991188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
84001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_fmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
84011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
84021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_maskz ((__v4sf) __A,
84031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
84041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __C,
84051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
84061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
84071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
84081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fmadd_round_ss(U, A, B, C, R) __extension__ ({\
84101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \
84111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(B), \
84121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(C), (__mmask8)(U), \
84131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         _MM_FROUND_CUR_DIRECTION); })
84141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84151188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
84161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask3_fmadd_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U)
84171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
84181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_mask3 ((__v4sf) __W,
84191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __X,
84201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __Y,
84211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
84221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
84231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
84241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask3_fmadd_round_ss(W, X, Y, U, R) __extension__ ({\
84261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_mask3((__v4sf)(__m128)(W), \
84271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(X), \
84281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(Y), (__mmask8)(U), \
84291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
84301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84311188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
84321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_fmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
84331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
84341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) __W,
84351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __A,
84361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v4sf) __B,
84371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
84381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
84391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
84401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fmsub_round_ss(W, U, A, B, R) __extension__ ({\
84421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \
84431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v4sf)(__m128)(A), \
84441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v4sf)(__m128)(B), (__mmask8)(U), \
84451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
84461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
84481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_fmsub_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
84491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
84501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_maskz ((__v4sf) __A,
84511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
84521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v4sf) __C,
84531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
84541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
84551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
84561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fmsub_round_ss(U, A, B, C, R) __extension__ ({\
84581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_maskz((__v4sf)(__m128)(A), \
84591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(B), \
84601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         -(__v4sf)(__m128)(C), (__mmask8)(U), \
84611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
84621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84631188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
84641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask3_fmsub_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U)
84651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
84661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_mask3 ((__v4sf) __W,
84671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __X,
84681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v4sf) __Y,
84691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
84701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
84711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
84721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask3_fmsub_round_ss(W, X, Y, U, R) __extension__ ({\
84741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_mask3((__v4sf)(__m128)(W), \
84751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(X), \
84761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         -(__v4sf)(__m128)(Y), (__mmask8)(U), \
84771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
84781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84791188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
84801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_fnmadd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
84811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
84821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) __W,
84831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v4sf) __A,
84841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
84851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
84861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
84871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
84881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fnmadd_round_ss(W, U, A, B, R) __extension__ ({\
84901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \
84911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        -(__v4sf)(__m128)(A), \
84921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v4sf)(__m128)(B), (__mmask8)(U), \
84931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
84941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
84951188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
84961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_fnmadd_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
84971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
84981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_maskz (-(__v4sf) __A,
84991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
85001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __C,
85011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
85021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
85031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
85041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fnmadd_round_ss(U, A, B, C, R) __extension__ ({\
85061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_maskz(-(__v4sf)(__m128)(A), \
85071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(B), \
85081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(C), (__mmask8)(U), \
85091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
85101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
85121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask3_fnmadd_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U)
85131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
85141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_mask3 (-(__v4sf) __W,
85151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __X,
85161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __Y,
85171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
85181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
85191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
85201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask3_fnmadd_round_ss(W, X, Y, U, R) __extension__({\
85221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_mask3(-(__v4sf)(__m128)(W), \
85231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(X), \
85241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(Y), (__mmask8)(U), \
85251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
85261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85271188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
85281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_fnmsub_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
85291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
85301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_mask ((__v4sf) __W,
85311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v4sf) __A,
85321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v4sf) __B,
85331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
85341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
85351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
85361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fnmsub_round_ss(W, U, A, B, R) __extension__ ({\
85381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_mask((__v4sf)(__m128)(W), \
85391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        -(__v4sf)(__m128)(A), \
85401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        -(__v4sf)(__m128)(B), (__mmask8)(U), \
85411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (int)(R)); })
85421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
85441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_fnmsub_ss (__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
85451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
85461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_maskz (-(__v4sf) __A,
85471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __B,
85481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v4sf) __C,
85491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
85501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
85511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
85521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fnmsub_round_ss(U, A, B, C, R) __extension__ ({\
85541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_maskz(-(__v4sf)(__m128)(A), \
85551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(B), \
85561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         -(__v4sf)(__m128)(C), (__mmask8)(U), \
85571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         _MM_FROUND_CUR_DIRECTION); })
85581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
85601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask3_fnmsub_ss (__m128 __W, __m128 __X, __m128 __Y, __mmask8 __U)
85611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
85621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128) __builtin_ia32_vfmaddss3_mask3 (-(__v4sf) __W,
85631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v4sf) __X,
85641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v4sf) __Y,
85651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
85661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
85671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
85681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask3_fnmsub_round_ss(W, X, Y, U, R) __extension__({\
85701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_vfmaddss3_mask3(-(__v4sf)(__m128)(W), \
85711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v4sf)(__m128)(X), \
85721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         -(__v4sf)(__m128)(Y), (__mmask8)(U), \
85731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
85741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85751188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
85761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_fmadd_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
85771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
85781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_mask ( (__v2df) __W,
85791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __A,
85801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
85811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
85821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
85831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
85841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fmadd_round_sd(W, U, A, B, R) __extension__({\
85861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \
85871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v2df)(__m128d)(A), \
85881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v2df)(__m128d)(B), (__mmask8)(U), \
85891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
85901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
85911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
85921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_fmadd_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
85931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
85941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_maskz ( (__v2df) __A,
85951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
85961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __C,
85971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
85981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
85991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
86001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fmadd_round_sd(U, A, B, C, R) __extension__ ({\
86021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \
86031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(B), \
86041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(C), (__mmask8)(U), \
86051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          _MM_FROUND_CUR_DIRECTION); })
86061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86071188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
86081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask3_fmadd_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U)
86091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
86101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_mask3 ((__v2df) __W,
86111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __X,
86121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __Y,
86131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
86141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
86151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
86161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask3_fmadd_round_sd(W, X, Y, U, R) __extension__ ({\
86181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_mask3((__v2df)(__m128d)(W), \
86191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(X), \
86201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(Y), (__mmask8)(U), \
86211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
86221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86231188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
86241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_fmsub_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
86251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
86261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_mask ( (__v2df) __W,
86271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __A,
86281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v2df) __B,
86291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
86301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
86311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
86321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fmsub_round_sd(W, U, A, B, R) __extension__ ({\
86341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \
86351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v2df)(__m128d)(A), \
86361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         -(__v2df)(__m128d)(B), (__mmask8)(U), \
86371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
86381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
86401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_fmsub_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
86411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
86421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_maskz ( (__v2df) __A,
86431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
86441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v2df) __C,
86451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
86461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
86471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
86481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fmsub_round_sd(U, A, B, C, R) __extension__ ({\
86501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_maskz((__v2df)(__m128d)(A), \
86511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(B), \
86521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          -(__v2df)(__m128d)(C), \
86531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
86541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86551188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
86561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask3_fmsub_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U)
86571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
86581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_mask3 ((__v2df) __W,
86591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __X,
86601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v2df) __Y,
86611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
86621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
86631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
86641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask3_fmsub_round_sd(W, X, Y, U, R) __extension__ ({\
86661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_mask3((__v2df)(__m128d)(W), \
86671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(X), \
86681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          -(__v2df)(__m128d)(Y), \
86691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
86701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
86721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_fnmadd_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
86731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
86741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_mask ( (__v2df) __W,
86751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v2df) __A,
86761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
86771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
86781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
86791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
86801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fnmadd_round_sd(W, U, A, B, R) __extension__ ({\
86821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \
86831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         -(__v2df)(__m128d)(A), \
86841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (__v2df)(__m128d)(B), (__mmask8)(U), \
86851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
86861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86871188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
86881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_fnmadd_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
86891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
86901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_maskz ( -(__v2df) __A,
86911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
86921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __C,
86931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
86941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
86951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
86961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
86971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fnmadd_round_sd(U, A, B, C, R) __extension__ ({\
86981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_maskz(-(__v2df)(__m128d)(A), \
86991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(B), \
87001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(C), (__mmask8)(U), \
87011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
87021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87031188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
87041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask3_fnmadd_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U)
87051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
87061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_mask3 (-(__v2df) __W,
87071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __X,
87081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __Y,
87091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
87101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
87111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
87121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask3_fnmadd_round_sd(W, X, Y, U, R) __extension__({\
87141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_mask3(-(__v2df)(__m128d)(W), \
87151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(X), \
87161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(Y), (__mmask8)(U), \
87171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (int)(R)); })
87181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
87201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_fnmsub_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
87211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
87221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_mask ( (__v2df) __W,
87231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v2df) __A,
87241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v2df) __B,
87251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
87261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
87271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
87281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_fnmsub_round_sd(W, U, A, B, R) __extension__ ({\
87301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_mask((__v2df)(__m128d)(W), \
87311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         -(__v2df)(__m128d)(A), \
87321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         -(__v2df)(__m128d)(B), (__mmask8)(U), \
87331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                         (int)(R)); })
87341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87351188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
87361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_fnmsub_sd (__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
87371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
87381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_maskz ( -(__v2df) __A,
87391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __B,
87401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v2df) __C,
87411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
87421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
87431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
87441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_fnmsub_round_sd(U, A, B, C, R) __extension__ ({\
87461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_maskz(-(__v2df)(__m128d)(A), \
87471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(B), \
87481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          -(__v2df)(__m128d)(C), \
87491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), \
87501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          _MM_FROUND_CUR_DIRECTION); })
87511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
87531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask3_fnmsub_sd (__m128d __W, __m128d __X, __m128d __Y, __mmask8 __U)
87541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
87551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker return (__m128d) __builtin_ia32_vfmaddsd3_mask3 (-(__v2df) (__W),
87561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__v2df) __X,
87571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          -(__v2df) (__Y),
87581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          (__mmask8) __U,
87591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker          _MM_FROUND_CUR_DIRECTION);
87601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
87611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask3_fnmsub_round_sd(W, X, Y, U, R) __extension__({\
87631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_vfmaddsd3_mask3(-(__v2df)(__m128d)(W), \
87641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__v2df)(__m128d)(X), \
87651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          -(__v2df)(__m128d)(Y), \
87661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          (__mmask8)(U), (int)(R)); })
87671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_permutex_pd(X, C) __extension__ ({ \
87691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_shufflevector((__v8df)(__m512d)(X), \
87701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v8df)_mm512_undefined_pd(), \
87711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 0) & 0x3), \
87721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 2) & 0x3), \
87731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 4) & 0x3), \
87741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 6) & 0x3), \
87751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 0) & 0x3), \
87761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 2) & 0x3), \
87771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 4) & 0x3), \
87781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 6) & 0x3)); })
87791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_permutex_pd(W, U, X, C) __extension__ ({ \
87811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \
87821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)_mm512_permutex_pd((X), (C)), \
87831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)(__m512d)(W)); })
87841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_permutex_pd(U, X, C) __extension__ ({ \
87861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_selectpd_512((__mmask8)(U), \
87871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)_mm512_permutex_pd((X), (C)), \
87881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                       (__v8df)_mm512_setzero_pd()); })
87891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
87901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_permutex_epi64(X, C) __extension__ ({ \
87911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_shufflevector((__v8di)(__m512i)(X), \
87921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v8di)_mm512_undefined_epi32(), \
87931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 0) & 0x3), \
87941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 2) & 0x3), \
87951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 4) & 0x3), \
87961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0 + (((C) >> 6) & 0x3), \
87971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 0) & 0x3), \
87981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 2) & 0x3), \
87991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 4) & 0x3), \
88001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4 + (((C) >> 6) & 0x3)); })
88011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_permutex_epi64(W, U, X, C) __extension__ ({ \
88031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
88041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v8di)_mm512_permutex_epi64((X), (C)), \
88051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v8di)(__m512i)(W)); })
88061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_permutex_epi64(U, X, C) __extension__ ({ \
88081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_selectq_512((__mmask8)(U), \
88091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v8di)_mm512_permutex_epi64((X), (C)), \
88101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v8di)_mm512_setzero_si512()); })
88111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
88131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutexvar_pd (__m512i __X, __m512d __Y)
88141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_permvardf512_mask ((__v8df) __Y,
88161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __X,
88171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8df) _mm512_undefined_pd (),
88181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) -1);
88191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
88201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88211188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
88221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutexvar_pd (__m512d __W, __mmask8 __U, __m512i __X, __m512d __Y)
88231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_permvardf512_mask ((__v8df) __Y,
88251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __X,
88261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8df) __W,
88271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) __U);
88281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
88291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88301188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
88311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutexvar_pd (__mmask8 __U, __m512i __X, __m512d __Y)
88321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_permvardf512_mask ((__v8df) __Y,
88341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __X,
88351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8df) _mm512_setzero_pd (),
88361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) __U);
88371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
88381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
88401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutexvar_epi64 (__mmask8 __M, __m512i __X, __m512i __Y)
88411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_permvardi512_mask ((__v8di) __Y,
88431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __X,
88441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) _mm512_setzero_si512 (),
88451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
88461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
88471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
88491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutexvar_epi64 (__m512i __X, __m512i __Y)
88501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_permvardi512_mask ((__v8di) __Y,
88521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __X,
88531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) _mm512_undefined_epi32 (),
88541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8) -1);
88551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
88561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88571188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
88581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutexvar_epi64 (__m512i __W, __mmask8 __M, __m512i __X,
88591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             __m512i __Y)
88601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_permvardi512_mask ((__v8di) __Y,
88621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __X,
88631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8di) __W,
88641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
88651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
88661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88671188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
88681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutexvar_ps (__m512i __X, __m512 __Y)
88691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_permvarsf512_mask ((__v16sf) __Y,
88711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16si) __X,
88721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf) _mm512_undefined_ps (),
88731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) -1);
88741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
88751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
88771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutexvar_ps (__m512 __W, __mmask16 __U, __m512i __X, __m512 __Y)
88781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_permvarsf512_mask ((__v16sf) __Y,
88801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16si) __X,
88811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf) __W,
88821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) __U);
88831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
88841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88851188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
88861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutexvar_ps (__mmask16 __U, __m512i __X, __m512 __Y)
88871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_permvarsf512_mask ((__v16sf) __Y,
88891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16si) __X,
88901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16sf) _mm512_setzero_ps (),
88911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) __U);
88921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
88931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
88941188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
88951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_permutexvar_epi32 (__mmask16 __M, __m512i __X, __m512i __Y)
88961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
88971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_permvarsi512_mask ((__v16si) __Y,
88981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) __X,
88991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) _mm512_setzero_si512 (),
89001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
89011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89031188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
89041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_permutexvar_epi32 (__m512i __X, __m512i __Y)
89051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_permvarsi512_mask ((__v16si) __Y,
89071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) __X,
89081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) _mm512_undefined_epi32 (),
89091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) -1);
89101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
89131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_permutexvar_epi32 (__m512i __W, __mmask16 __M, __m512i __X,
89141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             __m512i __Y)
89151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_permvarsi512_mask ((__v16si) __Y,
89171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) __X,
89181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16si) __W,
89191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
89201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89221188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
89231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_kand (__mmask16 __A, __mmask16 __B)
89241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_kandhi ((__mmask16) __A, (__mmask16) __B);
89261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
89291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_kandn (__mmask16 __A, __mmask16 __B)
89301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_kandnhi ((__mmask16) __A, (__mmask16) __B);
89321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89341188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
89351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_kor (__mmask16 __A, __mmask16 __B)
89361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_korhi ((__mmask16) __A, (__mmask16) __B);
89381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
89411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_kortestc (__mmask16 __A, __mmask16 __B)
89421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_ia32_kortestchi ((__mmask16) __A, (__mmask16) __B);
89441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
89471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_kortestz (__mmask16 __A, __mmask16 __B)
89481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_ia32_kortestzhi ((__mmask16) __A, (__mmask16) __B);
89501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
89531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_kunpackb (__mmask16 __A, __mmask16 __B)
89541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_kunpckhi ((__mmask16) __A, (__mmask16) __B);
89561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89581188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
89591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_kxnor (__mmask16 __A, __mmask16 __B)
89601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_kxnorhi ((__mmask16) __A, (__mmask16) __B);
89621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89641188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __mmask16 __DEFAULT_FN_ATTRS
89651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_kxor (__mmask16 __A, __mmask16 __B)
89661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__mmask16) __builtin_ia32_kxorhi ((__mmask16) __A, (__mmask16) __B);
89681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89701188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
89711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_stream_si512 (__m512i * __P, __m512i __A)
89721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_nontemporal_store((__v8di)__A, (__v8di*)__P);
89741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89761188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
89771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_stream_load_si512 (void *__P)
89781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_ia32_movntdqa512 ((__v8di *)__P);
89801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
89831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_stream_pd (double *__P, __m512d __A)
89841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_nontemporal_store((__v8df)__A, (__v8df*)__P);
89861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
89891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_stream_ps (float *__P, __m512 __A)
89901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_nontemporal_store((__v16sf)__A, (__v16sf*)__P);
89921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
89931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
89941188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
89951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_compress_pd (__m512d __W, __mmask8 __U, __m512d __A)
89961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
89971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A,
89981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df) __W,
89991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
90001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
90011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
90031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_compress_pd (__mmask8 __U, __m512d __A)
90041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
90051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_compressdf512_mask ((__v8df) __A,
90061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8df)
90071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_pd (),
90081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
90091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
90101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
90121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_compress_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
90131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
90141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A,
90151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8di) __W,
90161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
90171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
90181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
90201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_compress_epi64 (__mmask8 __U, __m512i __A)
90211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
90221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_compressdi512_mask ((__v8di) __A,
90231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v8di)
90241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_si512 (),
90251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask8) __U);
90261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
90271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
90291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_compress_ps (__m512 __W, __mmask16 __U, __m512 __A)
90301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
90311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A,
90321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf) __W,
90331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U);
90341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
90351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
90371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_compress_ps (__mmask16 __U, __m512 __A)
90381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
90391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_compresssf512_mask ((__v16sf) __A,
90401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v16sf)
90411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _mm512_setzero_ps (),
90421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask16) __U);
90431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
90441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90451188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
90461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_compress_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
90471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
90481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A,
90491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si) __W,
90501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) __U);
90511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
90521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
90541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_compress_epi32 (__mmask16 __U, __m512i __A)
90551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
90561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_compresssi512_mask ((__v16si) __A,
90571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__v16si)
90581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  _mm512_setzero_si512 (),
90591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__mmask16) __U);
90601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
90611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cmp_round_ss_mask(X, Y, P, R) __extension__ ({ \
90631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \
90641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v4sf)(__m128)(Y), (int)(P), \
90651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__mmask8)-1, (int)(R)); })
90661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_cmp_round_ss_mask(M, X, Y, P, R) __extension__ ({ \
90681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \
90691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v4sf)(__m128)(Y), (int)(P), \
90701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__mmask8)(M), (int)(R)); })
90711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cmp_ss_mask(X, Y, P) __extension__ ({ \
90731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \
90741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v4sf)(__m128)(Y), (int)(P), \
90751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__mmask8)-1, \
90761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      _MM_FROUND_CUR_DIRECTION); })
90771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_cmp_ss_mask(M, X, Y, P) __extension__ ({ \
90791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpss_mask((__v4sf)(__m128)(X), \
90801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v4sf)(__m128)(Y), (int)(P), \
90811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__mmask8)(M), \
90821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      _MM_FROUND_CUR_DIRECTION); })
90831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cmp_round_sd_mask(X, Y, P, R) __extension__ ({ \
90851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \
90861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v2df)(__m128d)(Y), (int)(P), \
90871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__mmask8)-1, (int)(R)); })
90881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_cmp_round_sd_mask(M, X, Y, P, R) __extension__ ({ \
90901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \
90911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v2df)(__m128d)(Y), (int)(P), \
90921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__mmask8)(M), (int)(R)); })
90931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
90941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cmp_sd_mask(X, Y, P) __extension__ ({ \
90951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \
90961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v2df)(__m128d)(Y), (int)(P), \
90971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__mmask8)-1, \
90981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      _MM_FROUND_CUR_DIRECTION); })
90991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_cmp_sd_mask(M, X, Y, P) __extension__ ({ \
91011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__mmask8)__builtin_ia32_cmpsd_mask((__v2df)(__m128d)(X), \
91021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v2df)(__m128d)(Y), (int)(P), \
91031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__mmask8)(M), \
91041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      _MM_FROUND_CUR_DIRECTION); })
91051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
91071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_movehdup_ps (__m512 __A)
91081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A,
91101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                         1, 1, 3, 3, 5, 5, 7, 7, 9, 9, 11, 11, 13, 13, 15, 15);
91111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91131188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
91141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_movehdup_ps (__m512 __W, __mmask16 __U, __m512 __A)
91151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
91171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_movehdup_ps(__A),
91181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)__W);
91191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91211188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
91221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_movehdup_ps (__mmask16 __U, __m512 __A)
91231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
91251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_movehdup_ps(__A),
91261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_setzero_ps());
91271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91291188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
91301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_moveldup_ps (__m512 __A)
91311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_shufflevector((__v16sf)__A, (__v16sf)__A,
91331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                         0, 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 14, 14);
91341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
91371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_moveldup_ps (__m512 __W, __mmask16 __U, __m512 __A)
91381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
91401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_moveldup_ps(__A),
91411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)__W);
91421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91441188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
91451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_moveldup_ps (__mmask16 __U, __m512 __A)
91461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)__builtin_ia32_selectps_512((__mmask16)__U,
91481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_moveldup_ps(__A),
91491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v16sf)_mm512_setzero_ps());
91501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
91531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_move_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B)
91541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_movss_mask ((__v4sf) __A, (__v4sf) __B,
91561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v4sf) __W,
91571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask8) __U);
91581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
91611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_move_ss (__mmask8 __U, __m128 __A, __m128 __B)
91621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_movss_mask ((__v4sf) __A, (__v4sf) __B,
91641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v4sf)
91651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _mm_setzero_si128(),
91661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask8) __U);
91671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91691188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
91701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_move_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B)
91711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_movsd_mask ((__v2df) __A, (__v2df) __B,
91731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v2df) __W,
91741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask8) __U);
91751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91771188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
91781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_move_sd (__mmask8 __U, __m128d __A, __m128d __B)
91791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
91801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_movsd_mask ((__v2df) __A, (__v2df) __B,
91811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v2df)
91821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               _mm_setzero_pd (),
91831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask8) __U);
91841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
91851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
91861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_shuffle_epi32(A, I) __extension__ ({ \
91871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_shufflevector((__v16si)(__m512i)(A), \
91881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   (__v16si)_mm512_undefined_epi32(), \
91891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((I) >> 0) & 0x3), \
91901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((I) >> 2) & 0x3), \
91911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((I) >> 4) & 0x3), \
91921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   0  + (((I) >> 6) & 0x3), \
91931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((I) >> 0) & 0x3), \
91941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((I) >> 2) & 0x3), \
91951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((I) >> 4) & 0x3), \
91961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   4  + (((I) >> 6) & 0x3), \
91971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((I) >> 0) & 0x3), \
91981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((I) >> 2) & 0x3), \
91991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((I) >> 4) & 0x3), \
92001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   8  + (((I) >> 6) & 0x3), \
92011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((I) >> 0) & 0x3), \
92021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((I) >> 2) & 0x3), \
92031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((I) >> 4) & 0x3), \
92041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                   12 + (((I) >> 6) & 0x3)); })
92051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_shuffle_epi32(W, U, A, I) __extension__ ({ \
92071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
92081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16si)_mm512_shuffle_epi32((A), (I)), \
92091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16si)(__m512i)(W)); })
92101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_shuffle_epi32(U, A, I) __extension__ ({ \
92121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512i)__builtin_ia32_selectd_512((__mmask16)(U), \
92131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16si)_mm512_shuffle_epi32((A), (I)), \
92141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (__v16si)_mm512_setzero_si512()); })
92151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92161188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
92171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_expand_pd (__m512d __W, __mmask8 __U, __m512d __A)
92181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A,
92201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __W,
92211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U);
92221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
92251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_expand_pd (__mmask8 __U, __m512d __A)
92261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_expanddf512_mask ((__v8df) __A,
92281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) _mm512_setzero_pd (),
92291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U);
92301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92321188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
92331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_expand_epi64 (__m512i __W, __mmask8 __U, __m512i __A)
92341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A,
92361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8di) __W,
92371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U);
92381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92401188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
92411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_expand_epi64 ( __mmask8 __U, __m512i __A)
92421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_expanddi512_mask ((__v8di) __A,
92441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8di) _mm512_setzero_pd (),
92451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U);
92461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
92491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_expandloadu_pd(__m512d __W, __mmask8 __U, void const *__P)
92501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_expandloaddf512_mask ((const __v8df *)__P,
92521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df) __W,
92531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
92541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
92571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_expandloadu_pd(__mmask8 __U, void const *__P)
92581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_expandloaddf512_mask ((const __v8df *)__P,
92601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df) _mm512_setzero_pd(),
92611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
92621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92641188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
92651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_expandloadu_epi64(__m512i __W, __mmask8 __U, void const *__P)
92661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_expandloaddi512_mask ((const __v8di *)__P,
92681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) __W,
92691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
92701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92721188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
92731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_expandloadu_epi64(__mmask8 __U, void const *__P)
92741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_expandloaddi512_mask ((const __v8di *)__P,
92761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8di) _mm512_setzero_pd(),
92771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask8) __U);
92781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
92811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_expandloadu_ps(__m512 __W, __mmask16 __U, void const *__P)
92821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_expandloadsf512_mask ((const __v16sf *)__P,
92841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf) __W,
92851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
92861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
92891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_expandloadu_ps(__mmask16 __U, void const *__P)
92901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_expandloadsf512_mask ((const __v16sf *)__P,
92921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__v16sf) _mm512_setzero_ps(),
92931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (__mmask16) __U);
92941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
92951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
92961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
92971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_expandloadu_epi32(__m512i __W, __mmask16 __U, void const *__P)
92981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
92991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_expandloadsi512_mask ((const __v16si *)__P,
93001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) __W,
93011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
93021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93041188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
93051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_expandloadu_epi32(__mmask16 __U, void const *__P)
93061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_expandloadsi512_mask ((const __v16si *)__P,
93081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v16si) _mm512_setzero_ps(),
93091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__mmask16) __U);
93101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
93131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_expand_ps (__m512 __W, __mmask16 __U, __m512 __A)
93141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A,
93161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf) __W,
93171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) __U);
93181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
93211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_expand_ps (__mmask16 __U, __m512 __A)
93221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_expandsf512_mask ((__v16sf) __A,
93241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__v16sf) _mm512_setzero_ps(),
93251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker               (__mmask16) __U);
93261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
93291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_expand_epi32 (__m512i __W, __mmask16 __U, __m512i __A)
93301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A,
93321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16si) __W,
93331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) __U);
93341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93361188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
93371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_expand_epi32 (__mmask16 __U, __m512i __A)
93381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_expandsi512_mask ((__v16si) __A,
93401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v16si) _mm512_setzero_ps(),
93411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask16) __U);
93421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_cvt_roundps_pd(A, R) __extension__ ({ \
93451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_cvtps2pd512_mask((__v8sf)(__m256)(A), \
93461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_undefined_pd(), \
93471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)-1, (int)(R)); })
93481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_cvt_roundps_pd(W, U, A, R) __extension__ ({ \
93501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_cvtps2pd512_mask((__v8sf)(__m256)(A), \
93511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)(__m512d)(W), \
93521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
93531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_maskz_cvt_roundps_pd(U, A, R) __extension__ ({ \
93551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m512d)__builtin_ia32_cvtps2pd512_mask((__v8sf)(__m256)(A), \
93561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__v8df)_mm512_setzero_pd(), \
93571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                           (__mmask8)(U), (int)(R)); })
93581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
93601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtps_pd (__m256 __A)
93611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
93631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df)
93641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _mm512_undefined_pd (),
93651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) -1,
93661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
93671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93691188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
93701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtps_pd (__m512d __W, __mmask8 __U, __m256 __A)
93711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
93731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df) __W,
93741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
93751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
93761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93781188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
93791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_cvtps_pd (__mmask8 __U, __m256 __A)
93801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_cvtps2pd512_mask ((__v8sf) __A,
93821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__v8df)
93831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _mm512_setzero_pd (),
93841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (__mmask8) __U,
93851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
93861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
93891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_cvtpslo_pd (__m512 __A)
93901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) _mm512_cvtps_pd(_mm512_castps512_ps256(__A));
93921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
93941188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
93951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_cvtpslo_pd (__m512d __W, __mmask8 __U, __m512 __A)
93961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
93971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) _mm512_mask_cvtps_pd(__W, __U, _mm512_castps512_ps256(__A));
93981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
93991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
94011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_mov_pd (__m512d __W, __mmask8 __U, __m512d __A)
94021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U,
94041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df) __A,
94051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df) __W);
94061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
94091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_mov_pd (__mmask8 __U, __m512d __A)
94101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d) __builtin_ia32_selectpd_512 ((__mmask8) __U,
94121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df) __A,
94131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker              (__v8df) _mm512_setzero_pd ());
94141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94161188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
94171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_mov_ps (__m512 __W, __mmask16 __U, __m512 __A)
94181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U,
94201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16sf) __A,
94211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16sf) __W);
94221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94241188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
94251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_maskz_mov_ps (__mmask16 __U, __m512 __A)
94261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512) __builtin_ia32_selectps_512 ((__mmask16) __U,
94281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16sf) __A,
94291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__v16sf) _mm512_setzero_ps ());
94301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94321188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
94331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m512d __A)
94341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_compressstoredf512_mask ((__v8df *) __P, (__v8df) __A,
94361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask8) __U);
94371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94391188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
94401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m512i __A)
94411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_compressstoredi512_mask ((__v8di *) __P, (__v8di) __A,
94431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask8) __U);
94441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94461188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
94471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_compressstoreu_ps (void *__P, __mmask16 __U, __m512 __A)
94481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_compressstoresf512_mask ((__v16sf *) __P, (__v16sf) __A,
94501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask16) __U);
94511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ void __DEFAULT_FN_ATTRS
94541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_compressstoreu_epi32 (void *__P, __mmask16 __U, __m512i __A)
94551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __builtin_ia32_compressstoresi512_mask ((__v16si *) __P, (__v16si) __A,
94571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__mmask16) __U);
94581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsd_ss(A, B, R) __extension__ ({ \
94611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_cvtsd2ss_round_mask((__v4sf)(__m128)(A), \
94621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v2df)(__m128d)(B), \
94631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)_mm_undefined_ps(), \
94641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)-1, (int)(R)); })
94651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_cvt_roundsd_ss(W, U, A, B, R) __extension__ ({ \
94671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_cvtsd2ss_round_mask((__v4sf)(__m128)(A), \
94681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v2df)(__m128d)(B), \
94691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)(__m128)(W), \
94701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U), (int)(R)); })
94711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_cvt_roundsd_ss(U, A, B, R) __extension__ ({ \
94731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_cvtsd2ss_round_mask((__v4sf)(__m128)(A), \
94741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v2df)(__m128d)(B), \
94751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)_mm_setzero_ps(), \
94761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(U), (int)(R)); })
94771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94781188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
94791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_cvtsd_ss (__m128 __W, __mmask8 __U, __m128 __A, __m128d __B)
94801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)(__A),
94821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v2df)(__B),
94831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)(__W),
94841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(__U), _MM_FROUND_CUR_DIRECTION);
94851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94871188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
94881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_cvtsd_ss (__mmask8 __U, __m128 __A, __m128d __B)
94891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
94901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_ia32_cvtsd2ss_round_mask ((__v4sf)(__A),
94911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v2df)(__B),
94921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__v4sf)_mm_setzero_ps(),
94931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                             (__mmask8)(__U), _MM_FROUND_CUR_DIRECTION);
94941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
94951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
94961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtss_i32 _mm_cvtss_si32
94971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtsd_i32 _mm_cvtsd_si32
94981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvti32_sd _mm_cvtsi32_sd
94991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvti32_ss _mm_cvtsi32_ss
95001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
95011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtss_i64 _mm_cvtss_si64
95021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvtsd_i64 _mm_cvtsd_si64
95031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvti64_sd _mm_cvtsi64_sd
95041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvti64_ss _mm_cvtsi64_ss
95051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
95061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
95081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundi64_sd(A, B, R) __extension__ ({ \
95091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_cvtsi2sd64((__v2df)(__m128d)(A), (long long)(B), \
95101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (int)(R)); })
95111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsi64_sd(A, B, R) __extension__ ({ \
95131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_cvtsi2sd64((__v2df)(__m128d)(A), (long long)(B), \
95141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (int)(R)); })
95151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
95161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsi32_ss(A, B, R) __extension__ ({ \
95181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_cvtsi2ss32((__v4sf)(__m128)(A), (int)(B), (int)(R)); })
95191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundi32_ss(A, B, R) __extension__ ({ \
95211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_cvtsi2ss32((__v4sf)(__m128)(A), (int)(B), (int)(R)); })
95221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
95241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundsi64_ss(A, B, R) __extension__ ({ \
95251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_cvtsi2ss64((__v4sf)(__m128)(A), (long long)(B), \
95261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (int)(R)); })
95271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundi64_ss(A, B, R) __extension__ ({ \
95291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_cvtsi2ss64((__v4sf)(__m128)(A), (long long)(B), \
95301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (int)(R)); })
95311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
95321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundss_sd(A, B, R) __extension__ ({ \
95341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_cvtss2sd_round_mask((__v2df)(__m128d)(A), \
95351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(B), \
95361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)_mm_undefined_pd(), \
95371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)-1, (int)(R)); })
95381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_mask_cvt_roundss_sd(W, U, A, B, R) __extension__ ({ \
95401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_cvtss2sd_round_mask((__v2df)(__m128d)(A), \
95411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(B), \
95421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)(__m128d)(W), \
95431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), (int)(R)); })
95441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_maskz_cvt_roundss_sd(U, A, B, R) __extension__ ({ \
95461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_cvtss2sd_round_mask((__v2df)(__m128d)(A), \
95471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__m128)(B), \
95481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)_mm_setzero_pd(), \
95491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(U), (int)(R)); })
95501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95511188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
95521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_mask_cvtss_sd (__m128d __W, __mmask8 __U, __m128d __A, __m128 __B)
95531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
95541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_ia32_cvtss2sd_round_mask((__v2df)(__A),
95551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__B),
95561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)(__W),
95571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(__U), _MM_FROUND_CUR_DIRECTION);
95581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
95591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
95611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_maskz_cvtss_sd (__mmask8 __U, __m128d __A, __m128 __B)
95621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
95631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __builtin_ia32_cvtss2sd_round_mask((__v2df)(__A),
95641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v4sf)(__B),
95651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__v2df)_mm_setzero_pd(),
95661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                              (__mmask8)(__U), _MM_FROUND_CUR_DIRECTION);
95671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
95681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95691188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
95701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvtu32_sd (__m128d __A, unsigned __B)
95711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
95721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_cvtusi2sd32 ((__v2df) __A, __B);
95731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
95741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
95761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundu64_sd(A, B, R) __extension__ ({ \
95771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128d)__builtin_ia32_cvtusi2sd64((__v2df)(__m128d)(A), \
95781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                      (unsigned long long)(B), (int)(R)); })
95791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95801188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128d __DEFAULT_FN_ATTRS
95811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvtu64_sd (__m128d __A, unsigned long long __B)
95821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
95831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128d) __builtin_ia32_cvtusi2sd64 ((__v2df) __A, __B,
95841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 _MM_FROUND_CUR_DIRECTION);
95851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
95861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
95871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundu32_ss(A, B, R) __extension__ ({ \
95891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_cvtusi2ss32((__v4sf)(__m128)(A), (unsigned int)(B), \
95901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (int)(R)); })
95911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95921188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
95931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvtu32_ss (__m128 __A, unsigned __B)
95941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
95951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_cvtusi2ss32 ((__v4sf) __A, __B,
95961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
95971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
95981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
95991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
96001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm_cvt_roundu64_ss(A, B, R) __extension__ ({ \
96011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  (__m128)__builtin_ia32_cvtusi2ss64((__v4sf)(__m128)(A), \
96021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (unsigned long long)(B), (int)(R)); })
96031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96041188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m128 __DEFAULT_FN_ATTRS
96051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm_cvtu64_ss (__m128 __A, unsigned long long __B)
96061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m128) __builtin_ia32_cvtusi2ss64 ((__v4sf) __A, __B,
96081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                _MM_FROUND_CUR_DIRECTION);
96091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
96111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96121188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
96131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_set1_epi32 (__m512i __O, __mmask16 __M, int __A)
96141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pbroadcastd512_gpr_mask (__A, (__v16si) __O,
96161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
96171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#ifdef __x86_64__
96201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
96211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_set1_epi64 (__m512i __O, __mmask8 __M, long long __A)
96221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512i) __builtin_ia32_pbroadcastq512_gpr_mask (__A, (__v8di) __O,
96241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 __M);
96251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif
96271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96281188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline __m512i __DEFAULT_FN_ATTRS
96291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set_epi32 (int __A, int __B, int __C, int __D,
96301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker     int __E, int __F, int __G, int __H,
96311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker     int __I, int __J, int __K, int __L,
96321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker     int __M, int __N, int __O, int __P)
96331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __extension__ (__m512i)(__v16si)
96351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  { __P, __O, __N, __M, __L, __K, __J, __I,
96361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    __H, __G, __F, __E, __D, __C, __B, __A };
96371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setr_epi32(e0,e1,e2,e3,e4,e5,e6,e7,           \
96401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker       e8,e9,e10,e11,e12,e13,e14,e15)          \
96411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_set_epi32((e15),(e14),(e13),(e12),(e11),(e10),(e9),(e8),(e7),(e6), \
96421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                   (e5),(e4),(e3),(e2),(e1),(e0))
96431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96441188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512i __DEFAULT_FN_ATTRS
96451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set_epi64 (long long __A, long long __B, long long __C,
96461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker     long long __D, long long __E, long long __F,
96471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker     long long __G, long long __H)
96481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __extension__ (__m512i) (__v8di)
96501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  { __H, __G, __F, __E, __D, __C, __B, __A };
96511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setr_epi64(e0,e1,e2,e3,e4,e5,e6,e7)           \
96541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_set_epi64((e7),(e6),(e5),(e4),(e3),(e2),(e1),(e0))
96551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
96571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set_pd (double __A, double __B, double __C, double __D,
96581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker        double __E, double __F, double __G, double __H)
96591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __extension__ (__m512d)
96611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  { __H, __G, __F, __E, __D, __C, __B, __A };
96621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setr_pd(e0,e1,e2,e3,e4,e5,e6,e7)              \
96651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_set_pd((e7),(e6),(e5),(e4),(e3),(e2),(e1),(e0))
96661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96671188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
96681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_set_ps (float __A, float __B, float __C, float __D,
96691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker        float __E, float __F, float __G, float __H,
96701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker        float __I, float __J, float __K, float __L,
96711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker        float __M, float __N, float __O, float __P)
96721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return __extension__ (__m512)
96741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  { __P, __O, __N, __M, __L, __K, __J, __I,
96751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    __H, __G, __F, __E, __D, __C, __B, __A };
96761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_setr_ps(e0,e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12,e13,e14,e15) \
96791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_set_ps((e15),(e14),(e13),(e12),(e11),(e10),(e9),(e8),(e7),(e6),(e5), \
96801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                (e4),(e3),(e2),(e1),(e0))
96811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
96831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_abs_ps(__m512 __A)
96841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)_mm512_and_epi32(_mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ;
96861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96881188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512 __DEFAULT_FN_ATTRS
96891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_abs_ps(__m512 __W, __mmask16 __K, __m512 __A)
96901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512)_mm512_mask_and_epi32((__m512i)__W, __K, _mm512_set1_epi32(0x7FFFFFFF),(__m512i)__A) ;
96921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
96941188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
96951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_abs_pd(__m512d __A)
96961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
96971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)_mm512_and_epi64(_mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A) ;
96981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
96991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97001188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ __m512d __DEFAULT_FN_ATTRS
97011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_abs_pd(__m512d __W, __mmask8 __K, __m512d __A)
97021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker{
97031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  return (__m512d)_mm512_mask_and_epi64((__v8di)__W, __K, _mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),(__v8di)__A);
97041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
97051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vector-reduction arithmetic accepts vectors as inputs and produces scalars as
97071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// outputs. This class of vector operation forms the basis of many scientific
97081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// computations. In vector-reduction arithmetic, the evaluation off is
97091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// independent of the order of the input elements of V.
97101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Used bisection method. At each step, we partition the vector with previous
97121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// step in half, and the operation is performed on its two halves.
97131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// This takes log2(n) steps where n is the number of elements in the vector.
97141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512 - Vector with size 512.
97161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Operator - Can be one of following: +,*,&,|
97171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T2  - Can get 'i' for int and 'f' for float.
97181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T1 - Can get 'i' for int and 'd' for double.
97191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_reduce_operator_64bit(Vec512, Operator, T2, T1)         \
97211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __extension__({                                                      \
97221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    __m256##T1 Vec256 = __builtin_shufflevector(                       \
97231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            (__v8d##T2)Vec512,                         \
97241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            (__v8d##T2)Vec512,                         \
97251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            0, 1, 2, 3)                                \
97261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                        Operator                                       \
97271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                        __builtin_shufflevector(                       \
97281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            (__v8d##T2)Vec512,                         \
97291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            (__v8d##T2)Vec512,                         \
97301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            4, 5, 6, 7);                               \
97311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    __m128##T1 Vec128 = __builtin_shufflevector(                       \
97321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            (__v4d##T2)Vec256,                         \
97331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            (__v4d##T2)Vec256,                         \
97341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            0, 1)                                      \
97351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                        Operator                                       \
97361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                        __builtin_shufflevector(                       \
97371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            (__v4d##T2)Vec256,                         \
97381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            (__v4d##T2)Vec256,                         \
97391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                            2, 3);                                     \
97401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec128 = __builtin_shufflevector((__v2d##T2)Vec128,                \
97411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (__v2d##T2)Vec128, 0, -1)         \
97421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             Operator                                                  \
97431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             __builtin_shufflevector((__v2d##T2)Vec128,                \
97441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                     (__v2d##T2)Vec128, 1, -1);        \
97451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    return Vec128[0];                                                  \
97461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  })
97471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97481188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS _mm512_reduce_add_epi64(__m512i __W) {
97491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_64bit(__W, +, i, i);
97501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
97511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS _mm512_reduce_mul_epi64(__m512i __W) {
97531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_64bit(__W, *, i, i);
97541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
97551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS _mm512_reduce_and_epi64(__m512i __W) {
97571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_64bit(__W, &, i, i);
97581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
97591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS _mm512_reduce_or_epi64(__m512i __W) {
97611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_64bit(__W, |, i, i);
97621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
97631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97641188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ double __DEFAULT_FN_ATTRS _mm512_reduce_add_pd(__m512d __W) {
97651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_64bit(__W, +, f, d);
97661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
97671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97681188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ double __DEFAULT_FN_ATTRS _mm512_reduce_mul_pd(__m512d __W) {
97691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_64bit(__W, *, f, d);
97701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
97711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512 - Vector with size 512.
97731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512Neutral - All vector elements set to the identity element.
97741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Identity element: {+,0},{*,1},{&,0xFFFFFFFFFFFFFFFF},{|,0}
97751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Operator - Can be one of following: +,*,&,|
97761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Mask - Intrinsic Mask
97771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T2  - Can get 'i' for int and 'f' for float.
97781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T1 - Can get 'i' for int and 'd' for packed double-precision.
97791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T3 - Can be Pd for packed double or q for q-word.
97801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_reduce_operator_64bit(Vec512, Vec512Neutral, Operator,     \
97821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          Mask, T2, T1, T3)                    \
97831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __extension__({                                                              \
97841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec512 = __builtin_ia32_select##T3##_512(                                  \
97851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__mmask8)Mask,                                               \
97861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8d##T2)Vec512,                                            \
97871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                 (__v8d##T2)Vec512Neutral);                                    \
97881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_reduce_operator_64bit(Vec512, Operator, T2, T1);                    \
97891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  })
97901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97911188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS
97921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_add_epi64(__mmask8 __M, __m512i __W) {
97931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_64bit(__W, _mm512_set1_epi64(0), +, __M, i, i, q);
97941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
97951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
97961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS
97971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_mul_epi64(__mmask8 __M, __m512i __W) {
97981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_64bit(__W, _mm512_set1_epi64(1), *, __M, i, i, q);
97991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS
98021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_and_epi64(__mmask8 __M, __m512i __W) {
98031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_64bit(__W, _mm512_set1_epi64(0xFFFFFFFFFFFFFFFF),
98041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    &, __M,  i, i, q);
98051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98071188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS
98081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_or_epi64(__mmask8 __M, __m512i __W) {
98091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_64bit(__W, _mm512_set1_epi64(0), |, __M,
98101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    i, i, q);
98111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98131188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ double __DEFAULT_FN_ATTRS
98141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_add_pd(__mmask8 __M, __m512d __W) {
98151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_64bit(__W, _mm512_set1_pd(0), +, __M,
98161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    f, d, pd);
98171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98191188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ double __DEFAULT_FN_ATTRS
98201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_mul_pd(__mmask8 __M, __m512d __W) {
98211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_64bit(__W, _mm512_set1_pd(1), *, __M,
98221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    f, d, pd);
98231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512 - Vector with size 512.
98261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Operator - Can be one of following: +,*,&,|
98271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T2 - Can get 'i' for int and ' ' for packed single.
98281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T1 - Can get 'i' for int and 'f' for float.
98291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_reduce_operator_32bit(Vec512, Operator, T2, T1) __extension__({ \
98311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    __m256##T1 Vec256 =                                                        \
98321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker            (__m256##T1)(__builtin_shufflevector(                              \
98331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v16s##T2)Vec512,                        \
98341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v16s##T2)Vec512,                        \
98351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    0, 1, 2, 3, 4, 5, 6, 7)                    \
98361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                Operator                                       \
98371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                         __builtin_shufflevector(                              \
98381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v16s##T2)Vec512,                        \
98391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v16s##T2)Vec512,                        \
98401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    8, 9, 10, 11, 12, 13, 14, 15));            \
98411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    __m128##T1 Vec128 =                                                        \
98421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker             (__m128##T1)(__builtin_shufflevector(                             \
98431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v8s##T2)Vec256,                         \
98441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v8s##T2)Vec256,                         \
98451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    0, 1, 2, 3)                                \
98461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                Operator                                       \
98471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                          __builtin_shufflevector(                             \
98481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v8s##T2)Vec256,                         \
98491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v8s##T2)Vec256,                         \
98501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    4, 5, 6, 7));                              \
98511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec128 = (__m128##T1)(__builtin_shufflevector(                             \
98521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v4s##T2)Vec128,                         \
98531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v4s##T2)Vec128,                         \
98541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    0, 1, -1, -1)                              \
98551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                Operator                                       \
98561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                          __builtin_shufflevector(                             \
98571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v4s##T2)Vec128,                         \
98581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v4s##T2)Vec128,                         \
98591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    2, 3, -1, -1));                            \
98601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec128 = (__m128##T1)(__builtin_shufflevector(                             \
98611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v4s##T2)Vec128,                         \
98621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v4s##T2)Vec128,                         \
98631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    0, -1, -1, -1)                             \
98641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                Operator                                       \
98651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                          __builtin_shufflevector(                             \
98661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v4s##T2)Vec128,                         \
98671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    (__v4s##T2)Vec128,                         \
98681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    1, -1, -1, -1));                           \
98691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    return Vec128[0];                                                          \
98701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  })
98711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98721188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
98731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_add_epi32(__m512i __W) {
98741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_32bit(__W, +, i, i);
98751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98771188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
98781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_mul_epi32(__m512i __W) {
98791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_32bit(__W, *, i, i);
98801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98821188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
98831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_and_epi32(__m512i __W) {
98841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_32bit(__W, &, i, i);
98851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98871188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
98881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_or_epi32(__m512i __W) {
98891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_32bit(__W, |, i, i);
98901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98921188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ float __DEFAULT_FN_ATTRS
98931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_add_ps(__m512 __W) {
98941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_32bit(__W, +, f, );
98951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
98961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
98971188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ float __DEFAULT_FN_ATTRS
98981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_mul_ps(__m512 __W) {
98991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_operator_32bit(__W, *, f, );
99001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
99011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512 - Vector with size 512.
99031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512Neutral - All vector elements set to the identity element.
99041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Identity element: {+,0},{*,1},{&,0xFFFFFFFF},{|,0}
99051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Operator - Can be one of following: +,*,&,|
99061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Mask - Intrinsic Mask
99071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T2  - Can get 'i' for int and 'f' for float.
99081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T1 - Can get 'i' for int and 'd' for double.
99091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T3 - Can be Ps for packed single or d for d-word.
99101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_reduce_operator_32bit(Vec512, Vec512Neutral, Operator,     \
99121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                          Mask, T2, T1, T3)                    \
99131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __extension__({                                                              \
99141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec512 = (__m512##T1)__builtin_ia32_select##T3##_512(                      \
99151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             (__mmask16)Mask,                                  \
99161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             (__v16s##T2)Vec512,                               \
99171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             (__v16s##T2)Vec512Neutral);                       \
99181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_reduce_operator_32bit(Vec512, Operator, T2, T1);                    \
99191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  })
99201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99211188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
99221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_add_epi32( __mmask16 __M, __m512i __W) {
99231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_32bit(__W, _mm512_set1_epi32(0), +, __M, i, i, d);
99241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
99251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99261188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
99271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_mul_epi32( __mmask16 __M, __m512i __W) {
99281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_32bit(__W, _mm512_set1_epi32(1), *, __M, i, i, d);
99291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
99301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99311188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
99321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_and_epi32( __mmask16 __M, __m512i __W) {
99331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_32bit(__W, _mm512_set1_epi32(0xFFFFFFFF), &, __M,
99341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                    i, i, d);
99351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
99361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99371188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
99381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_or_epi32(__mmask16 __M, __m512i __W) {
99391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_32bit(__W, _mm512_set1_epi32(0), |, __M, i, i, d);
99401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
99411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99421188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ float __DEFAULT_FN_ATTRS
99431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_add_ps(__mmask16 __M, __m512 __W) {
99441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_32bit(__W, _mm512_set1_ps(0), +, __M, f, , ps);
99451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
99461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ float __DEFAULT_FN_ATTRS
99481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_mul_ps(__mmask16 __M, __m512 __W) {
99491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_operator_32bit(__W, _mm512_set1_ps(1), *, __M, f, , ps);
99501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
99511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Used bisection method. At each step, we partition the vector with previous
99531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// step in half, and the operation is performed on its two halves.
99541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// This takes log2(n) steps where n is the number of elements in the vector.
99551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// This macro uses only intrinsics from the AVX512F feature.
99561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512 - Vector with size of 512.
99581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// IntrinName - Can be one of following: {max|min}_{epi64|epu64|pd} for example:
99591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//              __mm512_max_epi64
99601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T1 - Can get 'i' for int and 'd' for double.[__m512{i|d}]
99611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T2 - Can get 'i' for int and 'f' for float. [__v8d{i|f}]
99621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_reduce_maxMin_64bit(Vec512, IntrinName, T1, T2) __extension__({ \
99641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker        Vec512 = _mm512_##IntrinName(                                          \
99651188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__m512##T1)__builtin_shufflevector(           \
99661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 0, 1, 2, 3, -1, -1, -1, -1),  \
99691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__m512##T1)__builtin_shufflevector(           \
99701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 4, 5, 6, 7, -1, -1, -1, -1)); \
99731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker        Vec512 = _mm512_##IntrinName(                                          \
99741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__m512##T1)__builtin_shufflevector(           \
99751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 0, 1, -1, -1, -1, -1, -1, -1),\
99781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__m512##T1)__builtin_shufflevector(           \
99791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 2, 3, -1, -1, -1, -1, -1,     \
99821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                 -1));                         \
99831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker        Vec512 = _mm512_##IntrinName(                                          \
99841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__m512##T1)__builtin_shufflevector(           \
99851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                0, -1, -1, -1, -1, -1, -1, -1),\
99881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                (__m512##T1)__builtin_shufflevector(           \
99891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                (__v8d##T2)Vec512,             \
99911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                1, -1, -1, -1, -1, -1, -1, -1))\
99921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                                ;                              \
99931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    return Vec512[0];                                                          \
99941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  })
99951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
99961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS
99971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_max_epi64(__m512i __V) {
99981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_64bit(__V, max_epi64, i, i);
99991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100011188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned long long __DEFAULT_FN_ATTRS
100021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_max_epu64(__m512i __V) {
100031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_64bit(__V, max_epu64, i, i);
100041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100061188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ double __DEFAULT_FN_ATTRS
100071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_max_pd(__m512d __V) {
100081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_64bit(__V, max_pd, d, f);
100091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100111188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS _mm512_reduce_min_epi64
100121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker(__m512i __V) {
100131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_64bit(__V, min_epi64, i, i);
100141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100161188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned long long __DEFAULT_FN_ATTRS
100171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_min_epu64(__m512i __V) {
100181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_64bit(__V, min_epu64, i, i);
100191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100211188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ double __DEFAULT_FN_ATTRS
100221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_min_pd(__m512d __V) {
100231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_64bit(__V, min_pd, d, f);
100241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512 - Vector with size 512.
100271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512Neutral - A 512 length vector with elements set to the identity element
100281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Identity element: {max_epi,0x8000000000000000}
100291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {max_epu,0x0000000000000000}
100301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {max_pd, 0xFFF0000000000000}
100311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {min_epi,0x7FFFFFFFFFFFFFFF}
100321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {min_epu,0xFFFFFFFFFFFFFFFF}
100331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {min_pd, 0x7FF0000000000000}
100341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//
100351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// IntrinName - Can be one of following: {max|min}_{epi64|epu64|pd} for example:
100361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//              __mm512_max_epi64
100371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T1 - Can get 'i' for int and 'd' for double.[__m512{i|d}]
100381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T2 - Can get 'i' for int and 'f' for float. [__v8d{i|f}]
100391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T3 - Can get 'q' q word and 'pd' for packed double.
100401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//      [__builtin_ia32_select{q|pd}_512]
100411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Mask - Intrinsic Mask
100421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100431188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_reduce_maxMin_64bit(Vec512, Vec512Neutral, IntrinName, T1, \
100441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        T2, T3, Mask)                          \
100451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __extension__({                                                              \
100461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec512 = (__m512##T1)__builtin_ia32_select##T3##_512(                      \
100471188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             (__mmask8)Mask,                                   \
100481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             (__v8d##T2)Vec512,                                \
100491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                             (__v8d##T2)Vec512Neutral);                        \
100501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    _mm512_reduce_maxMin_64bit(Vec512, IntrinName, T1, T2);                    \
100511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  })
100521188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100531188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS
100541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_max_epi64(__mmask8 __M, __m512i __V) {
100551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_64bit(__V, _mm512_set1_epi64(0x8000000000000000),
100561188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  max_epi64, i, i, q, __M);
100571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100591188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned long long __DEFAULT_FN_ATTRS
100601188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_max_epu64(__mmask8 __M, __m512i __V) {
100611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_64bit(__V, _mm512_set1_epi64(0x0000000000000000),
100621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  max_epu64, i, i, q, __M);
100631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ double __DEFAULT_FN_ATTRS
100661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_max_pd(__mmask8 __M, __m512d __V) {
100671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_64bit(__V, -_mm512_set1_pd(__builtin_inf()),
100681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  max_pd, d, f, pd, __M);
100691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100711188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ long long __DEFAULT_FN_ATTRS
100721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_min_epi64(__mmask8 __M, __m512i __V) {
100731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_64bit(__V, _mm512_set1_epi64(0x7FFFFFFFFFFFFFFF),
100741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  min_epi64, i, i, q, __M);
100751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100771188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned long long __DEFAULT_FN_ATTRS
100781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_min_epu64(__mmask8 __M, __m512i __V) {
100791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_64bit(__V, _mm512_set1_epi64(0xFFFFFFFFFFFFFFFF),
100801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  min_epu64, i, i, q, __M);
100811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100831188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ double __DEFAULT_FN_ATTRS
100841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_min_pd(__mmask8 __M, __m512d __V) {
100851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_64bit(__V, _mm512_set1_pd(__builtin_inf()),
100861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  min_pd, d, f, pd, __M);
100871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
100881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512 - Vector with size 512.
100901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// IntrinName - Can be one of following: {max|min}_{epi32|epu32|ps} for example:
100911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//              __mm512_max_epi32
100921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T1 - Can get 'i' for int and ' ' .[__m512{i|}]
100931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T2 - Can get 'i' for int and 'f' for float.[__v16s{i|f}]
100941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
100951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_reduce_maxMin_32bit(Vec512, IntrinName, T1, T2) __extension__({ \
100961188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec512 = _mm512_##IntrinName(                                              \
100971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__m512##T1)__builtin_shufflevector(                         \
100981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
100991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  0, 1, 2, 3, 4, 5, 6, 7,                      \
101011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  -1, -1, -1, -1, -1, -1, -1, -1),             \
101021188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__m512##T1)__builtin_shufflevector(                         \
101031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  8, 9, 10, 11, 12, 13, 14, 15,                \
101061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  -1, -1, -1, -1, -1, -1, -1, -1));            \
101071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec512 = _mm512_##IntrinName(                                              \
101081188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__m512##T1)__builtin_shufflevector(                         \
101091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  0, 1, 2, 3, -1, -1, -1, -1,                  \
101121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  -1, -1, -1, -1, -1, -1, -1, -1),             \
101131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__m512##T1)__builtin_shufflevector(                         \
101141188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  4, 5, 6, 7, -1, -1, -1, -1,                  \
101171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  -1, -1, -1, -1, -1, -1, -1, -1));            \
101181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec512 = _mm512_##IntrinName(                                              \
101191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__m512##T1)__builtin_shufflevector(                         \
101201188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  0, 1, -1, -1, -1, -1, -1, -1,                \
101231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  -1, -1, -1, -1, -1, -1, -1, -1),             \
101241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__m512##T1)__builtin_shufflevector(                         \
101251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101261188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  2, 3, -1, -1, -1, -1, -1, -1,                \
101281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  -1, -1, -1, -1, -1, -1, -1, -1));            \
101291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec512 = _mm512_##IntrinName(                                              \
101301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__m512##T1)__builtin_shufflevector(                         \
101311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  0,  -1, -1, -1, -1, -1, -1, -1,              \
101341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  -1, -1, -1, -1, -1, -1, -1, -1),             \
101351188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                  (__m512##T1)__builtin_shufflevector(                         \
101361188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101371188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  (__v16s##T2)Vec512,                          \
101381188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  1, -1, -1, -1, -1, -1, -1, -1,               \
101391188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  -1, -1, -1, -1, -1, -1, -1, -1));            \
101401188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    return Vec512[0];                                                          \
101411188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  })
101421188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
101431188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS _mm512_reduce_max_epi32(__m512i a) {
101441188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_32bit(a, max_epi32, i, i);
101451188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
101461188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
101471188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned int __DEFAULT_FN_ATTRS
101481188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_max_epu32(__m512i a) {
101491188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_32bit(a, max_epu32, i, i);
101501188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
101511188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
101521188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ float __DEFAULT_FN_ATTRS _mm512_reduce_max_ps(__m512 a) {
101531188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_32bit(a, max_ps, , f);
101541188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
101551188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
101561188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS _mm512_reduce_min_epi32(__m512i a) {
101571188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_32bit(a, min_epi32, i, i);
101581188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
101591188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
101601188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned int __DEFAULT_FN_ATTRS
101611188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_reduce_min_epu32(__m512i a) {
101621188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_32bit(a, min_epu32, i, i);
101631188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
101641188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
101651188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ float __DEFAULT_FN_ATTRS _mm512_reduce_min_ps(__m512 a) {
101661188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_reduce_maxMin_32bit(a, min_ps, , f);
101671188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
101681188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
101691188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512 - Vector with size 512.
101701188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Vec512Neutral - A 512 length vector with elements set to the identity element
101711188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Identity element: {max_epi,0x80000000}
101721188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {max_epu,0x00000000}
101731188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {max_ps, 0xFF800000}
101741188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {min_epi,0x7FFFFFFF}
101751188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {min_epu,0xFFFFFFFF}
101761188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//                   {min_ps, 0x7F800000}
101771188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//
101781188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// IntrinName - Can be one of following: {max|min}_{epi32|epu32|ps} for example:
101791188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//              __mm512_max_epi32
101801188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T1 - Can get 'i' for int and ' ' .[__m512{i|}]
101811188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T2 - Can get 'i' for int and 'f' for float.[__v16s{i|f}]
101821188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// T3 - Can get 'q' q word and 'pd' for packed double.
101831188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker//      [__builtin_ia32_select{q|pd}_512]
101841188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker// Mask - Intrinsic Mask
101851188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
101861188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#define _mm512_mask_reduce_maxMin_32bit(Vec512, Vec512Neutral, IntrinName, T1, \
101871188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        T2, T3, Mask)                          \
101881188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  __extension__({                                                              \
101891188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker    Vec512 = (__m512##T1)__builtin_ia32_select##T3##_512(                      \
101901188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__mmask16)Mask,                       \
101911188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16s##T2)Vec512,                    \
101921188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                        (__v16s##T2)Vec512Neutral);            \
101931188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker   _mm512_reduce_maxMin_32bit(Vec512, IntrinName, T1, T2);                     \
101941188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker   })
101951188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
101961188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
101971188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_max_epi32(__mmask16 __M, __m512i __V) {
101981188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_32bit(__V, _mm512_set1_epi32(0x80000000), max_epi32,
101991188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  i, i, d, __M);
102001188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
102011188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
102021188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned int __DEFAULT_FN_ATTRS
102031188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_max_epu32(__mmask16 __M, __m512i __V) {
102041188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_32bit(__V, _mm512_set1_epi32(0x00000000), max_epu32,
102051188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  i, i, d, __M);
102061188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
102071188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
102081188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ float __DEFAULT_FN_ATTRS
102091188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_max_ps(__mmask16 __M, __m512 __V) {
102101188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_32bit(__V,-_mm512_set1_ps(__builtin_inff()), max_ps, , f,
102111188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  ps, __M);
102121188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
102131188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
102141188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ int __DEFAULT_FN_ATTRS
102151188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_min_epi32(__mmask16 __M, __m512i __V) {
102161188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_32bit(__V, _mm512_set1_epi32(0x7FFFFFFF), min_epi32,
102171188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  i, i, d, __M);
102181188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
102191188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
102201188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ unsigned int __DEFAULT_FN_ATTRS
102211188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_min_epu32(__mmask16 __M, __m512i __V) {
102221188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_32bit(__V, _mm512_set1_epi32(0xFFFFFFFF), min_epu32,
102231188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  i, i, d, __M);
102241188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
102251188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
102261188dcf30923cb444143ffa4b83dc951037e76agitbuildkickerstatic __inline__ float __DEFAULT_FN_ATTRS
102271188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker_mm512_mask_reduce_min_ps(__mmask16 __M, __m512 __V) {
102281188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker  _mm512_mask_reduce_maxMin_32bit(__V, _mm512_set1_ps(__builtin_inff()), min_ps, , f,
102291188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker                                  ps, __M);
102301188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker}
102311188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
102321188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#undef __DEFAULT_FN_ATTRS
102331188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker
102341188dcf30923cb444143ffa4b83dc951037e76agitbuildkicker#endif // __AVX512FINTRIN_H
10235