On 24 August 2016 at 11:26, Adam Richter <adamricht...@gmail.com> wrote: > I hope that that consideration, combined with the micro-costs to > readability and portability of using and ELF specific and perhaps > currently GCC specific feature might tip the balance against the > savings of a level of function call indirection that I assume the use > of ifunc was intended to provide.
It doesn't actually save a level of indirection -- if you single step through an ifunc call it goes via some ELF section. The thing it does save is that you don't pay the cost of figuring out the right ifunc to use on this system at startup, but only when the ifunc call path is first used. That's useful for a big thing like glibc which might have lots of ifuncs and not want to pay a big startup cost, but for QEMU there's really no need given we only have one... thanks -- PMM