1/* { dg-do run } */
2/* { dg-options "-mavx512f -O2" } */
3/* { dg-require-effective-target avx512f } */
4
5#include "avx512f-check.h"
6
7static void
8  __attribute__ ((noinline, unused))
9compute_vcvtusi2sd (double *s1, unsigned s2, double *r)
10{
11  r[0] = (double) s2;
12  r[1] = s1[1];
13}
14
15static void
16avx512f_test (void)
17{
18  union128d s1, res;
19  unsigned s2;
20  double res_ref[2];
21
22  s1.x = _mm_set_pd (-24.43, -43.35);
23  s2 = 0xFEDCA987;
24
25  res.x = _mm_cvtu32_sd (s1.x, s2);
26
27  compute_vcvtusi2sd (s1.a, s2, res_ref);
28
29  if (check_union128d (res, res_ref))
30    abort ();
31}
32