zlib-ng/test/benchmarks/benchmark_crc32.cc
yintong 10b51fa592
Some checks failed
Static Analysis / GCC (push) Has been cancelled
Static Analysis / Clang (push) Has been cancelled
CMake / ${{ matrix.name }} (${{ github.repository != 'zlib-ng/zlib-ng' && '-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-s390x.cmake -DZLIB_COMPAT=ON' || '-GNinja -DWITH_SANITIZER=Memory' }} -DWITH_DFLTCC_DEFLATE=ON -DWITH_DFLTCC_INFLATE=ON, ${{ github.repository == … (push) Has been cancelled
CMake / ${{ matrix.name }} (${{ github.repository != 'zlib-ng/zlib-ng' && '-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-s390x.cmake' || '' }} -DWITH_DFLTCC_DEFLATE=ON -DWITH_DFLTCC_INFLATE=ON -DWITH_SANITIZER=Undefined, ${{ github.repository == 'zlib-ng/zlib-ng' && … (push) Has been cancelled
CMake / ${{ matrix.name }} (-A ARM,version=10.0.22621.0, cl, Windows MSVC ARM No Test, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-A ARM64, cl, Windows MSVC ARM64 No Test, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_C_FLAGS=-m32 -DCMAKE_CXX_FLAGS=-m32 -DCMAKE_SHARED_LINKER_FLAGS=-m32 -DCMAKE_EXE_LINKER_FLAGS=-m32 -DWITH_BENCHMARKS=ON, ubuntu_gcc_m32, gcc, g++, Ubuntu GCC 32-bit, ubuntu-latest, gcc-multilib g++-multilib) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_OSX_DEPLOYMENT_TARGET=10.10 -DWITH_BENCHMARKS=ON, clang, clang++, -ld_classic, macOS Clang (Target 10.10), macos-13) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-aarch64.cmake -DWITH_ARMV8=OFF -DWITH_SANITIZER=Undefined, ubuntu_gcc_aarch64_no_armv8, aarch64-linux-gnu-gcov, Ubuntu GCC AARCH64 No ARMv8 UBSAN, ubuntu-22.04, qemu-user gcc-aarch64-linux-gnu … (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-aarch64.cmake -DWITH_NEON=OFF -DWITH_SANITIZER=Undefined, ubuntu_gcc_aarch64_no_neon, aarch64-linux-gnu-gcov, Ubuntu GCC AARCH64 No NEON UBSAN, ubuntu-22.04, qemu-user gcc-aarch64-linux-gnu g++… (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-aarch64.cmake -DZLIB_COMPAT=ON -DWITH_NEW_STRATEGIES=OFF -DWITH_OPTIM=OFF -DWITH_SANITIZER=Undefined, ubuntu_gcc_aarch64_compat_no_opt, aarch64-linux-gnu-gcov, Ubuntu GCC AARCH64 Compat No Opt … (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-arm.cmake -DZLIB_COMPAT=ON -DWITH_NEW_STRATEGIES=OFF -DWITH_OPTIM=OFF -DWITH_SANITIZER=Undefined, ubuntu_gcc_armsf_compat_no_opt, arm-linux-gnueabi-gcov, Ubuntu GCC ARM SF Compat No Opt UBSAN, … (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-armhf.cmake -DZLIB_COMPAT=ON -DWITH_NEW_STRATEGIES=OFF -DWITH_OPTIM=OFF -DWITH_SANITIZER=Undefined, ubuntu_gcc_armhf_compat_no_opt, arm-linux-gnueabihf-gcov, Ubuntu GCC ARM HF Compat No Opt UBS… (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-mingw-i686.cmake, ubuntu_gcc_mingw_i686, i686-w64-mingw32-gcov-posix, -static, Ubuntu MinGW i686, ubuntu-22.04, wine wine32 gcc-mingw-w64-i686 g++-mingw-w64-i686 libpcre2-8-0=10.39-3ubuntu0.1 l… (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-mingw-x86_64.cmake -DWITH_BENCHMARKS=ON, ubuntu_gcc_mingw_x86_64, -Wno-unused-parameter, x86_64-w64-mingw32-gcov-posix, -static, Ubuntu MinGW x86_64, ubuntu-latest, wine wine64 gcc-mingw-w64 g+… (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-mips.cmake, ubuntu_gcc_mips, mips-linux-gnu-gcov, Ubuntu GCC MIPS, ubuntu-latest, qemu-user crossbuild-essential-mips) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-mips64.cmake -DWITH_BENCHMARKS=ON, ubuntu_gcc_mips64, mips64-linux-gnuabi64-gcov, Ubuntu GCC MIPS64, ubuntu-latest, qemu-user crossbuild-essential-mips64) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc.cmake -DWITH_POWER8=OFF, ubuntu_gcc_ppc_no_power8, powerpc-linux-gnu-gcov, Ubuntu GCC PPC No Power8, ubuntu-latest, qemu-user crossbuild-essential-powerpc) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc.cmake, ubuntu_gcc_ppc, powerpc-linux-gnu-gcov, Ubuntu GCC PPC, ubuntu-latest, qemu-user crossbuild-essential-powerpc) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc64-clang.cmake, Ubuntu Clang PPC64 Power9, ubuntu-latest, qemu-user clang binutils-powerpc64-linux-gnu libgcc-11-dev-ppc64-cross libc-dev-ppc64-cross libstdc++-11-dev-ppc64-cross) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc64-power9.cmake, ubuntu_gcc_ppc64_power9, powerpc64-linux-gnu-gcov, -static, Ubuntu GCC PPC64 Power9, ubuntu-latest, qemu-user gcc-powerpc64-linux-gnu g++-powerpc64-linux-gnu libc-dev-pp… (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc64.cmake -DWITH_BENCHMARKS=ON, ubuntu_gcc_ppc64, powerpc64-linux-gnu-gcov, -static, Ubuntu GCC PPC64, ubuntu-latest, qemu-user gcc-powerpc64-linux-gnu g++-powerpc64-linux-gnu libc-dev-pp… (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc64le-clang.cmake, Ubuntu Clang PPC64LE Power9, ubuntu-latest, qemu-user crossbuild-essential-ppc64el) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc64le-power9.cmake -DWITH_POWER8=OFF -DWITH_POWER9=OFF, ubuntu_gcc_ppc64le_novsx, powerpc64le-linux-gnu-gcov, Ubuntu GCC PPC64LE No VSX, ubuntu-latest, qemu-user crossbuild-essential-ppc6… (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc64le-power9.cmake, ubuntu_gcc_ppc64le_power9, powerpc64le-linux-gnu-gcov, Ubuntu GCC PPC64LE Power9, ubuntu-latest, qemu-user crossbuild-essential-ppc64el) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-riscv-clang.cmake, Ubuntu Clang RISC-V, ubuntu-latest, qemu-user crossbuild-essential-riscv64) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-riscv.cmake -DWITH_BENCHMARKS=ON, ubuntu_gcc_riscv64, riscv64-linux-gnu-gcov, Ubuntu GCC RISC-V, ubuntu-latest, qemu-user crossbuild-essential-riscv64) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-sparc64.cmake, ubuntu_gcc_sparc64, sparc64-linux-gnu-gcov, -static, Ubuntu GCC SPARC64, ubuntu-latest, qemu-user gcc-sparc64-linux-gnu g++-sparc64-linux-gnu libc-dev-sparc64-cross) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DNOT_TWEAK_COMPILER, -DZLIB_COMPAT=ON -DWITH_NEW_STRATEGIES=OFF -DWITH_OPTIM=OFF -DWITH_SANITIZER=Address, ubuntu_gcc_compat_no_opt, gcc, g++, Ubuntu GCC Compat No Opt ASAN, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DUSE_MMAP, ubuntu_clang_mmap, clang-15, clang++-15, llvm-cov-15 gcov, Ubuntu Clang Memory Map, ubuntu-latest, clang-15 llvm-15 llvm-15-tools) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_AVX2=OFF -DWITH_AVX512=OFF -DWITH_SANITIZER=Undefined, ubuntu_gcc_sse42, gcc, g++, Ubuntu GCC SSE4.2 UBSAN, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_CHORBA=OFF, ubuntu_gcc_no_chorba, gcc, g++, Ubuntu GCC No Chorba, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_INFLATE_ALLOW_INVALID_DIST=ON, ubuntu_clang_inflate_allow_invalid_dist, clang-15, clang++-15, llvm-cov-15 gcov, Ubuntu Clang Inflate Allow Invalid Dist, ubuntu-latest, clang-15 llvm-15 llvm-15-tools) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_INFLATE_STRICT=ON, ubuntu_clang_inflate_strict, clang-15, clang++-15, llvm-cov-15 gcov, Ubuntu Clang Inflate Strict, ubuntu-latest, clang-15 llvm-15 llvm-15-tools) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_NATIVE_INSTRUCTIONS=ON -DNATIVE_ARCH_OVERRIDE="-mavx -mpclmul", ubuntu_gcc_native_inst_avx, gcc, g++, Ubuntu GCC Native Instructions (AVX), ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_NATIVE_INSTRUCTIONS=ON, clang, clang++, macOS Clang Native Instructions (ARM64), macos-14) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_NATIVE_INSTRUCTIONS=ON, ubuntu_gcc_native_inst, gcc, g++, Ubuntu GCC Native Instructions, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_OPTIM=OFF -DHAVE_BUILTIN_CTZLL=OFF -DHAVE_BUILTIN_CTZ=OFF, ubuntu_gcc_no_ctz, gcc, g++, Ubuntu GCC No CTZ, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_OPTIM=OFF -DHAVE_BUILTIN_CTZLL=OFF, ubuntu_gcc_no_ctzll, gcc, g++, Ubuntu GCC No CTZLL, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_PCLMULQDQ=OFF -DWITH_SANITIZER=Undefined, ubuntu_gcc_no_pclmulqdq, gcc, g++, Ubuntu GCC No PCLMULQDQ UBSAN, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_REDUCED_MEM=ON, ubuntu_clang_reduced_mem, clang-15, clang++-15, llvm-cov-15 gcov, Ubuntu Clang Reduced Memory, ubuntu-latest, clang-15 llvm-15 llvm-15-tools) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_SANITIZER=Address -DWITH_BENCHMARKS=ON, ubuntu_gcc, gcc, g++, -Wno-maybe-uninitialized, Ubuntu GCC ASAN, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_SANITIZER=Address, macos_clang, clang, clang++, macOS Clang ASAN, macos-13) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_SANITIZER=Address, macos_clang_arm64, clang, clang++, macOS Clang ASAN (ARM64), macos-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_SANITIZER=Undefined, macos_gcc, gcc-10, g++-10, gcov-10, -ld_classic, macOS GCC UBSAN, macos-13, gcc@10) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_SANITIZER=Undefined, macos_gcc_arm64, gcc-13, g++-13, gcov-13, macOS GCC UBSAN (ARM64), macos-latest, gcc@13) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_SSE42=OFF -DWITH_AVX2=OFF -DWITH_AVX512=OFF -DWITH_SANITIZER=Undefined, ubuntu_gcc_ssse3, gcc, g++, Ubuntu GCC SSSE3 UBSAN, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DWITH_SSSE3=OFF -DWITH_SSE42=OFF -DWITH_AVX2=OFF -DWITH_AVX512=OFF -DWITH_SANITIZER=Undefined, ubuntu_gcc_sse2, gcc, g++, Ubuntu GCC SSE2 UBSAN, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DZLIB_COMPAT=ON -DZLIB_SYMBOL_PREFIX=zTest_, ubuntu_gcc_compat_sprefix, gcc, g++, Ubuntu GCC Compat Symbol Prefix, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-DZLIB_SYMBOL_PREFIX=zTest_, ubuntu_gcc_sprefix, gcc, g++, Ubuntu GCC Symbol Prefix, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G "Visual Studio 16 2019" -A Win32 -T v140, cl, Windows MSVC 2019 v140 Win32, windows-2019) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G "Visual Studio 16 2019" -A Win32 -T v141, cl, Windows MSVC 2019 v141 Win32, windows-2019) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G "Visual Studio 16 2019" -A x64 -T v140, cl, Windows MSVC 2019 v140 Win64, windows-2019) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G "Visual Studio 16 2019" -A x64 -T v141, cl, Windows MSVC 2019 v141 Win64, windows-2019) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G "Visual Studio 17 2022" -A Win32 -T v142, cl, Windows MSVC 2022 v142 Win32, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G "Visual Studio 17 2022" -A Win32 -T v143, cl, Windows MSVC 2022 v143 Win32, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G "Visual Studio 17 2022" -A x64 -T v142, cl, Windows MSVC 2022 v142 Win64, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G "Visual Studio 17 2022" -A x64 -T v143 -DWITH_NATIVE_INSTRUCTIONS=ON -DNATIVE_ARCH_OVERRIDE=/arch:AVX, cl, Windows MSVC 2022 v143 Win64 Native Instructions (AVX), windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G "Visual Studio 17 2022" -A x64 -T v143, cl, Windows MSVC 2022 v143 Win64, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G Ninja -DWITH_NATIVE_INSTRUCTIONS=ON -DNATIVE_ARCH_OVERRIDE="-mavx -mpclmul", gcc, g++, Windows GCC Native Instructions (AVX), windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G Ninja -DZLIB_COMPAT=ON -DWITH_NEW_STRATEGIES=OFF -DWITH_OPTIM=OFF, win64_gcc_compat_no_opt, gcc, g++, Windows GCC Compat No Opt, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-G Ninja, win64_gcc, gcc, g++, Windows GCC, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-GNinja -DWITH_SANITIZER=Memory, clang-15, clang++-15, llvm-cov-15 gcov, use_sigaltstack=0, Ubuntu Clang MSAN, ubuntu-latest, ninja-build clang-15 llvm-15-tools libclang-rt-15-dev) (push) Has been cancelled
CMake / ${{ matrix.name }} (-O1, -DWITH_SANITIZER=Undefined, ubuntu_gcc_o1, gcc, g++, Ubuntu GCC -O1 UBSAN, ubuntu-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-T ClangCl -A Win32, Windows ClangCl Win32, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-T ClangCl -A x64 -DWITH_NATIVE_INSTRUCTIONS=ON -DNATIVE_ARCH_OVERRIDE="-mavx -mpclmul", Windows ClangCl Win64 Native Instructions (AVX), windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-T ClangCl -A x64, Windows ClangCl Win64, windows-latest) (push) Has been cancelled
CMake / ${{ matrix.name }} (-mcpu=power8, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc64le.cmake -DWITH_GTEST=OFF, ubuntu_gcc_ppc64le, -mcpu=power8, powerpc64le-linux-gnu-gcov, Ubuntu GCC PPC64LE, ubuntu-latest, qemu-user crossbuild-essential-ppc64el) (push) Has been cancelled
CMake / ${{ matrix.name }} (../build, ../zlib-ng, -O3, ubuntu_gcc_osb, gcc, g++, Ubuntu GCC -O3 OSB, ubuntu-latest, true) (push) Has been cancelled
CMake / ${{ matrix.name }} (../build, ../zlib-ng/test/add-subdirectory-project, gcc, g++, Ubuntu GCC -O3 OSB add_subdirectory, ubuntu-latest, true) (push) Has been cancelled
CMake / ${{ matrix.name }} (Debug, ubuntu_clang_debug, clang-15, clang++-15, llvm-cov-15 gcov, Ubuntu Clang Debug, ubuntu-latest, clang-15 llvm-15 llvm-15-tools) (push) Has been cancelled
CMake / ${{ matrix.name }} (ON, -DCMAKE_SHARED_LINKER_FLAGS="-fuse-ld=lld -Wl,--no-undefined-version" -DZLIBNG_ENABLE_TESTS=OFF -DZLIB_COMPAT=ON, clang-15, clang++-15, Ubuntu Clang Undefined Symbols Compat, ubuntu-latest, clang-15 llvm-15 lld) (push) Has been cancelled
CMake / ${{ matrix.name }} (ON, -DCMAKE_SHARED_LINKER_FLAGS="-fuse-ld=lld -Wl,--no-undefined-version" -DZLIBNG_ENABLE_TESTS=OFF, clang-15, clang++-15, Ubuntu Clang Undefined Symbols, ubuntu-latest, clang-15 llvm-15 lld) (push) Has been cancelled
CMake / ${{ matrix.name }} (detect_leaks=0, ${{ github.repository != 'zlib-ng/zlib-ng' && '-DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-s390x.cmake' || '' }} -DWITH_DFLTCC_DEFLATE=ON -DWITH_DFLTCC_INFLATE=ON -DWITH_SANITIZER=Address -DWITH_BENCHMARKS=ON, ${{ github.… (push) Has been cancelled
CMake / ${{ matrix.name }} (detect_leaks=0, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-aarch64.cmake -DWITH_SANITIZER=Address -DWITH_BENCHMARKS=ON, ubuntu_gcc_aarch64, aarch64-linux-gnu-gcov, Ubuntu GCC AARCH64 ASAN, ubuntu-22.04, qemu-user gcc-aarch64-linux-gnu g… (push) Has been cancelled
CMake / ${{ matrix.name }} (detect_leaks=0, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-arm.cmake -DWITH_SANITIZER=Address, ubuntu_gcc_armsf, arm-linux-gnueabi-gcov, Ubuntu GCC ARM SF ASAN, ubuntu-latest, qemu-user crossbuild-essential-armel) (push) Has been cancelled
CMake / ${{ matrix.name }} (detect_leaks=0, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-armhf.cmake -DWITH_ARMV8=OFF -DWITH_SANITIZER=Address, ubuntu_gcc_armhf_no_armv8, arm-linux-gnueabihf-gcov, Ubuntu GCC ARM HF No ARMv8 ASAN, ubuntu-latest, qemu-user crossbuild-… (push) Has been cancelled
CMake / ${{ matrix.name }} (detect_leaks=0, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-armhf.cmake -DWITH_NEON=OFF -DWITH_SANITIZER=Address, ubuntu_gcc_armhf_no_neon, arm-linux-gnueabihf-gcov, Ubuntu GCC ARM HF No NEON ASAN, ubuntu-latest, qemu-user crossbuild-ess… (push) Has been cancelled
CMake / ${{ matrix.name }} (detect_leaks=0, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-armhf.cmake -DWITH_SANITIZER=Address -DWITH_BENCHMARKS=ON, ubuntu_gcc_armhf, -Wno-psabi -Wno-maybe-uninitialized, arm-linux-gnueabihf-gcov, Ubuntu GCC ARM HF ASAN, ubuntu-latest… (push) Has been cancelled
CMake / ${{ matrix.name }} (detect_leaks=0, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-s390x.cmake -DWITH_CRC32_VX=OFF -DWITH_SANITIZER=Address, ubuntu_gcc_s390x_no_crc32, s390x-linux-gnu-gcov, -static, Ubuntu GCC S390X No vectorized CRC32 ASAN, ubuntu-latest, qem… (push) Has been cancelled
CMake / ${{ matrix.name }} (detect_leaks=0, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-s390x.cmake -DWITH_SANITIZER=Address -DWITH_BENCHMARKS=ON, ubuntu_gcc_s390x, s390x-linux-gnu-gcov, -static, Ubuntu GCC S390X ASAN, ubuntu-latest, qemu-user crossbuild-essential-… (push) Has been cancelled
CMake / ${{ matrix.name }} (ubuntu_clang, clang-15, clang++-15, llvm-cov-15 gcov, Ubuntu Clang, ubuntu-latest, clang-15 llvm-15 llvm-15-tools) (push) Has been cancelled
CMake / ${{ matrix.name }} (wasm32, -DCMAKE_TOOLCHAIN_FILE=${EMSDK}/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake -DCMAKE_C_COMPILER_TARGET=wasm32 -DCMAKE_CROSSCOMPILING_EMULATOR=${EMSDK_NODE} -DZLIB_COMPAT=ON, Ubuntu Emscripten WASM32, ubuntu-la… (push) Has been cancelled
CodeQL / Analyze (cpp) (push) Has been cancelled
Configure / ${{ matrix.name }} (${{ github.repository != 'zlib-ng/zlib-ng' && '-static' || '' }}, ${{ github.repository != 'zlib-ng/zlib-ng' && 's390x-linux-gnu' || '' }}, ${{ github.repository == 'zlib-ng/zlib-ng' && 'gcc' || 's390x-linux-gnu-gcc' }}, --warn --s… (push) Has been cancelled
Configure / ${{ matrix.name }} (${{ github.repository != 'zlib-ng/zlib-ng' && '-static' || '' }}, ${{ github.repository != 'zlib-ng/zlib-ng' && 's390x-linux-gnu' || '' }}, ${{ github.repository == 'zlib-ng/zlib-ng' && 'gcc' || 's390x-linux-gnu-gcc' }}, --warn --z… (push) Has been cancelled
Configure / ${{ matrix.name }} (-static, powerpc-linux-gnu, powerpc-linux-gnu-gcc, --warn --static, -static, Ubuntu GCC PPC, ubuntu-latest, qemu-user gcc-powerpc-linux-gnu libc-dev-powerpc-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (-static, powerpc-linux-gnu, powerpc64-linux-gnu-gcc, --warn --static, -static, Ubuntu GCC PPC64, ubuntu-latest, qemu-user gcc-powerpc64-linux-gnu libc-dev-ppc64-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (-static, s390x-linux-gnu, s390x-linux-gnu-gcc, --warn --static --without-crc32-vx, -static, Ubuntu GCC S390X No vectorized CRC32, ubuntu-latest, qemu-user gcc-s390x-linux-gnu libc-dev-s390x-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (-static, s390x-linux-gnu, s390x-linux-gnu-gcc, --warn --static, -static, Ubuntu GCC S390X, ubuntu-latest, qemu-user gcc-s390x-linux-gnu libc-dev-s390x-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (-static, wasm32, --warn --zlib-compat --static, emconfigure, node, -static, Ubuntu Emscripten WASM32, ubuntu-latest) (push) Has been cancelled
Configure / ${{ matrix.name }} (-std=gnu11, gcc-11, --sprefix=zTest_, macOS GCC Symbol Prefix (ARM64), macos-latest, gcc@11) (push) Has been cancelled
Configure / ${{ matrix.name }} (-std=gnu11, gcc-11, --warn, macOS GCC (ARM64), macos-latest, gcc@11) (push) Has been cancelled
Configure / ${{ matrix.name }} (-std=gnu11, gcc-11, --zlib-compat --sprefix=zTest_, macOS GCC Symbol Prefix & Compat (ARM64), macos-latest, gcc@11) (push) Has been cancelled
Configure / ${{ matrix.name }} (../build, ../zlib-ng, gcc, --warn, Ubuntu GCC OSB, ubuntu-latest) (push) Has been cancelled
Configure / ${{ matrix.name }} (aarch64-linux-gnu, aarch64-linux-gnu-gcc, --warn --without-armv8, Ubuntu GCC AARCH64 No ARMv8, ubuntu-latest, qemu-user gcc-aarch64-linux-gnu libc-dev-arm64-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (aarch64-linux-gnu, aarch64-linux-gnu-gcc, --warn --without-neon, Ubuntu GCC AARCH64 No NEON, ubuntu-latest, qemu-user gcc-aarch64-linux-gnu libc-dev-arm64-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (aarch64-linux-gnu, aarch64-linux-gnu-gcc, --warn --zlib-compat --without-optimizations --without-new-strategies, Ubuntu GCC AARCH64 Compat No Opt, ubuntu-latest, qemu-user gcc-aarch64-linux-gnu libc-dev-arm64-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (aarch64-linux-gnu, aarch64-linux-gnu-gcc, --warn, Ubuntu GCC AARCH64, ubuntu-latest, qemu-user gcc-aarch64-linux-gnu libc-dev-arm64-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (arm-linux-gnueabi, arm-linux-gnueabi-gcc, --warn --zlib-compat --without-optimizations --without-new-strategies, Ubuntu GCC ARM SF Compat No Opt, ubuntu-latest, qemu-user gcc-arm-linux-gnueabi libc-dev-armel-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (arm-linux-gnueabi, arm-linux-gnueabi-gcc, --warn, Ubuntu GCC ARM SF, ubuntu-latest, qemu-user gcc-arm-linux-gnueabi libc-dev-armel-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (arm-linux-gnueabihf, arm-linux-gnueabihf-gcc, --warn --without-armv8, Ubuntu GCC ARM HF No ARMv8, ubuntu-latest, qemu-user gcc-arm-linux-gnueabihf libc-dev-armel-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (arm-linux-gnueabihf, arm-linux-gnueabihf-gcc, --warn --without-neon, Ubuntu GCC ARM HF No NEON, ubuntu-latest, qemu-user gcc-arm-linux-gnueabihf libc-dev-armel-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (arm-linux-gnueabihf, arm-linux-gnueabihf-gcc, --warn --zlib-compat --without-optimizations --without-new-strategies, Ubuntu GCC ARM HF Compat No Opt, ubuntu-latest, qemu-user gcc-arm-linux-gnueabihf libc-dev-armel-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (arm-linux-gnueabihf, arm-linux-gnueabihf-gcc, --warn, Ubuntu GCC ARM HF, ubuntu-latest, qemu-user gcc-arm-linux-gnueabihf libc-dev-armel-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (gcc, --warn --zlib-compat --without-optimizations --without-new-strategies, Ubuntu GCC Compat No Opt, ubuntu-latest) (push) Has been cancelled
Configure / ${{ matrix.name }} (gcc, --warn, Ubuntu GCC, ubuntu-latest) (push) Has been cancelled
Configure / ${{ matrix.name }} (gcc-11, --sprefix=zTest_, macOS GCC Symbol Prefix, macos-13, gcc@11) (push) Has been cancelled
Configure / ${{ matrix.name }} (gcc-11, --warn, macOS GCC, macos-13, gcc@11) (push) Has been cancelled
Configure / ${{ matrix.name }} (gcc-11, --zlib-compat --sprefix=zTest_, macOS GCC Symbol Prefix & Compat, macos-13, gcc@11) (push) Has been cancelled
Configure / ${{ matrix.name }} (mips-linux-gnu, mips-linux-gnu-gcc, --warn, Ubuntu GCC MIPS, ubuntu-latest, qemu-user gcc-mips-linux-gnu libc-dev-mips-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (mips64-linux-gnuabi64, mips64-linux-gnuabi64-gcc, --warn, Ubuntu GCC MIPS64, ubuntu-latest, qemu-user gcc-mips64-linux-gnuabi64 libc-dev-mips64-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (powerpc-linux-gnu, powerpc-linux-gnu-gcc, --warn --without-power8, Ubuntu GCC PPC No Power8, ubuntu-latest, qemu-user gcc-powerpc-linux-gnu libc-dev-powerpc-cross) (push) Has been cancelled
Configure / ${{ matrix.name }} (powerpc64le-linux-gnu, powerpc64le-linux-gnu-gcc, --warn, Ubuntu GCC PPC64LE, ubuntu-latest, qemu-user gcc-powerpc64le-linux-gnu libc-dev-ppc64el-cross) (push) Has been cancelled
OSS-Fuzz / Fuzzing (push) Has been cancelled
Libpng / Ubuntu Clang (push) Has been cancelled
Link / Link zlib (push) Has been cancelled
Link / Link zlib-ng compat (push) Has been cancelled
Pigz / ${{ matrix.name }} (-DCMAKE_TOOLCHAIN_FILE=../../cmake/toolchain-aarch64.cmake, ubuntu_gcc_pigz_aarch64, Ubuntu GCC AARCH64, ubuntu-latest, qemu-user gcc-aarch64-linux-gnu libc-dev-arm64-cross) (push) Has been cancelled
Pigz / ${{ matrix.name }} (-DWITH_OPTIM=OFF, ubuntu_clang_pigz_no_optim, clang, llvm-cov-15 gcov, Ubuntu Clang No Optim, ubuntu-latest, llvm-15 llvm-15-tools) (push) Has been cancelled
Pigz / ${{ matrix.name }} (-DWITH_THREADS=OFF -DPIGZ_VERSION=v2.6, ubuntu_clang_pigz_no_threads, clang, llvm-cov-15 gcov, Ubuntu Clang No Threads, ubuntu-latest, llvm-15 llvm-15-tools) (push) Has been cancelled
Pigz / ${{ matrix.name }} (-DZLIB_SYMBOL_PREFIX=zTest_, ubuntu_gcc_pigz, gcc, Ubuntu GCC Symbol Prefix, ubuntu-latest) (push) Has been cancelled
Pigz / ${{ matrix.name }} (ubuntu_clang_pigz, clang, llvm-cov-15 gcov, Ubuntu Clang, ubuntu-latest, llvm-15 llvm-15-tools) (push) Has been cancelled
Pigz / ${{ matrix.name }} (ubuntu_gcc_pigz, gcc, Ubuntu GCC, ubuntu-latest) (push) Has been cancelled
Package Check / ${{ matrix.name }} (-DZLIB_SYMBOL_PREFIX=zTest_, clang, --sprefix=zTest_, clang++, macOS Clang Symbol Prefix, macOS-latest) (push) Has been cancelled
Package Check / ${{ matrix.name }} (-m32, -DCMAKE_C_FLAGS=-m32 -DCMAKE_CXX_FLAGS=-m32, gcc, g++, -m32, -m32, Ubuntu GCC -m32, ubuntu-latest, gcc-multilib g++-multilib) (push) Has been cancelled
Package Check / ${{ matrix.name }} (aarch64-linux-gnu, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-aarch64.cmake, aarch64-linux-gnu-gcc, aarch64-linux-gnu-g++, Ubuntu GCC AARCH64, ubuntu-latest, qemu-user gcc-aarch64-linux-gnu g++-aarch64-linux-gnu libc6-dev-arm64-cross) (push) Has been cancelled
Package Check / ${{ matrix.name }} (arm-linux-gnueabihf, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-armhf.cmake, arm-linux-gnueabihf-gcc, arm-linux-gnueabihf-g++, Ubuntu GCC ARM HF, ubuntu-latest, qemu-user gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf libc6-dev-armhf-c… (push) Has been cancelled
Package Check / ${{ matrix.name }} (clang, clang++, macOS Clang, macOS-latest) (push) Has been cancelled
Package Check / ${{ matrix.name }} (gcc, g++, Ubuntu GCC, ubuntu-latest) (push) Has been cancelled
Package Check / ${{ matrix.name }} (mips-linux-gnu, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-mips.cmake, mips-linux-gnu-gcc, mips-linux-gnu-g++, Ubuntu GCC MIPS, ubuntu-latest, qemu-user gcc-mips-linux-gnu g++-mips-linux-gnu libc6-dev-mips-cross) (push) Has been cancelled
Package Check / ${{ matrix.name }} (mips64-linux-gnuabi64, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-mips64.cmake, mips64-linux-gnuabi64-gcc, mips64-linux-gnuabi64-g++, Ubuntu GCC MIPS64, ubuntu-latest, qemu-user gcc-mips64-linux-gnuabi64 g++-mips64-linux-gnuabi64 libc6-… (push) Has been cancelled
Package Check / ${{ matrix.name }} (powerpc-linux-gnu, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc.cmake, powerpc-linux-gnu-gcc, powerpc-linux-gnu-g++, Ubuntu GCC PPC, ubuntu-latest, qemu-user gcc-powerpc-linux-gnu g++-powerpc-linux-gnu libc6-dev-powerpc-cross) (push) Has been cancelled
Package Check / ${{ matrix.name }} (powerpc64le-linux-gnu, -DCMAKE_TOOLCHAIN_FILE=cmake/toolchain-powerpc64le.cmake, powerpc64le-linux-gnu-gcc, powerpc64le-linux-gnu-g++, Ubuntu GCC PPC64LE, ubuntu-latest, qemu-user gcc-powerpc64le-linux-gnu g++-powerpc64le-linux-gnu … (push) Has been cancelled
CMake / Upload Coverage Reports (push) Has been cancelled
Pigz / Upload Coverage Reports (push) Has been cancelled
riscv: add crc32 optimization using zbc extension
2025-04-27 18:23:50 +02:00

102 lines
3.0 KiB
C++

/* benchmark_crc32.cc -- benchmark crc32 variants
* Copyright (C) 2022 Nathan Moinvaziri
* For conditions of distribution and use, see copyright notice in zlib.h
*/
#include <stdio.h>
#include <assert.h>
#include <benchmark/benchmark.h>
extern "C" {
# include "zbuild.h"
# include "zutil_p.h"
# include "arch_functions.h"
# include "../test_cpu_features.h"
}
#define MAX_RANDOM_INTS (1024 * 1024)
#define MAX_RANDOM_INTS_SIZE (MAX_RANDOM_INTS * sizeof(uint32_t))
class crc32: public benchmark::Fixture {
private:
uint32_t *random_ints;
public:
void SetUp(const ::benchmark::State& state) {
random_ints = (uint32_t *)zng_alloc(MAX_RANDOM_INTS_SIZE);
assert(random_ints != NULL);
for (int32_t i = 0; i < MAX_RANDOM_INTS; i++) {
random_ints[i] = rand();
}
}
void Bench(benchmark::State& state, crc32_func crc32) {
uint32_t hash = 0;
for (auto _ : state) {
hash = crc32(hash, (const unsigned char *)random_ints, (size_t)state.range(0));
}
benchmark::DoNotOptimize(hash);
}
void TearDown(const ::benchmark::State& state) {
zng_free(random_ints);
}
};
#define BENCHMARK_CRC32(name, fptr, support_flag) \
BENCHMARK_DEFINE_F(crc32, name)(benchmark::State& state) { \
if (!support_flag) { \
state.SkipWithError("CPU does not support " #name); \
} \
Bench(state, fptr); \
} \
BENCHMARK_REGISTER_F(crc32, name)->Arg(1)->Arg(8)->Arg(12)->Arg(16)->Arg(32)->Arg(64)->Arg(512)->Arg(4<<10)->Arg(32<<10)->Arg(256<<10)->Arg(4096<<10);
#ifndef WITHOUT_CHORBA
BENCHMARK_CRC32(generic_chorba, crc32_c, 1);
#else
BENCHMARK_CRC32(generic, crc32_c, 1);
#endif
BENCHMARK_CRC32(braid, crc32_braid, 1);
#ifdef DISABLE_RUNTIME_CPU_DETECTION
BENCHMARK_CRC32(native, native_crc32, 1);
#else
#ifndef WITHOUT_CHORBA
# if defined(X86_SSE2) && !defined(NO_CHORBA_SSE)
BENCHMARK_CRC32(chorba_sse2, crc32_chorba_sse2, test_cpu_features.x86.has_sse2);
# if defined(X86_SSE41) && !defined(NO_CHORBA_SSE)
BENCHMARK_CRC32(chorba_sse41, crc32_chorba_sse41, test_cpu_features.x86.has_sse41);
# endif
# endif
#endif
#ifdef ARM_CRC32
BENCHMARK_CRC32(armv8, crc32_armv8, test_cpu_features.arm.has_crc32);
#endif
#ifdef RISCV_CRC32_ZBC
BENCHMARK_CRC32(riscv, crc32_riscv64_zbc, test_cpu_features.riscv.has_zbc);
#endif
#ifdef POWER8_VSX_CRC32
BENCHMARK_CRC32(power8, crc32_power8, test_cpu_features.power.has_arch_2_07);
#endif
#ifdef S390_CRC32_VX
BENCHMARK_CRC32(vx, crc32_s390_vx, test_cpu_features.s390.has_vx);
#endif
#ifdef X86_PCLMULQDQ_CRC
/* CRC32 fold does a memory copy while hashing */
BENCHMARK_CRC32(pclmulqdq, crc32_pclmulqdq, test_cpu_features.x86.has_pclmulqdq);
#endif
#ifdef X86_VPCLMULQDQ_CRC
/* CRC32 fold does a memory copy while hashing */
BENCHMARK_CRC32(vpclmulqdq, crc32_vpclmulqdq, (test_cpu_features.x86.has_pclmulqdq && test_cpu_features.x86.has_avx512_common && test_cpu_features.x86.has_vpclmulqdq));
#endif
#endif