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

#include <evacuation-allocator.h>

Collaboration diagram for v8::internal::EvacuationAllocator:

Public Member Functions

 EvacuationAllocator (Heap *heap, CompactionSpaceKind compaction_space_kind)
 
void Finalize ()
 
AllocationResult Allocate (AllocationSpace space, int object_size, AllocationAlignment alignment)
 
void FreeLast (AllocationSpace space, Tagged< HeapObject > object, int object_size)
 

Private Member Functions

void FreeLastInMainAllocator (MainAllocator *allocator, Tagged< HeapObject > object, int object_size)
 
MainAllocatornew_space_allocator ()
 
MainAllocatorold_space_allocator ()
 
MainAllocatorcode_space_allocator ()
 
MainAllocatorshared_space_allocator ()
 
MainAllocatortrusted_space_allocator ()
 

Private Attributes

Heap *const heap_
 
NewSpace *const new_space_
 
CompactionSpaceCollection compaction_spaces_
 
std::optional< MainAllocatornew_space_allocator_
 
std::optional< MainAllocatorold_space_allocator_
 
std::optional< MainAllocatorcode_space_allocator_
 
std::optional< MainAllocatorshared_space_allocator_
 
std::optional< MainAllocatortrusted_space_allocator_
 

Detailed Description

Definition at line 21 of file evacuation-allocator.h.

Constructor & Destructor Documentation

◆ EvacuationAllocator()

v8::internal::EvacuationAllocator::EvacuationAllocator ( Heap * heap,
CompactionSpaceKind compaction_space_kind )

Definition at line 12 of file evacuation-allocator.cc.

Here is the call graph for this function:

Member Function Documentation

◆ Allocate()

AllocationResult v8::internal::EvacuationAllocator::Allocate ( AllocationSpace space,
int object_size,
AllocationAlignment alignment )
inline

Definition at line 17 of file evacuation-allocator-inl.h.

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

◆ code_space_allocator()

MainAllocator * v8::internal::EvacuationAllocator::code_space_allocator ( )
inlineprivate

Definition at line 40 of file evacuation-allocator.h.

Here is the caller graph for this function:

◆ Finalize()

void v8::internal::EvacuationAllocator::Finalize ( )

Definition at line 63 of file evacuation-allocator.cc.

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

◆ FreeLast()

void v8::internal::EvacuationAllocator::FreeLast ( AllocationSpace space,
Tagged< HeapObject > object,
int object_size )

Definition at line 34 of file evacuation-allocator.cc.

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

◆ FreeLastInMainAllocator()

void v8::internal::EvacuationAllocator::FreeLastInMainAllocator ( MainAllocator * allocator,
Tagged< HeapObject > object,
int object_size )
private

Definition at line 54 of file evacuation-allocator.cc.

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

◆ new_space_allocator()

MainAllocator * v8::internal::EvacuationAllocator::new_space_allocator ( )
inlineprivate

Definition at line 38 of file evacuation-allocator.h.

Here is the caller graph for this function:

◆ old_space_allocator()

MainAllocator * v8::internal::EvacuationAllocator::old_space_allocator ( )
inlineprivate

Definition at line 39 of file evacuation-allocator.h.

Here is the caller graph for this function:

◆ shared_space_allocator()

MainAllocator * v8::internal::EvacuationAllocator::shared_space_allocator ( )
inlineprivate

Definition at line 43 of file evacuation-allocator.h.

Here is the caller graph for this function:

◆ trusted_space_allocator()

MainAllocator * v8::internal::EvacuationAllocator::trusted_space_allocator ( )
inlineprivate

Definition at line 46 of file evacuation-allocator.h.

Here is the caller graph for this function:

Member Data Documentation

◆ code_space_allocator_

std::optional<MainAllocator> v8::internal::EvacuationAllocator::code_space_allocator_
private

Definition at line 55 of file evacuation-allocator.h.

◆ compaction_spaces_

CompactionSpaceCollection v8::internal::EvacuationAllocator::compaction_spaces_
private

Definition at line 52 of file evacuation-allocator.h.

◆ heap_

Heap* const v8::internal::EvacuationAllocator::heap_
private

Definition at line 50 of file evacuation-allocator.h.

◆ new_space_

NewSpace* const v8::internal::EvacuationAllocator::new_space_
private

Definition at line 51 of file evacuation-allocator.h.

◆ new_space_allocator_

std::optional<MainAllocator> v8::internal::EvacuationAllocator::new_space_allocator_
private

Definition at line 53 of file evacuation-allocator.h.

◆ old_space_allocator_

std::optional<MainAllocator> v8::internal::EvacuationAllocator::old_space_allocator_
private

Definition at line 54 of file evacuation-allocator.h.

◆ shared_space_allocator_

std::optional<MainAllocator> v8::internal::EvacuationAllocator::shared_space_allocator_
private

Definition at line 56 of file evacuation-allocator.h.

◆ trusted_space_allocator_

std::optional<MainAllocator> v8::internal::EvacuationAllocator::trusted_space_allocator_
private

Definition at line 57 of file evacuation-allocator.h.


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