aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/compile/irreducible-loop.c
blob: e4be667c829e8cbfbebd7e32c778d8c7ff18cb54 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void foo (int n, double a, double *b, double *x)
{
  int i, j;

  if(n <= 0) return;
  if (a == 0.0e0) return;

  if (a > 5.0)
    {
      i = 0;
      goto sec;
    }
  for (i = 0; i < 1024; i++)
    {
      double y = b[i];
sec:
      b[i+1] = y + 5.0;
      for (j = 0; j < n; j++)
	x[j] = x[j] + a;
    }
}