v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::wasm::WasmImportWrapperCache Class Reference

#include <wasm-import-wrapper-cache.h>

Collaboration diagram for v8::internal::wasm::WasmImportWrapperCache:

Classes

struct  CacheKey
 
class  CacheKeyHash
 
class  ModificationScope
 

Public Member Functions

 WasmImportWrapperCache ()=default
 
 ~WasmImportWrapperCache ()=default
 
void LazyInitialize (Isolate *triggering_isolate)
 
void Free (std::vector< WasmCode * > &wrappers)
 
V8_EXPORT_PRIVATE WasmCodeMaybeGet (ImportCallKind kind, CanonicalTypeIndex type_index, int expected_arity, Suspend suspend) const
 
WasmCodeLookup (Address pc) const
 
void LogForIsolate (Isolate *isolate)
 
size_t EstimateCurrentMemoryConsumption () const
 
V8_EXPORT_PRIVATE WasmCodeFindWrapper (WasmCodePointer call_target)
 
WasmCodeCompileWasmImportCallWrapper (Isolate *isolate, ImportCallKind kind, const CanonicalSig *sig, CanonicalTypeIndex sig_index, bool source_positions, int expected_arity, Suspend suspend)
 

Private Attributes

std::unique_ptr< WasmCodeAllocatorcode_allocator_
 
base::Mutex mutex_
 
std::unordered_map< CacheKey, WasmCode *, CacheKeyHashentry_map_
 
std::map< Address, WasmCode * > codes_
 

Detailed Description

Definition at line 24 of file wasm-import-wrapper-cache.h.

Constructor & Destructor Documentation

◆ WasmImportWrapperCache()

v8::internal::wasm::WasmImportWrapperCache::WasmImportWrapperCache ( )
default
Here is the caller graph for this function:

◆ ~WasmImportWrapperCache()

v8::internal::wasm::WasmImportWrapperCache::~WasmImportWrapperCache ( )
default

Member Function Documentation

◆ CompileWasmImportCallWrapper()

WasmCode * v8::internal::wasm::WasmImportWrapperCache::CompileWasmImportCallWrapper ( Isolate * isolate,
ImportCallKind kind,
const CanonicalSig * sig,
CanonicalTypeIndex sig_index,
bool source_positions,
int expected_arity,
Suspend suspend )

Definition at line 154 of file wasm-import-wrapper-cache.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EstimateCurrentMemoryConsumption()

size_t v8::internal::wasm::WasmImportWrapperCache::EstimateCurrentMemoryConsumption ( ) const

Definition at line 260 of file wasm-import-wrapper-cache.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FindWrapper()

WasmCode * v8::internal::wasm::WasmImportWrapperCache::FindWrapper ( WasmCodePointer call_target)

Definition at line 142 of file wasm-import-wrapper-cache.cc.

Here is the call graph for this function:

◆ Free()

void v8::internal::wasm::WasmImportWrapperCache::Free ( std::vector< WasmCode * > & wrappers)

Definition at line 198 of file wasm-import-wrapper-cache.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LazyInitialize()

void v8::internal::wasm::WasmImportWrapperCache::LazyInitialize ( Isolate * triggering_isolate)

Definition at line 30 of file wasm-import-wrapper-cache.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ LogForIsolate()

void v8::internal::wasm::WasmImportWrapperCache::LogForIsolate ( Isolate * isolate)

Definition at line 191 of file wasm-import-wrapper-cache.cc.

Here is the caller graph for this function:

◆ Lookup()

WasmCode * v8::internal::wasm::WasmImportWrapperCache::Lookup ( Address pc) const

Definition at line 243 of file wasm-import-wrapper-cache.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MaybeGet()

WasmCode * v8::internal::wasm::WasmImportWrapperCache::MaybeGet ( ImportCallKind kind,
CanonicalTypeIndex type_index,
int expected_arity,
Suspend suspend ) const

Definition at line 230 of file wasm-import-wrapper-cache.cc.

Here is the call graph for this function:

Member Data Documentation

◆ code_allocator_

std::unique_ptr<WasmCodeAllocator> v8::internal::wasm::WasmImportWrapperCache::code_allocator_
private

Definition at line 96 of file wasm-import-wrapper-cache.h.

◆ codes_

std::map<Address, WasmCode*> v8::internal::wasm::WasmImportWrapperCache::codes_
private

Definition at line 100 of file wasm-import-wrapper-cache.h.

◆ entry_map_

std::unordered_map<CacheKey, WasmCode*, CacheKeyHash> v8::internal::wasm::WasmImportWrapperCache::entry_map_
private

Definition at line 98 of file wasm-import-wrapper-cache.h.

◆ mutex_

base::Mutex v8::internal::wasm::WasmImportWrapperCache::mutex_
mutableprivate

Definition at line 97 of file wasm-import-wrapper-cache.h.


The documentation for this class was generated from the following files: