Index: src/mark-compact.cc |
=================================================================== |
--- src/mark-compact.cc (revision 4699) |
+++ src/mark-compact.cc (working copy) |
@@ -78,6 +78,7 @@ |
SweepLargeObjectSpace(); |
if (IsCompacting()) { |
+ GCTracer::Scope gc_scope(tracer_, GCTracer::Scope::MC_COMPACT); |
EncodeForwardingAddresses(); |
UpdatePointers(); |
@@ -678,6 +679,7 @@ |
void MarkCompactCollector::MarkLiveObjects() { |
+ GCTracer::Scope gc_scope(tracer_, GCTracer::Scope::MC_MARK); |
#ifdef DEBUG |
ASSERT(state_ == PREPARE_GC); |
state_ = MARK_LIVE_OBJECTS; |
@@ -1163,6 +1165,8 @@ |
HeapObject* target = HeapObject::cast(result); |
MigrateObject(target->address(), object->address(), object_size); |
Heap::UpdateRSet(target); |
+ MarkCompactCollector::tracer()-> |
+ increment_promoted_objects_size(object_size); |
return true; |
} |
} else { |
@@ -1177,6 +1181,8 @@ |
if (target_space == Heap::old_pointer_space()) { |
Heap::UpdateRSet(target); |
} |
+ MarkCompactCollector::tracer()-> |
+ increment_promoted_objects_size(object_size); |
return true; |
} |
} |
@@ -1735,6 +1741,8 @@ |
void MarkCompactCollector::SweepSpaces() { |
+ GCTracer::Scope gc_scope(tracer_, GCTracer::Scope::MC_SWEEP); |
+ |
ASSERT(state_ == SWEEP_SPACES); |
ASSERT(!IsCompacting()); |
// Noncompacting collections simply sweep the spaces to clear the mark |