![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <inttypes.h>#include <optional>#include "src/base/bounds.h"#include "src/base/small-vector.h"#include "src/base/strings.h"#include "src/base/vector.h"#include "src/strings/unicode.h"#include "src/utils/bit-vector.h"#include "src/wasm/decoder.h"#include "src/wasm/function-body-decoder.h"#include "src/wasm/value-type.h"#include "src/wasm/wasm-features.h"#include "src/wasm/wasm-limits.h"#include "src/wasm/wasm-module.h"#include "src/wasm/wasm-opcodes.h"#include "src/wasm/wasm-subtyping.h"Go to the source code of this file.
Namespaces | |
| namespace | v8 |
| namespace | v8::internal |
| namespace | v8::internal::wasm |
| namespace | v8::internal::wasm::value_type_reader |
Typedefs | |
| using | v8::internal::wasm::TryTableImmediate = BranchTableImmediate |
| using | v8::internal::wasm::EffectHandlerTableImmediate = BranchTableImmediate |
Functions | |
| static constexpr LoadType | v8::internal::wasm::GetLoadType (WasmOpcode opcode) |
| static constexpr StoreType | v8::internal::wasm::GetStoreType (WasmOpcode opcode) |
| template<typename ValidationTag , typename... Args> | |
| V8_INLINE void | v8::internal::wasm::DecodeError (Decoder *decoder, const uint8_t *pc, const char *str, Args &&... args) |
| template<typename ValidationTag , typename... Args> | |
| V8_INLINE void | v8::internal::wasm::DecodeError (Decoder *decoder, const char *str, Args &&... args) |
| template<typename ValidationTag > | |
| std::pair< HeapType, uint32_t > | v8::internal::wasm::value_type_reader::read_heap_type (Decoder *decoder, const uint8_t *pc, WasmEnabledFeatures enabled) |
| template<typename ValidationTag > | |
| std::pair< ValueType, uint32_t > | v8::internal::wasm::value_type_reader::read_value_type (Decoder *decoder, const uint8_t *pc, WasmEnabledFeatures enabled) |
| template<typename ValidationTag > | |
| bool | v8::internal::wasm::value_type_reader::ValidateHeapType (Decoder *decoder, const uint8_t *pc, const WasmModule *module, HeapType type) |
| template<typename ValidationTag > | |
| bool | v8::internal::wasm::value_type_reader::ValidateValueType (Decoder *decoder, const uint8_t *pc, const WasmModule *module, ValueType type) |
| static void | v8::internal::wasm::value_type_reader::Populate (HeapType *unfinished_type, const WasmModule *module) |
| static void | v8::internal::wasm::value_type_reader::Populate (ValueType *unfinished_type, const WasmModule *module) |
Variables | |
| const std::pair< uint32_t, uint32_t > | v8::internal::wasm::invalid_instruction_trace = {0, 0} |
| #define ASMJS_CASE | ( | Op, | |
| ... ) |
| #define ATOMIC_OP_LIST | ( | V | ) |
Definition at line 107 of file function-body-decoder-impl.h.
| #define ATOMIC_STORE_OP_LIST | ( | V | ) |
Definition at line 168 of file function-body-decoder-impl.h.
| #define BUILD_SIMPLE_EXTENDED_CONST_OPCODE | ( | op, | |
| ... ) |
| #define BUILD_SIMPLE_OPCODE | ( | op, | |
| _, | |||
| sig, | |||
| ... ) |
Definition at line 3344 of file function-body-decoder-impl.h.
| #define BUILD_SIMPLE_OPCODE | ( | op, | |
| _, | |||
| sig, | |||
| ... ) |
Definition at line 3344 of file function-body-decoder-impl.h.
| #define BUILD_SIMPLE_OPCODE | ( | op, | |
| ... ) |
Definition at line 3344 of file function-body-decoder-impl.h.
| #define CALL_INTERFACE | ( | name, | |
| ... ) |
Definition at line 2835 of file function-body-decoder-impl.h.
| #define CALL_INTERFACE_IF_OK_AND_PARENT_REACHABLE | ( | name, | |
| ... ) |
Definition at line 2852 of file function-body-decoder-impl.h.
| #define CALL_INTERFACE_IF_OK_AND_REACHABLE | ( | name, | |
| ... ) |
Definition at line 2843 of file function-body-decoder-impl.h.
| #define CASE_ATOMIC_OP | ( | Name, | |
| Type ) |
| #define CASE_ATOMIC_STORE_OP | ( | Name, | |
| Type ) |
| #define CHECK_PROTOTYPE_OPCODE | ( | feat | ) |
Definition at line 63 of file function-body-decoder-impl.h.
| #define DECLARE_OPCODE_CASE | ( | name, | |
| ... ) |
| #define DECODE | ( | name | ) |
Definition at line 3321 of file function-body-decoder-impl.h.
| #define DECODE_IMPL | ( | opcode | ) |
Definition at line 4520 of file function-body-decoder-impl.h.
| #define DECODE_IMPL2 | ( | opcode, | |
| name ) |
Definition at line 4521 of file function-body-decoder-impl.h.
| #define DECODE_IMPL_CONST | ( | opcode | ) |
Definition at line 4529 of file function-body-decoder-impl.h.
| #define DECODE_IMPL_CONST2 | ( | opcode, | |
| name ) |
Definition at line 4530 of file function-body-decoder-impl.h.
| #define DECODE_LOAD_MEM | ( | op, | |
| ... ) |
| #define DECODE_STORE_MEM | ( | op, | |
| ... ) |
| #define DEFINE_EMPTY_CALLBACK | ( | name, | |
| ... ) |
Definition at line 7116 of file function-body-decoder-impl.h.
| #define DEFINE_SIMPLE_SIG_OPERATOR | ( | sig, | |
| ... ) |
Definition at line 7097 of file function-body-decoder-impl.h.
| #define INTERFACE_CONSTANT_FUNCTIONS | ( | F | ) |
Definition at line 1288 of file function-body-decoder-impl.h.
| #define INTERFACE_FUNCTIONS | ( | F | ) |
Definition at line 1275 of file function-body-decoder-impl.h.
| #define INTERFACE_META_FUNCTIONS | ( | F | ) |
Definition at line 1280 of file function-body-decoder-impl.h.
| #define INTERFACE_NON_CONSTANT_FUNCTIONS | ( | F | ) |
Definition at line 1317 of file function-body-decoder-impl.h.
| #define NON_CONST_ONLY |
Definition at line 5156 of file function-body-decoder-impl.h.
| #define SIMPLE_PROTOTYPE_CASE | ( | name, | |
| ... ) |
Definition at line 4494 of file function-body-decoder-impl.h.
| #define SIMPLE_PROTOTYPE_CASE | ( | name, | |
| ... ) |
Definition at line 4494 of file function-body-decoder-impl.h.
| #define TRACE | ( | ... | ) |
Definition at line 39 of file function-body-decoder-impl.h.
| #define TRACE_INST_FORMAT " @%-8d #%-30s|" |
Definition at line 44 of file function-body-decoder-impl.h.
| #define VALIDATE | ( | condition | ) |
Definition at line 60 of file function-body-decoder-impl.h.