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

#include <wasm-code-manager.h>

Collaboration diagram for v8::internal::wasm::WasmCodeAllocator:

Public Member Functions

 WasmCodeAllocator (std::shared_ptr< Counters > async_counters)
 
 ~WasmCodeAllocator ()
 
void Init (VirtualMemory code_space)
 
void InitializeCodeRange (NativeModule *native_module, base::AddressRegion region)
 
size_t committed_code_space () const
 
size_t generated_code_size () const
 
size_t freed_code_size () const
 
base::Vector< uint8_t > AllocateForCode (NativeModule *, size_t size)
 
base::Vector< uint8_t > AllocateForWrapper (size_t size)
 
base::Vector< uint8_t > AllocateForCodeInRegion (NativeModule *, size_t size, base::AddressRegion)
 
void FreeCode (base::Vector< WasmCode *const >)
 
size_t GetNumCodeSpaces () const
 
Counterscounters () const
 

Private Attributes

DisjointAllocationPool free_code_space_
 
DisjointAllocationPool freed_code_space_
 
std::vector< VirtualMemoryowned_code_space_
 
std::atomic< size_tcommitted_code_space_ {0}
 
std::atomic< size_tgenerated_code_size_ {0}
 
std::atomic< size_tfreed_code_size_ {0}
 
std::shared_ptr< Countersasync_counters_
 

Detailed Description

Definition at line 512 of file wasm-code-manager.h.

Constructor & Destructor Documentation

◆ WasmCodeAllocator()

v8::internal::wasm::WasmCodeAllocator::WasmCodeAllocator ( std::shared_ptr< Counters > async_counters)
explicit

Definition at line 625 of file wasm-code-manager.cc.

◆ ~WasmCodeAllocator()

v8::internal::wasm::WasmCodeAllocator::~WasmCodeAllocator ( )

Definition at line 630 of file wasm-code-manager.cc.

Here is the call graph for this function:

Member Function Documentation

◆ AllocateForCode()

base::Vector< uint8_t > v8::internal::wasm::WasmCodeAllocator::AllocateForCode ( NativeModule * native_module,
size_t size )

Definition at line 814 of file wasm-code-manager.cc.

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

◆ AllocateForCodeInRegion()

base::Vector< uint8_t > v8::internal::wasm::WasmCodeAllocator::AllocateForCodeInRegion ( NativeModule * native_module,
size_t size,
base::AddressRegion region )

Definition at line 824 of file wasm-code-manager.cc.

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

◆ AllocateForWrapper()

base::Vector< uint8_t > v8::internal::wasm::WasmCodeAllocator::AllocateForWrapper ( size_t size)

Definition at line 819 of file wasm-code-manager.cc.

Here is the call graph for this function:

◆ committed_code_space()

size_t v8::internal::wasm::WasmCodeAllocator::committed_code_space ( ) const
inline

Definition at line 524 of file wasm-code-manager.h.

Here is the caller graph for this function:

◆ counters()

Counters * v8::internal::wasm::WasmCodeAllocator::counters ( ) const
inline

Definition at line 554 of file wasm-code-manager.h.

◆ FreeCode()

void v8::internal::wasm::WasmCodeAllocator::FreeCode ( base::Vector< WasmCode *const > codes)

Definition at line 907 of file wasm-code-manager.cc.

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

◆ freed_code_size()

size_t v8::internal::wasm::WasmCodeAllocator::freed_code_size ( ) const
inline

Definition at line 530 of file wasm-code-manager.h.

Here is the caller graph for this function:

◆ generated_code_size()

size_t v8::internal::wasm::WasmCodeAllocator::generated_code_size ( ) const
inline

Definition at line 527 of file wasm-code-manager.h.

Here is the caller graph for this function:

◆ GetNumCodeSpaces()

size_t v8::internal::wasm::WasmCodeAllocator::GetNumCodeSpaces ( ) const

Definition at line 949 of file wasm-code-manager.cc.

Here is the caller graph for this function:

◆ Init()

void v8::internal::wasm::WasmCodeAllocator::Init ( VirtualMemory code_space)

Definition at line 635 of file wasm-code-manager.cc.

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

◆ InitializeCodeRange()

void v8::internal::wasm::WasmCodeAllocator::InitializeCodeRange ( NativeModule * native_module,
base::AddressRegion region )

Definition at line 794 of file wasm-code-manager.cc.

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

Member Data Documentation

◆ async_counters_

std::shared_ptr<Counters> v8::internal::wasm::WasmCodeAllocator::async_counters_
private

Definition at line 576 of file wasm-code-manager.h.

◆ committed_code_space_

std::atomic<size_t> v8::internal::wasm::WasmCodeAllocator::committed_code_space_ {0}
private

Definition at line 572 of file wasm-code-manager.h.

◆ free_code_space_

DisjointAllocationPool v8::internal::wasm::WasmCodeAllocator::free_code_space_
private

Definition at line 562 of file wasm-code-manager.h.

◆ freed_code_size_

std::atomic<size_t> v8::internal::wasm::WasmCodeAllocator::freed_code_size_ {0}
private

Definition at line 574 of file wasm-code-manager.h.

◆ freed_code_space_

DisjointAllocationPool v8::internal::wasm::WasmCodeAllocator::freed_code_space_
private

Definition at line 566 of file wasm-code-manager.h.

◆ generated_code_size_

std::atomic<size_t> v8::internal::wasm::WasmCodeAllocator::generated_code_size_ {0}
private

Definition at line 573 of file wasm-code-manager.h.

◆ owned_code_space_

std::vector<VirtualMemory> v8::internal::wasm::WasmCodeAllocator::owned_code_space_
private

Definition at line 567 of file wasm-code-manager.h.


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