CMakeLists.txt: Check CPU_i386 before setting MMX or SSE2 flags.

These flags aren't needed on 64-bit, so only set them on 32-bit.
This commit is contained in:
David Korth 2020-06-30 19:46:40 -04:00
parent 66e466b925
commit d3670e9dd9
3 changed files with 19 additions and 16 deletions

View File

@ -345,14 +345,15 @@ IF(CPU_i386 OR CPU_amd64)
utils/SuperMagicDrive_sse2.cpp
)
IF(MSVC AND NOT CMAKE_CL_64)
SET(SSE2_FLAG "/arch:SSE2")
ELSEIF(NOT MSVC)
# TODO: Other compilers?
# TODO: Not needed on 64-bit.
SET(MMX_FLAG "-mmmx")
SET(SSE2_FLAG "-msse2")
ENDIF()
IF(CPU_i386)
IF(MSVC)
SET(SSE2_FLAG "/arch:SSE2")
ELSE(MSVC)
# TODO: Other compilers?
SET(MMX_FLAG "-mmmx")
SET(SSE2_FLAG "-msse2")
ENDIF(MSVC)
ENDIF(CPU_i386)
IF(MMX_FLAG)
SET_SOURCE_FILES_PROPERTIES(utils/SuperMagicDrive_mmx.cpp

View File

@ -53,13 +53,14 @@ IF(CPU_i386 OR CPU_amd64)
ENDIF(GCC_5xx_LTO_ISSUES)
ENDIF(UNIX AND NOT APPLE)
IF(MSVC AND NOT CMAKE_CL_64)
IF(MSVC AND CPU_i386)
SET(SSE2_FLAG "/arch:SSE2")
SET(SSSE3_FLAG "/arch:SSE2")
ELSEIF(NOT MSVC)
# TODO: Other compilers?
SET(MMX_FLAG "-mmmx")
SET(SSE2_FLAG "-msse2")
IF(CPU_i386)
SET(MMX_FLAG "-mmmx")
SET(SSE2_FLAG "-msse2")
ENDIF(CPU_i386)
SET(SSSE3_FLAG "-mssse3")
ENDIF()

View File

@ -133,14 +133,15 @@ IF(CPU_i386 OR CPU_amd64)
ENDIF(GCC_5xx_LTO_ISSUES)
ENDIF(UNIX AND NOT APPLE)
IF(MSVC AND NOT CMAKE_CL_64)
IF(MSVC AND CPU_i386)
SET(SSE2_FLAG "/arch:SSE2")
SET(SSSE3_FLAG "/arch:SSE2")
SET(SSE41_FLAG "/arch:SSE2")
ELSEIF(NOT MSVC)
# TODO: Other compilers?
SET(MMX_FLAG "-mmmx")
SET(SSE2_FLAG "-msse2")
IF(CPU_i386)
SET(MMX_FLAG "-mmmx")
SET(SSE2_FLAG "-msse2")
ENDIF(CPU_i386)
SET(SSSE3_FLAG "-mssse3")
SET(SSE41_FLAG "-msse4.1")
ENDIF()