diff --git a/src/lib.rs b/src/lib.rs index 6b4fce1f..8ca8ace8 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -482,7 +482,10 @@ impl<'de> Deserializer<'de> { } } #[cfg(not(any( - feature = "runtime-detection", + all( + feature = "runtime-detection", + any(target_arch = "x86_64", target_arch = "x86") + ), feature = "portable", target_feature = "avx2", target_feature = "sse4.2", @@ -594,7 +597,10 @@ impl<'de> Deserializer<'de> { } #[cfg_attr(not(feature = "no-inline"), inline)] #[cfg(not(any( - feature = "runtime-detection", + all( + feature = "runtime-detection", + any(target_arch = "x86_64", target_arch = "x86") + ), feature = "portable", target_feature = "avx2", target_feature = "sse4.2", @@ -730,7 +736,10 @@ impl<'de> Deserializer<'de> { } #[cfg(not(any( - feature = "runtime-detection", + all( + feature = "runtime-detection", + any(target_arch = "x86_64", target_arch = "x86") + ), feature = "portable", target_feature = "avx2", target_feature = "sse4.2", diff --git a/src/numberparse.rs b/src/numberparse.rs index 1cbbcf69..0e0daa75 100644 --- a/src/numberparse.rs +++ b/src/numberparse.rs @@ -110,7 +110,7 @@ fn parse_eight_digits_unrolled(chars: &[u8]) -> u32 { #[cfg_attr(not(feature = "no-inline"), inline)] #[cfg(all( - any(target_feature = "neon", target_feature = "simd128"), + not(any(target_arch = "x86", target_arch = "x86_64")), feature = "swar-number-parsing" ))] #[allow(clippy::cast_ptr_alignment)] diff --git a/src/stringparse.rs b/src/stringparse.rs index 287388d2..6c5fcaac 100644 --- a/src/stringparse.rs +++ b/src/stringparse.rs @@ -28,6 +28,7 @@ const LOW_SURROGATES: Range = 0xdc00..0xe000; /// handle a unicode codepoint /// write appropriate values into dest #[cfg_attr(not(feature = "no-inline"), inline)] +#[allow(dead_code)] pub(crate) fn handle_unicode_codepoint( src_ptr: &[u8], dst_ptr: &mut [u8],