OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc2/] [gcc/] [testsuite/] [gcc.dg/] [tree-ssa/] [tailcall-3.c] - Diff between revs 298 and 384

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.