summaryrefslogtreecommitdiffstats
path: root/testsuite/reloc5.c
blob: c1bc1996b4a827294969c967df7a8a379455d419 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>

int main (void)
{
  int i;

  printf ("#include <stdlib.h>\nextern char testzero[16384];\nextern int");
  for (i = 0; i < 255; ++i)
    printf (" bar%02x (int),", i);
  printf (" barff (int);\nint main (void)\n{\n  int x = 0;\n");
  for (i = 0; i < 256; ++i)
    printf ("  x = bar%02x (x);\n", i);
  printf ("  if (x != 0x7fff8000) abort ();\n");
  printf ("  for (x = 0; x < 16384; ++x)\n");
  printf ("    if (testzero[x]) abort ();\n");
  printf ("  exit (0);\n}\n\n");
  printf ("asm (\".section nonalloced,\\\"aw\\\",@nobits; testzero: .skip 16384\");\n");
}