[PATCH 1015/1017] use _LLC_HOST_CPU as internal variable
authorAndreas Beckmann <anbe@debian.org>
Tue, 15 Mar 2022 10:05:45 +0000 (11:05 +0100)
committerAndreas Beckmann <anbe@debian.org>
Tue, 13 Dec 2022 03:08:31 +0000 (03:08 +0000)
do not set LLC_HOST_CPU to LLC_HOST_CPU_AUTO as it will turn on
HOST_CPU_FORCED on a subsequent cmake run

Gbp-Pq: Name 1015-use-_LLC_HOST_CPU-as-internal-variable.patch

CMakeLists.txt
cmake/LLVM.cmake
lib/kernel/host/CMakeLists.txt
tests/regression/CMakeLists.txt

index 19cde2eb5b3d82023771f27d65a1205d05351bf9..719b560bcd80c49d8b3498c754e9b3a8b74814c6 100644 (file)
@@ -484,7 +484,7 @@ if(ENABLE_LLVM)
 
   if(INTEL_SDE_AVX512)
     set(HOST_CPU_FORCED 1 CACHE INTERNAL "CPU is forced by user" FORCE)
-    set(LLC_HOST_CPU "skylake-avx512" CACHE STRING "The Host CPU to use with llc" FORCE)
+    set(_LLC_HOST_CPU "skylake-avx512" CACHE STRING "The Host CPU to use with llc" FORCE)
   endif()
   endif()
 
@@ -1210,7 +1210,7 @@ if(ENABLE_HOST_CPU_DEVICES)
   # TODO OCL_KERNEL_TARGET -> CPU_TARGET_TRIPLE
   # TODO OCL_KERNEL_TARGET_CPU -> OCL_KERNEL_TARGET_CPU
   set(OCL_KERNEL_TARGET "${LLC_TRIPLE}") #The kernel target triplet.
-  set(OCL_KERNEL_TARGET_CPU "${LLC_HOST_CPU}") #The kernel target CPU variant.
+  set(OCL_KERNEL_TARGET_CPU "${_LLC_HOST_CPU}") #The kernel target CPU variant.
   set(BUILD_BASIC 1)
   set(BUILD_PTHREAD 1)
 endif()
@@ -1806,6 +1806,7 @@ if (ENABLE_LLVM)
   MESSAGE(STATUS "LLC_TRIPLE: ${LLC_TRIPLE}")
   MESSAGE(STATUS "LLC_HOST_CPU_AUTO: ${LLC_HOST_CPU_AUTO}")
   MESSAGE(STATUS "LLC_HOST_CPU: ${LLC_HOST_CPU}")
+  MESSAGE(STATUS "_LLC_HOST_CPU: ${_LLC_HOST_CPU}")
   MESSAGE(STATUS "HOST_CPU_FORCED: ${HOST_CPU_FORCED}")
   endif()
 endif()
index e4f61b417d681cd1d6612e426f0c645f2f4bf3f2..a67363d1519bdc97b2e4e64190e8f1aef2d5c6b4 100644 (file)
@@ -695,9 +695,10 @@ endif()
 
 if((DEFINED LLC_HOST_CPU) AND (NOT LLC_HOST_CPU STREQUAL LLC_HOST_CPU_AUTO))
   message(STATUS "Autodetected CPU ${LLC_HOST_CPU_AUTO} overriden by user to ${LLC_HOST_CPU}")
+  set(_LLC_HOST_CPU "${LLC_HOST_CPU}")
   set(HOST_CPU_FORCED 1 CACHE INTERNAL "CPU is forced by user")
 else()
-  set(LLC_HOST_CPU "${LLC_HOST_CPU_AUTO}" CACHE STRING "The Host CPU to use with llc")
+  set(_LLC_HOST_CPU "${LLC_HOST_CPU_AUTO}")
   set(HOST_CPU_FORCED 0 CACHE INTERNAL "CPU is forced by user")
 endif()
 
@@ -705,11 +706,11 @@ endif()
 # Some architectures have -march and -mcpu reversed
 if(NOT DEFINED CLANG_MARCH_FLAG)
   message(STATUS "Checking clang -march vs. -mcpu flag")
-  custom_try_compile_clang_silent("" "return 0;" RES ${CLANG_TARGET_OPTION}${LLC_TRIPLE} -march=${LLC_HOST_CPU})
+  custom_try_compile_clang_silent("" "return 0;" RES ${CLANG_TARGET_OPTION}${LLC_TRIPLE} -march=${_LLC_HOST_CPU})
   if(NOT RES)
     set(CLANG_MARCH_FLAG "-march=")
   else()
-    custom_try_compile_clang_silent("" "return 0;" RES ${CLANG_TARGET_OPTION}${LLC_TRIPLE} -mcpu=${LLC_HOST_CPU})
+    custom_try_compile_clang_silent("" "return 0;" RES ${CLANG_TARGET_OPTION}${LLC_TRIPLE} -mcpu=${_LLC_HOST_CPU})
     if(NOT RES)
       set(CLANG_MARCH_FLAG "-mcpu=")
     else()
@@ -781,7 +782,7 @@ endif()
 if(ENABLE_HOST_CPU_DEVICES AND NOT DEFINED ${CL_DISABLE_HALF})
   set(CL_DISABLE_HALF 0)
   message(STATUS "Checking fp16 support")
-  custom_try_compile_clang_silent("__fp16 callfp16(__fp16 a) { return a * (__fp16)1.8; };" "__fp16 x=callfp16((__fp16)argc);" RESV ${CLANG_TARGET_OPTION}${LLC_TRIPLE} ${CLANG_MARCH_FLAG}${LLC_HOST_CPU})
+  custom_try_compile_clang_silent("__fp16 callfp16(__fp16 a) { return a * (__fp16)1.8; };" "__fp16 x=callfp16((__fp16)argc);" RESV ${CLANG_TARGET_OPTION}${LLC_TRIPLE} ${CLANG_MARCH_FLAG}${_LLC_HOST_CPU})
   if(RESV)
     set(CL_DISABLE_HALF 1)
   endif()
index ffb21428cad5cf308a958b6254dbdf3ba49032f8..2431c370978f9522ad62c37551035637fbcb5d68 100644 (file)
@@ -469,7 +469,7 @@ endfunction()
 foreach(CPU_VARIANT IN LISTS KERNELLIB_HOST_CPU_VARIANTS)
 
 if(CPU_VARIANT MATCHES "native")
-  set(VARIANT "${LLC_HOST_CPU}")
+  set(VARIANT "${_LLC_HOST_CPU}")
 else()
   set(VARIANT "${CPU_VARIANT}")
 endif()
index de7ffd0ec46e390218245801375c6cb81f434536..9fec67f854f9fd12cc8c566c5841002df233214a 100644 (file)
@@ -94,7 +94,7 @@ if(LLVM_VERSION_MAJOR GREATER 9 AND LLVM_VERSION_MAJOR LESS 13)
   # (sporadically?) segfaults on AMD CPUs
   # in distro builds, we don't know whether we target a failing or a
   # passing CPU during the tests
-  if(X86_64 AND (KERNELLIB_HOST_DISTRO_VARIANTS OR LLC_HOST_CPU MATCHES "^znver.*"))
+  if(X86_64 AND (KERNELLIB_HOST_DISTRO_VARIANTS OR _LLC_HOST_CPU MATCHES "^znver.*"))
     set_tests_properties("regression/test_llvm_segfault_issue_889" PROPERTIES DISABLED 1)
   endif()
 endif()