Skip to main content

oxilean_codegen/opt_vectorize/
vectorizationconfig_traits.rs

1//! # VectorizationConfig - Trait Implementations
2//!
3//! This module contains trait implementations for `VectorizationConfig`.
4//!
5//! ## Implemented Traits
6//!
7//! - `Default`
8//! - `Display`
9//!
10//! 🤖 Generated with [SplitRS](https://github.com/cool-japan/splitrs)
11
12use super::types::{SIMDTarget, VectorWidth, VectorizationConfig};
13use std::fmt;
14
15impl Default for VectorizationConfig {
16    fn default() -> Self {
17        VectorizationConfig {
18            min_trip_count: 8,
19            preferred_width: VectorWidth::W256,
20            enable_fma: true,
21            vectorize_reductions: true,
22            target: SIMDTarget::X86AVX,
23        }
24    }
25}
26
27impl fmt::Display for VectorizationConfig {
28    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
29        write!(
30            f,
31            "VectorizationConfig {{ min_trip={}, width={}, fma={}, reductions={}, target={} }}",
32            self.min_trip_count,
33            self.preferred_width,
34            self.enable_fma,
35            self.vectorize_reductions,
36            self.target,
37        )
38    }
39}