#include <spaces.h>
v8::internal::PagedSpaceを継承しています。
Public メソッド | |
OldSpace (int max_capacity, AllocationSpace id, Executability executable) | |
int | AvailableFree () |
virtual Address | PageAllocationTop (Page *page) |
void | Free (Address start, int size_in_bytes) |
virtual void | PrepareForMarkCompact (bool will_compact) |
void | MCAdjustRelocationEnd (Address address, int size_in_bytes) |
virtual void | MCCommitRelocationInfo () |
Protected メソッド | |
HeapObject * | SlowAllocateRaw (int size_in_bytes) |
HeapObject * | AllocateInNextPage (Page *current_page, int size_in_bytes) |
Private 変数 | |
OldSpaceFreeList | free_list_ |
Address | mc_end_of_relocation_ |
v8::internal::OldSpace::OldSpace | ( | int | max_capacity, | |
AllocationSpace | id, | |||
Executability | executable | |||
) | [inline, explicit] |
HeapObject * v8::internal::OldSpace::AllocateInNextPage | ( | Page * | current_page, | |
int | size_in_bytes | |||
) | [protected, virtual] |
v8::internal::PagedSpaceを実装しています。
参照先 v8::internal::PagedSpace::accounting_stats_, v8::internal::PagedSpace::AllocateLinearly(), v8::internal::PagedSpace::allocation_info_, ASSERT, free_list_, v8::internal::Page::is_valid(), v8::internal::Page::next_page(), v8::internal::Page::ObjectAreaEnd(), v8::internal::PagedSpace::SetAllocationInfo(), と v8::internal::AllocationInfo::top.
参照元 SlowAllocateRaw().
int v8::internal::OldSpace::AvailableFree | ( | ) | [inline] |
void v8::internal::OldSpace::Free | ( | Address | start, | |
int | size_in_bytes | |||
) | [inline] |
void v8::internal::OldSpace::MCAdjustRelocationEnd | ( | Address | address, | |
int | size_in_bytes | |||
) |
参照先 ASSERT, CHECK, v8::internal::PagedSpace::Contains(), v8::internal::Page::is_valid(), mc_end_of_relocation_, v8::internal::Page::mc_relocation_top, v8::internal::Page::next_page(), と v8::internal::Page::ObjectAreaStart().
参照元 v8::internal::MarkCompactCollector::RelocateNewObject(), と v8::internal::RelocateOldObject().
void v8::internal::OldSpace::MCCommitRelocationInfo | ( | ) | [virtual] |
v8::internal::PagedSpaceを実装しています。
参照先 v8::internal::PagedSpace::accounting_stats_, v8::internal::PagedSpace::allocation_info_, ASSERT, AvailableFree(), free_list_, v8::internal::AllocationInfo::limit, v8::internal::PagedSpace::mc_forwarding_info_, v8::internal::Page::mc_relocation_top, v8::internal::Page::ObjectAreaEnd(), v8::internal::Page::ObjectAreaStart(), v8::internal::PagedSpace::PageIterator, v8::internal::PagedSpace::Size(), v8::internal::AllocationInfo::top, と v8::internal::PagedSpace::Waste().
void v8::internal::OldSpace::PrepareForMarkCompact | ( | bool | will_compact | ) | [virtual] |
v8::internal::PagedSpaceを実装しています。
参照先 v8::internal::PagedSpace::accounting_stats_, ASSERT, v8::internal::PagedSpace::Available(), v8::internal::PagedSpace::bottom(), v8::internal::PagedSpace::Capacity(), free_list_, mc_end_of_relocation_, v8::internal::PagedSpace::MCResetRelocationInfo(), と v8::internal::PagedSpace::Waste().
HeapObject * v8::internal::OldSpace::SlowAllocateRaw | ( | int | size_in_bytes | ) | [protected, virtual] |
v8::internal::PagedSpaceを実装しています。
参照先 v8::internal::PagedSpace::accounting_stats_, AllocateInNextPage(), v8::internal::PagedSpace::allocation_info_, v8::internal::Heap::always_allocate(), ASSERT, v8::internal::HeapObject::cast(), v8::internal::PagedSpace::Expand(), free_list_, v8::internal::Page::is_valid(), v8::internal::Page::next_page(), v8::internal::NULL, v8::internal::Heap::OldGenerationAllocationLimitReached(), と v8::internal::PagedSpace::TopPageOf().
OldSpaceFreeList v8::internal::OldSpace::free_list_ [private] |