Using ARM/Neon fp hardware with libc

robjsstewart at ...9... robjsstewart at ...9...
Sun Oct 4 21:52:13 CEST 2015


I figured out the best way to get this work after going through the build base make files. The clean way is to add the compiler flags for hardware fp to the CC_MARCH build variable and that will cause LIBGCC to be defined correctly and pick up the version that uses hardware register-based parameters in the fp calls. Putting the additions to the CC_MARCH variable in the spec file for the base-hw platform being used, allows hardware fp support to be compiled in where needed. The base-linux mk spec file for ARM uses this approach.

Bob

Sent from my android device.

-----Original Message-----
From: robjsstewart at ...196...
To: genode-main at lists.sourceforge.net
Sent: Fri, 02 Oct 2015 4:24 PM
Subject: Re: Using ARM/Neon fp hardware with libc

It's a bit more complicated than just setting the correct compiler options in libm.mk.  Compiling the various math functions for hardfp works ok as you would expect. The issue comes when building the .so library. The linker call is set to merge the software fp version of libgcc.a. I'm having trouble following the library build process to determine where I can change to using .../fpu/libgcc.a.

Any hints would be appreciated.

Bob

Sent from my android device.

-----Original Message-----
From: Christian Helmuth <christian.helmuth at ...1...>
To: genode-main at lists.sourceforge.net
Sent: Thu, 01 Oct 2015 5:10 AM
Subject: Re: Using ARM/Neon fp hardware with libc

Hello Bob,

On Wed, Sep 30, 2015 at 03:14:26PM -0400, robjsstewart at ...9... wrote:
> I'm exploring compiling a couple of targets in my Genode, base-hw
> system to use the hardware fp in the Neon coprocessor on an ARM
> Cortex A8 SOC, to get some performance improvement. I can add the
> CC_OPT line containing -mfloat-abi=hard and -mfu=neon-vfpv4 to
> appropreate target.mk. That should result in the Neon fp unit being
> called to perform the calculations. If I want use libc math
> functions I assume I must recompile libc with the same compile
> options added. Are there build variables that allow me to do that to
> the libc library? 

With 15.02, you may try to patch repos/libports/lib/mk/arm/libm.mk
accordingly. There is not way to just "configure" compilation options
for libc that I know of.

Regards
-- 
Christian Helmuth
Genode Labs

http://www.genode-labs.com/ · http://genode.org/
https://twitter.com/GenodeLabs · /ˈdʒiː.nəʊd/

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

------------------------------------------------------------------------------
_______________________________________________
genode-main mailing list
genode-main at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20151004/5b7972b6/attachment.html>


More information about the users mailing list