diff options
author | YunQiang Su <wzssyqa@gmail.com> | 2023-08-23 17:02:49 -0400 |
---|---|---|
committer | Brad Smith <brad@comstyle.com> | 2023-08-23 17:06:06 -0400 |
commit | dbf03ad68ecce8fb1b2cc52a03d76a384f2537f8 (patch) | |
tree | 3e422977f02a7ee144b5a28798485df4b8c21454 | |
parent | dc02070d695113d581b3ea50598e3aa5f1c0f42f (diff) | |
download | llvm-dbf03ad68ecce8fb1b2cc52a03d76a384f2537f8.zip llvm-dbf03ad68ecce8fb1b2cc52a03d76a384f2537f8.tar.gz llvm-dbf03ad68ecce8fb1b2cc52a03d76a384f2537f8.tar.bz2 |
Compiler-rt: Fix MIPS CMake variables set
Move the code which sets CMake variables for MIPS to
compiler-rt/cmake/base-config-ix.cmake from compiler-rt/CMakeLists.txt.
compiler-rt/CMakeLists.txt includes compiler-rt/cmake/base-config-ix.cmake
very early. If the variables are set in compiler/CMakeLists.txt,
compiler-rt/cmake/base-config-ix.cmake cannot use them.
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D157900
-rw-r--r-- | compiler-rt/CMakeLists.txt | 14 | ||||
-rw-r--r-- | compiler-rt/cmake/base-config-ix.cmake | 13 |
2 files changed, 13 insertions, 14 deletions
diff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt index 1545340..3888995 100644 --- a/compiler-rt/CMakeLists.txt +++ b/compiler-rt/CMakeLists.txt @@ -124,20 +124,6 @@ if ("${COMPILER_RT_DEFAULT_TARGET_TRIPLE}" MATCHES ".*hf$") CHECK_SYMBOL_EXISTS (__thumb__ "" COMPILER_RT_ARM_THUMB) endif() endif() -if (${COMPILER_RT_DEFAULT_TARGET_ARCH} MATCHES "^mips") - CHECK_SYMBOL_EXISTS (_MIPS_ARCH_MIPS32R6 "" COMPILER_RT_MIPS32R6) - CHECK_SYMBOL_EXISTS (_MIPS_ARCH_MIPS64R6 "" COMPILER_RT_MIPS64R6) - CHECK_SYMBOL_EXISTS (__mips64 "" COMPILER_RT_MIPS_64) - CHECK_SYMBOL_EXISTS (__MIPSEL__ "" COMPILER_RT_MIPS_EL) - if ("${COMPILER_RT_MIPS_64}") - set(COMPILER_RT_DEFAULT_TARGET_ARCH "mips64") - else() - set(COMPILER_RT_DEFAULT_TARGET_ARCH "mips") - endif() - if ("${COMPILER_RT_MIPS_EL}") - set(COMPILER_RT_DEFAULT_TARGET_ARCH "${COMPILER_RT_DEFAULT_TARGET_ARCH}el") - endif() -endif() if ("${COMPILER_RT_DEFAULT_TARGET_TRIPLE}" MATCHES ".*android.*") set(ANDROID 1) string(REGEX MATCH "-target(=| +)[^ ]+android[a-z]*([0-9]+)" ANDROID_API_LEVEL "${CMAKE_C_FLAGS}") diff --git a/compiler-rt/cmake/base-config-ix.cmake b/compiler-rt/cmake/base-config-ix.cmake index 9c62320..908c8a4 100644 --- a/compiler-rt/cmake/base-config-ix.cmake +++ b/compiler-rt/cmake/base-config-ix.cmake @@ -226,6 +226,19 @@ macro(test_targets) test_target_arch(sparc "" "-m32") test_target_arch(sparcv9 "" "-m64") elseif("${COMPILER_RT_DEFAULT_TARGET_ARCH}" MATCHES "mips") + CHECK_SYMBOL_EXISTS (_MIPS_ARCH_MIPS32R6 "" COMPILER_RT_MIPS32R6) + CHECK_SYMBOL_EXISTS (_MIPS_ARCH_MIPS64R6 "" COMPILER_RT_MIPS64R6) + CHECK_SYMBOL_EXISTS (__mips64 "" COMPILER_RT_MIPS_64) + CHECK_SYMBOL_EXISTS (__MIPSEL__ "" COMPILER_RT_MIPS_EL) + if ("${COMPILER_RT_MIPS_64}") + set(COMPILER_RT_DEFAULT_TARGET_ARCH "mips64") + else() + set(COMPILER_RT_DEFAULT_TARGET_ARCH "mips") + endif() + if ("${COMPILER_RT_MIPS_EL}") + set(COMPILER_RT_DEFAULT_TARGET_ARCH "${COMPILER_RT_DEFAULT_TARGET_ARCH}el") + endif() + # FIXME: Ideally, we would build the N32 library too. if("${COMPILER_RT_MIPS_EL}" AND ("${COMPILER_RT_MIPS32R6}" OR "${COMPILER_RT_MIPS64R6}")) test_target_arch(mipsel "" "-mips32r6" "-mabi=32" "-D_LARGEFILE_SOURCE=1" "-D_FILE_OFFSET_BITS=64") |