Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7ff1104e4d0bc8fa3f382aa055415f27f60d3574
https://github.com/WebKit/WebKit/commit/7ff1104e4d0bc8fa3f382aa055415f27f60d3574
Author: Andrew Fryer <[email protected]>
Date: 2026-08-10 (Mon, 10 Aug 2026)
Changed paths:
M Source/JavaScriptCore/bytecode/GetByStatus.cpp
M Source/JavaScriptCore/bytecode/GetByStatus.h
M Source/JavaScriptCore/bytecode/PutByStatus.cpp
M Source/JavaScriptCore/bytecode/PutByStatus.h
M Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
Log Message:
-----------
Avoid repeated OSR exits in op_get_from_scope and op_put_to_scope
https://bugs.webkit.org/show_bug.cgi?id=320802
rdar://183815105
Reviewed by Keith Miller.
The GlobalProperty paths of op_get_from_scope and op_put_to_scope
resolve their status with GetByStatus/PutByStatus computeFor overloads
that don't check OSR exit profiles because they're designed for
AbstractInterpreter where we've already checked.
Add computeFor overloads for DFG parser that check hasBadCacheExitSite()
so we'll emit a generic IC instead of speculating and failing repeatedly.
* Source/JavaScriptCore/bytecode/GetByStatus.cpp:
(JSC::GetByStatus::computeFor):
* Source/JavaScriptCore/bytecode/GetByStatus.h:
* Source/JavaScriptCore/bytecode/PutByStatus.cpp:
(JSC::PutByStatus::computeFor):
* Source/JavaScriptCore/bytecode/PutByStatus.h:
* Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
Canonical link: https://commits.webkit.org/318918@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications