I am not certain what the proper toolchain settings are to enable use of hardware floating point on those STM32’s that use a M3 or M4 core.
My current project uses a STM32F303RE MCU, and will (probably) require the use of floating point math and DSP functions. If I want to make use of the M4 core’s FPU, what are the appropriate project settings under Project->Properties->Tool Settings (tab)->MCU settings for “Floating point hardware” and “Floating-point ABI” ?
I figure that “Floating-point ABI” should be set to “hard” (or maybe “softfp” ?) but I’m not certain what to select for “Floating point hardware”. There are over a dozen different choices (e.g. “vfp”, “vfp3”, “vfp3-fp16”, etc.) and it is not at all clear which is the appropriate one for a M4 core device like the STM32F303.
Can anyone suggest which FP hardware setting is appropriate for the -F303? And, for that matter, what should it be for the F1xx/L1xx, F2xx/L2xx, F4xx and F7xx series devices?
Is there anything else that needs to be done (e.g. symbols #define’d, other compiler or linker options specified, etc.) to enable use of hardware floating point?
Assume for the sake of this discussion that no HAL or other external code other than the CMSIS headers is being used in this application.