pub trait EvalContextExt<'mir, 'tcx: 'mir>: MiriInterpCxExt<'mir, 'tcx> {
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.