v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <spaces.h>
Static Public Member Functions | |
static void | AssertValidRange (Address from, Address to) |
static void | Swap (SemiSpace *from, SemiSpace *to) |
Static Public Member Functions inherited from Malloced | |
static void | FatalProcessOutOfMemory () |
static void * | New (size_t size) |
static void | Delete (void *p) |
Friends | |
class | SemiSpaceIterator |
class | NewSpacePageIterator |
|
inline |
|
inline |
Definition at line 2189 of file spaces.h.
References NewSpacePage::next_page().
Referenced by NewSpace::AddFreshPage().
|
inline |
Definition at line 2200 of file spaces.h.
Referenced by NewSpace::age_mark().
Definition at line 2242 of file spaces.h.
Referenced by PromotionQueue::insert(), and PromotionQueue::remove().
|
inline |
Definition at line 2246 of file spaces.h.
Referenced by NewSpace::Capacity(), NewSpace::EffectiveCapacity(), NewSpace::Grow(), and NewSpace::Shrink().
bool Commit | ( | ) |
Definition at line 1538 of file spaces.cc.
References ASSERT, Space::executable(), Space::heap(), MemoryChunk::InsertAfter(), SemiSpace::is_committed(), Page::kPageSize, and SemiSpace::Reset().
Referenced by NewSpace::CommitFromSpaceIfNeeded(), SemiSpace::GrowTo(), and NewSpace::SetUp().
size_t CommittedPhysicalMemory | ( | ) |
Definition at line 1576 of file spaces.cc.
References SemiSpace::is_committed(), SemiSpace::NewSpacePageIterator, and v8::internal::size.
Referenced by NewSpace::CommittedPhysicalMemory().
|
inline |
Definition at line 2205 of file spaces.h.
Referenced by NewSpace::FromSpaceContains(), and NewSpace::ToSpaceContains().
|
inline |
Definition at line 2228 of file spaces.h.
Referenced by PromotionQueue::ActivateGuardIfOnTheSamePage(), NewSpace::limit(), NewSpace::set_top(), SemiSpace::Swap(), and NewSpace::top().
|
inline |
Definition at line 2227 of file spaces.h.
References NewSpacePage::next_page().
Referenced by SemiSpace::ShrinkTo().
bool GrowTo | ( | int | new_capacity | ) |
Definition at line 1587 of file spaces.cc.
References OS::AllocateAlignment(), ASSERT, Bitmap::Clear(), SemiSpace::Commit(), Space::executable(), MemoryChunk::GetFlags(), Space::heap(), MemoryChunk::InsertAfter(), SemiSpace::is_committed(), v8::internal::IsAligned(), NewSpacePage::kCopyOnFlipFlagsMask, Page::kPageAlignmentMask, Page::kPageSize, NewSpacePage::prev_page(), and MemoryChunk::SetFlags().
Referenced by NewSpace::Grow(), and NewSpace::Shrink().
|
inline |
Definition at line 2156 of file spaces.h.
References v8::internal::NULL.
Referenced by NewSpace::HasBeenSetUp().
|
inline |
|
inline |
Definition at line 2252 of file spaces.h.
Referenced by NewSpace::InitialCapacity().
|
inline |
Definition at line 2223 of file spaces.h.
Referenced by SemiSpace::Commit(), NewSpace::CommitFromSpaceIfNeeded(), NewSpace::CommittedMemory(), SemiSpace::CommittedPhysicalMemory(), NewSpace::CommittedPhysicalMemory(), SemiSpace::GrowTo(), NewSpace::SetUp(), SemiSpace::ShrinkTo(), SemiSpace::Uncommit(), and NewSpace::UncommitFromSpace().
|
inline |
Definition at line 2249 of file spaces.h.
Referenced by NewSpace::MaximumCapacity().
|
inline |
Definition at line 2259 of file spaces.h.
Referenced by NewSpace::MaximumCommittedMemory().
|
inline |
Definition at line 2185 of file spaces.h.
References MemoryChunk::area_end().
Referenced by NewSpace::FromSpacePageHigh(), and NewSpace::UpdateInlineAllocationLimit().
|
inline |
Definition at line 2175 of file spaces.h.
References MemoryChunk::area_start().
Referenced by NewSpace::FromSpacePageLow(), and NewSpace::Size().
void Reset | ( | ) |
Definition at line 1680 of file spaces.cc.
References ASSERT, and NewSpacePage::next_page().
Referenced by SemiSpace::Commit(), NewSpace::ResetAllocationInfo(), and NewSpace::Shrink().
void set_age_mark | ( | Address | mark | ) |
Definition at line 1715 of file spaces.cc.
References ASSERT, NewSpacePage::FromLimit(), MemoryChunk::NEW_SPACE_BELOW_AGE_MARK, SemiSpace::NewSpacePageIterator, and SemiSpace::space_start().
Referenced by NewSpace::set_age_mark().
void SetUp | ( | Address | start, |
int | initial_capacity, | ||
int | maximum_capacity | ||
) |
Definition at line 1509 of file spaces.cc.
References ASSERT, v8::internal::kHeapObjectTag, v8::internal::kHeapObjectTagMask, and v8::internal::RoundDown().
Referenced by NewSpace::SetUp().
bool ShrinkTo | ( | int | new_capacity | ) |
Definition at line 1623 of file spaces.cc.
References OS::AllocateAlignment(), ASSERT, SemiSpace::first_page(), NewSpacePage::FromAddress(), Space::heap(), SemiSpace::is_committed(), v8::internal::IsAligned(), Heap::isolate(), Page::kPageAlignmentMask, Page::kPageSize, Isolate::memory_allocator(), NewSpacePage::set_next_page(), NewSpacePage::set_prev_page(), and MemoryAllocator::UncommitBlock().
Referenced by NewSpace::Grow(), and NewSpace::Shrink().
|
inlinevirtual |
|
inline |
Definition at line 2180 of file spaces.h.
References MemoryChunk::area_end(), and NewSpacePage::prev_page().
Referenced by NewSpace::FromSpaceEnd(), and NewSpace::ToSpaceEnd().
|
inline |
Definition at line 2169 of file spaces.h.
References MemoryChunk::area_start(), ASSERT, and NewSpacePage::next_page().
Referenced by NewSpace::bottom(), NewSpace::FromSpaceStart(), SemiSpace::set_age_mark(), and NewSpace::ToSpaceStart().
Definition at line 1686 of file spaces.cc.
References ASSERT, SemiSpace::current_page(), MemoryChunk::GetFlags(), NewSpacePage::kCopyOnFlipFlagsMask, and NewSpacePage::next_page().
Referenced by NewSpace::Flip().
void TearDown | ( | ) |
Definition at line 1532 of file spaces.cc.
References v8::internal::NULL.
Referenced by NewSpace::TearDown().
bool Uncommit | ( | ) |
Definition at line 1562 of file spaces.cc.
References ASSERT, Space::heap(), SemiSpace::is_committed(), NewSpacePage::set_next_page(), and NewSpacePage::set_prev_page().
Referenced by NewSpace::UncommitFromSpace().
|
friend |
Definition at line 2298 of file spaces.h.
Referenced by SemiSpace::CommittedPhysicalMemory(), and SemiSpace::set_age_mark().
|
friend |