v8
3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
|
#include <spaces.h>
Static Public Member Functions | |
static bool | IsAtStart (Address addr) |
static bool | IsAtEnd (Address addr) |
static NewSpacePage * | FromAddress (Address address_in_page) |
static NewSpacePage * | FromLimit (Address address_limit) |
Static Public Member Functions inherited from MemoryChunk | |
static MemoryChunk * | FromAddress (Address a) |
static MemoryChunk * | FromAnyPointerAddress (Address addr) |
static void | IncrementLiveBytesFromGC (Address address, int by) |
static void | IncrementLiveBytesFromMutator (Address address, int by) |
static uint32_t | FastAddressToMarkbitIndex (Address addr) |
Static Public Attributes | |
static const intptr_t | kCopyOnFlipFlagsMask |
static const int | kAreaSize = Page::kNonCodeObjectAreaSize |
Static Public Attributes inherited from MemoryChunk | |
static const int | kWriteBarrierCounterGranularity = 500 |
static const int | kPointersToHereAreInterestingMask |
static const int | kPointersFromHereAreInterestingMask |
static const int | kEvacuationCandidateMask |
static const int | kSkipEvacuationSlotsRecordingMask |
static const intptr_t | kAlignment |
static const intptr_t | kAlignmentMask = kAlignment - 1 |
static const intptr_t | kSizeOffset = kPointerSize + kPointerSize |
static const intptr_t | kLiveBytesOffset |
static const size_t | kSlotsBufferOffset = kLiveBytesOffset + kIntSize |
static const size_t | kWriteBarrierCounterOffset |
static const size_t | kHeaderSize = kWriteBarrierCounterOffset + kPointerSize |
static const int | kBodyOffset |
static const int | kObjectStartAlignment = 32 * kPointerSize |
static const int | kObjectStartOffset |
static const int | kFlagsOffset = kPointerSize * 3 |
Friends | |
class | SemiSpace |
class | SemiSpaceIterator |
Additional Inherited Members | |
Public Types inherited from MemoryChunk | |
enum | MemoryChunkFlags { IS_EXECUTABLE, ABOUT_TO_BE_FREED, POINTERS_TO_HERE_ARE_INTERESTING, POINTERS_FROM_HERE_ARE_INTERESTING, SCAN_ON_SCAVENGE, IN_FROM_SPACE, IN_TO_SPACE, NEW_SPACE_BELOW_AGE_MARK, CONTAINS_ONLY_DATA, EVACUATION_CANDIDATE, RESCAN_ON_EVACUATION, WAS_SWEPT_PRECISELY, WAS_SWEPT_CONSERVATIVELY, NUM_MEMORY_CHUNK_FLAGS } |
Static Protected Member Functions inherited from MemoryChunk | |
static MemoryChunk * | Initialize (Heap *heap, Address base, size_t size, Address area_start, Address area_end, Executability executable, Space *owner) |
Protected Attributes inherited from MemoryChunk | |
MemoryChunk * | next_chunk_ |
MemoryChunk * | prev_chunk_ |
size_t | size_ |
intptr_t | flags_ |
Address | area_start_ |
Address | area_end_ |
VirtualMemory | reservation_ |
Address | owner_ |
Heap * | heap_ |
int | store_buffer_counter_ |
int | live_byte_count_ |
SlotsBuffer * | slots_buffer_ |
SkipList * | skip_list_ |
intptr_t | write_barrier_counter_ |
|
inline |
Definition at line 1791 of file spaces.h.
Referenced by PromotionQueue::ActivateGuardIfOnTheSamePage().
|
inlinestatic |
Definition at line 1796 of file spaces.h.
References Page::kPageAlignmentMask.
Referenced by NewSpacePage::FromLimit(), PromotionQueue::insert(), PromotionQueue::remove(), Heap::ShouldBePromoted(), and SemiSpace::ShrinkTo().
|
inlinestatic |
Definition at line 1806 of file spaces.h.
References NewSpacePage::FromAddress().
Referenced by NewSpace::AddFreshPage(), SemiSpaceIterator::Next(), and SemiSpace::set_age_mark().
|
inline |
Definition at line 1780 of file spaces.h.
References MemoryChunk::InNewSpace().
Referenced by PromotionQueue::insert(), SemiSpaceIterator::Next(), and PromotionQueue::remove().
|
inlinestatic |
Definition at line 1787 of file spaces.h.
References Page::kPageAlignmentMask.
Referenced by SemiSpaceIterator::Next().
|
inlinestatic |
Definition at line 1782 of file spaces.h.
References MemoryChunk::kObjectStartOffset, and Page::kPageAlignmentMask.
Referenced by NewSpace::AddFreshPage(), PromotionQueue::insert(), and PromotionQueue::remove().
|
inline |
Definition at line 1760 of file spaces.h.
References MemoryChunk::next_chunk().
Referenced by SemiSpace::AdvancePage(), SemiSpace::first_page(), SemiSpaceIterator::Next(), SemiSpace::Reset(), SemiSpace::space_start(), and SemiSpace::Swap().
|
inline |
Definition at line 1768 of file spaces.h.
References MemoryChunk::prev_chunk().
Referenced by SemiSpace::GrowTo(), PromotionQueue::insert(), PromotionQueue::remove(), and SemiSpace::space_end().
|
inline |
Definition at line 1776 of file spaces.h.
References MemoryChunk::owner().
|
inline |
Definition at line 1764 of file spaces.h.
References MemoryChunk::set_next_chunk().
Referenced by SemiSpace::ShrinkTo(), and SemiSpace::Uncommit().
|
inline |
Definition at line 1772 of file spaces.h.
References MemoryChunk::set_prev_chunk().
Referenced by SemiSpace::ShrinkTo(), and SemiSpace::Uncommit().
|
friend |
|
static |
Definition at line 1758 of file spaces.h.
Referenced by NewSpace::EffectiveCapacity(), and NewSpace::Size().
|
static |
Definition at line 1753 of file spaces.h.
Referenced by SemiSpace::GrowTo(), and SemiSpace::Swap().