Index: src/heap/heap.cc |
diff --git a/src/heap/heap.cc b/src/heap/heap.cc |
index 8802266d985654b1e4792f5cddb6fafd409e32da..9cb89ed17b602c306982a87325f6e23f9124b2d4 100644 |
--- a/src/heap/heap.cc |
+++ b/src/heap/heap.cc |
@@ -820,7 +820,8 @@ void Heap::FinalizeIncrementalMarking(const char* gc_reason) { |
GCCallbacksScope scope(this); |
if (scope.CheckReenter()) { |
AllowHeapAllocation allow_allocation; |
- GCTracer::Scope scope(tracer(), GCTracer::Scope::EXTERNAL); |
+ GCTracer::Scope scope(tracer(), |
+ GCTracer::Scope::MC_INCREMENTAL_EXTERNAL_PROLOGUE); |
VMState<EXTERNAL> state(isolate_); |
HandleScope handle_scope(isolate_); |
CallGCPrologueCallbacks(kGCTypeIncrementalMarking, kNoGCCallbackFlags); |
@@ -831,7 +832,8 @@ void Heap::FinalizeIncrementalMarking(const char* gc_reason) { |
GCCallbacksScope scope(this); |
if (scope.CheckReenter()) { |
AllowHeapAllocation allow_allocation; |
- GCTracer::Scope scope(tracer(), GCTracer::Scope::EXTERNAL); |
+ GCTracer::Scope scope(tracer(), |
+ GCTracer::Scope::MC_INCREMENTAL_EXTERNAL_PROLOGUE); |
VMState<EXTERNAL> state(isolate_); |
HandleScope handle_scope(isolate_); |
CallGCEpilogueCallbacks(kGCTypeIncrementalMarking, kNoGCCallbackFlags); |
@@ -1278,7 +1280,10 @@ bool Heap::PerformGarbageCollection( |
GCCallbacksScope scope(this); |
if (scope.CheckReenter()) { |
AllowHeapAllocation allow_allocation; |
- GCTracer::Scope scope(tracer(), GCTracer::Scope::EXTERNAL); |
+ GCTracer::Scope scope(tracer(), |
+ collector == MARK_COMPACTOR |
+ ? GCTracer::Scope::MC_EXTERNAL_PROLOGUE |
+ : GCTracer::Scope::SCAVENGER_EXTERNAL_PROLOGUE); |
VMState<EXTERNAL> state(isolate_); |
HandleScope handle_scope(isolate_); |
CallGCPrologueCallbacks(gc_type, kNoGCCallbackFlags); |
@@ -1337,7 +1342,8 @@ bool Heap::PerformGarbageCollection( |
gc_post_processing_depth_++; |
{ |
AllowHeapAllocation allow_allocation; |
- GCTracer::Scope scope(tracer(), GCTracer::Scope::EXTERNAL); |
+ GCTracer::Scope scope(tracer(), |
+ GCTracer::Scope::EXTERNAL_WEAK_GLOBAL_HANDLES); |
freed_global_handles = |
isolate_->global_handles()->PostGarbageCollectionProcessing( |
collector, gc_callback_flags); |
@@ -1368,7 +1374,10 @@ bool Heap::PerformGarbageCollection( |
GCCallbacksScope scope(this); |
if (scope.CheckReenter()) { |
AllowHeapAllocation allow_allocation; |
- GCTracer::Scope scope(tracer(), GCTracer::Scope::EXTERNAL); |
+ GCTracer::Scope scope(tracer(), |
+ collector == MARK_COMPACTOR |
+ ? GCTracer::Scope::MC_EXTERNAL_EPILOGUE |
+ : GCTracer::Scope::SCAVENGER_EXTERNAL_EPILOGUE); |
VMState<EXTERNAL> state(isolate_); |
HandleScope handle_scope(isolate_); |
CallGCEpilogueCallbacks(gc_type, gc_callback_flags); |