1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
3 /* { dg-require-effective-target aarch64_little_endian } */
4
5 #define vector __attribute__((vector_size(4*sizeof(float))))
6
7 vector float f(vector float a, vector float b)
8 {
9 /* This is the same as zip2 v.2d as {2, 3, 6, 7} can be converted to {1, 3}. */
10 return __builtin_shuffle (a, b, (vector int){2, 3, 6, 7});
11 }
12
13 /* { dg-final { scan-assembler-times {[ \t]*zip2[ \t]+v[0-9]+\.2d} 1 } } */