v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <spaces.h>
Public Member Functions | |
FreeList (PagedSpace *owner) | |
intptr_t | Concatenate (FreeList *free_list) |
void | Reset () |
intptr_t | available () |
int | Free (Address start, int size_in_bytes) |
MUST_USE_RESULT HeapObject * | Allocate (int size_in_bytes) |
bool | IsEmpty () |
void | RepairLists (Heap *heap) |
intptr_t | EvictFreeListItems (Page *p) |
bool | ContainsPageFreeListItems (Page *p) |
FreeListCategory * | small_list () |
FreeListCategory * | medium_list () |
FreeListCategory * | large_list () |
FreeListCategory * | huge_list () |
|
explicit |
Definition at line 2202 of file spaces.cc.
References FreeList::Reset().
HeapObject * Allocate | ( | int | size_in_bytes | ) |
Definition at line 2376 of file spaces.cc.
References HeapObject::address(), PagedSpace::Allocate(), ASSERT, PagedSpace::Free(), Smi::FromInt(), Space::heap(), Heap::incremental_marking(), Heap::inline_allocation_disabled(), v8::internal::IsAligned(), IncrementalMarking::IsMarkingIncomplete(), IncrementalMarking::kAllocatedThreshold, v8::internal::kCodeZapValue, v8::internal::kPointerSize, PagedSpace::limit(), v8::internal::NULL, IncrementalMarking::OldSpaceStep(), Space::RoundSizeDownToObjectAlignment(), PagedSpace::SetTopAndLimit(), and PagedSpace::top().
Referenced by PagedSpace::AllocateRaw(), and PagedSpace::SlowAllocateRaw().
|
inline |
Definition at line 1629 of file spaces.h.
References FreeListCategory::available().
Referenced by PagedSpace::Available(), FreeList::Free(), and PagedSpace::SlowAllocateRaw().
intptr_t Concatenate | ( | FreeList * | free_list | ) |
Definition at line 2208 of file spaces.cc.
References FreeListCategory::Concatenate(), FreeList::huge_list(), FreeList::large_list(), FreeList::medium_list(), and FreeList::small_list().
Referenced by MarkCompactCollector::RefillFreeLists(), and MarkCompactCollector::SweepInParallel().
bool ContainsPageFreeListItems | ( | Page * | p | ) |
Definition at line 2468 of file spaces.cc.
References FreeListCategory::EvictFreeListItemsInList().
Referenced by PagedSpace::ReleasePage().
intptr_t EvictFreeListItems | ( | Page * | p | ) |
Definition at line 2451 of file spaces.cc.
References FreeListCategory::EvictFreeListItemsInList().
Referenced by PagedSpace::ReleasePage().
int Free | ( | Address | start, |
int | size_in_bytes | ||
) |
Definition at line 2226 of file spaces.cc.
References ASSERT, FreeList::available(), FreeListCategory::Free(), MemoryChunk::FromAddress(), FreeListNode::FromAddress(), and FreeListNode::set_size().
Referenced by PagedSpace::Free().
|
inline |
Definition at line 1668 of file spaces.h.
Referenced by FreeList::Concatenate().
|
inline |
Definition at line 1648 of file spaces.h.
References FreeListCategory::IsEmpty().
|
inline |
Definition at line 1667 of file spaces.h.
Referenced by FreeList::Concatenate().
|
inline |
Definition at line 1666 of file spaces.h.
Referenced by FreeList::Concatenate().
void RepairLists | ( | Heap * | heap | ) |
Definition at line 2476 of file spaces.cc.
References FreeListCategory::RepairFreeList().
Referenced by PagedSpace::RepairFreeListsAfterBoot().
void Reset | ( | ) |
Definition at line 2218 of file spaces.cc.
References FreeListCategory::Reset().
Referenced by FreeList::FreeList(), PagedSpace::PrepareForMarkCompact(), and PagedSpace::ResetFreeList().
|
inline |
Definition at line 1665 of file spaces.h.
Referenced by FreeList::Concatenate().