File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -197,14 +197,14 @@ if (DEFINED TARGET)
197197 if (${TARGET} STREQUAL SKYLAKEX AND NOT NO_AVX512)
198198 set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -march=skylake-avx512" )
199199 endif ()
200- if (${TARGET} STREQUAL HASWELL AND NOT NO_AVX2)
200+ if (( ${TARGET} STREQUAL HASWELL OR ${TARGET} STREQUAL ZEN) AND NOT NO_AVX2)
201201 if (${CMAKE_C_COMPILER_ID} STREQUAL "GNU" )
202202 execute_process (COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION )
203203 if (${GCC_VERSION} VERSION_GREATER 4.7 OR ${GCC_VERSION} VERSION_EQUAL 4.7)
204204 set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mavx2" )
205205 endif ()
206206 elseif (${CMAKE_C_COMPILER_ID} STREQUAL "CLANG" )
207- set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mavx2" )
207+ set (KERNEL_DEFINITIONS "${KERNEL_DEFINITIONS} -mavx2 -mfma " )
208208 endif ()
209209 endif ()
210210 if (DEFINED HAVE_AVX)
Original file line number Diff line number Diff line change @@ -23,7 +23,7 @@ ifeq ($(C_COMPILER), CLANG)
2323# Any clang posing as gcc 4.2 should be new enough (3.4 or later)
2424 GCCVERSIONCHECK := $(GCCVERSIONGT4 )$(GCCVERSIONGTEQ4 )$(GCCMINORVERSIONGTEQ2 )
2525 ifeq ($(GCCVERSIONCHECK), $(filter $(GCCVERSIONCHECK), 011 110 111))
26- AVX2OPT = -mavx2
26+ AVX2OPT = -mavx2 -mfma
2727 endif
2828endif
2929ifdef NO_AVX2
@@ -73,6 +73,8 @@ else ifeq ($(TARGET_CORE), SKYLAKEX)
7373 endif
7474else ifeq ($(TARGET_CORE), HASWELL)
7575 override CFLAGS += -DBUILD_KERNEL -DTABLE_NAME=gotoblas_$(TARGET_CORE ) $(AVX2OPT )
76+ else ifeq ($(TARGET_CORE), ZEN)
77+ override CFLAGS += -DBUILD_KERNEL -DTABLE_NAME=gotoblas_$(TARGET_CORE ) $(AVX2OPT )
7678else ifeq ($(TARGET_CORE), LOONGSON3R4)
7779 override CFLAGS += -DBUILD_KERNEL -DTABLE_NAME=gotoblas_$(TARGET_CORE ) $(MSA_FLAGS )
7880else
You can’t perform that action at this time.
0 commit comments