]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/config/i386/avx512vlbwintrin.h
Update copyright years.
[thirdparty/gcc.git] / gcc / config / i386 / avx512vlbwintrin.h
index 601dcdd91a10d2c1c68b4135d1d8e715bcc0c4fd..19293e4d6f0d5d814381c725e753acd690f0a601 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2014-2015 Free Software Foundation, Inc.
+/* Copyright (C) 2014-2020 Free Software Foundation, Inc.
 
    This file is part of GCC.
 
@@ -69,7 +69,7 @@ _mm_maskz_mov_epi8 (__mmask16 __U, __m128i __A)
 {
   return (__m128i) __builtin_ia32_movdquqi128_mask ((__v16qi) __A,
                                                    (__v16qi)
-                                                   _mm_setzero_hi (),
+                                                   _mm_setzero_si128 (),
                                                    (__mmask16) __U);
 }
 
@@ -77,7 +77,7 @@ extern __inline void
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_mask_storeu_epi8 (void *__P, __mmask32 __U, __m256i __A)
 {
-  __builtin_ia32_storedquqi256_mask ((__v32qi *) __P,
+  __builtin_ia32_storedquqi256_mask ((char *) __P,
                                     (__v32qi) __A,
                                     (__mmask32) __U);
 }
@@ -86,7 +86,7 @@ extern __inline void
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_mask_storeu_epi8 (void *__P, __mmask16 __U, __m128i __A)
 {
-  __builtin_ia32_storedquqi128_mask ((__v16qi *) __P,
+  __builtin_ia32_storedquqi128_mask ((char *) __P,
                                     (__v16qi) __A,
                                     (__mmask16) __U);
 }
@@ -95,7 +95,7 @@ extern __inline __m256i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_mask_loadu_epi16 (__m256i __W, __mmask16 __U, void const *__P)
 {
-  return (__m256i) __builtin_ia32_loaddquhi256_mask ((__v16hi *) __P,
+  return (__m256i) __builtin_ia32_loaddquhi256_mask ((const short *) __P,
                                                     (__v16hi) __W,
                                                     (__mmask16) __U);
 }
@@ -104,7 +104,7 @@ extern __inline __m256i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_maskz_loadu_epi16 (__mmask16 __U, void const *__P)
 {
-  return (__m256i) __builtin_ia32_loaddquhi256_mask ((__v16hi *) __P,
+  return (__m256i) __builtin_ia32_loaddquhi256_mask ((const short *) __P,
                                                     (__v16hi)
                                                     _mm256_setzero_si256 (),
                                                     (__mmask16) __U);
@@ -114,7 +114,7 @@ extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_mask_loadu_epi16 (__m128i __W, __mmask8 __U, void const *__P)
 {
-  return (__m128i) __builtin_ia32_loaddquhi128_mask ((__v8hi *) __P,
+  return (__m128i) __builtin_ia32_loaddquhi128_mask ((const short *) __P,
                                                     (__v8hi) __W,
                                                     (__mmask8) __U);
 }
@@ -123,9 +123,9 @@ extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_maskz_loadu_epi16 (__mmask8 __U, void const *__P)
 {
-  return (__m128i) __builtin_ia32_loaddquhi128_mask ((__v8hi *) __P,
+  return (__m128i) __builtin_ia32_loaddquhi128_mask ((const short *) __P,
                                                     (__v8hi)
-                                                    _mm_setzero_hi (),
+                                                    _mm_setzero_si128 (),
                                                     (__mmask8) __U);
 }
 
@@ -164,7 +164,7 @@ _mm_maskz_mov_epi16 (__mmask8 __U, __m128i __A)
 {
   return (__m128i) __builtin_ia32_movdquhi128_mask ((__v8hi) __A,
                                                    (__v8hi)
-                                                   _mm_setzero_hi (),
+                                                   _mm_setzero_si128 (),
                                                    (__mmask8) __U);
 }
 
@@ -172,7 +172,7 @@ extern __inline __m256i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_mask_loadu_epi8 (__m256i __W, __mmask32 __U, void const *__P)
 {
-  return (__m256i) __builtin_ia32_loaddquqi256_mask ((__v32qi *) __P,
+  return (__m256i) __builtin_ia32_loaddquqi256_mask ((const char *) __P,
                                                     (__v32qi) __W,
                                                     (__mmask32) __U);
 }
@@ -181,7 +181,7 @@ extern __inline __m256i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_maskz_loadu_epi8 (__mmask32 __U, void const *__P)
 {
-  return (__m256i) __builtin_ia32_loaddquqi256_mask ((__v32qi *) __P,
+  return (__m256i) __builtin_ia32_loaddquqi256_mask ((const char *) __P,
                                                     (__v32qi)
                                                     _mm256_setzero_si256 (),
                                                     (__mmask32) __U);
@@ -191,7 +191,7 @@ extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_mask_loadu_epi8 (__m128i __W, __mmask16 __U, void const *__P)
 {
-  return (__m128i) __builtin_ia32_loaddquqi128_mask ((__v16qi *) __P,
+  return (__m128i) __builtin_ia32_loaddquqi128_mask ((const char *) __P,
                                                     (__v16qi) __W,
                                                     (__mmask16) __U);
 }
@@ -200,9 +200,9 @@ extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_maskz_loadu_epi8 (__mmask16 __U, void const *__P)
 {
-  return (__m128i) __builtin_ia32_loaddquqi128_mask ((__v16qi *) __P,
+  return (__m128i) __builtin_ia32_loaddquqi128_mask ((const char *) __P,
                                                     (__v16qi)
-                                                    _mm_setzero_hi (),
+                                                    _mm_setzero_si128 (),
                                                     (__mmask16) __U);
 }
 
@@ -216,6 +216,13 @@ _mm256_cvtepi16_epi8 (__m256i __A)
                                                  (__mmask16) -1);
 }
 
+extern __inline void
+__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
+_mm256_mask_cvtepi16_storeu_epi8 (void * __P, __mmask16 __M,__m256i __A)
+{
+  __builtin_ia32_pmovwb256mem_mask ((__v16qi *) __P , (__v16hi) __A, __M);
+}
+
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_mask_cvtepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A)
@@ -244,6 +251,13 @@ _mm_cvtsepi16_epi8 (__m128i __A)
                                                   (__mmask8) -1);
 }
 
+extern __inline void
+__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
+_mm_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask8 __M,__m128i __A)
+{
+  __builtin_ia32_pmovswb128mem_mask ((__v8qi *) __P , (__v8hi) __A, __M);
+}
+
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_mask_cvtsepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
@@ -272,6 +286,13 @@ _mm256_cvtsepi16_epi8 (__m256i __A)
                                                   (__mmask16) -1);
 }
 
+extern __inline void
+__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
+_mm256_mask_cvtsepi16_storeu_epi8 (void * __P, __mmask16 __M,__m256i __A)
+{
+  __builtin_ia32_pmovswb256mem_mask ((__v16qi *) __P , (__v16hi) __A, __M);
+}
+
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_mask_cvtsepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A)
@@ -300,6 +321,13 @@ _mm_cvtusepi16_epi8 (__m128i __A)
                                                    (__mmask8) -1);
 }
 
+extern __inline void
+__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
+_mm_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask8 __M,__m128i __A)
+{
+  __builtin_ia32_pmovuswb128mem_mask ((__v8qi *) __P , (__v8hi) __A, __M);
+}
+
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_mask_cvtusepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
@@ -329,6 +357,13 @@ _mm256_cvtusepi16_epi8 (__m256i __A)
                                                    (__mmask16) -1);
 }
 
+extern __inline void
+__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
+_mm256_mask_cvtusepi16_storeu_epi8 (void * __P, __mmask16 __M,__m256i __A)
+{
+  __builtin_ia32_pmovuswb256mem_mask ((__v16qi *) __P , (__v16hi) __A, __M);
+}
+
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_mask_cvtusepi16_epi8 (__m128i __O, __mmask16 __M, __m256i __A)
@@ -541,7 +576,7 @@ _mm_permutexvar_epi16 (__m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_permvarhi128_mask ((__v8hi) __B,
                                                     (__v8hi) __A,
                                                     (__v8hi)
-                                                    _mm_setzero_hi (),
+                                                    _mm_setzero_si128 (),
                                                     (__mmask8) -1);
 }
 
@@ -575,8 +610,7 @@ _mm256_permutex2var_epi16 (__m256i __A, __m256i __I, __m256i __B)
                                                        /* idx */ ,
                                                        (__v16hi) __A,
                                                        (__v16hi) __B,
