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
MarkCompactMarkingVisitor Class Reference
Inheritance diagram for MarkCompactMarkingVisitor:
Collaboration diagram for MarkCompactMarkingVisitor:

Data Structures

class  ObjectStatsTracker
 
class  ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitCode >
 
class  ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitFixedArray >
 
class  ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitMap >
 
class  ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitSharedFunctionInfo >
 

Public Member Functions

 INLINE (static void VisitPointer(Heap *heap, Object **p))
 
 INLINE (static void VisitPointers(Heap *heap, Object **start, Object **end))
 
 INLINE (static void MarkObject(Heap *heap, HeapObject *object))
 
 INLINE (static bool MarkObjectWithoutPush(Heap *heap, HeapObject *object))
 
 INLINE (static void MarkObjectByPointer(MarkCompactCollector *collector, Object **anchor_slot, Object **p))
 
 INLINE (static void VisitUnmarkedObject(MarkCompactCollector *collector, HeapObject *obj))
 
 INLINE (static bool VisitUnmarkedObjects(Heap *heap, Object **start, Object **end))
 
 INLINE (static void BeforeVisitingSharedFunctionInfo(HeapObject *object))
 
- Public Member Functions inherited from StaticMarkingVisitor< MarkCompactMarkingVisitor >
 INLINE (static void IterateBody(Map *map, HeapObject *obj))
 
 INLINE (static void VisitPropertyCell(Map *map, HeapObject *object))
 
 INLINE (static void VisitAllocationSite(Map *map, HeapObject *object))
 
 INLINE (static void VisitCodeEntry(Heap *heap, Address entry_address))
 
 INLINE (static void VisitEmbeddedPointer(Heap *heap, RelocInfo *rinfo))
 
 INLINE (static void VisitCell(Heap *heap, RelocInfo *rinfo))
 
 INLINE (static void VisitDebugTarget(Heap *heap, RelocInfo *rinfo))
 
 INLINE (static void VisitCodeTarget(Heap *heap, RelocInfo *rinfo))
 
 INLINE (static void VisitCodeAgeSequence(Heap *heap, RelocInfo *rinfo))
 
 INLINE (static void VisitExternalReference(RelocInfo *rinfo))
 
 INLINE (static void VisitRuntimeEntry(RelocInfo *rinfo))
 
 INLINE (static void VisitNextCodeLink(Heap *heap, Object **slot))
 
- Public Member Functions inherited from StaticVisitorBase
 STATIC_ASSERT (kVisitorIdCount<=256)
 

Static Public Member Functions

static void ObjectStatsVisitBase (StaticVisitorBase::VisitorId id, Map *map, HeapObject *obj)
 
static void ObjectStatsCountFixedArray (FixedArrayBase *fixed_array, FixedArraySubInstanceType fast_type, FixedArraySubInstanceType dictionary_type)
 
static void Initialize ()
 
static void VisitWeakCollection (Map *map, HeapObject *object)
 
- Static Public Member Functions inherited from StaticMarkingVisitor< MarkCompactMarkingVisitor >
static void Initialize ()
 
static void MarkInlinedFunctionsCode (Heap *heap, Code *code)
 
- Static Public Member Functions inherited from StaticVisitorBase
static VisitorId GetVisitorId (int instance_type, int instance_size)
 
static VisitorId GetVisitorId (Map *map)
 
static VisitorId GetVisitorIdForSize (VisitorId base, VisitorId generic, int object_size)
 

Additional Inherited Members

- Public Types inherited from StaticVisitorBase
enum  VisitorId {
  kVisitorIdCount, kVisitDataObject = kVisitDataObject2, kVisitJSObject = kVisitJSObject2, kVisitStruct = kVisitStruct2,
  kMinObjectSizeInWords = 2
}
 
- Protected Types inherited from StaticMarkingVisitor< MarkCompactMarkingVisitor >
typedef FlexibleBodyVisitor
< MarkCompactMarkingVisitor,
FixedArray::BodyDescriptor,
void > 
FixedArrayVisitor
 
