Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 46375fbc5a6710ec3e2fd10848009e31b307b741 https://github.com/WebKit/WebKit/commit/46375fbc5a6710ec3e2fd10848009e31b307b741 Author: David Degazio <d_dega...@apple.com> Date: 2023-02-14 (Tue, 14 Feb 2023)
Changed paths: M Source/JavaScriptCore/Sources.txt M Source/JavaScriptCore/assembler/MacroAssemblerX86Common.h M Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h M Source/JavaScriptCore/runtime/OptionsList.h M Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp A Source/JavaScriptCore/wasm/WasmBBQJIT.cpp A Source/JavaScriptCore/wasm/WasmBBQJIT.h M Source/JavaScriptCore/wasm/WasmBBQPlan.cpp M Source/JavaScriptCore/wasm/WasmFunctionParser.h M Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp M Source/WTF/wtf/PlatformEnable.h M Source/WTF/wtf/SmallSet.h Log Message: ----------- Pass core WebAssembly spec tests on ARM64 with single-pass WebAssembly baseline JIT https://bugs.webkit.org/show_bug.cgi?id=250052 rdar://105421077 Reviewed by Yusuke Suzuki. Adds a new single-pass baseline JIT implementation for WebAssembly, the single-pass BBQ JIT. The main goal of this new compiler is to compile substantially faster than the existing Air tier, while offering comparable levels of generated code performance. This should help us start up considerably faster on large WASM programs. This is the initial commit of this feature, and the new baseline is only partially complete. Currently, it should pass all the core spec tests on ARM64, but there are some remaining issues on other platforms, some failures on the full stress tests, and missing support for some key features like SIMD. As such, it's being landed disabled by default, behind the new '--useSinglePassBBQJIT' flag. * Source/JavaScriptCore/Sources.txt: * Source/JavaScriptCore/runtime/OptionsList.h: * Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h: (JSC::Wasm::ExpressionType>::getGlobal): (JSC::Wasm::parseAndCompileAirImpl): * Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp: (JSC::Wasm::parseAndCompileB3): * Source/JavaScriptCore/wasm/WasmBBQJIT.cpp: Added. * Source/JavaScriptCore/wasm/WasmBBQJIT.h: Added. * Source/JavaScriptCore/wasm/WasmBBQPlan.cpp: (JSC::Wasm::BBQPlan::dumpDisassembly): (JSC::Wasm::BBQPlan::work): (JSC::Wasm::BBQPlan::compileFunction): (JSC::Wasm::BBQPlan::didCompleteCompilation): * Source/JavaScriptCore/wasm/WasmFunctionParser.h: (JSC::Wasm::FunctionParser::typeOfLocal const): Canonical link: https://commits.webkit.org/260260@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes