summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr81988.c
blob: dbbf436f27ba142bf39a54d956dcb1278df22319 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/* PR target/81988 */
/* Testcase by James Cowgill <jcowgill+gcc@jcowgill.uk> */

/* { dg-do assemble } */
/* { dg-require-effective-target pie } */
/* { dg-options "-O3 -fpie" } */

int c, d;

short **e;
int *a;

void foo(void)
{
  int g[64 * 35], *h = g;
  do {
    short *f = e[d];
    for (int i = 0; i < 4; i++)
      a[i] = a[i] + (h[364] + f[4] * h[64] + f[5] * h[i] + f[6] * h[i + 3 * 4] +
                     f[7] * h[i + 4]);
  } while (c);
}