diff options
author | dario mambro <dario.mambro@gmail.com> | 2020-12-19 22:23:29 +0100 |
---|---|---|
committer | dario mambro <dario.mambro@gmail.com> | 2020-12-24 14:38:47 +0100 |
commit | 6d78ad89cc4f3802cdedd0ec5e2bcf9893ba20cc (patch) | |
tree | 53647d9d69d49e8182e3350f627f29cf527153c2 /CMakeLists.txt | |
parent | 8dc269e569cfe6c796bf37a30c5cc4798be8a750 (diff) | |
download | pffft-6d78ad89cc4f3802cdedd0ec5e2bcf9893ba20cc.tar.gz |
added support for doubles with sse2
(cherry picked from commit a52039328c08555b1143dbc9100b8f6df44f2b90)
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 47cecb5..11dad3b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,6 +7,7 @@ option(USE_TYPE_DOUBLE "activate 'double' precision float?" ON) # architecture/optimization options option(USE_SIMD "use SIMD (SSE/AVX/NEON/ALTIVEC) CPU features? - " ON) +option(DISABLE_SIMD_AVX "disable AVX CPU features? - " OFF) option(USE_SIMD_NEON "force using NEON on ARM? (requires USE_SIMD)" OFF) option(USE_SCALAR_VECT "use 4-element vector scalar operations (if no other SIMD)" ON) @@ -133,10 +134,17 @@ if (USE_SIMD AND USE_SIMD_NEON) endif() if (USE_SIMD AND USE_TYPE_DOUBLE) if(WIN32) - set_property(SOURCE pffft_double.c PROPERTY COMPILE_FLAGS "/arch:AVX") + if(DISABLE_SIMD_AVX) + set_property(SOURCE pffft_double.c PROPERTY COMPILE_FLAGS "/arch:SSE2") + else() + set_property(SOURCE pffft_double.c PROPERTY COMPILE_FLAGS "/arch:AVX") + endif() else() set_property(SOURCE pffft_double.c PROPERTY COMPILE_FLAGS "-march=native") endif() + if(DISABLE_SIMD_AVX) + target_compile_definitions(PFFFT PRIVATE PFFFT_AVX_DISABLE=1) + endif() endif() target_link_libraries( PFFFT ${MATHLIB} ) set_property(TARGET PFFFT APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES |