Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(22)

Unified Diff: runtime/vm/scavenger.h

Issue 9655011: Implement prologue weak persistent handles. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: minor pre-review changes Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/vm/scavenger.h
diff --git a/runtime/vm/scavenger.h b/runtime/vm/scavenger.h
index fc9b6e64d823e0e79525e14f61801d44d2ac9118..5975d2e2e3056c90b04e5a46b7944a31d5db9af8 100644
--- a/runtime/vm/scavenger.h
+++ b/runtime/vm/scavenger.h
@@ -59,7 +59,8 @@ class Scavenger {
}
// Collect the garbage in this scavenger.
- void Scavenge();
+ void Scavenge() { Scavenge(false); }
+ void Scavenge(bool invoke_api_callbacks);
siva 2012/03/09 21:48:41 Does it make sense to use a default argument here
cshapiro 2012/03/13 23:06:43 Sorry about this. It was meant to be a placeholde
// Accessors to generate code for inlined allocation.
uword* TopAddress() { return &top_; }
@@ -73,11 +74,15 @@ class Scavenger {
private:
uword FirstObjectStart() const { return to_->start() | object_alignment_; }
- void Prologue();
- void IterateRoots(Isolate* isolate, ObjectPointerVisitor* visitor);
- void IterateWeakRoots(Isolate* isolate, HandleVisitor* visitor);
+ void Prologue(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 ProcessToSpace(ObjectPointerVisitor* visitor);
- void Epilogue();
+ void Epilogue(Isolate* isolate, bool invoke_api_callbacks);
// During a scavenge we need to remember the promoted objects.
// This is implemented as a stack of objects at the end of the to space. As

Powered by Google App Engine
This is Rietveld 408576698