| @@ -33,7 +33,7 @@ endif () | |||||
| if (DEFINED BINARY AND DEFINED TARGET AND BINARY EQUAL 32) | if (DEFINED BINARY AND DEFINED TARGET AND BINARY EQUAL 32) | ||||
| message(STATUS "Compiling a ${BINARY}-bit binary.") | message(STATUS "Compiling a ${BINARY}-bit binary.") | ||||
| set(NO_AVX 1) | set(NO_AVX 1) | ||||
| if (${TARGET} STREQUAL "HASWELL" OR ${TARGET} STREQUAL "SANDYBRIDGE" OR ${TARGET} STREQUAL "SKYLAKEX") | |||||
| if (${TARGET} STREQUAL "HASWELL" OR ${TARGET} STREQUAL "SANDYBRIDGE" OR ${TARGET} STREQUAL "SKYLAKEX" OR ${TARGET} STREQUAL "COOPERLAKE") | |||||
| set(TARGET "NEHALEM") | set(TARGET "NEHALEM") | ||||
| endif () | endif () | ||||
| if (${TARGET} STREQUAL "BULLDOZER" OR ${TARGET} STREQUAL "PILEDRIVER" OR ${TARGET} STREQUAL "ZEN") | if (${TARGET} STREQUAL "BULLDOZER" OR ${TARGET} STREQUAL "PILEDRIVER" OR ${TARGET} STREQUAL "ZEN") | ||||
| @@ -45,6 +45,18 @@ if (DEFINED BINARY AND DEFINED TARGET AND BINARY EQUAL 32) | |||||
| endif () | endif () | ||||
| if (DEFINED TARGET) | if (DEFINED TARGET) | ||||
| if (${TARGET} STREQUAL "COOPERLAKE" AND NOT NO_AVX512) | |||||
| # if (${CMAKE_C_COMPILER_ID} STREQUAL "GNU") | |||||
| execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION) | |||||
| if (${GCC_VERSION} VERSION_GREATER 10.1 OR ${GCC_VERSION} VERSION_EQUAL 10.1) | |||||
| set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=cooperlake") | |||||
| else() | |||||
| set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512") | |||||
| endif() | |||||
| # elseif (${CMAKE_C_COMPILER_ID} STREQUAL "CLANG") | |||||
| # set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mavx2") | |||||
| # endif() | |||||
| endif() | |||||
| if (${TARGET} STREQUAL "SKYLAKEX" AND NOT NO_AVX512) | if (${TARGET} STREQUAL "SKYLAKEX" AND NOT NO_AVX512) | ||||
| set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512") | set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512") | ||||
| endif() | endif() | ||||