Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20141122210954.GD29621@brightrain.aerifal.cx>
Date: Sat, 22 Nov 2014 16:09:54 -0500
From: Rich Felker <dalias@...c.org>
To: musl@...ts.openwall.com
Subject: Re: [PATCH] arm assembly changes for clang compatibility

On Sat, Nov 22, 2014 at 09:54:06PM +0100, Joakim Sindholt wrote:
> On Fri, 2014-11-07 at 08:26 -0500, Rich Felker wrote:
> > On Fri, Nov 07, 2014 at 11:48:05AM +0100, Joakim Sindholt wrote:
> > > On Fri, 2014-11-07 at 10:37 +0100, Luca Barbato wrote:
> > > > On 06/11/14 23:38, Joakim Sindholt wrote:
> > > > > +	.word 0xecbc8b10 /* vldmia ip!, {d8-d15} */
> > > > 
> > > > clang is already notified?
> > > > 
> > > > lu
> > > 
> > > I'm not sure what you mean. There isn't a bug in clang as it will
> > > happily accept "vldmia ip!, {d8-d15}". It just won't accept "ldc p11,
> > > cr8, [ip], #64" because that's not a legal instruction. Musl just uses
> > > it because it aliases to the former and gas won't complain about missing
> > > ARM features.
> > 
> > Yes, the problem is that we can't use the official mnemonic because
> > the assembler will reject it when the target model lacks fpu, and we
> > can't use the generic coprocessor mnemonic because ARM and clang
> > intentionally removed support for it. :(
> 
> Any chance of getting this committed or is there more work to be done
> and discussions to be had?
> 
> This is the only change needed to get musl working on ARM clang.

I think it's okay. It would be nice if we could find something that
didn't cause it to get marked as data rather than code in the .o file
(e.g. objdump shows it as .word instead of an instruction) but that's
not a huge problem if we can't. Since ARM overhaul is a big item for
this release cycle I'd like to get all the clang compatibility issues
for ARM fixed too. Do you know what clang version has the issue we're
working around in arch/arm/syscall_arch.h fixed so I can convert it to
a version check (instead of just #ifdef __clang) and start considering
a schedule for deprecating support for ancient clang?

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.