pub trait EvalContextExt<'tcx>: MiriInterpCxExt<'tcx> {
// Provided methods
fn pthread_create(
&mut self,
thread: &OpTy<'tcx, Provenance>,
_attr: &OpTy<'tcx, Provenance>,
start_routine: &OpTy<'tcx, Provenance>,
arg: &OpTy<'tcx, Provenance>,
) -> InterpResult<'tcx, i32> { ... }
fn pthread_join(
&mut self,
thread: &OpTy<'tcx, Provenance>,
retval: &OpTy<'tcx, Provenance>,
) -> InterpResult<'tcx, i32> { ... }
fn pthread_detach(
&mut self,
thread: &OpTy<'tcx, Provenance>,
) -> InterpResult<'tcx, i32> { ... }
fn pthread_self(&mut self) -> InterpResult<'tcx, Scalar<Provenance>> { ... }
fn pthread_setname_np(
&mut self,
thread: Scalar<Provenance>,
name: Scalar<Provenance>,
max_name_len: usize,
) -> InterpResult<'tcx, Scalar<Provenance>> { ... }
fn pthread_getname_np(
&mut self,
thread: Scalar<Provenance>,
name_out: Scalar<Provenance>,
len: Scalar<Provenance>,
) -> InterpResult<'tcx, Scalar<Provenance>> { ... }
fn sched_yield(&mut self) -> InterpResult<'tcx, i32> { ... }
}Provided Methods§
fn pthread_create( &mut self, thread: &OpTy<'tcx, Provenance>, _attr: &OpTy<'tcx, Provenance>, start_routine: &OpTy<'tcx, Provenance>, arg: &OpTy<'tcx, Provenance>, ) -> InterpResult<'tcx, i32>
fn pthread_join( &mut self, thread: &OpTy<'tcx, Provenance>, retval: &OpTy<'tcx, Provenance>, ) -> InterpResult<'tcx, i32>
fn pthread_detach( &mut self, thread: &OpTy<'tcx, Provenance>, ) -> InterpResult<'tcx, i32>
fn pthread_self(&mut self) -> InterpResult<'tcx, Scalar<Provenance>>
sourcefn pthread_setname_np(
&mut self,
thread: Scalar<Provenance>,
name: Scalar<Provenance>,
max_name_len: usize,
) -> InterpResult<'tcx, Scalar<Provenance>>
fn pthread_setname_np( &mut self, thread: Scalar<Provenance>, name: Scalar<Provenance>, max_name_len: usize, ) -> InterpResult<'tcx, Scalar<Provenance>>
Set the name of the current thread. max_name_len is the maximal length of the name
including the null terminator.