This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] powerpc: New feature - HWCAP/HWCAP2 bits in the TCB
- From: Rich Felker <dalias at libc dot org>
- To: libc-alpha at sourceware dot org
- Date: Tue, 9 Jun 2015 12:38:35 -0400
- Subject: Re: [PATCH] powerpc: New feature - HWCAP/HWCAP2 bits in the TCB
- Authentication-results: sourceware.org; auth=none
- References: <55760314 dot 6070601 at linux dot vnet dot ibm dot com>
On Mon, Jun 08, 2015 at 06:03:16PM -0300, Carlos Eduardo Seo wrote:
>
> The proposed patch adds a new feature for powerpc. In order to get
> faster access to the HWCAP/HWCAP2 bits, we now store them in the
> TCB. This enables users to write versioned code based on the HWCAP
> bits without going through the overhead of reading them from the
> auxiliary vector.
>
> A new API is published in ppc.h for get/set the bits in the
> aforementioned memory area (mainly for gcc to use to create
> builtins).
Do you have any justification (actual performance figures for a
real-world usage case) for adding ABI constraints like this? This is
not something that should be done lightly. My understanding is that
hwcap bits are normally used in initializing functions pointers (or
equivalent things like ifunc resolvers), not again and again at
runtime, so I'm having a hard time seeing how this could help even if
it does make the individual hwcap accesses measurably faster.
It would also be nice to see some justification for the magic number
offsets. Will they be stable under changes to the TCB structure or
will preserving them require tip-toeing around them?
Rich