From e45eaffce5d5e8abfd20ffc1cc0fea56c4034265 Mon Sep 17 00:00:00 2001 From: "Sergey \"Shnatsel\" Davidoff" Date: Thu, 22 Jan 2026 17:30:14 +0000 Subject: [PATCH 1/2] drop #[inline] on vectorize from the generator --- fearless_simd_gen/src/level.rs | 2 -- 1 file changed, 2 deletions(-) diff --git a/fearless_simd_gen/src/level.rs b/fearless_simd_gen/src/level.rs index 7043a578..f091b9a9 100644 --- a/fearless_simd_gen/src/level.rs +++ b/fearless_simd_gen/src/level.rs @@ -102,7 +102,6 @@ pub(crate) trait Level { let vectorize = format_ident!("vectorize_{}", self.name().to_ascii_lowercase()); quote! { #[target_feature(enable = #target_features)] - #[inline] unsafe fn #vectorize R, R>(f: F) -> R { f() } @@ -149,7 +148,6 @@ pub(crate) trait Level { #level_body } - #[inline] fn vectorize R, R>(self, f: F) -> R { #vectorize_body } From 4e4c3679ac5891f74e260de2f549187749a5cd0c Mon Sep 17 00:00:00 2001 From: "Sergey \"Shnatsel\" Davidoff" Date: Thu, 22 Jan 2026 17:30:35 +0000 Subject: [PATCH 2/2] re-run the generator --- fearless_simd/src/generated/avx2.rs | 2 -- fearless_simd/src/generated/fallback.rs | 1 - fearless_simd/src/generated/neon.rs | 2 -- fearless_simd/src/generated/sse4_2.rs | 2 -- fearless_simd/src/generated/wasm.rs | 1 - 5 files changed, 8 deletions(-) diff --git a/fearless_simd/src/generated/avx2.rs b/fearless_simd/src/generated/avx2.rs index f09e03d0..f263c0ca 100644 --- a/fearless_simd/src/generated/avx2.rs +++ b/fearless_simd/src/generated/avx2.rs @@ -88,10 +88,8 @@ impl Simd for Avx2 { fn level(self) -> Level { Level::Avx2(self) } - #[inline] fn vectorize R, R>(self, f: F) -> R { #[target_feature(enable = "avx2,fma")] - #[inline] unsafe fn vectorize_avx2 R, R>(f: F) -> R { f() } diff --git a/fearless_simd/src/generated/fallback.rs b/fearless_simd/src/generated/fallback.rs index c2f39a1b..f093eae4 100644 --- a/fearless_simd/src/generated/fallback.rs +++ b/fearless_simd/src/generated/fallback.rs @@ -146,7 +146,6 @@ impl Simd for Fallback { #[cfg(not(feature = "force_support_fallback"))] Level::baseline() } - #[inline] fn vectorize R, R>(self, f: F) -> R { f() } diff --git a/fearless_simd/src/generated/neon.rs b/fearless_simd/src/generated/neon.rs index def528dd..db245e97 100644 --- a/fearless_simd/src/generated/neon.rs +++ b/fearless_simd/src/generated/neon.rs @@ -80,10 +80,8 @@ impl Simd for Neon { fn level(self) -> Level { Level::Neon(self) } - #[inline] fn vectorize R, R>(self, f: F) -> R { #[target_feature(enable = "neon")] - #[inline] unsafe fn vectorize_neon R, R>(f: F) -> R { f() } diff --git a/fearless_simd/src/generated/sse4_2.rs b/fearless_simd/src/generated/sse4_2.rs index a9f7c1ad..b3fbb88c 100644 --- a/fearless_simd/src/generated/sse4_2.rs +++ b/fearless_simd/src/generated/sse4_2.rs @@ -93,10 +93,8 @@ impl Simd for Sse4_2 { Level::baseline() } } - #[inline] fn vectorize R, R>(self, f: F) -> R { #[target_feature(enable = "sse4.2")] - #[inline] unsafe fn vectorize_sse4_2 R, R>(f: F) -> R { f() } diff --git a/fearless_simd/src/generated/wasm.rs b/fearless_simd/src/generated/wasm.rs index 59c94768..121d8117 100644 --- a/fearless_simd/src/generated/wasm.rs +++ b/fearless_simd/src/generated/wasm.rs @@ -80,7 +80,6 @@ impl Simd for WasmSimd128 { fn level(self) -> Level { Level::WasmSimd128(self) } - #[inline] fn vectorize R, R>(self, f: F) -> R { f() }