]> git.ipfire.org Git - thirdparty/zlib-ng.git/commitdiff
[ARM] rename cmake/configure macros check_{acle,neon}_intrinsics to check_{acle,neon...
authorMika T. Lindqvist <postmaster@raasu.org>
Tue, 25 Jan 2022 14:11:39 +0000 (16:11 +0200)
committerHans Kristian Rosbach <hk-github@circlestorm.org>
Sat, 29 Jan 2022 16:03:30 +0000 (17:03 +0100)
* Currently these macros only check that the compiler flag(s) are supported, not that the compiler supports the actual intrinsics

CMakeLists.txt
cmake/detect-intrinsics.cmake
configure

index dfdc98bbb7b7d8d7dd0febc2bcd7ab7996dc8a91..f15d1f9cb5db1a0b5de756a44272f83e9fdcb864 100644 (file)
@@ -603,8 +603,8 @@ if(WITH_OPTIM)
         list(APPEND ZLIB_ARCH_HDRS ${ARCHDIR}/arm.h)
         list(APPEND ZLIB_ARCH_SRCS ${ARCHDIR}/armfeature.c)
         if(WITH_ACLE AND NOT MSVC AND NOT "${ARCH}" MATCHES "armv[2-7]")
-            check_acle_intrinsics()
-            if(HAVE_ACLE_INTRIN)
+            check_acle_compiler_flag()
+            if(HAVE_ACLE_FLAG)
                 add_definitions(-DARM_ACLE_CRC_HASH)
                 set(ACLE_SRCS ${ARCHDIR}/crc32_acle.c ${ARCHDIR}/insert_string_acle.c)
                 set_property(SOURCE ${ACLE_SRCS} PROPERTY COMPILE_FLAGS "${ACLEFLAG} ${NOLTOFLAG}")
@@ -617,7 +617,7 @@ if(WITH_OPTIM)
             set(WITH_ACLE OFF)
         endif()
         if(WITH_NEON)
-            check_neon_intrinsics()
+            check_neon_compiler_flag()
             if(MFPU_NEON_AVAILABLE)
                 add_definitions(-DARM_NEON_ADLER32 -DARM_NEON_CHUNKSET -DARM_NEON_SLIDEHASH)
                 set(NEON_SRCS ${ARCHDIR}/adler32_neon.c ${ARCHDIR}/chunkset_neon.c ${ARCHDIR}/slide_hash_neon.c)
index 429383cd720a5a493441604ff1c59925ebd65d84..f7d27dc2b1a479147610bf8cd93bd9559b4da529 100644 (file)
@@ -1,24 +1,24 @@
 # detect-intrinsics.cmake -- Detect compiler intrinsics support
 # Licensed under the Zlib license, see LICENSE.md for details
 
-macro(check_acle_intrinsics)
-    if(NOT NATIVEFLAG AND NOT HAVE_ACLE_INTRIN)
+macro(check_acle_compiler_flag)
+    if(NOT NATIVEFLAG AND NOT HAVE_ACLE_FLAG)
         set(ACLEFLAG "-march=armv8-a+crc" CACHE INTERNAL "Compiler option to enable ACLE support")
     endif()
     # Check whether compiler supports ACLE flag
     set(CMAKE_REQUIRED_FLAGS "${ACLEFLAG} ${NATIVEFLAG}")
     check_c_source_compiles(
         "int main() { return 0; }"
-        HAVE_ACLE_INTRIN FAIL_REGEX "not supported")
-    if(NOT NATIVEFLAG AND NOT HAVE_ACLE_INTRIN)
+        HAVE_ACLE_FLAG FAIL_REGEX "not supported")
+    if(NOT NATIVEFLAG AND NOT HAVE_ACLE_FLAG)
         set(ACLEFLAG "-march=armv8-a+crc+simd" CACHE INTERNAL "Compiler option to enable ACLE support" FORCE)
         # Check whether compiler supports ACLE flag
         set(CMAKE_REQUIRED_FLAGS "${ACLEFLAG}")
         check_c_source_compiles(
             "int main() { return 0; }"
-            HAVE_ACLE_INTRIN2 FAIL_REGEX "not supported")
-        set(HAVE_ACLE_INTRIN ${HAVE_ACLE_INTRIN2} CACHE INTERNAL "Have ACLE intrinsics" FORCE)
-        unset(HAVE_ACLE_INTRIN2 CACHE) # Don't cache this internal variable
+            HAVE_ACLE_FLAG2 FAIL_REGEX "not supported")
+        set(HAVE_ACLE_FLAG ${HAVE_ACLE_FLAG2} CACHE INTERNAL "Have compiler option to enable ACLE intrinsics" FORCE)
+        unset(HAVE_ACLE_FLAG2 CACHE) # Don't cache this internal variable
     endif()
     set(CMAKE_REQUIRED_FLAGS)
 endmacro()
@@ -133,7 +133,7 @@ macro(check_avx2_intrinsics)
     set(CMAKE_REQUIRED_FLAGS)
 endmacro()
 
-macro(check_neon_intrinsics)
+macro(check_neon_compiler_flag)
     if(CMAKE_C_COMPILER_ID MATCHES "GNU" OR CMAKE_C_COMPILER_ID MATCHES "Clang")
         if(NOT NATIVEFLAG)
             if("${ARCH}" MATCHES "aarch64")
index 1e063322a4d69890f7619deb0a685c01d06e868f..1f8c64db01c1c07fc1371b6e3d4174b63f39fa74 100755 (executable)
--- a/configure
+++ b/configure
@@ -1132,7 +1132,7 @@ EOF
     fi
 }
 
-check_acle_intrinsics() {
+check_acle_compiler_flag() {
     # Check whether -march=armv8-a+crc works correctly
     cat > $test.c << EOF
 int main() { return 0; }
@@ -1155,7 +1155,7 @@ EOF
     fi
 }
 
-check_neon_intrinsics() {
+check_neon_compiler_flag() {
     # Check whether -mfpu=neon is available on ARM processors.
     cat > $test.c << EOF
 int main() { return 0; }
@@ -1656,8 +1656,8 @@ EOF
         fi
 
         if test $without_optimizations -eq 0; then
-            check_acle_intrinsics
-            check_neon_intrinsics
+            check_acle_compiler_flag
+            check_neon_compiler_flag
         fi
 
         case "${ARCH}" in