1  /* PR target/82460 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-O2 -mavx512vbmi" } */
       4  /* { dg-final { scan-assembler-not {\mvmovd} } } */
       5  
       6  #include <x86intrin.h>
       7  
       8  __m512i
       9  f1 (__m512i x, __m512i y, char *z)
      10  {
      11    return _mm512_permutex2var_epi32 (y, x, _mm512_loadu_si512 (z));
      12  }
      13  
      14  __m512i
      15  f2 (__m512i x, __m512i y, char *z)
      16  {
      17    return _mm512_permutex2var_epi32 (x, y, _mm512_loadu_si512 (z));
      18  }
      19  
      20  __m512i
      21  f3 (__m512i x, __m512i y, __m512i z)
      22  {
      23    return _mm512_permutex2var_epi8 (y, x, z);
      24  }
      25  
      26  __m512i
      27  f4 (__m512i x, __m512i y, __m512i z)
      28  {
      29    return _mm512_permutex2var_epi8 (x, y, z);
      30  }