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

クラス v8::internal::Heap

#include <heap.h>

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

すべてのメンバ一覧

Public 型

enum  HeapState { NOT_IN_GC, SCAVENGE, MARK_COMPACT }

Static Public メソッド

static bool ConfigureHeap (int semispace_size, int old_gen_size)
static bool ConfigureHeapDefault ()
static bool Setup (bool create_heap_objects)
static void TearDown ()
static bool HasBeenSetup ()
static int MaxCapacity ()
static int SemiSpaceSize ()
static int InitialSemiSpaceSize ()
static int YoungGenerationSize ()
static int OldGenerationSize ()
static int Capacity ()
static int Available ()
static int MaxHeapObjectSize ()
static int SizeOfObjects ()
static Address NewSpaceStart ()
static uint32_t NewSpaceMask ()
static Address NewSpaceTop ()
static NewSpacenew_space ()
static OldSpaceold_pointer_space ()
static OldSpaceold_data_space ()
static OldSpacecode_space ()
static MapSpacemap_space ()
static LargeObjectSpacelo_space ()
static bool always_allocate ()
static Address always_allocate_scope_depth_address ()
static AddressNewSpaceAllocationTopAddress ()
static AddressNewSpaceAllocationLimitAddress ()
static ObjectAllocateJSObject (JSFunction *constructor, PretenureFlag pretenure=NOT_TENURED)
static ObjectCopyJSObject (JSObject *source)
static ObjectAllocateFunctionPrototype (JSFunction *function)
static ObjectReinitializeJSGlobalProxy (JSFunction *constructor, JSGlobalProxy *global)
static ObjectAllocateJSObjectFromMap (Map *map, PretenureFlag pretenure=NOT_TENURED)
static ObjectAllocate (Map *map, AllocationSpace space)
static ObjectAllocateMap (InstanceType instance_type, int instance_size)
static ObjectAllocatePartialMap (InstanceType instance_type, int instance_size)
static ObjectAllocateInitialMap (JSFunction *fun)
static ObjectAllocateStringFromAscii (Vector< const char > str, PretenureFlag pretenure=NOT_TENURED)
static ObjectAllocateStringFromUtf8 (Vector< const char > str, PretenureFlag pretenure=NOT_TENURED)
static ObjectAllocateStringFromTwoByte (Vector< const uc16 > str, PretenureFlag pretenure=NOT_TENURED)
static ObjectAllocateSymbol (unibrow::CharacterStream *buffer, int chars, uint32_t length_field)
static ObjectAllocateRawAsciiString (int length, PretenureFlag pretenure=NOT_TENURED)
static ObjectAllocateRawTwoByteString (int length, PretenureFlag pretenure=NOT_TENURED)
static ObjectLookupSingleCharacterStringFromCode (uint16_t code)
static ObjectAllocateByteArray (int length)
static ObjectAllocateFixedArray (int length, PretenureFlag pretenure)
static ObjectAllocateFixedArray (int length)
static ObjectCopyFixedArray (FixedArray *src)
static ObjectAllocateFixedArrayWithHoles (int length)
static ObjectAllocateHashTable (int length)
static ObjectAllocateGlobalContext ()
static ObjectAllocateFunctionContext (int length, JSFunction *closure)
static ObjectAllocateWithContext (Context *previous, JSObject *extension)
static ObjectAllocateStruct (InstanceType type)
static ObjectInitializeFunction (JSFunction *function, SharedFunctionInfo *shared, Object *prototype)
static ObjectAllocateFunction (Map *function_map, SharedFunctionInfo *shared, Object *prototype)
static ObjectAllocateArgumentsObject (Object *callee, int length)
static ObjectNewNumberFromDouble (double value, PretenureFlag pretenure=NOT_TENURED)
static ObjectNumberFromDouble (double value, PretenureFlag pretenure=NOT_TENURED)
static ObjectAllocateHeapNumber (double value, PretenureFlag pretenure)
static ObjectAllocateHeapNumber (double value)
static ObjectNumberFromInt32 (int32_t value)
static ObjectNumberFromUint32 (uint32_t value)
static ObjectAllocateProxy (Address proxy, PretenureFlag pretenure=NOT_TENURED)
static ObjectAllocateSharedFunctionInfo (Object *name)
static ObjectAllocateConsString (String *first, String *second)
static ObjectAllocateSlicedString (String *buffer, int start, int end)
static ObjectAllocateSubString (String *buffer, int start, int end)
static ObjectAllocateExternalStringFromAscii (ExternalAsciiString::Resource *resource)
static ObjectAllocateExternalStringFromTwoByte (ExternalTwoByteString::Resource *resource)
static ObjectAllocateRaw (int size_in_bytes, AllocationSpace space, AllocationSpace retry_space)
static ObjectCreateCode (const CodeDesc &desc, ScopeInfo<> *sinfo, Code::Flags flags)
static ObjectCopyCode (Code *code)
static ObjectLookupSymbol (Vector< const char > str)
static ObjectLookupAsciiSymbol (const char *str)
static ObjectLookupSymbol (String *str)
static bool LookupSymbolIfExists (String *str, String **symbol)
static MapSymbolMapForString (String *str)
static ObjectToBoolean (bool condition)
static void GarbageCollectionPrologue ()
static void GarbageCollectionEpilogue ()
static bool CollectGarbage (int required_space, AllocationSpace space)
static void CollectAllGarbage ()
static void PerformScavenge ()
static void SetGlobalGCPrologueCallback (GCCallback callback)
static void SetGlobalGCEpilogueCallback (GCCallback callback)
static void IterateRoots (ObjectVisitor *v)
static void IterateStrongRoots (ObjectVisitor *v)
static void IterateRSet (PagedSpace *space, ObjectSlotCallback callback)
static void IterateRSetRange (Address object_start, Address object_end, Address rset_start, ObjectSlotCallback copy_object_func)
static bool InNewSpace (Object *object)
static bool InFromSpace (Object *object)
static bool InToSpace (Object *object)
static bool Contains (Address addr)
static bool Contains (HeapObject *value)
static bool InSpace (Address addr, AllocationSpace space)
static bool InSpace (HeapObject *value, AllocationSpace space)
static OldSpaceTargetSpace (HeapObject *object)
static AllocationSpace TargetSpaceId (InstanceType type)
static void set_code_stubs (Dictionary *value)
static void set_non_monomorphic_cache (Dictionary *value)
static ObjectGetKeyedLookupCache ()
static void SetKeyedLookupCache (LookupCache *cache)
static void ClearKeyedLookupCache ()
static ObjectCreateSymbol (const char *str, int length, int hash)
static ObjectCreateSymbol (String *str)
static void RecordWrite (Address address, int offset)
static ObjectFindCodeObject (Address a)
static void Shrink ()
static HeapState gc_state ()
static void ScavengePointer (HeapObject **p)
static void ScavengeObject (HeapObject **p, HeapObject *object)
static void ClearRSetRange (Address start, int size_in_bytes)
static void RebuildRSets ()
static bool CreateApiObjects ()
static ObjectGetNumberStringCache (Object *number)
static void SetNumberStringCache (Object *number, String *str)
static int AdjustAmountOfExternalAllocatedMemory (int change_in_bytes)
static ObjectAllocateRawFixedArray (int length)
static bool OldGenerationPromotionLimitReached ()
static bool OldGenerationAllocationLimitReached ()

Static Public 変数

static const int arguments_callee_index = 0
static const int arguments_length_index = 1
static const int kNumberStringCacheSize = 64

Static Private メソッド

static int PromotedSpaceSize ()
static int PromotedExternalMemorySize ()
static GarbageCollector SelectGarbageCollector (AllocationSpace space)
static void PerformGarbageCollection (AllocationSpace space, GarbageCollector collector, GCTracer *tracer)
static ObjectSmiOrNumberFromDouble (double value, bool new_object, PretenureFlag pretenure=NOT_TENURED)
static ObjectAllocateRawMap (int size_in_bytes)
static void InitializeJSObjectFromMap (JSObject *obj, FixedArray *properties, Map *map)
static bool CreateInitialMaps ()
static bool CreateInitialObjects ()
static void CreateFixedStubs ()
static ObjectCreateOddball (Map *map, const char *to_string, Object *to_number)
static ObjectAllocateEmptyFixedArray ()
static void Scavenge ()
static void MarkCompact (GCTracer *tracer)
static void MarkCompactPrologue ()
static void MarkCompactEpilogue ()
static HeapObjectMigrateObject (HeapObject *source, HeapObject *target, int size)
static bool ShouldBePromoted (Address old_address, int object_size)
static int UpdateRSet (HeapObject *obj)
static void RebuildRSets (PagedSpace *space)
static void RebuildRSets (LargeObjectSpace *space)
static void ScavengeObjectSlow (HeapObject **p, HeapObject *object)
static void CopyBlock (Object **dst, Object **src, int byte_size)

Static Private 変数

static int semispace_size_ = 2*MB
static int initial_semispace_size_ = 256*KB
static int young_generation_size_ = 0
static int old_generation_size_ = 512*MB
static int new_space_growth_limit_ = 8
static int scavenge_count_ = 0
static int always_allocate_scope_depth_ = 0
static const int kMaxMapSpaceSize = 8*MB
static NewSpace new_space_
static OldSpaceold_pointer_space_ = NULL
static OldSpaceold_data_space_ = NULL
static OldSpacecode_space_ = NULL
static MapSpacemap_space_ = NULL
static LargeObjectSpacelo_space_ = NULL
static HeapState gc_state_ = NOT_IN_GC
static int mc_count_ = 0
static int gc_count_ = 0
static int old_gen_promotion_limit_ = kMinimumPromotionLimit
static int old_gen_allocation_limit_ = kMinimumAllocationLimit
static int amount_of_external_allocated_memory_ = 0
static int amount_of_external_allocated_memory_at_last_global_gc_ = 0
static int old_gen_exhausted_ = false
static GCCallback global_gc_prologue_callback_ = NULL
static GCCallback global_gc_epilogue_callback_ = NULL
static const int kInitialSymbolTableSize = 2048
static const int kInitialEvalCacheSize = 64

フレンド

class Factory
class DisallowAllocationFailure
class AlwaysAllocateScope

説明

heap.h206 行で定義されています。


列挙型

列挙型の値:
NOT_IN_GC 
SCAVENGE 
MARK_COMPACT 

heap.h686 行で定義されています。


関数

static int v8::internal::Heap::AdjustAmountOfExternalAllocatedMemory ( int  change_in_bytes  )  [inline, static]

heap.h734 行で定義されています。

参照先 amount_of_external_allocated_memory_, と ASSERT.

Object * v8::internal::Heap::Allocate ( Map map,
AllocationSpace  space 
) [static]
Object * v8::internal::Heap::AllocateArgumentsObject ( Object callee,
int  length 
) [static]
Object * v8::internal::Heap::AllocateByteArray ( int  length  )  [static]
Object * v8::internal::Heap::AllocateConsString ( String first,
String second 
) [static]
Object * v8::internal::Heap::AllocateEmptyFixedArray (  )  [static, private]

heap.cc2117 行で定義されています。

参照先 AllocateRaw(), v8::internal::OLD_DATA_SPACE, と v8::internal::FixedArray::SizeFor().

参照元 CreateInitialMaps().

Object * v8::internal::Heap::AllocateExternalStringFromAscii ( ExternalAsciiString::Resource resource  )  [static]
Object * v8::internal::Heap::AllocateExternalStringFromTwoByte ( ExternalTwoByteString::Resource resource  )  [static]
Object * v8::internal::Heap::AllocateFixedArray ( int  length,
PretenureFlag  pretenure 
) [static]
Object * v8::internal::Heap::AllocateFixedArray ( int  length  )  [static]
Object * v8::internal::Heap::AllocateFixedArrayWithHoles ( int  length  )  [static]
Object * v8::internal::Heap::AllocateFunction ( Map function_map,
SharedFunctionInfo shared,
Object prototype 
) [static]
Object * v8::internal::Heap::AllocateFunctionContext ( int  length,
JSFunction closure 
) [static]
Object * v8::internal::Heap::AllocateFunctionPrototype ( JSFunction function  )  [static]
Object * v8::internal::Heap::AllocateGlobalContext (  )  [static]
Object * v8::internal::Heap::AllocateHashTable ( int  length  )  [static]

heap.cc2222 行で定義されています。

参照先 AllocateFixedArray(), と ASSERT.

参照元 v8::internal::HashTable< prefix_size, element_size >::Allocate().

Object * v8::internal::Heap::AllocateHeapNumber ( double  value,
PretenureFlag  pretenure 
) [static]
Object * v8::internal::Heap::AllocateHeapNumber ( double  value  )  [static]
Object * v8::internal::Heap::AllocateInitialMap ( JSFunction fun  )  [static]
Object * v8::internal::Heap::AllocateJSObject ( JSFunction constructor,
PretenureFlag  pretenure = NOT_TENURED 
) [static]
Object * v8::internal::Heap::AllocateJSObjectFromMap ( Map map,
PretenureFlag  pretenure = NOT_TENURED 
) [static]
Object * v8::internal::Heap::AllocateMap ( InstanceType  instance_type,
int  instance_size 
) [static]
Object * v8::internal::Heap::AllocatePartialMap ( InstanceType  instance_type,
int  instance_size 
) [static]

heap.cc847 行で定義されています。

参照先 AllocateRawMap(), と v8::internal::Map::kSize.

参照元 CreateInitialMaps().

Object * v8::internal::Heap::AllocateProxy ( Address  proxy,
PretenureFlag  pretenure = NOT_TENURED 
) [static]
Object * v8::internal::Heap::AllocateRaw ( int  size_in_bytes,
AllocationSpace  space,
AllocationSpace  retry_space 
) [inline, static]
Object * v8::internal::Heap::AllocateRawAsciiString ( int  length,
PretenureFlag  pretenure = NOT_TENURED 
) [static]
Object * v8::internal::Heap::AllocateRawFixedArray ( int  length  )  [static]
Object * v8::internal::Heap::AllocateRawMap ( int  size_in_bytes  )  [inline, static, private]

heap-inl.h100 行で定義されています。

参照先 v8::internal::PagedSpace::AllocateRaw(), map_space_, と old_gen_exhausted_.

参照元 AllocateMap(), と AllocatePartialMap().

Object * v8::internal::Heap::AllocateRawTwoByteString ( int  length,
PretenureFlag  pretenure = NOT_TENURED 
) [static]
Object * v8::internal::Heap::AllocateSharedFunctionInfo ( Object name  )  [static]
Object * v8::internal::Heap::AllocateSlicedString ( String buffer,
int  start,
int  end 
) [static]
Object * v8::internal::Heap::AllocateStringFromAscii ( Vector< const char >  str,
PretenureFlag  pretenure = NOT_TENURED 
) [static]
Object * v8::internal::Heap::AllocateStringFromTwoByte ( Vector< const uc16 str,
PretenureFlag  pretenure = NOT_TENURED 
) [static]
Object * v8::internal::Heap::AllocateStringFromUtf8 ( Vector< const char >  str,
PretenureFlag  pretenure = NOT_TENURED 
) [static]
Object * v8::internal::Heap::AllocateStruct ( InstanceType  type  )  [static]
Object * v8::internal::Heap::AllocateSubString ( String buffer,
int  start,
int  end 
) [static]
Object * v8::internal::Heap::AllocateSymbol ( unibrow::CharacterStream buffer,
int  chars,
uint32_t  length_field 
) [static]
Object * v8::internal::Heap::AllocateWithContext ( Context previous,
JSObject extension 
) [static]
static bool v8::internal::Heap::always_allocate (  )  [inline, static]
static Address v8::internal::Heap::always_allocate_scope_depth_address (  )  [inline, static]

heap.h264 行で定義されています。

参照先 always_allocate_scope_depth_.

int v8::internal::Heap::Available (  )  [static]
int v8::internal::Heap::Capacity (  )  [static]
void v8::internal::Heap::ClearKeyedLookupCache (  )  [inline, static]

heap-inl.h200 行で定義されています。

参照元 CreateInitialObjects(), と MarkCompactPrologue().

void v8::internal::Heap::ClearRSetRange ( Address  start,
int  size_in_bytes 
) [static]
static OldSpace* v8::internal::Heap::code_space (  )  [inline, static]
void v8::internal::Heap::CollectAllGarbage (  )  [static]
bool v8::internal::Heap::CollectGarbage ( int  required_space,
AllocationSpace  space 
) [static]
bool v8::internal::Heap::ConfigureHeap ( int  semispace_size,
int  old_gen_size 
) [static]
bool v8::internal::Heap::ConfigureHeapDefault (  )  [static]

heap.cc2599 行で定義されています。

参照先 ConfigureHeap().

参照元 Setup().

bool v8::internal::Heap::Contains ( Address  addr  )  [static]
bool v8::internal::Heap::Contains ( HeapObject value  )  [static]

heap.cc2353 行で定義されています。

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

void v8::internal::Heap::CopyBlock ( Object **  dst,
Object **  src,
int  byte_size 
) [inline, static, private]
Object * v8::internal::Heap::CopyCode ( Code code  )  [static]
Object * v8::internal::Heap::CopyFixedArray ( FixedArray src  )  [static]
Object * v8::internal::Heap::CopyJSObject ( JSObject source  )  [static]
bool v8::internal::Heap::CreateApiObjects (  )  [static]
Object * v8::internal::Heap::CreateCode ( const CodeDesc desc,
ScopeInfo<> *  sinfo,
Code::Flags  flags 
) [static]
void v8::internal::Heap::CreateFixedStubs (  )  [static, private]

heap.cc1088 行で定義されています。

参照元 CreateInitialObjects().

bool v8::internal::Heap::CreateInitialMaps (  )  [static, private]
bool v8::internal::Heap::CreateInitialObjects (  )  [static, private]
Object * v8::internal::Heap::CreateOddball ( Map map,
const char *  to_string,
Object to_number 
) [static, private]
static Object* v8::internal::Heap::CreateSymbol ( const char *  str,
int  length,
int  hash 
) [static]
static Object* v8::internal::Heap::CreateSymbol ( String str  )  [static]
Object * v8::internal::Heap::FindCodeObject ( Address  a  )  [static]
void v8::internal::Heap::GarbageCollectionEpilogue (  )  [static]
void v8::internal::Heap::GarbageCollectionPrologue (  )  [static]
static HeapState v8::internal::Heap::gc_state (  )  [inline, static]
Object * v8::internal::Heap::GetKeyedLookupCache (  )  [inline, static]

heap-inl.h185 行で定義されています。

参照先 Allocate().

参照元 v8::internal::Runtime_KeyedGetProperty().

Object * v8::internal::Heap::GetNumberStringCache ( Object number  )  [static]
bool v8::internal::Heap::HasBeenSetup (  )  [static]
bool v8::internal::Heap::InFromSpace ( Object object  )  [inline, static]
Object * v8::internal::Heap::InitializeFunction ( JSFunction function,
SharedFunctionInfo shared,
Object prototype 
) [static]

heap.cc1619 行で定義されています。

参照先 ASSERT, v8::internal::JSFunction::set_context(), と v8::internal::SKIP_WRITE_BARRIER.

参照元 AllocateFunction().

void v8::internal::Heap::InitializeJSObjectFromMap ( JSObject obj,
FixedArray properties,
Map map 
) [static, private]
static int v8::internal::Heap::InitialSemiSpaceSize (  )  [inline, static]

heap.h229 行で定義されています。

参照先 initial_semispace_size_.

参照元 v8::internal::NewSpace::Setup().

bool v8::internal::Heap::InNewSpace ( Object object  )  [inline, static]
bool v8::internal::Heap::InSpace ( Address  addr,
AllocationSpace  space 
) [static]
bool v8::internal::Heap::InSpace ( HeapObject value,
AllocationSpace  space 
) [static]

heap.cc2370 行で定義されています。

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

bool v8::internal::Heap::InToSpace ( Object object  )  [inline, static]

heap-inl.h121 行で定義されています。

参照先 new_space_, と v8::internal::NewSpace::ToSpaceContains().

void v8::internal::Heap::IterateRoots ( ObjectVisitor *  v  )  [static]
void v8::internal::Heap::IterateRSet ( PagedSpace space,
ObjectSlotCallback  callback 
) [static]
void v8::internal::Heap::IterateRSetRange ( Address  object_start,
Address  object_end,
Address  rset_start,
ObjectSlotCallback  copy_object_func 
) [static]
void v8::internal::Heap::IterateStrongRoots ( ObjectVisitor *  v  )  [static]
static LargeObjectSpace* v8::internal::Heap::lo_space (  )  [inline, static]
static Object* v8::internal::Heap::LookupAsciiSymbol ( const char *  str  )  [inline, static]

heap.h549 行で定義されています。

参照先 v8::internal::CStrVector(), と LookupSymbol().

参照元 CreateInitialObjects(), と v8::internal::Oddball::Initialize().

Object * v8::internal::Heap::LookupSingleCharacterStringFromCode ( uint16_t  code  )  [static]
Object * v8::internal::Heap::LookupSymbol ( Vector< const char >  str  )  [static]
Object * v8::internal::Heap::LookupSymbol ( String str  )  [static]
bool v8::internal::Heap::LookupSymbolIfExists ( String str,
String **  symbol 
) [static]
static MapSpace* v8::internal::Heap::map_space (  )  [inline, static]
void v8::internal::Heap::MarkCompact ( GCTracer *  tracer  )  [static, private]
void v8::internal::Heap::MarkCompactEpilogue (  )  [static, private]

heap.cc439 行で定義されています。

参照元 MarkCompact().

void v8::internal::Heap::MarkCompactPrologue (  )  [static, private]

heap.cc430 行で定義されています。

参照先 ClearKeyedLookupCache(), と v8::internal::RegExpImpl::OldSpaceCollectionPrologue().

参照元 MarkCompact().

static int v8::internal::Heap::MaxCapacity (  )  [inline, static]

heap.h225 行で定義されています。

参照先 old_generation_size_, と young_generation_size_.

参照元 Setup().

int v8::internal::Heap::MaxHeapObjectSize (  )  [inline, static]
HeapObject * v8::internal::Heap::MigrateObject ( HeapObject source,
HeapObject target,
int  size 
) [static, private]
static NewSpace* v8::internal::Heap::new_space (  )  [inline, static]
Object * v8::internal::Heap::NewNumberFromDouble ( double  value,
PretenureFlag  pretenure = NOT_TENURED 
) [static]

heap.cc1298 行で定義されています。

参照先 SmiOrNumberFromDouble().

参照元 v8::internal::Runtime_NumberDiv(), と v8::internal::Runtime_NumberMod().

static Address* v8::internal::Heap::NewSpaceAllocationLimitAddress (  )  [inline, static]

heap.h271 行で定義されています。

参照先 v8::internal::NewSpace::allocation_limit_address(), と new_space_.

static Address* v8::internal::Heap::NewSpaceAllocationTopAddress (  )  [inline, static]

heap.h268 行で定義されています。

参照先 v8::internal::NewSpace::allocation_top_address(), と new_space_.

static uint32_t v8::internal::Heap::NewSpaceMask (  )  [inline, static]

heap.h253 行で定義されています。

参照先 v8::internal::NewSpace::mask(), と new_space_.

参照元 v8::internal::MacroAssembler::RecordWrite().

static Address v8::internal::Heap::NewSpaceStart (  )  [inline, static]
static Address v8::internal::Heap::NewSpaceTop (  )  [inline, static]

heap.h254 行で定義されています。

参照先 new_space_, と v8::internal::NewSpace::top().

参照元 v8::internal::SimulatedHeapSpace::InitCurrentHeap().

Object * v8::internal::Heap::NumberFromDouble ( double  value,
PretenureFlag  pretenure = NOT_TENURED 
) [static]
Object * v8::internal::Heap::NumberFromInt32 ( int32_t  value  )  [inline, static]
Object * v8::internal::Heap::NumberFromUint32 ( uint32_t  value  )  [inline, static]
static OldSpace* v8::internal::Heap::old_data_space (  )  [inline, static]
static OldSpace* v8::internal::Heap::old_pointer_space (  )  [inline, static]
static bool v8::internal::Heap::OldGenerationAllocationLimitReached (  )  [inline, static]
static bool v8::internal::Heap::OldGenerationPromotionLimitReached (  )  [inline, static]

heap.h756 行で定義されています。

参照先 old_gen_promotion_limit_, PromotedExternalMemorySize(), と PromotedSpaceSize().

参照元 SelectGarbageCollector().

static int v8::internal::Heap::OldGenerationSize (  )  [inline, static]

heap.h231 行で定義されています。

参照先 old_generation_size_.

void v8::internal::Heap::PerformGarbageCollection ( AllocationSpace  space,
GarbageCollector  collector,
GCTracer *  tracer 
) [static, private]
void v8::internal::Heap::PerformScavenge (  )  [static]

heap.cc351 行で定義されています。

参照先 v8::internal::NEW_SPACE, PerformGarbageCollection(), と v8::internal::SCAVENGER.

int v8::internal::Heap::PromotedExternalMemorySize (  )  [static, private]
int v8::internal::Heap::PromotedSpaceSize (  )  [static, private]
void v8::internal::Heap::RebuildRSets ( PagedSpace space  )  [static, private]
void v8::internal::Heap::RebuildRSets ( LargeObjectSpace space  )  [static, private]
void v8::internal::Heap::RebuildRSets (  )  [static]
void v8::internal::Heap::RecordWrite ( Address  address,
int  offset 
) [inline, static]
Object * v8::internal::Heap::ReinitializeJSGlobalProxy ( JSFunction constructor,
JSGlobalProxy global 
) [static]
void v8::internal::Heap::Scavenge (  )  [static, private]
void v8::internal::Heap::ScavengeObject ( HeapObject **  p,
HeapObject object 
) [inline, static]

heap.cc759 行で定義されています。

参照先 ASSERT, InFromSpace(), と ScavengeObjectSlow().

参照元 ScavengePointer(), と v8::internal::ScavengeVisitor::ScavengePointer().

void v8::internal::Heap::ScavengeObjectSlow ( HeapObject **  p,
HeapObject object 
) [static, private]
void v8::internal::Heap::ScavengePointer ( HeapObject **  p  )  [static]

heap.cc842 行で定義されています。

参照先 ScavengeObject().

参照元 Scavenge().

GarbageCollector v8::internal::Heap::SelectGarbageCollector ( AllocationSpace  space  )  [static, private]
static int v8::internal::Heap::SemiSpaceSize (  )  [inline, static]

heap.h228 行で定義されています。

参照先 semispace_size_.

参照元 v8::internal::NewSpace::Setup().

static void v8::internal::Heap::set_code_stubs ( Dictionary value  )  [inline, static]

heap.h643 行で定義されています。

static void v8::internal::Heap::set_non_monomorphic_cache ( Dictionary value  )  [inline, static]

heap.h646 行で定義されています。

参照元 v8::internal::ProbeCache().

static void v8::internal::Heap::SetGlobalGCEpilogueCallback ( GCCallback  callback  )  [inline, static]

heap.h588 行で定義されています。

参照先 global_gc_epilogue_callback_.

static void v8::internal::Heap::SetGlobalGCPrologueCallback ( GCCallback  callback  )  [inline, static]

heap.h585 行で定義されています。

参照先 global_gc_prologue_callback_.

void v8::internal::Heap::SetKeyedLookupCache ( LookupCache cache  )  [inline, static]

heap-inl.h195 行で定義されています。

参照元 v8::internal::Runtime_KeyedGetProperty().

void v8::internal::Heap::SetNumberStringCache ( Object number,
String str 
) [static]
bool v8::internal::Heap::Setup ( bool  create_heap_objects  )  [static]
bool v8::internal::Heap::ShouldBePromoted ( Address  old_address,
int  object_size 
) [inline, static, private]
void v8::internal::Heap::Shrink (  )  [static]

heap.cc2748 行で定義されています。

参照先 code_space_, map_space_, old_data_space_, old_pointer_space_, と v8::internal::PagedSpace::Shrink().

参照元 MarkCompact().

int v8::internal::Heap::SizeOfObjects (  )  [static]
Object * v8::internal::Heap::SmiOrNumberFromDouble ( double  value,
bool  new_object,
PretenureFlag  pretenure = NOT_TENURED 
) [static, private]
Map * v8::internal::Heap::SymbolMapForString ( String str  )  [static]

heap.cc1939 行で定義されています。

参照先 InNewSpace(), と v8::internal::NULL.

参照元 v8::internal::SymbolKey::GetObject().

OldSpace * v8::internal::Heap::TargetSpace ( HeapObject object  )  [inline, static]
AllocationSpace v8::internal::Heap::TargetSpaceId ( InstanceType  type  )  [inline, static]
void v8::internal::Heap::TearDown (  )  [static]
static Object* v8::internal::Heap::ToBoolean ( bool  condition  )  [inline, static]
int v8::internal::Heap::UpdateRSet ( HeapObject obj  )  [static, private]
static int v8::internal::Heap::YoungGenerationSize (  )  [inline, static]

heap.h230 行で定義されています。

参照先 young_generation_size_.


フレンドと関連する関数

friend class AlwaysAllocateScope [friend]

heap.h937 行で定義されています。

friend class DisallowAllocationFailure [friend]

heap.h936 行で定義されています。

friend class Factory [friend]

heap.h935 行で定義されています。


変数

heap.h826 行で定義されています。

参照元 PerformGarbageCollection(), と PromotedExternalMemorySize().

heap.h443 行で定義されています。

参照元 AllocateArgumentsObject().

heap.h444 行で定義されています。

参照元 AllocateArgumentsObject().

int v8::internal::Heap::gc_count_ = 0 [static, private]

heap.h796 行で定義されています。

参照元 CollectGarbage(), と GarbageCollectionPrologue().

Heap::HeapState v8::internal::Heap::gc_state_ = NOT_IN_GC [static, private]

heap.h849 行で定義されています。

参照元 PerformGarbageCollection(), と SetGlobalGCEpilogueCallback().

heap.h848 行で定義されています。

参照元 PerformGarbageCollection(), と SetGlobalGCPrologueCallback().

int v8::internal::Heap::initial_semispace_size_ = 256*KB [static, private]

heap.h770 行で定義されています。

参照元 ConfigureHeap(), と InitialSemiSpaceSize().

const int v8::internal::Heap::kInitialEvalCacheSize = 64 [static, private]

heap.h933 行で定義されています。

const int v8::internal::Heap::kInitialSymbolTableSize = 2048 [static, private]

heap.h932 行で定義されています。

参照元 CreateInitialObjects().

const int v8::internal::Heap::kMaxMapSpaceSize = 8*MB [static, private]

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

参照元 Setup().

heap.h730 行で定義されています。

参照元 CreateInitialObjects(), v8::internal::double_get_hash(), と v8::internal::smi_get_hash().

int v8::internal::Heap::mc_count_ = 0 [static, private]

heap.h795 行で定義されています。

参照元 MarkCompact().

heap.h774 行で定義されています。

参照元 Scavenge().

heap.h819 行で定義されています。

参照元 OldGenerationAllocationLimitReached(), と PerformGarbageCollection().

heap.h830 行で定義されています。

参照元 AllocateRaw(), AllocateRawMap(), PerformGarbageCollection(), と SelectGarbageCollector().

heap.h814 行で定義されています。

参照元 OldGenerationPromotionLimitReached(), と PerformGarbageCollection().

int v8::internal::Heap::old_generation_size_ = 512*MB [static, private]

heap.h772 行で定義されています。

参照元 ConfigureHeap(), MaxCapacity(), OldGenerationSize(), と Setup().

int v8::internal::Heap::scavenge_count_ = 0 [static, private]

heap.h775 行で定義されています。

参照元 Scavenge().

int v8::internal::Heap::semispace_size_ = 2*MB [static, private]

heap.h769 行で定義されています。

参照元 ConfigureHeap(), と SemiSpaceSize().

int v8::internal::Heap::young_generation_size_ = 0 [static, private]

heap.h771 行で定義されています。

参照元 ConfigureHeap(), MaxCapacity(), Setup(), と YoungGenerationSize().


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