3 /* { dg-options "-O2 -mavx -mno-accumulate-outgoing-args" } */
4 /* { dg-require-effective-target avx } */
6 #define CHECK_H "avx-check.h"
11 typedef double V
__attribute__ ((vector_size (32)));
13 __attribute__((noinline
, noclone
)) V
14 foo (double *x
, unsigned *y
)
16 V r
= { x
[y
[0]], x
[y
[1]], x
[y
[2]], x
[y
[3]] };
24 unsigned b
[4] = { 5, 0, 15, 7 };
26 for (i
= 0; i
< 16; i
++)
29 if (v
[0] != 5.5 || v
[1] != 0.5 || v
[2] != 15.5 || v
[3] != 7.5)