[PATCH][BZ 18960] setlocale.c: Mark *_used symbols as unaligned.

Rich Felker dalias@libc.org
Mon Sep 28 15:05:00 GMT 2015


On Mon, Sep 28, 2015 at 04:52:10PM +0200, Florian Weimer wrote:
> On 09/28/2015 04:18 PM, Rich Felker wrote:
> 
> > Can you explain how/why you think this is needed? char has no
> > alignment requirements (inherently) so as far as I can tell, the
> > compiler may not make any alignment assumptions about an extern object
> > of type char.
> 
> s390(x) expects all top-level objects in the data segment to be aligned
> to at least 2.  As far as I can tell, this is not explicitly mentioned
> in the psABI supplement, but it is heavily implied by .align directives
> and use of the lalr instruction.

So reading chars via a pointer or array is slower than reading a
single non-array char object? Uhg...what an awful ISA. Thanks for the
explanation, though.

Rich



More information about the Libc-alpha mailing list