Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 38ff8b34a54151a1cfafa359c6178b3b353f2bef
https://github.com/WebKit/WebKit/commit/38ff8b34a54151a1cfafa359c6178b3b353f2bef
Author: Mark Lam <[email protected]>
Date: 2026-09-02 (Wed, 02 Sep 2026)
Changed paths:
M Tools/Scripts/dump-class-layout
M Tools/lldb/lldb_dump_class_layout.py
Log Message:
-----------
Enhance Tools/Scripts/dump-class-layout to be able to dump classes in static
libraries and other binaries as well.
https://bugs.webkit.org/show_bug.cgi?id=323262
rdar://186508769
Reviewed by Yusuke Suzuki.
We used to be able to dump class layouts in WebKit frameworks:
% /usr/bin/python3 ./Tools/Scripts/dump-class-layout -b WebKitBuild -c Release
JavaScriptCore CodeBlock
Now, we can also dump class layouts in static libraries as well e.g.
% /usr/bin/python3 ./Tools/Scripts/dump-class-layout -b WebKitBuild -c Release
libJavaScriptCoreTools.a Corpse::Snapshot
Or more conveniently, we can do so by specifying the path to the binary file:
% /usr/bin/python3 ./Tools/Scripts/dump-class-layout
WebKitBuild/Release/libJavaScriptCoreTools.a Corpse::Snapshot
./Tools/Scripts/dump-class-layout will now look for target binaries (of various
formats) to dump from in this order:
1. name + ".framework/" + name
2. "lib" + name + ".a"
3. name + ".a"
4. "lib" + name + ".dylib"
5. name + ".dylib",
6. name
First one found that is a valid file will be consulted for the class layout
info to dump.
* Tools/Scripts/dump-class-layout:
(webkit_build_dir):
(find_binary):
(main.or):
(main):
* Tools/lldb/lldb_dump_class_layout.py:
(LLDBDebuggerInstance.__init__):
(LLDBDebuggerInstance):
(LLDBDebuggerInstance._archive_member_specs):
(LLDBDebuggerInstance._modules_to_search):
(LLDBDebuggerInstance.layout_for_classname):
Canonical link: https://commits.webkit.org/320394@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications