/* APPLE LOCAL file lno */ /* { dg-do compile } */ /* { dg-options "-O1 -floop-test -fdump-tree-lptest-details" } */ int foo (int unknown_parm, int a, int b) { int p; if (unknown_parm) { p = a + 2; } else { p = b + 1; } /* At this point the initial condition of "p" is unknown. In this case, the analyzer has to keep the initial condition under a symbolic form. */ while (p) p--; } /* p -> {p_1, +, -1}_1 or, when the Value Range Propagation does its work: p -> {[MIN_EXPR , MAX_EXPR ], +, -1}_1 */ /* FIXME. */