Fix memory usage regression and clean up collector changing code.
Memory usage regressed since we didn't properly update
concurrent_start_bytes_ when changing collectors.
Bug: 12034247
Change-Id: I1c69e71cd2919e0d3bf75485a4ac0b0aeca59278
diff --git a/runtime/gc/heap.h b/runtime/gc/heap.h
index 046fbac..3bff3f9 100644
--- a/runtime/gc/heap.h
+++ b/runtime/gc/heap.h
@@ -644,12 +644,14 @@
// A mod-union table remembers all of the references from the it's space to other spaces.
SafeMap<space::Space*, accounting::ModUnionTable*> mod_union_tables_;
- // What kind of concurrency behavior is the runtime after? True for concurrent mark sweep GC,
- // false for stop-the-world mark sweep.
- const bool concurrent_gc_;
+ // What kind of concurrency behavior is the runtime after? Currently true for concurrent mark
+ // sweep GC, false for other GC types.
+ bool concurrent_gc_;
// The current collector type.
CollectorType collector_type_;
+ // Which collector we will switch to after zygote fork.
+ CollectorType post_zygote_collector_type_;
// How many GC threads we may use for paused parts of garbage collection.
const size_t parallel_gc_threads_;