From 9602fca02eaa5525eab40473f50d94945fd648dd Mon Sep 17 00:00:00 2001 From: Rashad Kanavath <rashad.kanavath@c-s.fr> Date: Fri, 25 Aug 2017 17:30:16 +0200 Subject: [PATCH] WIP: COMP: active SIMD extension on request (hardware dependent) --- SuperBuild/CMake/External_itk.cmake | 3 ++ SuperBuild/patches/ITK/itk-3-sseflag-all.diff | 28 +++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 SuperBuild/patches/ITK/itk-3-sseflag-all.diff diff --git a/SuperBuild/CMake/External_itk.cmake b/SuperBuild/CMake/External_itk.cmake index f419bd4e9f..81acc683bd 100644 --- a/SuperBuild/CMake/External_itk.cmake +++ b/SuperBuild/CMake/External_itk.cmake @@ -166,6 +166,9 @@ ExternalProject_Add(ITK -DITK_USE_SYSTEM_TIFF:BOOL=ON -DITK_USE_SYSTEM_PNG:BOOL=ON -DITK_FORBID_DOWNLOADS:BOOL=ON + -DITK_USE_SSE_FLAGS:BOOL=OFF + -DVNL_CONFIG_ENABLE_SSE2:BOOL=OFF + -DVNL_CONFIG_ENABLE_SSE2_ROUNDING:BOOL=OFF ${ITK_SB_CONFIG} DEPENDS ${ITK_DEPENDENCIES} CMAKE_COMMAND ${SB_CMAKE_COMMAND} diff --git a/SuperBuild/patches/ITK/itk-3-sseflag-all.diff b/SuperBuild/patches/ITK/itk-3-sseflag-all.diff new file mode 100644 index 0000000000..4dd7ade01c --- /dev/null +++ b/SuperBuild/patches/ITK/itk-3-sseflag-all.diff @@ -0,0 +1,28 @@ +diff -burN InsightToolkit-4.12.0.orig/CMakeLists.txt InsightToolkit-4.12.0/CMakeLists.txt +--- InsightToolkit-4.12.0.orig/CMakeLists.txt 2017-08-22 11:53:54.920931663 +0200 ++++ InsightToolkit-4.12.0/CMakeLists.txt 2017-08-25 17:45:01.603901798 +0200 +@@ -146,6 +146,9 @@ + option(ITK_DYNAMIC_LOADING "Support run-time loading of shared libraries" ON) + mark_as_advanced(ITK_DYNAMIC_LOADING) + ++option(ITK_USE_SSE_FLAGS "Enable SIMD optimization flags (hardware dependant)." ON) ++mark_as_advanced(ITK_USE_SSE_FLAGS) ++ + #----------------------------------------------------------------------------- + # Wrapping options + option(ITK_WRAP_PYTHON "Build Python support" OFF) +diff -burN InsightToolkit-4.12.0.orig/Modules/Core/Common/CMakeLists.txt InsightToolkit-4.12.0/Modules/Core/Common/CMakeLists.txt +--- InsightToolkit-4.12.0.orig/Modules/Core/Common/CMakeLists.txt 2017-08-22 11:53:56.200940262 +0200 ++++ InsightToolkit-4.12.0/Modules/Core/Common/CMakeLists.txt 2017-08-25 17:45:30.636094558 +0200 +@@ -42,8 +42,9 @@ + + + # Check if this platform support the sse2 rounding functions for 32 and 64 bits +-include(CheckSupportForSSERounding) +- ++if(ITK_USE_SSE_FLAGS) ++ include(CheckSupportForSSERounding) ++endif() + + # Test for atomics and other compiler intrinsics + include(itkCheckBuiltins) -- GitLab