Difference between revisions of "EABI on Maverick Crunch"
From Nuclear Physics Group Documentation Pages
Jump to navigationJump to searchLine 10: | Line 10: | ||
The new gcc and g++ can now make FPU enabled code when using the additional command line options: -mcpu=ep9312 -mfpu=maverick -mfloat-abi=softfp | The new gcc and g++ can now make FPU enabled code when using the additional command line options: -mcpu=ep9312 -mfpu=maverick -mfloat-abi=softfp | ||
+ | |||
+ | You can check if the resulting code (the .o or .so or .a file) contains FPU instructions with the following: | ||
+ | |||
+ | arm-linux-gnueabi-objdump -d libQtCore.so.4.6.0 | gawk '/ \tcf/' | less | ||
+ | |||
+ | (that is, you look for a <space><tab>cf combination). |
Latest revision as of 20:32, 21 January 2010
Notes on making a proper EABI cross compiler for Maverick Crunch (EP9302, EP93xx) processors
This is a bit of "higher order hacking" and not too trivial, but it works. Basic compile instructions are at: ARM Cross Compiler
- Fixup the binutils (2.20) to store the mv registers, according to the patches at: http://www.freelists.org/post/linux-cirrus/Yet-another-MaverickCrunch-hardware-bug,14. Note that I did these patches by hand, since 2.20 is a bit different from 2.17.
- Compile and install the renewed binutils.
- Get the gcc-4.3.4 distribution from GNU
- Apply the patches of Martin Guy <martinwguy@gmail.com>, found at http://martinwguy.co.uk/martin/crunch
- Compile and install the renewed gcc.
The new gcc and g++ can now make FPU enabled code when using the additional command line options: -mcpu=ep9312 -mfpu=maverick -mfloat-abi=softfp
You can check if the resulting code (the .o or .so or .a file) contains FPU instructions with the following:
arm-linux-gnueabi-objdump -d libQtCore.so.4.6.0 | gawk '/ \tcf/' | less
(that is, you look for a <space><tab>cf combination).