1 /* { dg-do compile } */
2 /* { dg-options "-O3 -dp -mavx -mavx256-split-unaligned-load -mtune=generic" } */
3
4 #define N 1024
5
6 double a[N], b[N+3], c[N];
7
8 void
avx_test(void)9 avx_test (void)
10 {
11 int i;
12
13 for (i = 0; i < N; i++)
14 c[i] = a[i] * b[i+3];
15 }
16
17 /* { dg-final { scan-assembler-not "(avx_loadupd256|vmovupd\[^\n\r]*movv4df_internal)" } } */
18 /* { dg-final { scan-assembler "(sse2_loadupd|vmovupd\[^\n\r]*movv2df_internal)" } } */
19 /* { dg-final { scan-assembler "vinsertf128" } } */
20