From ef26aeb06a5be695b20965ff3e448a0219ac3467 Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 16 Apr 2015 14:00:12 -0700 Subject: [PATCH] Revert of Revert "Remove early bail-out in VisitWeakList to investigate chrasher." (patchset #1 id:1 of https://codereview.chromium.org/1080303002/) Reason for revert: Still doesn't work Original issue's description: > Revert "Remove early bail-out in VisitWeakList to investigate chrasher." > > > BUG=468601 > > LOG=n > > > > Review URL: https://codereview.chromium.org/1016353002 > > > > Cr-Commit-Position: refs/heads/master@{#27317} > > R=hpayer@chromium.org > BUG=v8:3996,chromium:468601 > LOG=n > > Committed: https://crrev.com/835eeafe32f442d7b43fe175237de2c70ed7ceef > Cr-Commit-Position: refs/heads/master@{#27814} TBR=hpayer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3996,chromium:468601 Review URL: https://codereview.chromium.org/1092783002 Cr-Commit-Position: refs/heads/master@{#27902} --- src/heap/objects-visiting.cc | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/src/heap/objects-visiting.cc b/src/heap/objects-visiting.cc index 9190100329..cf71fb2bda 100644 --- a/src/heap/objects-visiting.cc +++ b/src/heap/objects-visiting.cc @@ -202,7 +202,6 @@ Object* VisitWeakList(Heap* heap, Object* list, WeakObjectRetainer* retainer, while (list != undefined) { // Check whether to keep the candidate in the list. T* candidate = reinterpret_cast(list); - T* original_candidate = candidate; Object* retained = retainer->RetainAs(list); if (retained != NULL) { @@ -227,18 +226,6 @@ Object* VisitWeakList(Heap* heap, Object* list, WeakObjectRetainer* retainer, // tail is a live object, visit it. WeakListVisitor::VisitLiveObject(heap, tail, retainer); - // The list of weak objects is usually order. It starts with objects - // recently allocated in the young generation followed by objects - // allocated in the old generation. When a migration failure happened, - // the list is not ordered until the next GC that has no migration - // failure. - // For young generation collections we just have to visit until the last - // young generation objects. - if (stop_after_young && !heap->migration_failure() && - !heap->previous_migration_failure() && - !heap->InNewSpace(original_candidate)) { - return head; - } } else { WeakListVisitor::VisitPhantomObject(heap, candidate); }