1 /* { dg-do compile } */
2 /* { dg-options "-O2 -ftree-loop-distribution -fdump-tree-ldist-all" } */
3
loop1(int k)4 int loop1 (int k)
5 {
6 unsigned int i;
7 int a[1000], b[1000], c[1000];
8
9 for (i = 1; i < 1000; i ++)
10 {
11 a[i] = c[i]; /* S1 */
12 b[i] = a[i-1]+1; /* S2 */
13 }
14 /* Dependences:
15 S1->S2 (flow, level 1)
16
17 One partition as A is used in both S1 and S2.
18 */
19
20 return a[1000-2] + b[1000-1] + c[1000-2];
21 }
22
23 /* { dg-final { scan-tree-dump-times "distributed: split to 2 loops" 0 "ldist" } } */
24