OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.c-torture/] [execute/] [pr40657.c] - Blame information for rev 688

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 688 jeremybenn
/* Verify that that Thumb-1 epilogue size optimization does not clobber the
2
   return value.  */
3
 
4
long long v = 0x123456789abc;
5
 
6
__attribute__((noinline)) void bar (int *x)
7
{
8
  asm volatile ("" : "=m" (x) ::);
9
}
10
 
11
__attribute__((noinline)) long long foo()
12
{
13
  int x;
14
  bar(&x);
15
  return v;
16
}
17
 
18
int main ()
19
{
20
  if (foo () != v)
21
    abort ();
22
  exit (0);
23
}

powered by: WebSVN 2.1.0

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