libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / torture / pr112736.c
blob6abb56edba31da3265cd2540185b5000591557de
1 /* { dg-do run { target *-*-linux* *-*-gnu* *-*-uclinux* } } */
3 #include <sys/mman.h>
4 #include <unistd.h>
6 int a, c[3][5];
8 void __attribute__((noipa))
9 fn1 (int * __restrict b)
11 int e;
12 for (a = 2; a >= 0; a--)
13 for (e = 0; e < 4; e++)
14 c[a][e] = b[a];
17 int main()
19 long pgsz = sysconf (_SC_PAGESIZE);
20 void *p = mmap (NULL, pgsz * 2, PROT_READ|PROT_WRITE,
21 MAP_ANONYMOUS|MAP_PRIVATE, 0, 0);
22 if (p == MAP_FAILED)
23 return 0;
24 mprotect (p, pgsz, PROT_NONE);
25 fn1 (p + pgsz);
26 return 0;