From 1fa9c1c12894f502f301fd1d2656cbdfe78e4090 Mon Sep 17 00:00:00 2001 From: Adolf Belka Date: Tue, 22 Jul 2025 23:22:08 +0200 Subject: [PATCH] vectorscan: Update to version 5.4.12 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit - Update from version 5.4.11 to 5.4.12 - Update of rootfile - Removal of patch for sse4.2 as changes now part of source tarball - Changelog 5.4.12 Multiple changes since last release, this will be the last 100% ABI and API compatible with Hyperscan release. Next versions will include major refactors and API extensions, it will be mostly backwards compatible however. Without particular order, platform support is now: * Linux (x86, Arm, Power) * FreeBSD 14 (x86, Arm, Power) * MacOS 14+ (x86, Arm) In total more than 200 configurations in the CI are tested for every PR. Other features: - Fat Runtime supported for Arm as well (ASIMD/SVE/SVE2). - Initial implementations for Arm SVE/SVE2 algorithms added, thanks to Yoan Picchi from Arm. - SIMDe support added, used as an alternative backend for existing platforms, but mostly interesting for allowing Vectorscan to build in new platforms without a supported SIMD engine. - Various speedups and optimizations. - Cppcheck and clang-tidy fixes throughout the code, both have been added to CI for multiple configurations, but only cppcheck triggers a build failure for now. Various bugfixes, most important listed: - Speed up truffle with 256b TBL instructions (#290) - Fix Clang Tidy warnings (#295) - Clang 17+ is more restrictive on rebind on MacOS/Boost, remove warning (#332) - partial_load_u64 will fail if buf == NULL/c_len == 0 (#331) - Bugfix/fix avx512vbmi regressions (#335) - fix missing hs_version.h header (closes #198) - hs_valid_platform: Fix check for SSE4.2 (#310) - Fixed out of bounds read in AVX512VBMI version of fdr_exec_fat_teddy … (#333) - Fix noodle SVE2 off by one bug (#313) - Make vectorscan accept \0 starting pattern (#312) - Fix 5.4.11's config step regression (#327) - Fix double shufti's vector end false positive (#325) Signed-off-by: Adolf Belka Signed-off-by: Michael Tremer --- config/rootfiles/common/aarch64/vectorscan | 4 ++-- lfs/vectorscan | 7 +++---- src/patches/vectorscan-5.4.11-sse4.2.patch | 16 ---------------- 3 files changed, 5 insertions(+), 22 deletions(-) delete mode 100644 src/patches/vectorscan-5.4.11-sse4.2.patch diff --git a/config/rootfiles/common/aarch64/vectorscan b/config/rootfiles/common/aarch64/vectorscan index 160dc3ae7c..e0a4e67e01 100644 --- a/config/rootfiles/common/aarch64/vectorscan +++ b/config/rootfiles/common/aarch64/vectorscan @@ -6,8 +6,8 @@ #usr/include/hs/hs_version.h #usr/lib/libhs.so usr/lib/libhs.so.5 -usr/lib/libhs.so.5.4.11 +usr/lib/libhs.so.5.4.12 #usr/lib/libhs_runtime.so usr/lib/libhs_runtime.so.5 -usr/lib/libhs_runtime.so.5.4.11 +usr/lib/libhs_runtime.so.5.4.12 #usr/lib/pkgconfig/libhs.pc diff --git a/lfs/vectorscan b/lfs/vectorscan index b56243c42f..714f75d472 100644 --- a/lfs/vectorscan +++ b/lfs/vectorscan @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2024 IPFire Team # +# Copyright (C) 2007-2025 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@ include Config -VER = 5.4.11 +VER = 5.4.12 THISAPP = vectorscan-vectorscan-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -62,7 +62,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_BLAKE2 = a8f5a1230af0ddf7d9fb9299769ec1736d37ac3284f6a98b1e650af461206cf459eac35d13a47beb6683786c6529539b2d082edf426e7d4890ed11804c76268b +$(DL_FILE)_BLAKE2 = 7d2a5934423ea5ef7153ab04544e9819d3c95644352780f6614ec2e896cbde4d92cffe6433eab86a55be26c2dd968d4d0ea7867d7c1251d4631af9da33d39f31 install : $(TARGET) @@ -92,7 +92,6 @@ $(subst %,%_BLAKE2,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/vectorscan-5.4.11-sse4.2.patch cd $(DIR_APP) && cmake . \ -DCMAKE_INSTALL_PREFIX:PATH=/usr \ -DBUILD_SHARED_LIBS=ON \ diff --git a/src/patches/vectorscan-5.4.11-sse4.2.patch b/src/patches/vectorscan-5.4.11-sse4.2.patch deleted file mode 100644 index feb867aebe..0000000000 --- a/src/patches/vectorscan-5.4.11-sse4.2.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/src/hs_valid_platform.c b/src/hs_valid_platform.c -index 0af36b6c..12ae5d9a 100644 ---- a/src/hs_valid_platform.c -+++ b/src/hs_valid_platform.c -@@ -37,9 +37,9 @@ - - HS_PUBLIC_API - hs_error_t HS_CDECL hs_valid_platform(void) { -- /* Hyperscan requires SSSE3, anything else is a bonus */ -+ /* Vectorscan requires SSE4.2, anything else is a bonus */ - #if defined(ARCH_IA32) || defined(ARCH_X86_64) -- if (check_ssse3()) { -+ if (check_sse42()) { - return HS_SUCCESS; - } else { - return HS_ARCH_ERROR; -- 2.47.3