/* { dg-do compile } */
/* { dg-options "-mavx512vl -O2" } */
/* { dg-final { scan-assembler-times "vscatterdpd\[ \\t\]+\[^\{\n\]*ymm\[0-9\]\[^\n\]*xmm\[0-9\]\[^\n\]*{%k\[1-7\]}(?:\n|\[ \\t\]+#)" 2 } } */
/* { dg-final { scan-assembler-times "vscatterdpd\[ \\t\]+\[^\{\n\]*xmm\[0-9\]\[^\n\]*xmm\[0-9\]\[^\n\]*{%k\[1-7\]}(?:\n|\[ \\t\]+#)" 2 } } */

#include <immintrin.h>

volatile __m256d src1;
volatile __m128d src2;
volatile __m128i idx;
volatile __mmask8 m8;
double *addr;

void extern
avx512vl_test (void)
{
  _mm256_i32scatter_pd (addr, idx, src1, 8);
  _mm256_mask_i32scatter_pd (addr, m8, idx, src1, 8);

  _mm_i32scatter_pd (addr, idx, src2, 8);
  _mm_mask_i32scatter_pd (addr, m8, idx, src2, 8);
}
