V8 Project
|
#include <spaces.h>
Static Public Member Functions | |
static void | AssertValidRange (Address from, Address to) |
static void | Swap (SemiSpace *from, SemiSpace *to) |
![]() | |
static void | FatalProcessOutOfMemory () |
static void * | New (size_t size) |
static void | Delete (void *p) |
Private Member Functions | |
void | FlipPages (intptr_t flags, intptr_t flag_mask) |
void | SetCapacity (int new_capacity) |
NewSpacePage * | anchor () |
Friends | |
class | SemiSpaceIterator |
class | NewSpacePageIterator |
|
inline |
Definition at line 2069 of file spaces.h.
|
inline |
Definition at line 2112 of file spaces.h.
References anchor(), current_page_, and v8::internal::NewSpacePage::next_page().
Referenced by v8::internal::NewSpace::AddFreshPage().
|
inline |
Definition at line 2123 of file spaces.h.
References age_mark_.
Referenced by v8::internal::NewSpace::age_mark().
|
inlineprivate |
Definition at line 2195 of file spaces.h.
References anchor_.
Referenced by AdvancePage(), Commit(), GrowTo(), ShrinkTo(), and Uncommit().
Definition at line 2165 of file spaces.h.
Referenced by v8::internal::Heap::DoScavenge(), v8::internal::SemiSpaceIterator::Initialize(), v8::internal::PromotionQueue::insert(), and v8::internal::PromotionQueue::remove().
bool v8::internal::SemiSpace::Commit | ( | ) |
Definition at line 1488 of file spaces.cc.
References anchor(), committed_, DCHECK, v8::internal::Space::executable(), v8::internal::Space::heap(), v8::internal::NewSpacePage::Initialize(), v8::internal::MemoryChunk::InsertAfter(), is_committed(), v8::internal::Page::kPageSize, Reset(), SetCapacity(), start_, and total_capacity_.
Referenced by v8::internal::NewSpace::CommitFromSpaceIfNeeded(), GrowTo(), and v8::internal::NewSpace::SetUp().
size_t v8::internal::SemiSpace::CommittedPhysicalMemory | ( | ) |
Definition at line 1526 of file spaces.cc.
References is_committed(), NewSpacePageIterator, and size.
Referenced by v8::internal::NewSpace::CommittedPhysicalMemory().
Definition at line 2128 of file spaces.h.
References address_mask_, and start_.
Referenced by v8::internal::NewSpace::FromSpaceContains(), and v8::internal::NewSpace::ToSpaceContains().
|
inline |
Definition at line 2151 of file spaces.h.
References current_page_.
Referenced by v8::internal::NewSpace::limit(), v8::internal::NewSpace::set_top(), Swap(), and v8::internal::NewSpace::top().
|
inline |
Definition at line 2150 of file spaces.h.
References anchor_, and v8::internal::NewSpacePage::next_page().
Referenced by ShrinkTo().
|
private |
Definition at line 1599 of file spaces.cc.
References anchor_, v8::internal::MemoryChunk::ClearFlag(), DCHECK, v8::internal::anonymous_namespace{flags.cc}::flags, id_, v8::internal::MemoryChunk::IN_FROM_SPACE, v8::internal::MemoryChunk::IN_TO_SPACE, v8::internal::MemoryChunk::IsFlagSet(), v8::internal::kFromSpace, v8::internal::kToSpace, v8::internal::MemoryChunk::NEW_SPACE_BELOW_AGE_MARK, v8::internal::NewSpacePage::next_page(), v8::internal::NewSpacePage::prev_page(), v8::internal::MemoryChunk::ResetLiveBytes(), v8::internal::MemoryChunk::SCAN_ON_SCAVENGE, v8::internal::NewSpacePage::set_next_page(), v8::internal::MemoryChunk::set_owner(), v8::internal::NewSpacePage::set_prev_page(), v8::internal::MemoryChunk::SetFlag(), and v8::internal::MemoryChunk::SetFlags().
Referenced by Swap().
Definition at line 1537 of file spaces.cc.
References v8::base::OS::AllocateAlignment(), anchor(), v8::internal::Bitmap::Clear(), Commit(), DCHECK, v8::internal::Space::executable(), v8::internal::MemoryChunk::GetFlags(), v8::internal::Space::heap(), v8::internal::NewSpacePage::Initialize(), v8::internal::MemoryChunk::InsertAfter(), is_committed(), v8::internal::IsAligned(), v8::internal::NewSpacePage::kCopyOnFlipFlagsMask, v8::internal::Page::kPageAlignmentMask, v8::internal::Page::kPageSize, maximum_total_capacity_, v8::internal::NewSpacePage::prev_page(), SetCapacity(), v8::internal::MemoryChunk::SetFlags(), start_, and total_capacity_.
Referenced by v8::internal::NewSpace::Grow(), and v8::internal::NewSpace::Shrink().
|
inline |
|
inline |
Definition at line 2177 of file spaces.h.
References id_.
Referenced by v8::internal::NewSpacePage::Initialize().
|
inline |
Definition at line 2175 of file spaces.h.
References initial_total_capacity_.
Referenced by v8::internal::NewSpace::InitialTotalCapacity().
|
inline |
Definition at line 2146 of file spaces.h.
References committed_.
Referenced by Commit(), v8::internal::NewSpace::CommitFromSpaceIfNeeded(), v8::internal::NewSpace::CommittedMemory(), CommittedPhysicalMemory(), v8::internal::NewSpace::CommittedPhysicalMemory(), GrowTo(), v8::internal::NewSpace::SetUp(), ShrinkTo(), Uncommit(), and v8::internal::NewSpace::UncommitFromSpace().
|
inline |
Definition at line 2182 of file spaces.h.
References maximum_committed_.
Referenced by v8::internal::NewSpace::MaximumCommittedMemory().
|
inline |
Definition at line 2172 of file spaces.h.
References maximum_total_capacity_.
Referenced by v8::internal::NewSpace::MaximumCapacity().
|
inline |
Definition at line 2110 of file spaces.h.
References v8::internal::MemoryChunk::area_end(), and current_page_.
Referenced by v8::internal::NewSpace::FromSpacePageHigh(), v8::internal::NewSpace::SlowAllocateRaw(), v8::internal::NewSpace::UpdateAllocationInfo(), and v8::internal::NewSpace::UpdateInlineAllocationLimit().
|
inline |
Definition at line 2104 of file spaces.h.
References v8::internal::MemoryChunk::area_start(), and current_page_.
Referenced by v8::internal::NewSpace::FromSpacePageLow(), v8::internal::NewSpace::Size(), v8::internal::NewSpace::SlowAllocateRaw(), and v8::internal::NewSpace::UpdateAllocationInfo().
void v8::internal::SemiSpace::Reset | ( | ) |
Definition at line 1629 of file spaces.cc.
References anchor_, current_page_, DCHECK, and v8::internal::NewSpacePage::next_page().
Referenced by Commit(), v8::internal::NewSpace::ResetAllocationInfo(), and v8::internal::NewSpace::Shrink().
void v8::internal::SemiSpace::set_age_mark | ( | Address | mark | ) |
Definition at line 1664 of file spaces.cc.
References age_mark_, DCHECK, v8::internal::NewSpacePage::FromLimit(), v8::internal::MemoryChunk::NEW_SPACE_BELOW_AGE_MARK, NewSpacePageIterator, and space_start().
Referenced by v8::internal::NewSpace::set_age_mark().
|
private |
Definition at line 1656 of file spaces.cc.
References maximum_committed_, and total_capacity_.
Referenced by Commit(), GrowTo(), and ShrinkTo().
Definition at line 1460 of file spaces.cc.
References address_mask_, age_mark_, committed_, DCHECK, initial_total_capacity_, v8::internal::kHeapObjectTag, v8::internal::kHeapObjectTagMask, v8::internal::Page::kPageSize, maximum_committed_, maximum_total_capacity_, object_expected_, object_mask_, RoundDown(), start_, and total_capacity_.
Referenced by v8::internal::NewSpace::SetUp().
Definition at line 1572 of file spaces.cc.
References v8::base::OS::AllocateAlignment(), anchor(), current_page_, DCHECK, first_page(), v8::internal::NewSpacePage::FromAddress(), v8::internal::Space::heap(), initial_total_capacity_, is_committed(), v8::internal::IsAligned(), v8::internal::Heap::isolate(), v8::internal::Page::kPageAlignmentMask, v8::internal::Page::kPageSize, v8::internal::Isolate::memory_allocator(), v8::internal::NewSpacePage::set_next_page(), v8::internal::NewSpacePage::set_prev_page(), SetCapacity(), start_, total_capacity_, and v8::internal::MemoryAllocator::UncommitBlock().
Referenced by v8::internal::NewSpace::Grow(), and v8::internal::NewSpace::Shrink().
|
inlinevirtual |
|
inline |
Definition at line 2107 of file spaces.h.
References anchor_, v8::internal::MemoryChunk::area_end(), and v8::internal::NewSpacePage::prev_page().
Referenced by v8::internal::NewSpace::FromSpaceEnd(), and v8::internal::NewSpace::ToSpaceEnd().
|
inline |
Definition at line 2098 of file spaces.h.
References anchor_, v8::internal::MemoryChunk::area_start(), DCHECK, and v8::internal::NewSpacePage::next_page().
Referenced by v8::internal::NewSpace::bottom(), v8::internal::NewSpace::FromSpaceStart(), set_age_mark(), and v8::internal::NewSpace::ToSpaceStart().
Definition at line 1635 of file spaces.cc.
References anchor_, current_page(), DCHECK, v8::internal::anonymous_namespace{flags.cc}::flags, FlipPages(), v8::internal::MemoryChunk::GetFlags(), v8::internal::NewSpacePage::kCopyOnFlipFlagsMask, v8::internal::NewSpacePage::next_page(), and to().
Referenced by v8::internal::NewSpace::Flip().
void v8::internal::SemiSpace::TearDown | ( | ) |
Definition at line 1482 of file spaces.cc.
References NULL, start_, and total_capacity_.
Referenced by v8::internal::NewSpace::TearDown().
|
inline |
Definition at line 2169 of file spaces.h.
References total_capacity_.
Referenced by v8::internal::NewSpace::Capacity(), v8::internal::NewSpace::Grow(), v8::internal::NewSpace::Shrink(), and v8::internal::NewSpace::TotalCapacity().
bool v8::internal::SemiSpace::Uncommit | ( | ) |
Definition at line 1511 of file spaces.cc.
References anchor(), committed_, DCHECK, v8::internal::Space::heap(), is_committed(), maximum_total_capacity_, v8::internal::NewSpacePage::set_next_page(), v8::internal::NewSpacePage::set_prev_page(), start_, and total_capacity_.
Referenced by v8::internal::NewSpace::UncommitFromSpace().
|
friend |
Definition at line 2221 of file spaces.h.
Referenced by CommittedPhysicalMemory(), and set_age_mark().
|
friend |
|
private |
Definition at line 2210 of file spaces.h.
Referenced by Contains(), and SetUp().
|
private |
Definition at line 2207 of file spaces.h.
Referenced by age_mark(), set_age_mark(), and SetUp().
|
private |
Definition at line 2217 of file spaces.h.
Referenced by anchor(), first_page(), FlipPages(), Reset(), space_end(), space_start(), and Swap().
|
private |
Definition at line 2214 of file spaces.h.
Referenced by Commit(), is_committed(), SetUp(), and Uncommit().
|
private |
Definition at line 2218 of file spaces.h.
Referenced by AdvancePage(), current_page(), page_high(), page_low(), Reset(), and ShrinkTo().
|
private |
Definition at line 2215 of file spaces.h.
Referenced by FlipPages(), and id().
|
private |
Definition at line 2200 of file spaces.h.
Referenced by InitialTotalCapacity(), SetUp(), and ShrinkTo().
|
private |
Definition at line 2202 of file spaces.h.
Referenced by MaximumCommittedMemory(), SetCapacity(), and SetUp().
|
private |
Definition at line 2199 of file spaces.h.
Referenced by GrowTo(), MaximumTotalCapacity(), SetUp(), and Uncommit().
|
private |
Definition at line 2212 of file spaces.h.
Referenced by Contains(), and SetUp().
|
private |
Definition at line 2211 of file spaces.h.
Referenced by Contains(), and SetUp().
|
private |
Definition at line 2205 of file spaces.h.
Referenced by Commit(), Contains(), GrowTo(), HasBeenSetUp(), SetUp(), ShrinkTo(), TearDown(), and Uncommit().
|
private |
Definition at line 2198 of file spaces.h.
Referenced by Commit(), GrowTo(), SetCapacity(), SetUp(), ShrinkTo(), TearDown(), TotalCapacity(), and Uncommit().