1 /* builtin_return_address(n) with n>0 has always been troublesome. */
4 /* { dg-options "-O3 -fno-optimize-sibling-calls -mbackchain" } */
8 extern void abort (void);
10 void * __attribute__((noinline
))
13 addr1
= __builtin_return_address (2);
16 void * __attribute__((noinline
))
22 void * __attribute__((noinline
))
28 void __attribute__((noinline
))
34 asm volatile ("basr %0,0\n\t" : "=d" (addr2
));
35 /* basr is two bytes in length. */
36 if (addr2
- addr1
!= 2)