Struct wasmtime_cli_flags::CommonOptions
source · pub struct CommonOptions {Show 26 fields
pub config: Option<PathBuf>,
pub disable_logging: bool,
pub log_to_files: bool,
pub debug_info: bool,
pub disable_cache: bool,
pub disable_parallel_compilation: bool,
pub wasm_features: Option<WasmFeatures>,
pub wasi_modules: Option<WasiModules>,
pub optimize: bool,
pub opt_level: Option<OptLevel>,
pub cranelift_set: Vec<(String, String)>,
pub cranelift_enable: Vec<String>,
pub static_memory_maximum_size: Option<u64>,
pub static_memory_forced: bool,
pub static_memory_guard_size: Option<u64>,
pub dynamic_memory_guard_size: Option<u64>,
pub dynamic_memory_reserved_for_growth: Option<u64>,
pub enable_cranelift_debug_verifier: bool,
pub enable_cranelift_nan_canonicalization: bool,
pub fuel: Option<u64>,
pub epoch_interruption: bool,
pub disable_address_map: bool,
pub disable_memory_init_cow: bool,
pub max_wasm_stack: Option<usize>,
pub relaxed_simd_deterministic: bool,
pub compiler: Option<String>,
}
Expand description
Common options for commands that translate WebAssembly modules
Fields§
§config: Option<PathBuf>
Use specified configuration file
disable_logging: bool
Disable logging
log_to_files: bool
Log to per-thread log files instead of stderr
debug_info: bool
Generate debug information
disable_cache: bool
Disable cache system
disable_parallel_compilation: bool
Disable parallel compilation
wasm_features: Option<WasmFeatures>
Enable or disable WebAssembly features
wasi_modules: Option<WasiModules>
Enable or disable WASI modules
optimize: bool
Generate jitdump file (supported on –features=profiling build) Run optimization passes on translated functions, on by default
opt_level: Option<OptLevel>
Optimization level for generated functions Supported levels: 0 (none), 1, 2 (most), or s (size); default is “most”
cranelift_set: Vec<(String, String)>
Set a Cranelift setting to a given value.
Use wasmtime settings
to list Cranelift settings for a target.
cranelift_enable: Vec<String>
Enable a Cranelift boolean setting or preset.
Use wasmtime settings
to list Cranelift settings for a target.
static_memory_maximum_size: Option<u64>
Maximum size in bytes of wasm memory before it becomes dynamically relocatable instead of up-front-reserved.
static_memory_forced: bool
Force using a “static” style for all wasm memories
static_memory_guard_size: Option<u64>
Byte size of the guard region after static memories are allocated
dynamic_memory_guard_size: Option<u64>
Byte size of the guard region after dynamic memories are allocated
dynamic_memory_reserved_for_growth: Option<u64>
Bytes to reserve at the end of linear memory for growth for dynamic memories.
enable_cranelift_debug_verifier: bool
Enable Cranelift’s internal debug verifier (expensive)
enable_cranelift_nan_canonicalization: bool
Enable Cranelift’s internal NaN canonicalization
fuel: Option<u64>
Enable execution fuel with N units fuel, where execution will trap after running out of fuel.
Most WebAssembly instructions consume 1 unit of fuel. Some instructions,
such as nop
, drop
, block
, and loop
, consume 0 units, as any
execution cost associated with them involves other instructions which do
consume fuel.
epoch_interruption: bool
Executing wasm code will yield when a global epoch counter changes, allowing for async operation without blocking the executor.
disable_address_map: bool
Disable the on-by-default address map from native code to wasm code
disable_memory_init_cow: bool
Disable the default of attempting to initialize linear memory via a copy-on-write mapping
max_wasm_stack: Option<usize>
Maximum stack size, in bytes, that wasm is allowed to consume before a stack overflow is reported.
relaxed_simd_deterministic: bool
Whether or not to force deterministic and host-independent behavior of the relaxed-simd instructions.
By default these instructions may have architecture-specific behavior as allowed by the specification, but this can be used to force the behavior of these instructions to match the deterministic behavior classified in the specification. Note that enabling this option may come at a performance cost.
compiler: Option<String>
Explicitly specify the name of the compiler to use for WebAssembly.
Currently only cranelift
and winch
are supported, but not all builds
of Wasmtime have both built in.
Implementations§
Trait Implementations§
source§impl Args for CommonOptions
impl Args for CommonOptions
source§fn group_id() -> Option<Id>
fn group_id() -> Option<Id>
ArgGroup::id
][crate::ArgGroup::id] for this set of argumentssource§fn augment_args<'b>(__clap_app: Command) -> Command
fn augment_args<'b>(__clap_app: Command) -> Command
source§fn augment_args_for_update<'b>(__clap_app: Command) -> Command
fn augment_args_for_update<'b>(__clap_app: Command) -> Command
source§impl CommandFactory for CommonOptions
impl CommandFactory for CommonOptions
source§impl FromArgMatches for CommonOptions
impl FromArgMatches for CommonOptions
source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches ) -> Result<Self, Error>
source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches ) -> Result<(), Error>
ArgMatches
to self
.source§fn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches
) -> Result<(), Error>
fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches ) -> Result<(), Error>
ArgMatches
to self
.source§impl Parser for CommonOptions
impl Parser for CommonOptions
§fn try_parse() -> Result<Self, Error<RichFormatter>>
fn try_parse() -> Result<Self, Error<RichFormatter>>
std::env::args_os()
, return Err on error.