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); |