summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr44974.c
blob: 14e43ece3c2dbfd33e71b73503e1c3d26ef62ff5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* PR middle-end/44974 */
/* { dg-do compile } */
/* { dg-options "-O -fno-optimize-sibling-calls" } */

extern void foo (int status) __attribute__ ((__noreturn__));
extern void bar (int status) __attribute__ ((__noreturn__));
extern void _Exit (int status) __attribute__ ((__noreturn__));

void
foo (int status)
{
  _Exit (status);
}

void
_Exit (int status)
{
  bar (status);
}

/* { dg-final { scan-assembler "call\[^\n\]*_Exit" { target i?86-*-* x86_64-*-* ia64-*-* sparc*-*-* } } } */
/* { dg-final { scan-assembler "bl\[^\n\]*_Exit" { target powerpc*-*-* } } } */
/* { dg-final { scan-assembler "brasl\[^\n\]*_Exit" { target { s390*-*-* && lp64 } } } } */