v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem Class Reference
Inheritance diagram for v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem:
Collaboration diagram for v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem:

Public Types

enum class  SlotsType { kRegularSlots , kTypedSlots }
 

Public Member Functions

 MarkingItem (MutablePageMetadata *chunk, SlotsType slots_type, SlotSet *slot_set, SlotSet *background_slot_set)
 
 MarkingItem (MutablePageMetadata *chunk, SlotsType slots_type, TypedSlotSet *typed_slot_set)
 
 ~MarkingItem ()=default
 
template<typename Visitor >
void Process (Visitor *visitor)
 
void MergeAndDeleteRememberedSets ()
 
void DeleteRememberedSets ()
 
void DeleteSetsOnTearDown ()
 
- Public Member Functions inherited from v8::internal::ParallelWorkItem
 ParallelWorkItem ()=default
 
bool TryAcquire ()
 
bool IsAcquired () const
 

Private Member Functions

Heapheap ()
 
template<typename Visitor >
void MarkUntypedPointers (Visitor *visitor)
 
template<typename Visitor >
void MarkTypedPointers (Visitor *visitor)
 
template<typename Visitor , typename TSlot >
V8_INLINE SlotCallbackResult CheckAndMarkObject (Visitor *visitor, TSlot slot)
 

Private Attributes

MutablePageMetadata *const chunk_
 
const SlotsType slots_type_
 
union { 
 
   SlotSet *   slot_set_ 
 
   TypedSlotSet *   typed_slot_set_ 
 
};  
 
SlotSetbackground_slot_set_ = nullptr
 

Detailed Description

Definition at line 66 of file minor-mark-sweep.h.

Member Enumeration Documentation

◆ SlotsType

Enumerator
kRegularSlots 
kTypedSlots 

Definition at line 68 of file minor-mark-sweep.h.

Constructor & Destructor Documentation

◆ MarkingItem() [1/2]

v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::MarkingItem ( MutablePageMetadata * chunk,
SlotsType slots_type,
SlotSet * slot_set,
SlotSet * background_slot_set )
inline

Definition at line 70 of file minor-mark-sweep.h.

◆ MarkingItem() [2/2]

v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::MarkingItem ( MutablePageMetadata * chunk,
SlotsType slots_type,
TypedSlotSet * typed_slot_set )
inline

Definition at line 76 of file minor-mark-sweep.h.

◆ ~MarkingItem()

v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::~MarkingItem ( )
default

Member Function Documentation

◆ CheckAndMarkObject()

template<typename Visitor , typename TSlot >
V8_INLINE SlotCallbackResult v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::CheckAndMarkObject ( Visitor * visitor,
TSlot slot )
private

Definition at line 146 of file minor-mark-sweep-inl.h.

◆ DeleteRememberedSets()

void v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::DeleteRememberedSets ( )

Definition at line 221 of file minor-mark-sweep.cc.

Here is the call graph for this function:

◆ DeleteSetsOnTearDown()

void v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::DeleteSetsOnTearDown ( )

Definition at line 235 of file minor-mark-sweep.cc.

Here is the call graph for this function:

◆ heap()

Heap * v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::heap ( )
inlineprivate

Definition at line 91 of file minor-mark-sweep.h.

Here is the call graph for this function:

◆ MarkTypedPointers()

template<typename Visitor >
void v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::MarkTypedPointers ( Visitor * visitor)
private

Definition at line 124 of file minor-mark-sweep-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MarkUntypedPointers()

template<typename Visitor >
void v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::MarkUntypedPointers ( Visitor * visitor)
private

Definition at line 95 of file minor-mark-sweep-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MergeAndDeleteRememberedSets()

void v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::MergeAndDeleteRememberedSets ( )

Definition at line 203 of file minor-mark-sweep.cc.

Here is the call graph for this function:

◆ Process()

template<typename Visitor >
void v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::Process ( Visitor * visitor)

Definition at line 85 of file minor-mark-sweep-inl.h.

Here is the call graph for this function:

Member Data Documentation

◆ [union]

◆ background_slot_set_

SlotSet* v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::background_slot_set_ = nullptr
private

Definition at line 107 of file minor-mark-sweep.h.

◆ chunk_

MutablePageMetadata* const v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::chunk_
private

Definition at line 101 of file minor-mark-sweep.h.

◆ slot_set_

SlotSet* v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::slot_set_

Definition at line 104 of file minor-mark-sweep.h.

◆ slots_type_

const SlotsType v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::slots_type_
private

Definition at line 102 of file minor-mark-sweep.h.

◆ typed_slot_set_

TypedSlotSet* v8::internal::YoungGenerationRememberedSetsMarkingWorklist::MarkingItem::typed_slot_set_

Definition at line 105 of file minor-mark-sweep.h.


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