Struct solana_rbpf::vm::Config
source · [−]pub struct Config {Show 13 fields
pub max_call_depth: usize,
pub stack_frame_size: usize,
pub enable_stack_frame_gaps: bool,
pub instruction_meter_checkpoint_distance: usize,
pub enable_instruction_meter: bool,
pub enable_instruction_tracing: bool,
pub enable_symbol_and_section_labels: bool,
pub disable_unresolved_symbols_at_runtime: bool,
pub reject_broken_elfs: bool,
pub noop_instruction_ratio: f64,
pub sanitize_user_provided_values: bool,
pub encrypt_environment_registers: bool,
pub disable_deprecated_load_instructions: bool,
}
Expand description
VM configuration settings
Fields
max_call_depth: usize
Maximum call depth
stack_frame_size: usize
Size of a stack frame in bytes, must match the size specified in the LLVM BPF backend
enable_stack_frame_gaps: bool
Enables gaps in VM address space between the stack frames
instruction_meter_checkpoint_distance: usize
Maximal pc distance after which a new instruction meter validation is emitted by the JIT
enable_instruction_meter: bool
Enable instruction meter and limiting
enable_instruction_tracing: bool
Enable instruction tracing
enable_symbol_and_section_labels: bool
Enable dynamic string allocation for labels
disable_unresolved_symbols_at_runtime: bool
Disable reporting of unresolved symbols at runtime
reject_broken_elfs: bool
Reject ELF files containing issues that the verifier did not catch before (up to v0.2.21)
noop_instruction_ratio: f64
Ratio of random no-ops per instruction in JIT (0.0 = OFF)
sanitize_user_provided_values: bool
Enable disinfection of immediate values and offsets provided by the user in JIT
encrypt_environment_registers: bool
Encrypt the environment registers in JIT
disable_deprecated_load_instructions: bool
Disable ldabs* and ldind* instructions
Trait Implementations
impl Copy for Config
impl StructuralPartialEq for Config
Auto Trait Implementations
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more