summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr61776.c
blob: 8deec9e9934e7adc86269d94b8b9dd19d99b3bba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* { dg-do compile } */
/* { dg-options "-O2 -fprofile-generate" } */
/* { dg-require-profiling "-fprofile-generate" } */

#include <setjmp.h>

int cond1, cond2;

int goo() __attribute__((noinline));

int goo() {
 if (cond1)
   return 1;
 else
   return 2;
}

jmp_buf env;
int foo() {
 int a;

 setjmp(env);
 if (cond2)
   a = goo();
 else
   a = 3;
 return a;
}