Reviewers: Søren Gjesse,
Description:
Visit all roots in the UnreachableObjectsFilter.
If an object is only referenced from DOM wrappers, it can only
be seen if all roots are visited.
Please review this at http://codereview.chromium.org/6226004/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/heap.cc
M src/profile-generator.cc
Index: src/heap.cc
diff --git a/src/heap.cc b/src/heap.cc
index
5832ccbb3900a7a9227397bdad8c3cd1032b15ec..156e38318078cf0a22f01373cf07746323c730fc
100644
--- a/src/heap.cc
+++ b/src/heap.cc
@@ -5029,7 +5029,7 @@ class UnreachableObjectsFilter : public
HeapObjectsFilter {
obj->SetMark();
}
UnmarkingVisitor visitor;
- Heap::IterateRoots(&visitor, VISIT_ONLY_STRONG);
+ Heap::IterateRoots(&visitor, VISIT_ALL);
while (visitor.can_process())
visitor.ProcessNext();
}
Index: src/profile-generator.cc
diff --git a/src/profile-generator.cc b/src/profile-generator.cc
index
34d18771cf1f0664acf09511fa93bd115d446a20..4476cb876c16a303596cdba83bce39e6d05e4b38
100644
--- a/src/profile-generator.cc
+++ b/src/profile-generator.cc
@@ -2385,7 +2385,7 @@ bool
HeapSnapshotGenerator::IterateAndExtractReferences() {
if (interrupted) return false;
SetRootGcRootsReference();
RootsReferencesExtractor extractor(this);
- Heap::IterateRoots(&extractor, VISIT_ONLY_STRONG);
+ Heap::IterateRoots(&extractor, VISIT_ALL);
return ReportProgress();
}
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev