Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b7b59d4334fc96b77893d2fc4e498bd593ba9d66 https://github.com/WebKit/WebKit/commit/b7b59d4334fc96b77893d2fc4e498bd593ba9d66 Author: Daniel Liu <danl...@umich.edu> Date: 2024-10-02 (Wed, 02 Oct 2024)
Changed paths: A JSTests/wasm/ipint-tests/ipint-test-call-add13.js M Source/JavaScriptCore/llint/InPlaceInterpreter.h M Source/JavaScriptCore/llint/InPlaceInterpreter32_64.asm M Source/JavaScriptCore/llint/InPlaceInterpreter64.asm M Source/JavaScriptCore/llint/WebAssembly.asm M Source/JavaScriptCore/wasm/WasmIPIntGenerator.cpp M Source/JavaScriptCore/wasm/WasmIPIntGenerator.h M Source/JavaScriptCore/wasm/WasmIPIntSlowPaths.cpp M Tools/lldb/debug_ipint.py Log Message: ----------- Fix bugs in IPInt metadata generation and execution https://bugs.webkit.org/show_bug.cgi?id=280711 rdar://137081917 Reviewed by Yusuke Suzuki. This patch goes through and resolves a wide variety of edge cases in IPInt exposed by the spec tests, stress tests, and JetStream2. JetStream2.0 now runs with IPInt enabled, and we pass all core spec tests besides the new exception spec. * JSTests/wasm/ipint-tests/ipint-test-call-add13.js: Added. (from.string_appeared_here.import.as.assert.from.string_appeared_here.let.wat.module.func.add.export.string_appeared_here.param.i32.i32.i32.i32.i32.i32.i32.i32.i32.i32.i32.i32.i32.result.i32.local.0.local.1.i32.add.local.2.i32.add.local.3.i32.add.local.4.i32.add.local.5.i32.add.local.6.i32.add.local.7.i32.add.local.8.i32.add.local.9.i32.add.local.10.i32.add.local.11.i32.add.local.12.i32.add.return.func.export.string_appeared_here.param.i32.result.i32.local.0.local.0.local.0.local.0.local.0.local.0.local.0.local.0.local.0.local.0.local.0.local.0.local.0.call.add.return.async test): * Source/JavaScriptCore/llint/InPlaceInterpreter.h: * Source/JavaScriptCore/llint/InPlaceInterpreter32_64.asm: * Source/JavaScriptCore/llint/InPlaceInterpreter64.asm: * Source/JavaScriptCore/wasm/WasmIPIntGenerator.cpp: (JSC::Wasm::IPIntGenerator::tryToResolveBranchTarget): (JSC::Wasm::IPIntGenerator::coalesceControlFlow): (JSC::Wasm::IPIntGenerator::addBlock): (JSC::Wasm::IPIntGenerator::addIf): (JSC::Wasm::IPIntGenerator::addElse): (JSC::Wasm::IPIntGenerator::addElseToUnreachable): (JSC::Wasm::IPIntGenerator::addBranch): (JSC::Wasm::IPIntGenerator::addSwitch): (JSC::Wasm::IPIntGenerator::addEndToUnreachable): (JSC::Wasm::IPIntGenerator::addCallCommonData): * Source/JavaScriptCore/wasm/WasmIPIntGenerator.h: * Source/JavaScriptCore/wasm/WasmIPIntSlowPaths.cpp: (JSC::IPInt::WASM_IPINT_EXTERN_CPP_DECL): (JSC::IPInt::doWasmCall): * Source/JavaScriptCore/wasm/js/WebAssemblyFunction.cpp: (JSC::JSC_DEFINE_HOST_FUNCTION): Canonical link: https://commits.webkit.org/284564@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes