From ccf7c8a68972f3b7bfa38af0c6b792f712f83765 Mon Sep 17 00:00:00 2001 From: Hiroshi Yamauchi Date: Fri, 29 Jul 2016 17:41:01 +0000 Subject: [PATCH] Revert "Scan immune spaces using mod union tables." This reverts commit 8256da35feac0ba7589fcd4b692a4b9a936679a4. Test failing. Change-Id: I391dcbdba19c6f6313e06075b0a69ea406c7c50e --- runtime/gc/collector/concurrent_copying.cc | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/runtime/gc/collector/concurrent_copying.cc b/runtime/gc/collector/concurrent_copying.cc index 4a8008920..d413a5053 100644 --- a/runtime/gc/collector/concurrent_copying.cc +++ b/runtime/gc/collector/concurrent_copying.cc @@ -520,7 +520,7 @@ class ConcurrentCopying::ImmuneSpaceScanObjVisitor { explicit ImmuneSpaceScanObjVisitor(ConcurrentCopying* cc) : collector_(cc) {} - ALWAYS_INLINE void operator()(mirror::Object* obj) const SHARED_REQUIRES(Locks::mutator_lock_) { + void operator()(mirror::Object* obj) const SHARED_REQUIRES(Locks::mutator_lock_) { if (kUseBakerReadBarrier && kGrayDirtyImmuneObjects) { if (obj->GetReadBarrierPointer() == ReadBarrier::GrayPtr()) { collector_->ScanImmuneObject(obj); @@ -534,10 +534,6 @@ class ConcurrentCopying::ImmuneSpaceScanObjVisitor { } } - static void Callback(mirror::Object* obj, void* arg) SHARED_REQUIRES(Locks::mutator_lock_) { - reinterpret_cast(arg)->operator()(obj); - } - private: ConcurrentCopying* const collector_; }; @@ -562,15 +558,10 @@ void ConcurrentCopying::MarkingPhase() { for (auto& space : immune_spaces_.GetSpaces()) { DCHECK(space->IsImageSpace() || space->IsZygoteSpace()); accounting::ContinuousSpaceBitmap* live_bitmap = space->GetLiveBitmap(); - accounting::ModUnionTable* table = heap_->FindModUnionTableFromSpace(space); ImmuneSpaceScanObjVisitor visitor(this); - if (table != nullptr) { - table->VisitObjects(ImmuneSpaceScanObjVisitor::Callback, &visitor); - } else { - live_bitmap->VisitMarkedRange(reinterpret_cast(space->Begin()), - reinterpret_cast(space->Limit()), - visitor); - } + live_bitmap->VisitMarkedRange(reinterpret_cast(space->Begin()), + reinterpret_cast(space->Limit()), + visitor); } } if (kUseBakerReadBarrier) { -- 2.11.0