diff --git a/llvm/lib/Support/BLAKE3/CMakeLists.txt b/llvm/lib/Support/BLAKE3/CMakeLists.txt index 615665becf41..718dd6421648 100644 --- a/llvm/lib/Support/BLAKE3/CMakeLists.txt +++ b/llvm/lib/Support/BLAKE3/CMakeLists.txt @@ -4,21 +4,6 @@ set(LLVM_BLAKE3_FILES blake3_portable.c ) -set(CAN_USE_ASSEMBLER TRUE) -# Some LLVM builders set "CC=ccache /path/to/clang" as environment variable, -# which confuses CMake thinking the assembler to use is the 'ccache' binary. -# These builders need to also set "ASM=/path/to/clang" in environment, but until -# this happens check for this case and disable building the assembly files. -get_filename_component(ASM_BINARY ${CMAKE_ASM_COMPILER} NAME) -if (ASM_BINARY STREQUAL "ccache") - message(WARNING "CMake is set to use '${CMAKE_ASM_COMPILER}' as assembler " - "which is likely due to having 'CC=ccache /path/to/clang' in the environment. " - "Building the BLAKE3 SIMD-optimized assembly files is disabled, set " - "'ASM=/path/to/clang' as environment variable and do a clean re-configure " - "to correct this.") - set(CAN_USE_ASSEMBLER FALSE) -endif() - # The BLAKE3 team recommends using the assembly versions, from the README: # # "For each of the x86 SIMD instruction sets, four versions are available: @@ -26,18 +11,13 @@ endif() # version using C intrinsics. The assembly versions are generally # preferred. They perform better, they perform more consistently across # different compilers, and they build more quickly." - +# FIXME: Figure out what is wrong with the builders when using the assembly files and neon. if (MSVC) - check_symbol_exists(_M_X64 "" IS_X64) - check_symbol_exists(_M_ARM64 "" IS_ARM64) -else() - check_symbol_exists(__x86_64__ "" IS_X64) - check_symbol_exists(__aarch64__ "" IS_ARM64) + enable_language(ASM_MASM) endif() -if (IS_X64 AND CAN_USE_ASSEMBLER) +if (FALSE)#CMAKE_SYSTEM_PROCESSOR MATCHES "^(x86_64|AMD64)$") if (MSVC) - enable_language(ASM_MASM) list(APPEND LLVM_BLAKE3_FILES blake3_sse2_x86-64_windows_msvc.asm blake3_sse41_x86-64_windows_msvc.asm @@ -61,15 +41,14 @@ if (IS_X64 AND CAN_USE_ASSEMBLER) endif() endif() -if (IS_ARM64) +if (FALSE)#CMAKE_SYSTEM_PROCESSOR MATCHES "^(arm|aarch)") list(APPEND LLVM_BLAKE3_FILES blake3_neon.c ) endif() -if (IS_X64 AND NOT CAN_USE_ASSEMBLER) - add_definitions(-DBLAKE3_NO_AVX512 -DBLAKE3_NO_AVX2 -DBLAKE3_NO_SSE41 -DBLAKE3_NO_SSE2) -endif() +# FIXME: Figure out what is wrong with the builders when using the assembly files. +add_definitions(-DBLAKE3_NO_AVX512 -DBLAKE3_NO_AVX2 -DBLAKE3_NO_SSE41 -DBLAKE3_NO_SSE2 -DBLAKE3_USE_NEON=0) add_library(LLVMSupportBlake3 OBJECT EXCLUDE_FROM_ALL ${LLVM_BLAKE3_FILES}) llvm_update_compile_flags(LLVMSupportBlake3)