Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b9c0ed5b8c51f209410cbc18059d00add9fce06e
https://github.com/WebKit/WebKit/commit/b9c0ed5b8c51f209410cbc18059d00add9fce06e
Author: Kai Tamkun <[email protected]>
Date: 2026-09-11 (Fri, 11 Sep 2026)
Changed paths:
M Source/JavaScriptCore/llint/LLIntExceptions.h
M Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
M Source/JavaScriptCore/llint/LowLevelInterpreter.asm
M Source/JavaScriptCore/llint/LowLevelInterpreter64.asm
M Source/JavaScriptCore/runtime/CommonSlowPaths.cpp
Log Message:
-----------
[JSC] Throwing an exception causes a CPA2 failure in LLInt slow paths
https://bugs.webkit.org/show_bug.cgi?id=323984
rdar://185182086
Reviewed by Keith Miller.
On CPA2-supporting architectures, we need to bypass the reconstruction of PC
in LLInt when an exception is thrown in a slow path. This patch does this by
introducing a sentinel value (all ones) returned in r1 that we test for to
jump straight to the throw trampoline when necessary.
No new tests because this can't be tested in software.
* Source/JavaScriptCore/llint/LLIntExceptions.h:
(JSC::LLInt::exceptionSignal):
* Source/JavaScriptCore/llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* Source/JavaScriptCore/llint/LowLevelInterpreter.asm:
* Source/JavaScriptCore/llint/LowLevelInterpreter64.asm:
* Source/JavaScriptCore/runtime/CommonSlowPaths.cpp:
Canonical link: https://commits.webkit.org/320973@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications