1 /* Verify that we optimize to conditional traps.  */
2 /* { dg-options "-O" } */
3 /* { dg-do compile { target rs6000-*-* powerpc*-*-* sparc*-*-* ia64-*-* } } */
4 /* { dg-final { scan-assembler-not "^\t(trap|ta|break)\[ \t\]" } } */
5 
f1(int p)6 void f1(int p)
7 {
8   if (p)
9     __builtin_trap();
10 }
11 
f2(int p)12 void f2(int p)
13 {
14   if (p)
15     __builtin_trap();
16   else
17     bar();
18 }
19 
f3(int p)20 void f3(int p)
21 {
22   if (p)
23     bar();
24   else
25     __builtin_trap();
26 }
27 
f4(int p,int q)28 void f4(int p, int q)
29 {
30   if (p)
31     {
32       bar();
33       if (q)
34 	bar();
35     }
36   else
37     __builtin_trap();
38 }
39