#include <sysio/vm/allocator.hpp>
#include <sysio/vm/constants.hpp>
#include <sysio/vm/exceptions.hpp>
#include <sysio/vm/execution_interface.hpp>
#include <sysio/vm/host_function.hpp>
#include <sysio/vm/opcodes.hpp>
#include <sysio/vm/signals.hpp>
#include <sysio/vm/types.hpp>
#include <sysio/vm/utils.hpp>
#include <sysio/vm/wasm_stack.hpp>
#include <algorithm>
#include <cassert>
#include <signal.h>
#include <cstddef>
#include <cstdint>
#include <cstring>
#include <iostream>
#include <limits>
#include <optional>
#include <string_view>
#include <system_error>
#include <utility>
#include <ucontext.h>
Go to the source code of this file.
◆ CREATE_EMPTY_LABEL
#define CREATE_EMPTY_LABEL |
( |
| NAME, |
|
|
| CODE ) |
Value:
throw wasm_interpreter_exception{"empty operand"};
Definition at line 781 of file execution_context.hpp.
781#define CREATE_EMPTY_LABEL(NAME, CODE) ev_label_##NAME : \
782 throw wasm_interpreter_exception{"empty operand"};
◆ CREATE_EXIT_LABEL
#define CREATE_EXIT_LABEL |
( |
| NAME, |
|
|
| CODE ) |
Value:
Definition at line 779 of file execution_context.hpp.
779#define CREATE_EXIT_LABEL(NAME, CODE) ev_label_##NAME : \
780 return;
◆ CREATE_LABEL
#define CREATE_LABEL |
( |
| NAME, |
|
|
| CODE ) |
Value: ev_label_##
NAME : visitor(ev_variant->template get<sysio::vm::SYS_VM_OPCODE_T(
NAME)>()); \
ev_variant = _state.pc; \
goto* dispatch_table[ev_variant->index()];
Definition at line 775 of file execution_context.hpp.
775#define CREATE_LABEL(NAME, CODE) \
776 ev_label_##NAME : visitor(ev_variant->template get<sysio::vm::SYS_VM_OPCODE_T(NAME)>()); \
777 ev_variant = _state.pc; \
778 goto* dispatch_table[ev_variant->index()];
◆ CREATE_TABLE_ENTRY
#define CREATE_TABLE_ENTRY |
( |
| NAME, |
|
|
| CODE ) |