Re: [arm-gnu] soft floating point __eq[ds]f2 not EABI compliant?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [arm-gnu] soft floating point __eq[ds]f2 not EABI compliant?



On Wed, 2009-01-14 at 17:04 -0800, Johan Björk wrote:
> Hi All,
> 
> First off, I'm not a compiler guy, so excuse me if this is really stupid...
> 
> I've been working on porting valgrind to ARM, and I discovered an
> issue in ieee_754-[ds]f.S, version 2008q3-66, gcc-4.3 from
> codesourcery's page.
> 
> The issue is that it's writing below the SP, which according to EABI
> is illegal at all times. (If I understand the specification
> correctly).
> See gcc-4.3/gcc/config/arm/ieee754-sf.S:830 (same issue in -df)
> The line is: str ip,[sp,#-4]
> 
> I guess this may be intentional due to performance, but I figured I'd
> give a heads up if anyone is interested.

You are perfectly correct, this does violate the ABI.  Thanks for
pointing it out.

R.