Disable some flags in Apple x86_64

@abetlen reports some flags cannot work in Apple x86_64.
Disable them by default.

b4939c2d99/CMakeLists.txt (L9-L16)
This commit is contained in:
Wu Zhenyu 2023-10-01 16:52:55 +08:00
parent f5ef5cfb18
commit 3816e93072
No known key found for this signature in database
GPG key ID: 0E07E1F8C0EC10AD

View file

@ -58,12 +58,19 @@ option(LLAMA_SANITIZE_ADDRESS "llama: enable address sanitizer"
option(LLAMA_SANITIZE_UNDEFINED "llama: enable undefined sanitizer" OFF)
# instruction set specific
option(LLAMA_AVX "llama: enable AVX" ON)
option(LLAMA_AVX2 "llama: enable AVX2" ON)
if (APPLE AND NOT CMAKE_SYSTEM_PROCESSOR MATCHES "arm64")
# Need to disable these llama.cpp flags on Apple x86_64,
# otherwise users may encounter invalid instruction errors
option(NOT_APPLE_X86 OFF)
else()
option(NOT_APPLE_X86 ON)
endif()
option(LLAMA_AVX "llama: enable AVX" ${NOT_APPLE_X86})
option(LLAMA_AVX2 "llama: enable AVX2" ${NOT_APPLE_X86})
option(LLAMA_AVX512 "llama: enable AVX512" OFF)
option(LLAMA_AVX512_VBMI "llama: enable AVX512-VBMI" OFF)
option(LLAMA_AVX512_VNNI "llama: enable AVX512-VNNI" OFF)
option(LLAMA_FMA "llama: enable FMA" ON)
option(LLAMA_FMA "llama: enable FMA" ${NOT_APPLE_X86})
# in MSVC F16C is implied with AVX2/AVX512
if (NOT MSVC)
option(LLAMA_F16C "llama: enable F16C" ON)