2 /* { dg-options "-O2 -mavx512bw" } */
3 /* { dg-require-effective-target avx512bw } */
6 #include "avx512f-helper.h"
8 #define SIZE (AVX512F_LEN / 16)
9 #include "avx512f-mask-type.h"
12 CALC (MASK_TYPE
*r
, unsigned short *s1
, unsigned short *s2
)
18 for (i
= 0; i
< SIZE
; i
++)
27 UNION_TYPE (AVX512F_LEN
, i_w
) src1
, src2
;
28 MASK_TYPE res_ref
, res1
, res2
;
29 MASK_TYPE mask
= MASK_VALUE
;
31 for (i
= 0; i
< SIZE
/ 2; i
++)
34 src1
.a
[i
* 2 + 1] = i
* i
;
35 src2
.a
[i
* 2] = 2 * i
;
36 src2
.a
[i
* 2 + 1] = i
* i
;
39 res1
= INTRINSIC (_cmpgt_epu16_mask
) (src1
.x
, src2
.x
);
40 res2
= INTRINSIC (_mask_cmpgt_epu16_mask
) (mask
, src1
.x
, src2
.x
);
42 CALC (&res_ref
, src1
.a
, src2
.a
);