@@ -172,9 +172,9 @@ if (DEFINED TARGET)
172172 endif ()
173173 elseif (${CMAKE_C_COMPILER_ID} STREQUAL "Clang" OR ${CMAKE_C_COMPILER_ID} STREQUAL "AppleClang" )
174174 if (${CMAKE_C_COMPILER_VERSION} VERSION_GREATER 8.99)
175- set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=cooperlake" )
175+ set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=cooperlake -exhaustive-register-search " )
176176 else ()
177- set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512" )
177+ set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512 -exhaustive-register-search " )
178178 endif ()
179179 endif ()
180180 endif ()
@@ -188,14 +188,17 @@ if (DEFINED TARGET)
188188 endif ()
189189 elseif (${CMAKE_C_COMPILER_ID} STREQUAL "Clang" OR ${CMAKE_C_COMPILER_ID} STREQUAL "AppleClang" )
190190 if (${CMAKE_C_COMPILER_VERSION} VERSION_GREATER 12.0)
191- set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=sapphirerapids" )
191+ set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=sapphirerapids -exhaustive-register-search " )
192192 else ()
193- set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512" )
193+ set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512 -exhaustive-register-search " )
194194 endif ()
195195 endif ()
196196 endif ()
197197 if (${TARGET} STREQUAL SKYLAKEX AND NOT NO_AVX512)
198198 set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512" )
199+ if (${CMAKE_C_COMPILER_ID} STREQUAL "Clang" OR ${CMAKE_C_COMPILER_ID} STREQUAL "AppleClang" )
200+ set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -exhaustive-register-search" )
201+ endif ()
199202 endif ()
200203
201204 if (((${TARGET} STREQUAL ZEN) AND HAVE_AVX512VL) AND NOT NO_AVX512)
@@ -212,6 +215,7 @@ if (DEFINED TARGET)
212215 else ()
213216 set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512" )
214217 endif ()
218+ set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -exhaustive-register-search" )
215219 endif ()
216220 endif ()
217221
0 commit comments