v8  3.14.5(node0.10.28)
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 void BeforeVisitingSharedFunctionInfo(HeapObject *object))
 
- 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 bool VisitUnmarkedObjects (Heap *heap, Object **start, Object **end)
 
static void VisitJSWeakMap (Map *map, HeapObject *object)
 
- Static Public Member Functions inherited from StaticMarkingVisitor< MarkCompactMarkingVisitor >
static void Initialize ()
 
static void IterateBody (Map *map, HeapObject *obj)
 
static void VisitCodeEntry (Heap *heap, Address entry_address)
 
static void VisitEmbeddedPointer (Heap *heap, RelocInfo *rinfo)
 
static void VisitGlobalPropertyCell (Heap *heap, RelocInfo *rinfo)
 
static void VisitDebugTarget (Heap *heap, RelocInfo *rinfo)
 
static void VisitCodeTarget (Heap *heap, RelocInfo *rinfo)
 
static void VisitExternalReference (RelocInfo *rinfo)
 
static void VisitRuntimeEntry (RelocInfo *rinfo)
 
static void VisitNativeContext (Map *map, HeapObject *object)
 
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,
JSObject::BodyDescriptor, void > 
JSObjectVisitor
 
typedef FlexibleBodyVisitor
< MarkCompactMarkingVisitor,
StructBodyDescriptor, void > 
StructObjectVisitor
 
typedef void(* Callback )(Map *map, HeapObject *object)
 
- Static Protected Member Functions inherited from StaticMarkingVisitor< MarkCompactMarkingVisitor >
static void VisitMap (Map *map, HeapObject *object)
 
static void VisitCode (Map *map, HeapObject *object)
 
static void VisitSharedFunctionInfo (Map *map, HeapObject *object)
 
static void VisitJSFunction (Map *map, HeapObject *object)
 
static void VisitJSRegExp (Map *map, HeapObject *object)
 
static void MarkMapContents (Heap *heap, Map *map)
 
static void MarkTransitionArray (Heap *heap, TransitionArray *transitions)
 
static bool IsFlushable (Heap *heap, JSFunction *function)
 
static bool IsFlushable (Heap *heap, SharedFunctionInfo *shared_info)
 
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 973 of file mark-compact.cc.

Member Function Documentation

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

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

References Heap::mark_compact_collector().

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

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

References Heap::mark_compact_collector(), and Marking::MarkBitFrom().

INLINE ( static bool   MarkObjectWithoutPushHeap *heap, HeapObject *object)
inline
INLINE ( static void   MarkObjectByPointerMarkCompactCollector *collector,Object **anchor_slot,Object **p)
inline

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

References Marking::MarkBitFrom().

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

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