1/* This testcase failed on IA-64 at -O2 during scheduling.  */
2
3void * baz (unsigned long);
4static inline double **
5bar (long w, long x, long y, long z)
6{
7  long i, a = x - w + 1, b = z - y + 1;
8  double **m = (double **) baz (sizeof (double *) * (a + 1));
9
10  m += 1;
11  m -= w;
12  m[w] = (double *) baz (sizeof (double) * (a * b + 1));
13  m[w] += 1;
14  m[w] -= y;
15  for (i = w + 1; i <= x; i++)
16    m[i] = m[i - 1] + b;
17  return m;
18}
19
20void
21foo (double w[], int x, double y[], double z[])
22{
23  int i;
24  double **a;
25
26  a = bar (1, 50, 1, 50);
27  for (i = 1; i <= x; i++)
28    a[1][i] = - w[x - i] / w[x];
29}
30