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

#include <platform.h>

Collaboration diagram for v8::base::AddressSpaceReservation:

Public Types

using Address = uintptr_t
 

Public Member Functions

void * base () const
 
size_t size () const
 
bool Contains (void *region_addr, size_t region_size) const
 
V8_WARN_UNUSED_RESULT bool Allocate (void *address, size_t size, OS::MemoryPermission access)
 
V8_WARN_UNUSED_RESULT bool Free (void *address, size_t size)
 
V8_WARN_UNUSED_RESULT bool AllocateShared (void *address, size_t size, OS::MemoryPermission access, PlatformSharedMemoryHandle handle, uint64_t offset)
 
V8_WARN_UNUSED_RESULT bool FreeShared (void *address, size_t size)
 
V8_WARN_UNUSED_RESULT bool SetPermissions (void *address, size_t size, OS::MemoryPermission access)
 
V8_WARN_UNUSED_RESULT bool RecommitPages (void *address, size_t size, OS::MemoryPermission access)
 
V8_WARN_UNUSED_RESULT bool DiscardSystemPages (void *address, size_t size)
 
V8_WARN_UNUSED_RESULT bool DecommitPages (void *address, size_t size)
 
V8_WARN_UNUSED_RESULT std::optional< AddressSpaceReservationCreateSubReservation (void *address, size_t size, OS::MemoryPermission max_permission)
 

Static Public Member Functions

static V8_WARN_UNUSED_RESULT bool FreeSubReservation (AddressSpaceReservation reservation)
 

Private Member Functions

 AddressSpaceReservation (void *base, size_t size)
 

Private Attributes

void * base_ = nullptr
 
size_t size_ = 0
 

Friends

class OS
 

Detailed Description

Definition at line 452 of file platform.h.

Member Typedef Documentation

◆ Address

Definition at line 454 of file platform.h.

Constructor & Destructor Documentation

◆ AddressSpaceReservation()

v8::base::AddressSpaceReservation::AddressSpaceReservation ( void * base,
size_t size )
inlineprivate

Definition at line 513 of file platform.h.

Here is the caller graph for this function:

Member Function Documentation

◆ Allocate()

bool v8::base::AddressSpaceReservation::Allocate ( void * address,
size_t size,
OS::MemoryPermission access )

Definition at line 440 of file platform-fuchsia.cc.

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

◆ AllocateShared()

bool v8::base::AddressSpaceReservation::AllocateShared ( void * address,
size_t size,
OS::MemoryPermission access,
PlatformSharedMemoryHandle handle,
uint64_t offset )

Definition at line 210 of file platform-darwin.cc.

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

◆ base()

void * v8::base::AddressSpaceReservation::base ( ) const
inline

Definition at line 456 of file platform.h.

Here is the caller graph for this function:

◆ Contains()

bool v8::base::AddressSpaceReservation::Contains ( void * region_addr,
size_t region_size ) const
inline

Definition at line 459 of file platform.h.

Here is the caller graph for this function:

◆ CreateSubReservation()

std::optional< AddressSpaceReservation > v8::base::AddressSpaceReservation::CreateSubReservation ( void * address,
size_t size,
OS::MemoryPermission max_permission )

Definition at line 418 of file platform-fuchsia.cc.

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

◆ DecommitPages()

bool v8::base::AddressSpaceReservation::DecommitPages ( void * address,
size_t size )

Definition at line 491 of file platform-fuchsia.cc.

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

◆ DiscardSystemPages()

bool v8::base::AddressSpaceReservation::DiscardSystemPages ( void * address,
size_t size )

Definition at line 485 of file platform-fuchsia.cc.

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

◆ Free()

bool v8::base::AddressSpaceReservation::Free ( void * address,
size_t size )

Definition at line 450 of file platform-fuchsia.cc.

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

◆ FreeShared()

bool v8::base::AddressSpaceReservation::FreeShared ( void * address,
size_t size )

Definition at line 467 of file platform-fuchsia.cc.

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

◆ FreeSubReservation()

bool v8::base::AddressSpaceReservation::FreeSubReservation ( AddressSpaceReservation reservation)
static

Definition at line 434 of file platform-fuchsia.cc.

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

◆ RecommitPages()

bool v8::base::AddressSpaceReservation::RecommitPages ( void * address,
size_t size,
OS::MemoryPermission access )

Definition at line 480 of file platform-fuchsia.cc.

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

◆ SetPermissions()

bool v8::base::AddressSpaceReservation::SetPermissions ( void * address,
size_t size,
OS::MemoryPermission access )

Definition at line 473 of file platform-fuchsia.cc.

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

◆ size()

size_t v8::base::AddressSpaceReservation::size ( ) const
inline

Definition at line 457 of file platform.h.

Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ OS

friend class OS
friend

Definition at line 507 of file platform.h.

Member Data Documentation

◆ base_

void* v8::base::AddressSpaceReservation::base_ = nullptr
private

Definition at line 516 of file platform.h.

◆ size_

size_t v8::base::AddressSpaceReservation::size_ = 0
private

Definition at line 517 of file platform.h.


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