![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <canonical-types.h>
Classes | |
struct | CanonicalEquality |
struct | CanonicalGroup |
struct | CanonicalHashing |
struct | CanonicalSingletonGroup |
struct | CanonicalType |
class | CanonicalTypeVector |
struct | RecursionGroupRange |
Static Public Member Functions | |
static V8_EXPORT_PRIVATE void | PrepareForCanonicalTypeId (Isolate *isolate, CanonicalTypeIndex id) |
static V8_EXPORT_PRIVATE void | ClearWasmCanonicalTypesForTesting (Isolate *isolate) |
Static Public Attributes | |
static constexpr CanonicalTypeIndex | kPredefinedArrayI8Index {0} |
static constexpr CanonicalTypeIndex | kPredefinedArrayI16Index {1} |
static constexpr uint32_t | kNumberOfPredefinedTypes = 2 |
Private Member Functions | |
void | AddPredefinedArrayTypes () |
CanonicalTypeIndex | FindCanonicalGroup (const CanonicalGroup &) const |
CanonicalTypeIndex | FindCanonicalGroup (const CanonicalSingletonGroup &) const |
CanonicalType | CanonicalizeTypeDef (const WasmModule *module, ModuleTypeIndex module_type_idx, ModuleTypeIndex recgroup_start, CanonicalTypeIndex canonical_recgroup_start) |
void | CheckMaxCanonicalIndex () const |
Private Attributes | |
std::vector< CanonicalTypeIndex > | canonical_supertypes_ |
std::unordered_set< CanonicalGroup > | canonical_groups_ |
std::unordered_set< CanonicalSingletonGroup > | canonical_singleton_groups_ |
CanonicalTypeVector | canonical_types_ |
AccountingAllocator | allocator_ |
Zone | zone_ {&allocator_, "canonical type zone"} |
base::Mutex | mutex_ |
Definition at line 47 of file canonical-types.h.
v8::internal::wasm::TypeCanonicalizer::TypeCanonicalizer | ( | ) |
|
delete |
|
delete |
|
private |
Definition at line 211 of file canonical-types.cc.
CanonicalTypeIndex v8::internal::wasm::TypeCanonicalizer::AddRecursiveGroup | ( | const FunctionSig * | sig | ) |
void v8::internal::wasm::TypeCanonicalizer::AddRecursiveGroup | ( | WasmModule * | module, |
uint32_t | size ) |
Definition at line 32 of file canonical-types.cc.
void v8::internal::wasm::TypeCanonicalizer::AddRecursiveSingletonGroup | ( | WasmModule * | module | ) |
Definition at line 97 of file canonical-types.cc.
|
private |
Definition at line 291 of file canonical-types.cc.
|
private |
Definition at line 26 of file canonical-types.cc.
|
static |
Definition at line 461 of file canonical-types.cc.
void v8::internal::wasm::TypeCanonicalizer::EmptyStorageForTesting | ( | ) |
size_t v8::internal::wasm::TypeCanonicalizer::EstimateCurrentMemoryConsumption | ( | ) | const |
Definition at line 394 of file canonical-types.cc.
|
private |
Definition at line 375 of file canonical-types.cc.
|
private |
CanonicalTypeIndex v8::internal::wasm::TypeCanonicalizer::FindIndex_Slow | ( | const CanonicalSig * | sig | ) | const |
Definition at line 477 of file canonical-types.cc.
size_t v8::internal::wasm::TypeCanonicalizer::GetCurrentNumberOfTypes | ( | ) | const |
Definition at line 410 of file canonical-types.cc.
bool v8::internal::wasm::TypeCanonicalizer::IsArray | ( | CanonicalTypeIndex | index | ) | const |
Definition at line 473 of file canonical-types.cc.
bool v8::internal::wasm::TypeCanonicalizer::IsCanonicalSubtype | ( | CanonicalTypeIndex | sub_index, |
CanonicalTypeIndex | super_index ) |
Definition at line 236 of file canonical-types.cc.
bool v8::internal::wasm::TypeCanonicalizer::IsCanonicalSubtype | ( | ModuleTypeIndex | sub_index, |
ModuleTypeIndex | super_index, | ||
const WasmModule * | sub_module, | ||
const WasmModule * | super_module ) |
bool v8::internal::wasm::TypeCanonicalizer::IsCanonicalSubtype_Locked | ( | CanonicalTypeIndex | sub_index, |
CanonicalTypeIndex | super_index ) const |
Definition at line 247 of file canonical-types.cc.
bool v8::internal::wasm::TypeCanonicalizer::IsFunctionSignature | ( | CanonicalTypeIndex | index | ) | const |
Definition at line 467 of file canonical-types.cc.
bool v8::internal::wasm::TypeCanonicalizer::IsHeapSubtype | ( | CanonicalTypeIndex | sub, |
CanonicalTypeIndex | super ) const |
Definition at line 270 of file canonical-types.cc.
bool v8::internal::wasm::TypeCanonicalizer::IsStruct | ( | CanonicalTypeIndex | index | ) | const |
Definition at line 470 of file canonical-types.cc.
const CanonicalArrayType * v8::internal::wasm::TypeCanonicalizer::LookupArray | ( | CanonicalTypeIndex | index | ) | const |
const CanonicalSig * v8::internal::wasm::TypeCanonicalizer::LookupFunctionSignature | ( | CanonicalTypeIndex | index | ) | const |
const CanonicalStructType * v8::internal::wasm::TypeCanonicalizer::LookupStruct | ( | CanonicalTypeIndex | index | ) | const |
|
delete |
|
delete |
|
static |
Definition at line 416 of file canonical-types.cc.
|
private |
Definition at line 564 of file canonical-types.h.
|
private |
Definition at line 559 of file canonical-types.h.
|
private |
Definition at line 561 of file canonical-types.h.
|
private |
Definition at line 557 of file canonical-types.h.
|
private |
Definition at line 563 of file canonical-types.h.
|
staticconstexpr |
Definition at line 51 of file canonical-types.h.
|
staticconstexpr |
Definition at line 50 of file canonical-types.h.
|
staticconstexpr |
Definition at line 49 of file canonical-types.h.
|
mutableprivate |
Definition at line 566 of file canonical-types.h.
|
private |
Definition at line 565 of file canonical-types.h.