Skip to main content

generate

Function generate 

Source
pub fn generate(input: TokenStream) -> Result<TokenStream, Error>
Expand description

Generate a SIMD-optimized codelet for the given FFT size.

Supports sizes 2, 4, 8 for all ISAs and size 16 (f32 only, AVX-512F or scalar). The macro generates:

  • A public dispatcher that picks the best SIMD path at runtime
  • Architecture-specific inner functions with #[target_feature]
  • A generic scalar fallback

AVX-512F is probed before AVX2+FMA for sizes that have AVX-512 emitters.

ยงErrors

Returns a syn::Error when the input does not parse as a valid size literal, or when the size is not in the supported set {2, 4, 8, 16}.