Blob Blame History Raw
diff -up ./cmake/pcl_find_sse.cmake.sse2 ./cmake/pcl_find_sse.cmake
--- ./cmake/pcl_find_sse.cmake.sse2	2020-05-11 04:59:26.000000000 -0400
+++ ./cmake/pcl_find_sse.cmake	2020-05-29 17:53:00.504657076 -0400
@@ -4,20 +4,6 @@ macro(PCL_CHECK_FOR_SSE)
     set(SSE_FLAGS)
     set(SSE_DEFINITIONS)
 
-    if(NOT CMAKE_CROSSCOMPILING)
-        # Test GCC/G++ and CLANG
-        if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANG)
-            include(CheckCXXCompilerFlag)
-            check_cxx_compiler_flag("-march=native" HAVE_MARCH)
-            if(HAVE_MARCH)
-                list(APPEND SSE_FLAGS "-march=native")
-            else()
-                list(APPEND SSE_FLAGS "-mtune=native")
-            endif()
-            message(STATUS "Using CPU native flags for SSE optimization: ${SSE_FLAGS}")
-        endif()
-    endif()
-
     # Unfortunately we need to check for SSE to enable "-mfpmath=sse" alongside
     # "-march=native". The reason for this is that by default, 32bit architectures
     # tend to use the x87 FPU (which has 80 bit internal precision), thus leading
@@ -170,18 +156,9 @@ macro(PCL_CHECK_FOR_SSE)
     set(CMAKE_REQUIRED_FLAGS)
 
     if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANG)
-        if(HAVE_SSE4_2_EXTENSIONS)
-            list(APPEND SSE_FLAGS "-msse4.2" "-mfpmath=sse")
-        elseif(HAVE_SSE4_1_EXTENSIONS)
-            list(APPEND SSE_FLAGS "-msse4.1" "-mfpmath=sse")
-        elseif(HAVE_SSSE3_EXTENSIONS)
-            list(APPEND SSE_FLAGS "-mssse3" "-mfpmath=sse")
-        elseif(HAVE_SSE3_EXTENSIONS)
-            list(APPEND SSE_FLAGS "-msse3" "-mfpmath=sse")
-        elseif(HAVE_SSE2_EXTENSIONS)
+        if("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64" AND "${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
+            MESSAGE(STATUS "Enabling SSE Support (${CMAKE_SYSTEM_PROCESSOR}, ${CMAKE_SIZEOF_VOID_P})")
             list(APPEND SSE_FLAGS "-msse2" "-mfpmath=sse")
-        elseif(HAVE_SSE_EXTENSIONS)
-            list(APPEND SSE_FLAGS "-msse" "-mfpmath=sse")
         else()
             # Setting -ffloat-store to alleviate 32bit vs 64bit discrepancies on non-SSE
             # platforms.