blob: 31bb4a3ad79d02d05851785466cba3fed27de9fb [file] [log] [blame]
/* { dg-do compile } */
/* { dg-options "-O2 -mabi=call0 -foptimize-sibling-calls" } */
extern int foo(int);
extern void bar(int);
int test_0(int a) {
return foo(a);
}
void test_1(int a) {
bar(a);
}
int test_2(int (*a)(void)) {
bar(0);
return a();
}
_Complex double test_3(_Complex double a, _Complex double (*b)(_Complex double, double)) {
bar(-1);
return b(a, 3.141592653589795);
}
/* { dg-final { scan-assembler-not "ret" } } */