diff options
| author | 2015-06-22 19:40:00 +0000 | |
|---|---|---|
| committer | 2015-06-22 19:40:00 +0000 | |
| commit | f7012291ed9c984e2b50d83d7a2d5758cd64c99a (patch) | |
| tree | 96e689c729366cb1786c6e6a389566f50eff4b0a | |
| parent | ae393c3b24cfdad97aaded8c0ff1ee7262b46ffe (diff) | |
| parent | 46ec520fc2d08e4bb602472406be8fd1ef7ca73c (diff) | |
Merge "Run an empty checkpoint before marking ends in the CC collector."
| -rw-r--r-- | runtime/gc/collector/concurrent_copying.cc | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/runtime/gc/collector/concurrent_copying.cc b/runtime/gc/collector/concurrent_copying.cc index 6984c1624f..c7d2e9f2c9 100644 --- a/runtime/gc/collector/concurrent_copying.cc +++ b/runtime/gc/collector/concurrent_copying.cc @@ -412,6 +412,11 @@ void ConcurrentCopying::MarkingPhase() { // the mark stack here once again. ProcessMarkStack(); CheckEmptyMarkQueue(); + if (kVerboseMode) { + LOG(INFO) << "AllowNewSystemWeaks"; + } + Runtime::Current()->AllowNewSystemWeaks(); + IssueEmptyCheckpoint(); // Disable marking. if (kUseTableLookupReadBarrier) { heap_->rb_table_->ClearAll(); @@ -419,10 +424,6 @@ void ConcurrentCopying::MarkingPhase() { } is_mark_queue_push_disallowed_.StoreSequentiallyConsistent(1); is_marking_ = false; - if (kVerboseMode) { - LOG(INFO) << "AllowNewSystemWeaks"; - } - Runtime::Current()->AllowNewSystemWeaks(); CheckEmptyMarkQueue(); } |