This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch] STT_GNU_IFUNC support
On Monday 15 February 2010 18:40:50, Daniel Jacobowitz wrote:
> On Sun, Feb 14, 2010 at 09:35:12PM +0100, Jan Kratochvil wrote:
> > This implementation resolves ifunc in an uncached way by an inferior call any
> > time the symbol resolution is needed. It does not try to pick out the jump
> > address value from ".got.plt" as filled there by ld.so. (GDB stepping into
> > library functions also does not try to do so.)
>
> Do you mean that "print strcmp" or "break strcmp" is now going to do
> an inferior call? That doesn't seem like a good idea to me. I would
> like for some other maintainers to comment though.
>
> Inferior calls are very slow, and they can go wrong (pending signals,
> misbehaving programs, etc). I believe we should make an effort to
> minimize them.
Yeah, agreed, we should avoid them the best we can.
[ Not to mention that the scheduler-locking setting also applies to
them, meaning, in a multi-threaded environment, without more
care, these behind the scenes infcalls resume more than
you'd want (all-threads), which can be surprising, and make other
threads easily hit events while handling the infcall. Something
that IWBN to fix. ]
--
Pedro Alves