gcc embedded cortex soft / hard float

923 views Asked by At

Thanks in advance.

I'm using GCC to compile my Code for STM32F7 ARM Cortex.

Unfortunately my result always includes floating point emulation Routines

00200664 00000254 T __aeabi_dmul
00200664 00000254 T __muldf3
00200300 00000276 T __adddf3
00200300 00000276 T __aeabi_dadd
002002fc 0000027a T __aeabi_dsub
002002fc 0000027a T __subdf3

Using the Compileflags:

CFLAGS_ARCH += -mlittle-endian -mcpu=cortex-m7 -mthumb
CFLAGS_ARCH += -mfloat-abi=hard -mhard-float -mfpu=fpv5-sp-d16
CFLAGS_ARCH += -D__FPU_PRESENT 

How can I disable linking these Functions and see where and why they are used in my Code to use only hard single Float?

If I just do -nostdlib it removes the full stdlib. I just want to use the Hard FPU for performance instead of precise double precision.

Thanks !

0

There are 0 answers