-                                                       (__mmask16) -
-                                                       1);
+                                                       (__mmask16) -1);
 }
 
 extern __inline __m256i
@@ -626,8 +660,7 @@ _mm_permutex2var_epi16 (__m128i __A, __m128i __I, __m128i __B)
                                                        /* idx */ ,
                                                        (__v8hi) __A,
                                                        (__v8hi) __B,
-                                                       (__mmask8) -
-                                                       1);
+                                                       (__mmask8) -1);
 }
 
 extern __inline __m128i
@@ -709,7 +742,7 @@ _mm_maskz_maddubs_epi16 (__mmask8 __U, __m128i __X, __m128i __Y)
   return (__m128i) __builtin_ia32_pmaddubsw128_mask ((__v16qi) __X,
                                                     (__v16qi) __Y,
                                                     (__v8hi)
-                                                    _mm_setzero_hi (),
+                                                    _mm_setzero_si128 (),
                                                     (__mmask8) __U);
 }
 
@@ -910,7 +943,7 @@ _mm_maskz_min_epu16 (__mmask8 __M, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pminuw128_mask ((__v8hi) __A,
                                                  (__v8hi) __B,
                                                  (__v8hi)
-                                                 _mm_setzero_di (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask8) __M);
 }
 
@@ -976,7 +1009,7 @@ _mm_maskz_max_epu8 (__mmask16 __M, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pmaxub128_mask ((__v16qi) __A,
                                                  (__v16qi) __B,
                                                  (__v16qi)
-                                                 _mm_setzero_di (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask16) __M);
 }
 
