OSDN Git Service

PR middle-end/35456
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / execute / 20070517-1.c
1 /* PR rtl-optimization/31691 */
2 /* Origin: Chi-Hua Chen <stephaniechc-gccbug@yahoo.com> */
3
4 extern void abort (void);
5
6 static int get_kind(int) __attribute__ ((noinline));
7
8 static int get_kind(int v)
9 {
10   volatile int k = v;
11   return k;
12 }
13
14 static int some_call(void) __attribute__ ((noinline));
15
16 static int some_call(void)
17 {
18   return 0;
19 }
20
21 static void example (int arg)
22 {
23   int tmp, kind = get_kind (arg);
24
25   if (kind == 9 || kind == 10 || kind == 5)
26     {
27       if (some_call() == 0)
28         {
29           if (kind == 9 || kind == 10)
30             tmp = arg;
31           else
32             abort();
33         }
34     }
35
36
37 int main(void)
38 {
39   example(10);
40   return 0;
41 }