2 /* { dg-options "-O2 -mavx512f" } */
3 /* { dg-require-effective-target avx512f } */
5 #include "avx512f-check.h"
8 __attribute__ ((noinline
))
14 return _mm512_set_pd (x
, 0, 0, 0, 0, 0, 0, 0);
16 return _mm512_set_pd (0, x
, 0, 0, 0, 0, 0, 0);
18 return _mm512_set_pd (0, 0, x
, 0, 0, 0, 0, 0);
20 return _mm512_set_pd (0, 0, 0, x
, 0, 0, 0, 0);
22 return _mm512_set_pd (0, 0, 0, 0, x
, 0, 0, 0);
24 return _mm512_set_pd (0, 0, 0, 0, 0, x
, 0, 0);
26 return _mm512_set_pd (0, 0, 0, 0, 0, 0, x
, 0);
28 return _mm512_set_pd (0, 0, 0, 0, 0, 0, 0, x
);
35 __attribute__ ((noinline
))
36 foo_r (double x
, int i
)
41 return _mm512_setr_pd (x
, 0, 0, 0, 0, 0, 0, 0);
43 return _mm512_setr_pd (0, x
, 0, 0, 0, 0, 0, 0);
45 return _mm512_setr_pd (0, 0, x
, 0, 0, 0, 0, 0);
47 return _mm512_setr_pd (0, 0, 0, x
, 0, 0, 0, 0);
49 return _mm512_setr_pd (0, 0, 0, 0, x
, 0, 0, 0);
51 return _mm512_setr_pd (0, 0, 0, 0, 0, x
, 0, 0);
53 return _mm512_setr_pd (0, 0, 0, 0, 0, 0, x
, 0);
55 return _mm512_setr_pd (0, 0, 0, 0, 0, 0, 0, x
);
69 for (i
= 0; i
< 8; i
++)
71 for (j
= 0; j
< 8; j
++)
77 if (check_union512d (res
, v
))
80 res
.x
= _mm512_setzero_pd ();
84 if (check_union512d (res
, v
))