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

Unified Diff: runtime/vm/scavenger.h

Issue 2001713002: - Removed the kWatchedBit and the associated weak property handling (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 7 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 c5f2b8195361997d2e7ba4c12825ef22f515560b..5e7dcb1745d60db746cdf8980971db552a2ec2fc 100644
--- a/runtime/vm/scavenger.h
+++ b/runtime/vm/scavenger.h
@@ -233,6 +233,7 @@ class Scavenger {
void IterateWeakReferences(Isolate* isolate, ScavengerVisitor* visitor);
void IterateWeakRoots(Isolate* isolate, HandleVisitor* visitor);
void ProcessToSpace(ScavengerVisitor* visitor);
+ void EnqueueWeakProperty(RawWeakProperty* raw_weak);
uword ProcessWeakProperty(RawWeakProperty* raw_weak,
ScavengerVisitor* visitor);
void Epilogue(Isolate* isolate, SemiSpace* from, bool invoke_api_callbacks);
@@ -264,7 +265,7 @@ class Scavenger {
void UpdateMaxHeapCapacity();
void UpdateMaxHeapUsage();
- void ProcessWeakTables();
+ void ProcessWeakReferences();
intptr_t NewSizeInWords(intptr_t old_size_in_words) const;
@@ -292,6 +293,9 @@ class Scavenger {
// Keep track whether a scavenge is currently running.
bool scavenging_;
+ // Keep track of pending weak properties discovered while scagenging.
+ RawWeakProperty* delayed_weak_properties_;
+
int64_t gc_time_micros_;
intptr_t collections_;
static const int kStatsHistoryCapacity = 2;
« runtime/vm/raw_object.h ('K') | « runtime/vm/raw_object.h ('k') | runtime/vm/scavenger.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698