sfizz/cmake/SfizzSIMDSourceFilesCheck.cmake

28 lines
852 B
CMake
Raw Normal View History

2019-11-25 16:10:30 +01:00
# Check SIMD
include (CheckIncludeFiles)
CHECK_INCLUDE_FILES(x86intrin.h HAVE_X86INTRIN_H)
CHECK_INCLUDE_FILES(intrin.h HAVE_INTRIN_H)
if (!APPLE)
2020-01-18 10:05:54 +01:00
CHECK_INCLUDE_FILES (arm_neon.h HAVE_ARM_NEON_H)
2019-11-25 16:10:30 +01:00
endif()
# SIMD checks
if (HAVE_X86INTRIN_H AND UNIX)
add_compile_options (-DHAVE_X86INTRIN_H)
2019-12-22 23:36:34 +01:00
set (SFIZZ_SIMD_SOURCES sfizz/SIMDSSE.cpp)
2019-11-25 16:10:30 +01:00
elseif (HAVE_INTRIN_H AND WIN32)
2020-01-31 18:25:51 +01:00
add_compile_options (-DHAVE_INTRIN_H)
2019-11-25 16:10:30 +01:00
set (SFIZZ_SIMD_SOURCES sfizz/SIMDSSE.cpp)
2020-01-18 10:05:54 +01:00
elseif (CMAKE_SYSTEM_PROCESSOR STREQUAL "armv7l")
2019-11-25 16:10:30 +01:00
add_compile_options (-DHAVE_ARM_NEON_H)
2020-01-18 10:05:54 +01:00
add_compile_options (-mfpu=neon)
2019-11-25 16:10:30 +01:00
add_compile_options (-march=native)
add_compile_options (-mtune=cortex-a53)
2020-01-18 10:05:54 +01:00
set (SFIZZ_SIMD_SOURCES sfizz/SIMDNEON.cpp)
2019-11-25 16:10:30 +01:00
else()
2019-12-22 23:36:34 +01:00
set (SFIZZ_SIMD_SOURCES sfizz/SIMDDummy.cpp)
2019-11-25 16:10:30 +01:00
endif()
set (SFIZZ_SOURCES ${SFIZZ_SOURCES} ${SFIZZ_SIMD_SOURCES})