Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 714bf5b1e05ac3494a1384f93a83246abe857518
      
https://github.com/WebKit/WebKit/commit/714bf5b1e05ac3494a1384f93a83246abe857518
  Author: Kai Tamkun <[email protected]>
  Date:   2026-04-29 (Wed, 29 Apr 2026)

  Changed paths:
    A JSTests/wasm/stress/call-indirect-exceptions.js
    M Source/JavaScriptCore/llint/InPlaceInterpreter64.asm

  Log Message:
  -----------
  [JSC] Delay PC advancement until after operationCallMayThrow in IPInt
https://bugs.webkit.org/show_bug.cgi?id=305148
rdar://166602356

Reviewed by Yusuke Suzuki.

Currently, some IPInt instructions will advance the PC before invoking
operationCallMayThrow. Because that invocation will save the call site index,
this means that the call site index of the next instruction will be saved
instead of the call site index of the instruction currently being executed.
If the call does throw, it will then choose a handler based on the index of
the next instruction. Therefore, it's necessary to move the PC advancement
instructions past the invocation of operationCallMayThrow.

Test: JSTests/wasm/stress/call-indirect-exceptions.js

* JSTests/wasm/stress/call-indirect-exceptions.js: Added.
(async test): Tests that exceptions are properly handled.
* Source/JavaScriptCore/llint/InPlaceInterpreter64.asm: Delay PC advancement

Originally-landed-as: 305413.149@safari-7624-branch (63358b77f417). 
rdar://174957939
Canonical link: https://commits.webkit.org/312338@main



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

Reply via email to