pub struct IllegalEcallSystemInstructionHandler;Expand description
System instruction handler that results in illegal instruction for all system calls and does nothing for other system instructions.
Being stateless, it can be used as the whole execution environment of a configuration that needs nothing else from it.
Trait Implementations§
Source§impl Clone for IllegalEcallSystemInstructionHandler
impl Clone for IllegalEcallSystemInstructionHandler
Source§fn clone(&self) -> IllegalEcallSystemInstructionHandler
fn clone(&self) -> IllegalEcallSystemInstructionHandler
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 moreimpl Copy for IllegalEcallSystemInstructionHandler
Source§impl Default for IllegalEcallSystemInstructionHandler
impl Default for IllegalEcallSystemInstructionHandler
Source§fn default() -> IllegalEcallSystemInstructionHandler
fn default() -> IllegalEcallSystemInstructionHandler
Returns the “default value” for a type. Read more
Source§impl<Reg, Regs, Memory, PC> SystemInstructionHandler<Reg, Regs, Memory, PC> for IllegalEcallSystemInstructionHandler
impl<Reg, Regs, Memory, PC> SystemInstructionHandler<Reg, Regs, Memory, PC> for IllegalEcallSystemInstructionHandler
Source§fn handle_ecall(
&mut self,
_regs: &mut Regs,
_memory: &mut Memory,
program_counter: &mut PC,
) -> Result<ControlFlow<()>, ExecutionError<Reg::Type>>
fn handle_ecall( &mut self, _regs: &mut Regs, _memory: &mut Memory, program_counter: &mut PC, ) -> Result<ControlFlow<()>, ExecutionError<Reg::Type>>
Handle an
ecall instructionSource§fn handle_fence(&mut self, pred: u8, succ: u8)
fn handle_fence(&mut self, pred: u8, succ: u8)
Handle a
fence instructionSource§fn handle_fence_tso(&mut self)
fn handle_fence_tso(&mut self)
Handle a
fence.tso instructionSource§fn handle_ebreak(&mut self, regs: &mut Regs, memory: &mut Memory, pc: Reg::Type)
fn handle_ebreak(&mut self, regs: &mut Regs, memory: &mut Memory, pc: Reg::Type)
Handle an
ebreak instruction. Read moreSource§impl WrsHandler for IllegalEcallSystemInstructionHandler
impl WrsHandler for IllegalEcallSystemInstructionHandler
Source§fn handle_wrs_nto(&mut self)
fn handle_wrs_nto(&mut self)
Handle a
wrs.nto instruction (Wait-on-Reservation-Set, no timeout)Source§fn handle_wrs_sto(&mut self)
fn handle_wrs_sto(&mut self)
Handle a
wrs.sto instruction (Wait-on-Reservation-Set, short timeout)Auto Trait Implementations§
impl Freeze for IllegalEcallSystemInstructionHandler
impl RefUnwindSafe for IllegalEcallSystemInstructionHandler
impl Send for IllegalEcallSystemInstructionHandler
impl Sync for IllegalEcallSystemInstructionHandler
impl Unpin for IllegalEcallSystemInstructionHandler
impl UnsafeUnpin for IllegalEcallSystemInstructionHandler
impl UnwindSafe for IllegalEcallSystemInstructionHandler
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