void V8GCController::gcPrologue(v8::GCType type, v8::GCCallbackFlags flags) { if (type == v8::kGCTypeScavenge) minorGCPrologue(); else if (type == v8::kGCTypeMarkSweepCompact) majorGCPrologue(); }
void V8GCController::gcPrologue(v8::GCType type, v8::GCCallbackFlags flags) { // FIXME: It would be nice if the GC callbacks passed the Isolate directly.... v8::Isolate* isolate = v8::Isolate::GetCurrent(); TRACE_EVENT_BEGIN1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline"), "GCEvent", "usedHeapSizeBefore", usedHeapSize(isolate)); if (type == v8::kGCTypeScavenge) minorGCPrologue(isolate); else if (type == v8::kGCTypeMarkSweepCompact) majorGCPrologue(isolate, flags & v8::kGCCallbackFlagConstructRetainedObjectInfos); }
void V8GCController::gcPrologue(v8::GCType type, v8::GCCallbackFlags flags) { if (type == v8::kGCTypeScavenge) minorGCPrologue(); else if (type == v8::kGCTypeMarkSweepCompact) majorGCPrologue(); if (isMainThreadOrGCThread() && m_edenNodes) { // The Eden space is cleared at every minor/major GC. m_edenNodes->clear(); } }