| Index: runtime/vm/gc_marker.h
|
| diff --git a/runtime/vm/gc_marker.h b/runtime/vm/gc_marker.h
|
| index 43eb47248d0877253ce2f6815b1981e512b32b0e..000e9465b6a3145d6e8d9f1cc484ea6cf239ba59 100644
|
| --- a/runtime/vm/gc_marker.h
|
| +++ b/runtime/vm/gc_marker.h
|
| @@ -24,13 +24,19 @@ class GCMarker : public ValueObject {
|
| explicit GCMarker(Heap* heap) : heap_(heap) { }
|
| ~GCMarker() { }
|
|
|
| - void MarkObjects(Isolate* isolate, PageSpace* page_space);
|
| + void MarkObjects(Isolate* isolate,
|
| + PageSpace* page_space,
|
| + bool invoke_api_callbacks);
|
|
|
| private:
|
| - void Prologue(Isolate* isolate);
|
| - void Epilogue(Isolate* isolate);
|
| - void IterateRoots(Isolate* isolate, ObjectPointerVisitor* visitor);
|
| - void IterateWeakRoots(Isolate* isolate, HandleVisitor* visitor);
|
| + void Prologue(Isolate* isolate, bool invoke_api_callbacks);
|
| + void Epilogue(Isolate* isolate, bool invoke_api_callbacks);
|
| + void IterateRoots(Isolate* isolate,
|
| + ObjectPointerVisitor* visitor,
|
| + bool visit_prologue_weak_persistent_handles);
|
| + void IterateWeakRoots(Isolate* isolate,
|
| + HandleVisitor* visitor,
|
| + bool visit_prologue_weak_persistent_handles);
|
| void IterateWeakReferences(Isolate* isolate, MarkingVisitor* visitor);
|
| void DrainMarkingStack(Isolate* isolate, MarkingVisitor* visitor);
|
|
|
|
|