URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.c-torture/] [execute/] [pr49279.c] - Rev 849
Go to most recent revision | Compare with Previous | Blame | View Log
/* PR tree-optimization/49279 */ extern void abort (void); struct S { int a; int *__restrict p; }; __attribute__((noinline, noclone)) struct S *bar (struct S *p) { struct S *r; asm volatile ("" : "=r" (r) : "0" (p) : "memory"); return r; } __attribute__((noinline, noclone)) int foo (int *p, int *q) { struct S s, *t; s.a = 1; s.p = p; t = bar (&s); t->p = q; s.p[0] = 0; t->p[0] = 1; return s.p[0]; } int main () { int a, b; if (foo (&a, &b) != 1) abort (); return 0; }
Go to most recent revision | Compare with Previous | Blame | View Log