From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/8683 Path: news.gmane.org!not-for-mail From: Rich Felker Newsgroups: gmane.linux.lib.musl.general Subject: Re: status of armhf asm with VFP instructions Date: Thu, 15 Oct 2015 23:23:47 -0400 Message-ID: <20151016032347.GE8645@brightrain.aerifal.cx> References: <20151015223320.GW10551@port70.net> <20151015224425.GA8645@brightrain.aerifal.cx> <20151015231606.GX10551@port70.net> <20151016000056.GB8645@brightrain.aerifal.cx> <20151016003313.GZ10551@port70.net> <20151016010346.GC8645@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1444965844 6205 80.91.229.3 (16 Oct 2015 03:24:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 16 Oct 2015 03:24:04 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-8695-gllmg-musl=m.gmane.org@lists.openwall.com Fri Oct 16 05:24:03 2015 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1Zmvcf-0002WY-Sw for gllmg-musl@m.gmane.org; Fri, 16 Oct 2015 05:24:01 +0200 Original-Received: (qmail 20284 invoked by uid 550); 16 Oct 2015 03:24:00 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 20266 invoked from network); 16 Oct 2015 03:23:59 -0000 Content-Disposition: inline In-Reply-To: <20151016010346.GC8645@brightrain.aerifal.cx> User-Agent: Mutt/1.5.21 (2010-09-15) Original-Sender: Rich Felker Xref: news.gmane.org gmane.linux.lib.musl.general:8683 Archived-At: On Thu, Oct 15, 2015 at 09:03:46PM -0400, Rich Felker wrote: > On Fri, Oct 16, 2015 at 02:33:13AM +0200, Szabolcs Nagy wrote: > > * Rich Felker [2015-10-15 20:00:56 -0400]: > > > On Fri, Oct 16, 2015 at 01:16:07AM +0200, Szabolcs Nagy wrote: > > > > most likely ual is the long term solution. > > > > > > > > maybe it is best to switch to ual and then write that script > > > > if ppl with old binutils run into issues. > > > > > > That sounds like it might be the best option. I don't like dropping > > > support for old stuff, but ARM really made a mess of this by making a > > > new gratuitously incompatible asm syntax and encouraging tools not to > > > support the old syntax (and particularly, not to support generating > > > thumb2 from it, despite the fact that there's no fundamental reason it > > > couldn't be done). > > > > > > BTW for other things I think we need some sort of syntax directive to > > > tell the assembler we'll be using the unified syntax -- is this right? > > > Do you know what the minimum gas version that supports this directive > > > is? > > > > ..syntax unified (binutils supports it since 2005). > > Hm? That would include 2.17. So is the new vfp syntax separate from > UAL-vs-legacy? I just tested and gas 2.17 accepts the new syntax for vabs and vsqrt if you use .syntax unified (they're errors without the directive). But the vmsr/vmrs are still rejected. :( However it seems like we can safely convert all the other existing asm to UAL and have it work with all relevant binutils versions at least as well as it's working now. In particular this should allow fixing the mess in memcpy, etc. The arm atomics file is still a mess of non-thumb-compatible code (it actually does arithmetic on pc that depends on arm opcode size) but I want to replace it anyway now that the new dynamic linker init sequence does not need atomics that work before the thread pointer is initialized. So I think we're in good shape for transitioning towards Cortex-M support. Rich