Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5c29435c27adc9f6de7c9a5cbf565367bf08f89b
https://github.com/WebKit/WebKit/commit/5c29435c27adc9f6de7c9a5cbf565367bf08f89b
Author: Yusuke Suzuki <[email protected]>
Date: 2024-06-26 (Wed, 26 Jun 2024)
Changed paths:
M Source/JavaScriptCore/jit/AssemblyHelpers.cpp
M Source/JavaScriptCore/jit/AssemblyHelpers.h
M Source/JavaScriptCore/jit/BaselineJITRegisters.h
M Source/JavaScriptCore/jit/JITCall.cpp
M Source/JavaScriptCore/jit/JITOpcodes.cpp
Log Message:
-----------
[JSC] Add inlined fast path for jfalse
https://bugs.webkit.org/show_bug.cgi?id=275891
rdar://130563487
Reviewed by Keith Miller.
We found that valueIsFalsey / valueIsTruthy are very costly in Baseline JIT.
We optimize them with the following things.
1. Inline some of hot path in Baseline JIT
2. We do not load JSGlobalObject until it becomes necessary.
* Source/JavaScriptCore/jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::branchIfValue):
* Source/JavaScriptCore/jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::branchIfTruthy):
(JSC::AssemblyHelpers::branchIfFalsey):
* Source/JavaScriptCore/jit/BaselineJITRegisters.h:
* Source/JavaScriptCore/jit/JITCall.cpp:
(JSC::JIT::emit_op_iterator_next):
* Source/JavaScriptCore/jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_jfalse):
(JSC::JIT::valueIsFalseyGenerator):
(JSC::JIT::valueIsTruthyGenerator):
Canonical link: https://commits.webkit.org/280394@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes