Home | History | Annotate | Download | only in clang-include
      1 /*===---- avx512vlintrin.h - AVX512VL intrinsics ---------------------------===
      2  *
      3  * Permission is hereby granted, free of charge, to any person obtaining a copy
      4  * of this software and associated documentation files (the "Software"), to deal
      5  * in the Software without restriction, including without limitation the rights
      6  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
      7  * copies of the Software, and to permit persons to whom the Software is
      8  * furnished to do so, subject to the following conditions:
      9  *
     10  * The above copyright notice and this permission notice shall be included in
     11  * all copies or substantial portions of the Software.
     12  *
     13  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     14  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     15  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     16  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     17  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     18  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
     19  * THE SOFTWARE.
     20  *
     21  *===-----------------------------------------------------------------------===
     22  */
     23 
     24 #ifndef __IMMINTRIN_H
     25 #error "Never use <avx512vlintrin.h> directly; include <immintrin.h> instead."
     26 #endif
     27 
     28 #ifndef __AVX512VLINTRIN_H
     29 #define __AVX512VLINTRIN_H
     30 
     31 #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("avx512vl")))
     32 #define __DEFAULT_FN_ATTRS_BOTH __attribute__((__always_inline__, __nodebug__, __target__("avx512vl, avx512bw")))
     33 
     34 /* Integer compare */
     35 
     36 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
     37 _mm_cmpeq_epi32_mask(__m128i __a, __m128i __b) {
     38   return (__mmask8)__builtin_ia32_pcmpeqd128_mask((__v4si)__a, (__v4si)__b,
     39                                                   (__mmask8)-1);
     40 }
     41 
     42 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
     43 _mm_mask_cmpeq_epi32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
     44   return (__mmask8)__builtin_ia32_pcmpeqd128_mask((__v4si)__a, (__v4si)__b,
     45                                                   __u);
     46 }
     47 
     48 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
     49 _mm_cmpeq_epu32_mask(__m128i __a, __m128i __b) {
     50   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 0,
     51                                                 (__mmask8)-1);
     52 }
     53 
     54 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
     55 _mm_mask_cmpeq_epu32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
     56   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 0,
     57                                                 __u);
     58 }
     59 
     60 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
     61 _mm256_cmpeq_epi32_mask(__m256i __a, __m256i __b) {
     62   return (__mmask8)__builtin_ia32_pcmpeqd256_mask((__v8si)__a, (__v8si)__b,
     63                                                   (__mmask8)-1);
     64 }
     65 
     66 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
     67 _mm256_mask_cmpeq_epi32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
     68   return (__mmask8)__builtin_ia32_pcmpeqd256_mask((__v8si)__a, (__v8si)__b,
     69                                                   __u);
     70 }
     71 
     72 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
     73 _mm256_cmpeq_epu32_mask(__m256i __a, __m256i __b) {
     74   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 0,
     75                                                 (__mmask8)-1);
     76 }
     77 
     78 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
     79 _mm256_mask_cmpeq_epu32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
     80   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 0,
     81                                                 __u);
     82 }
     83 
     84 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
     85 _mm_cmpeq_epi64_mask(__m128i __a, __m128i __b) {
     86   return (__mmask8)__builtin_ia32_pcmpeqq128_mask((__v2di)__a, (__v2di)__b,
     87                                                   (__mmask8)-1);
     88 }
     89 
     90 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
     91 _mm_mask_cmpeq_epi64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
     92   return (__mmask8)__builtin_ia32_pcmpeqq128_mask((__v2di)__a, (__v2di)__b,
     93                                                   __u);
     94 }
     95 
     96 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
     97 _mm_cmpeq_epu64_mask(__m128i __a, __m128i __b) {
     98   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 0,
     99                                                 (__mmask8)-1);
    100 }
    101 
    102 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    103 _mm_mask_cmpeq_epu64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    104   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 0,
    105                                                 __u);
    106 }
    107 
    108 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    109 _mm256_cmpeq_epi64_mask(__m256i __a, __m256i __b) {
    110   return (__mmask8)__builtin_ia32_pcmpeqq256_mask((__v4di)__a, (__v4di)__b,
    111                                                   (__mmask8)-1);
    112 }
    113 
    114 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    115 _mm256_mask_cmpeq_epi64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    116   return (__mmask8)__builtin_ia32_pcmpeqq256_mask((__v4di)__a, (__v4di)__b,
    117                                                   __u);
    118 }
    119 
    120 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    121 _mm256_cmpeq_epu64_mask(__m256i __a, __m256i __b) {
    122   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 0,
    123                                                 (__mmask8)-1);
    124 }
    125 
    126 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    127 _mm256_mask_cmpeq_epu64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    128   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 0,
    129                                                 __u);
    130 }
    131 
    132 
    133 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    134 _mm_cmpge_epi32_mask(__m128i __a, __m128i __b) {
    135   return (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)__a, (__v4si)__b, 5,
    136                                                (__mmask8)-1);
    137 }
    138 
    139 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    140 _mm_mask_cmpge_epi32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    141   return (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)__a, (__v4si)__b, 5,
    142                                                __u);
    143 }
    144 
    145 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    146 _mm_cmpge_epu32_mask(__m128i __a, __m128i __b) {
    147   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 5,
    148                                                 (__mmask8)-1);
    149 }
    150 
    151 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    152 _mm_mask_cmpge_epu32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    153   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 5,
    154                                                 __u);
    155 }
    156 
    157 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    158 _mm256_cmpge_epi32_mask(__m256i __a, __m256i __b) {
    159   return (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)__a, (__v8si)__b, 5,
    160                                                (__mmask8)-1);
    161 }
    162 
    163 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    164 _mm256_mask_cmpge_epi32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    165   return (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)__a, (__v8si)__b, 5,
    166                                                __u);
    167 }
    168 
    169 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    170 _mm256_cmpge_epu32_mask(__m256i __a, __m256i __b) {
    171   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 5,
    172                                                 (__mmask8)-1);
    173 }
    174 
    175 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    176 _mm256_mask_cmpge_epu32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    177   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 5,
    178                                                 __u);
    179 }
    180 
    181 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    182 _mm_cmpge_epi64_mask(__m128i __a, __m128i __b) {
    183   return (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)__a, (__v2di)__b, 5,
    184                                                (__mmask8)-1);
    185 }
    186 
    187 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    188 _mm_mask_cmpge_epi64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    189   return (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)__a, (__v2di)__b, 5,
    190                                                __u);
    191 }
    192 
    193 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    194 _mm_cmpge_epu64_mask(__m128i __a, __m128i __b) {
    195   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 5,
    196                                                 (__mmask8)-1);
    197 }
    198 
    199 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    200 _mm_mask_cmpge_epu64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    201   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 5,
    202                                                 __u);
    203 }
    204 
    205 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    206 _mm256_cmpge_epi64_mask(__m256i __a, __m256i __b) {
    207   return (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)__a, (__v4di)__b, 5,
    208                                                (__mmask8)-1);
    209 }
    210 
    211 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    212 _mm256_mask_cmpge_epi64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    213   return (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)__a, (__v4di)__b, 5,
    214                                                __u);
    215 }
    216 
    217 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    218 _mm256_cmpge_epu64_mask(__m256i __a, __m256i __b) {
    219   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 5,
    220                                                 (__mmask8)-1);
    221 }
    222 
    223 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    224 _mm256_mask_cmpge_epu64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    225   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 5,
    226                                                 __u);
    227 }
    228 
    229 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    230 _mm_cmpgt_epi32_mask(__m128i __a, __m128i __b) {
    231   return (__mmask8)__builtin_ia32_pcmpgtd128_mask((__v4si)__a, (__v4si)__b,
    232                                                   (__mmask8)-1);
    233 }
    234 
    235 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    236 _mm_mask_cmpgt_epi32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    237   return (__mmask8)__builtin_ia32_pcmpgtd128_mask((__v4si)__a, (__v4si)__b,
    238                                                   __u);
    239 }
    240 
    241 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    242 _mm_cmpgt_epu32_mask(__m128i __a, __m128i __b) {
    243   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 6,
    244                                                 (__mmask8)-1);
    245 }
    246 
    247 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    248 _mm_mask_cmpgt_epu32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    249   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 6,
    250                                                 __u);
    251 }
    252 
    253 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    254 _mm256_cmpgt_epi32_mask(__m256i __a, __m256i __b) {
    255   return (__mmask8)__builtin_ia32_pcmpgtd256_mask((__v8si)__a, (__v8si)__b,
    256                                                   (__mmask8)-1);
    257 }
    258 
    259 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    260 _mm256_mask_cmpgt_epi32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    261   return (__mmask8)__builtin_ia32_pcmpgtd256_mask((__v8si)__a, (__v8si)__b,
    262                                                   __u);
    263 }
    264 
    265 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    266 _mm256_cmpgt_epu32_mask(__m256i __a, __m256i __b) {
    267   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 6,
    268                                                 (__mmask8)-1);
    269 }
    270 
    271 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    272 _mm256_mask_cmpgt_epu32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    273   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 6,
    274                                                 __u);
    275 }
    276 
    277 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    278 _mm_cmpgt_epi64_mask(__m128i __a, __m128i __b) {
    279   return (__mmask8)__builtin_ia32_pcmpgtq128_mask((__v2di)__a, (__v2di)__b,
    280                                                   (__mmask8)-1);
    281 }
    282 
    283 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    284 _mm_mask_cmpgt_epi64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    285   return (__mmask8)__builtin_ia32_pcmpgtq128_mask((__v2di)__a, (__v2di)__b,
    286                                                   __u);
    287 }
    288 
    289 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    290 _mm_cmpgt_epu64_mask(__m128i __a, __m128i __b) {
    291   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 6,
    292                                                 (__mmask8)-1);
    293 }
    294 
    295 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    296 _mm_mask_cmpgt_epu64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    297   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 6,
    298                                                 __u);
    299 }
    300 
    301 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    302 _mm256_cmpgt_epi64_mask(__m256i __a, __m256i __b) {
    303   return (__mmask8)__builtin_ia32_pcmpgtq256_mask((__v4di)__a, (__v4di)__b,
    304                                                   (__mmask8)-1);
    305 }
    306 
    307 static __inline__ __mmask8 __DEFAULT_FN_ATTRS_BOTH
    308 _mm256_mask_cmpgt_epi64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    309   return (__mmask8)__builtin_ia32_pcmpgtq256_mask((__v4di)__a, (__v4di)__b,
    310                                                   __u);
    311 }
    312 
    313 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    314 _mm256_cmpgt_epu64_mask(__m256i __a, __m256i __b) {
    315   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 6,
    316                                                 (__mmask8)-1);
    317 }
    318 
    319 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    320 _mm256_mask_cmpgt_epu64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    321   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 6,
    322                                                 __u);
    323 }
    324 
    325 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    326 _mm_cmple_epi32_mask(__m128i __a, __m128i __b) {
    327   return (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)__a, (__v4si)__b, 2,
    328                                                (__mmask8)-1);
    329 }
    330 
    331 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    332 _mm_mask_cmple_epi32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    333   return (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)__a, (__v4si)__b, 2,
    334                                                __u);
    335 }
    336 
    337 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    338 _mm_cmple_epu32_mask(__m128i __a, __m128i __b) {
    339   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 2,
    340                                                 (__mmask8)-1);
    341 }
    342 
    343 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    344 _mm_mask_cmple_epu32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    345   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 2,
    346                                                 __u);
    347 }
    348 
    349 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    350 _mm256_cmple_epi32_mask(__m256i __a, __m256i __b) {
    351   return (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)__a, (__v8si)__b, 2,
    352                                                (__mmask8)-1);
    353 }
    354 
    355 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    356 _mm256_mask_cmple_epi32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    357   return (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)__a, (__v8si)__b, 2,
    358                                                __u);
    359 }
    360 
    361 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    362 _mm256_cmple_epu32_mask(__m256i __a, __m256i __b) {
    363   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 2,
    364                                                 (__mmask8)-1);
    365 }
    366 
    367 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    368 _mm256_mask_cmple_epu32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    369   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 2,
    370                                                 __u);
    371 }
    372 
    373 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    374 _mm_cmple_epi64_mask(__m128i __a, __m128i __b) {
    375   return (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)__a, (__v2di)__b, 2,
    376                                                (__mmask8)-1);
    377 }
    378 
    379 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    380 _mm_mask_cmple_epi64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    381   return (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)__a, (__v2di)__b, 2,
    382                                                __u);
    383 }
    384 
    385 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    386 _mm_cmple_epu64_mask(__m128i __a, __m128i __b) {
    387   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 2,
    388                                                 (__mmask8)-1);
    389 }
    390 
    391 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    392 _mm_mask_cmple_epu64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    393   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 2,
    394                                                 __u);
    395 }
    396 
    397 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    398 _mm256_cmple_epi64_mask(__m256i __a, __m256i __b) {
    399   return (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)__a, (__v4di)__b, 2,
    400                                                (__mmask8)-1);
    401 }
    402 
    403 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    404 _mm256_mask_cmple_epi64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    405   return (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)__a, (__v4di)__b, 2,
    406                                                __u);
    407 }
    408 
    409 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    410 _mm256_cmple_epu64_mask(__m256i __a, __m256i __b) {
    411   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 2,
    412                                                 (__mmask8)-1);
    413 }
    414 
    415 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    416 _mm256_mask_cmple_epu64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    417   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 2,
    418                                                 __u);
    419 }
    420 
    421 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    422 _mm_cmplt_epi32_mask(__m128i __a, __m128i __b) {
    423   return (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)__a, (__v4si)__b, 1,
    424                                                (__mmask8)-1);
    425 }
    426 
    427 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    428 _mm_mask_cmplt_epi32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    429   return (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)__a, (__v4si)__b, 1,
    430                                                __u);
    431 }
    432 
    433 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    434 _mm_cmplt_epu32_mask(__m128i __a, __m128i __b) {
    435   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 1,
    436                                                 (__mmask8)-1);
    437 }
    438 
    439 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    440 _mm_mask_cmplt_epu32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    441   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 1,
    442                                                 __u);
    443 }
    444 
    445 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    446 _mm256_cmplt_epi32_mask(__m256i __a, __m256i __b) {
    447   return (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)__a, (__v8si)__b, 1,
    448                                                (__mmask8)-1);
    449 }
    450 
    451 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    452 _mm256_mask_cmplt_epi32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    453   return (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)__a, (__v8si)__b, 1,
    454                                                __u);
    455 }
    456 
    457 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    458 _mm256_cmplt_epu32_mask(__m256i __a, __m256i __b) {
    459   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 1,
    460                                                 (__mmask8)-1);
    461 }
    462 
    463 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    464 _mm256_mask_cmplt_epu32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    465   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 1,
    466                                                 __u);
    467 }
    468 
    469 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    470 _mm_cmplt_epi64_mask(__m128i __a, __m128i __b) {
    471   return (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)__a, (__v2di)__b, 1,
    472                                                (__mmask8)-1);
    473 }
    474 
    475 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    476 _mm_mask_cmplt_epi64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    477   return (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)__a, (__v2di)__b, 1,
    478                                                __u);
    479 }
    480 
    481 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    482 _mm_cmplt_epu64_mask(__m128i __a, __m128i __b) {
    483   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 1,
    484                                                 (__mmask8)-1);
    485 }
    486 
    487 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    488 _mm_mask_cmplt_epu64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    489   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 1,
    490                                                 __u);
    491 }
    492 
    493 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    494 _mm256_cmplt_epi64_mask(__m256i __a, __m256i __b) {
    495   return (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)__a, (__v4di)__b, 1,
    496                                                (__mmask8)-1);
    497 }
    498 
    499 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    500 _mm256_mask_cmplt_epi64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    501   return (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)__a, (__v4di)__b, 1,
    502                                                __u);
    503 }
    504 
    505 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    506 _mm256_cmplt_epu64_mask(__m256i __a, __m256i __b) {
    507   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 1,
    508                                                 (__mmask8)-1);
    509 }
    510 
    511 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    512 _mm256_mask_cmplt_epu64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    513   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 1,
    514                                                 __u);
    515 }
    516 
    517 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    518 _mm_cmpneq_epi32_mask(__m128i __a, __m128i __b) {
    519   return (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)__a, (__v4si)__b, 4,
    520                                                (__mmask8)-1);
    521 }
    522 
    523 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    524 _mm_mask_cmpneq_epi32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    525   return (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)__a, (__v4si)__b, 4,
    526                                                __u);
    527 }
    528 
    529 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    530 _mm_cmpneq_epu32_mask(__m128i __a, __m128i __b) {
    531   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 4,
    532                                                 (__mmask8)-1);
    533 }
    534 
    535 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    536 _mm_mask_cmpneq_epu32_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    537   return (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)__a, (__v4si)__b, 4,
    538                                                 __u);
    539 }
    540 
    541 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    542 _mm256_cmpneq_epi32_mask(__m256i __a, __m256i __b) {
    543   return (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)__a, (__v8si)__b, 4,
    544                                                (__mmask8)-1);
    545 }
    546 
    547 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    548 _mm256_mask_cmpneq_epi32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    549   return (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)__a, (__v8si)__b, 4,
    550                                                __u);
    551 }
    552 
    553 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    554 _mm256_cmpneq_epu32_mask(__m256i __a, __m256i __b) {
    555   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 4,
    556                                                 (__mmask8)-1);
    557 }
    558 
    559 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    560 _mm256_mask_cmpneq_epu32_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    561   return (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)__a, (__v8si)__b, 4,
    562                                                 __u);
    563 }
    564 
    565 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    566 _mm_cmpneq_epi64_mask(__m128i __a, __m128i __b) {
    567   return (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)__a, (__v2di)__b, 4,
    568                                                (__mmask8)-1);
    569 }
    570 
    571 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    572 _mm_mask_cmpneq_epi64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    573   return (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)__a, (__v2di)__b, 4,
    574                                                __u);
    575 }
    576 
    577 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    578 _mm_cmpneq_epu64_mask(__m128i __a, __m128i __b) {
    579   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 4,
    580                                                 (__mmask8)-1);
    581 }
    582 
    583 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    584 _mm_mask_cmpneq_epu64_mask(__mmask8 __u, __m128i __a, __m128i __b) {
    585   return (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)__a, (__v2di)__b, 4,
    586                                                 __u);
    587 }
    588 
    589 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    590 _mm256_cmpneq_epi64_mask(__m256i __a, __m256i __b) {
    591   return (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)__a, (__v4di)__b, 4,
    592                                                (__mmask8)-1);
    593 }
    594 
    595 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    596 _mm256_mask_cmpneq_epi64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    597   return (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)__a, (__v4di)__b, 4,
    598                                                __u);
    599 }
    600 
    601 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    602 _mm256_cmpneq_epu64_mask(__m256i __a, __m256i __b) {
    603   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 4,
    604                                                 (__mmask8)-1);
    605 }
    606 
    607 static __inline__ __mmask8 __DEFAULT_FN_ATTRS
    608 _mm256_mask_cmpneq_epu64_mask(__mmask8 __u, __m256i __a, __m256i __b) {
    609   return (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)__a, (__v4di)__b, 4,
    610                                                 __u);
    611 }
    612 
    613 static __inline__ __m256i __DEFAULT_FN_ATTRS
    614 _mm256_mask_add_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
    615            __m256i __B)
    616 {
    617   return (__m256i) __builtin_ia32_paddd256_mask ((__v8si) __A,
    618              (__v8si) __B,
    619              (__v8si) __W,
    620              (__mmask8) __U);
    621 }
    622 
    623 static __inline__ __m256i __DEFAULT_FN_ATTRS
    624 _mm256_maskz_add_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
    625 {
    626   return (__m256i) __builtin_ia32_paddd256_mask ((__v8si) __A,
    627              (__v8si) __B,
    628              (__v8si)
    629              _mm256_setzero_si256 (),
    630              (__mmask8) __U);
    631 }
    632 
    633 static __inline__ __m256i __DEFAULT_FN_ATTRS
    634 _mm256_mask_add_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
    635            __m256i __B)
    636 {
    637   return (__m256i) __builtin_ia32_paddq256_mask ((__v4di) __A,
    638              (__v4di) __B,
    639              (__v4di) __W,
    640              (__mmask8) __U);
    641 }
    642 
    643 static __inline__ __m256i __DEFAULT_FN_ATTRS
    644 _mm256_maskz_add_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
    645 {
    646   return (__m256i) __builtin_ia32_paddq256_mask ((__v4di) __A,
    647              (__v4di) __B,
    648              (__v4di)
    649              _mm256_setzero_si256 (),
    650              (__mmask8) __U);
    651 }
    652 
    653 static __inline__ __m256i __DEFAULT_FN_ATTRS
    654 _mm256_mask_sub_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
    655            __m256i __B)
    656 {
    657   return (__m256i) __builtin_ia32_psubd256_mask ((__v8si) __A,
    658              (__v8si) __B,
    659              (__v8si) __W,
    660              (__mmask8) __U);
    661 }
    662 
    663 static __inline__ __m256i __DEFAULT_FN_ATTRS
    664 _mm256_maskz_sub_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
    665 {
    666   return (__m256i) __builtin_ia32_psubd256_mask ((__v8si) __A,
    667              (__v8si) __B,
    668              (__v8si)
    669              _mm256_setzero_si256 (),
    670              (__mmask8) __U);
    671 }
    672 
    673 static __inline__ __m256i __DEFAULT_FN_ATTRS
    674 _mm256_mask_sub_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
    675            __m256i __B)
    676 {
    677   return (__m256i) __builtin_ia32_psubq256_mask ((__v4di) __A,
    678              (__v4di) __B,
    679              (__v4di) __W,
    680              (__mmask8) __U);
    681 }
    682 
    683 static __inline__ __m256i __DEFAULT_FN_ATTRS
    684 _mm256_maskz_sub_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
    685 {
    686   return (__m256i) __builtin_ia32_psubq256_mask ((__v4di) __A,
    687              (__v4di) __B,
    688              (__v4di)
    689              _mm256_setzero_si256 (),
    690              (__mmask8) __U);
    691 }
    692 
    693 static __inline__ __m128i __DEFAULT_FN_ATTRS
    694 _mm_mask_add_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
    695         __m128i __B)
    696 {
    697   return (__m128i) __builtin_ia32_paddd128_mask ((__v4si) __A,
    698              (__v4si) __B,
    699              (__v4si) __W,
    700              (__mmask8) __U);
    701 }
    702 
    703 static __inline__ __m128i __DEFAULT_FN_ATTRS
    704 _mm_maskz_add_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
    705 {
    706   return (__m128i) __builtin_ia32_paddd128_mask ((__v4si) __A,
    707              (__v4si) __B,
    708              (__v4si)
    709              _mm_setzero_si128 (),
    710              (__mmask8) __U);
    711 }
    712 
    713 static __inline__ __m128i __DEFAULT_FN_ATTRS
    714 _mm_mask_add_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
    715         __m128i __B)
    716 {
    717   return (__m128i) __builtin_ia32_paddq128_mask ((__v2di) __A,
    718              (__v2di) __B,
    719              (__v2di) __W,
    720              (__mmask8) __U);
    721 }
    722 
    723 static __inline__ __m128i __DEFAULT_FN_ATTRS
    724 _mm_maskz_add_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
    725 {
    726   return (__m128i) __builtin_ia32_paddq128_mask ((__v2di) __A,
    727              (__v2di) __B,
    728              (__v2di)
    729              _mm_setzero_si128 (),
    730              (__mmask8) __U);
    731 }
    732 
    733 static __inline__ __m128i __DEFAULT_FN_ATTRS
    734 _mm_mask_sub_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
    735         __m128i __B)
    736 {
    737   return (__m128i) __builtin_ia32_psubd128_mask ((__v4si) __A,
    738              (__v4si) __B,
    739              (__v4si) __W,
    740              (__mmask8) __U);
    741 }
    742 
    743 static __inline__ __m128i __DEFAULT_FN_ATTRS
    744 _mm_maskz_sub_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
    745 {
    746   return (__m128i) __builtin_ia32_psubd128_mask ((__v4si) __A,
    747              (__v4si) __B,
    748              (__v4si)
    749              _mm_setzero_si128 (),
    750              (__mmask8) __U);
    751 }
    752 
    753 static __inline__ __m128i __DEFAULT_FN_ATTRS
    754 _mm_mask_sub_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
    755         __m128i __B)
    756 {
    757   return (__m128i) __builtin_ia32_psubq128_mask ((__v2di) __A,
    758              (__v2di) __B,
    759              (__v2di) __W,
    760              (__mmask8) __U);
    761 }
    762 
    763 static __inline__ __m128i __DEFAULT_FN_ATTRS
    764 _mm_maskz_sub_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
    765 {
    766   return (__m128i) __builtin_ia32_psubq128_mask ((__v2di) __A,
    767              (__v2di) __B,
    768              (__v2di)
    769              _mm_setzero_si128 (),
    770              (__mmask8) __U);
    771 }
    772 
    773 static __inline__ __m256i __DEFAULT_FN_ATTRS
    774 _mm256_mask_mul_epi32 (__m256i __W, __mmask8 __M, __m256i __X,
    775            __m256i __Y)
    776 {
    777   return (__m256i) __builtin_ia32_pmuldq256_mask ((__v8si) __X,
    778               (__v8si) __Y,
    779               (__v4di) __W, __M);
    780 }
    781 
    782 static __inline__ __m256i __DEFAULT_FN_ATTRS
    783 _mm256_maskz_mul_epi32 (__mmask8 __M, __m256i __X, __m256i __Y)
    784 {
    785   return (__m256i) __builtin_ia32_pmuldq256_mask ((__v8si) __X,
    786               (__v8si) __Y,
    787               (__v4di)
    788               _mm256_setzero_si256 (),
    789               __M);
    790 }
    791 
    792 static __inline__ __m128i __DEFAULT_FN_ATTRS
    793 _mm_mask_mul_epi32 (__m128i __W, __mmask8 __M, __m128i __X,
    794         __m128i __Y)
    795 {
    796   return (__m128i) __builtin_ia32_pmuldq128_mask ((__v4si) __X,
    797               (__v4si) __Y,
    798               (__v2di) __W, __M);
    799 }
    800 
    801 static __inline__ __m128i __DEFAULT_FN_ATTRS
    802 _mm_maskz_mul_epi32 (__mmask8 __M, __m128i __X, __m128i __Y)
    803 {
    804   return (__m128i) __builtin_ia32_pmuldq128_mask ((__v4si) __X,
    805               (__v4si) __Y,
    806               (__v2di)
    807               _mm_setzero_si128 (),
    808               __M);
    809 }
    810 
    811 static __inline__ __m256i __DEFAULT_FN_ATTRS
    812 _mm256_mask_mul_epu32 (__m256i __W, __mmask8 __M, __m256i __X,
    813            __m256i __Y)
    814 {
    815   return (__m256i) __builtin_ia32_pmuludq256_mask ((__v8si) __X,
    816                (__v8si) __Y,
    817                (__v4di) __W, __M);
    818 }
    819 
    820 static __inline__ __m256i __DEFAULT_FN_ATTRS
    821 _mm256_maskz_mul_epu32 (__mmask8 __M, __m256i __X, __m256i __Y)
    822 {
    823   return (__m256i) __builtin_ia32_pmuludq256_mask ((__v8si) __X,
    824                (__v8si) __Y,
    825                (__v4di)
    826                _mm256_setzero_si256 (),
    827                __M);
    828 }
    829 
    830 static __inline__ __m128i __DEFAULT_FN_ATTRS
    831 _mm_mask_mul_epu32 (__m128i __W, __mmask8 __M, __m128i __X,
    832         __m128i __Y)
    833 {
    834   return (__m128i) __builtin_ia32_pmuludq128_mask ((__v4si) __X,
    835                (__v4si) __Y,
    836                (__v2di) __W, __M);
    837 }
    838 
    839 static __inline__ __m128i __DEFAULT_FN_ATTRS
    840 _mm_maskz_mul_epu32 (__mmask8 __M, __m128i __X, __m128i __Y)
    841 {
    842   return (__m128i) __builtin_ia32_pmuludq128_mask ((__v4si) __X,
    843                (__v4si) __Y,
    844                (__v2di)
    845                _mm_setzero_si128 (),
    846                __M);
    847 }
    848 
    849 static __inline__ __m256i __DEFAULT_FN_ATTRS
    850 _mm256_maskz_mullo_epi32 (__mmask8 __M, __m256i __A, __m256i __B)
    851 {
    852   return (__m256i) __builtin_ia32_pmulld256_mask ((__v8si) __A,
    853               (__v8si) __B,
    854               (__v8si)
    855               _mm256_setzero_si256 (),
    856               __M);
    857 }
    858 
    859 static __inline__ __m256i __DEFAULT_FN_ATTRS
    860 _mm256_mask_mullo_epi32 (__m256i __W, __mmask8 __M, __m256i __A,
    861        __m256i __B)
    862 {
    863   return (__m256i) __builtin_ia32_pmulld256_mask ((__v8si) __A,
    864               (__v8si) __B,
    865               (__v8si) __W, __M);
    866 }
    867 
    868 static __inline__ __m128i __DEFAULT_FN_ATTRS
    869 _mm_maskz_mullo_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
    870 {
    871   return (__m128i) __builtin_ia32_pmulld128_mask ((__v4si) __A,
    872               (__v4si) __B,
    873               (__v4si)
    874               _mm_setzero_si128 (),
    875               __M);
    876 }
    877 
    878 static __inline__ __m128i __DEFAULT_FN_ATTRS
    879 _mm_mask_mullo_epi32 (__m128i __W, __mmask16 __M, __m128i __A,
    880           __m128i __B)
    881 {
    882   return (__m128i) __builtin_ia32_pmulld128_mask ((__v4si) __A,
    883               (__v4si) __B,
    884               (__v4si) __W, __M);
    885 }
    886 
    887 static __inline__ __m256i __DEFAULT_FN_ATTRS
    888 _mm256_mask_and_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
    889            __m256i __B)
    890 {
    891   return (__m256i) __builtin_ia32_pandd256_mask ((__v8si) __A,
    892              (__v8si) __B,
    893              (__v8si) __W,
    894              (__mmask8) __U);
    895 }
    896 
    897 static __inline__ __m256i __DEFAULT_FN_ATTRS
    898 _mm256_maskz_and_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
    899 {
    900   return (__m256i) __builtin_ia32_pandd256_mask ((__v8si) __A,
    901              (__v8si) __B,
    902              (__v8si)
    903              _mm256_setzero_si256 (),
    904              (__mmask8) __U);
    905 }
    906 
    907 static __inline__ __m128i __DEFAULT_FN_ATTRS
    908 _mm_mask_and_epi32 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
    909 {
    910   return (__m128i) __builtin_ia32_pandd128_mask ((__v4si) __A,
    911              (__v4si) __B,
    912              (__v4si) __W,
    913              (__mmask8) __U);
    914 }
    915 
    916 static __inline__ __m128i __DEFAULT_FN_ATTRS
    917 _mm_maskz_and_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
    918 {
    919   return (__m128i) __builtin_ia32_pandd128_mask ((__v4si) __A,
    920              (__v4si) __B,
    921              (__v4si)
    922              _mm_setzero_si128 (),
    923              (__mmask8) __U);
    924 }
    925 
    926 static __inline__ __m256i __DEFAULT_FN_ATTRS
    927 _mm256_mask_andnot_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
    928         __m256i __B)
    929 {
    930   return (__m256i) __builtin_ia32_pandnd256_mask ((__v8si) __A,
    931               (__v8si) __B,
    932               (__v8si) __W,
    933               (__mmask8) __U);
    934 }
    935 
    936 static __inline__ __m256i __DEFAULT_FN_ATTRS
    937 _mm256_maskz_andnot_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
    938 {
    939   return (__m256i) __builtin_ia32_pandnd256_mask ((__v8si) __A,
    940               (__v8si) __B,
    941               (__v8si)
    942               _mm256_setzero_si256 (),
    943               (__mmask8) __U);
    944 }
    945 
    946 static __inline__ __m128i __DEFAULT_FN_ATTRS
    947 _mm_mask_andnot_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
    948            __m128i __B)
    949 {
    950   return (__m128i) __builtin_ia32_pandnd128_mask ((__v4si) __A,
    951               (__v4si) __B,
    952               (__v4si) __W,
    953               (__mmask8) __U);
    954 }
    955 
    956 static __inline__ __m128i __DEFAULT_FN_ATTRS
    957 _mm_maskz_andnot_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
    958 {
    959   return (__m128i) __builtin_ia32_pandnd128_mask ((__v4si) __A,
    960               (__v4si) __B,
    961               (__v4si)
    962               _mm_setzero_si128 (),
    963               (__mmask8) __U);
    964 }
    965 
    966 static __inline__ __m256i __DEFAULT_FN_ATTRS
    967 _mm256_mask_or_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
    968           __m256i __B)
    969 {
    970   return (__m256i) __builtin_ia32_pord256_mask ((__v8si) __A,
    971             (__v8si) __B,
    972             (__v8si) __W,
    973             (__mmask8) __U);
    974 }
    975 
    976 static __inline__ __m256i __DEFAULT_FN_ATTRS
    977 _mm256_maskz_or_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
    978 {
    979   return (__m256i) __builtin_ia32_pord256_mask ((__v8si) __A,
    980             (__v8si) __B,
    981             (__v8si)
    982             _mm256_setzero_si256 (),
    983             (__mmask8) __U);
    984 }
    985 
    986 static __inline__ __m128i __DEFAULT_FN_ATTRS
    987 _mm_mask_or_epi32 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
    988 {
    989   return (__m128i) __builtin_ia32_pord128_mask ((__v4si) __A,
    990             (__v4si) __B,
    991             (__v4si) __W,
    992             (__mmask8) __U);
    993 }
    994 
    995 static __inline__ __m128i __DEFAULT_FN_ATTRS
    996 _mm_maskz_or_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
    997 {
    998   return (__m128i) __builtin_ia32_pord128_mask ((__v4si) __A,
    999             (__v4si) __B,
   1000             (__v4si)
   1001             _mm_setzero_si128 (),
   1002             (__mmask8) __U);
   1003 }
   1004 
   1005 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1006 _mm256_mask_xor_epi32 (__m256i __W, __mmask8 __U, __m256i __A,
   1007            __m256i __B)
   1008 {
   1009   return (__m256i) __builtin_ia32_pxord256_mask ((__v8si) __A,
   1010              (__v8si) __B,
   1011              (__v8si) __W,
   1012              (__mmask8) __U);
   1013 }
   1014 
   1015 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1016 _mm256_maskz_xor_epi32 (__mmask8 __U, __m256i __A, __m256i __B)
   1017 {
   1018   return (__m256i) __builtin_ia32_pxord256_mask ((__v8si) __A,
   1019              (__v8si) __B,
   1020              (__v8si)
   1021              _mm256_setzero_si256 (),
   1022              (__mmask8) __U);
   1023 }
   1024 
   1025 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1026 _mm_mask_xor_epi32 (__m128i __W, __mmask8 __U, __m128i __A,
   1027         __m128i __B)
   1028 {
   1029   return (__m128i) __builtin_ia32_pxord128_mask ((__v4si) __A,
   1030              (__v4si) __B,
   1031              (__v4si) __W,
   1032              (__mmask8) __U);
   1033 }
   1034 
   1035 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1036 _mm_maskz_xor_epi32 (__mmask8 __U, __m128i __A, __m128i __B)
   1037 {
   1038   return (__m128i) __builtin_ia32_pxord128_mask ((__v4si) __A,
   1039              (__v4si) __B,
   1040              (__v4si)
   1041              _mm_setzero_si128 (),
   1042              (__mmask8) __U);
   1043 }
   1044 
   1045 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1046 _mm256_mask_and_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
   1047            __m256i __B)
   1048 {
   1049   return (__m256i) __builtin_ia32_pandq256_mask ((__v4di) __A,
   1050              (__v4di) __B,
   1051              (__v4di) __W, __U);
   1052 }
   1053 
   1054 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1055 _mm256_maskz_and_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
   1056 {
   1057   return (__m256i) __builtin_ia32_pandq256_mask ((__v4di) __A,
   1058              (__v4di) __B,
   1059              (__v4di)
   1060              _mm256_setzero_pd (),
   1061              __U);
   1062 }
   1063 
   1064 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1065 _mm_mask_and_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
   1066         __m128i __B)
   1067 {
   1068   return (__m128i) __builtin_ia32_pandq128_mask ((__v2di) __A,
   1069              (__v2di) __B,
   1070              (__v2di) __W, __U);
   1071 }
   1072 
   1073 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1074 _mm_maskz_and_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
   1075 {
   1076   return (__m128i) __builtin_ia32_pandq128_mask ((__v2di) __A,
   1077              (__v2di) __B,
   1078              (__v2di)
   1079              _mm_setzero_pd (),
   1080              __U);
   1081 }
   1082 
   1083 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1084 _mm256_mask_andnot_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
   1085         __m256i __B)
   1086 {
   1087   return (__m256i) __builtin_ia32_pandnq256_mask ((__v4di) __A,
   1088               (__v4di) __B,
   1089               (__v4di) __W, __U);
   1090 }
   1091 
   1092 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1093 _mm256_maskz_andnot_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
   1094 {
   1095   return (__m256i) __builtin_ia32_pandnq256_mask ((__v4di) __A,
   1096               (__v4di) __B,
   1097               (__v4di)
   1098               _mm256_setzero_pd (),
   1099               __U);
   1100 }
   1101 
   1102 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1103 _mm_mask_andnot_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
   1104            __m128i __B)
   1105 {
   1106   return (__m128i) __builtin_ia32_pandnq128_mask ((__v2di) __A,
   1107               (__v2di) __B,
   1108               (__v2di) __W, __U);
   1109 }
   1110 
   1111 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1112 _mm_maskz_andnot_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
   1113 {
   1114   return (__m128i) __builtin_ia32_pandnq128_mask ((__v2di) __A,
   1115               (__v2di) __B,
   1116               (__v2di)
   1117               _mm_setzero_pd (),
   1118               __U);
   1119 }
   1120 
   1121 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1122 _mm256_mask_or_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
   1123           __m256i __B)
   1124 {
   1125   return (__m256i) __builtin_ia32_porq256_mask ((__v4di) __A,
   1126             (__v4di) __B,
   1127             (__v4di) __W,
   1128             (__mmask8) __U);
   1129 }
   1130 
   1131 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1132 _mm256_maskz_or_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
   1133 {
   1134   return (__m256i) __builtin_ia32_porq256_mask ((__v4di) __A,
   1135             (__v4di) __B,
   1136             (__v4di)
   1137             _mm256_setzero_si256 (),
   1138             (__mmask8) __U);
   1139 }
   1140 
   1141 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1142 _mm_mask_or_epi64 (__m128i __W, __mmask8 __U, __m128i __A, __m128i __B)
   1143 {
   1144   return (__m128i) __builtin_ia32_porq128_mask ((__v2di) __A,
   1145             (__v2di) __B,
   1146             (__v2di) __W,
   1147             (__mmask8) __U);
   1148 }
   1149 
   1150 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1151 _mm_maskz_or_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
   1152 {
   1153   return (__m128i) __builtin_ia32_porq128_mask ((__v2di) __A,
   1154             (__v2di) __B,
   1155             (__v2di)
   1156             _mm_setzero_si128 (),
   1157             (__mmask8) __U);
   1158 }
   1159 
   1160 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1161 _mm256_mask_xor_epi64 (__m256i __W, __mmask8 __U, __m256i __A,
   1162            __m256i __B)
   1163 {
   1164   return (__m256i) __builtin_ia32_pxorq256_mask ((__v4di) __A,
   1165              (__v4di) __B,
   1166              (__v4di) __W,
   1167              (__mmask8) __U);
   1168 }
   1169 
   1170 static __inline__ __m256i __DEFAULT_FN_ATTRS
   1171 _mm256_maskz_xor_epi64 (__mmask8 __U, __m256i __A, __m256i __B)
   1172 {
   1173   return (__m256i) __builtin_ia32_pxorq256_mask ((__v4di) __A,
   1174              (__v4di) __B,
   1175              (__v4di)
   1176              _mm256_setzero_si256 (),
   1177              (__mmask8) __U);
   1178 }
   1179 
   1180 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1181 _mm_mask_xor_epi64 (__m128i __W, __mmask8 __U, __m128i __A,
   1182         __m128i __B)
   1183 {
   1184   return (__m128i) __builtin_ia32_pxorq128_mask ((__v2di) __A,
   1185              (__v2di) __B,
   1186              (__v2di) __W,
   1187              (__mmask8) __U);
   1188 }
   1189 
   1190 static __inline__ __m128i __DEFAULT_FN_ATTRS
   1191 _mm_maskz_xor_epi64 (__mmask8 __U, __m128i __A, __m128i __B)
   1192 {
   1193   return (__m128i) __builtin_ia32_pxorq128_mask ((__v2di) __A,
   1194              (__v2di) __B,
   1195              (__v2di)
   1196              _mm_setzero_si128 (),
   1197              (__mmask8) __U);
   1198 }
   1199 
   1200 #define _mm_cmp_epi32_mask(a, b, p) __extension__ ({ \
   1201   (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)(__m128i)(a), \
   1202                                         (__v4si)(__m128i)(b), \
   1203                                         (p), (__mmask8)-1); })
   1204 
   1205 #define _mm_mask_cmp_epi32_mask(m, a, b, p) __extension__ ({ \
   1206   (__mmask8)__builtin_ia32_cmpd128_mask((__v4si)(__m128i)(a), \
   1207                                         (__v4si)(__m128i)(b), \
   1208                                         (p), (__mmask8)(m)); })
   1209 
   1210 #define _mm_cmp_epu32_mask(a, b, p) __extension__ ({ \
   1211   (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)(__m128i)(a), \
   1212                                          (__v4si)(__m128i)(b), \
   1213                                          (p), (__mmask8)-1); })
   1214 
   1215 #define _mm_mask_cmp_epu32_mask(m, a, b, p) __extension__ ({ \
   1216   (__mmask8)__builtin_ia32_ucmpd128_mask((__v4si)(__m128i)(a), \
   1217                                          (__v4si)(__m128i)(b), \
   1218                                          (p), (__mmask8)(m)); })
   1219 
   1220 #define _mm256_cmp_epi32_mask(a, b, p) __extension__ ({ \
   1221   (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)(__m256i)(a), \
   1222                                         (__v8si)(__m256i)(b), \
   1223                                         (p), (__mmask8)-1); })
   1224 
   1225 #define _mm256_mask_cmp_epi32_mask(m, a, b, p) __extension__ ({ \
   1226   (__mmask8)__builtin_ia32_cmpd256_mask((__v8si)(__m256i)(a), \
   1227                                         (__v8si)(__m256i)(b), \
   1228                                         (p), (__mmask8)(m)); })
   1229 
   1230 #define _mm256_cmp_epu32_mask(a, b, p) __extension__ ({ \
   1231   (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)(__m256i)(a), \
   1232                                          (__v8si)(__m256i)(b), \
   1233                                          (p), (__mmask8)-1); })
   1234 
   1235 #define _mm256_mask_cmp_epu32_mask(m, a, b, p) __extension__ ({ \
   1236   (__mmask8)__builtin_ia32_ucmpd256_mask((__v8si)(__m256i)(a), \
   1237                                          (__v8si)(__m256i)(b), \
   1238                                          (p), (__mmask8)(m)); })
   1239 
   1240 #define _mm_cmp_epi64_mask(a, b, p) __extension__ ({ \
   1241   (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)(__m128i)(a), \
   1242                                         (__v2di)(__m128i)(b), \
   1243                                         (p), (__mmask8)-1); })
   1244 
   1245 #define _mm_mask_cmp_epi64_mask(m, a, b, p) __extension__ ({ \
   1246   (__mmask8)__builtin_ia32_cmpq128_mask((__v2di)(__m128i)(a), \
   1247                                         (__v2di)(__m128i)(b), \
   1248                                         (p), (__mmask8)(m)); })
   1249 
   1250 #define _mm_cmp_epu64_mask(a, b, p) __extension__ ({ \
   1251   (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)(__m128i)(a), \
   1252                                          (__v2di)(__m128i)(b), \
   1253                                          (p), (__mmask8)-1); })
   1254 
   1255 #define _mm_mask_cmp_epu64_mask(m, a, b, p) __extension__ ({ \
   1256   (__mmask8)__builtin_ia32_ucmpq128_mask((__v2di)(__m128i)(a), \
   1257                                          (__v2di)(__m128i)(b), \
   1258                                          (p), (__mmask8)(m)); })
   1259 
   1260 #define _mm256_cmp_epi64_mask(a, b, p) __extension__ ({ \
   1261   (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)(__m256i)(a), \
   1262                                         (__v4di)(__m256i)(b), \
   1263                                         (p), (__mmask8)-1); })
   1264 
   1265 #define _mm256_mask_cmp_epi64_mask(m, a, b, p) __extension__ ({ \
   1266   (__mmask8)__builtin_ia32_cmpq256_mask((__v4di)(__m256i)(a), \
   1267                                         (__v4di)(__m256i)(b), \
   1268                                         (p), (__mmask8)(m)); })
   1269 
   1270 #define _mm256_cmp_epu64_mask(a, b, p) __extension__ ({ \
   1271   (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)(__m256i)(a), \
   1272                                          (__v4di)(__m256i)(b), \
   1273                                          (p), (__mmask8)-1); })
   1274 
   1275 #define _mm256_mask_cmp_epu64_mask(m, a, b, p) __extension__ ({ \
   1276   (__mmask8)__builtin_ia32_ucmpq256_mask((__v4di)(__m256i)(a), \
   1277                                          (__v4di)(__m256i)(b), \
   1278                                          (p), (__mmask8)(m)); })
   1279 
   1280 #define _mm256_cmp_ps_mask(a, b, p)  __extension__ ({ \
   1281   (__mmask8)__builtin_ia32_cmpps256_mask((__v8sf)(__m256)(a), \
   1282                                          (__v8sf)(__m256)(b), \
   1283                                          (p), (__mmask8)-1); })
   1284 
   1285 #define _mm256_mask_cmp_ps_mask(m, a, b, p)  __extension__ ({ \
   1286   (__mmask8)__builtin_ia32_cmpps256_mask((__v8sf)(__m256)(a), \
   1287                                          (__v8sf)(__m256)(b), \
   1288                                          (p), (__mmask8)(m)); })
   1289 
   1290 #define _mm256_cmp_pd_mask(a, b, p)  __extension__ ({ \
   1291   (__mmask8)__builtin_ia32_cmppd256_mask((__v4df)(__m256)(a), \
   1292                                          (__v4df)(__m256)(b), \
   1293                                          (p), (__mmask8)-1); })
   1294 
   1295 #define _mm256_mask_cmp_pd_mask(m, a, b, p)  __extension__ ({ \
   1296   (__mmask8)__builtin_ia32_cmppd256_mask((__v4df)(__m256)(a), \
   1297                                          (__v4df)(__m256)(b), \
   1298                                          (p), (__mmask8)(m)); })
   1299 
   1300 #define _mm128_cmp_ps_mask(a, b, p)  __extension__ ({ \
   1301   (__mmask8)__builtin_ia32_cmpps128_mask((__v4sf)(__m128)(a), \
   1302                                          (__v4sf)(__m128)(b), \
   1303                                          (p), (__mmask8)-1); })
   1304 
   1305 #define _mm128_mask_cmp_ps_mask(m, a, b, p)  __extension__ ({ \
   1306   (__mmask8)__builtin_ia32_cmpps128_mask((__v4sf)(__m128)(a), \
   1307                                          (__v4sf)(__m128)(b), \
   1308                                          (p), (__mmask8)(m)); })
   1309 
   1310 #define _mm128_cmp_pd_mask(a, b, p)  __extension__ ({ \
   1311   (__mmask8)__builtin_ia32_cmppd128_mask((__v2df)(__m128)(a), \
   1312                                          (__v2df)(__m128)(b), \
   1313                                          (p), (__mmask8)-1); })
   1314 
   1315 #define _mm128_mask_cmp_pd_mask(m, a, b, p)  __extension__ ({ \
   1316   (__mmask8)__builtin_ia32_cmppd128_mask((__v2df)(__m128)(a), \
   1317                                          (__v2df)(__m128)(b), \
   1318                                          (p), (__mmask8)(m)); })
   1319 
   1320 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1321 _mm_mask_fmadd_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
   1322 {
   1323   return (__m128d) __builtin_ia32_vfmaddpd128_mask ((__v2df) __A,
   1324                                                     (__v2df) __B,
   1325                                                     (__v2df) __C,
   1326                                                     (__mmask8) __U);
   1327 }
   1328 
   1329 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1330 _mm_mask3_fmadd_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U)
   1331 {
   1332   return (__m128d) __builtin_ia32_vfmaddpd128_mask3 ((__v2df) __A,
   1333                                                      (__v2df) __B,
   1334                                                      (__v2df) __C,
   1335                                                      (__mmask8) __U);
   1336 }
   1337 
   1338 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1339 _mm_maskz_fmadd_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
   1340 {
   1341   return (__m128d) __builtin_ia32_vfmaddpd128_maskz ((__v2df) __A,
   1342                                                      (__v2df) __B,
   1343                                                      (__v2df) __C,
   1344                                                      (__mmask8) __U);
   1345 }
   1346 
   1347 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1348 _mm_mask_fmsub_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
   1349 {
   1350   return (__m128d) __builtin_ia32_vfmaddpd128_mask ((__v2df) __A,
   1351                                                     (__v2df) __B,
   1352                                                     -(__v2df) __C,
   1353                                                     (__mmask8) __U);
   1354 }
   1355 
   1356 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1357 _mm_maskz_fmsub_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
   1358 {
   1359   return (__m128d) __builtin_ia32_vfmaddpd128_maskz ((__v2df) __A,
   1360                                                      (__v2df) __B,
   1361                                                      -(__v2df) __C,
   1362                                                      (__mmask8) __U);
   1363 }
   1364 
   1365 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1366 _mm_mask3_fnmadd_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U)
   1367 {
   1368   return (__m128d) __builtin_ia32_vfmaddpd128_mask3 (-(__v2df) __A,
   1369                                                      (__v2df) __B,
   1370                                                      (__v2df) __C,
   1371                                                      (__mmask8) __U);
   1372 }
   1373 
   1374 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1375 _mm_maskz_fnmadd_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
   1376 {
   1377   return (__m128d) __builtin_ia32_vfmaddpd128_maskz (-(__v2df) __A,
   1378                                                      (__v2df) __B,
   1379                                                      (__v2df) __C,
   1380                                                      (__mmask8) __U);
   1381 }
   1382 
   1383 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1384 _mm_maskz_fnmsub_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
   1385 {
   1386   return (__m128d) __builtin_ia32_vfmaddpd128_maskz (-(__v2df) __A,
   1387                                                      (__v2df) __B,
   1388                                                      -(__v2df) __C,
   1389                                                      (__mmask8) __U);
   1390 }
   1391 
   1392 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1393 _mm256_mask_fmadd_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C)
   1394 {
   1395   return (__m256d) __builtin_ia32_vfmaddpd256_mask ((__v4df) __A,
   1396                                                     (__v4df) __B,
   1397                                                     (__v4df) __C,
   1398                                                     (__mmask8) __U);
   1399 }
   1400 
   1401 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1402 _mm256_mask3_fmadd_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U)
   1403 {
   1404   return (__m256d) __builtin_ia32_vfmaddpd256_mask3 ((__v4df) __A,
   1405                                                      (__v4df) __B,
   1406                                                      (__v4df) __C,
   1407                                                      (__mmask8) __U);
   1408 }
   1409 
   1410 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1411 _mm256_maskz_fmadd_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C)
   1412 {
   1413   return (__m256d) __builtin_ia32_vfmaddpd256_maskz ((__v4df) __A,
   1414                                                      (__v4df) __B,
   1415                                                      (__v4df) __C,
   1416                                                      (__mmask8) __U);
   1417 }
   1418 
   1419 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1420 _mm256_mask_fmsub_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C)
   1421 {
   1422   return (__m256d) __builtin_ia32_vfmaddpd256_mask ((__v4df) __A,
   1423                                                     (__v4df) __B,
   1424                                                     -(__v4df) __C,
   1425                                                     (__mmask8) __U);
   1426 }
   1427 
   1428 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1429 _mm256_maskz_fmsub_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C)
   1430 {
   1431   return (__m256d) __builtin_ia32_vfmaddpd256_maskz ((__v4df) __A,
   1432                                                      (__v4df) __B,
   1433                                                      -(__v4df) __C,
   1434                                                      (__mmask8) __U);
   1435 }
   1436 
   1437 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1438 _mm256_mask3_fnmadd_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U)
   1439 {
   1440   return (__m256d) __builtin_ia32_vfmaddpd256_mask3 (-(__v4df) __A,
   1441                                                      (__v4df) __B,
   1442                                                      (__v4df) __C,
   1443                                                      (__mmask8) __U);
   1444 }
   1445 
   1446 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1447 _mm256_maskz_fnmadd_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C)
   1448 {
   1449   return (__m256d) __builtin_ia32_vfmaddpd256_maskz (-(__v4df) __A,
   1450                                                      (__v4df) __B,
   1451                                                      (__v4df) __C,
   1452                                                      (__mmask8) __U);
   1453 }
   1454 
   1455 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1456 _mm256_maskz_fnmsub_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C)
   1457 {
   1458   return (__m256d) __builtin_ia32_vfmaddpd256_maskz (-(__v4df) __A,
   1459                                                      (__v4df) __B,
   1460                                                      -(__v4df) __C,
   1461                                                      (__mmask8) __U);
   1462 }
   1463 
   1464 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1465 _mm_mask_fmadd_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
   1466 {
   1467   return (__m128) __builtin_ia32_vfmaddps128_mask ((__v4sf) __A,
   1468                                                    (__v4sf) __B,
   1469                                                    (__v4sf) __C,
   1470                                                    (__mmask8) __U);
   1471 }
   1472 
   1473 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1474 _mm_mask3_fmadd_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
   1475 {
   1476   return (__m128) __builtin_ia32_vfmaddps128_mask3 ((__v4sf) __A,
   1477                                                     (__v4sf) __B,
   1478                                                     (__v4sf) __C,
   1479                                                     (__mmask8) __U);
   1480 }
   1481 
   1482 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1483 _mm_maskz_fmadd_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
   1484 {
   1485   return (__m128) __builtin_ia32_vfmaddps128_maskz ((__v4sf) __A,
   1486                                                     (__v4sf) __B,
   1487                                                     (__v4sf) __C,
   1488                                                     (__mmask8) __U);
   1489 }
   1490 
   1491 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1492 _mm_mask_fmsub_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
   1493 {
   1494   return (__m128) __builtin_ia32_vfmaddps128_mask ((__v4sf) __A,
   1495                                                    (__v4sf) __B,
   1496                                                    -(__v4sf) __C,
   1497                                                    (__mmask8) __U);
   1498 }
   1499 
   1500 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1501 _mm_maskz_fmsub_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
   1502 {
   1503   return (__m128) __builtin_ia32_vfmaddps128_maskz ((__v4sf) __A,
   1504                                                     (__v4sf) __B,
   1505                                                     -(__v4sf) __C,
   1506                                                     (__mmask8) __U);
   1507 }
   1508 
   1509 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1510 _mm_mask3_fnmadd_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
   1511 {
   1512   return (__m128) __builtin_ia32_vfmaddps128_mask3 (-(__v4sf) __A,
   1513                                                     (__v4sf) __B,
   1514                                                     (__v4sf) __C,
   1515                                                     (__mmask8) __U);
   1516 }
   1517 
   1518 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1519 _mm_maskz_fnmadd_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
   1520 {
   1521   return (__m128) __builtin_ia32_vfmaddps128_maskz (-(__v4sf) __A,
   1522                                                     (__v4sf) __B,
   1523                                                     (__v4sf) __C,
   1524                                                     (__mmask8) __U);
   1525 }
   1526 
   1527 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1528 _mm_maskz_fnmsub_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
   1529 {
   1530   return (__m128) __builtin_ia32_vfmaddps128_maskz (-(__v4sf) __A,
   1531                                                     (__v4sf) __B,
   1532                                                     -(__v4sf) __C,
   1533                                                     (__mmask8) __U);
   1534 }
   1535 
   1536 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1537 _mm256_mask_fmadd_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
   1538 {
   1539   return (__m256) __builtin_ia32_vfmaddps256_mask ((__v8sf) __A,
   1540                                                    (__v8sf) __B,
   1541                                                    (__v8sf) __C,
   1542                                                    (__mmask8) __U);
   1543 }
   1544 
   1545 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1546 _mm256_mask3_fmadd_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U)
   1547 {
   1548   return (__m256) __builtin_ia32_vfmaddps256_mask3 ((__v8sf) __A,
   1549                                                     (__v8sf) __B,
   1550                                                     (__v8sf) __C,
   1551                                                     (__mmask8) __U);
   1552 }
   1553 
   1554 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1555 _mm256_maskz_fmadd_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C)
   1556 {
   1557   return (__m256) __builtin_ia32_vfmaddps256_maskz ((__v8sf) __A,
   1558                                                     (__v8sf) __B,
   1559                                                     (__v8sf) __C,
   1560                                                     (__mmask8) __U);
   1561 }
   1562 
   1563 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1564 _mm256_mask_fmsub_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
   1565 {
   1566   return (__m256) __builtin_ia32_vfmaddps256_mask ((__v8sf) __A,
   1567                                                    (__v8sf) __B,
   1568                                                    -(__v8sf) __C,
   1569                                                    (__mmask8) __U);
   1570 }
   1571 
   1572 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1573 _mm256_maskz_fmsub_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C)
   1574 {
   1575   return (__m256) __builtin_ia32_vfmaddps256_maskz ((__v8sf) __A,
   1576                                                     (__v8sf) __B,
   1577                                                     -(__v8sf) __C,
   1578                                                     (__mmask8) __U);
   1579 }
   1580 
   1581 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1582 _mm256_mask3_fnmadd_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U)
   1583 {
   1584   return (__m256) __builtin_ia32_vfmaddps256_mask3 (-(__v8sf) __A,
   1585                                                     (__v8sf) __B,
   1586                                                     (__v8sf) __C,
   1587                                                     (__mmask8) __U);
   1588 }
   1589 
   1590 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1591 _mm256_maskz_fnmadd_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C)
   1592 {
   1593   return (__m256) __builtin_ia32_vfmaddps256_maskz (-(__v8sf) __A,
   1594                                                     (__v8sf) __B,
   1595                                                     (__v8sf) __C,
   1596                                                     (__mmask8) __U);
   1597 }
   1598 
   1599 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1600 _mm256_maskz_fnmsub_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C)
   1601 {
   1602   return (__m256) __builtin_ia32_vfmaddps256_maskz (-(__v8sf) __A,
   1603                                                     (__v8sf) __B,
   1604                                                     -(__v8sf) __C,
   1605                                                     (__mmask8) __U);
   1606 }
   1607 
   1608 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1609 _mm_mask_fmaddsub_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
   1610 {
   1611   return (__m128d) __builtin_ia32_vfmaddsubpd128_mask ((__v2df) __A,
   1612                                                        (__v2df) __B,
   1613                                                        (__v2df) __C,
   1614                                                        (__mmask8) __U);
   1615 }
   1616 
   1617 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1618 _mm_mask3_fmaddsub_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U)
   1619 {
   1620   return (__m128d) __builtin_ia32_vfmaddsubpd128_mask3 ((__v2df) __A,
   1621                                                         (__v2df) __B,
   1622                                                         (__v2df) __C,
   1623                                                         (__mmask8)
   1624                                                         __U);
   1625 }
   1626 
   1627 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1628 _mm_maskz_fmaddsub_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
   1629 {
   1630   return (__m128d) __builtin_ia32_vfmaddsubpd128_maskz ((__v2df) __A,
   1631                                                         (__v2df) __B,
   1632                                                         (__v2df) __C,
   1633                                                         (__mmask8)
   1634                                                         __U);
   1635 }
   1636 
   1637 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1638 _mm_mask_fmsubadd_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
   1639 {
   1640   return (__m128d) __builtin_ia32_vfmaddsubpd128_mask ((__v2df) __A,
   1641                                                        (__v2df) __B,
   1642                                                        -(__v2df) __C,
   1643                                                        (__mmask8) __U);
   1644 }
   1645 
   1646 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1647 _mm_maskz_fmsubadd_pd(__mmask8 __U, __m128d __A, __m128d __B, __m128d __C)
   1648 {
   1649   return (__m128d) __builtin_ia32_vfmaddsubpd128_maskz ((__v2df) __A,
   1650                                                         (__v2df) __B,
   1651                                                         -(__v2df) __C,
   1652                                                         (__mmask8)
   1653                                                         __U);
   1654 }
   1655 
   1656 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1657 _mm256_mask_fmaddsub_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C)
   1658 {
   1659   return (__m256d) __builtin_ia32_vfmaddsubpd256_mask ((__v4df) __A,
   1660                                                        (__v4df) __B,
   1661                                                        (__v4df) __C,
   1662                                                        (__mmask8) __U);
   1663 }
   1664 
   1665 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1666 _mm256_mask3_fmaddsub_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U)
   1667 {
   1668   return (__m256d) __builtin_ia32_vfmaddsubpd256_mask3 ((__v4df) __A,
   1669                                                         (__v4df) __B,
   1670                                                         (__v4df) __C,
   1671                                                         (__mmask8)
   1672                                                         __U);
   1673 }
   1674 
   1675 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1676 _mm256_maskz_fmaddsub_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C)
   1677 {
   1678   return (__m256d) __builtin_ia32_vfmaddsubpd256_maskz ((__v4df) __A,
   1679                                                         (__v4df) __B,
   1680                                                         (__v4df) __C,
   1681                                                         (__mmask8)
   1682                                                         __U);
   1683 }
   1684 
   1685 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1686 _mm256_mask_fmsubadd_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C)
   1687 {
   1688   return (__m256d) __builtin_ia32_vfmaddsubpd256_mask ((__v4df) __A,
   1689                                                        (__v4df) __B,
   1690                                                        -(__v4df) __C,
   1691                                                        (__mmask8) __U);
   1692 }
   1693 
   1694 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1695 _mm256_maskz_fmsubadd_pd(__mmask8 __U, __m256d __A, __m256d __B, __m256d __C)
   1696 {
   1697   return (__m256d) __builtin_ia32_vfmaddsubpd256_maskz ((__v4df) __A,
   1698                                                         (__v4df) __B,
   1699                                                         -(__v4df) __C,
   1700                                                         (__mmask8)
   1701                                                         __U);
   1702 }
   1703 
   1704 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1705 _mm_mask_fmaddsub_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
   1706 {
   1707   return (__m128) __builtin_ia32_vfmaddsubps128_mask ((__v4sf) __A,
   1708                                                       (__v4sf) __B,
   1709                                                       (__v4sf) __C,
   1710                                                       (__mmask8) __U);
   1711 }
   1712 
   1713 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1714 _mm_mask3_fmaddsub_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
   1715 {
   1716   return (__m128) __builtin_ia32_vfmaddsubps128_mask3 ((__v4sf) __A,
   1717                                                        (__v4sf) __B,
   1718                                                        (__v4sf) __C,
   1719                                                        (__mmask8) __U);
   1720 }
   1721 
   1722 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1723 _mm_maskz_fmaddsub_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
   1724 {
   1725   return (__m128) __builtin_ia32_vfmaddsubps128_maskz ((__v4sf) __A,
   1726                                                        (__v4sf) __B,
   1727                                                        (__v4sf) __C,
   1728                                                        (__mmask8) __U);
   1729 }
   1730 
   1731 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1732 _mm_mask_fmsubadd_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
   1733 {
   1734   return (__m128) __builtin_ia32_vfmaddsubps128_mask ((__v4sf) __A,
   1735                                                       (__v4sf) __B,
   1736                                                       -(__v4sf) __C,
   1737                                                       (__mmask8) __U);
   1738 }
   1739 
   1740 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1741 _mm_maskz_fmsubadd_ps(__mmask8 __U, __m128 __A, __m128 __B, __m128 __C)
   1742 {
   1743   return (__m128) __builtin_ia32_vfmaddsubps128_maskz ((__v4sf) __A,
   1744                                                        (__v4sf) __B,
   1745                                                        -(__v4sf) __C,
   1746                                                        (__mmask8) __U);
   1747 }
   1748 
   1749 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1750 _mm256_mask_fmaddsub_ps(__m256 __A, __mmask8 __U, __m256 __B,
   1751                          __m256 __C)
   1752 {
   1753   return (__m256) __builtin_ia32_vfmaddsubps256_mask ((__v8sf) __A,
   1754                                                       (__v8sf) __B,
   1755                                                       (__v8sf) __C,
   1756                                                       (__mmask8) __U);
   1757 }
   1758 
   1759 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1760 _mm256_mask3_fmaddsub_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U)
   1761 {
   1762   return (__m256) __builtin_ia32_vfmaddsubps256_mask3 ((__v8sf) __A,
   1763                                                        (__v8sf) __B,
   1764                                                        (__v8sf) __C,
   1765                                                        (__mmask8) __U);
   1766 }
   1767 
   1768 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1769 _mm256_maskz_fmaddsub_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C)
   1770 {
   1771   return (__m256) __builtin_ia32_vfmaddsubps256_maskz ((__v8sf) __A,
   1772                                                        (__v8sf) __B,
   1773                                                        (__v8sf) __C,
   1774                                                        (__mmask8) __U);
   1775 }
   1776 
   1777 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1778 _mm256_mask_fmsubadd_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
   1779 {
   1780   return (__m256) __builtin_ia32_vfmaddsubps256_mask ((__v8sf) __A,
   1781                                                       (__v8sf) __B,
   1782                                                       -(__v8sf) __C,
   1783                                                       (__mmask8) __U);
   1784 }
   1785 
   1786 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1787 _mm256_maskz_fmsubadd_ps(__mmask8 __U, __m256 __A, __m256 __B, __m256 __C)
   1788 {
   1789   return (__m256) __builtin_ia32_vfmaddsubps256_maskz ((__v8sf) __A,
   1790                                                        (__v8sf) __B,
   1791                                                        -(__v8sf) __C,
   1792                                                        (__mmask8) __U);
   1793 }
   1794 
   1795 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1796 _mm_mask3_fmsub_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U)
   1797 {
   1798   return (__m128d) __builtin_ia32_vfmsubpd128_mask3 ((__v2df) __A,
   1799                                                      (__v2df) __B,
   1800                                                      (__v2df) __C,
   1801                                                      (__mmask8) __U);
   1802 }
   1803 
   1804 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1805 _mm256_mask3_fmsub_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U)
   1806 {
   1807   return (__m256d) __builtin_ia32_vfmsubpd256_mask3 ((__v4df) __A,
   1808                                                      (__v4df) __B,
   1809                                                      (__v4df) __C,
   1810                                                      (__mmask8) __U);
   1811 }
   1812 
   1813 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1814 _mm_mask3_fmsub_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
   1815 {
   1816   return (__m128) __builtin_ia32_vfmsubps128_mask3 ((__v4sf) __A,
   1817                                                     (__v4sf) __B,
   1818                                                     (__v4sf) __C,
   1819                                                     (__mmask8) __U);
   1820 }
   1821 
   1822 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1823 _mm256_mask3_fmsub_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U)
   1824 {
   1825   return (__m256) __builtin_ia32_vfmsubps256_mask3 ((__v8sf) __A,
   1826                                                     (__v8sf) __B,
   1827                                                     (__v8sf) __C,
   1828                                                     (__mmask8) __U);
   1829 }
   1830 
   1831 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1832 _mm_mask3_fmsubadd_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U)
   1833 {
   1834   return (__m128d) __builtin_ia32_vfmsubaddpd128_mask3 ((__v2df) __A,
   1835                                                         (__v2df) __B,
   1836                                                         (__v2df) __C,
   1837                                                         (__mmask8)
   1838                                                         __U);
   1839 }
   1840 
   1841 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1842 _mm256_mask3_fmsubadd_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U)
   1843 {
   1844   return (__m256d) __builtin_ia32_vfmsubaddpd256_mask3 ((__v4df) __A,
   1845                                                         (__v4df) __B,
   1846                                                         (__v4df) __C,
   1847                                                         (__mmask8)
   1848                                                         __U);
   1849 }
   1850 
   1851 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1852 _mm_mask3_fmsubadd_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
   1853 {
   1854   return (__m128) __builtin_ia32_vfmsubaddps128_mask3 ((__v4sf) __A,
   1855                                                        (__v4sf) __B,
   1856                                                        (__v4sf) __C,
   1857                                                        (__mmask8) __U);
   1858 }
   1859 
   1860 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1861 _mm256_mask3_fmsubadd_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U)
   1862 {
   1863   return (__m256) __builtin_ia32_vfmsubaddps256_mask3 ((__v8sf) __A,
   1864                                                        (__v8sf) __B,
   1865                                                        (__v8sf) __C,
   1866                                                        (__mmask8) __U);
   1867 }
   1868 
   1869 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1870 _mm_mask_fnmadd_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
   1871 {
   1872   return (__m128d) __builtin_ia32_vfnmaddpd128_mask ((__v2df) __A,
   1873                                                      (__v2df) __B,
   1874                                                      (__v2df) __C,
   1875                                                      (__mmask8) __U);
   1876 }
   1877 
   1878 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1879 _mm256_mask_fnmadd_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C)
   1880 {
   1881   return (__m256d) __builtin_ia32_vfnmaddpd256_mask ((__v4df) __A,
   1882                                                      (__v4df) __B,
   1883                                                      (__v4df) __C,
   1884                                                      (__mmask8) __U);
   1885 }
   1886 
   1887 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1888 _mm_mask_fnmadd_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
   1889 {
   1890   return (__m128) __builtin_ia32_vfnmaddps128_mask ((__v4sf) __A,
   1891                                                     (__v4sf) __B,
   1892                                                     (__v4sf) __C,
   1893                                                     (__mmask8) __U);
   1894 }
   1895 
   1896 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1897 _mm256_mask_fnmadd_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
   1898 {
   1899   return (__m256) __builtin_ia32_vfnmaddps256_mask ((__v8sf) __A,
   1900                                                     (__v8sf) __B,
   1901                                                     (__v8sf) __C,
   1902                                                     (__mmask8) __U);
   1903 }
   1904 
   1905 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1906 _mm_mask_fnmsub_pd(__m128d __A, __mmask8 __U, __m128d __B, __m128d __C)
   1907 {
   1908   return (__m128d) __builtin_ia32_vfnmsubpd128_mask ((__v2df) __A,
   1909                                                      (__v2df) __B,
   1910                                                      (__v2df) __C,
   1911                                                      (__mmask8) __U);
   1912 }
   1913 
   1914 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1915 _mm_mask3_fnmsub_pd(__m128d __A, __m128d __B, __m128d __C, __mmask8 __U)
   1916 {
   1917   return (__m128d) __builtin_ia32_vfnmsubpd128_mask3 ((__v2df) __A,
   1918                                                       (__v2df) __B,
   1919                                                       (__v2df) __C,
   1920                                                       (__mmask8) __U);
   1921 }
   1922 
   1923 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1924 _mm256_mask_fnmsub_pd(__m256d __A, __mmask8 __U, __m256d __B, __m256d __C)
   1925 {
   1926   return (__m256d) __builtin_ia32_vfnmsubpd256_mask ((__v4df) __A,
   1927                                                      (__v4df) __B,
   1928                                                      (__v4df) __C,
   1929                                                      (__mmask8) __U);
   1930 }
   1931 
   1932 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1933 _mm256_mask3_fnmsub_pd(__m256d __A, __m256d __B, __m256d __C, __mmask8 __U)
   1934 {
   1935   return (__m256d) __builtin_ia32_vfnmsubpd256_mask3 ((__v4df) __A,
   1936                                                       (__v4df) __B,
   1937                                                       (__v4df) __C,
   1938                                                       (__mmask8) __U);
   1939 }
   1940 
   1941 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1942 _mm_mask_fnmsub_ps(__m128 __A, __mmask8 __U, __m128 __B, __m128 __C)
   1943 {
   1944   return (__m128) __builtin_ia32_vfnmsubps128_mask ((__v4sf) __A,
   1945                                                     (__v4sf) __B,
   1946                                                     (__v4sf) __C,
   1947                                                     (__mmask8) __U);
   1948 }
   1949 
   1950 static __inline__ __m128 __DEFAULT_FN_ATTRS
   1951 _mm_mask3_fnmsub_ps(__m128 __A, __m128 __B, __m128 __C, __mmask8 __U)
   1952 {
   1953   return (__m128) __builtin_ia32_vfnmsubps128_mask3 ((__v4sf) __A,
   1954                                                      (__v4sf) __B,
   1955                                                      (__v4sf) __C,
   1956                                                      (__mmask8) __U);
   1957 }
   1958 
   1959 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1960 _mm256_mask_fnmsub_ps(__m256 __A, __mmask8 __U, __m256 __B, __m256 __C)
   1961 {
   1962   return (__m256) __builtin_ia32_vfnmsubps256_mask ((__v8sf) __A,
   1963                                                     (__v8sf) __B,
   1964                                                     (__v8sf) __C,
   1965                                                     (__mmask8) __U);
   1966 }
   1967 
   1968 static __inline__ __m256 __DEFAULT_FN_ATTRS
   1969 _mm256_mask3_fnmsub_ps(__m256 __A, __m256 __B, __m256 __C, __mmask8 __U)
   1970 {
   1971   return (__m256) __builtin_ia32_vfnmsubps256_mask3 ((__v8sf) __A,
   1972                                                      (__v8sf) __B,
   1973                                                      (__v8sf) __C,
   1974                                                      (__mmask8) __U);
   1975 }
   1976 
   1977 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1978 _mm_mask_add_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
   1979   return (__m128d) __builtin_ia32_addpd128_mask ((__v2df) __A,
   1980              (__v2df) __B,
   1981              (__v2df) __W,
   1982              (__mmask8) __U);
   1983 }
   1984 
   1985 static __inline__ __m128d __DEFAULT_FN_ATTRS
   1986 _mm_maskz_add_pd (__mmask8 __U, __m128d __A, __m128d __B) {
   1987   return (__m128d) __builtin_ia32_addpd128_mask ((__v2df) __A,
   1988              (__v2df) __B,
   1989              (__v2df)
   1990              _mm_setzero_pd (),
   1991              (__mmask8) __U);
   1992 }
   1993 
   1994 static __inline__ __m256d __DEFAULT_FN_ATTRS
   1995 _mm256_mask_add_pd (__m256d __W, __mmask8 __U, __m256d __A, __m256d __B) {
   1996   return (__m256d) __builtin_ia32_addpd256_mask ((__v4df) __A,
   1997              (__v4df) __B,
   1998              (__v4df) __W,
   1999              (__mmask8) __U);
   2000 }
   2001 
   2002 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2003 _mm256_maskz_add_pd (__mmask8 __U, __m256d __A, __m256d __B) {
   2004   return (__m256d) __builtin_ia32_addpd256_mask ((__v4df) __A,
   2005              (__v4df) __B,
   2006              (__v4df)
   2007              _mm256_setzero_pd (),
   2008              (__mmask8) __U);
   2009 }
   2010 
   2011 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2012 _mm_mask_add_ps (__m128 __W, __mmask16 __U, __m128 __A, __m128 __B) {
   2013   return (__m128) __builtin_ia32_addps128_mask ((__v4sf) __A,
   2014             (__v4sf) __B,
   2015             (__v4sf) __W,
   2016             (__mmask8) __U);
   2017 }
   2018 
   2019 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2020 _mm_maskz_add_ps (__mmask16 __U, __m128 __A, __m128 __B) {
   2021   return (__m128) __builtin_ia32_addps128_mask ((__v4sf) __A,
   2022             (__v4sf) __B,
   2023             (__v4sf)
   2024             _mm_setzero_ps (),
   2025             (__mmask8) __U);
   2026 }
   2027 
   2028 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2029 _mm256_mask_add_ps (__m256 __W, __mmask16 __U, __m256 __A, __m256 __B) {
   2030   return (__m256) __builtin_ia32_addps256_mask ((__v8sf) __A,
   2031             (__v8sf) __B,
   2032             (__v8sf) __W,
   2033             (__mmask8) __U);
   2034 }
   2035 
   2036 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2037 _mm256_maskz_add_ps (__mmask16 __U, __m256 __A, __m256 __B) {
   2038   return (__m256) __builtin_ia32_addps256_mask ((__v8sf) __A,
   2039             (__v8sf) __B,
   2040             (__v8sf)
   2041             _mm256_setzero_ps (),
   2042             (__mmask8) __U);
   2043 }
   2044 
   2045 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2046 _mm_mask_blend_epi32 (__mmask8 __U, __m128i __A, __m128i __W) {
   2047   return (__m128i) __builtin_ia32_blendmd_128_mask ((__v4si) __A,
   2048                 (__v4si) __W,
   2049                 (__mmask8) __U);
   2050 }
   2051 
   2052 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2053 _mm256_mask_blend_epi32 (__mmask8 __U, __m256i __A, __m256i __W) {
   2054   return (__m256i) __builtin_ia32_blendmd_256_mask ((__v8si) __A,
   2055                 (__v8si) __W,
   2056                 (__mmask8) __U);
   2057 }
   2058 
   2059 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2060 _mm_mask_blend_pd (__mmask8 __U, __m128d __A, __m128d __W) {
   2061   return (__m128d) __builtin_ia32_blendmpd_128_mask ((__v2df) __A,
   2062                  (__v2df) __W,
   2063                  (__mmask8) __U);
   2064 }
   2065 
   2066 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2067 _mm256_mask_blend_pd (__mmask8 __U, __m256d __A, __m256d __W) {
   2068   return (__m256d) __builtin_ia32_blendmpd_256_mask ((__v4df) __A,
   2069                  (__v4df) __W,
   2070                  (__mmask8) __U);
   2071 }
   2072 
   2073 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2074 _mm_mask_blend_ps (__mmask8 __U, __m128 __A, __m128 __W) {
   2075   return (__m128) __builtin_ia32_blendmps_128_mask ((__v4sf) __A,
   2076                 (__v4sf) __W,
   2077                 (__mmask8) __U);
   2078 }
   2079 
   2080 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2081 _mm256_mask_blend_ps (__mmask8 __U, __m256 __A, __m256 __W) {
   2082   return (__m256) __builtin_ia32_blendmps_256_mask ((__v8sf) __A,
   2083                 (__v8sf) __W,
   2084                 (__mmask8) __U);
   2085 }
   2086 
   2087 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2088 _mm_mask_blend_epi64 (__mmask8 __U, __m128i __A, __m128i __W) {
   2089   return (__m128i) __builtin_ia32_blendmq_128_mask ((__v2di) __A,
   2090                 (__v2di) __W,
   2091                 (__mmask8) __U);
   2092 }
   2093 
   2094 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2095 _mm256_mask_blend_epi64 (__mmask8 __U, __m256i __A, __m256i __W) {
   2096   return (__m256i) __builtin_ia32_blendmq_256_mask ((__v4di) __A,
   2097                 (__v4di) __W,
   2098                 (__mmask8) __U);
   2099 }
   2100 
   2101 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2102 _mm_mask_compress_pd (__m128d __W, __mmask8 __U, __m128d __A) {
   2103   return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A,
   2104                   (__v2df) __W,
   2105                   (__mmask8) __U);
   2106 }
   2107 
   2108 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2109 _mm_maskz_compress_pd (__mmask8 __U, __m128d __A) {
   2110   return (__m128d) __builtin_ia32_compressdf128_mask ((__v2df) __A,
   2111                   (__v2df)
   2112                   _mm_setzero_pd (),
   2113                   (__mmask8) __U);
   2114 }
   2115 
   2116 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2117 _mm256_mask_compress_pd (__m256d __W, __mmask8 __U, __m256d __A) {
   2118   return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A,
   2119                   (__v4df) __W,
   2120                   (__mmask8) __U);
   2121 }
   2122 
   2123 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2124 _mm256_maskz_compress_pd (__mmask8 __U, __m256d __A) {
   2125   return (__m256d) __builtin_ia32_compressdf256_mask ((__v4df) __A,
   2126                   (__v4df)
   2127                   _mm256_setzero_pd (),
   2128                   (__mmask8) __U);
   2129 }
   2130 
   2131 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2132 _mm_mask_compress_epi64 (__m128i __W, __mmask8 __U, __m128i __A) {
   2133   return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A,
   2134                   (__v2di) __W,
   2135                   (__mmask8) __U);
   2136 }
   2137 
   2138 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2139 _mm_maskz_compress_epi64 (__mmask8 __U, __m128i __A) {
   2140   return (__m128i) __builtin_ia32_compressdi128_mask ((__v2di) __A,
   2141                   (__v2di)
   2142                   _mm_setzero_si128 (),
   2143                   (__mmask8) __U);
   2144 }
   2145 
   2146 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2147 _mm256_mask_compress_epi64 (__m256i __W, __mmask8 __U, __m256i __A) {
   2148   return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A,
   2149                   (__v4di) __W,
   2150                   (__mmask8) __U);
   2151 }
   2152 
   2153 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2154 _mm256_maskz_compress_epi64 (__mmask8 __U, __m256i __A) {
   2155   return (__m256i) __builtin_ia32_compressdi256_mask ((__v4di) __A,
   2156                   (__v4di)
   2157                   _mm256_setzero_si256 (),
   2158                   (__mmask8) __U);
   2159 }
   2160 
   2161 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2162 _mm_mask_compress_ps (__m128 __W, __mmask8 __U, __m128 __A) {
   2163   return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A,
   2164                  (__v4sf) __W,
   2165                  (__mmask8) __U);
   2166 }
   2167 
   2168 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2169 _mm_maskz_compress_ps (__mmask8 __U, __m128 __A) {
   2170   return (__m128) __builtin_ia32_compresssf128_mask ((__v4sf) __A,
   2171                  (__v4sf)
   2172                  _mm_setzero_ps (),
   2173                  (__mmask8) __U);
   2174 }
   2175 
   2176 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2177 _mm256_mask_compress_ps (__m256 __W, __mmask8 __U, __m256 __A) {
   2178   return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A,
   2179                  (__v8sf) __W,
   2180                  (__mmask8) __U);
   2181 }
   2182 
   2183 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2184 _mm256_maskz_compress_ps (__mmask8 __U, __m256 __A) {
   2185   return (__m256) __builtin_ia32_compresssf256_mask ((__v8sf) __A,
   2186                  (__v8sf)
   2187                  _mm256_setzero_ps (),
   2188                  (__mmask8) __U);
   2189 }
   2190 
   2191 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2192 _mm_mask_compress_epi32 (__m128i __W, __mmask8 __U, __m128i __A) {
   2193   return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A,
   2194                   (__v4si) __W,
   2195                   (__mmask8) __U);
   2196 }
   2197 
   2198 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2199 _mm_maskz_compress_epi32 (__mmask8 __U, __m128i __A) {
   2200   return (__m128i) __builtin_ia32_compresssi128_mask ((__v4si) __A,
   2201                   (__v4si)
   2202                   _mm_setzero_si128 (),
   2203                   (__mmask8) __U);
   2204 }
   2205 
   2206 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2207 _mm256_mask_compress_epi32 (__m256i __W, __mmask8 __U, __m256i __A) {
   2208   return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A,
   2209                   (__v8si) __W,
   2210                   (__mmask8) __U);
   2211 }
   2212 
   2213 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2214 _mm256_maskz_compress_epi32 (__mmask8 __U, __m256i __A) {
   2215   return (__m256i) __builtin_ia32_compresssi256_mask ((__v8si) __A,
   2216                   (__v8si)
   2217                   _mm256_setzero_si256 (),
   2218                   (__mmask8) __U);
   2219 }
   2220 
   2221 static __inline__ void __DEFAULT_FN_ATTRS
   2222 _mm_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m128d __A) {
   2223   __builtin_ia32_compressstoredf128_mask ((__v2df *) __P,
   2224             (__v2df) __A,
   2225             (__mmask8) __U);
   2226 }
   2227 
   2228 static __inline__ void __DEFAULT_FN_ATTRS
   2229 _mm256_mask_compressstoreu_pd (void *__P, __mmask8 __U, __m256d __A) {
   2230   __builtin_ia32_compressstoredf256_mask ((__v4df *) __P,
   2231             (__v4df) __A,
   2232             (__mmask8) __U);
   2233 }
   2234 
   2235 static __inline__ void __DEFAULT_FN_ATTRS
   2236 _mm_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m128i __A) {
   2237   __builtin_ia32_compressstoredi128_mask ((__v2di *) __P,
   2238             (__v2di) __A,
   2239             (__mmask8) __U);
   2240 }
   2241 
   2242 static __inline__ void __DEFAULT_FN_ATTRS
   2243 _mm256_mask_compressstoreu_epi64 (void *__P, __mmask8 __U, __m256i __A) {
   2244   __builtin_ia32_compressstoredi256_mask ((__v4di *) __P,
   2245             (__v4di) __A,
   2246             (__mmask8) __U);
   2247 }
   2248 
   2249 static __inline__ void __DEFAULT_FN_ATTRS
   2250 _mm_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m128 __A) {
   2251   __builtin_ia32_compressstoresf128_mask ((__v4sf *) __P,
   2252             (__v4sf) __A,
   2253             (__mmask8) __U);
   2254 }
   2255 
   2256 static __inline__ void __DEFAULT_FN_ATTRS
   2257 _mm256_mask_compressstoreu_ps (void *__P, __mmask8 __U, __m256 __A) {
   2258   __builtin_ia32_compressstoresf256_mask ((__v8sf *) __P,
   2259             (__v8sf) __A,
   2260             (__mmask8) __U);
   2261 }
   2262 
   2263 static __inline__ void __DEFAULT_FN_ATTRS
   2264 _mm_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m128i __A) {
   2265   __builtin_ia32_compressstoresi128_mask ((__v4si *) __P,
   2266             (__v4si) __A,
   2267             (__mmask8) __U);
   2268 }
   2269 
   2270 static __inline__ void __DEFAULT_FN_ATTRS
   2271 _mm256_mask_compressstoreu_epi32 (void *__P, __mmask8 __U, __m256i __A) {
   2272   __builtin_ia32_compressstoresi256_mask ((__v8si *) __P,
   2273             (__v8si) __A,
   2274             (__mmask8) __U);
   2275 }
   2276 
   2277 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2278 _mm_mask_cvtepi32_pd (__m128d __W, __mmask8 __U, __m128i __A) {
   2279   return (__m128d) __builtin_ia32_cvtdq2pd128_mask ((__v4si) __A,
   2280                 (__v2df) __W,
   2281                 (__mmask8) __U);
   2282 }
   2283 
   2284 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2285 _mm_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A) {
   2286   return (__m128d) __builtin_ia32_cvtdq2pd128_mask ((__v4si) __A,
   2287                 (__v2df)
   2288                 _mm_setzero_pd (),
   2289                 (__mmask8) __U);
   2290 }
   2291 
   2292 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2293 _mm256_mask_cvtepi32_pd (__m256d __W, __mmask8 __U, __m128i __A) {
   2294   return (__m256d) __builtin_ia32_cvtdq2pd256_mask ((__v4si) __A,
   2295                 (__v4df) __W,
   2296                 (__mmask8) __U);
   2297 }
   2298 
   2299 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2300 _mm256_maskz_cvtepi32_pd (__mmask8 __U, __m128i __A) {
   2301   return (__m256d) __builtin_ia32_cvtdq2pd256_mask ((__v4si) __A,
   2302                 (__v4df)
   2303                 _mm256_setzero_pd (),
   2304                 (__mmask8) __U);
   2305 }
   2306 
   2307 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2308 _mm_mask_cvtepi32_ps (__m128 __W, __mmask8 __U, __m128i __A) {
   2309   return (__m128) __builtin_ia32_cvtdq2ps128_mask ((__v4si) __A,
   2310                (__v4sf) __W,
   2311                (__mmask8) __U);
   2312 }
   2313 
   2314 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2315 _mm_maskz_cvtepi32_ps (__mmask16 __U, __m128i __A) {
   2316   return (__m128) __builtin_ia32_cvtdq2ps128_mask ((__v4si) __A,
   2317                (__v4sf)
   2318                _mm_setzero_ps (),
   2319                (__mmask8) __U);
   2320 }
   2321 
   2322 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2323 _mm256_mask_cvtepi32_ps (__m256 __W, __mmask8 __U, __m256i __A) {
   2324   return (__m256) __builtin_ia32_cvtdq2ps256_mask ((__v8si) __A,
   2325                (__v8sf) __W,
   2326                (__mmask8) __U);
   2327 }
   2328 
   2329 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2330 _mm256_maskz_cvtepi32_ps (__mmask16 __U, __m256i __A) {
   2331   return (__m256) __builtin_ia32_cvtdq2ps256_mask ((__v8si) __A,
   2332                (__v8sf)
   2333                _mm256_setzero_ps (),
   2334                (__mmask8) __U);
   2335 }
   2336 
   2337 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2338 _mm_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A) {
   2339   return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A,
   2340                 (__v4si) __W,
   2341                 (__mmask8) __U);
   2342 }
   2343 
   2344 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2345 _mm_maskz_cvtpd_epi32 (__mmask8 __U, __m128d __A) {
   2346   return (__m128i) __builtin_ia32_cvtpd2dq128_mask ((__v2df) __A,
   2347                 (__v4si)
   2348                 _mm_setzero_si128 (),
   2349                 (__mmask8) __U);
   2350 }
   2351 
   2352 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2353 _mm256_mask_cvtpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A) {
   2354   return (__m128i) __builtin_ia32_cvtpd2dq256_mask ((__v4df) __A,
   2355                 (__v4si) __W,
   2356                 (__mmask8) __U);
   2357 }
   2358 
   2359 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2360 _mm256_maskz_cvtpd_epi32 (__mmask8 __U, __m256d __A) {
   2361   return (__m128i) __builtin_ia32_cvtpd2dq256_mask ((__v4df) __A,
   2362                 (__v4si)
   2363                 _mm_setzero_si128 (),
   2364                 (__mmask8) __U);
   2365 }
   2366 
   2367 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2368 _mm_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m128d __A) {
   2369   return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A,
   2370             (__v4sf) __W,
   2371             (__mmask8) __U);
   2372 }
   2373 
   2374 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2375 _mm_maskz_cvtpd_ps (__mmask8 __U, __m128d __A) {
   2376   return (__m128) __builtin_ia32_cvtpd2ps_mask ((__v2df) __A,
   2377             (__v4sf)
   2378             _mm_setzero_ps (),
   2379             (__mmask8) __U);
   2380 }
   2381 
   2382 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2383 _mm256_mask_cvtpd_ps (__m128 __W, __mmask8 __U, __m256d __A) {
   2384   return (__m128) __builtin_ia32_cvtpd2ps256_mask ((__v4df) __A,
   2385                (__v4sf) __W,
   2386                (__mmask8) __U);
   2387 }
   2388 
   2389 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2390 _mm256_maskz_cvtpd_ps (__mmask8 __U, __m256d __A) {
   2391   return (__m128) __builtin_ia32_cvtpd2ps256_mask ((__v4df) __A,
   2392                (__v4sf)
   2393                _mm_setzero_ps (),
   2394                (__mmask8) __U);
   2395 }
   2396 
   2397 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2398 _mm_cvtpd_epu32 (__m128d __A) {
   2399   return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
   2400                  (__v4si)
   2401                  _mm_setzero_si128 (),
   2402                  (__mmask8) -1);
   2403 }
   2404 
   2405 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2406 _mm_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A) {
   2407   return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
   2408                  (__v4si) __W,
   2409                  (__mmask8) __U);
   2410 }
   2411 
   2412 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2413 _mm_maskz_cvtpd_epu32 (__mmask8 __U, __m128d __A) {
   2414   return (__m128i) __builtin_ia32_cvtpd2udq128_mask ((__v2df) __A,
   2415                  (__v4si)
   2416                  _mm_setzero_si128 (),
   2417                  (__mmask8) __U);
   2418 }
   2419 
   2420 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2421 _mm256_cvtpd_epu32 (__m256d __A) {
   2422   return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
   2423                  (__v4si)
   2424                  _mm_setzero_si128 (),
   2425                  (__mmask8) -1);
   2426 }
   2427 
   2428 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2429 _mm256_mask_cvtpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A) {
   2430   return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
   2431                  (__v4si) __W,
   2432                  (__mmask8) __U);
   2433 }
   2434 
   2435 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2436 _mm256_maskz_cvtpd_epu32 (__mmask8 __U, __m256d __A) {
   2437   return (__m128i) __builtin_ia32_cvtpd2udq256_mask ((__v4df) __A,
   2438                  (__v4si)
   2439                  _mm_setzero_si128 (),
   2440                  (__mmask8) __U);
   2441 }
   2442 
   2443 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2444 _mm_mask_cvtps_epi32 (__m128i __W, __mmask8 __U, __m128 __A) {
   2445   return (__m128i) __builtin_ia32_cvtps2dq128_mask ((__v4sf) __A,
   2446                 (__v4si) __W,
   2447                 (__mmask8) __U);
   2448 }
   2449 
   2450 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2451 _mm_maskz_cvtps_epi32 (__mmask8 __U, __m128 __A) {
   2452   return (__m128i) __builtin_ia32_cvtps2dq128_mask ((__v4sf) __A,
   2453                 (__v4si)
   2454                 _mm_setzero_si128 (),
   2455                 (__mmask8) __U);
   2456 }
   2457 
   2458 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2459 _mm256_mask_cvtps_epi32 (__m256i __W, __mmask8 __U, __m256 __A) {
   2460   return (__m256i) __builtin_ia32_cvtps2dq256_mask ((__v8sf) __A,
   2461                 (__v8si) __W,
   2462                 (__mmask8) __U);
   2463 }
   2464 
   2465 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2466 _mm256_maskz_cvtps_epi32 (__mmask8 __U, __m256 __A) {
   2467   return (__m256i) __builtin_ia32_cvtps2dq256_mask ((__v8sf) __A,
   2468                 (__v8si)
   2469                 _mm256_setzero_si256 (),
   2470                 (__mmask8) __U);
   2471 }
   2472 
   2473 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2474 _mm_mask_cvtps_pd (__m128d __W, __mmask8 __U, __m128 __A) {
   2475   return (__m128d) __builtin_ia32_cvtps2pd128_mask ((__v4sf) __A,
   2476                 (__v2df) __W,
   2477                 (__mmask8) __U);
   2478 }
   2479 
   2480 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2481 _mm_maskz_cvtps_pd (__mmask8 __U, __m128 __A) {
   2482   return (__m128d) __builtin_ia32_cvtps2pd128_mask ((__v4sf) __A,
   2483                 (__v2df)
   2484                 _mm_setzero_pd (),
   2485                 (__mmask8) __U);
   2486 }
   2487 
   2488 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2489 _mm256_mask_cvtps_pd (__m256d __W, __mmask8 __U, __m128 __A) {
   2490   return (__m256d) __builtin_ia32_cvtps2pd256_mask ((__v4sf) __A,
   2491                 (__v4df) __W,
   2492                 (__mmask8) __U);
   2493 }
   2494 
   2495 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2496 _mm256_maskz_cvtps_pd (__mmask8 __U, __m128 __A) {
   2497   return (__m256d) __builtin_ia32_cvtps2pd256_mask ((__v4sf) __A,
   2498                 (__v4df)
   2499                 _mm256_setzero_pd (),
   2500                 (__mmask8) __U);
   2501 }
   2502 
   2503 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2504 _mm_cvtps_epu32 (__m128 __A) {
   2505   return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A,
   2506                  (__v4si)
   2507                  _mm_setzero_si128 (),
   2508                  (__mmask8) -1);
   2509 }
   2510 
   2511 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2512 _mm_mask_cvtps_epu32 (__m128i __W, __mmask8 __U, __m128 __A) {
   2513   return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A,
   2514                  (__v4si) __W,
   2515                  (__mmask8) __U);
   2516 }
   2517 
   2518 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2519 _mm_maskz_cvtps_epu32 (__mmask8 __U, __m128 __A) {
   2520   return (__m128i) __builtin_ia32_cvtps2udq128_mask ((__v4sf) __A,
   2521                  (__v4si)
   2522                  _mm_setzero_si128 (),
   2523                  (__mmask8) __U);
   2524 }
   2525 
   2526 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2527 _mm256_cvtps_epu32 (__m256 __A) {
   2528   return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A,
   2529                  (__v8si)
   2530                  _mm256_setzero_si256 (),
   2531                  (__mmask8) -1);
   2532 }
   2533 
   2534 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2535 _mm256_mask_cvtps_epu32 (__m256i __W, __mmask8 __U, __m256 __A) {
   2536   return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A,
   2537                  (__v8si) __W,
   2538                  (__mmask8) __U);
   2539 }
   2540 
   2541 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2542 _mm256_maskz_cvtps_epu32 (__mmask8 __U, __m256 __A) {
   2543   return (__m256i) __builtin_ia32_cvtps2udq256_mask ((__v8sf) __A,
   2544                  (__v8si)
   2545                  _mm256_setzero_si256 (),
   2546                  (__mmask8) __U);
   2547 }
   2548 
   2549 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2550 _mm_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m128d __A) {
   2551   return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A,
   2552                  (__v4si) __W,
   2553                  (__mmask8) __U);
   2554 }
   2555 
   2556 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2557 _mm_maskz_cvttpd_epi32 (__mmask8 __U, __m128d __A) {
   2558   return (__m128i) __builtin_ia32_cvttpd2dq128_mask ((__v2df) __A,
   2559                  (__v4si)
   2560                  _mm_setzero_si128 (),
   2561                  (__mmask8) __U);
   2562 }
   2563 
   2564 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2565 _mm256_mask_cvttpd_epi32 (__m128i __W, __mmask8 __U, __m256d __A) {
   2566   return (__m128i) __builtin_ia32_cvttpd2dq256_mask ((__v4df) __A,
   2567                  (__v4si) __W,
   2568                  (__mmask8) __U);
   2569 }
   2570 
   2571 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2572 _mm256_maskz_cvttpd_epi32 (__mmask8 __U, __m256d __A) {
   2573   return (__m128i) __builtin_ia32_cvttpd2dq256_mask ((__v4df) __A,
   2574                  (__v4si)
   2575                  _mm_setzero_si128 (),
   2576                  (__mmask8) __U);
   2577 }
   2578 
   2579 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2580 _mm_cvttpd_epu32 (__m128d __A) {
   2581   return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
   2582                   (__v4si)
   2583                   _mm_setzero_si128 (),
   2584                   (__mmask8) -1);
   2585 }
   2586 
   2587 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2588 _mm_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m128d __A) {
   2589   return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
   2590                   (__v4si) __W,
   2591                   (__mmask8) __U);
   2592 }
   2593 
   2594 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2595 _mm_maskz_cvttpd_epu32 (__mmask8 __U, __m128d __A) {
   2596   return (__m128i) __builtin_ia32_cvttpd2udq128_mask ((__v2df) __A,
   2597                   (__v4si)
   2598                   _mm_setzero_si128 (),
   2599                   (__mmask8) __U);
   2600 }
   2601 
   2602 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2603 _mm256_cvttpd_epu32 (__m256d __A) {
   2604   return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
   2605                   (__v4si)
   2606                   _mm_setzero_si128 (),
   2607                   (__mmask8) -1);
   2608 }
   2609 
   2610 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2611 _mm256_mask_cvttpd_epu32 (__m128i __W, __mmask8 __U, __m256d __A) {
   2612   return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
   2613                   (__v4si) __W,
   2614                   (__mmask8) __U);
   2615 }
   2616 
   2617 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2618 _mm256_maskz_cvttpd_epu32 (__mmask8 __U, __m256d __A) {
   2619   return (__m128i) __builtin_ia32_cvttpd2udq256_mask ((__v4df) __A,
   2620                   (__v4si)
   2621                   _mm_setzero_si128 (),
   2622                   (__mmask8) __U);
   2623 }
   2624 
   2625 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2626 _mm_mask_cvttps_epi32 (__m128i __W, __mmask8 __U, __m128 __A) {
   2627   return (__m128i) __builtin_ia32_cvttps2dq128_mask ((__v4sf) __A,
   2628                  (__v4si) __W,
   2629                  (__mmask8) __U);
   2630 }
   2631 
   2632 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2633 _mm_maskz_cvttps_epi32 (__mmask8 __U, __m128 __A) {
   2634   return (__m128i) __builtin_ia32_cvttps2dq128_mask ((__v4sf) __A,
   2635                  (__v4si)
   2636                  _mm_setzero_si128 (),
   2637                  (__mmask8) __U);
   2638 }
   2639 
   2640 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2641 _mm256_mask_cvttps_epi32 (__m256i __W, __mmask8 __U, __m256 __A) {
   2642   return (__m256i) __builtin_ia32_cvttps2dq256_mask ((__v8sf) __A,
   2643                  (__v8si) __W,
   2644                  (__mmask8) __U);
   2645 }
   2646 
   2647 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2648 _mm256_maskz_cvttps_epi32 (__mmask8 __U, __m256 __A) {
   2649   return (__m256i) __builtin_ia32_cvttps2dq256_mask ((__v8sf) __A,
   2650                  (__v8si)
   2651                  _mm256_setzero_si256 (),
   2652                  (__mmask8) __U);
   2653 }
   2654 
   2655 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2656 _mm_cvttps_epu32 (__m128 __A) {
   2657   return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
   2658                   (__v4si)
   2659                   _mm_setzero_si128 (),
   2660                   (__mmask8) -1);
   2661 }
   2662 
   2663 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2664 _mm_mask_cvttps_epu32 (__m128i __W, __mmask8 __U, __m128 __A) {
   2665   return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
   2666                   (__v4si) __W,
   2667                   (__mmask8) __U);
   2668 }
   2669 
   2670 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2671 _mm_maskz_cvttps_epu32 (__mmask8 __U, __m128 __A) {
   2672   return (__m128i) __builtin_ia32_cvttps2udq128_mask ((__v4sf) __A,
   2673                   (__v4si)
   2674                   _mm_setzero_si128 (),
   2675                   (__mmask8) __U);
   2676 }
   2677 
   2678 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2679 _mm256_cvttps_epu32 (__m256 __A) {
   2680   return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
   2681                   (__v8si)
   2682                   _mm256_setzero_si256 (),
   2683                   (__mmask8) -1);
   2684 }
   2685 
   2686 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2687 _mm256_mask_cvttps_epu32 (__m256i __W, __mmask8 __U, __m256 __A) {
   2688   return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
   2689                   (__v8si) __W,
   2690                   (__mmask8) __U);
   2691 }
   2692 
   2693 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2694 _mm256_maskz_cvttps_epu32 (__mmask8 __U, __m256 __A) {
   2695   return (__m256i) __builtin_ia32_cvttps2udq256_mask ((__v8sf) __A,
   2696                   (__v8si)
   2697                   _mm256_setzero_si256 (),
   2698                   (__mmask8) __U);
   2699 }
   2700 
   2701 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2702 _mm_cvtepu32_pd (__m128i __A) {
   2703   return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
   2704                  (__v2df)
   2705                  _mm_setzero_pd (),
   2706                  (__mmask8) -1);
   2707 }
   2708 
   2709 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2710 _mm_mask_cvtepu32_pd (__m128d __W, __mmask8 __U, __m128i __A) {
   2711   return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
   2712                  (__v2df) __W,
   2713                  (__mmask8) __U);
   2714 }
   2715 
   2716 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2717 _mm_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A) {
   2718   return (__m128d) __builtin_ia32_cvtudq2pd128_mask ((__v4si) __A,
   2719                  (__v2df)
   2720                  _mm_setzero_pd (),
   2721                  (__mmask8) __U);
   2722 }
   2723 
   2724 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2725 _mm256_cvtepu32_pd (__m128i __A) {
   2726   return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
   2727                  (__v4df)
   2728                  _mm256_setzero_pd (),
   2729                  (__mmask8) -1);
   2730 }
   2731 
   2732 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2733 _mm256_mask_cvtepu32_pd (__m256d __W, __mmask8 __U, __m128i __A) {
   2734   return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
   2735                  (__v4df) __W,
   2736                  (__mmask8) __U);
   2737 }
   2738 
   2739 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2740 _mm256_maskz_cvtepu32_pd (__mmask8 __U, __m128i __A) {
   2741   return (__m256d) __builtin_ia32_cvtudq2pd256_mask ((__v4si) __A,
   2742                  (__v4df)
   2743                  _mm256_setzero_pd (),
   2744                  (__mmask8) __U);
   2745 }
   2746 
   2747 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2748 _mm_cvtepu32_ps (__m128i __A) {
   2749   return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
   2750                 (__v4sf)
   2751                 _mm_setzero_ps (),
   2752                 (__mmask8) -1);
   2753 }
   2754 
   2755 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2756 _mm_mask_cvtepu32_ps (__m128 __W, __mmask8 __U, __m128i __A) {
   2757   return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
   2758                 (__v4sf) __W,
   2759                 (__mmask8) __U);
   2760 }
   2761 
   2762 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2763 _mm_maskz_cvtepu32_ps (__mmask8 __U, __m128i __A) {
   2764   return (__m128) __builtin_ia32_cvtudq2ps128_mask ((__v4si) __A,
   2765                 (__v4sf)
   2766                 _mm_setzero_ps (),
   2767                 (__mmask8) __U);
   2768 }
   2769 
   2770 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2771 _mm256_cvtepu32_ps (__m256i __A) {
   2772   return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
   2773                 (__v8sf)
   2774                 _mm256_setzero_ps (),
   2775                 (__mmask8) -1);
   2776 }
   2777 
   2778 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2779 _mm256_mask_cvtepu32_ps (__m256 __W, __mmask8 __U, __m256i __A) {
   2780   return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
   2781                 (__v8sf) __W,
   2782                 (__mmask8) __U);
   2783 }
   2784 
   2785 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2786 _mm256_maskz_cvtepu32_ps (__mmask8 __U, __m256i __A) {
   2787   return (__m256) __builtin_ia32_cvtudq2ps256_mask ((__v8si) __A,
   2788                 (__v8sf)
   2789                 _mm256_setzero_ps (),
   2790                 (__mmask8) __U);
   2791 }
   2792 
   2793 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2794 _mm_mask_div_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
   2795   return (__m128d) __builtin_ia32_divpd_mask ((__v2df) __A,
   2796                 (__v2df) __B,
   2797                 (__v2df) __W,
   2798                 (__mmask8) __U);
   2799 }
   2800 
   2801 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2802 _mm_maskz_div_pd (__mmask8 __U, __m128d __A, __m128d __B) {
   2803   return (__m128d) __builtin_ia32_divpd_mask ((__v2df) __A,
   2804                 (__v2df) __B,
   2805                 (__v2df)
   2806                 _mm_setzero_pd (),
   2807                 (__mmask8) __U);
   2808 }
   2809 
   2810 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2811 _mm256_mask_div_pd (__m256d __W, __mmask8 __U, __m256d __A,
   2812         __m256d __B) {
   2813   return (__m256d) __builtin_ia32_divpd256_mask ((__v4df) __A,
   2814              (__v4df) __B,
   2815              (__v4df) __W,
   2816              (__mmask8) __U);
   2817 }
   2818 
   2819 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2820 _mm256_maskz_div_pd (__mmask8 __U, __m256d __A, __m256d __B) {
   2821   return (__m256d) __builtin_ia32_divpd256_mask ((__v4df) __A,
   2822              (__v4df) __B,
   2823              (__v4df)
   2824              _mm256_setzero_pd (),
   2825              (__mmask8) __U);
   2826 }
   2827 
   2828 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2829 _mm_mask_div_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
   2830   return (__m128) __builtin_ia32_divps_mask ((__v4sf) __A,
   2831                (__v4sf) __B,
   2832                (__v4sf) __W,
   2833                (__mmask8) __U);
   2834 }
   2835 
   2836 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2837 _mm_maskz_div_ps (__mmask8 __U, __m128 __A, __m128 __B) {
   2838   return (__m128) __builtin_ia32_divps_mask ((__v4sf) __A,
   2839                (__v4sf) __B,
   2840                (__v4sf)
   2841                _mm_setzero_ps (),
   2842                (__mmask8) __U);
   2843 }
   2844 
   2845 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2846 _mm256_mask_div_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
   2847   return (__m256) __builtin_ia32_divps256_mask ((__v8sf) __A,
   2848             (__v8sf) __B,
   2849             (__v8sf) __W,
   2850             (__mmask8) __U);
   2851 }
   2852 
   2853 static __inline__ __m256 __DEFAULT_FN_ATTRS
   2854 _mm256_maskz_div_ps (__mmask8 __U, __m256 __A, __m256 __B) {
   2855   return (__m256) __builtin_ia32_divps256_mask ((__v8sf) __A,
   2856             (__v8sf) __B,
   2857             (__v8sf)
   2858             _mm256_setzero_ps (),
   2859             (__mmask8) __U);
   2860 }
   2861 
   2862 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2863 _mm_mask_expand_pd (__m128d __W, __mmask8 __U, __m128d __A) {
   2864   return (__m128d) __builtin_ia32_expanddf128_mask ((__v2df) __A,
   2865                 (__v2df) __W,
   2866                 (__mmask8) __U);
   2867 }
   2868 
   2869 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2870 _mm_maskz_expand_pd (__mmask8 __U, __m128d __A) {
   2871   return (__m128d) __builtin_ia32_expanddf128_mask ((__v2df) __A,
   2872                  (__v2df)
   2873                  _mm_setzero_pd (),
   2874                  (__mmask8) __U);
   2875 }
   2876 
   2877 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2878 _mm256_mask_expand_pd (__m256d __W, __mmask8 __U, __m256d __A) {
   2879   return (__m256d) __builtin_ia32_expanddf256_mask ((__v4df) __A,
   2880                 (__v4df) __W,
   2881                 (__mmask8) __U);
   2882 }
   2883 
   2884 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2885 _mm256_maskz_expand_pd (__mmask8 __U, __m256d __A) {
   2886   return (__m256d) __builtin_ia32_expanddf256_mask ((__v4df) __A,
   2887                  (__v4df)
   2888                  _mm256_setzero_pd (),
   2889                  (__mmask8) __U);
   2890 }
   2891 
   2892 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2893 _mm_mask_expand_epi64 (__m128i __W, __mmask8 __U, __m128i __A) {
   2894   return (__m128i) __builtin_ia32_expanddi128_mask ((__v2di) __A,
   2895                 (__v2di) __W,
   2896                 (__mmask8) __U);
   2897 }
   2898 
   2899 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2900 _mm_maskz_expand_epi64 (__mmask8 __U, __m128i __A) {
   2901   return (__m128i) __builtin_ia32_expanddi128_mask ((__v2di) __A,
   2902                  (__v2di)
   2903                  _mm_setzero_si128 (),
   2904                  (__mmask8) __U);
   2905 }
   2906 
   2907 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2908 _mm256_mask_expand_epi64 (__m256i __W, __mmask8 __U, __m256i __A) {
   2909   return (__m256i) __builtin_ia32_expanddi256_mask ((__v4di) __A,
   2910                 (__v4di) __W,
   2911                 (__mmask8) __U);
   2912 }
   2913 
   2914 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2915 _mm256_maskz_expand_epi64 (__mmask8 __U, __m256i __A) {
   2916   return (__m256i) __builtin_ia32_expanddi256_mask ((__v4di) __A,
   2917                  (__v4di)
   2918                  _mm256_setzero_si256 (),
   2919                  (__mmask8) __U);
   2920 }
   2921 
   2922 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2923 _mm_mask_expandloadu_pd (__m128d __W, __mmask8 __U, void const *__P) {
   2924   return (__m128d) __builtin_ia32_expandloaddf128_mask ((__v2df *) __P,
   2925               (__v2df) __W,
   2926               (__mmask8)
   2927               __U);
   2928 }
   2929 
   2930 static __inline__ __m128d __DEFAULT_FN_ATTRS
   2931 _mm_maskz_expandloadu_pd (__mmask8 __U, void const *__P) {
   2932   return (__m128d) __builtin_ia32_expandloaddf128_mask ((__v2df *) __P,
   2933                (__v2df)
   2934                _mm_setzero_pd (),
   2935                (__mmask8)
   2936                __U);
   2937 }
   2938 
   2939 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2940 _mm256_mask_expandloadu_pd (__m256d __W, __mmask8 __U, void const *__P) {
   2941   return (__m256d) __builtin_ia32_expandloaddf256_mask ((__v4df *) __P,
   2942               (__v4df) __W,
   2943               (__mmask8)
   2944               __U);
   2945 }
   2946 
   2947 static __inline__ __m256d __DEFAULT_FN_ATTRS
   2948 _mm256_maskz_expandloadu_pd (__mmask8 __U, void const *__P) {
   2949   return (__m256d) __builtin_ia32_expandloaddf256_mask ((__v4df *) __P,
   2950                (__v4df)
   2951                _mm256_setzero_pd (),
   2952                (__mmask8)
   2953                __U);
   2954 }
   2955 
   2956 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2957 _mm_mask_expandloadu_epi64 (__m128i __W, __mmask8 __U, void const *__P) {
   2958   return (__m128i) __builtin_ia32_expandloaddi128_mask ((__v2di *) __P,
   2959               (__v2di) __W,
   2960               (__mmask8)
   2961               __U);
   2962 }
   2963 
   2964 static __inline__ __m128i __DEFAULT_FN_ATTRS
   2965 _mm_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P) {
   2966   return (__m128i) __builtin_ia32_expandloaddi128_mask ((__v2di *) __P,
   2967                (__v2di)
   2968                _mm_setzero_si128 (),
   2969                (__mmask8)
   2970                __U);
   2971 }
   2972 
   2973 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2974 _mm256_mask_expandloadu_epi64 (__m256i __W, __mmask8 __U,
   2975              void const *__P) {
   2976   return (__m256i) __builtin_ia32_expandloaddi256_mask ((__v4di *) __P,
   2977               (__v4di) __W,
   2978               (__mmask8)
   2979               __U);
   2980 }
   2981 
   2982 static __inline__ __m256i __DEFAULT_FN_ATTRS
   2983 _mm256_maskz_expandloadu_epi64 (__mmask8 __U, void const *__P) {
   2984   return (__m256i) __builtin_ia32_expandloaddi256_mask ((__v4di *) __P,
   2985                (__v4di)
   2986                _mm256_setzero_si256 (),
   2987                (__mmask8)
   2988                __U);
   2989 }
   2990 
   2991 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2992 _mm_mask_expandloadu_ps (__m128 __W, __mmask8 __U, void const *__P) {
   2993   return (__m128) __builtin_ia32_expandloadsf128_mask ((__v4sf *) __P,
   2994                    (__v4sf) __W,
   2995                    (__mmask8) __U);
   2996 }
   2997 
   2998 static __inline__ __m128 __DEFAULT_FN_ATTRS
   2999 _mm_maskz_expandloadu_ps (__mmask8 __U, void const *__P) {
   3000   return (__m128) __builtin_ia32_expandloadsf128_mask ((__v4sf *) __P,
   3001               (__v4sf)
   3002               _mm_setzero_ps (),
   3003               (__mmask8)
   3004               __U);
   3005 }
   3006 
   3007 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3008 _mm256_mask_expandloadu_ps (__m256 __W, __mmask8 __U, void const *__P) {
   3009   return (__m256) __builtin_ia32_expandloadsf256_mask ((__v8sf *) __P,
   3010                    (__v8sf) __W,
   3011                    (__mmask8) __U);
   3012 }
   3013 
   3014 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3015 _mm256_maskz_expandloadu_ps (__mmask8 __U, void const *__P) {
   3016   return (__m256) __builtin_ia32_expandloadsf256_mask ((__v8sf *) __P,
   3017               (__v8sf)
   3018               _mm256_setzero_ps (),
   3019               (__mmask8)
   3020               __U);
   3021 }
   3022 
   3023 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3024 _mm_mask_expandloadu_epi32 (__m128i __W, __mmask8 __U, void const *__P) {
   3025   return (__m128i) __builtin_ia32_expandloadsi128_mask ((__v4si *) __P,
   3026               (__v4si) __W,
   3027               (__mmask8)
   3028               __U);
   3029 }
   3030 
   3031 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3032 _mm_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P) {
   3033   return (__m128i) __builtin_ia32_expandloadsi128_mask ((__v4si *) __P,
   3034                (__v4si)
   3035                _mm_setzero_si128 (),
   3036                (__mmask8)     __U);
   3037 }
   3038 
   3039 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3040 _mm256_mask_expandloadu_epi32 (__m256i __W, __mmask8 __U,
   3041              void const *__P) {
   3042   return (__m256i) __builtin_ia32_expandloadsi256_mask ((__v8si *) __P,
   3043               (__v8si) __W,
   3044               (__mmask8)
   3045               __U);
   3046 }
   3047 
   3048 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3049 _mm256_maskz_expandloadu_epi32 (__mmask8 __U, void const *__P) {
   3050   return (__m256i) __builtin_ia32_expandloadsi256_mask ((__v8si *) __P,
   3051                (__v8si)
   3052                _mm256_setzero_si256 (),
   3053                (__mmask8)
   3054                __U);
   3055 }
   3056 
   3057 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3058 _mm_mask_expand_ps (__m128 __W, __mmask8 __U, __m128 __A) {
   3059   return (__m128) __builtin_ia32_expandsf128_mask ((__v4sf) __A,
   3060                (__v4sf) __W,
   3061                (__mmask8) __U);
   3062 }
   3063 
   3064 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3065 _mm_maskz_expand_ps (__mmask8 __U, __m128 __A) {
   3066   return (__m128) __builtin_ia32_expandsf128_mask ((__v4sf) __A,
   3067                 (__v4sf)
   3068                 _mm_setzero_ps (),
   3069                 (__mmask8) __U);
   3070 }
   3071 
   3072 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3073 _mm256_mask_expand_ps (__m256 __W, __mmask8 __U, __m256 __A) {
   3074   return (__m256) __builtin_ia32_expandsf256_mask ((__v8sf) __A,
   3075                (__v8sf) __W,
   3076                (__mmask8) __U);
   3077 }
   3078 
   3079 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3080 _mm256_maskz_expand_ps (__mmask8 __U, __m256 __A) {
   3081   return (__m256) __builtin_ia32_expandsf256_mask ((__v8sf) __A,
   3082                 (__v8sf)
   3083                 _mm256_setzero_ps (),
   3084                 (__mmask8) __U);
   3085 }
   3086 
   3087 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3088 _mm_mask_expand_epi32 (__m128i __W, __mmask8 __U, __m128i __A) {
   3089   return (__m128i) __builtin_ia32_expandsi128_mask ((__v4si) __A,
   3090                 (__v4si) __W,
   3091                 (__mmask8) __U);
   3092 }
   3093 
   3094 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3095 _mm_maskz_expand_epi32 (__mmask8 __U, __m128i __A) {
   3096   return (__m128i) __builtin_ia32_expandsi128_mask ((__v4si) __A,
   3097                  (__v4si)
   3098                  _mm_setzero_si128 (),
   3099                  (__mmask8) __U);
   3100 }
   3101 
   3102 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3103 _mm256_mask_expand_epi32 (__m256i __W, __mmask8 __U, __m256i __A) {
   3104   return (__m256i) __builtin_ia32_expandsi256_mask ((__v8si) __A,
   3105                 (__v8si) __W,
   3106                 (__mmask8) __U);
   3107 }
   3108 
   3109 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3110 _mm256_maskz_expand_epi32 (__mmask8 __U, __m256i __A) {
   3111   return (__m256i) __builtin_ia32_expandsi256_mask ((__v8si) __A,
   3112                  (__v8si)
   3113                  _mm256_setzero_si256 (),
   3114                  (__mmask8) __U);
   3115 }
   3116 
   3117 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3118 _mm_getexp_pd (__m128d __A) {
   3119   return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
   3120                 (__v2df)
   3121                 _mm_setzero_pd (),
   3122                 (__mmask8) -1);
   3123 }
   3124 
   3125 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3126 _mm_mask_getexp_pd (__m128d __W, __mmask8 __U, __m128d __A) {
   3127   return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
   3128                 (__v2df) __W,
   3129                 (__mmask8) __U);
   3130 }
   3131 
   3132 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3133 _mm_maskz_getexp_pd (__mmask8 __U, __m128d __A) {
   3134   return (__m128d) __builtin_ia32_getexppd128_mask ((__v2df) __A,
   3135                 (__v2df)
   3136                 _mm_setzero_pd (),
   3137                 (__mmask8) __U);
   3138 }
   3139 
   3140 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3141 _mm256_getexp_pd (__m256d __A) {
   3142   return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
   3143                 (__v4df)
   3144                 _mm256_setzero_pd (),
   3145                 (__mmask8) -1);
   3146 }
   3147 
   3148 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3149 _mm256_mask_getexp_pd (__m256d __W, __mmask8 __U, __m256d __A) {
   3150   return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
   3151                 (__v4df) __W,
   3152                 (__mmask8) __U);
   3153 }
   3154 
   3155 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3156 _mm256_maskz_getexp_pd (__mmask8 __U, __m256d __A) {
   3157   return (__m256d) __builtin_ia32_getexppd256_mask ((__v4df) __A,
   3158                 (__v4df)
   3159                 _mm256_setzero_pd (),
   3160                 (__mmask8) __U);
   3161 }
   3162 
   3163 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3164 _mm_getexp_ps (__m128 __A) {
   3165   return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
   3166                (__v4sf)
   3167                _mm_setzero_ps (),
   3168                (__mmask8) -1);
   3169 }
   3170 
   3171 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3172 _mm_mask_getexp_ps (__m128 __W, __mmask8 __U, __m128 __A) {
   3173   return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
   3174                (__v4sf) __W,
   3175                (__mmask8) __U);
   3176 }
   3177 
   3178 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3179 _mm_maskz_getexp_ps (__mmask8 __U, __m128 __A) {
   3180   return (__m128) __builtin_ia32_getexpps128_mask ((__v4sf) __A,
   3181                (__v4sf)
   3182                _mm_setzero_ps (),
   3183                (__mmask8) __U);
   3184 }
   3185 
   3186 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3187 _mm256_getexp_ps (__m256 __A) {
   3188   return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
   3189                (__v8sf)
   3190                _mm256_setzero_ps (),
   3191                (__mmask8) -1);
   3192 }
   3193 
   3194 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3195 _mm256_mask_getexp_ps (__m256 __W, __mmask8 __U, __m256 __A) {
   3196   return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
   3197                (__v8sf) __W,
   3198                (__mmask8) __U);
   3199 }
   3200 
   3201 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3202 _mm256_maskz_getexp_ps (__mmask8 __U, __m256 __A) {
   3203   return (__m256) __builtin_ia32_getexpps256_mask ((__v8sf) __A,
   3204                (__v8sf)
   3205                _mm256_setzero_ps (),
   3206                (__mmask8) __U);
   3207 }
   3208 
   3209 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3210 _mm_mask_max_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
   3211   return (__m128d) __builtin_ia32_maxpd_mask ((__v2df) __A,
   3212                 (__v2df) __B,
   3213                 (__v2df) __W,
   3214                 (__mmask8) __U);
   3215 }
   3216 
   3217 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3218 _mm_maskz_max_pd (__mmask8 __U, __m128d __A, __m128d __B) {
   3219   return (__m128d) __builtin_ia32_maxpd_mask ((__v2df) __A,
   3220                 (__v2df) __B,
   3221                 (__v2df)
   3222                 _mm_setzero_pd (),
   3223                 (__mmask8) __U);
   3224 }
   3225 
   3226 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3227 _mm256_mask_max_pd (__m256d __W, __mmask8 __U, __m256d __A,
   3228         __m256d __B) {
   3229   return (__m256d) __builtin_ia32_maxpd256_mask ((__v4df) __A,
   3230              (__v4df) __B,
   3231              (__v4df) __W,
   3232              (__mmask8) __U);
   3233 }
   3234 
   3235 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3236 _mm256_maskz_max_pd (__mmask8 __U, __m256d __A, __m256d __B) {
   3237   return (__m256d) __builtin_ia32_maxpd256_mask ((__v4df) __A,
   3238              (__v4df) __B,
   3239              (__v4df)
   3240              _mm256_setzero_pd (),
   3241              (__mmask8) __U);
   3242 }
   3243 
   3244 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3245 _mm_mask_max_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
   3246   return (__m128) __builtin_ia32_maxps_mask ((__v4sf) __A,
   3247                (__v4sf) __B,
   3248                (__v4sf) __W,
   3249                (__mmask8) __U);
   3250 }
   3251 
   3252 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3253 _mm_maskz_max_ps (__mmask8 __U, __m128 __A, __m128 __B) {
   3254   return (__m128) __builtin_ia32_maxps_mask ((__v4sf) __A,
   3255                (__v4sf) __B,
   3256                (__v4sf)
   3257                _mm_setzero_ps (),
   3258                (__mmask8) __U);
   3259 }
   3260 
   3261 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3262 _mm256_mask_max_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
   3263   return (__m256) __builtin_ia32_maxps256_mask ((__v8sf) __A,
   3264             (__v8sf) __B,
   3265             (__v8sf) __W,
   3266             (__mmask8) __U);
   3267 }
   3268 
   3269 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3270 _mm256_maskz_max_ps (__mmask8 __U, __m256 __A, __m256 __B) {
   3271   return (__m256) __builtin_ia32_maxps256_mask ((__v8sf) __A,
   3272             (__v8sf) __B,
   3273             (__v8sf)
   3274             _mm256_setzero_ps (),
   3275             (__mmask8) __U);
   3276 }
   3277 
   3278 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3279 _mm_mask_min_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
   3280   return (__m128d) __builtin_ia32_minpd_mask ((__v2df) __A,
   3281                 (__v2df) __B,
   3282                 (__v2df) __W,
   3283                 (__mmask8) __U);
   3284 }
   3285 
   3286 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3287 _mm_maskz_min_pd (__mmask8 __U, __m128d __A, __m128d __B) {
   3288   return (__m128d) __builtin_ia32_minpd_mask ((__v2df) __A,
   3289                 (__v2df) __B,
   3290                 (__v2df)
   3291                 _mm_setzero_pd (),
   3292                 (__mmask8) __U);
   3293 }
   3294 
   3295 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3296 _mm256_mask_min_pd (__m256d __W, __mmask8 __U, __m256d __A,
   3297         __m256d __B) {
   3298   return (__m256d) __builtin_ia32_minpd256_mask ((__v4df) __A,
   3299              (__v4df) __B,
   3300              (__v4df) __W,
   3301              (__mmask8) __U);
   3302 }
   3303 
   3304 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3305 _mm256_maskz_min_pd (__mmask8 __U, __m256d __A, __m256d __B) {
   3306   return (__m256d) __builtin_ia32_minpd256_mask ((__v4df) __A,
   3307              (__v4df) __B,
   3308              (__v4df)
   3309              _mm256_setzero_pd (),
   3310              (__mmask8) __U);
   3311 }
   3312 
   3313 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3314 _mm_mask_min_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
   3315   return (__m128) __builtin_ia32_minps_mask ((__v4sf) __A,
   3316                (__v4sf) __B,
   3317                (__v4sf) __W,
   3318                (__mmask8) __U);
   3319 }
   3320 
   3321 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3322 _mm_maskz_min_ps (__mmask8 __U, __m128 __A, __m128 __B) {
   3323   return (__m128) __builtin_ia32_minps_mask ((__v4sf) __A,
   3324                (__v4sf) __B,
   3325                (__v4sf)
   3326                _mm_setzero_ps (),
   3327                (__mmask8) __U);
   3328 }
   3329 
   3330 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3331 _mm256_mask_min_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
   3332   return (__m256) __builtin_ia32_minps256_mask ((__v8sf) __A,
   3333             (__v8sf) __B,
   3334             (__v8sf) __W,
   3335             (__mmask8) __U);
   3336 }
   3337 
   3338 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3339 _mm256_maskz_min_ps (__mmask8 __U, __m256 __A, __m256 __B) {
   3340   return (__m256) __builtin_ia32_minps256_mask ((__v8sf) __A,
   3341             (__v8sf) __B,
   3342             (__v8sf)
   3343             _mm256_setzero_ps (),
   3344             (__mmask8) __U);
   3345 }
   3346 
   3347 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3348 _mm_mask_mul_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
   3349   return (__m128d) __builtin_ia32_mulpd_mask ((__v2df) __A,
   3350                 (__v2df) __B,
   3351                 (__v2df) __W,
   3352                 (__mmask8) __U);
   3353 }
   3354 
   3355 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3356 _mm_maskz_mul_pd (__mmask8 __U, __m128d __A, __m128d __B) {
   3357   return (__m128d) __builtin_ia32_mulpd_mask ((__v2df) __A,
   3358                 (__v2df) __B,
   3359                 (__v2df)
   3360                 _mm_setzero_pd (),
   3361                 (__mmask8) __U);
   3362 }
   3363 
   3364 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3365 _mm256_mask_mul_pd (__m256d __W, __mmask8 __U, __m256d __A,
   3366         __m256d __B) {
   3367   return (__m256d) __builtin_ia32_mulpd256_mask ((__v4df) __A,
   3368              (__v4df) __B,
   3369              (__v4df) __W,
   3370              (__mmask8) __U);
   3371 }
   3372 
   3373 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3374 _mm256_maskz_mul_pd (__mmask8 __U, __m256d __A, __m256d __B) {
   3375   return (__m256d) __builtin_ia32_mulpd256_mask ((__v4df) __A,
   3376              (__v4df) __B,
   3377              (__v4df)
   3378              _mm256_setzero_pd (),
   3379              (__mmask8) __U);
   3380 }
   3381 
   3382 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3383 _mm_mask_mul_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
   3384   return (__m128) __builtin_ia32_mulps_mask ((__v4sf) __A,
   3385                (__v4sf) __B,
   3386                (__v4sf) __W,
   3387                (__mmask8) __U);
   3388 }
   3389 
   3390 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3391 _mm_maskz_mul_ps (__mmask8 __U, __m128 __A, __m128 __B) {
   3392   return (__m128) __builtin_ia32_mulps_mask ((__v4sf) __A,
   3393                (__v4sf) __B,
   3394                (__v4sf)
   3395                _mm_setzero_ps (),
   3396                (__mmask8) __U);
   3397 }
   3398 
   3399 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3400 _mm256_mask_mul_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B) {
   3401   return (__m256) __builtin_ia32_mulps256_mask ((__v8sf) __A,
   3402             (__v8sf) __B,
   3403             (__v8sf) __W,
   3404             (__mmask8) __U);
   3405 }
   3406 
   3407 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3408 _mm256_maskz_mul_ps (__mmask8 __U, __m256 __A, __m256 __B) {
   3409   return (__m256) __builtin_ia32_mulps256_mask ((__v8sf) __A,
   3410             (__v8sf) __B,
   3411             (__v8sf)
   3412             _mm256_setzero_ps (),
   3413             (__mmask8) __U);
   3414 }
   3415 
   3416 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3417 _mm_mask_abs_epi32 (__m128i __W, __mmask8 __U, __m128i __A) {
   3418   return (__m128i) __builtin_ia32_pabsd128_mask ((__v4si) __A,
   3419              (__v4si) __W,
   3420              (__mmask8) __U);
   3421 }
   3422 
   3423 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3424 _mm_maskz_abs_epi32 (__mmask8 __U, __m128i __A) {
   3425   return (__m128i) __builtin_ia32_pabsd128_mask ((__v4si) __A,
   3426              (__v4si)
   3427              _mm_setzero_si128 (),
   3428              (__mmask8) __U);
   3429 }
   3430 
   3431 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3432 _mm256_mask_abs_epi32 (__m256i __W, __mmask8 __U, __m256i __A) {
   3433   return (__m256i) __builtin_ia32_pabsd256_mask ((__v8si) __A,
   3434              (__v8si) __W,
   3435              (__mmask8) __U);
   3436 }
   3437 
   3438 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3439 _mm256_maskz_abs_epi32 (__mmask8 __U, __m256i __A) {
   3440   return (__m256i) __builtin_ia32_pabsd256_mask ((__v8si) __A,
   3441              (__v8si)
   3442              _mm256_setzero_si256 (),
   3443              (__mmask8) __U);
   3444 }
   3445 
   3446 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3447 _mm_abs_epi64 (__m128i __A) {
   3448   return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
   3449              (__v2di)
   3450              _mm_setzero_si128 (),
   3451              (__mmask8) -1);
   3452 }
   3453 
   3454 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3455 _mm_mask_abs_epi64 (__m128i __W, __mmask8 __U, __m128i __A) {
   3456   return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
   3457              (__v2di) __W,
   3458              (__mmask8) __U);
   3459 }
   3460 
   3461 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3462 _mm_maskz_abs_epi64 (__mmask8 __U, __m128i __A) {
   3463   return (__m128i) __builtin_ia32_pabsq128_mask ((__v2di) __A,
   3464              (__v2di)
   3465              _mm_setzero_si128 (),
   3466              (__mmask8) __U);
   3467 }
   3468 
   3469 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3470 _mm256_abs_epi64 (__m256i __A) {
   3471   return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
   3472              (__v4di)
   3473              _mm256_setzero_si256 (),
   3474              (__mmask8) -1);
   3475 }
   3476 
   3477 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3478 _mm256_mask_abs_epi64 (__m256i __W, __mmask8 __U, __m256i __A) {
   3479   return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
   3480              (__v4di) __W,
   3481              (__mmask8) __U);
   3482 }
   3483 
   3484 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3485 _mm256_maskz_abs_epi64 (__mmask8 __U, __m256i __A) {
   3486   return (__m256i) __builtin_ia32_pabsq256_mask ((__v4di) __A,
   3487              (__v4di)
   3488              _mm256_setzero_si256 (),
   3489              (__mmask8) __U);
   3490 }
   3491 
   3492 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3493 _mm_maskz_max_epi32 (__mmask8 __M, __m128i __A, __m128i __B) {
   3494   return (__m128i) __builtin_ia32_pmaxsd128_mask ((__v4si) __A,
   3495               (__v4si) __B,
   3496               (__v4si)
   3497               _mm_setzero_si128 (),
   3498               __M);
   3499 }
   3500 
   3501 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3502 _mm_mask_max_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
   3503         __m128i __B) {
   3504   return (__m128i) __builtin_ia32_pmaxsd128_mask ((__v4si) __A,
   3505               (__v4si) __B,
   3506               (__v4si) __W, __M);
   3507 }
   3508 
   3509 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3510 _mm256_maskz_max_epi32 (__mmask8 __M, __m256i __A, __m256i __B) {
   3511   return (__m256i) __builtin_ia32_pmaxsd256_mask ((__v8si) __A,
   3512               (__v8si) __B,
   3513               (__v8si)
   3514               _mm256_setzero_si256 (),
   3515               __M);
   3516 }
   3517 
   3518 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3519 _mm256_mask_max_epi32 (__m256i __W, __mmask8 __M, __m256i __A,
   3520            __m256i __B) {
   3521   return (__m256i) __builtin_ia32_pmaxsd256_mask ((__v8si) __A,
   3522               (__v8si) __B,
   3523               (__v8si) __W, __M);
   3524 }
   3525 
   3526 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3527 _mm_maskz_max_epi64 (__mmask8 __M, __m128i __A, __m128i __B) {
   3528   return (__m128i) __builtin_ia32_pmaxsq128_mask ((__v2di) __A,
   3529               (__v2di) __B,
   3530               (__v2di)
   3531               _mm_setzero_si128 (),
   3532               __M);
   3533 }
   3534 
   3535 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3536 _mm_mask_max_epi64 (__m128i __W, __mmask8 __M, __m128i __A,
   3537         __m128i __B) {
   3538   return (__m128i) __builtin_ia32_pmaxsq128_mask ((__v2di) __A,
   3539               (__v2di) __B,
   3540               (__v2di) __W, __M);
   3541 }
   3542 
   3543 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3544 _mm_max_epi64 (__m128i __A, __m128i __B) {
   3545   return (__m128i) __builtin_ia32_pmaxsq128_mask ((__v2di) __A,
   3546               (__v2di) __B,
   3547               (__v2di)
   3548               _mm_setzero_si128 (),
   3549               (__mmask8) -1);
   3550 }
   3551 
   3552 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3553 _mm256_maskz_max_epi64 (__mmask8 __M, __m256i __A, __m256i __B) {
   3554   return (__m256i) __builtin_ia32_pmaxsq256_mask ((__v4di) __A,
   3555               (__v4di) __B,
   3556               (__v4di)
   3557               _mm256_setzero_si256 (),
   3558               __M);
   3559 }
   3560 
   3561 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3562 _mm256_mask_max_epi64 (__m256i __W, __mmask8 __M, __m256i __A,
   3563            __m256i __B) {
   3564   return (__m256i) __builtin_ia32_pmaxsq256_mask ((__v4di) __A,
   3565               (__v4di) __B,
   3566               (__v4di) __W, __M);
   3567 }
   3568 
   3569 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3570 _mm256_max_epi64 (__m256i __A, __m256i __B) {
   3571   return (__m256i) __builtin_ia32_pmaxsq256_mask ((__v4di) __A,
   3572               (__v4di) __B,
   3573               (__v4di)
   3574               _mm256_setzero_si256 (),
   3575               (__mmask8) -1);
   3576 }
   3577 
   3578 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3579 _mm_maskz_max_epu32 (__mmask8 __M, __m128i __A, __m128i __B) {
   3580   return (__m128i) __builtin_ia32_pmaxud128_mask ((__v4si) __A,
   3581               (__v4si) __B,
   3582               (__v4si)
   3583               _mm_setzero_si128 (),
   3584               __M);
   3585 }
   3586 
   3587 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3588 _mm_mask_max_epu32 (__m128i __W, __mmask8 __M, __m128i __A,
   3589         __m128i __B) {
   3590   return (__m128i) __builtin_ia32_pmaxud128_mask ((__v4si) __A,
   3591               (__v4si) __B,
   3592               (__v4si) __W, __M);
   3593 }
   3594 
   3595 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3596 _mm256_maskz_max_epu32 (__mmask8 __M, __m256i __A, __m256i __B) {
   3597   return (__m256i) __builtin_ia32_pmaxud256_mask ((__v8si) __A,
   3598               (__v8si) __B,
   3599               (__v8si)
   3600               _mm256_setzero_si256 (),
   3601               __M);
   3602 }
   3603 
   3604 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3605 _mm256_mask_max_epu32 (__m256i __W, __mmask8 __M, __m256i __A,
   3606            __m256i __B) {
   3607   return (__m256i) __builtin_ia32_pmaxud256_mask ((__v8si) __A,
   3608               (__v8si) __B,
   3609               (__v8si) __W, __M);
   3610 }
   3611 
   3612 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3613 _mm_maskz_max_epu64 (__mmask8 __M, __m128i __A, __m128i __B) {
   3614   return (__m128i) __builtin_ia32_pmaxuq128_mask ((__v2di) __A,
   3615               (__v2di) __B,
   3616               (__v2di)
   3617               _mm_setzero_si128 (),
   3618               __M);
   3619 }
   3620 
   3621 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3622 _mm_max_epu64 (__m128i __A, __m128i __B) {
   3623   return (__m128i) __builtin_ia32_pmaxuq128_mask ((__v2di) __A,
   3624               (__v2di) __B,
   3625               (__v2di)
   3626               _mm_setzero_si128 (),
   3627               (__mmask8) -1);
   3628 }
   3629 
   3630 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3631 _mm_mask_max_epu64 (__m128i __W, __mmask8 __M, __m128i __A,
   3632         __m128i __B) {
   3633   return (__m128i) __builtin_ia32_pmaxuq128_mask ((__v2di) __A,
   3634               (__v2di) __B,
   3635               (__v2di) __W, __M);
   3636 }
   3637 
   3638 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3639 _mm256_maskz_max_epu64 (__mmask8 __M, __m256i __A, __m256i __B) {
   3640   return (__m256i) __builtin_ia32_pmaxuq256_mask ((__v4di) __A,
   3641               (__v4di) __B,
   3642               (__v4di)
   3643               _mm256_setzero_si256 (),
   3644               __M);
   3645 }
   3646 
   3647 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3648 _mm256_max_epu64 (__m256i __A, __m256i __B) {
   3649   return (__m256i) __builtin_ia32_pmaxuq256_mask ((__v4di) __A,
   3650               (__v4di) __B,
   3651               (__v4di)
   3652               _mm256_setzero_si256 (),
   3653               (__mmask8) -1);
   3654 }
   3655 
   3656 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3657 _mm256_mask_max_epu64 (__m256i __W, __mmask8 __M, __m256i __A,
   3658            __m256i __B) {
   3659   return (__m256i) __builtin_ia32_pmaxuq256_mask ((__v4di) __A,
   3660               (__v4di) __B,
   3661               (__v4di) __W, __M);
   3662 }
   3663 
   3664 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3665 _mm_maskz_min_epi32 (__mmask8 __M, __m128i __A, __m128i __B) {
   3666   return (__m128i) __builtin_ia32_pminsd128_mask ((__v4si) __A,
   3667               (__v4si) __B,
   3668               (__v4si)
   3669               _mm_setzero_si128 (),
   3670               __M);
   3671 }
   3672 
   3673 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3674 _mm_mask_min_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
   3675         __m128i __B) {
   3676   return (__m128i) __builtin_ia32_pminsd128_mask ((__v4si) __A,
   3677               (__v4si) __B,
   3678               (__v4si) __W, __M);
   3679 }
   3680 
   3681 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3682 _mm256_maskz_min_epi32 (__mmask8 __M, __m256i __A, __m256i __B) {
   3683   return (__m256i) __builtin_ia32_pminsd256_mask ((__v8si) __A,
   3684               (__v8si) __B,
   3685               (__v8si)
   3686               _mm256_setzero_si256 (),
   3687               __M);
   3688 }
   3689 
   3690 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3691 _mm256_mask_min_epi32 (__m256i __W, __mmask8 __M, __m256i __A,
   3692            __m256i __B) {
   3693   return (__m256i) __builtin_ia32_pminsd256_mask ((__v8si) __A,
   3694               (__v8si) __B,
   3695               (__v8si) __W, __M);
   3696 }
   3697 
   3698 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3699 _mm_min_epi64 (__m128i __A, __m128i __B) {
   3700   return (__m128i) __builtin_ia32_pminsq128_mask ((__v2di) __A,
   3701               (__v2di) __B,
   3702               (__v2di)
   3703               _mm_setzero_si128 (),
   3704               (__mmask8) -1);
   3705 }
   3706 
   3707 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3708 _mm_mask_min_epi64 (__m128i __W, __mmask8 __M, __m128i __A,
   3709         __m128i __B) {
   3710   return (__m128i) __builtin_ia32_pminsq128_mask ((__v2di) __A,
   3711               (__v2di) __B,
   3712               (__v2di) __W, __M);
   3713 }
   3714 
   3715 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3716 _mm_maskz_min_epi64 (__mmask8 __M, __m128i __A, __m128i __B) {
   3717   return (__m128i) __builtin_ia32_pminsq128_mask ((__v2di) __A,
   3718               (__v2di) __B,
   3719               (__v2di)
   3720               _mm_setzero_si128 (),
   3721               __M);
   3722 }
   3723 
   3724 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3725 _mm256_min_epi64 (__m256i __A, __m256i __B) {
   3726   return (__m256i) __builtin_ia32_pminsq256_mask ((__v4di) __A,
   3727               (__v4di) __B,
   3728               (__v4di)
   3729               _mm256_setzero_si256 (),
   3730               (__mmask8) -1);
   3731 }
   3732 
   3733 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3734 _mm256_mask_min_epi64 (__m256i __W, __mmask8 __M, __m256i __A,
   3735            __m256i __B) {
   3736   return (__m256i) __builtin_ia32_pminsq256_mask ((__v4di) __A,
   3737               (__v4di) __B,
   3738               (__v4di) __W, __M);
   3739 }
   3740 
   3741 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3742 _mm256_maskz_min_epi64 (__mmask8 __M, __m256i __A, __m256i __B) {
   3743   return (__m256i) __builtin_ia32_pminsq256_mask ((__v4di) __A,
   3744               (__v4di) __B,
   3745               (__v4di)
   3746               _mm256_setzero_si256 (),
   3747               __M);
   3748 }
   3749 
   3750 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3751 _mm_maskz_min_epu32 (__mmask8 __M, __m128i __A, __m128i __B) {
   3752   return (__m128i) __builtin_ia32_pminud128_mask ((__v4si) __A,
   3753               (__v4si) __B,
   3754               (__v4si)
   3755               _mm_setzero_si128 (),
   3756               __M);
   3757 }
   3758 
   3759 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3760 _mm_mask_min_epu32 (__m128i __W, __mmask8 __M, __m128i __A,
   3761         __m128i __B) {
   3762   return (__m128i) __builtin_ia32_pminud128_mask ((__v4si) __A,
   3763               (__v4si) __B,
   3764               (__v4si) __W, __M);
   3765 }
   3766 
   3767 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3768 _mm256_maskz_min_epu32 (__mmask8 __M, __m256i __A, __m256i __B) {
   3769   return (__m256i) __builtin_ia32_pminud256_mask ((__v8si) __A,
   3770               (__v8si) __B,
   3771               (__v8si)
   3772               _mm256_setzero_si256 (),
   3773               __M);
   3774 }
   3775 
   3776 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3777 _mm256_mask_min_epu32 (__m256i __W, __mmask8 __M, __m256i __A,
   3778            __m256i __B) {
   3779   return (__m256i) __builtin_ia32_pminud256_mask ((__v8si) __A,
   3780               (__v8si) __B,
   3781               (__v8si) __W, __M);
   3782 }
   3783 
   3784 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3785 _mm_min_epu64 (__m128i __A, __m128i __B) {
   3786   return (__m128i) __builtin_ia32_pminuq128_mask ((__v2di) __A,
   3787               (__v2di) __B,
   3788               (__v2di)
   3789               _mm_setzero_si128 (),
   3790               (__mmask8) -1);
   3791 }
   3792 
   3793 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3794 _mm_mask_min_epu64 (__m128i __W, __mmask8 __M, __m128i __A,
   3795         __m128i __B) {
   3796   return (__m128i) __builtin_ia32_pminuq128_mask ((__v2di) __A,
   3797               (__v2di) __B,
   3798               (__v2di) __W, __M);
   3799 }
   3800 
   3801 static __inline__ __m128i __DEFAULT_FN_ATTRS
   3802 _mm_maskz_min_epu64 (__mmask8 __M, __m128i __A, __m128i __B) {
   3803   return (__m128i) __builtin_ia32_pminuq128_mask ((__v2di) __A,
   3804               (__v2di) __B,
   3805               (__v2di)
   3806               _mm_setzero_si128 (),
   3807               __M);
   3808 }
   3809 
   3810 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3811 _mm256_min_epu64 (__m256i __A, __m256i __B) {
   3812   return (__m256i) __builtin_ia32_pminuq256_mask ((__v4di) __A,
   3813               (__v4di) __B,
   3814               (__v4di)
   3815               _mm256_setzero_si256 (),
   3816               (__mmask8) -1);
   3817 }
   3818 
   3819 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3820 _mm256_mask_min_epu64 (__m256i __W, __mmask8 __M, __m256i __A,
   3821            __m256i __B) {
   3822   return (__m256i) __builtin_ia32_pminuq256_mask ((__v4di) __A,
   3823               (__v4di) __B,
   3824               (__v4di) __W, __M);
   3825 }
   3826 
   3827 static __inline__ __m256i __DEFAULT_FN_ATTRS
   3828 _mm256_maskz_min_epu64 (__mmask8 __M, __m256i __A, __m256i __B) {
   3829   return (__m256i) __builtin_ia32_pminuq256_mask ((__v4di) __A,
   3830               (__v4di) __B,
   3831               (__v4di)
   3832               _mm256_setzero_si256 (),
   3833               __M);
   3834 }
   3835 
   3836 #define _mm_roundscale_pd(__A, __imm) __extension__ ({ \
   3837   (__m128d) __builtin_ia32_rndscalepd_128_mask ((__v2df) __A, \
   3838                    __imm, (__v2df) _mm_setzero_pd (), (__mmask8) -1); })
   3839 
   3840 
   3841 #define _mm_mask_roundscale_pd(__W, __U, __A, __imm) __extension__ ({ \
   3842   (__m128d) __builtin_ia32_rndscalepd_128_mask ((__v2df) __A, __imm, \
   3843                    (__v2df) __W, (__mmask8) __U); })
   3844 
   3845 
   3846 #define _mm_maskz_roundscale_pd(__U, __A, __imm) __extension__ ({ \
   3847   (__m128d) __builtin_ia32_rndscalepd_128_mask ((__v2df) __A, __imm, \
   3848                    (__v2df) _mm_setzero_pd (), (__mmask8) __U); })
   3849 
   3850 
   3851 #define _mm256_roundscale_pd(__A, __imm) __extension__ ({ \
   3852   (__m256d) __builtin_ia32_rndscalepd_256_mask ((__v4df) __A, __imm, \
   3853                    (__v4df) _mm256_setzero_pd (), (__mmask8) -1); })
   3854 
   3855 
   3856 #define _mm256_mask_roundscale_pd(__W, __U, __A, __imm) __extension__ ({ \
   3857   (__m256d) __builtin_ia32_rndscalepd_256_mask ((__v4df) __A, __imm, \
   3858                    (__v4df) __W, (__mmask8) __U); })
   3859 
   3860 
   3861 #define _mm256_maskz_roundscale_pd(__U, __A, __imm)  __extension__ ({ \
   3862   (__m256d) __builtin_ia32_rndscalepd_256_mask ((__v4df) __A, __imm, \
   3863                    (__v4df) _mm256_setzero_pd(), (__mmask8) __U); })
   3864 
   3865 #define _mm_roundscale_ps(__A, __imm)  __extension__ ({ \
   3866   (__m128) __builtin_ia32_rndscaleps_128_mask ((__v4sf) __A, __imm, \
   3867                   (__v4sf) _mm_setzero_ps(), (__mmask8) -1); })
   3868 
   3869 
   3870 #define _mm_mask_roundscale_ps(__W, __U, __A, __imm)  __extension__ ({ \
   3871   (__m128) __builtin_ia32_rndscaleps_128_mask ((__v4sf) __A, __imm, \
   3872                   (__v4sf) __W, (__mmask8) __U); })
   3873 
   3874 
   3875 #define _mm_maskz_roundscale_ps(__U, __A, __imm)  __extension__ ({ \
   3876   (__m128) __builtin_ia32_rndscaleps_128_mask ((__v4sf) __A, __imm, \
   3877                   (__v4sf) _mm_setzero_ps(), (__mmask8) __U); })
   3878 
   3879 #define _mm256_roundscale_ps(__A, __imm)  __extension__ ({ \
   3880   (__m256) __builtin_ia32_rndscaleps_256_mask ((__v8sf) __A,__imm, \
   3881                   (__v8sf) _mm256_setzero_ps(), (__mmask8) -1); })
   3882 
   3883 #define _mm256_mask_roundscale_ps(__W, __U, __A,__imm)  __extension__ ({ \
   3884   (__m256) __builtin_ia32_rndscaleps_256_mask ((__v8sf) __A, __imm, \
   3885                   (__v8sf) __W, (__mmask8) __U); })
   3886 
   3887 
   3888 #define _mm256_maskz_roundscale_ps(__U, __A, __imm)  __extension__ ({ \
   3889   (__m256) __builtin_ia32_rndscaleps_256_mask ((__v8sf) __A, __imm, \
   3890                   (__v8sf) _mm256_setzero_ps(), (__mmask8) __U); })
   3891 
   3892 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3893 _mm_scalef_pd (__m128d __A, __m128d __B) {
   3894   return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
   3895                 (__v2df) __B,
   3896                 (__v2df)
   3897                 _mm_setzero_pd (),
   3898                 (__mmask8) -1);
   3899 }
   3900 
   3901 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3902 _mm_mask_scalef_pd (__m128d __W, __mmask8 __U, __m128d __A,
   3903         __m128d __B) {
   3904   return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
   3905                 (__v2df) __B,
   3906                 (__v2df) __W,
   3907                 (__mmask8) __U);
   3908 }
   3909 
   3910 static __inline__ __m128d __DEFAULT_FN_ATTRS
   3911 _mm_maskz_scalef_pd (__mmask8 __U, __m128d __A, __m128d __B) {
   3912   return (__m128d) __builtin_ia32_scalefpd128_mask ((__v2df) __A,
   3913                 (__v2df) __B,
   3914                 (__v2df)
   3915                 _mm_setzero_pd (),
   3916                 (__mmask8) __U);
   3917 }
   3918 
   3919 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3920 _mm256_scalef_pd (__m256d __A, __m256d __B) {
   3921   return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
   3922                 (__v4df) __B,
   3923                 (__v4df)
   3924                 _mm256_setzero_pd (),
   3925                 (__mmask8) -1);
   3926 }
   3927 
   3928 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3929 _mm256_mask_scalef_pd (__m256d __W, __mmask8 __U, __m256d __A,
   3930            __m256d __B) {
   3931   return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
   3932                 (__v4df) __B,
   3933                 (__v4df) __W,
   3934                 (__mmask8) __U);
   3935 }
   3936 
   3937 static __inline__ __m256d __DEFAULT_FN_ATTRS
   3938 _mm256_maskz_scalef_pd (__mmask8 __U, __m256d __A, __m256d __B) {
   3939   return (__m256d) __builtin_ia32_scalefpd256_mask ((__v4df) __A,
   3940                 (__v4df) __B,
   3941                 (__v4df)
   3942                 _mm256_setzero_pd (),
   3943                 (__mmask8) __U);
   3944 }
   3945 
   3946 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3947 _mm_scalef_ps (__m128 __A, __m128 __B) {
   3948   return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
   3949                (__v4sf) __B,
   3950                (__v4sf)
   3951                _mm_setzero_ps (),
   3952                (__mmask8) -1);
   3953 }
   3954 
   3955 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3956 _mm_mask_scalef_ps (__m128 __W, __mmask8 __U, __m128 __A, __m128 __B) {
   3957   return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
   3958                (__v4sf) __B,
   3959                (__v4sf) __W,
   3960                (__mmask8) __U);
   3961 }
   3962 
   3963 static __inline__ __m128 __DEFAULT_FN_ATTRS
   3964 _mm_maskz_scalef_ps (__mmask8 __U, __m128 __A, __m128 __B) {
   3965   return (__m128) __builtin_ia32_scalefps128_mask ((__v4sf) __A,
   3966                (__v4sf) __B,
   3967                (__v4sf)
   3968                _mm_setzero_ps (),
   3969                (__mmask8) __U);
   3970 }
   3971 
   3972 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3973 _mm256_scalef_ps (__m256 __A, __m256 __B) {
   3974   return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
   3975                (__v8sf) __B,
   3976                (__v8sf)
   3977                _mm256_setzero_ps (),
   3978                (__mmask8) -1);
   3979 }
   3980 
   3981 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3982 _mm256_mask_scalef_ps (__m256 __W, __mmask8 __U, __m256 __A,
   3983            __m256 __B) {
   3984   return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
   3985                (__v8sf) __B,
   3986                (__v8sf) __W,
   3987                (__mmask8) __U);
   3988 }
   3989 
   3990 static __inline__ __m256 __DEFAULT_FN_ATTRS
   3991 _mm256_maskz_scalef_ps (__mmask8 __U, __m256 __A, __m256 __B) {
   3992   return (__m256) __builtin_ia32_scalefps256_mask ((__v8sf) __A,
   3993                (__v8sf) __B,
   3994                (__v8sf)
   3995                _mm256_setzero_ps (),
   3996                (__mmask8) __U);
   3997 }
   3998 
   3999 #define _mm_i64scatter_pd(__addr,__index, __v1, __scale) __extension__ ({ \
   4000   __builtin_ia32_scatterdiv2df(__addr, (__mmask8) 0xFF, (__v2di) __index, \
   4001                               (__v2df) __v1, __scale); })
   4002 
   4003 #define _mm_mask_i64scatter_pd(__addr, __mask, __index, __v1, \
   4004                                __scale) __extension__ ({ \
   4005   __builtin_ia32_scatterdiv2df (__addr, __mask, (__v2di) __index, \
   4006                                (__v2df) __v1, __scale); })
   4007 
   4008 
   4009 #define _mm_i64scatter_epi64(__addr, __index, __v1, __scale) __extension__ ({ \
   4010   __builtin_ia32_scatterdiv2di (__addr, (__mmask8) 0xFF, \
   4011         (__v2di) __index, (__v2di) __v1, __scale); })
   4012 
   4013 #define _mm_mask_i64scatter_epi64(__addr, __mask, __index, __v1,\
   4014                                   __scale) __extension__ ({ \
   4015   __builtin_ia32_scatterdiv2di (__addr, __mask, (__v2di) __index,\
   4016         (__v2di) __v1, __scale); })
   4017 
   4018 #define _mm256_i64scatter_pd(__addr, __index, __v1, __scale) __extension__ ({ \
   4019   __builtin_ia32_scatterdiv4df (__addr, (__mmask8) 0xFF,\
   4020         (__v4di) __index, (__v4df) __v1, __scale); })
   4021 
   4022 #define _mm256_mask_i64scatter_pd(__addr, __mask, __index, __v1,\
   4023                                    __scale) __extension__ ({ \
   4024   __builtin_ia32_scatterdiv4df (__addr, __mask, (__v4di) __index,\
   4025         (__v4df) __v1, __scale); })
   4026 
   4027 #define _mm256_i64scatter_epi64(__addr, __index, __v1, __scale) __extension__ ({ \
   4028   __builtin_ia32_scatterdiv4di (__addr, (__mmask8) 0xFF, (__v4di) __index,\
   4029                                (__v4di) __v1, __scale); })
   4030 
   4031 #define _mm256_mask_i64scatter_epi64(__addr, __mask, __index, __v1,\
   4032                                       __scale) __extension__ ({ \
   4033   __builtin_ia32_scatterdiv4di (__addr, __mask, (__v4di) __index,\
   4034         (__v4di) __v1, __scale); })
   4035 
   4036 #define _mm_i64scatter_ps(__addr, __index, __v1, __scale) __extension__ ({ \
   4037   __builtin_ia32_scatterdiv4sf (__addr, (__mmask8) 0xFF,\
   4038         (__v2di) __index, (__v4sf) __v1, __scale); })
   4039 
   4040 #define _mm_mask_i64scatter_ps(__addr, __mask, __index, __v1, \
   4041                                 __scale) __extension__ ({ \
   4042   __builtin_ia32_scatterdiv4sf (__addr, __mask, (__v2di) __index,\
   4043         (__v4sf) __v1, __scale); })
   4044 
   4045 #define _mm_i64scatter_epi32(__addr, __index, __v1, \
   4046                               __scale) __extension__ ({ \
   4047   __builtin_ia32_scatterdiv4si (__addr, (__mmask8) 0xFF,\
   4048         (__v2di) __index, (__v4si) __v1, __scale); })
   4049 
   4050 #define _mm_mask_i64scatter_epi32(__addr, __mask, __index, __v1,\
   4051          __scale) __extension__ ({ \
   4052   __builtin_ia32_scatterdiv4si (__addr, __mask, (__v2di) __index,\
   4053         (__v4si) __v1, __scale); })
   4054 
   4055 #define _mm256_i64scatter_ps(__addr, __index, __v1, __scale) __extension__ ({ \
   4056   __builtin_ia32_scatterdiv8sf (__addr, (__mmask8) 0xFF, (__v4di) __index, \
   4057                               (__v4sf) __v1, __scale); })
   4058 
   4059 #define _mm256_mask_i64scatter_ps(__addr, __mask, __index, __v1, \
   4060                                    __scale) __extension__ ({ \
   4061   __builtin_ia32_scatterdiv8sf (__addr, __mask, (__v4di) __index, \
   4062         (__v4sf) __v1, __scale); })
   4063 
   4064 #define _mm256_i64scatter_epi32(__addr, __index, __v1, __scale) __extension__ ({ \
   4065   __builtin_ia32_scatterdiv8si (__addr, (__mmask8) 0xFF, \
   4066         (__v4di) __index, (__v4si) __v1, __scale); })
   4067 
   4068 #define _mm256_mask_i64scatter_epi32(__addr, __mask, __index, __v1, \
   4069                                       __scale) __extension__ ({  \
   4070   __builtin_ia32_scatterdiv8si(__addr, __mask, (__v4di) __index, \
   4071         (__v4si) __v1, __scale); })
   4072 
   4073 #define _mm_i32scatter_pd(__addr, __index, __v1,         \
   4074                           __scale) __extension__ ({      \
   4075   __builtin_ia32_scattersiv2df (__addr, (__mmask8) 0xFF, \
   4076         (__v4si) __index, (__v2df) __v1, __scale); })
   4077 
   4078 #define _mm_mask_i32scatter_pd(__addr, __mask, __index, __v1,    \
   4079                                 __scale) __extension__ ({        \
   4080   __builtin_ia32_scattersiv2df (__addr, __mask, (__v4si) __index,\
   4081          (__v2df) __v1, __scale); })
   4082 
   4083 #define _mm_i32scatter_epi64(__addr, __index, __v1, __scale) __extension__ ({ \
   4084   __builtin_ia32_scattersiv2di (__addr, (__mmask8) 0xFF,                       \
   4085         (__v4si) __index, (__v2di) __v1, __scale); })
   4086 
   4087 #define _mm_mask_i32scatter_epi64(__addr, __mask, __index, __v1, \
   4088          __scale) __extension__ ({                                \
   4089   __builtin_ia32_scattersiv2di (__addr, __mask, (__v4si) __index, \
   4090         (__v2di) __v1, __scale); })
   4091 
   4092 #define _mm256_i32scatter_pd(__addr, __index, __v1, __scale) __extension__ ({ \
   4093   __builtin_ia32_scattersiv4df (__addr, (__mmask8) 0xFF,                      \
   4094         (__v4si) __index, (__v4df) __v1, __scale); })
   4095 
   4096 #define _mm256_mask_i32scatter_pd(__addr, __mask, __index, __v1, \
   4097          __scale) __extension__ ({                                \
   4098   __builtin_ia32_scattersiv4df (__addr, __mask, (__v4si) __index, \
   4099         (__v4df) __v1, __scale); })
   4100 
   4101 #define _mm256_i32scatter_epi64(__addr, __index, __v1,    \
   4102                                 __scale) __extension__ ({ \
   4103   __builtin_ia32_scattersiv4di (__addr, (__mmask8) 0xFF,  \
   4104         (__v4si) __index, (__v4di) __v1, __scale); })
   4105 
   4106 #define _mm256_mask_i32scatter_epi64(__addr, __mask, __index, __v1, \
   4107             __scale) __extension__ ({                               \
   4108   __builtin_ia32_scattersiv4di (__addr, __mask, (__v4si) __index,   \
   4109         (__v4di) __v1, __scale); })
   4110 
   4111 #define _mm_i32scatter_ps(__addr, __index, __v1, __scale) __extension__ ({ \
   4112   __builtin_ia32_scattersiv4sf (__addr, (__mmask8) 0xFF,                   \
   4113         (__v4si) __index, (__v4sf) __v1, __scale); })
   4114 
   4115 #define _mm_mask_i32scatter_ps(__addr, __mask, __index, __v1,     \
   4116                                __scale) __extension__ ({          \
   4117   __builtin_ia32_scattersiv4sf (__addr, __mask, (__v4si) __index, \
   4118         (__v4sf) __v1, __scale); })
   4119 
   4120 #define _mm_i32scatter_epi32(__addr, __index, __v1, __scale) __extension__ ({ \
   4121   __builtin_ia32_scattersiv4si (__addr, (__mmask8) 0xFF,                       \
   4122         (__v4si) __index, (__v4si) __v1, __scale); })
   4123 
   4124 #define _mm_mask_i32scatter_epi32(__addr, __mask, __index, __v1, \
   4125                                   __scale) __extension__ ({      \
   4126   __builtin_ia32_scattersiv4si (__addr, __mask, (__v4si) __index,\
   4127         (__v4si) __v1, __scale); })
   4128 
   4129 #define _mm256_i32scatter_ps(__addr, __index, __v1, __scale) __extension__ ({ \
   4130   __builtin_ia32_scattersiv8sf (__addr, (__mmask8) 0xFF,                      \
   4131         (__v8si) __index, (__v8sf) __v1, __scale); })
   4132 
   4133 #define _mm256_mask_i32scatter_ps(__addr, __mask, __index, __v1, \
   4134                                    __scale) __extension__ ({     \
   4135   __builtin_ia32_scattersiv8sf (__addr, __mask, (__v8si) __index,\
   4136         (__v8sf) __v1, __scale); })
   4137 
   4138 #define _mm256_i32scatter_epi32(__addr, __index, __v1, __scale) __extension__ ({ \
   4139   __builtin_ia32_scattersiv8si (__addr, (__mmask8) 0xFF,                         \
   4140         (__v8si) __index, (__v8si) __v1, __scale); })
   4141 
   4142 #define _mm256_mask_i32scatter_epi32(__addr, __mask, __index, __v1, \
   4143             __scale) __extension__ ({                                \
   4144   __builtin_ia32_scattersiv8si (__addr, __mask, (__v8si) __index,    \
   4145         (__v8si) __v1, __scale); })
   4146 
   4147 static __inline__ __m128d __DEFAULT_FN_ATTRS
   4148 _mm_mask_sqrt_pd (__m128d __W, __mmask8 __U, __m128d __A) {
   4149   return (__m128d) __builtin_ia32_sqrtpd128_mask ((__v2df) __A,
   4150               (__v2df) __W,
   4151               (__mmask8) __U);
   4152 }
   4153 
   4154 static __inline__ __m128d __DEFAULT_FN_ATTRS
   4155 _mm_maskz_sqrt_pd (__mmask8 __U, __m128d __A) {
   4156   return (__m128d) __builtin_ia32_sqrtpd128_mask ((__v2df) __A,
   4157               (__v2df)
   4158               _mm_setzero_pd (),
   4159               (__mmask8) __U);
   4160 }
   4161 
   4162 static __inline__ __m256d __DEFAULT_FN_ATTRS
   4163 _mm256_mask_sqrt_pd (__m256d __W, __mmask8 __U, __m256d __A) {
   4164   return (__m256d) __builtin_ia32_sqrtpd256_mask ((__v4df) __A,
   4165               (__v4df) __W,
   4166               (__mmask8) __U);
   4167 }
   4168 
   4169 static __inline__ __m256d __DEFAULT_FN_ATTRS
   4170 _mm256_maskz_sqrt_pd (__mmask8 __U, __m256d __A) {
   4171   return (__m256d) __builtin_ia32_sqrtpd256_mask ((__v4df) __A,
   4172               (__v4df)
   4173               _mm256_setzero_pd (),
   4174               (__mmask8) __U);
   4175 }
   4176 
   4177 static __inline__ __m128 __DEFAULT_FN_ATTRS
   4178 _mm_mask_sqrt_ps (__m128 __W, __mmask8 __U, __m128 __A) {
   4179   return (__m128) __builtin_ia32_sqrtps128_mask ((__v4sf) __A,
   4180              (__v4sf) __W,
   4181              (__mmask8) __U);
   4182 }
   4183 
   4184 static __inline__ __m128 __DEFAULT_FN_ATTRS
   4185 _mm_maskz_sqrt_ps (__mmask8 __U, __m128 __A) {
   4186   return (__m128) __builtin_ia32_sqrtps128_mask ((__v4sf) __A,
   4187              (__v4sf)
   4188              _mm_setzero_ps (),
   4189              (__mmask8) __U);
   4190 }
   4191 
   4192 static __inline__ __m256 __DEFAULT_FN_ATTRS
   4193 _mm256_mask_sqrt_ps (__m256 __W, __mmask8 __U, __m256 __A) {
   4194   return (__m256) __builtin_ia32_sqrtps256_mask ((__v8sf) __A,
   4195              (__v8sf) __W,
   4196              (__mmask8) __U);
   4197 }
   4198 
   4199 static __inline__ __m256 __DEFAULT_FN_ATTRS
   4200 _mm256_maskz_sqrt_ps (__mmask8 __U, __m256 __A) {
   4201   return (__m256) __builtin_ia32_sqrtps256_mask ((__v8sf) __A,
   4202              (__v8sf)
   4203              _mm256_setzero_ps (),
   4204              (__mmask8) __U);
   4205 }
   4206 
   4207 static __inline__ __m128d __DEFAULT_FN_ATTRS
   4208 _mm_mask_sub_pd (__m128d __W, __mmask8 __U, __m128d __A, __m128d __B) {
   4209   return (__m128d) __builtin_ia32_subpd128_mask ((__v2df) __A,
   4210              (__v2df) __B,
   4211              (__v2df) __W,
   4212              (__mmask8) __U);
   4213 }
   4214 
   4215 static __inline__ __m128d __DEFAULT_FN_ATTRS
   4216 _mm_maskz_sub_pd (__mmask8 __U, __m128d __A, __m128d __B) {
   4217   return (__m128d) __builtin_ia32_subpd128_mask ((__v2df) __A,
   4218              (__v2df) __B,
   4219              (__v2df)
   4220              _mm_setzero_pd (),
   4221              (__mmask8) __U);
   4222 }
   4223 
   4224 static __inline__ __m256d __DEFAULT_FN_ATTRS
   4225 _mm256_mask_sub_pd (__m256d __W, __mmask8 __U, __m256d __A,
   4226         __m256d __B) {
   4227   return (__m256d) __builtin_ia32_subpd256_mask ((__v4df) __A,
   4228              (__v4df) __B,
   4229              (__v4df) __W,
   4230              (__mmask8) __U);
   4231 }
   4232 
   4233 static __inline__ __m256d __DEFAULT_FN_ATTRS
   4234 _mm256_maskz_sub_pd (__mmask8 __U, __m256d __A, __m256d __B) {
   4235   return (__m256d) __builtin_ia32_subpd256_mask ((__v4df) __A,
   4236              (__v4df) __B,
   4237              (__v4df)
   4238              _mm256_setzero_pd (),
   4239              (__mmask8) __U);
   4240 }
   4241 
   4242 static __inline__ __m128 __DEFAULT_FN_ATTRS
   4243 _mm_mask_sub_ps (__m128 __W, __mmask16 __U, __m128 __A, __m128 __B) {
   4244   return (__m128) __builtin_ia32_subps128_mask ((__v4sf) __A,
   4245             (__v4sf) __B,
   4246             (__v4sf) __W,
   4247             (__mmask8) __U);
   4248 }
   4249 
   4250 static __inline__ __m128 __DEFAULT_FN_ATTRS
   4251 _mm_maskz_sub_ps (__mmask16 __U, __m128 __A, __m128 __B) {
   4252   return (__m128) __builtin_ia32_subps128_mask ((__v4sf) __A,
   4253             (__v4sf) __B,
   4254             (__v4sf)
   4255             _mm_setzero_ps (),
   4256             (__mmask8) __U);
   4257 }
   4258 
   4259 static __inline__ __m256 __DEFAULT_FN_ATTRS
   4260 _mm256_mask_sub_ps (__m256 __W, __mmask16 __U, __m256 __A, __m256 __B) {
   4261   return (__m256) __builtin_ia32_subps256_mask ((__v8sf) __A,
   4262             (__v8sf) __B,
   4263             (__v8sf) __W,
   4264             (__mmask8) __U);
   4265 }
   4266 
   4267 static __inline__ __m256 __DEFAULT_FN_ATTRS
   4268 _mm256_maskz_sub_ps (__mmask16 __U, __m256 __A, __m256 __B) {
   4269   return (__m256) __builtin_ia32_subps256_mask ((__v8sf) __A,
   4270             (__v8sf) __B,
   4271             (__v8sf)
   4272             _mm256_setzero_ps (),
   4273             (__mmask8) __U);
   4274 }
   4275 
   4276 static __inline__ __m128i __DEFAULT_FN_ATTRS
   4277 _mm_mask2_permutex2var_epi32 (__m128i __A, __m128i __I, __mmask8 __U,
   4278             __m128i __B) {
   4279   return (__m128i) __builtin_ia32_vpermi2vard128_mask ((__v4si) __A,
   4280                    (__v4si) __I
   4281                    /* idx */ ,
   4282                    (__v4si) __B,
   4283                    (__mmask8) __U);
   4284 }
   4285 
   4286 static __inline__ __m256i __DEFAULT_FN_ATTRS
   4287 _mm256_mask2_permutex2var_epi32 (__m256i __A, __m256i __I,
   4288          __mmask8 __U, __m256i __B) {
   4289   return (__m256i) __builtin_ia32_vpermi2vard256_mask ((__v8si) __A,
   4290                    (__v8si) __I
   4291                    /* idx */ ,
   4292                    (__v8si) __B,
   4293                    (__mmask8) __U);
   4294 }
   4295 
   4296 static __inline__ __m128d __DEFAULT_FN_ATTRS
   4297 _mm_mask2_permutex2var_pd (__m128d __A, __m128i __I, __mmask8 __U,
   4298          __m128d __B) {
   4299   return (__m128d) __builtin_ia32_vpermi2varpd128_mask ((__v2df) __A,
   4300               (__v2di) __I
   4301               /* idx */ ,
   4302               (__v2df) __B,
   4303               (__mmask8)
   4304               __U);
   4305 }
   4306 
   4307 static __inline__ __m256d __DEFAULT_FN_ATTRS
   4308 _mm256_mask2_permutex2var_pd (__m256d __A, __m256i __I, __mmask8 __U,
   4309             __m256d __B) {
   4310   return (__m256d) __builtin_ia32_vpermi2varpd256_mask ((__v4df) __A,
   4311               (__v4di) __I
   4312               /* idx */ ,
   4313               (__v4df) __B,
   4314               (__mmask8)
   4315               __U);
   4316 }
   4317 
   4318 static __inline__ __m128 __DEFAULT_FN_ATTRS
   4319 _mm_mask2_permutex2var_ps (__m128 __A, __m128i __I, __mmask8 __U,
   4320          __m128 __B) {
   4321   return (__m128) __builtin_ia32_vpermi2varps128_mask ((__v4sf) __A,
   4322                    (__v4si) __I
   4323                    /* idx */ ,
   4324                    (__v4sf) __B,
   4325                    (__mmask8) __U);
   4326 }
   4327 
   4328 static __inline__ __m256 __DEFAULT_FN_ATTRS
   4329 _mm256_mask2_permutex2var_ps (__m256 __A, __m256i __I, __mmask8 __U,
   4330             __m256 __B) {
   4331   return (__m256) __builtin_ia32_vpermi2varps256_mask ((__v8sf) __A,
   4332                    (__v8si) __I
   4333                    /* idx */ ,
   4334                    (__v8sf) __B,
   4335                    (__mmask8) __U);
   4336 }
   4337 
   4338 static __inline__ __m128i __DEFAULT_FN_ATTRS
   4339 _mm_mask2_permutex2var_epi64 (__m128i __A, __m128i __I, __mmask8 __U,
   4340             __m128i __B) {
   4341   return (__m128i) __builtin_ia32_vpermi2varq128_mask ((__v2di) __A,
   4342                    (__v2di) __I
   4343                    /* idx */ ,
   4344                    (__v2di) __B,
   4345                    (__mmask8) __U);
   4346 }
   4347 
   4348 static __inline__ __m256i __DEFAULT_FN_ATTRS
   4349 _mm256_mask2_permutex2var_epi64 (__m256i __A, __m256i __I,
   4350          __mmask8 __U, __m256i __B) {
   4351   return (__m256i) __builtin_ia32_vpermi2varq256_mask ((__v4di) __A,
   4352                    (__v4di) __I
   4353                    /* idx */ ,
   4354                    (__v4di) __B,
   4355                    (__mmask8) __U);
   4356 }
   4357 
   4358 static __inline__ __m128i __DEFAULT_FN_ATTRS
   4359 _mm_permutex2var_epi32 (__m128i __A, __m128i __I, __m128i __B) {
   4360   return (__m128i) __builtin_ia32_vpermt2vard128_mask ((__v4si) __I
   4361                    /* idx */ ,
   4362                    (__v4si) __A,
   4363                    (__v4si) __B,
   4364                    (__mmask8) -1);
   4365 }
   4366 
   4367 static __inline__ __m128i __DEFAULT_FN_ATTRS
   4368 _mm_mask_permutex2var_epi32 (__m128i __A, __mmask8 __U, __m128i __I,
   4369            __m128i __B) {
   4370   return (__m128i) __builtin_ia32_vpermt2vard128_mask ((__v4si) __I
   4371                    /* idx */ ,
   4372                    (__v4si) __A,
   4373                    (__v4si) __B,
   4374                    (__mmask8) __U);
   4375 }
   4376 
   4377 static __inline__ __m128i __DEFAULT_FN_ATTRS
   4378 _mm_maskz_permutex2var_epi32 (__mmask8 __U, __m128i __A, __m128i __I,
   4379             __m128i __B) {
   4380   return (__m128i) __builtin_ia32_vpermt2vard128_maskz ((__v4si) __I
   4381               /* idx */ ,
   4382               (__v4si) __A,
   4383               (__v4si) __B,
   4384               (__mmask8)
   4385               __U);
   4386 }
   4387 
   4388 static __inline__ __m256i __DEFAULT_FN_ATTRS
   4389 _mm256_permutex2var_epi32 (__m256i __A, __m256i __I, __m256i __B) {
   4390   return (__m256i) __builtin_ia32_vpermt2vard256_mask ((__v8si) __I
   4391                    /* idx */ ,
   4392                    (__v8si) __A,
   4393                    (__v8si) __B,
   4394                    (__mmask8) -1);
   4395 }
   4396 
   4397 static __inline__ __m256i __DEFAULT_FN_ATTRS
   4398 _mm256_mask_permutex2var_epi32 (__m256i __A, __mmask8 __U, __m256i __I,
   4399         __m256i __B) {
   4400   return (__m256i) __builtin_ia32_vpermt2vard256_mask ((__v8si) __I
   4401                    /* idx */ ,
   4402                    (__v8si) __A,
   4403                    (__v8si) __B,
   4404                    (__mmask8) __U);
   4405 }
   4406 
   4407 static __inline__ __m256i __DEFAULT_FN_ATTRS
   4408 _mm256_maskz_permutex2var_epi32 (__mmask8 __U, __m256i __A,
   4409          __m256i __I, __m256i __B) {
   4410   return (__m256i) __builtin_ia32_vpermt2vard256_maskz ((__v8si) __I
   4411               /* idx */ ,
   4412               (__v8si) __A,
   4413               (__v8si) __B,
   4414               (__mmask8)
   4415               __U);
   4416 }
   4417 
   4418 static __inline__ __m128d __DEFAULT_FN_ATTRS
   4419 _mm_permutex2var_pd (__m128d __A, __m128i __I, __m128d __B) {
   4420   return (__m128d) __builtin_ia32_vpermt2varpd128_mask ((__v2di) __I
   4421               /* idx */ ,
   4422               (__v2df) __A,
   4423               (__v2df) __B,
   4424               (__mmask8) -
   4425               1);
   4426 }
   4427 
   4428 static __inline__ __m128d __DEFAULT_FN_ATTRS
   4429 _mm_mask_permutex2var_pd (__m128d __A, __mmask8 __U, __m128i __I,
   4430         __m128d __B) {
   4431   return (__m128d) __builtin_ia32_vpermt2varpd128_mask ((__v2di) __I
   4432               /* idx */ ,
   4433               (__v2df) __A,
   4434               (__v2df) __B,
   4435               (__mmask8)
   4436               __U);
   4437 }
   4438 
   4439 static __inline__ __m128d __DEFAULT_FN_ATTRS
   4440 _mm_maskz_permutex2var_pd (__mmask8 __U, __m128d __A, __m128i __I,
   4441          __m128d __B) {
   4442   return (__m128d) __builtin_ia32_vpermt2varpd128_maskz ((__v2di) __I
   4443                /* idx */ ,
   4444                (__v2df) __A,
   4445                (__v2df) __B,
   4446                (__mmask8)
   4447                __U);
   4448 }
   4449 
   4450 static __inline__ __m256d __DEFAULT_FN_ATTRS
   4451 _mm256_permutex2var_pd (__m256d __A, __m256i __I, __m256d __B) {
   4452   return (__m256d) __builtin_ia32_vpermt2varpd256_mask ((__v4di) __I
   4453               /* idx */ ,
   4454               (__v4df) __A,
   4455               (__v4df) __B,
   4456               (__mmask8) -
   4457               1);
   4458 }
   4459 
   4460 static __inline__ __m256d __DEFAULT_FN_ATTRS
   4461 _mm256_mask_permutex2var_pd (__m256d __A, __mmask8 __U, __m256i __I,
   4462            __m256d __B) {
   4463   return (__m256d) __builtin_ia32_vpermt2varpd256_mask ((__v4di) __I
   4464               /* idx */ ,
   4465               (__v4df) __A,
   4466               (__v4df) __B,
   4467               (__mmask8)
   4468               __U);
   4469 }
   4470 
   4471 static __inline__ __m256d __DEFAULT_FN_ATTRS
   4472 _mm256_maskz_permutex2var_pd (__mmask8 __U, __m256d __A, __m256i __I,
   4473             __m256d __B) {
   4474   return (__m256d) __builtin_ia32_vpermt2varpd256_maskz ((__v4di) __I
   4475                /* idx */ ,
   4476                (__v4df) __A,
   4477                (__v4df) __B,
   4478                (__mmask8)
   4479                __U);
   4480 }
   4481 
   4482 static __inline__ __m128 __DEFAULT_FN_ATTRS
   4483 _mm_permutex2var_ps (__m128 __A, __m128i __I, __m128 __B) {
   4484   return (__m128) __builtin_ia32_vpermt2varps128_mask ((__v4si) __I
   4485                    /* idx */ ,
   4486                    (__v4sf) __A,
   4487                    (__v4sf) __B,
   4488                    (__mmask8) -1);
   4489 }
   4490 
   4491 static __inline__ __m128 __DEFAULT_FN_ATTRS
   4492 _mm_mask_permutex2var_ps (__m128 __A, __mmask8 __U, __m128i __I,
   4493         __m128 __B) {
   4494   return (__m128) __builtin_ia32_vpermt2varps128_mask ((__v4si) __I
   4495                    /* idx */ ,
   4496                    (__v4sf) __A,
   4497                    (__v4sf) __B,
   4498                    (__mmask8) __U);
   4499 }
   4500 
   4501 static __inline__ __m128 __DEFAULT_FN_ATTRS
   4502 _mm_maskz_permutex2var_ps (__mmask8 __U, __m128 __A, __m128i __I,
   4503          __m128 __B) {
   4504   return (__m128) __builtin_ia32_vpermt2varps128_maskz ((__v4si) __I
   4505               /* idx */ ,
   4506               (__v4sf) __A,
   4507               (__v4sf) __B,
   4508               (__mmask8)
   4509               __U);
   4510 }
   4511 
   4512 static __inline__ __m256 __DEFAULT_FN_ATTRS
   4513 _mm256_permutex2var_ps (__m256 __A, __m256i __I, __m256 __B) {
   4514   return (__m256) __builtin_ia32_vpermt2varps256_mask ((__v8si) __I
   4515                    /* idx */ ,
   4516                    (__v8sf) __A,
   4517                    (__v8sf) __B,
   4518                    (__mmask8) -1);
   4519 }
   4520 
   4521 static __inline__ __m256 __DEFAULT_FN_ATTRS
   4522 _mm256_mask_permutex2var_ps (__m256 __A, __mmask8 __U, __m256i __I,
   4523            __m256 __B) {
   4524   return (__m256) __builtin_ia32_vpermt2varps256_mask ((__v8si) __I
   4525                    /* idx */ ,
   4526                    (__v8sf) __A,
   4527                    (__v8sf) __B,
   4528                    (__mmask8) __U);
   4529 }
   4530 
   4531 static __inline__ __m256 __DEFAULT_FN_ATTRS
   4532 _mm256_maskz_permutex2var_ps (__mmask8 __U, __m256 __A, __m256i __I,
   4533             __m256 __B) {
   4534   return (__m256) __builtin_ia32_vpermt2varps256_maskz ((__v8si) __I
   4535               /* idx */ ,
   4536               (__v8sf) __A,
   4537               (__v8sf) __B,
   4538               (__mmask8)
   4539               __U);
   4540 }
   4541 
   4542 static __inline__ __m128i __DEFAULT_FN_ATTRS
   4543 _mm_permutex2var_epi64 (__m128i __A, __m128i __I, __m128i __B) {
   4544   return (__m128i) __builtin_ia32_vpermt2varq128_mask ((__v2di) __I
   4545                    /* idx */ ,
   4546                    (__v2di) __A,
   4547                    (__v2di) __B,
   4548                    (__mmask8) -1);
   4549 }
   4550 
   4551 static __inline__ __m128i __DEFAULT_FN_ATTRS
   4552 _mm_mask_permutex2var_epi64 (__m128i __A, __mmask8 __U, __m128i __I,
   4553            __m128i __B) {
   4554   return (__m128i) __builtin_ia32_vpermt2varq128_mask ((__v2di) __I
   4555                    /* idx */ ,
   4556                    (__v2di) __A,
   4557                    (__v2di) __B,
   4558                    (__mmask8) __U);
   4559 }
   4560 
   4561 static __inline__ __m128i __DEFAULT_FN_ATTRS
   4562 _mm_maskz_permutex2var_epi64 (__mmask8 __U, __m128i __A, __m128i __I,
   4563             __m128i __B) {
   4564   return (__m128i) __builtin_ia32_vpermt2varq128_maskz ((__v2di) __I
   4565               /* idx */ ,
   4566               (__v2di) __A,
   4567               (__v2di) __B,
   4568               (__mmask8)
   4569               __U);
   4570 }
   4571 
   4572 
   4573 static __inline__ __m256i __DEFAULT_FN_ATTRS
   4574 _mm256_permutex2var_epi64 (__m256i __A, __m256i __I, __m256i __B) {
   4575   return (__m256i) __builtin_ia32_vpermt2varq256_mask ((__v4di) __I
   4576                    /* idx */ ,
   4577                    (__v4di) __A,
   4578                    (__v4di) __B,
   4579                    (__mmask8) -1);
   4580 }
   4581 
   4582 static __inline__ __m256i __DEFAULT_FN_ATTRS
   4583 _mm256_mask_permutex2var_epi64 (__m256i __A, __mmask8 __U, __m256i __I,
   4584         __m256i __B) {
   4585   return (__m256i) __builtin_ia32_vpermt2varq256_mask ((__v4di) __I
   4586                    /* idx */ ,
   4587                    (__v4di) __A,
   4588                    (__v4di) __B,
   4589                    (__mmask8) __U);
   4590 }
   4591 
   4592 static __inline__ __m256i __DEFAULT_FN_ATTRS
   4593 _mm256_maskz_permutex2var_epi64 (__mmask8 __U, __m256i __A,
   4594          __m256i __I, __m256i __B) {
   4595   return (__m256i) __builtin_ia32_vpermt2varq256_maskz ((__v4di) __I
   4596               /* idx */ ,
   4597               (__v4di) __A,
   4598               (__v4di) __B,
   4599               (__mmask8)
   4600               __U);
   4601 }
   4602 
   4603 #undef __DEFAULT_FN_ATTRS
   4604 #undef __DEFAULT_FN_ATTRS_BOTH
   4605 
   4606 #endif /* __AVX512VLINTRIN_H */
   4607