Public メソッド | Protected メソッド | Static Protected メソッド | Protected 変数 | Private メソッド | フレンド

クラス v8::internal::PagedSpace

#include <spaces.h>

v8::internal::Spaceを継承しています。

v8::internal::MapSpace, と v8::internal::OldSpaceに継承されています。

すべてのメンバ一覧

Public メソッド

 PagedSpace (int max_capacity, AllocationSpace id, Executability executable)
virtual ~PagedSpace ()
bool Setup (Address start, size_t size)
bool HasBeenSetup ()
void TearDown ()
bool Contains (Address a)
bool Contains (HeapObject *o)
ObjectFindObject (Address addr)
bool IsUsed (Page *page)
void ClearRSet ()
virtual void PrepareForMarkCompact (bool will_compact)=0
virtual Address PageAllocationTop (Page *page)=0
int Capacity ()
int Available ()
virtual int Size ()
int Waste ()
Address bottom ()
Address top ()
ObjectAllocateRaw (int size_in_bytes)
ObjectMCAllocateRaw (int size_in_bytes)
void MCResetRelocationInfo ()
void MCWriteRelocationInfoToPage ()
int MCSpaceOffsetForAddress (Address addr)
virtual void MCCommitRelocationInfo ()=0
void Shrink ()
bool EnsureCapacity (int capacity)

Protected メソッド

bool Expand (Page *last_page)
HeapObjectAllocateLinearly (AllocationInfo *alloc_info, int size_in_bytes)
virtual HeapObjectAllocateInNextPage (Page *current_page, int size_in_bytes)=0
virtual HeapObjectSlowAllocateRaw (int size_in_bytes)=0
HeapObjectSlowMCAllocateRaw (int size_in_bytes)

Static Protected メソッド

static void SetAllocationInfo (AllocationInfo *alloc_info, Page *p)
static PageTopPageOf (AllocationInfo alloc_info)

Protected 変数

int max_capacity_
AllocationStats accounting_stats_
Pagefirst_page_
AllocationInfo allocation_info_
AllocationInfo mc_forwarding_info_

Private メソッド

PageAllocationTopPage ()
PageMCRelocationTopPage ()

フレンド

class PageIterator

説明

spaces.h671 行で定義されています。


コンストラクタとデストラクタ

v8::internal::PagedSpace::PagedSpace ( int  max_capacity,
AllocationSpace  id,
Executability  executable 
)
virtual v8::internal::PagedSpace::~PagedSpace (  )  [inline, virtual]

spaces.h677 行で定義されています。


関数

virtual HeapObject* v8::internal::PagedSpace::AllocateInNextPage ( Page current_page,
int  size_in_bytes 
) [protected, pure virtual]

v8::internal::OldSpace, と v8::internal::MapSpaceで実装されています。

HeapObject * v8::internal::PagedSpace::AllocateLinearly ( AllocationInfo alloc_info,
int  size_in_bytes 
) [inline, protected]
Object * v8::internal::PagedSpace::AllocateRaw ( int  size_in_bytes  )  [inline]
Page* v8::internal::PagedSpace::AllocationTopPage (  )  [inline, private]

spaces.h828 行で定義されています。

参照先 allocation_info_, と TopPageOf().

参照元 EnsureCapacity(), と Shrink().

int v8::internal::PagedSpace::Available (  )  [inline]
Address v8::internal::PagedSpace::bottom (  )  [inline]
int v8::internal::PagedSpace::Capacity (  )  [inline]
void v8::internal::PagedSpace::ClearRSet (  ) 

spaces.cc532 行で定義されています。

参照先 PageIterator.

参照元 v8::internal::Heap::RebuildRSets().

bool v8::internal::PagedSpace::Contains ( HeapObject o  )  [inline]

spaces.h695 行で定義されています。

参照先 v8::internal::HeapObject::address(), と Contains().

参照元 Contains().

bool v8::internal::PagedSpace::Contains ( Address  a  )  [inline]
bool v8::internal::PagedSpace::EnsureCapacity ( int  capacity  ) 
bool v8::internal::PagedSpace::Expand ( Page last_page  )  [protected]
Object * v8::internal::PagedSpace::FindObject ( Address  addr  ) 
bool v8::internal::PagedSpace::HasBeenSetup (  ) 

spaces.cc519 行で定義されています。

参照先 Capacity().

参照元 AllocateRaw(), MCAllocateRaw(), と Setup().

bool v8::internal::PagedSpace::IsUsed ( Page page  ) 

spaces.cc565 行で定義されています。

参照先 PageIterator.

参照元 FindObject().

Object * v8::internal::PagedSpace::MCAllocateRaw ( int  size_in_bytes  )  [inline]
virtual void v8::internal::PagedSpace::MCCommitRelocationInfo (  )  [pure virtual]

v8::internal::OldSpace, と v8::internal::MapSpaceで実装されています。

Page* v8::internal::PagedSpace::MCRelocationTopPage (  )  [inline, private]

spaces.h831 行で定義されています。

参照先 mc_forwarding_info_, と TopPageOf().

void v8::internal::PagedSpace::MCResetRelocationInfo (  ) 
int v8::internal::PagedSpace::MCSpaceOffsetForAddress ( Address  addr  ) 
void v8::internal::PagedSpace::MCWriteRelocationInfoToPage (  )  [inline]
virtual Address v8::internal::PagedSpace::PageAllocationTop ( Page page  )  [pure virtual]
virtual void v8::internal::PagedSpace::PrepareForMarkCompact ( bool  will_compact  )  [pure virtual]

v8::internal::OldSpace, と v8::internal::MapSpaceで実装されています。

void v8::internal::PagedSpace::SetAllocationInfo ( AllocationInfo alloc_info,
Page p 
) [static, protected]
bool v8::internal::PagedSpace::Setup ( Address  start,
size_t  size 
)
void v8::internal::PagedSpace::Shrink (  ) 
virtual int v8::internal::PagedSpace::Size (  )  [inline, virtual]
virtual HeapObject* v8::internal::PagedSpace::SlowAllocateRaw ( int  size_in_bytes  )  [protected, pure virtual]

v8::internal::OldSpace, と v8::internal::MapSpaceで実装されています。

参照元 AllocateRaw().

HeapObject * v8::internal::PagedSpace::SlowMCAllocateRaw ( int  size_in_bytes  )  [protected]
void v8::internal::PagedSpace::TearDown (  ) 
Address v8::internal::PagedSpace::top (  )  [inline]
static Page* v8::internal::PagedSpace::TopPageOf ( AllocationInfo  alloc_info  )  [inline, static, protected]
int v8::internal::PagedSpace::Waste (  )  [inline]

フレンドと関連する関数

friend class PageIterator [friend]

変数

AllocationStats v8::internal::PagedSpace::accounting_stats_ [protected]

spaces.h785 行で定義されています。

参照元 bottom(), MCResetRelocationInfo(), Setup(), と TearDown().

spaces.h779 行で定義されています。

参照元 Expand(), PagedSpace(), と Setup().


このクラスの説明は次のファイルから生成されました:
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 フレンド マクロ定義