(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
ipa/
pr93707.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-O3 --param ipa-cp-eval-threshold=1 -fdump-ipa-cp" } */
       3  
       4  int foo();
       5  int data[100];
       6  
       7  __attribute__((noinline)) static int recur_fn (int i, int j, int depth)
       8  {
       9     if (depth > 10)
      10       return 1;
      11  
      12     data[i + j]++;
      13  
      14     if (depth & 3)
      15       recur_fn (i, 1, depth + 1);
      16     else
      17       recur_fn (i, j & 1, depth + 1);
      18  
      19     foo();
      20  
      21     return i + j;
      22  }
      23  
      24  int caller (int v, int depth)
      25  {
      26    recur_fn (1, v, depth);
      27  
      28    return 0;
      29  }
      30  
      31  /* { dg-final { scan-ipa-dump-times "Clone of recur_fn/" 2 "cp" } } */