v8  3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SemiSpace Class Reference

#include <spaces.h>

Inheritance diagram for SemiSpace:
Collaboration diagram for SemiSpace:

Public Member Functions

 SemiSpace (Heap *heap, SemiSpaceId semispace)
 
void SetUp (Address start, int initial_capacity, int maximum_capacity)
 
void TearDown ()
 
bool HasBeenSetUp ()
 
bool GrowTo (int new_capacity)
 
bool ShrinkTo (int new_capacity)
 
Address space_start ()
 
Address page_low ()
 
Address space_end ()
 
Address page_high ()
 
bool AdvancePage ()
 
void Reset ()
 
Address age_mark ()
 
void set_age_mark (Address mark)
 
bool Contains (Address a)
 
bool Contains (Object *o)
 
virtual intptr_t Size ()
 
bool is_committed ()
 
bool Commit ()
 
bool Uncommit ()
 
NewSpacePagefirst_page ()
 
NewSpacePagecurrent_page ()
 
int Capacity ()
 
int MaximumCapacity ()
 
int InitialCapacity ()
 
SemiSpaceId id ()
 
size_t MaximumCommittedMemory ()
 
size_t CommittedPhysicalMemory ()
 
- Public Member Functions inherited from Space
 Space (Heap *heap, AllocationSpace id, Executability executable)
 
virtual ~Space ()
 
Heapheap () const
 
Executability executable ()
 
AllocationSpace identity ()
 
virtual intptr_t SizeOfObjects ()
 
virtual int RoundSizeDownToObjectAlignment (int size)
 
- Public Member Functions inherited from Malloced
void * operator new (size_t size)
 
void operator delete (void *p)
 

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
 

Detailed Description

Definition at line 2137 of file spaces.h.

Constructor & Destructor Documentation

SemiSpace ( Heap heap,
SemiSpaceId  semispace 
)
inline

Definition at line 2140 of file spaces.h.

Member Function Documentation

bool AdvancePage ( )
inline

Definition at line 2189 of file spaces.h.

References NewSpacePage::next_page().

Referenced by NewSpace::AddFreshPage().

Address age_mark ( )
inline

Definition at line 2200 of file spaces.h.

Referenced by NewSpace::age_mark().

static void AssertValidRange ( Address  from,
Address  to 
)
inlinestatic

Definition at line 2242 of file spaces.h.

Referenced by PromotionQueue::insert(), and PromotionQueue::remove().

int Capacity ( )
inline
size_t CommittedPhysicalMemory ( )
bool Contains ( Address  a)
inline

Definition at line 2205 of file spaces.h.

Referenced by NewSpace::FromSpaceContains(), and NewSpace::ToSpaceContains().

bool Contains ( Object o)
inline

Definition at line 2212 of file spaces.h.

NewSpacePage* first_page ( )
inline

Definition at line 2227 of file spaces.h.

References NewSpacePage::next_page().

Referenced by SemiSpace::ShrinkTo().

bool HasBeenSetUp ( )
inline

Definition at line 2156 of file spaces.h.

References v8::internal::NULL.

Referenced by NewSpace::HasBeenSetUp().

SemiSpaceId id ( )
inline

Definition at line 2254 of file spaces.h.

int InitialCapacity ( )
inline

Definition at line 2252 of file spaces.h.

Referenced by NewSpace::InitialCapacity().

int MaximumCapacity ( )
inline

Definition at line 2249 of file spaces.h.

Referenced by NewSpace::MaximumCapacity().

size_t MaximumCommittedMemory ( )
inline

Definition at line 2259 of file spaces.h.

Referenced by NewSpace::MaximumCommittedMemory().

Address page_high ( )
inline
Address page_low ( )
inline

Definition at line 2175 of file spaces.h.

References MemoryChunk::area_start().

Referenced by NewSpace::FromSpacePageLow(), and NewSpace::Size().

void Reset ( )
void SetUp ( Address  start,
int  initial_capacity,
int  maximum_capacity 
)
virtual intptr_t Size ( )
inlinevirtual

Implements Space.

Definition at line 2218 of file spaces.h.

References UNREACHABLE.

Address space_end ( )
inline

Definition at line 2180 of file spaces.h.

References MemoryChunk::area_end(), and NewSpacePage::prev_page().

Referenced by NewSpace::FromSpaceEnd(), and NewSpace::ToSpaceEnd().

void Swap ( SemiSpace from,
SemiSpace to 
)
static
void TearDown ( )

Definition at line 1532 of file spaces.cc.

References v8::internal::NULL.

Referenced by NewSpace::TearDown().

Friends And Related Function Documentation

friend class NewSpacePageIterator
friend

Definition at line 2298 of file spaces.h.

Referenced by SemiSpace::CommittedPhysicalMemory(), and SemiSpace::set_age_mark().

friend class SemiSpaceIterator
friend

Definition at line 2297 of file spaces.h.


The documentation for this class was generated from the following files: