macro_rules! simd_dual_op {
(
$a:expr, $b:expr,
1, 4,
$init_expr:expr,
$combine_expr:expr,
$extract_expr:expr,
$scalar_init:expr,
$scalar_combine:expr
) => { ... };
}Expand description
Generate SIMD dual-vector operations (dot product, correlation, etc.)
This macro eliminates manual loop unrolling for operations that process two input arrays simultaneously.
ยงParameters
$a: First input slice$b: Second input slice$accumulator_count: Number of SIMD accumulators$chunk_size: Elements per chunk$init_expr: Expression to initialize accumulators$combine_expr: Expression to combine two vectors$extract_expr: Expression to extract final result$scalar_init: Initial value for scalar processing$scalar_combine: Expression for scalar combination