From 8e034ba48739de784e30ea134811e3cea4742506 Mon Sep 17 00:00:00 2001 From: Funda Wang Date: Fri, 5 Sep 2025 13:43:28 +0800 Subject: [PATCH] add upstream patch for high performance FindMatchLength for riscv arch (cherry picked from commit a12033f4613c644201b10672d3556fe1aadf6959) --- ...ance-FindMatchLength-to-Optimize-Sna.patch | 26 +++++++++++++++++++ snappy.spec | 6 ++++- 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 backport-Use-high-performance-FindMatchLength-to-Optimize-Sna.patch diff --git a/backport-Use-high-performance-FindMatchLength-to-Optimize-Sna.patch b/backport-Use-high-performance-FindMatchLength-to-Optimize-Sna.patch new file mode 100644 index 0000000..8d8d959 --- /dev/null +++ b/backport-Use-high-performance-FindMatchLength-to-Optimize-Sna.patch @@ -0,0 +1,26 @@ +From 1d88de7de852f0ed3ce5c3045dcff1cb805aa3e2 Mon Sep 17 00:00:00 2001 +From: anthony-zy +Date: Tue, 29 Jul 2025 14:08:43 +0800 +Subject: [PATCH] Use high-performance FindMatchLength to Optimize Snappy + compression speed For RISC-V[skip ci] + +--- + snappy-internal.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/snappy-internal.h b/snappy-internal.h +index ae78247..0863101 100644 +--- a/snappy-internal.h ++++ b/snappy-internal.h +@@ -174,7 +174,7 @@ char* CompressFragment(const char* input, + // Separate implementation for 64-bit, little-endian cpus. + #if !SNAPPY_IS_BIG_ENDIAN && \ + (defined(__x86_64__) || defined(_M_X64) || defined(ARCH_PPC) || \ +- defined(ARCH_ARM)) ++ defined(ARCH_ARM) || defined(__riscv)) + static inline std::pair FindMatchLength(const char* s1, + const char* s2, + const char* s2_limit, +-- +2.47.3 + diff --git a/snappy.spec b/snappy.spec index 09942f5..4fdef36 100644 --- a/snappy.spec +++ b/snappy.spec @@ -1,6 +1,6 @@ Name: snappy Version: 1.2.2 -Release: 1 +Release: 2 Summary: A fast compressor/decompressor License: BSD-3-Clause URL: https://github.com/google/snappy @@ -8,6 +8,7 @@ Source0: https://github.com/google/snappy/archive/%{version}/%{name}-%{version}. Patch0: snappy-thirdparty.patch Patch2: snappy-do-not-disable-rtti.patch +Patch6001: backport-Use-high-performance-FindMatchLength-to-Optimize-Sna.patch BuildRequires: gcc-c++ make gtest-devel cmake @@ -69,6 +70,9 @@ EOF %doc NEWS README.md %changelog +* Fri Sep 05 2025 Funda Wang - 1.2.2-2 +- add upstream patch for high performance FindMatchLength for riscv arch + * Wed May 14 2025 Funda Wang - 1.2.2-1 - update to 1.2.2 -- Gitee