Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 4e83acc55657a5a86f1af2389e1b88ddf84913f3 https://github.com/WebKit/WebKit/commit/4e83acc55657a5a86f1af2389e1b88ddf84913f3 Author: Mikhail R. Gadelha <mikh...@igalia.com> Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths: M Source/JavaScriptCore/assembler/ARMv7Assembler.h M Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h M Source/JavaScriptCore/wasm/WasmBBQJIT.h M Source/JavaScriptCore/wasm/WasmBBQJIT32_64.cpp Log Message: ----------- [JSC] Fix an !binding.isScratch() assertion failure on 32-bit https://bugs.webkit.org/show_bug.cgi?id=298157 Reviewed by Justin Michaud. In 32-bit, we use scratch fp regs to check the bounds of the input of in the truncSaturated and truncTrapping functions, before emitting the right ccall. However, the scratch fp registers are still bound when we emit the ccall, which leads to this assertion failure. These assertions only fail in debug mode and still provide the correct result in release mode because these fp registers are not used in the emitted C call. This PR implements the missing JIT calls for ARMv7 so we don't have to emit the C calls. * Source/JavaScriptCore/assembler/ARMv7Assembler.h: (JSC::ARMv7Assembler::vcmpz): (JSC::ARMv7Assembler::vmla): * Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h: (JSC::MacroAssemblerARMv7::branchFloatWithZero): (JSC::MacroAssemblerARMv7::branchDoubleWithZero): (JSC::MacroAssemblerARMv7::convertDoubleToUint64): (JSC::MacroAssemblerARMv7::truncateDoubleToUint64): (JSC::MacroAssemblerARMv7::truncateDoubleToInt64): (JSC::MacroAssemblerARMv7::truncateFloatToUint64): (JSC::MacroAssemblerARMv7::truncateFloatToInt64): * Source/JavaScriptCore/wasm/WasmBBQJIT.h: * Source/JavaScriptCore/wasm/WasmBBQJIT32_64.cpp: (JSC::Wasm::BBQJITImpl::BBQJIT::truncInBounds): (JSC::Wasm::BBQJITImpl::BBQJIT::truncTrapping): (JSC::Wasm::BBQJITImpl::BBQJIT::truncSaturated): Canonical link: https://commits.webkit.org/299853@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