@@ -1020,7 +1053,7 @@ _mm_maskz_max_epi8 (__mmask16 __M, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pmaxsb128_mask ((__v16qi) __A,
                                                  (__v16qi) __B,
                                                  (__v16qi)
-                                                 _mm_setzero_di (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask16) __M);
 }
 
@@ -1064,7 +1097,7 @@ _mm_maskz_min_epu8 (__mmask16 __M, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pminub128_mask ((__v16qi) __A,
                                                  (__v16qi) __B,
                                                  (__v16qi)
-                                                 _mm_setzero_di (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask16) __M);
 }
 
@@ -1108,7 +1141,7 @@ _mm_maskz_min_epi8 (__mmask16 __M, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pminsb128_mask ((__v16qi) __A,
                                                  (__v16qi) __B,
                                                  (__v16qi)
-                                                 _mm_setzero_di (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask16) __M);
 }
 
@@ -1152,7 +1185,7 @@ _mm_maskz_max_epi16 (__mmask8 __M, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pmaxsw128_mask ((__v8hi) __A,
                                                  (__v8hi) __B,
                                                  (__v8hi)
-                                                 _mm_setzero_di (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask8) __M);
 }
 
@@ -1196,7 +1229,7 @@ _mm_maskz_max_epu16 (__mmask8 __M, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pmaxuw128_mask ((__v8hi) __A,
                                                  (__v8hi) __B,
                                                  (__v8hi)
-                                                 _mm_setzero_di (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask8) __M);
 }
 
@@ -1218,7 +1251,7 @@ _mm_maskz_min_epi16 (__mmask8 __M, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pminsw128_mask ((__v8hi) __A,
                                                  (__v8hi) __B,
                                                  (__v8hi)
-                                                 _mm_setzero_di (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask8) __M);
 }
 
@@ -1329,7 +1362,7 @@ _mm_dbsad_epu8 (__m128i __A, __m128i __B, const int __imm)
                                                    (__v16qi) __B,
                                                    __imm,
                                                    (__v8hi)
-                                                   _mm_setzero_hi (),
+                                                   _mm_setzero_si128 (),
                                                    (__mmask8) -1);
 }
 
