From 22713d698186e2740bb3dbbad7139b1a8449b831 Mon Sep 17 00:00:00 2001 From: Aelin Reidel Date: Thu, 16 Jul 2026 16:45:03 +0200 Subject: [PATCH] inflate: Use wider loads/stores with LSX --- zlib-rs/src/inflate/writer.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/zlib-rs/src/inflate/writer.rs b/zlib-rs/src/inflate/writer.rs index 6ff26c67..88ea3312 100644 --- a/zlib-rs/src/inflate/writer.rs +++ b/zlib-rs/src/inflate/writer.rs @@ -146,6 +146,11 @@ impl<'a> Writer<'a> { return self.extend_from_window_help::<16>(window, range); } + #[cfg(all(target_arch = "loongarch64", feature = "lsx"))] + if crate::cpu_features::is_enabled_lsx() { + return self.extend_from_window_help::<16>(window, range); + } + #[cfg(target_arch = "wasm32")] if crate::cpu_features::is_enabled_simd128() { return self.extend_from_window_help::<16>(window, range); @@ -244,6 +249,11 @@ impl<'a> Writer<'a> { return self.copy_match_help::<16>(offset_from_end, length); } + #[cfg(all(target_arch = "loongarch64", feature = "lsx"))] + if crate::cpu_features::is_enabled_lsx() { + return self.copy_match_help::<16>(offset_from_end, length); + } + #[cfg(target_arch = "wasm32")] if crate::cpu_features::is_enabled_simd128() { return self.copy_match_help::<16>(offset_from_end, length); @@ -487,6 +497,11 @@ mod test { helper!(Writer::copy_match_help::<16>); } + #[cfg(all(target_arch = "loongarch64", feature = "lsx"))] + if crate::cpu_features::is_enabled_lsx() { + helper!(Writer::copy_match_help::<16>); + } + #[cfg(target_arch = "wasm32")] if crate::cpu_features::is_enabled_simd128() { helper!(Writer::copy_match_help::<16>);