#include "src/wasm/canonical-types.h"
#include "src/execution/isolate.h"
#include "src/handles/handles-inl.h"
#include "src/heap/heap-inl.h"
#include "src/init/v8.h"
#include "src/roots/roots-inl.h"
#include "src/utils/utils.h"
#include "src/wasm/std-object-sizes.h"
#include "src/wasm/wasm-engine.h"
namespace v8::internal::wasm {
TypeCanonicalizer* GetTypeCanonicalizer() { … }
TypeCanonicalizer::TypeCanonicalizer() { … }
static constexpr size_t kMaxCanonicalTypes = …;
static_assert …;
static_assert …;
void TypeCanonicalizer::CheckMaxCanonicalIndex() const { … }
void TypeCanonicalizer::AddRecursiveGroup(WasmModule* module, uint32_t size) { … }
void TypeCanonicalizer::AddRecursiveGroup(WasmModule* module, uint32_t size,
uint32_t start_index) { … }
void TypeCanonicalizer::AddRecursiveSingletonGroup(WasmModule* module) { … }
void TypeCanonicalizer::AddRecursiveSingletonGroup(WasmModule* module,
uint32_t start_index) { … }
uint32_t TypeCanonicalizer::AddRecursiveGroup(const FunctionSig* sig) { … }
const FunctionSig* TypeCanonicalizer::LookupSignature(
uint32_t canonical_index) const { … }
void TypeCanonicalizer::AddPredefinedArrayTypes() { … }
ValueType TypeCanonicalizer::CanonicalizeValueType(
const WasmModule* module, ValueType type,
uint32_t recursive_group_start) const { … }
bool TypeCanonicalizer::IsCanonicalSubtype(uint32_t canonical_sub_index,
uint32_t canonical_super_index) { … }
bool TypeCanonicalizer::IsCanonicalSubtype(uint32_t sub_index,
uint32_t super_index,
const WasmModule* sub_module,
const WasmModule* super_module) { … }
void TypeCanonicalizer::EmptyStorageForTesting() { … }
TypeCanonicalizer::CanonicalType TypeCanonicalizer::CanonicalizeTypeDef(
const WasmModule* module, TypeDefinition type,
uint32_t recursive_group_start) { … }
int TypeCanonicalizer::FindCanonicalGroup(const CanonicalGroup& group) const { … }
int TypeCanonicalizer::FindCanonicalGroup(const CanonicalSingletonGroup& group,
const FunctionSig** out_sig) const { … }
size_t TypeCanonicalizer::EstimateCurrentMemoryConsumption() const { … }
size_t TypeCanonicalizer::GetCurrentNumberOfTypes() const { … }
void TypeCanonicalizer::PrepareForCanonicalTypeId(Isolate* isolate, int id) { … }
void TypeCanonicalizer::ClearWasmCanonicalTypesForTesting(Isolate* isolate) { … }
}