1 /* { dg-do compile } */
2 /* { dg-options "-mavx512f -O2" } */
3 /* { dg-final { scan-assembler-times "(?:vpcmpeqd\[ \\t\]+|vpcmpd\[ \\t\]+\\\$0)\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*%k\[0-7\](?:\n|\[ \\t\]+#)" 1 } } */
4 /* { dg-final { scan-assembler-times "(?:vpcmpeqd\[ \\t\]+|vpcmpd\[ \\t\]+\\\$0)\[^\{\n\]*%zmm\[0-9\]+\[^\n^k\]*%k\[0-7\]\{%k\[0-7\]\}(?:\n|\[ \\t\]+#)" 1 } } */
5
6 #include <immintrin.h>
7
8 volatile __m512i x;
9 volatile __mmask16 m;
10
11 void extern
12 avx512f_test (void)
13 {
14 m = _mm512_cmpeq_epi32_mask (x, x);
15 m = _mm512_mask_cmpeq_epi32_mask (3, x, x);
16 }