This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: machine maintainer ping: hppa
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Roland McGrath <roland at hack dot frob dot com>
- Cc: Carlos O'Donell <carlos at redhat dot com>, Carlos O'Donell <carlos at systemhalted dot org>, Jeff Bailey <jbailey at gnu dot org>, "GNU C. Library" <libc-alpha at sourceware dot org>
- Date: Sat, 21 Jun 2014 20:24:34 +0000
- Subject: Re: machine maintainer ping: hppa
- Authentication-results: sourceware.org; auth=none
- References: <20140621015750 dot 5F9CC2C3993 at topped-with-meat dot com> <53A500F1 dot 7000702 at redhat dot com> <20140621192724 dot 825A62C3A2B at topped-with-meat dot com>
On Sat, 21 Jun 2014, Roland McGrath wrote:
> One that calls a PLT entry, right? As opposed to e.g. x86-32, where calls
> to the PLT are ABI-required to set %ebx, and %ebx is call-saved in the ABI,
> so you can't tail-call into the PLT because you'd never restore your
> caller's value of %ebx.
>
> If -O2 is really required, do you want the build to rely on -O2 to avoid
> fragile and arcane bugs? (The main alternative is to just take the
> alpha/pt-vfork.S approach, which means copying the vfork code into
> libpthread akin to how it's in there today, so it's not a big downside,
> though tail-call is clearly better and IFUNC is ideal.)
FWIW, the alpha approach is what I recommend for MIPS (until IFUNC support
is available - I'm not sure what the current status is of the protracted
ABI discussions that were taking place on the binutils list).
--
Joseph S. Myers
joseph@codesourcery.com