#[repr(C)]pub struct GuestState {
pub exit_reason: ExitReason,
pub pc: u64,
pub regs: [u64; 96],
pub tmps: [u64; 256],
pub memory: *mut GuestMemoryAbi,
pub fault_addr: u64,
pub fault_access: AccessKind,
pub control: *mut GuestControl,
pub jit_entries: *const JitEntryAbi,
pub jit_entry_count: usize,
}Expand description
Uses one shared layout because both the runtime and generated libraries access guest state.
Fields§
§exit_reason: ExitReasonTells the runtime why generated code returned.
pc: u64Gives the current guest virtual instruction address.
regs: [u64; 96]Stores raw integer and floating-point register bits in the shared ABI layout.
tmps: [u64; 256]Stores NNIL temporary values that must remain available across generated functions.
memory: *mut GuestMemoryAbiPoints to the MMU view that generated code can use without Rust containers.
fault_addr: u64Gives the guest address of the last failed memory access.
fault_access: AccessKindIdentifies the operation that failed at fault_addr.
control: *mut GuestControlPoints to optional debugger controls, or is null for unrestricted execution.
jit_entries: *const JitEntryAbiPoints to sorted cross-artifact dispatch entries.
jit_entry_count: usizeGives the valid length of jit_entries.
Trait Implementations§
Source§impl Clone for GuestState
impl Clone for GuestState
Source§fn clone(&self) -> GuestState
fn clone(&self) -> GuestState
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !Send for GuestState
impl !Sync for GuestState
impl Freeze for GuestState
impl RefUnwindSafe for GuestState
impl Unpin for GuestState
impl UnsafeUnpin for GuestState
impl UnwindSafe for GuestState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more