2 /* { dg-options "-O2 -mavx512f" } */
3 /* { dg-require-effective-target avx512f } */
5 #include "avx512f-check.h"
8 __attribute__ ((noinline
))
14 return _mm512_set_ps (x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
16 return _mm512_set_ps (1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
18 return _mm512_set_ps (1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
20 return _mm512_set_ps (1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
22 return _mm512_set_ps (1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
24 return _mm512_set_ps (1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
26 return _mm512_set_ps (1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1);
28 return _mm512_set_ps (1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1);
30 return _mm512_set_ps (1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1);
32 return _mm512_set_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1);
34 return _mm512_set_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1);
36 return _mm512_set_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1);
38 return _mm512_set_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1);
40 return _mm512_set_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1);
42 return _mm512_set_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1);
44 return _mm512_set_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
);
51 __attribute__ ((noinline
))
52 foo_r (float x
, int i
)
57 return _mm512_setr_ps (x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
59 return _mm512_setr_ps (1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
61 return _mm512_setr_ps (1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
63 return _mm512_setr_ps (1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
65 return _mm512_setr_ps (1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
67 return _mm512_setr_ps (1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1);
69 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1, 1);
71 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1, 1);
73 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1, 1);
75 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1, 1);
77 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1, 1);
79 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1, 1);
81 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1, 1);
83 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1, 1);
85 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
, 1);
87 return _mm512_setr_ps (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, x
);
101 for (i
= 0; i
< 16; i
++)
103 for (j
= 0; j
< 16; j
++)
109 if (check_union512 (res
, v
))
112 res
.x
= _mm512_setzero_ps ();
114 res
.x
= foo_r (e
, i
);
116 if (check_union512 (res
, v
))