/* PR tree-optimization/33434 */ /* { dg-do run } */ /* { dg-options "-O3" } */ int k; void __attribute__((noinline)) f2 (int b) { k = b - 1; } void f1 (int a, int b) { f2 (b); a = 1; b = 1; if (a) while (b --) k = 1; else if (b != 1) __builtin_abort (); } int main (void) { f1 (1, 1); if (k != 1) __builtin_abort (); return 0; }