[PATCH] powerpc: New feature - HWCAP/HWCAP2 bits in the TCB

Florian Weimer fweimer@redhat.com
Wed Jun 10 10:11:00 GMT 2015


On 06/09/2015 08:26 PM, Rich Felker wrote:
> On Tue, Jun 09, 2015 at 08:21:38PM +0200, Florian Weimer wrote:
>> On 06/09/2015 06:01 PM, Steven Munroe wrote:
>>
>>> A Static variable would require a an indirect load via the TOC/GOT
>>> (which can be megabytes for a large program/library). I really really
>>> want the avoid that.
>>
>> Could you encode the information in the address itself?  Then the
>> indirection goes away.
> 
> You mean using (unsigned long)&__hwcap_hack or similar as the hwcap
> bits?

Exactly.

> I don't see how you could make that work for static linking,
> where the linker is going to put the GOT in the read-only text
> segment.

Oh.  Is this optimization relevant to statically-linked binaries?

I suppose the static linking case could be addressed with a new
relocation for the static linker, as long as it is possible to reach a
writable page from the GOT base using an offset determined at linked
time.  Whether all this is worth the effort, I do not know.  The entire
mechanism might turn out generally useful for mostly-read global
variables without strong consistency requirements.

-- 
Florian Weimer / Red Hat Product Security



More information about the Libc-alpha mailing list