| /* Verify that we optimize to conditional traps. */ | |
| /* { dg-options "-O" } */ | |
| /* { dg-do compile { target rs6000-*-* powerpc-*-* sparc*-*-* ia64-*-* } } */ | |
| /* { dg-final { scan-assembler-not "^\t(trap|ta|break)\[ \t\]" } } */ | |
| void f1(int p) | |
| { | |
| if (p) | |
| __builtin_trap(); | |
| } | |
| void f2(int p) | |
| { | |
| if (p) | |
| __builtin_trap(); | |
| else | |
| bar(); | |
| } | |
| void f3(int p) | |
| { | |
| if (p) | |
| bar(); | |
| else | |
| __builtin_trap(); | |
| } | |
| void f4(int p, int q) | |
| { | |
| if (p) | |
| { | |
| bar(); | |
| if (q) | |
| bar(); | |
| } | |
| else | |
| __builtin_trap(); | |
| } |