Wire Sysio Wire Sysion 1.0.0
|
#include <execution_context.hpp>
Public Member Functions | |
execution_context (module &m, uint32_t max_call_depth) | |
void | set_max_call_depth (uint32_t max_call_depth) |
void | call (uint32_t index) |
void | print_stack () |
uint32_t | table_elem (uint32_t i) |
void | push_operand (operand_stack_elem el) |
operand_stack_elem | get_operand (uint32_t index) const |
void | eat_operands (uint32_t index) |
void | compact_operand (uint32_t index) |
void | set_operand (uint32_t index, const operand_stack_elem &el) |
uint32_t | current_operands_index () const |
void | push_call (activation_frame &&el) |
activation_frame | pop_call () |
uint32_t | call_depth () const |
template<bool Should_Exit = false> | |
void | push_call (uint32_t index) |
void | apply_pop_call (uint32_t num_locals, uint16_t return_count) |
operand_stack_elem | pop_operand () |
operand_stack_elem & | peek_operand (size_t i=0) |
operand_stack_elem | get_global (uint32_t index) |
void | set_global (uint32_t index, const operand_stack_elem &el) |
bool | is_true (const operand_stack_elem &el) |
void | type_check (const func_type &ft) |
opcode * | get_pc () const |
void | set_relative_pc (uint32_t pc_offset) |
void | set_pc (opcode *pc) |
void | inc_pc (uint32_t offset=1) |
void | exit (std::error_code err=std::error_code()) |
void | reset () |
template<typename Visitor , typename... Args> | |
std::optional< operand_stack_elem > | execute_func_table (host_type *host, Visitor &&visitor, uint32_t table_index, Args... args) |
template<typename Visitor , typename... Args> | |
std::optional< operand_stack_elem > | execute (host_type *host, Visitor &&visitor, const std::string_view func, Args... args) |
template<typename Visitor , typename... Args> | |
void | execute_start (host_type *host, Visitor &&visitor) |
template<typename Visitor , typename... Args> | |
std::optional< operand_stack_elem > | execute (host_type *host, Visitor &&visitor, uint32_t func_index, Args... args) |
void | jump (uint32_t pop_info, uint32_t new_pc) |
int | backtrace (void **data, int limit, void *uc) const |
execution_context (module &m, uint32_t max_call_depth) | |
void | set_max_call_depth (uint32_t max_call_depth) |
void | call (uint32_t index) |
void | print_stack () |
uint32_t | table_elem (uint32_t i) |
void | push_operand (operand_stack_elem el) |
operand_stack_elem | get_operand (uint32_t index) const |
void | eat_operands (uint32_t index) |
void | compact_operand (uint32_t index) |
void | set_operand (uint32_t index, const operand_stack_elem &el) |
uint32_t | current_operands_index () const |
void | push_call (activation_frame &&el) |
activation_frame | pop_call () |
uint32_t | call_depth () const |
template<bool Should_Exit = false> | |
void | push_call (uint32_t index) |
void | apply_pop_call (uint32_t num_locals, uint16_t return_count) |
operand_stack_elem | pop_operand () |
operand_stack_elem & | peek_operand (size_t i=0) |
operand_stack_elem | get_global (uint32_t index) |
void | set_global (uint32_t index, const operand_stack_elem &el) |
bool | is_true (const operand_stack_elem &el) |
void | type_check (const func_type &ft) |
opcode * | get_pc () const |
void | set_relative_pc (uint32_t pc_offset) |
void | set_pc (opcode *pc) |
void | inc_pc (uint32_t offset=1) |
void | exit (std::error_code err=std::error_code()) |
void | reset () |
template<typename Visitor , typename... Args> | |
std::optional< operand_stack_elem > | execute_func_table (host_type *host, Visitor &&visitor, uint32_t table_index, Args... args) |
template<typename Visitor , typename... Args> | |
std::optional< operand_stack_elem > | execute (host_type *host, Visitor &&visitor, const std::string_view func, Args... args) |
template<typename Visitor , typename... Args> | |
void | execute_start (host_type *host, Visitor &&visitor) |
template<typename Visitor , typename... Args> | |
std::optional< operand_stack_elem > | execute (host_type *host, Visitor &&visitor, uint32_t func_index, Args... args) |
void | jump (uint32_t pop_info, uint32_t new_pc) |
int | backtrace (void **data, int limit, void *uc) const |
Public Member Functions inherited from sysio::vm::execution_context_base< execution_context< Host >, Host > | |
execution_context< Host > & | derived () |
execution_context< Host > & | derived () |
execution_context_base (module &m) | |
execution_context_base (module &m) | |
int32_t | grow_linear_memory (int32_t pages) |
int32_t | grow_linear_memory (int32_t pages) |
int32_t | current_linear_memory () const |
int32_t | current_linear_memory () const |
void | exit (std::error_code err=std::error_code()) |
void | exit (std::error_code err=std::error_code()) |
module & | get_module () |
module & | get_module () |
void | set_wasm_allocator (wasm_allocator *alloc) |
void | set_wasm_allocator (wasm_allocator *alloc) |
auto | get_wasm_allocator () |
auto | get_wasm_allocator () |
char * | linear_memory () |
char * | linear_memory () |
auto & | get_operand_stack () |
const auto & | get_operand_stack () const |
auto & | get_operand_stack () |
const auto & | get_operand_stack () const |
auto | get_interface () |
auto | get_interface () |
void | set_max_pages (std::uint32_t max_pages) |
void | set_max_pages (std::uint32_t max_pages) |
std::error_code | get_error_code () const |
std::error_code | get_error_code () const |
void | reset () |
void | reset () |
std::optional< operand_stack_elem > | execute (host_type *host, Visitor &&visitor, const std::string_view func, Args... args) |
std::optional< operand_stack_elem > | execute (host_type *host, Visitor &&visitor, const std::string_view func, Args... args) |
void | execute_start (host_type *host, Visitor &&visitor) |
void | execute_start (host_type *host, Visitor &&visitor) |
Additional Inherited Members | |
Static Protected Member Functions inherited from sysio::vm::execution_context_base< execution_context< Host >, Host > | |
static void | type_check_args (const func_type &ft, Args &&...) |
static void | type_check_args (const func_type &ft, Args &&...) |
static void | handle_signal (int sig) |
static void | handle_signal (int sig) |
Protected Attributes inherited from sysio::vm::execution_context_base< execution_context< Host >, Host > | |
char * | _linear_memory |
module & | _mod |
wasm_allocator * | _wasm_alloc |
uint32_t | _max_pages |
detail::host_invoker_t< Host > | _rhf |
std::error_code | _error_code |
operand_stack | _os |
Definition at line 483 of file execution_context.hpp.
|
inline |
Definition at line 495 of file execution_context.hpp.
|
inline |
Definition at line 495 of file execution_context.hpp.
|
inline |
Definition at line 563 of file execution_context.hpp.
|
inline |
Definition at line 563 of file execution_context.hpp.
|
inline |
Definition at line 740 of file execution_context.hpp.
|
inline |
Definition at line 740 of file execution_context.hpp.
|
inline |
Definition at line 511 of file execution_context.hpp.
|
inline |
Definition at line 511 of file execution_context.hpp.
|
inline |
Definition at line 552 of file execution_context.hpp.
|
inline |
Definition at line 552 of file execution_context.hpp.
|
inline |
Definition at line 547 of file execution_context.hpp.
|
inline |
Definition at line 547 of file execution_context.hpp.
|
inline |
Definition at line 549 of file execution_context.hpp.
|
inline |
Definition at line 549 of file execution_context.hpp.
|
inline |
Definition at line 546 of file execution_context.hpp.
|
inline |
Definition at line 546 of file execution_context.hpp.
|
inline |
Definition at line 672 of file execution_context.hpp.
|
inline |
Definition at line 672 of file execution_context.hpp.
|
inline |
Definition at line 685 of file execution_context.hpp.
|
inline |
Definition at line 685 of file execution_context.hpp.
|
inline |
Definition at line 666 of file execution_context.hpp.
|
inline |
Definition at line 666 of file execution_context.hpp.
|
inline |
Definition at line 679 of file execution_context.hpp.
|
inline |
|
inline |
Definition at line 652 of file execution_context.hpp.
|
inline |
Definition at line 652 of file execution_context.hpp.
|
inline |
Definition at line 574 of file execution_context.hpp.
|
inline |
Definition at line 574 of file execution_context.hpp.
|
inline |
|
inline |
|
inline |
Definition at line 646 of file execution_context.hpp.
|
inline |
Definition at line 646 of file execution_context.hpp.
|
inline |
Definition at line 651 of file execution_context.hpp.
|
inline |
Definition at line 651 of file execution_context.hpp.
|
inline |
Definition at line 614 of file execution_context.hpp.
|
inline |
Definition at line 614 of file execution_context.hpp.
|
inline |
Definition at line 727 of file execution_context.hpp.
|
inline |
Definition at line 727 of file execution_context.hpp.
|
inline |
Definition at line 573 of file execution_context.hpp.
|
inline |
Definition at line 573 of file execution_context.hpp.
|
inline |
Definition at line 551 of file execution_context.hpp.
|
inline |
Definition at line 551 of file execution_context.hpp.
|
inline |
Definition at line 572 of file execution_context.hpp.
|
inline |
Definition at line 572 of file execution_context.hpp.
|
inline |
Definition at line 530 of file execution_context.hpp.
|
inline |
Definition at line 530 of file execution_context.hpp.
|
inline |
Definition at line 550 of file execution_context.hpp.
|
inline |
Definition at line 550 of file execution_context.hpp.
|
inline |
Definition at line 554 of file execution_context.hpp.
|
inline |
Definition at line 554 of file execution_context.hpp.
|
inline |
Definition at line 544 of file execution_context.hpp.
|
inline |
Definition at line 544 of file execution_context.hpp.
|
inline |
Definition at line 658 of file execution_context.hpp.
|
inline |
Definition at line 658 of file execution_context.hpp.
|
inline |
Definition at line 586 of file execution_context.hpp.
|
inline |
Definition at line 586 of file execution_context.hpp.
|
inline |
Definition at line 499 of file execution_context.hpp.
|
inline |
Definition at line 499 of file execution_context.hpp.
|
inline |
Definition at line 548 of file execution_context.hpp.
|
inline |
Definition at line 548 of file execution_context.hpp.
|
inline |
Definition at line 650 of file execution_context.hpp.
|
inline |
Definition at line 650 of file execution_context.hpp.
|
inline |
Definition at line 647 of file execution_context.hpp.
|
inline |
Definition at line 647 of file execution_context.hpp.
|
inline |
Definition at line 543 of file execution_context.hpp.
|
inline |
Definition at line 543 of file execution_context.hpp.
|
inline |
Definition at line 622 of file execution_context.hpp.
|
inline |
Definition at line 622 of file execution_context.hpp.