Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 06ff018c22a0dfacae6584f2cc7d51568947ff6c
      
https://github.com/WebKit/WebKit/commit/06ff018c22a0dfacae6584f2cc7d51568947ff6c
  Author: Devin Rousso <[email protected]>
  Date:   2026-06-23 (Tue, 23 Jun 2026)

  Changed paths:
    A 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-exact-case-insensitive-expected.txt
    A 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-exact-case-insensitive.html
    A 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-exact-case-sensitive-expected.txt
    A 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-exact-case-sensitive.html
    A 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-regex-case-insensitive-expected.txt
    A 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-regex-case-insensitive.html
    A 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-regex-case-sensitive-expected.txt
    A 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-regex-case-sensitive.html
    M 
LayoutTests/inspector/debugger/symbolic-breakpoint-native-js-exact-case-insensitive.html
    M Source/JavaScriptCore/inspector/agents/InspectorDebuggerAgent.cpp
    M Source/JavaScriptCore/jit/JITCode.cpp
    M Source/JavaScriptCore/jit/JITCode.h

  Log Message:
  -----------
  Web Inspector: Debugger: symbolic breakpoints should work with intrinsic 
functions
https://bugs.webkit.org/show_bug.cgi?id=243994
<rdar://problem/99037335>

Reviewed by Patrick Angle and Yusuke Suzuki.

Symbolic Breakpoints already work with `NativeExecutable` by swapping the JIT 
thunk with an equivalent version that talks to the `Debugger`.

Specifically, there's a code pointer each on the `NativeJITCode` and 
`NativeExecutable`.

Intrinsics, however, have an additional code pointer that must be swapped in 
`DirectJITCode`.

* Source/JavaScriptCore/jit/JITCode.h:
(JSC::JITCode::canSwapCodePtrWithArityCheckForDebugger const): Added.
* Source/JavaScriptCore/jit/JITCode.cpp:
(JSC::JITCode::swapCodePtrWithArityCheckForDebugger): Added.
(JSC::JITCodeWithCodeRef::swapCodeRefForDebugger):
(JSC::DirectJITCode::swapCodePtrWithArityCheckForDebugger): Added.
* Source/JavaScriptCore/inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::ReplacedThunk::~ReplacedThunk):
(Inspector::InspectorDebuggerAgent::didCreateNativeExecutable):

* 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-exact-case-insensitive.html:
 Added.
* 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-exact-case-insensitive-expected.txt:
 Added.
* 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-exact-case-sensitive.html:
 Added.
* 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-exact-case-sensitive-expected.txt:
 Added.
* 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-regex-case-insensitive.html:
 Added.
* 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-regex-case-insensitive-expected.txt:
 Added.
* 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-regex-case-sensitive.html:
 Added.
* 
LayoutTests/inspector/debugger/symbolic-breakpoint-intrinsic-js-regex-case-sensitive-expected.txt:
 Added.

* 
LayoutTests/inspector/debugger/symbolic-breakpoint-native-js-exact-case-insensitive.html:

Drive-by: Fix incorrect symbol name.
Canonical link: https://commits.webkit.org/315713@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to