URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Subversion Repositories openrisc_me
[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [gcc.target/] [i386/] [pr40718.c] - Rev 318
Compare with Previous | Blame | View Log
/* { dg-do run } */ /* { dg-require-effective-target ilp32 } */ /* { dg-options "-O1 -foptimize-sibling-calls" } */ void abort (void); struct S { void (__attribute__((__stdcall__)) *f) (struct S *); int i; }; void __attribute__((__stdcall__)) foo (struct S *s) { s->i++; } void __attribute__((__stdcall__)) bar (struct S *s) { foo(s); s->f(s); } int main (void) { struct S s = { foo, 0 }; bar (&s); if (s.i != 2) abort (); return 0; }