PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gcc.target / i386 / vect-rebuild.c
blob570967f6b5c8b8c2fe4609a815d46652e1f64ee4
1 /* { dg-do compile } */
2 /* { dg-options "-O -mavx -fno-tree-forwprop" } */
4 typedef double v2df __attribute__ ((__vector_size__ (16)));
5 typedef double v4df __attribute__ ((__vector_size__ (32)));
7 v2df f1 (v2df x)
9 v2df xx = { x[0], x[1] };
10 return xx;
13 v4df f2 (v4df x)
15 v4df xx = { x[0], x[1], x[2], x[3] };
16 return xx;
19 v2df g (v2df x)
21 v2df xx = { x[1], x[0] };
22 return xx;
25 v2df h (v4df x)
27 v2df xx = { x[2], x[3] };
28 return xx;
31 /* { dg-final { scan-assembler-not "unpck" } } */
32 /* { dg-final { scan-assembler-times "\tv?permilpd\[ \t\]" 1 } } */
33 /* { dg-final { scan-assembler-times "\tv?extractf128\[ \t\]" 1 } } */