typedef FlexibleBodyVisitor
< MarkCompactMarkingVisitor,
JSObject::BodyDescriptor, void > 
JSObjectVisitor
 
typedef FlexibleBodyVisitor
< MarkCompactMarkingVisitor,
StructBodyDescriptor, void > 
StructObjectVisitor
 
typedef void(* Callback )(Map *map, HeapObject *object)
 
- Protected Member Functions inherited from StaticMarkingVisitor< MarkCompactMarkingVisitor >
 INLINE (static void VisitMap(Map *map, HeapObject *object))
 
 INLINE (static void VisitCode(Map *map, HeapObject *object))
 
 INLINE (static void VisitSharedFunctionInfo(Map *map, HeapObject *object))
 
 INLINE (static void VisitConstantPoolArray(Map *map, HeapObject *object))
 
 INLINE (static void VisitJSFunction(Map *map, HeapObject *object))
 
 INLINE (static void VisitJSRegExp(Map *map, HeapObject *object))
 
 INLINE (static void VisitJSArrayBuffer(Map *map, HeapObject *object))
 
 INLINE (static void VisitJSTypedArray(Map *map, HeapObject *object))
 
 INLINE (static void VisitJSDataView(Map *map, HeapObject *object))
 
 INLINE (static void VisitNativeContext(Map *map, HeapObject *object))
 
 INLINE (static bool IsFlushable(Heap *heap, JSFunction *function))
 
 INLINE (static bool IsFlushable(Heap *heap, SharedFunctionInfo *shared_info))
 
- Static Protected Member Functions inherited from StaticMarkingVisitor< MarkCompactMarkingVisitor >
static void MarkMapContents (Heap *heap, Map *map)
 
static void MarkTransitionArray (Heap *heap, TransitionArray *transitions)
 
static void VisitSharedFunctionInfoStrongCode (Heap *heap, HeapObject *object)
 
static void VisitSharedFunctionInfoWeakCode (Heap *heap, HeapObject *object)
 
static void VisitJSFunctionStrongCode (Heap *heap, HeapObject *object)
 
static void VisitJSFunctionWeakCode (Heap *heap, HeapObject *object)
 
- Static Protected Attributes inherited from StaticMarkingVisitor< MarkCompactMarkingVisitor >
static VisitorDispatchTable
< Callback
table_
 

Detailed Description

Definition at line 1382 of file mark-compact.cc.

Member Function Documentation

INLINE ( static void   VisitPointerHeap *heap, Object **p)
inline

Definition at line 1401 of file mark-compact.cc.

References Heap::mark_compact_collector().

INLINE ( static void   VisitPointersHeap *heap, Object **start, Object **end)
inline

Definition at line 1405 of file mark-compact.cc.

References Heap::mark_compact_collector().

INLINE ( static void   MarkObjectHeap *heap, HeapObject *object)
inline

Definition at line 1419 of file mark-compact.cc.

References Heap::mark_compact_collector().

INLINE ( static bool   MarkObjectWithoutPushHeap *heap, HeapObject *object)
inline

Definition at line 1426 of file mark-compact.cc.

References MarkBit::Get(), and Heap::mark_compact_collector().

INLINE ( static void   MarkObjectByPointerMarkCompactCollector *collector,Object **anchor_slot,Object **p)
inline

Definition at line 1436 of file mark-compact.cc.

INLINE ( static void   VisitUnmarkedObjectMarkCompactCollector *collector,HeapObject *obj)
inline
INLINE ( static bool   VisitUnmarkedObjectsHeap *heap,Object **start,Object **end)
inline
INLINE ( static void   BeforeVisitingSharedFunctionInfoHeapObject *object)
inline
void ObjectStatsCountFixedArray ( FixedArrayBase fixed_array,
FixedArraySubInstanceType  fast_type,
FixedArraySubInstanceType  dictionary_type 
)
static

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