commoning up template instantiations

Jay Foad
Wed Nov 4 10:43:00 GMT 2015

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?


On 4 November 2015 at 10:41, Alexander Monakov <> 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

More information about the Gcc-help mailing list