1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -march=skylake-avx512 -mprefer-vector-width=512" } */
       3  
       4  typedef int v16si __attribute__((vector_size (64)));
       5  typedef long long v8di __attribute__((vector_size (64)));
       6  
       7  void
       8  bar_s32_s64 (v8di * dst, v16si src)
       9  {
      10    long long tem[8];
      11    tem[0] = src[0];
      12    tem[1] = src[1];
      13    tem[2] = src[2];
      14    tem[3] = src[3];
      15    tem[4] = src[4];
      16    tem[5] = src[5];
      17    tem[6] = src[6];
      18    tem[7] = src[7];
      19    dst[0] = *(v8di *) tem;
      20  }
      21  
      22  /* We want to generate
      23          vpmovsxdq       %ymm0, %zmm0
      24          vmovdqa64       %zmm0, (%rdi)
      25          ret
      26   */
      27  /* { dg-final { scan-assembler "vpmovsxdq" } } */