1 /* PR middle-end/44974 */
2 /* { dg-do compile } */
3 /* { dg-options "-O -fno-optimize-sibling-calls" } */
4 
5 extern void foo (int status) __attribute__ ((__noreturn__,__noinline__));
6 extern void bar (int status) __attribute__ ((__noreturn__,__noinline__));
7 extern void _Exit (int status) __attribute__ ((__noreturn__,__noinline__));
8 
9 void
foo(int status)10 foo (int status)
11 {
12   _Exit (status);
13 }
14 
15 void
_Exit(int status)16 _Exit (int status)
17 {
18   bar (status);
19 }
20 
21 /* { dg-final { scan-assembler "call\[^\n\]*_Exit" { target i?86-*-* x86_64-*-* ia64-*-* sparc*-*-* } } } */
22 /* { dg-final { scan-assembler "bl\[^\n\]*_Exit" { target powerpc*-*-* } } } */
23 /* { dg-final { scan-assembler "brasl\[^\n\]*_Exit" { target { s390*-*-* && lp64 } } } } */
24