Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d5599ce3026f7826886d0466a516a254c8c901b9
https://github.com/WebKit/WebKit/commit/d5599ce3026f7826886d0466a516a254c8c901b9
Author: Keith Miller <[email protected]>
Date: 2026-03-27 (Fri, 27 Mar 2026)
Changed paths:
M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
M
Source/JavaScriptCore/SaferCPPExpectations/NoUncountedMemberCheckerExpectations
M
Source/JavaScriptCore/SaferCPPExpectations/RefCntblBaseVirtualDtorExpectations
M
Source/JavaScriptCore/SaferCPPExpectations/UncountedCallArgsCheckerExpectations
M Source/JavaScriptCore/Sources.txt
M Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp
M Source/JavaScriptCore/bytecode/InlineCacheCompiler.h
A Source/JavaScriptCore/bytecode/InlineCacheHandler.cpp
A Source/JavaScriptCore/bytecode/InlineCacheHandler.h
M Source/JavaScriptCore/bytecode/PropertyInlineCache.cpp
Log Message:
-----------
[JSC] Extract InlineCacheHandler to its own file and add subclass
https://bugs.webkit.org/show_bug.cgi?id=310886
rdar://173499272
Reviewed by Yijia Huang.
Move InlineCacheHandler and CacheType out of InlineCacheCompiler.h/.cpp
into dedicated InlineCacheHandler.h/.cpp files. Replace the
`TrailingArray<..., DataOnlyCallLinkInfo> pattern with an
InlineCacheHandlerWithJSCall subclass that holds a single
DataOnlyCallLinkInfo member, since at most one CallLinkInfo is ever
needed per handler. This eliminates the variable-length allocation
overhead for the common case where no JS call is made, and uses
destroying delete with dynamicDowncast for correct polymorphic
destruction.
SaferCPPExpectations changes are carried over from prior code. Except
the non-virtual destructor but that's safe because we have an overloaded
destroying_delete_t delete operator.
No new tests, no behavior change.
Canonical link: https://commits.webkit.org/310116@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications