2 /* { dg-do compile } */
3 /* { dg-options "-O2" } */
4 /* { dg-additional-options "-mavx -mno-avx2" { target avx } } */
6 typedef double V
__attribute__((vector_size (4 * sizeof (double))));
7 typedef long long VI
__attribute__((vector_size (4 * sizeof (long long))));
9 #if __SIZEOF_DOUBLE__ == __SIZEOF_LONG_LONG__
13 y
[0] = __builtin_shuffle (x
[0], x
[0], (VI
) { 0, 0, 0, 0 });
19 y
[0] = __builtin_shuffle (x
[0], x
[0], (VI
) { 1, 1, 1, 1 });
25 y
[0] = __builtin_shuffle (x
[0], x
[0], (VI
) { 2, 2, 2, 2 });
31 y
[0] = __builtin_shuffle (x
[0], x
[0], (VI
) { 3, 3, 3, 3 });