V8 Project
v8::internal::ScavengeVisitor Class Reference
+ Inheritance diagram for v8::internal::ScavengeVisitor:
+ Collaboration diagram for v8::internal::ScavengeVisitor:

Public Member Functions

 ScavengeVisitor (Heap *heap)
 
void VisitPointer (Object **p)
 
void VisitPointers (Object **start, Object **end)
 

Private Member Functions

void ScavengePointer (Object **p)
 

Private Attributes

Heapheap_
 

Detailed Description

Definition at line 1232 of file heap.cc.

Constructor & Destructor Documentation

◆ ScavengeVisitor()

v8::internal::ScavengeVisitor::ScavengeVisitor ( Heap heap)
inlineexplicit

Definition at line 1234 of file heap.cc.

1234 : heap_(heap) {}

Member Function Documentation

◆ ScavengePointer()

void v8::internal::ScavengeVisitor::ScavengePointer ( Object **  p)
inlineprivate

Definition at line 1244 of file heap.cc.

1244  {
1245  Object* object = *p;
1246  if (!heap_->InNewSpace(object)) return;
1247  Heap::ScavengeObject(reinterpret_cast<HeapObject**>(p),
1248  reinterpret_cast<HeapObject*>(object));
1249  }
static void ScavengeObject(HeapObject **p, HeapObject *object)
Definition: heap-inl.h:554
bool InNewSpace(Object *object)
Definition: heap-inl.h:322
kSerializedDataOffset Object
Definition: objects-inl.h:5322

References heap_, v8::internal::Heap::InNewSpace(), and v8::internal::Heap::ScavengeObject().

Referenced by VisitPointer(), and VisitPointers().

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

◆ VisitPointer()

void v8::internal::ScavengeVisitor::VisitPointer ( Object **  p)
inline

Definition at line 1236 of file heap.cc.

1236 { ScavengePointer(p); }
void ScavengePointer(Object **p)
Definition: heap.cc:1244

References ScavengePointer().

Referenced by v8::internal::Heap::Scavenge().

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

◆ VisitPointers()

void v8::internal::ScavengeVisitor::VisitPointers ( Object **  start,
Object **  end 
)
inline

Definition at line 1238 of file heap.cc.

1238  {
1239  // Copy all HeapObject pointers in [start, end)
1240  for (Object** p = start; p < end; p++) ScavengePointer(p);
1241  }

References ScavengePointer().

+ Here is the call graph for this function:

Member Data Documentation

◆ heap_

Heap* v8::internal::ScavengeVisitor::heap_
private

Definition at line 1251 of file heap.cc.

Referenced by ScavengePointer().


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