1 /* { dg-options "-fno-tree-scev-cprop -fgraphite-identity -O -fdump-tree-graphite-all" } */
2 
3 void bar (void);
4 
toto()5 int toto()
6 {
7   int i, j, k;
8   int a[101][100];
9   int b[100];
10 
11   for (i = 1; i < 100; i++)
12     {
13       for (j = 1; j < 100; j++)
14 	for (k = 1; k < 100; k++)
15 	  a[j][k] = a[j+1][i-1] + 2;
16 
17       b[i] = b[i-1] + 2;
18 
19       bar ();
20 
21       for (j = 1; j < 100; j++)
22 	a[j][i] = a[j+1][i-1] + 2;
23 
24       b[i] = b[i-1] + 2;
25 
26       bar ();
27 
28       for (j = 1; j < 100; j++)
29 	a[j][i] = a[j+1][i-1] + 2;
30 
31       b[i] = a[i-1][i] + 2;
32 
33       for (j = 1; j < 100; j++)
34 	a[j][i] = a[j+1][i-1] + 2;
35     }
36 
37   return a[3][5] + b[1];
38 }
39 
40 /* { dg-final { scan-tree-dump-times "number of SCoPs: 2" 1 "graphite"} } */
41