summaryrefslogtreecommitdiffstats
path: root/runtime/gc/collector/mark_sweep.h
diff options
context:
space:
mode:
authorHiroshi Yamauchi <yamauchi@google.com>2014-03-21 17:47:50 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2014-03-21 17:47:51 +0000
commitc7b4dfb8db21528b179689a80b69d868de394ef1 (patch)
tree77b1ffafac22a5cccf559dfeefb1ede3f4e1be23 /runtime/gc/collector/mark_sweep.h
parent8d6b12a3e6e43ce16b620f30a5a18273c4888a74 (diff)
parent3e41780cb3bcade3b724908e00443a9caf6977ef (diff)
downloadart-c7b4dfb8db21528b179689a80b69d868de394ef1.zip
art-c7b4dfb8db21528b179689a80b69d868de394ef1.tar.gz
art-c7b4dfb8db21528b179689a80b69d868de394ef1.tar.bz2
Merge "Refactor the garbage collector driver (GarbageCollector::Run)."
Diffstat (limited to 'runtime/gc/collector/mark_sweep.h')
-rw-r--r--runtime/gc/collector/mark_sweep.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/runtime/gc/collector/mark_sweep.h b/runtime/gc/collector/mark_sweep.h
index 65583d9..d88424d 100644
--- a/runtime/gc/collector/mark_sweep.h
+++ b/runtime/gc/collector/mark_sweep.h
@@ -68,19 +68,25 @@ class MarkSweep : public GarbageCollector {
virtual void InitializePhase() OVERRIDE;
virtual void MarkingPhase() OVERRIDE SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
- virtual bool HandleDirtyObjectsPhase() OVERRIDE EXCLUSIVE_LOCKS_REQUIRED(Locks::mutator_lock_);
+ virtual void HandleDirtyObjectsPhase() OVERRIDE EXCLUSIVE_LOCKS_REQUIRED(Locks::mutator_lock_);
virtual void ReclaimPhase() OVERRIDE SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
virtual void FinishPhase() OVERRIDE SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
virtual void MarkReachableObjects()
SHARED_LOCKS_REQUIRED(Locks::mutator_lock_)
EXCLUSIVE_LOCKS_REQUIRED(Locks::heap_bitmap_lock_);
- virtual bool IsConcurrent() const OVERRIDE;
+ bool IsConcurrent() const {
+ return is_concurrent_;
+ }
virtual GcType GetGcType() const OVERRIDE {
return kGcTypeFull;
}
+ virtual CollectorType GetCollectorType() const OVERRIDE {
+ return is_concurrent_ ? kCollectorTypeCMS : kCollectorTypeMS;
+ }
+
// Initializes internal structures.
void Init();