rt_gccstream/gcc/testsuite/gcc.dg/tree-ssa/tailcall-3.c

29 lines
416 B
C

/* The return argument needs a type conversion which on some targets
(e.g. s390) needs additional code. So it is invalid to do tail
call optimization here. */
/* { dg-do compile } */
/* { dg-options "-O2" } */
extern void abort (void);
long long __attribute__((noinline))
foo ()
{
return 3;
}
int __attribute__((noinline))
boo ()
{
return foo ();
}
int
main ()
{
if (boo () != 3)
abort ();
}