(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
ipa/
ipa-icf-35.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -fdump-ipa-icf-optimized-all-all"  } */
       3  
       4  void f1()
       5  {
       6  }
       7  
       8  void f2()
       9  {
      10  }
      11  
      12  static void (*a)(void)=&f1;
      13  static void (*b)(void)=&f1;
      14  static void (*c)(void)=&f2;
      15  static void (*d)(void)=&f2;
      16  
      17  int main()
      18  {
      19    a();
      20    b();
      21    c();
      22    d();
      23  
      24    return 0;
      25  }
      26  
      27  /* { dg-final { scan-ipa-dump "Equal symbols: 3" "icf"  } } */
      28  /* { dg-final { scan-ipa-dump "Semantic equality hit:f1/\[0-9+\]+->f2/\[0-9+\]+" "icf"  } } */
      29  /* { dg-final { scan-ipa-dump "Semantic equality hit:c/\[0-9+\]+->d/\[0-9+\]+" "icf"  } } */
      30  /* { dg-final { scan-ipa-dump "Semantic equality hit:a/\[0-9+\]+->b/\[0-9+\]+" "icf"  } } */