libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / ssa-thread-18.c
bloba899f4f3fc02c33f6cb40623bfb8c83e218a2a36
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-threadfull1-stats" } */
4 void foo (int nest, int print_nest)
6 _Bool t0 = nest != 0;
7 _Bool t1 = nest == print_nest;
8 _Bool t2 = t0 & t1;
9 if (t2)
10 __builtin_puts ("x");
11 nest++;
12 if (nest > 2)
13 __builtin_abort ();
14 if (print_nest == nest)
15 __builtin_puts ("y");
18 /* We should be able to thread (t2) to !(print_nest == nest) using the
19 nest == print_nest relation implied by the entry block. */
20 /* { dg-final { scan-tree-dump "Jumps threaded: 1" "threadfull1" } } */