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

source

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>

source

fn pthread_join( &mut self, thread: &OpTy<'tcx, Provenance>, retval: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32>

source

fn pthread_detach( &mut self, thread: &OpTy<'tcx, Provenance> ) -> InterpResult<'tcx, i32>

source

fn pthread_self(&mut self) -> InterpResult<'tcx, Scalar<Provenance>>

source

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.

source

fn pthread_getname_np( &mut self, thread: Scalar<Provenance>, name_out: Scalar<Provenance>, len: Scalar<Provenance> ) -> InterpResult<'tcx, Scalar<Provenance>>

source

fn sched_yield(&mut self) -> InterpResult<'tcx, i32>

Implementors§

source§

impl<'mir, 'tcx> EvalContextExt<'mir, 'tcx> for MiriInterpCx<'mir, 'tcx>