| Index: src/global-handles.cc
|
| diff --git a/src/global-handles.cc b/src/global-handles.cc
|
| index 650999f394c5cc7c2e5397afff53c74e3c186d20..4c34744a50b04b49de4645416e73332c9ed48c43 100644
|
| --- a/src/global-handles.cc
|
| +++ b/src/global-handles.cc
|
| @@ -687,6 +687,16 @@ void GlobalHandles::IterateNewSpaceWeakIndependentRoots(ObjectVisitor* v) {
|
| }
|
|
|
|
|
| +void GlobalHandles::IdentifyWeakUnmodifiedObjects(WeakSlotCallback f) {
|
| + for (int i = 0; i < new_space_nodes_.length(); ++i) {
|
| + Node* node = new_space_nodes_[i];
|
| + if (node->IsWeak() && f(node->location())) {
|
| + node->set_partially_dependent(true);
|
| + }
|
| + }
|
| +}
|
| +
|
| +
|
| bool GlobalHandles::IterateObjectGroups(ObjectVisitor* v,
|
| WeakSlotCallbackWithHeap can_skip) {
|
| ComputeObjectGroupsAndImplicitReferences();
|
|
|