00001 void abort (void); 00002 00003 void parloop (int N) 00004 { 00005 int i, j; 00006 int x[500][500]; 00007 00008 for (i = 0; i < N; i++) 00009 for (j = 0; j < N; j++) 00010 x[i][j] = i + j + 3; 00011 00012 for (i = 0; i < N; i++) 00013 for (j = 0; j < N; j++) 00014 if (x[i][j] != i + j + 3) 00015 abort (); 00016 } 00017 00018 int main(void) 00019 { 00020 parloop(500); 00021 00022 return 0; 00023 } 00024 00025 /* Check that parallel code generation part make the right answer. */ 00026 /* { dg-final { scan-tree-dump-times "2 loops carried no dependency" 1 "graphite" } } */ 00027 /* { dg-final { cleanup-tree-dump "graphite" } } */ 00028 /* { dg-final { scan-tree-dump-times "loopfn" 5 "optimized" } } */ 00029 /* { dg-final { cleanup-tree-dump "parloops" } } */ 00030 /* { dg-final { cleanup-tree-dump "optimized" } } */