1 /* { dg-do compile } */ 2 /* { dg-options "-O2 -fdump-ipa-icf" } */ 3 4 __attribute__ ((noinline)) fce(int a,int b)5int fce(int a, int b) 6 { 7 return a + b; 8 } 9 10 __attribute__ ((noinline)) f0(int a)11int f0(int a) 12 { 13 return fce(a, 5) + fce(a, 7); 14 } 15 16 __attribute__ ((noinline)) f1(int a)17int f1(int a) 18 { 19 return fce(a, 5) + fce(a, 7); 20 } 21 main(int argc,char ** argv)22int main(int argc, char **argv) 23 { 24 return f0(argc) * f1(argc); 25 } 26 27 /* { dg-final { scan-ipa-dump "Semantic equality hit:f0->f1" "icf" } } */ 28 /* { dg-final { scan-ipa-dump "Equal symbols: 1" "icf" } } */ 29