From bab358aac9fea320c9cee155b544ccec0f5bd4f5 Mon Sep 17 00:00:00 2001 From: Student Main Date: Tue, 25 Aug 2026 04:30:36 +0800 Subject: [PATCH] Allow memset fallback to non SIMD implementation on x86 --- crates/stdext/src/simd/memset.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/crates/stdext/src/simd/memset.rs b/crates/stdext/src/simd/memset.rs index 15d921220f3..f4bbdede6ea 100644 --- a/crates/stdext/src/simd/memset.rs +++ b/crates/stdext/src/simd/memset.rs @@ -93,7 +93,13 @@ static mut MEMSET_DISPATCH: unsafe fn(beg: *mut u8, end: *mut u8, val: u64) = me #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] fn memset_dispatch(beg: *mut u8, end: *mut u8, val: u64) { - let func = if is_x86_feature_detected!("avx2") { memset_avx2 } else { memset_sse2 }; + let func = if is_x86_feature_detected!("avx2") { + memset_avx2 + } else if is_x86_feature_detected!("sse2") { + memset_sse2 + } else { + memset_fallback + }; unsafe { MEMSET_DISPATCH = func }; unsafe { func(beg, end, val) } }