Revision: 4811
Author: [email protected]
Date: Mon Jun 7 04:31:44 2010
Log: Count Mark-Compact/Mark-Sweep collections only after compaction
decision was made
Review URL: http://codereview.chromium.org/2665001
http://code.google.com/p/v8/source/detail?r=4811
Modified:
/branches/bleeding_edge/src/heap.cc
=======================================
--- /branches/bleeding_edge/src/heap.cc Mon Jun 7 01:49:07 2010
+++ /branches/bleeding_edge/src/heap.cc Mon Jun 7 04:31:44 2010
@@ -659,18 +659,19 @@
void Heap::MarkCompact(GCTracer* tracer) {
gc_state_ = MARK_COMPACT;
- if (MarkCompactCollector::IsCompacting()) {
- mc_count_++;
- } else {
- ms_count_++;
- }
- tracer->set_full_gc_count(mc_count_);
LOG(ResourceEvent("markcompact", "begin"));
MarkCompactCollector::Prepare(tracer);
bool is_compacting = MarkCompactCollector::IsCompacting();
+ if (is_compacting) {
+ mc_count_++;
+ } else {
+ ms_count_++;
+ }
+ tracer->set_full_gc_count(mc_count_ + ms_count_);
+
MarkCompactPrologue(is_compacting);
MarkCompactCollector::CollectGarbage();
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev