URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.c-torture/] [execute/] [pr51323.c] - Rev 688
Compare with Previous | Blame | View Log
/* PR middle-end/51323 */ extern void abort (void); struct S { int a, b, c; }; int v; __attribute__((noinline, noclone)) void foo (int x, int y, int z) { if (x != v || y != 0 || z != 9) abort (); } static inline int baz (const struct S *p) { return p->b; } __attribute__((noinline, noclone)) void bar (int x, struct S y) { foo (baz (&y), 0, x); } int main () { struct S s; v = 3; s.a = v - 1; s.b = v; s.c = v + 1; bar (9, s); v = 17; s.a = v - 1; s.b = v; s.c = v + 1; bar (9, s); return 0; }