@@ -1434,7 +1467,7 @@ _mm256_cmp_epi16_mask (__m256i __X, __m256i __Y, const int __P)
 
 extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epi8_mask (__mmask8 __U, __m128i __X, __m128i __Y,
+_mm_mask_cmp_epi8_mask (__mmask16 __U, __m128i __X, __m128i __Y,
                        const int __P)
 {
   return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
@@ -1453,7 +1486,7 @@ _mm_cmp_epi8_mask (__m128i __X, __m128i __Y, const int __P)
 
 extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epi8_mask (__mmask16 __U, __m256i __X, __m256i __Y,
+_mm256_mask_cmp_epi8_mask (__mmask32 __U, __m256i __X, __m256i __Y,
                           const int __P)
 {
   return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
@@ -1461,7 +1494,7 @@ _mm256_mask_cmp_epi8_mask (__mmask16 __U, __m256i __X, __m256i __Y,
                                                  (__mmask32) __U);
 }
 
-extern __inline __mmask16
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_cmp_epi8_mask (__m256i __X, __m256i __Y, const int __P)
 {
@@ -1510,7 +1543,7 @@ _mm256_cmp_epu16_mask (__m256i __X, __m256i __Y, const int __P)
 
 extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cmp_epu8_mask (__mmask8 __U, __m128i __X, __m128i __Y,
+_mm_mask_cmp_epu8_mask (__mmask16 __U, __m128i __X, __m128i __Y,
                        const int __P)
 {
   return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
@@ -1529,7 +1562,7 @@ _mm_cmp_epu8_mask (__m128i __X, __m128i __Y, const int __P)
 
 extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmp_epu8_mask (__mmask16 __U, __m256i __X, __m256i __Y,
+_mm256_mask_cmp_epu8_mask (__mmask32 __U, __m256i __X, __m256i __Y,
                           const int __P)
 {
   return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
@@ -1537,7 +1570,7 @@ _mm256_mask_cmp_epu8_mask (__mmask16 __U, __m256i __X, __m256i __Y,
                                                   (__mmask32) __U);
 }
 
-extern __inline __mmask16
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_cmp_epu8_mask (__m256i __X, __m256i __Y, const int __P)
 {
@@ -1625,7 +1658,7 @@ _mm_maskz_shufflehi_epi16 (__mmask8 __U, __m128i __A, const int __imm)
 {
   return (__m128i) __builtin_ia32_pshufhw128_mask ((__v8hi) __A, __imm,
                                                   (__v8hi)
-                                                  _mm_setzero_hi (),
+                                                  _mm_setzero_si128 (),
                                                   (__mmask8) __U);
 }
 
@@ -1668,7 +1701,7 @@ _mm_maskz_shufflelo_epi16 (__mmask8 __U, __m128i __A, const int __imm)
 {
   return (__m128i) __builtin_ia32_pshuflw128_mask ((__v8hi) __A, __imm,
                                                   (__v8hi)
-                                                  _mm_setzero_hi (),
+                                                  _mm_setzero_si128 (),
                                                   (__mmask8) __U);
 }
 
@@ -1806,7 +1839,7 @@ _mm_maskz_slli_epi16 (__mmask8 __U, __m128i __A, int __B)
 
 #define _mm_maskz_shufflehi_epi16(U, A, B)                                          \
   ((__m128i) __builtin_ia32_pshufhw128_mask ((__v8hi)(__m128i)(A), (int)(B),        \
-                                             (__v8hi)(__m128i)_mm_setzero_hi(),     \
+                                            (__v8hi)(__m128i)_mm_setzero_si128 (), \
                                              (__mmask8)(U)))
 
 #define _mm256_mask_shufflelo_epi16(W, U, A, B)                                     \
@@ -1826,7 +1859,7 @@ _mm_maskz_slli_epi16 (__mmask8 __U, __m128i __A, int __B)
 
 #define _mm_maskz_shufflelo_epi16(U, A, B)                                          \
   ((__m128i) __builtin_ia32_pshuflw128_mask ((__v8hi)(__m128i)(A), (int)(B),        \
-                                             (__v8hi)(__m128i)_mm_setzero_hi(),     \
+                                            (__v8hi)(__m128i)_mm_setzero_si128 (), \
                                              (__mmask8)(U)))
 
 #define _mm256_maskz_alignr_epi8(U, X, Y, N)                                       \
@@ -1843,7 +1876,7 @@ _mm_maskz_slli_epi16 (__mmask8 __U, __m128i __A, int __B)
 #define _mm_maskz_alignr_epi8(U, X, Y, N)                                          \
   ((__m128i) __builtin_ia32_palignr128_mask ((__v2di)(__m128i)(X),                 \
                                            (__v2di)(__m128i)(Y), (int)(N * 8),     \
-                                           (__v2di)(__m128i)_mm_setzero_di(),      \
+                                           (__v2di)(__m128i)_mm_setzero_si128 (),  \
                                            (__mmask16)(U)))
 
 #define _mm_mask_slli_epi16(W, U, X, C)                                          \
@@ -1853,7 +1886,7 @@ _mm_maskz_slli_epi16 (__mmask8 __U, __m128i __A, int __B)
 
 #define _mm_maskz_slli_epi16(U, X, C)                                    \
   ((__m128i)__builtin_ia32_psllwi128_mask ((__v8hi)(__m128i)(X), (int)(C),\
-    (__v8hi)(__m128i)_mm_setzero_hi(),\
+    (__v8hi)(__m128i)_mm_setzero_si128 (),\
     (__mmask8)(U)))
 
 #define _mm256_dbsad_epu8(X, Y, C)                                                  \
@@ -1965,7 +1998,7 @@ _mm_maskz_slli_epi16 (__mmask8 __U, __m128i __A, int __B)
 #define _mm_mask_cmp_epi16_mask(M, X, Y, P)                            \
   ((__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi)(__m128i)(X),       \
                                            (__v8hi)(__m128i)(Y), (int)(P),\
-                                           (__mmask16)(M)))
+                                           (__mmask8)(M)))
 
 #define _mm_mask_cmp_epi8_mask(M, X, Y, P)                             \
   ((__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi)(__m128i)(X),     \
@@ -2009,7 +2042,7 @@ _mm256_cmpneq_epi8_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
                                                  (__v32qi) __Y, 4,
-                                                 (__mmask32) - 1);
+                                                 (__mmask32) -1);
 }
 
 extern __inline __mmask32
@@ -2018,7 +2051,7 @@ _mm256_cmplt_epi8_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
                                                  (__v32qi) __Y, 1,
-                                                 (__mmask32) - 1);
+                                                 (__mmask32) -1);
 }
 
 extern __inline __mmask32
