forked from OSchip/llvm-project
[Builtin] [ARM] Update CMake to support the build of armv6m
Summary: Setting -DCOMPILER_RT_TEST_TARGET_TRIPLE=armv6m-none-eabi will enable the build of builtin functions ARMv6m. Currently, only those asms that support armv6m are added. TODO:All asm sin ARM_EABI_Sources are ported for thumb1 so Thumb1_EABI_Sources will be deprecated. Reviewers: rengolin, compnerd Reviewed By: compnerd Subscribers: aemerson, mgorny, llvm-commits Differential Revision: https://reviews.llvm.org/D28463 llvm-svn: 292504
This commit is contained in:
parent
db101e4d57
commit
93b558a486
|
@ -172,6 +172,7 @@ macro(test_targets)
|
|||
else()
|
||||
test_target_arch(arm "" "-march=armv7-a" "-mfloat-abi=soft")
|
||||
test_target_arch(armhf "" "-march=armv7-a" "-mfloat-abi=hard")
|
||||
test_target_arch(armv6m "" "-march=armv6m" "-mfloat-abi=soft")
|
||||
endif()
|
||||
elseif("${COMPILER_RT_DEFAULT_TARGET_ARCH}" MATCHES "aarch32")
|
||||
test_target_arch(aarch32 "" "-march=armv8-a")
|
||||
|
|
|
@ -24,7 +24,7 @@ int foo(int x, int y) {
|
|||
|
||||
|
||||
set(ARM64 aarch64)
|
||||
set(ARM32 arm armhf)
|
||||
set(ARM32 arm armhf armv6m)
|
||||
set(X86 i386 i686)
|
||||
set(X86_64 x86_64)
|
||||
set(MIPS32 mips mipsel)
|
||||
|
|
|
@ -302,6 +302,12 @@ set(arm_SOURCES
|
|||
arm/umodsi3.S
|
||||
${GENERIC_SOURCES})
|
||||
|
||||
set(thumb1_SOURCES
|
||||
arm/divsi3.S
|
||||
arm/udivsi3.S
|
||||
arm/comparesf2.S
|
||||
${GENERIC_SOURCES})
|
||||
|
||||
set(arm_EABI_SOURCES
|
||||
arm/aeabi_cdcmp.S
|
||||
arm/aeabi_cdcmpeq_check_nan.c
|
||||
|
@ -320,6 +326,20 @@ set(arm_EABI_SOURCES
|
|||
arm/aeabi_memset.S
|
||||
arm/aeabi_uidivmod.S
|
||||
arm/aeabi_uldivmod.S)
|
||||
|
||||
set(thumb1_EABI_SOURCES
|
||||
arm/aeabi_cdcmpeq_check_nan.c
|
||||
arm/aeabi_cfcmpeq_check_nan.c
|
||||
arm/aeabi_div0.c
|
||||
arm/aeabi_drsub.c
|
||||
arm/aeabi_fcmp.S
|
||||
arm/aeabi_frsub.c
|
||||
arm/aeabi_idivmod.S
|
||||
arm/aeabi_memcmp.S
|
||||
arm/aeabi_memcpy.S
|
||||
arm/aeabi_memmove.S
|
||||
arm/aeabi_uidivmod.S)
|
||||
|
||||
set(arm_Thumb1_JT_SOURCES
|
||||
arm/switch16.S
|
||||
arm/switch32.S
|
||||
|
@ -401,6 +421,10 @@ elseif(NOT WIN32)
|
|||
${arm_SOURCES}
|
||||
${arm_EABI_SOURCES}
|
||||
${arm_Thumb1_SOURCES})
|
||||
|
||||
set(thumb1_SOURCES
|
||||
${thumb1_SOURCES}
|
||||
${thumb1_EABI_SOURCES})
|
||||
endif()
|
||||
|
||||
set(aarch64_SOURCES
|
||||
|
@ -431,7 +455,7 @@ set(armv7k_SOURCES ${arm_SOURCES})
|
|||
set(arm64_SOURCES ${aarch64_SOURCES})
|
||||
|
||||
# macho_embedded archs
|
||||
set(armv6m_SOURCES ${GENERIC_SOURCES})
|
||||
set(armv6m_SOURCES ${thumb1_SOURCES})
|
||||
set(armv7m_SOURCES ${arm_SOURCES})
|
||||
set(armv7em_SOURCES ${arm_SOURCES})
|
||||
|
||||
|
|
Loading…
Reference in New Issue