diff --git a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake --- a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake +++ b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake @@ -173,7 +173,13 @@ elseif(__AARCH64) add_default_target_arch(aarch64) elseif(__X86_64) - add_default_target_arch(x86_64) + if(CMAKE_SIZEOF_VOID_P EQUAL "4") + add_default_target_arch(x32) + elseif(CMAKE_SIZEOF_VOID_P EQUAL "8") + add_default_target_arch(x86_64) + else() + message(FATAL_ERROR "Unsupported pointer size for X86_64") + endif() elseif(__I386) add_default_target_arch(i386) elseif(__MIPS64) # must be checked before __MIPS