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

Reply via email to