We might decide to start incremental marking immediately after finishing one cycle.
authorvegorov@chromium.org <vegorov@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 15 Nov 2011 13:01:52 +0000 (13:01 +0000)
committervegorov@chromium.org <vegorov@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Tue, 15 Nov 2011 13:01:52 +0000 (13:01 +0000)
In this case uncommiting marking deque is impossible.

R=erik.corry@gmail.com

Review URL: http://codereview.chromium.org/8528030

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/incremental-marking.cc

index bd0f083..0f29f73 100644 (file)
@@ -453,8 +453,7 @@ void IncrementalMarking::EnsureMarkingDequeIsCommitted() {
 }
 
 void IncrementalMarking::UncommitMarkingDeque() {
-  ASSERT(state_ == STOPPED);
-  if (marking_deque_memory_committed_) {
+  if (state_ == STOPPED && marking_deque_memory_committed_) {
     bool success = marking_deque_memory_->Uncommit(
         reinterpret_cast<Address>(marking_deque_memory_->address()),
         marking_deque_memory_->size());