/* { dg-do compile { target { ! ia32 } } } */ /* { dg-options "-mavx512f -O2" } */ /* { dg-final { scan-assembler-times {(?n)vmovd[ \t]+} 3 } } */ /* { dg-final { scan-assembler-not {(?n)movq[ \t]+} } } */ #include __m128i foo1 (int* p) { return _mm_set_epi64x (0, (unsigned int) ((*(__m32_u *)p)[0])); } __m256i foo3 (int* p) { return _mm256_set_epi64x (0, 0, 0, (unsigned int) ((*(__m32_u *)p)[0])); } __m512i foo5 (int* p) { return _mm512_set_epi64 (0, 0, 0, 0, 0, 0, 0, (unsigned int) ((*(__m32_u *)p)[0])); }