Split ARM and ARM64 architectures. Details: - CONFIG_ARM64 is decoupled from CONFIG_ARM (not a subset anymore) - Arch and include AArch64 files are in a dedicated directory (arch/arm64 and include/arch/arm64) - AArch64 boards and SoC are moved to soc/arm64 and boards/arm64 - AArch64-specific DTS files are moved to dts/arm64 - The A72 support for the bcm_vk/viper board is moved in the boards/bcm_vk/viper directory Signed-off-by: Carlo Caione <ccaione@baylibre.com>
36 lines
1.1 KiB
CMake
36 lines
1.1 KiB
CMake
# SPDX-License-Identifier: Apache-2.0
|
|
list(APPEND TOOLCHAIN_C_FLAGS -mcpu=${GCC_M_CPU})
|
|
list(APPEND TOOLCHAIN_LD_FLAGS -mcpu=${GCC_M_CPU})
|
|
|
|
if(CONFIG_COMPILER_ISA_THUMB2)
|
|
list(APPEND TOOLCHAIN_C_FLAGS -mthumb)
|
|
list(APPEND TOOLCHAIN_LD_FLAGS -mthumb)
|
|
endif()
|
|
|
|
list(APPEND TOOLCHAIN_C_FLAGS -mabi=aapcs)
|
|
list(APPEND TOOLCHAIN_LD_FLAGS -mabi=aapcs)
|
|
|
|
# Defines a mapping from GCC_M_CPU to FPU
|
|
|
|
if(CONFIG_CPU_HAS_FPU_DOUBLE_PRECISION)
|
|
set(PRECISION_TOKEN)
|
|
else()
|
|
set(PRECISION_TOKEN sp-)
|
|
endif()
|
|
|
|
set(FPU_FOR_cortex-m4 fpv4-${PRECISION_TOKEN}d16)
|
|
set(FPU_FOR_cortex-m7 fpv5-${PRECISION_TOKEN}d16)
|
|
set(FPU_FOR_cortex-m33 fpv5-${PRECISION_TOKEN}d16)
|
|
|
|
if(CONFIG_FPU)
|
|
list(APPEND TOOLCHAIN_C_FLAGS -mfpu=${FPU_FOR_${GCC_M_CPU}})
|
|
list(APPEND TOOLCHAIN_LD_FLAGS -mfpu=${FPU_FOR_${GCC_M_CPU}})
|
|
if (CONFIG_FP_SOFTABI)
|
|
list(APPEND TOOLCHAIN_C_FLAGS -mfloat-abi=softfp)
|
|
list(APPEND TOOLCHAIN_LD_FLAGS -mfloat-abi=softfp)
|
|
elseif(CONFIG_FP_HARDABI)
|
|
list(APPEND TOOLCHAIN_C_FLAGS -mfloat-abi=hard)
|
|
list(APPEND TOOLCHAIN_LD_FLAGS -mfloat-abi=hard)
|
|
endif()
|
|
endif()
|