https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65744

            Bug ID: 65744
           Summary: Some AVX512 instrinsics take __mmask16 instead of
                    __mmask8
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: glisse at gcc dot gnu.org
            Target: x86_64-linux-gnu

Compiling with -Wsystem-headers, I got the following warnings, which seem to
point at a few mistakes (the intrinsic prototypes don't quite match Intel's
documentation). I don't believe it can cause any problem, but we should still
fix it.

usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/5.0.0/include/avx512vlintrin.h:
In function '__m128i _mm_mask_mullo_epi32(__m128i, __mmask16, __m128i,
__m128i)':
/usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/5.0.0/include/avx512vlintrin.h:9050:26:
warning: conversion to 'char' from '__mmask16 {aka short unsigned int}' may
alter its value [-Wconversion]
         (__v4si) __W, __M);
                          ^

/usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/5.0.0/include/avx512vlbwintrin.h:
In function '__m128i _mm_mask_packus_epi32(__m128i, __mmask16, __m128i,
__m128i)':
/usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/5.0.0/include/avx512vlbwintrin.h:4314:28:
warning: conversion to 'char' from '__mmask16 {aka short unsigned int}' may
alter its value [-Wconversion]
           (__v8hi) __W, __M);
                            ^
/usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/5.0.0/include/avx512vlbwintrin.h:
In function '__m128i _mm_mask_packs_epi32(__m128i, __mmask16, __m128i,
__m128i)':
/usr/lib/gcc-snapshot/lib/gcc/x86_64-linux-gnu/5.0.0/include/avx512vlbwintrin.h:4357:28:
warning: conversion to 'char' from '__mmask16 {aka short unsigned int}' may
alter its value [-Wconversion]
           (__v8hi) __W, __M);
                            ^

Reply via email to