diff options
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c')
-rw-r--r-- | gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c new file mode 100644 index 000000000..933f265ee --- /dev/null +++ b/gcc-4.9/gcc/testsuite/gcc.target/i386/avx256-unaligned-load-2.c @@ -0,0 +1,15 @@ +/* { dg-do compile { target { ! ia32 } } } */ +/* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-load" } */ + +void +avx_test (char **cp, char **ep) +{ + int i; + char **ap = __builtin_assume_aligned (ep, 32); + for (i = 128; i > 0; i--) + *ap++ = *cp++; +} + +/* { dg-final { scan-assembler-not "(avx_loaddqu256|vmovdqu\[^\n\r]*movv32qi_internal)" } } */ +/* { dg-final { scan-assembler "(sse2_loaddqu|vmovdqu\[^\n\r]*movv16qi_internal)" } } */ +/* { dg-final { scan-assembler "vinsert.128" } } */ |