@@ -2027,7 +2060,7 @@ _mm256_cmpge_epi8_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
                                                  (__v32qi) __Y, 5,
-                                                 (__mmask32) - 1);
+                                                 (__mmask32) -1);
 }
 
 extern __inline __mmask32
@@ -2036,7 +2069,7 @@ _mm256_cmple_epi8_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
                                                  (__v32qi) __Y, 2,
-                                                 (__mmask32) - 1);
+                                                 (__mmask32) -1);
 }
 
 extern __inline __mmask16
@@ -2045,7 +2078,7 @@ _mm256_cmpneq_epi16_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
                                                  (__v16hi) __Y, 4,
-                                                 (__mmask16) - 1);
+                                                 (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2054,7 +2087,7 @@ _mm256_cmplt_epi16_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
                                                  (__v16hi) __Y, 1,
-                                                 (__mmask16) - 1);
+                                                 (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2063,7 +2096,7 @@ _mm256_cmpge_epi16_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
                                                  (__v16hi) __Y, 5,
-                                                 (__mmask16) - 1);
+                                                 (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2072,7 +2105,7 @@ _mm256_cmple_epi16_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
                                                  (__v16hi) __Y, 2,
-                                                 (__mmask16) - 1);
+                                                 (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2081,7 +2114,7 @@ _mm_cmpneq_epu8_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
                                                   (__v16qi) __Y, 4,
-                                                  (__mmask16) - 1);
+                                                  (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2090,7 +2123,7 @@ _mm_cmplt_epu8_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
                                                   (__v16qi) __Y, 1,
-                                                  (__mmask16) - 1);
+                                                  (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2099,7 +2132,7 @@ _mm_cmpge_epu8_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
                                                   (__v16qi) __Y, 5,
-                                                  (__mmask16) - 1);
+                                                  (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2108,7 +2141,7 @@ _mm_cmple_epu8_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask16) __builtin_ia32_ucmpb128_mask ((__v16qi) __X,
                                                   (__v16qi) __Y, 2,
-                                                  (__mmask16) - 1);
+                                                  (__mmask16) -1);
 }
 
 extern __inline __mmask8
@@ -2117,7 +2150,7 @@ _mm_cmpneq_epu16_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
                                                  (__v8hi) __Y, 4,
-                                                 (__mmask8) - 1);
+                                                 (__mmask8) -1);
 }
 
 extern __inline __mmask8
@@ -2126,7 +2159,7 @@ _mm_cmplt_epu16_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
                                                  (__v8hi) __Y, 1,
-                                                 (__mmask8) - 1);
+                                                 (__mmask8) -1);
 }
 
 extern __inline __mmask8
@@ -2135,7 +2168,7 @@ _mm_cmpge_epu16_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
                                                  (__v8hi) __Y, 5,
-                                                 (__mmask8) - 1);
+                                                 (__mmask8) -1);
 }
 
 extern __inline __mmask8
@@ -2144,7 +2177,7 @@ _mm_cmple_epu16_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask8) __builtin_ia32_ucmpw128_mask ((__v8hi) __X,
                                                  (__v8hi) __Y, 2,
-                                                 (__mmask8) - 1);
+                                                 (__mmask8) -1);
 }
 
 extern __inline __mmask16
@@ -2153,7 +2186,7 @@ _mm_cmpneq_epi8_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
                                                  (__v16qi) __Y, 4,
-                                                 (__mmask16) - 1);
+                                                 (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2162,7 +2195,7 @@ _mm_cmplt_epi8_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
                                                  (__v16qi) __Y, 1,
-                                                 (__mmask16) - 1);
+                                                 (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2171,7 +2204,7 @@ _mm_cmpge_epi8_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
                                                  (__v16qi) __Y, 5,
-                                                 (__mmask16) - 1);
+                                                 (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -2180,7 +2213,7 @@ _mm_cmple_epi8_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask16) __builtin_ia32_cmpb128_mask ((__v16qi) __X,
                                                  (__v16qi) __Y, 2,
-                                                 (__mmask16) - 1);
+                                                 (__mmask16) -1);
 }
 
 extern __inline __mmask8
@@ -2189,7 +2222,7 @@ _mm_cmpneq_epi16_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
                                                 (__v8hi) __Y, 4,
