Re: [arm-gnu] How to write VFP inline asm with double precision register constraints?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [arm-gnu] How to write VFP inline asm with double precision register constraints?



On Tue, 2010-08-24 at 16:10 +0200, Alexander Kurpiers wrote:
> Daniel Jacobowitz wrote:
> > On Tue, Aug 24, 2010 at 03:18:10PM +0800, Cheng-Wei Chen wrote:
> >> Hi,
> >>
> >> I try to write VFP inline asm with double precision register
> >> constraints, but GCC reports the following error message: Error:
> >> VFP/Neon double precision register expected -- `faddd s14,s10,s12'. It
> >> seems GCC cannot generate correct VFP double precision registers to
> >> asm? Below is my sample program:
> > 
> > You have the right constraint, but you need to tell GCC to print it as
> > a double.  Oddly, this doesn't seem to be in the manual.  Try %P[ret]
> > instead.
> > 
> 
> Mans compiled this very useful list the other day:
> http://hardwarebug.org/2010/07/06/arm-inline-asm-secrets/

Please note that if you use any undocumented constraint letters in an
ASM block, then your code may not work correctly in with a future
release of the compiler.  Some constraints are deliberately left
undocumented because we cannot commit to maintaining them as they
currently are: constraints are really internal properties of the machine
description files, not public interfaces.

R.