/* { dg-do compile } */ /* { dg-options "-O3 -fdump-ipa-cp-details -fno-early-inlining --param ipa-cp-max-recursive-depth=8 --param=ipa-cp-eval-threshold=400" } */ int fn(); int data[100]; int recur_fn (int i) { int j; if (i == 6) { fn(); fn(); fn(); fn(); fn(); fn(); fn(); fn(); fn(); fn(); fn(); fn(); return 10; } data[i] = i; for (j = 0; j < 100; j++) recur_fn (i + 1); return i; } int main () { int i; for (i = 0; i < 100; i++) recur_fn (1) + recur_fn (-5); return 1; } /* { dg-final { scan-ipa-dump-times "Creating a specialized node of recur_fn/\[0-9\]*\\." 12 "cp" } } */