-                                                (__mmask8) - 1);
+                                                (__mmask8) -1);
 }
 
 extern __inline __mmask8
@@ -2198,7 +2231,7 @@ _mm_cmplt_epi16_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
                                                 (__v8hi) __Y, 1,
-                                                (__mmask8) - 1);
+                                                (__mmask8) -1);
 }
 
 extern __inline __mmask8
@@ -2207,7 +2240,7 @@ _mm_cmpge_epi16_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
                                                 (__v8hi) __Y, 5,
-                                                (__mmask8) - 1);
+                                                (__mmask8) -1);
 }
 
 extern __inline __mmask8
@@ -2216,7 +2249,7 @@ _mm_cmple_epi16_mask (__m128i __X, __m128i __Y)
 {
   return (__mmask8) __builtin_ia32_cmpw128_mask ((__v8hi) __X,
                                                 (__v8hi) __Y, 2,
-                                                (__mmask8) - 1);
+                                                (__mmask8) -1);
 }
 
 extern __inline __m256i
@@ -2303,7 +2336,7 @@ _mm_maskz_mulhi_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pmulhw128_mask ((__v8hi) __A,
                                                  (__v8hi) __B,
                                                  (__v8hi)
-                                                 _mm_setzero_hi (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask8) __U);
 }
 
@@ -2325,7 +2358,7 @@ _mm_maskz_mulhi_epu16 (__mmask8 __U, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pmulhuw128_mask ((__v8hi) __A,
                                                   (__v8hi) __B,
                                                   (__v8hi)
-                                                  _mm_setzero_hi (),
+                                                  _mm_setzero_si128 (),
                                                   (__mmask8) __U);
 }
 
@@ -2347,7 +2380,7 @@ _mm_maskz_mulhrs_epi16 (__mmask8 __U, __m128i __X, __m128i __Y)
   return (__m128i) __builtin_ia32_pmulhrsw128_mask ((__v8hi) __X,
                                                    (__v8hi) __Y,
                                                    (__v8hi)
-                                                   _mm_setzero_hi (),
+                                                   _mm_setzero_si128 (),
                                                    (__mmask8) __U);
 }
 
@@ -2391,13 +2424,13 @@ _mm_maskz_mullo_epi16 (__mmask8 __U, __m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_pmullw128_mask ((__v8hi) __A,
                                                  (__v8hi) __B,
                                                  (__v8hi)
-                                                 _mm_setzero_hi (),
+                                                 _mm_setzero_si128 (),
                                                  (__mmask8) __U);
 }
 
 extern __inline __m256i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepi8_epi16 (__m256i __W, __mmask32 __U, __m128i __A)
+_mm256_mask_cvtepi8_epi16 (__m256i __W, __mmask16 __U, __m128i __A)
 {
   return (__m256i) __builtin_ia32_pmovsxbw256_mask ((__v16qi) __A,
                                                    (__v16hi) __W,
@@ -2416,7 +2449,7 @@ _mm256_maskz_cvtepi8_epi16 (__mmask16 __U, __m128i __A)
 
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepi8_epi16 (__m128i __W, __mmask32 __U, __m128i __A)
+_mm_mask_cvtepi8_epi16 (__m128i __W, __mmask8 __U, __m128i __A)
 {
   return (__m128i) __builtin_ia32_pmovsxbw128_mask ((__v16qi) __A,
                                                    (__v8hi) __W,
@@ -2435,7 +2468,7 @@ _mm_maskz_cvtepi8_epi16 (__mmask8 __U, __m128i __A)
 
 extern __inline __m256i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cvtepu8_epi16 (__m256i __W, __mmask32 __U, __m128i __A)
+_mm256_mask_cvtepu8_epi16 (__m256i __W, __mmask16 __U, __m128i __A)
 {
   return (__m256i) __builtin_ia32_pmovzxbw256_mask ((__v16qi) __A,
                                                    (__v16hi) __W,
@@ -2454,7 +2487,7 @@ _mm256_maskz_cvtepu8_epi16 (__mmask16 __U, __m128i __A)
 
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_cvtepu8_epi16 (__m128i __W, __mmask32 __U, __m128i __A)
+_mm_mask_cvtepu8_epi16 (__m128i __W, __mmask8 __U, __m128i __A)
 {
   return (__m128i) __builtin_ia32_pmovzxbw128_mask ((__v16qi) __A,
                                                    (__v8hi) __W,
@@ -3609,7 +3642,7 @@ _mm256_cmpneq_epu8_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
                                                   (__v32qi) __Y, 4,
-                                                  (__mmask32) - 1);
+                                                  (__mmask32) -1);
 }
 
 extern __inline __mmask32
@@ -3618,7 +3651,7 @@ _mm256_cmplt_epu8_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
                                                   (__v32qi) __Y, 1,
-                                                  (__mmask32) - 1);
+                                                  (__mmask32) -1);
 }
 
 extern __inline __mmask32
@@ -3627,7 +3660,7 @@ _mm256_cmpge_epu8_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
                                                   (__v32qi) __Y, 5,
-                                                  (__mmask32) - 1);
+                                                  (__mmask32) -1);
 }
 
 extern __inline __mmask32
