Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e7607367125042a0211b278c6a5cee43eb7fbdff
https://github.com/WebKit/WebKit/commit/e7607367125042a0211b278c6a5cee43eb7fbdff
Author: Justin Michaud <[email protected]>
Date: 2024-06-28 (Fri, 28 Jun 2024)
Changed paths:
M JSTests/microbenchmarks/wasm-cc-int-to-int.js
M JSTests/wasm/lowExecutableMemory/executable-memory-oom.js
A JSTests/wasm/stress/cc-double-to-double.js
A JSTests/wasm/stress/cc-f32-kitchen-sink.js
A JSTests/wasm/stress/cc-float-to-float.js
A JSTests/wasm/stress/cc-i32-kitchen-sink-neg.js
M JSTests/wasm/stress/cc-i32-kitchen-sink.js
A JSTests/wasm/stress/cc-i64-kitchen-sink-neg.js
A JSTests/wasm/stress/cc-i64-kitchen-sink.js
M JSTests/wasm/stress/cc-int-to-int-cross-module-with-exception.js
M JSTests/wasm/stress/cc-int-to-int-cross-module.js
M JSTests/wasm/stress/cc-int-to-int-jit-to-llint.js
M JSTests/wasm/stress/cc-int-to-int-memory.js
M JSTests/wasm/stress/cc-int-to-int-no-jit.js
M JSTests/wasm/stress/cc-int-to-int-tail-call.js
M JSTests/wasm/stress/cc-int-to-int.js
M Source/JavaScriptCore/interpreter/CallFrame.h
M Source/JavaScriptCore/interpreter/CallFrameInlines.h
M Source/JavaScriptCore/jit/FPRInfo.h
M Source/JavaScriptCore/jit/GPRInfo.h
M Source/JavaScriptCore/llint/InPlaceInterpreter.cpp
M Source/JavaScriptCore/llint/InPlaceInterpreter.h
M Source/JavaScriptCore/llint/WebAssembly.asm
M Source/JavaScriptCore/runtime/Options.cpp
M Source/JavaScriptCore/wasm/WasmBBQPlan.cpp
M Source/JavaScriptCore/wasm/WasmCallee.cpp
M Source/JavaScriptCore/wasm/WasmCallee.h
M Source/JavaScriptCore/wasm/WasmLLIntPlan.cpp
M Source/JavaScriptCore/wasm/WasmOMGPlan.cpp
M Source/JavaScriptCore/wasm/WasmOMGPlan.h
M Source/JavaScriptCore/wasm/WasmOperations.cpp
M Source/JavaScriptCore/wasm/WasmOperations.h
M Source/JavaScriptCore/wasm/js/WebAssemblyFunction.cpp
M Source/JavaScriptCore/wasm/js/WebAssemblyFunction.h
Log Message:
-----------
Add operation-based jitless wasm entry thunk
https://bugs.webkit.org/show_bug.cgi?id=275397
Reviewed by Yusuke Suzuki.
Previously, we tried to implement jitless wasm entry by interpreting
bytecode. It seems way easier to just call into cpp to prepare the frame
instead, and the performance difference should not be too big.
* JSTests/wasm/stress/cc-i32-kitchen-sink.js:
* JSTests/wasm/stress/cc-int-to-int-cross-module-with-exception.js:
* JSTests/wasm/stress/cc-int-to-int-cross-module.js:
* JSTests/wasm/stress/cc-int-to-int-jit-to-llint.js:
* JSTests/wasm/stress/cc-int-to-int-memory.js:
* JSTests/wasm/stress/cc-int-to-int-no-jit.js:
* JSTests/wasm/stress/cc-int-to-int-tail-call.js:
* JSTests/wasm/stress/cc-int-to-int.js:
* Source/JavaScriptCore/llint/WebAssembly.asm:
* Source/JavaScriptCore/wasm/WasmCallee.cpp:
(JSC::Wasm::JSEntrypointInterpreterCallee::JSEntrypointInterpreterCallee):
(JSC::Wasm::JSEntrypointInterpreterCallee::calleeSaveRegistersImpl):
* Source/JavaScriptCore/wasm/WasmCallee.h:
(JSC::Wasm::jsEntrypointMetadataForGPR): Deleted.
(JSC::Wasm::jsEntrypointMetadataForFPR): Deleted.
(JSC::Wasm::dumpJSEntrypointInterpreterCalleeMetadata): Deleted.
* Source/JavaScriptCore/wasm/WasmLLIntPlan.cpp:
(JSC::Wasm::LLIntPlan::tryCreateInterpretedJSToWasmCallee):
* Source/JavaScriptCore/wasm/WasmOperations.cpp:
(JSC::Wasm::JSC_DEFINE_NOEXCEPT_JIT_OPERATION):
* Source/JavaScriptCore/wasm/WasmOperations.h:
Canonical link: https://commits.webkit.org/280485@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