Commit cd17c379 authored by Vladimir Bashkirtsev's avatar Vladimir Bashkirtsev

Improve SSE3 detection in tests

parent 83f5ccce
diff -uNr ceph-15.2.4/cmake/modules/SIMDExt.cmake ceph-15.2.4-fix_cpu_detection/cmake/modules/SIMDExt.cmake
--- ceph-15.2.4/cmake/modules/SIMDExt.cmake 2020-07-01 01:10:51.000000000 +0930
+++ ceph-15.2.4-fix_cpu_detection/cmake/modules/SIMDExt.cmake 2020-07-07 11:30:28.234565030 +0930
@@ -48,32 +48,53 @@
elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "i386|i686|amd64|x86_64|AMD64")
set(HAVE_INTEL 1)
if(CMAKE_SYSTEM_PROCESSOR MATCHES "i686|amd64|x86_64|AMD64")
- CHECK_C_COMPILER_FLAG(-msse HAVE_INTEL_SSE)
+ execute_process(COMMAND bash -c "gcc -Q --help=target | grep '\\-msse\\s' | grep -c enabled" OUTPUT_VARIABLE RUN_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if (${RUN_RESULT})
+ set(HAVE_INTEL_SSE 1)
+ endif()
if(HAVE_INTEL_SSE)
set(SIMD_COMPILE_FLAGS "${SIMD_COMPILE_FLAGS} -msse")
endif()
if(CMAKE_SYSTEM_PROCESSOR MATCHES "amd64|x86_64|AMD64")
- CHECK_C_COMPILER_FLAG(-msse2 HAVE_INTEL_SSE2)
+ execute_process(COMMAND bash -c "gcc -Q --help=target | grep '\\-msse2\\s' | grep -c enabled" OUTPUT_VARIABLE RUN_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if (${RUN_RESULT})
+ set(HAVE_INTEL_SSE2 1)
+ endif()
if(HAVE_INTEL_SSE2)
set(SIMD_COMPILE_FLAGS "${SIMD_COMPILE_FLAGS} -msse2")
endif()
- CHECK_C_COMPILER_FLAG(-msse3 HAVE_INTEL_SSE3)
+ execute_process(COMMAND bash -c "gcc -Q --help=target | grep '\\-msse3\\s' | grep -c enabled" OUTPUT_VARIABLE RUN_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if (${RUN_RESULT})
+ set(HAVE_INTEL_SSE3 1)
+ endif()
if(HAVE_INTEL_SSE3)
set(SIMD_COMPILE_FLAGS "${SIMD_COMPILE_FLAGS} -msse3")
endif()
- CHECK_C_COMPILER_FLAG(-mssse3 HAVE_INTEL_SSSE3)
+ execute_process(COMMAND bash -c "gcc -Q --help=target | grep '\\-mssse3\\s' | grep -c enabled" OUTPUT_VARIABLE RUN_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if (${RUN_RESULT})
+ set(HAVE_INTEL_SSSE3 1)
+ endif()
if(HAVE_INTEL_SSSE3)
set(SIMD_COMPILE_FLAGS "${SIMD_COMPILE_FLAGS} -mssse3")
endif()
- CHECK_C_COMPILER_FLAG(-mpclmul HAVE_INTEL_PCLMUL)
+ execute_process(COMMAND bash -c "gcc -Q --help=target | grep '\\-mpclmul\\s' | grep -c enabled" OUTPUT_VARIABLE RUN_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if (${RUN_RESULT})
+ set(HAVE_INTEL_PCLMUL 1)
+ endif()
if(HAVE_INTEL_PCLMUL)
set(SIMD_COMPILE_FLAGS "${SIMD_COMPILE_FLAGS} -mpclmul")
endif()
- CHECK_C_COMPILER_FLAG(-msse4.1 HAVE_INTEL_SSE4_1)
+ execute_process(COMMAND bash -c "gcc -Q --help=target | grep '\\-msse4\\.1\\s' | grep -c enabled" OUTPUT_VARIABLE RUN_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if (${RUN_RESULT})
+ set(HAVE_INTEL_SSE4_1 1)
+ endif()
if(HAVE_INTEL_SSE4_1)
set(SIMD_COMPILE_FLAGS "${SIMD_COMPILE_FLAGS} -msse4.1")
endif()
- CHECK_C_COMPILER_FLAG(-msse4.2 HAVE_INTEL_SSE4_2)
+ execute_process(COMMAND bash -c "gcc -Q --help=target | grep '\\-msse4\\.2\\s' | grep -c enabled" OUTPUT_VARIABLE RUN_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if (${RUN_RESULT})
+ set(HAVE_INTEL_SSE4_2 1)
+ endif()
if(HAVE_INTEL_SSE4_2)
set(SIMD_COMPILE_FLAGS "${SIMD_COMPILE_FLAGS} -msse4.2")
endif()
diff -uNr ceph-15.2.4/src/test/test_arch.cc ceph-15.2.4-fix_cpu_detection/src/test/test_arch.cc
--- ceph-15.2.4/src/test/test_arch.cc 2020-07-01 01:10:51.000000000 +0930
+++ ceph-15.2.4-fix_cpu_detection/src/test/test_arch.cc 2020-07-07 11:30:28.239565039 +0930
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment