[webkit-changes] [WebKit/WebKit] 7a222c: [JSC] Introduce Heap::dumpVerifierMarkerData(HeapC...
Yijia Huang
noreply at github.com
Fri Nov 15 14:49:07 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7a222cd1f122293829eefb5365e5f76ef8953ff8
https://github.com/WebKit/WebKit/commit/7a222cd1f122293829eefb5365e5f76ef8953ff8
Author: Yijia Huang <hyjorc1 at gmail.com>
Date: 2024-11-15 (Fri, 15 Nov 2024)
Changed paths:
M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
M Source/JavaScriptCore/heap/Heap.cpp
M Source/JavaScriptCore/heap/Heap.h
M Source/JavaScriptCore/heap/VerifierSlotVisitor.h
A Source/JavaScriptCore/heap/VerifierSlotVisitorScope.h
Log Message:
-----------
[JSC] Introduce Heap::dumpVerifierMarkerData(HeapCell*)
https://bugs.webkit.org/show_bug.cgi?id=283183
rdar://139980180
Reviewed by Yusuke Suzuki.
This commit introduces Heap::dumpVerifierMarkerData(HeapCell*), which is
used by VerifierSlotVisitor to display marker data for the target cell.
Usage Example:
```
{
// Delays GC until the next available opportunity (triggered automatically).
DeferGCForAWhile deferGC(vm);
// Pauses asynchronous garbage collection.
PreventCollectionScope preventCollectionScope(heap);
// Maintains the VerifierSlotVisitor without resetting.
VerifierSlotVisitorScope verifierSlotVisitorScope(heap);
// Manually executes a full GC with both SlotVisitor and VerifierSlotVisitor.
heap.collectNow(Sync, CollectionScope::Full);
...
// Dumps marker data for the specified target cell.
heap.dumpVerifierMarkerData(target);
...
}
```
* Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
* Source/JavaScriptCore/heap/Heap.cpp:
(JSC::Heap::verifierMark):
(JSC::Heap::dumpVerifierMarkerData):
(JSC::Heap::verifyGC):
(JSC::Heap::setKeepVerifierSlotVisitor):
(JSC::Heap::clearVerifierSlotVisitor):
* Source/JavaScriptCore/heap/Heap.h:
* Source/JavaScriptCore/heap/VerifierSlotVisitor.h:
(JSC::VerifierSlotVisitor::doneMarking):
(JSC::VerifierSlotVisitor::setDoneMarking):
* Source/JavaScriptCore/heap/VerifierSlotVisitorScope.h: Added.
(JSC::VerifierSlotVisitorScope::VerifierSlotVisitorScope):
(JSC::VerifierSlotVisitorScope::~VerifierSlotVisitorScope):
Canonical link: https://commits.webkit.org/286659@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list