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.
I doubt this is enough to address all the issues folks raised, but ISTM it should certainly help. OK for the trunk. Jeff