Projectkk2glider/hardware floating point (#4477)

* Turn on compiler hardware floating point support for F4 targets

* Fixes, works on Horus

* Comment updated
This commit is contained in:
Damjan Adamic
2017-02-18 00:52:52 +01:00
committed by Bertrand Songis
parent 3e84e7930c
commit 299c5924fa
4 changed files with 10 additions and 2 deletions
+1
View File
@@ -434,6 +434,7 @@ if(NOT MSVC)
set(CMAKE_ASM_COMPILE_OBJECT "<CMAKE_ASM_COMPILER> -o <OBJECT> <SOURCE>")
set(COMMON_FLAGS "-mcpu=${MCU} -mthumb -fomit-frame-pointer -fverbose-asm -Wa,-ahlms=firmware.lst -O${OPT} -gdwarf-2 -DHSE_VALUE=${HSE_VALUE} -fno-exceptions -fdata-sections -ffunction-sections ${WARNING_FLAGS}")
set(COMMON_FLAGS "${COMMON_FLAGS} ${FPU_FLAGS}")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${COMMON_FLAGS} -Wimplicit")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${COMMON_FLAGS}")
@@ -1,5 +1,6 @@
set(CPU_FAMILY STM32)
set(MCU cortex-m3)
set(FPU_FLAGS "")
set(STM32LIB_DIR ${THIRDPARTY_DIR}/STM32F2xx_StdPeriph_Lib_V1.1.0/Libraries)
include_directories(${STM32LIB_DIR}/STM32F2xx_StdPeriph_Driver/inc)
include_directories(${STM32LIB_DIR}/CMSIS/Device/ST/STM32F2xx/Include)
@@ -1,5 +1,6 @@
set(CPU_FAMILY STM32)
set(MCU cortex-m4)
set(FPU_FLAGS "-mfloat-abi=hard -mfpu=fpv4-sp-d16")
set(STM32LIB_DIR ${THIRDPARTY_DIR}/STM32F4xx_DSP_StdPeriph_Lib_V1.4.0/Libraries)
include_directories(${STM32LIB_DIR}/STM32F4xx_StdPeriph_Driver/inc)
include_directories(${STM32LIB_DIR}/CMSIS/Device/ST/STM32F4xx/Include)
+7 -2
View File
@@ -43,9 +43,14 @@
/*!<
Defines chip type,cortex-m3(1),cortex-m0(2)
Defines chip type,cortex-m3(1),cortex-m0(2), cortex-m4 without FPU(1), cortex-m4 with FPU(3)
*/
#define CFG_CHIP_TYPE (1)
#if defined(STM32F4)
#define CFG_CHIP_TYPE (3) // this add support for hardware floating point unit (saves registers on stack)
#else
#define CFG_CHIP_TYPE (1)
#endif
/*!<
Defines the lowest priority that be assigned.