Use try_compile tests to get sizeof(uintptr_t)
This commit is contained in:
parent
49f4496de2
commit
a4c65ba7ed
@ -537,24 +537,18 @@ if( LLVM_NATIVE_ARCH STREQUAL "host" )
|
|||||||
string(REGEX MATCH "^[^-]*" LLVM_NATIVE_ARCH ${LLVM_HOST_TRIPLE})
|
string(REGEX MATCH "^[^-]*" LLVM_NATIVE_ARCH ${LLVM_HOST_TRIPLE})
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 8)
|
|
||||||
|
|
||||||
if (LLVM_NATIVE_ARCH MATCHES "i[2-6]86")
|
if (LLVM_NATIVE_ARCH MATCHES "i[2-6]86")
|
||||||
set(LLVM_NATIVE_ARCH X86)
|
set(LLVM_NATIVE_ARCH X86)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH STREQUAL "x86")
|
elseif (LLVM_NATIVE_ARCH STREQUAL "x86")
|
||||||
set(LLVM_NATIVE_ARCH X86)
|
set(LLVM_NATIVE_ARCH X86)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH STREQUAL "amd64")
|
elseif (LLVM_NATIVE_ARCH STREQUAL "amd64")
|
||||||
set(LLVM_NATIVE_ARCH X86)
|
set(LLVM_NATIVE_ARCH X86)
|
||||||
elseif (LLVM_NATIVE_ARCH STREQUAL "x86_64")
|
elseif (LLVM_NATIVE_ARCH STREQUAL "x86_64")
|
||||||
set(LLVM_NATIVE_ARCH X86)
|
set(LLVM_NATIVE_ARCH X86)
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "sparc")
|
elseif (LLVM_NATIVE_ARCH MATCHES "sparc")
|
||||||
set(LLVM_NATIVE_ARCH Sparc)
|
set(LLVM_NATIVE_ARCH Sparc)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "powerpc")
|
elseif (LLVM_NATIVE_ARCH MATCHES "powerpc")
|
||||||
set(LLVM_NATIVE_ARCH PowerPC)
|
set(LLVM_NATIVE_ARCH PowerPC)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "ppc64le")
|
elseif (LLVM_NATIVE_ARCH MATCHES "ppc64le")
|
||||||
set(LLVM_NATIVE_ARCH PowerPC)
|
set(LLVM_NATIVE_ARCH PowerPC)
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "aarch64")
|
elseif (LLVM_NATIVE_ARCH MATCHES "aarch64")
|
||||||
@ -563,40 +557,30 @@ elseif (LLVM_NATIVE_ARCH MATCHES "arm64")
|
|||||||
set(LLVM_NATIVE_ARCH AArch64)
|
set(LLVM_NATIVE_ARCH AArch64)
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "arm")
|
elseif (LLVM_NATIVE_ARCH MATCHES "arm")
|
||||||
set(LLVM_NATIVE_ARCH ARM)
|
set(LLVM_NATIVE_ARCH ARM)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "avr")
|
elseif (LLVM_NATIVE_ARCH MATCHES "avr")
|
||||||
set(LLVM_NATIVE_ARCH AVR)
|
set(LLVM_NATIVE_ARCH AVR)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 2)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "mips")
|
elseif (LLVM_NATIVE_ARCH MATCHES "mips")
|
||||||
set(LLVM_NATIVE_ARCH Mips)
|
set(LLVM_NATIVE_ARCH Mips)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "xcore")
|
elseif (LLVM_NATIVE_ARCH MATCHES "xcore")
|
||||||
set(LLVM_NATIVE_ARCH XCore)
|
set(LLVM_NATIVE_ARCH XCore)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "msp430")
|
elseif (LLVM_NATIVE_ARCH MATCHES "msp430")
|
||||||
set(LLVM_NATIVE_ARCH MSP430)
|
set(LLVM_NATIVE_ARCH MSP430)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 2)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "hexagon")
|
elseif (LLVM_NATIVE_ARCH MATCHES "hexagon")
|
||||||
set(LLVM_NATIVE_ARCH Hexagon)
|
set(LLVM_NATIVE_ARCH Hexagon)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "s390x")
|
elseif (LLVM_NATIVE_ARCH MATCHES "s390x")
|
||||||
set(LLVM_NATIVE_ARCH SystemZ)
|
set(LLVM_NATIVE_ARCH SystemZ)
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "wasm32")
|
elseif (LLVM_NATIVE_ARCH MATCHES "wasm32")
|
||||||
set(LLVM_NATIVE_ARCH WebAssembly)
|
set(LLVM_NATIVE_ARCH WebAssembly)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "wasm64")
|
elseif (LLVM_NATIVE_ARCH MATCHES "wasm64")
|
||||||
set(LLVM_NATIVE_ARCH WebAssembly)
|
set(LLVM_NATIVE_ARCH WebAssembly)
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "riscv32")
|
elseif (LLVM_NATIVE_ARCH MATCHES "riscv32")
|
||||||
set(LLVM_NATIVE_ARCH RISCV)
|
set(LLVM_NATIVE_ARCH RISCV)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "riscv64")
|
elseif (LLVM_NATIVE_ARCH MATCHES "riscv64")
|
||||||
set(LLVM_NATIVE_ARCH RISCV)
|
set(LLVM_NATIVE_ARCH RISCV)
|
||||||
elseif (LLVM_NATIVE_ARCH STREQUAL "m68k")
|
elseif (LLVM_NATIVE_ARCH STREQUAL "m68k")
|
||||||
set(LLVM_NATIVE_ARCH M68k)
|
set(LLVM_NATIVE_ARCH M68k)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "loongarch32")
|
elseif (LLVM_NATIVE_ARCH MATCHES "loongarch32")
|
||||||
set(LLVM_NATIVE_ARCH LoongArch)
|
set(LLVM_NATIVE_ARCH LoongArch)
|
||||||
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T 4)
|
|
||||||
elseif (LLVM_NATIVE_ARCH MATCHES "loongarch64")
|
elseif (LLVM_NATIVE_ARCH MATCHES "loongarch64")
|
||||||
set(LLVM_NATIVE_ARCH LoongArch)
|
set(LLVM_NATIVE_ARCH LoongArch)
|
||||||
else ()
|
else ()
|
||||||
@ -634,6 +618,21 @@ else ()
|
|||||||
endif ()
|
endif ()
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
|
foreach(i IN ITEMS 8 4)
|
||||||
|
try_compile(SIZEOF_UINTPTR_T_IS_${i}
|
||||||
|
SOURCE_FROM_CONTENT
|
||||||
|
"test-sizeof-uintptr_t.cpp"
|
||||||
|
"#include <cstdint>\n
|
||||||
|
static_assert(sizeof(uintptr_t) == ${i}); int main(){}"
|
||||||
|
CXX_STANDARD 17
|
||||||
|
LOG_DESCRIPTION "testing sizeof(uintptr_t)")
|
||||||
|
|
||||||
|
if(SIZEOF_UINTPTR_T_IS_${i})
|
||||||
|
set(LLVM_NATIVE_ARCH_SIZEOF_UINTPTR_T ${i})
|
||||||
|
break()
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
|
||||||
if( MSVC )
|
if( MSVC )
|
||||||
set(SHLIBEXT ".lib")
|
set(SHLIBEXT ".lib")
|
||||||
set(stricmp "_stricmp")
|
set(stricmp "_stricmp")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user