Reviewers: jochen (slow - soon OOO),

Description:
Fix precisely sweeping asserts.

BUG=

Please review this at https://codereview.chromium.org/463503002/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files (+6, -2 lines):
  M src/heap/spaces.cc


Index: src/heap/spaces.cc
diff --git a/src/heap/spaces.cc b/src/heap/spaces.cc
index cfc283f85b7aa628a649cf93c604dddc7fa96359..9be53e03f284018c8b8cafa6462f82712992fba4 100644
--- a/src/heap/spaces.cc
+++ b/src/heap/spaces.cc
@@ -47,7 +47,9 @@ HeapObjectIterator::HeapObjectIterator(Page* page,
          owner == page->heap()->code_space());
   Initialize(reinterpret_cast<PagedSpace*>(owner), page->area_start(),
              page->area_end(), kOnePageOnly, size_func);
-  DCHECK(page->WasSweptPrecisely() || page->SweepingCompleted());
+  DCHECK(page->WasSweptPrecisely() ||
+         (static_cast<PagedSpace*>(owner)->swept_precisely() &&
+          page->SweepingCompleted()));
 }


@@ -81,7 +83,9 @@ bool HeapObjectIterator::AdvanceToNextPage() {
   if (cur_page == space_->anchor()) return false;
   cur_addr_ = cur_page->area_start();
   cur_end_ = cur_page->area_end();
-  DCHECK(cur_page->WasSweptPrecisely());
+  DCHECK(cur_page->WasSweptPrecisely() ||
+         (static_cast<PagedSpace*>(cur_page->owner())->swept_precisely() &&
+          cur_page->SweepingCompleted()));
   return true;
 }



--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to