pub trait EvalContextExt<'tcx>: MiriInterpCxExt<'tcx> {
// Provided methods
fn os_sync_wait_on_address(
&mut self,
addr_op: &OpTy<'tcx>,
value_op: &OpTy<'tcx>,
size_op: &OpTy<'tcx>,
flags_op: &OpTy<'tcx>,
timeout: MacOsFutexTimeout<'_, 'tcx>,
dest: &MPlaceTy<'tcx>,
) -> InterpResult<'tcx> { ... }
fn os_sync_wake_by_address(
&mut self,
addr_op: &OpTy<'tcx>,
size_op: &OpTy<'tcx>,
flags_op: &OpTy<'tcx>,
all: bool,
dest: &MPlaceTy<'tcx>,
) -> InterpResult<'tcx> { ... }
fn os_unfair_lock_lock(
&mut self,
lock_op: &OpTy<'tcx>,
) -> InterpResult<'tcx> { ... }
fn os_unfair_lock_trylock(
&mut self,
lock_op: &OpTy<'tcx>,
dest: &MPlaceTy<'tcx>,
) -> InterpResult<'tcx> { ... }
fn os_unfair_lock_unlock(
&mut self,
lock_op: &OpTy<'tcx>,
) -> InterpResult<'tcx> { ... }
fn os_unfair_lock_assert_owner(
&mut self,
lock_op: &OpTy<'tcx>,
) -> InterpResult<'tcx> { ... }
fn os_unfair_lock_assert_not_owner(
&mut self,
lock_op: &OpTy<'tcx>,
) -> InterpResult<'tcx> { ... }
}
Provided Methods§
Sourcefn os_sync_wait_on_address(
&mut self,
addr_op: &OpTy<'tcx>,
value_op: &OpTy<'tcx>,
size_op: &OpTy<'tcx>,
flags_op: &OpTy<'tcx>,
timeout: MacOsFutexTimeout<'_, 'tcx>,
dest: &MPlaceTy<'tcx>,
) -> InterpResult<'tcx>
fn os_sync_wait_on_address( &mut self, addr_op: &OpTy<'tcx>, value_op: &OpTy<'tcx>, size_op: &OpTy<'tcx>, flags_op: &OpTy<'tcx>, timeout: MacOsFutexTimeout<'_, 'tcx>, dest: &MPlaceTy<'tcx>, ) -> InterpResult<'tcx>
Sourcefn os_sync_wake_by_address(
&mut self,
addr_op: &OpTy<'tcx>,
size_op: &OpTy<'tcx>,
flags_op: &OpTy<'tcx>,
all: bool,
dest: &MPlaceTy<'tcx>,
) -> InterpResult<'tcx>
fn os_sync_wake_by_address( &mut self, addr_op: &OpTy<'tcx>, size_op: &OpTy<'tcx>, flags_op: &OpTy<'tcx>, all: bool, dest: &MPlaceTy<'tcx>, ) -> InterpResult<'tcx>
Implements os_sync_wake_by_address_all
and os_sync_wake_by_address_any
.