pub struct CompileConfig {
pub opt_level: u8,
pub target: TargetSpec,
pub bounds_check: bool,
pub safety_bounds: SafetyBounds,
pub hardware: String,
pub no_optimize: bool,
pub loom_compat: bool,
pub num_imports: u32,
}Expand description
Configuration for a compilation run
Fields§
§opt_level: u8Optimization level (0 = none, 1 = fast, 2 = default, 3 = aggressive)
target: TargetSpecTarget specification
bounds_check: boolLegacy: enable software bounds checking for memory operations.
Deprecated in favor of safety_bounds. When set, equivalent to
SafetyBounds::Software. Kept for backwards compatibility with
callers that haven’t migrated yet.
safety_bounds: SafetyBoundsPhase-1 unified safety-bounds knob. If bounds_check is true and
this is None, the legacy field wins (back-compat). If both are set,
safety_bounds wins.
hardware: StringHardware profile name (e.g. “nrf52840”, “stm32f407”)
no_optimize: boolSkip optimization passes (direct instruction selection)
loom_compat: boolUse Loom-compatible optimization preset
num_imports: u32Number of imported functions (calls to indices below this use Meld dispatch)
Implementations§
Source§impl CompileConfig
impl CompileConfig
Sourcepub fn effective_safety_bounds(&self) -> SafetyBounds
pub fn effective_safety_bounds(&self) -> SafetyBounds
Resolve the effective safety-bounds setting, honouring the legacy
bounds_check field as a fallback. Used by backends to pick the
inline-check shape.
Trait Implementations§
Source§impl Clone for CompileConfig
impl Clone for CompileConfig
Source§fn clone(&self) -> CompileConfig
fn clone(&self) -> CompileConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more