111
|
1 /* { dg-do compile } */
|
|
2 /* { dg-options "-O1 -fdump-tree-optimized" } */
|
|
3
|
|
4 int foo (int a)
|
|
5 {
|
|
6 void *p;
|
|
7 if (a!=0)
|
|
8 p = &&L0;
|
|
9 else
|
|
10 p = &&L1;
|
|
11 goto *p;
|
|
12 L0:
|
|
13 return 1;
|
|
14 L1:
|
|
15 return 0;
|
|
16 }
|
|
17
|
|
18 /* Everything should have been cleaned up leaving a simple
|
|
19 return statement. */
|
|
20 /* { dg-final { scan-tree-dump-times "= a_..D. != 0" 1 "optimized" } } */
|
|
21
|
|
22 /* There should not be any abnormal edges as DOM removed the
|
|
23 computed gotos. */
|
|
24
|
|
25 /* { dg-final { scan-tree-dump-times "ab" 0 "optimized" } } */
|