Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 103f05d044f0b05b0497833dba83a642526c229a
https://github.com/WebKit/WebKit/commit/103f05d044f0b05b0497833dba83a642526c229a
Author: Yusuke Suzuki <[email protected]>
Date: 2024-04-26 (Fri, 26 Apr 2024)
Changed paths:
M Source/JavaScriptCore/bytecode/AccessCase.cpp
M Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp
Log Message:
-----------
[JSC] Remove use of Committed / Primordial state of AccessCase and cloning
cases only when it is Generated and having CallLinkInfo
https://bugs.webkit.org/show_bug.cgi?id=273276
rdar://127076206
Reviewed by Keith Miller.
This is a change towards making AccessCase just a constant feedback information
instead of having mutating state.
This patch removes effective use of Committed / Primordial state since we do
not care about them. Right now CallLinkInfo is tied to
AccessCase so we still need to know about Generated state and we need to clone
it. But we don't need to clone AccessCase when it doesn't
have CallLinkInfo inside it. So this patch removes this cloning for AccessCases
not holding CallLinkInfo*.
This is paving a path towards https://bugs.webkit.org/show_bug.cgi?id=156456.
Once CallLinkInfo* gets wiped from AccessCase, we can completely
remove (1) Generated state since AccessCase now just becomes immutable data and
(2) cloning feature since we no longer need this.
* Source/JavaScriptCore/bytecode/AccessCase.cpp:
(JSC::AccessCase::commit):
* Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp:
(JSC::doesJSCalls):
(JSC::InlineCacheCompiler::generateWithGuard):
(JSC::InlineCacheCompiler::generate):
(JSC::InlineCacheCompiler::regenerate):
Canonical link: https://commits.webkit.org/278051@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes