Function wasmer_vm::traphandlers::wasmer_call_trampoline[][src]

pub unsafe fn wasmer_call_trampoline(
    trap_handler: &impl TrapHandler,
    vmctx: VMFunctionEnvironment,
    trampoline: VMTrampoline,
    callee: *const VMFunctionBody,
    values_vec: *mut u8
) -> Result<(), Trap>
Expand description

Call the wasm function pointed to by callee.

  • vmctx - the callee vmctx argument
  • caller_vmctx - the caller vmctx argument
  • trampoline - the jit-generated trampoline whose ABI takes 4 values, the callee vmctx, the caller vmctx, the callee argument below, and then the values_vec argument.
  • callee - the third argument to the trampoline function
  • values_vec - points to a buffer which holds the incoming arguments, and to which the outgoing return values will be written.

Safety

Wildly unsafe because it calls raw function pointers and reads/writes raw function pointers.