1 /* { dg-require-effective-target vect_int } */
2 /* { dg-additional-options "-fdump-tree-optimized-details-blocks" } */
10 /* Check handling of accesses for which the "initial condition" -
11 the expression that represents the first location accessed - is
12 more involved than just an ssa_name. */
14 int ib
[N
+OFF
] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__
))) = {0, 1, 3, 5, 7, 11, 13, 17};
15 int ic
[N
+OFF
] = {0, 1, 3, 5, 7, 11, 13, 17};
17 __attribute__ ((noinline
))
22 for (i
= OFF
; i
< N
+OFF
; i
++)
24 ib
[i
] = ib
[i
%8]*(i
/8);
25 ic
[i
] = ic
[i
%8]*(i
/8);
26 asm volatile ("" ::: "memory");
29 for (i
= OFF
; i
< N
; i
++)
37 for (i
= OFF
; i
< N
; i
++)
39 if (ia
[i
] != pib
[i
- OFF
])
43 for (i
= 0; i
< N
; i
++)
51 for (i
= 0; i
< N
; i
++)
53 if (ia
[i
] != pib
[i
- OFF
])
57 for (i
= OFF
; i
< N
; i
++)
65 for (i
= OFF
; i
< N
; i
++)
67 if (ia
[i
] != ic
[i
- OFF
])
83 /* { dg-final { scan-tree-dump-times "vectorized 3 loops" 1 "vect" } } */
84 /* { dg-final { scan-tree-dump-not "Invalid sum" "optimized" } } */