@@ -3636,7 +3669,7 @@ _mm256_cmple_epu8_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
                                                   (__v32qi) __Y, 2,
-                                                  (__mmask32) - 1);
+                                                  (__mmask32) -1);
 }
 
 extern __inline __mmask16
@@ -3645,7 +3678,7 @@ _mm256_cmpneq_epu16_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
                                                   (__v16hi) __Y, 4,
-                                                  (__mmask16) - 1);
+                                                  (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -3654,7 +3687,7 @@ _mm256_cmplt_epu16_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
                                                   (__v16hi) __Y, 1,
-                                                  (__mmask16) - 1);
+                                                  (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -3663,7 +3696,7 @@ _mm256_cmpge_epu16_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
                                                   (__v16hi) __Y, 5,
-                                                  (__mmask16) - 1);
+                                                  (__mmask16) -1);
 }
 
 extern __inline __mmask16
@@ -3672,14 +3705,14 @@ _mm256_cmple_epu16_mask (__m256i __X, __m256i __Y)
 {
   return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
                                                   (__v16hi) __Y, 2,
-                                                  (__mmask16) - 1);
+                                                  (__mmask16) -1);
 }
 
 extern __inline void
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_mask_storeu_epi16 (void *__P, __mmask16 __U, __m256i __A)
 {
-  __builtin_ia32_storedquhi256_mask ((__v16hi *) __P,
+  __builtin_ia32_storedquhi256_mask ((short *) __P,
                                     (__v16hi) __A,
                                     (__mmask16) __U);
 }
@@ -3688,7 +3721,7 @@ extern __inline void
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_mask_storeu_epi16 (void *__P, __mmask8 __U, __m128i __A)
 {
-  __builtin_ia32_storedquhi128_mask ((__v8hi *) __P,
+  __builtin_ia32_storedquhi128_mask ((short *) __P,
                                     (__v8hi) __A,
                                     (__mmask8) __U);
 }
@@ -4011,6 +4044,13 @@ _mm_cvtepi16_epi8 (__m128i __A)
                                                  (__mmask8) -1);
 }
 
+extern __inline void
+__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
+_mm_mask_cvtepi16_storeu_epi8 (void * __P, __mmask8 __M,__m128i __A)
+{
+  __builtin_ia32_pmovwb128mem_mask ((__v8qi *) __P , (__v8hi) __A, __M);
+}
+
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_mask_cvtepi16_epi8 (__m128i __O, __mmask8 __M, __m128i __A)
@@ -4069,7 +4109,7 @@ _mm_srav_epi16 (__m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_psrav8hi_mask ((__v8hi) __A,
                                                 (__v8hi) __B,
                                                 (__v8hi)
-                                                _mm_setzero_hi (),
+                                                _mm_setzero_si128 (),
                                                 (__mmask8) -1);
 }
 
@@ -4135,7 +4175,7 @@ _mm_srlv_epi16 (__m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_psrlv8hi_mask ((__v8hi) __A,
                                                 (__v8hi) __B,
                                                 (__v8hi)
-                                                _mm_setzero_hi (),
+                                                _mm_setzero_si128 (),
                                                 (__mmask8) -1);
 }
 
@@ -4201,7 +4241,7 @@ _mm_sllv_epi16 (__m128i __A, __m128i __B)
   return (__m128i) __builtin_ia32_psllv8hi_mask ((__v8hi) __A,
                                                 (__v8hi) __B,
                                                 (__v8hi)
-                                                _mm_setzero_hi (),
+                                                _mm_setzero_si128 (),
                                                 (__mmask8) -1);
 }
 
