Index: src/global-handles.cc |
diff --git a/src/global-handles.cc b/src/global-handles.cc |
index 4048416ca69d35e34c8baea850823826ddc55848..277cad6c3c0b2961cf6c3f39cf21b0c481523923 100644 |
--- a/src/global-handles.cc |
+++ b/src/global-handles.cc |
@@ -573,7 +573,7 @@ void GlobalHandles::MakePhantom(Object** location, void* parameter, |
} |
-void GlobalHandles::CollectPhantomCallbackData() { |
+void GlobalHandles::CollectAllPhantomCallbackData() { |
for (NodeIterator it(this); !it.done(); it.Advance()) { |
Node* node = it.node(); |
node->CollectPhantomCallbackData(isolate(), &pending_phantom_callbacks_); |
@@ -581,6 +581,15 @@ void GlobalHandles::CollectPhantomCallbackData() { |
} |
+void GlobalHandles::CollectYoungPhantomCallbackData() { |
+ for (int i = 0; i < new_space_nodes_.length(); ++i) { |
+ Node* node = new_space_nodes_[i]; |
+ DCHECK(node->is_in_new_space_list()); |
+ node->CollectPhantomCallbackData(isolate(), &pending_phantom_callbacks_); |
+ } |
+} |
+ |
+ |
void* GlobalHandles::ClearWeakness(Object** location) { |
return Node::FromLocation(location)->ClearWeakness(); |
} |