* config/i386/i386.c (expand_vec_perm_movs): New method matching movs
[official-gcc.git] / gcc / testsuite / gcc.target / i386 / sse2-movs.c
blob79f486cfa82f86d5df48f9876873beb52cf2e8eb
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -msse2" } */
3 /* { dg-require-effective-target sse2 } */
4 /* { dg-final { scan-assembler "movss" } } */
5 /* { dg-final { scan-assembler "movsd" } } */
6 /* { dg-final { scan-assembler-not "unpcklps" } } */
7 /* { dg-final { scan-assembler-not "shufps" } } */
8 /* { dg-final { scan-assembler-not "shufpd" } } */
10 typedef float v4sf __attribute__ ((vector_size (16)));
11 typedef double v2df __attribute__ ((vector_size (16)));
13 v4sf movss(v4sf a, v4sf b)
15 return (v4sf){b[0],a[1],a[2],a[3]};
18 v2df movsd(v2df a, v2df b)
20 return (v2df){b[0],a[1]};