Hello,
I'm trying to use the FPU in my baremetal project.
I use the ARM DS-5 (altera edition) with the DS5-GCC.
I try to compile a simple project with the following options:
The output is always something like this:
Ok, the message let me know, that at least one library (may be i.e. libc...) is not linked for hard floatingpoint.
Maybe there is generally no hardware-floatingpoint support by the delivered DS5-GCC compiler/toolchain?
Normally the Codesourcery Lite only supports software-floatingpoint and only the standard and professional versions have hardware floatingpoint support.
using the flag -mfloat-abi=softfp doesn't work for me. In this case all floating point operation will be done by software and that's to slow.
Does anyone know, how to get it work?
I'm trying to use the FPU in my baremetal project.
I use the ARM DS-5 (altera edition) with the DS5-GCC.
I try to compile a simple project with the following options:
Code:
-mfloat-abi=hard -mfpu=vfpv3-d16-fp16 -ftree-vectorize -ffast-math -march=armv7-a -mtune=cortex-a9 -mcpu=cortex-a9
Code:
gcc version 4.6.3 (Sourcery CodeBench Lite 2012.03-56)
arm-none-eabi-g++ -Taltera-socfpga-hosted.ld -g -O0 -mfloat-abi=hard -mfpu=vfpv3-d16-fp16 -ftree-vectorize -ffast-math -march=armv7-a -mtune=cortex-a9 -mcpu=cortex-a9 -Werror -Wall -Wstrict-prototypes hello.o -o hello.axf
c:/altera/13.1/embedded/host_tools/mentor/gnu/arm/baremetal/bin/../lib/gcc/arm-none-eabi/4.6.3/../../../../arm-none-eabi/bin/ld.exe: error: hello.o uses VFP register arguments, hello.axf does not
c:/altera/13.1/embedded/host_tools/mentor/gnu/arm/baremetal/bin/../lib/gcc/arm-none-eabi/4.6.3/../../../../arm-none-eabi/bin/ld.exe: failed to merge target specific data of file hello.o
collect2: ld returned 1 exit status
make: *** [hello.axf] Error 1
Maybe there is generally no hardware-floatingpoint support by the delivered DS5-GCC compiler/toolchain?
Normally the Codesourcery Lite only supports software-floatingpoint and only the standard and professional versions have hardware floatingpoint support.
using the flag -mfloat-abi=softfp doesn't work for me. In this case all floating point operation will be done by software and that's to slow.
Does anyone know, how to get it work?