111
|
1 /* { dg-do compile { target { ! logical_op_short_circuit } } } */
|
|
2 /* { dg-options "-O2 -fdump-tree-dom2-details" } */
|
|
3
|
|
4 static int *bb_ticks;
|
|
5 extern void frob (void);
|
|
6 void
|
|
7 mark_target_live_regs (int b, int block, int bb_tick)
|
|
8 {
|
|
9 if (b == block && b != -1 && bb_tick == bb_ticks[b])
|
|
10 return;
|
|
11 if (b != -1)
|
|
12 frob ();
|
|
13 }
|
|
14
|
|
15 /* When the first two conditionals in the first IF are true, but
|
|
16 the third conditional is false, then there's a jump threading
|
|
17 opportunity to bypass the second IF statement. */
|
|
18 /* { dg-final { scan-tree-dump-times "Threaded" 1 "dom2"} } */
|