#define N 1500

int x[N][N], y[N];

void abort (void);

int foo(void)
{
  int i, j;

  for (i = 0; i < N; i++)
    y[i] = i;

  for (i = 0; i < N; i++)
    for (j = 0; j < N; j++)
      x[i][j] = i + j;

  for (i = 0; i < N; i++)
    {
      y[i] = i;

      for (j = 0; j < N; j++)
	{
	  if (j > 500)
	    {
	      x[i][j] = i + j + 3;
	      y[j] = i*j + 10;
	    }
	  else
	    x[i][j] = x[i][j]*3;
	}
    }

  return x[2][5]*y[8];
}

int main(void)
{
  if (168 != foo())
    abort ();

  return 0;
}

/* Check that parallel code generation part make the right answer.  */
/* { dg-final { scan-tree-dump-times "5 loops carried no dependency" 1 "graphite" } } */
/* { dg-final { scan-tree-dump-times "loopfn.0" 4 "optimized" } } */
/* { dg-final { scan-tree-dump-times "loopfn.1" 4 "optimized" } } */
