On 10/4/18 4:17 PM, Jeff Law wrote: > On 10/4/18 7:56 AM, Martin Liška wrote: >> Hi. >> >> When having a pair of target clones where foo calls bar, if the target >> attribute are equal we can redirect the call and not use ifunc dispatcher. >> >> Patch survives regression tests on x86_64-linux-gnu. >> Ready for trunk? >> >> Martin >> >> gcc/ChangeLog: >> >> 2018-10-04 Martin Liska <mli...@suse.cz> >> >> PR ipa/82625 >> * multiple_target.c (redirect_to_specific_clone): New function. >> (ipa_target_clone): Use it. >> * tree-inline.c: Fix comment. >> >> gcc/testsuite/ChangeLog: >> >> 2018-10-04 Martin Liska <mli...@suse.cz> >> >> PR ipa/82625 >> * g++.dg/ext/pr82625.C: New test. > Your timing is good. The issues with unnecessary calls to ifunc > dispatchers when we have an ifunc that is not a leaf in the call graph > came up in some meetings I was having last week.
Funny. > > I doubt this is enough to address all the issues folks raised, but ISTM > it should certainly help. Sure, are you talking about: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83411 https://hannes.hauswedell.net/post/2017/12/09/fmv/ or do you have any other specific situations? > > OK for the trunk. Installed as r264845. Martin > > Jeff > >