@@ -4306,7 +4346,7 @@ _mm_maskz_packus_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
 
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_packus_epi32 (__m128i __W, __mmask16 __M, __m128i __A,
+_mm_mask_packus_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
                       __m128i __B)
 {
   return (__m128i) __builtin_ia32_packusdw128_mask ((__v4si) __A,
@@ -4349,7 +4389,7 @@ _mm_maskz_packs_epi32 (__mmask8 __M, __m128i __A, __m128i __B)
 
 extern __inline __m128i
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_mask_packs_epi32 (__m128i __W, __mmask16 __M, __m128i __A,
+_mm_mask_packs_epi32 (__m128i __W, __mmask8 __M, __m128i __A,
                      __m128i __B)
 {
   return (__m128i) __builtin_ia32_packssdw128_mask ((__v4si) __A,
@@ -4501,148 +4541,148 @@ _mm_mask_cmple_epi16_mask (__mmask8 __M, __m128i __X, __m128i __Y)
                                                 (__mmask8) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epu8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmpneq_epu8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
-                                                 (__v32qi) __Y, 4,
-                                                 (__mmask8) __M);
+  return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
+                                                  (__v32qi) __Y, 4,
+                                                  (__mmask32) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epu8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmplt_epu8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
-                                                 (__v32qi) __Y, 1,
-                                                 (__mmask8) __M);
+  return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
+                                                  (__v32qi) __Y, 1,
+                                                  (__mmask32) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epu8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmpge_epu8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
-                                                 (__v32qi) __Y, 5,
-                                                 (__mmask8) __M);
+  return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
+                                                  (__v32qi) __Y, 5,
+                                                  (__mmask32) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epu8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmple_epu8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
-                                                 (__v32qi) __Y, 2,
-                                                 (__mmask8) __M);
+  return (__mmask32) __builtin_ia32_ucmpb256_mask ((__v32qi) __X,
+                                                  (__v32qi) __Y, 2,
+                                                  (__mmask32) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epu16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmpneq_epu16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
-                                                 (__v16hi) __Y, 4,
-                                                 (__mmask8) __M);
+  return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
+                                                  (__v16hi) __Y, 4,
+                                                  (__mmask16) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epu16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmplt_epu16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
-                                                 (__v16hi) __Y, 1,
-                                                 (__mmask8) __M);
+  return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
+                                                  (__v16hi) __Y, 1,
+                                                  (__mmask16) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epu16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmpge_epu16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
-                                                 (__v16hi) __Y, 5,
-                                                 (__mmask8) __M);
+  return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
+                                                  (__v16hi) __Y, 5,
+                                                  (__mmask16) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epu16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmple_epu16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
-                                                 (__v16hi) __Y, 2,
-                                                 (__mmask8) __M);
+  return (__mmask16) __builtin_ia32_ucmpw256_mask ((__v16hi) __X,
+                                                  (__v16hi) __Y, 2,
+                                                  (__mmask16) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epi8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmpneq_epi8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
-                                                (__v32qi) __Y, 4,
-                                                (__mmask8) __M);
+  return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
+                                                 (__v32qi) __Y, 4,
+                                                 (__mmask32) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epi8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmplt_epi8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
-                                                (__v32qi) __Y, 1,
-                                                (__mmask8) __M);
+  return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
+                                                 (__v32qi) __Y, 1,
+                                                 (__mmask32) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epi8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmpge_epi8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
-                                                (__v32qi) __Y, 5,
-                                                (__mmask8) __M);
+  return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
+                                                 (__v32qi) __Y, 5,
+                                                 (__mmask32) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask32
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epi8_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmple_epi8_mask (__mmask32 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
-                                                (__v32qi) __Y, 2,
-                                                (__mmask8) __M);
+  return (__mmask32) __builtin_ia32_cmpb256_mask ((__v32qi) __X,
+                                                 (__v32qi) __Y, 2,
+                                                 (__mmask32) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpneq_epi16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmpneq_epi16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
-                                                (__v16hi) __Y, 4,
-                                                (__mmask8) __M);
+  return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
+                                                 (__v16hi) __Y, 4,
+                                                 (__mmask16) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmplt_epi16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmplt_epi16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
-                                                (__v16hi) __Y, 1,
-                                                (__mmask8) __M);
+  return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
+                                                 (__v16hi) __Y, 1,
+                                                 (__mmask16) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmpge_epi16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmpge_epi16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
-                                                (__v16hi) __Y, 5,
-                                                (__mmask8) __M);
+  return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
+                                                 (__v16hi) __Y, 5,
+                                                 (__mmask16) __M);
 }
 
-extern __inline __mmask8
+extern __inline __mmask16
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_cmple_epi16_mask (__mmask8 __M, __m256i __X, __m256i __Y)
+_mm256_mask_cmple_epi16_mask (__mmask16 __M, __m256i __X, __m256i __Y)
 {
-  return (__mmask8) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
-                                                (__v16hi) __Y, 2,
-                                                (__mmask8) __M);
+  return (__mmask16) __builtin_ia32_cmpw256_mask ((__v16hi) __X,
+                                                 (__v16hi) __Y, 2,
+                                                 (__mmask16) __M);
 }
 
 #ifdef __DISABLE_AVX512VLBW__