aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/convert/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'host/lib/convert/CMakeLists.txt')
-rw-r--r--host/lib/convert/CMakeLists.txt17
1 files changed, 17 insertions, 0 deletions
diff --git a/host/lib/convert/CMakeLists.txt b/host/lib/convert/CMakeLists.txt
index 10376ba9c..cfd3c7f34 100644
--- a/host/lib/convert/CMakeLists.txt
+++ b/host/lib/convert/CMakeLists.txt
@@ -26,6 +26,7 @@ MESSAGE(STATUS "")
########################################################################
IF(CMAKE_COMPILER_IS_GNUCXX)
SET(EMMINTRIN_FLAGS -msse2)
+ SET(TMMINTRIN_FLAGS -mssse3)
ELSEIF(MSVC)
SET(EMMINTRIN_FLAGS /arch:SSE2)
ENDIF()
@@ -34,6 +35,10 @@ SET(CMAKE_REQUIRED_FLAGS ${EMMINTRIN_FLAGS})
CHECK_INCLUDE_FILE_CXX(emmintrin.h HAVE_EMMINTRIN_H)
SET(CMAKE_REQUIRED_FLAGS)
+SET(CMAKE_REQUIRED_FLAGS ${TMMINTRIN_FLAGS})
+CHECK_INCLUDE_FILE_CXX(tmmintrin.h HAVE_TMMINTRIN_H)
+SET(CMAKE_REQUIRED_FLAGS)
+
IF(HAVE_EMMINTRIN_H)
SET(convert_with_sse2_sources
${CMAKE_CURRENT_SOURCE_DIR}/sse2_sc16_to_sc16.cpp
@@ -53,6 +58,18 @@ IF(HAVE_EMMINTRIN_H)
LIBUHD_APPEND_SOURCES(${convert_with_sse2_sources})
ENDIF(HAVE_EMMINTRIN_H)
+IF(HAVE_TMMINTRIN_H)
+ SET(convert_with_ssse3_sources
+ ${CMAKE_CURRENT_SOURCE_DIR}/ssse3_pack_sc12.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/ssse3_unpack_sc12.cpp
+ )
+ SET_SOURCE_FILES_PROPERTIES(
+ ${convert_with_ssse3_sources}
+ PROPERTIES COMPILE_FLAGS "${TMMINTRIN_FLAGS}"
+ )
+ LIBUHD_APPEND_SOURCES(${convert_with_ssse3_sources})
+ENDIF(HAVE_TMMINTRIN_H)
+
########################################################################
# Check for NEON SIMD headers
########################################################################