I've raised https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68219 Jay. On 4 November 2015 at 10:43, Jay Foad <jay.foad@xxxxxxxxx> wrote: > Thanks both. Would it be realistic to teach IPA ICF that in this case, > taking the address of the functions doesn't matter? Should I raise an > enhancement request? > > Thanks, > Jay. > > On 4 November 2015 at 10:41, Alexander Monakov <amonakov@xxxxxxxxx> wrote: >> Starting from release 5.1, GCC has IPA ICF (identical code folding) that can >> perform such transform: you can use -fdump-ipa-icf to inspect its log file. >> However, it doesn't eliminate the functions in your example, because they have >> their address taken (and the pass does not realize that it doesn't matter). >> Therefore it creates a wrapper rather than an alias, and then inlining undoes >> that transform. >> >> Alexander