Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 26868df946342191697031000d7c69d062e29193
https://github.com/WebKit/WebKit/commit/26868df946342191697031000d7c69d062e29193
Author: Cole Carley <[email protected]>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
A JSTests/wasm/stress/memory64-bulk-memory.js
A JSTests/wasm/stress/memory64-grow-and-size.js
A JSTests/wasm/stress/memory64-load-and-store.js
M Source/JavaScriptCore/llint/InPlaceInterpreter64.asm
M Source/JavaScriptCore/runtime/OptionsList.h
M Source/JavaScriptCore/wasm/WasmFunctionIPIntMetadataGenerator.cpp
M Source/JavaScriptCore/wasm/WasmFunctionIPIntMetadataGenerator.h
M Source/JavaScriptCore/wasm/WasmFunctionParser.h
M Source/JavaScriptCore/wasm/WasmIPIntGenerator.cpp
M Source/JavaScriptCore/wasm/WasmIPIntSlowPaths.cpp
M Source/JavaScriptCore/wasm/WasmIPIntSlowPaths.h
M Source/JavaScriptCore/wasm/WasmMemory.cpp
M Source/JavaScriptCore/wasm/WasmMemory.h
M Source/JavaScriptCore/wasm/WasmMemoryInformation.cpp
M Source/JavaScriptCore/wasm/WasmMemoryInformation.h
M Source/JavaScriptCore/wasm/WasmOperationsInlines.h
M Source/JavaScriptCore/wasm/WasmSectionParser.cpp
M Source/JavaScriptCore/wasm/WasmSectionParser.h
M Source/JavaScriptCore/wasm/js/JSWebAssemblyInstance.cpp
M Source/JavaScriptCore/wasm/js/JSWebAssemblyInstance.h
Log Message:
-----------
Add support for Memory64 in WebAssembly in IPInt Tier
https://bugs.webkit.org/show_bug.cgi?id=300539
rdar://162406385
Reviewed by Keith Miller.
This patch allows the WasmFunctionParser to accept 64 bit pointers while
performing
memory operations. This includes all the load and store operations, the bulk
memory
operations, and the size and grow operations.
Test: JSTests/wasm/stress/load-and-store-with-64-bit-address.js
* JSTests/wasm/stress/memory64-bulk-memory.js: Added.
(async test):
* JSTests/wasm/stress/memory64-grow-and-size.js: Added.
(async test):
(async testGrowByZero):
(async testNoMaximum):
(async testLargeGrowValue):
* JSTests/wasm/stress/memory64-load-and-store.js: Added.
(getWasmTypeWidth):
(let.wat.module):
(join):
(async test):
* Source/JavaScriptCore/llint/InPlaceInterpreter64.asm:
* Source/JavaScriptCore/runtime/OptionsList.h:
* Source/JavaScriptCore/wasm/WasmFunctionIPIntMetadataGenerator.cpp:
(JSC::Wasm::FunctionIPIntMetadataGenerator::addLEB128ConstantInt64AndLength):
* Source/JavaScriptCore/wasm/WasmFunctionIPIntMetadataGenerator.h:
* Source/JavaScriptCore/wasm/WasmFunctionParser.h:
(JSC::Wasm::FunctionParser<Context>::load):
(JSC::Wasm::FunctionParser<Context>::store):
(JSC::Wasm::FunctionParser<Context>::parseExpression):
(JSC::Wasm::FunctionParser<Context>::parseUnreachableExpression):
* Source/JavaScriptCore/wasm/WasmIPIntGenerator.cpp:
(JSC::Wasm::IPIntGenerator::load):
(JSC::Wasm::IPIntGenerator::store):
* Source/JavaScriptCore/wasm/WasmIPIntSlowPaths.cpp:
(JSC::IPInt::WASM_IPINT_EXTERN_CPP_DECL):
* Source/JavaScriptCore/wasm/WasmIPIntSlowPaths.h:
* Source/JavaScriptCore/wasm/WasmMemory.cpp:
(JSC::Wasm::Memory::init):
* Source/JavaScriptCore/wasm/WasmMemory.h:
* Source/JavaScriptCore/wasm/WasmMemoryInformation.cpp:
(JSC::Wasm::MemoryInformation::MemoryInformation):
* Source/JavaScriptCore/wasm/WasmMemoryInformation.h:
(JSC::Wasm::MemoryInformation::isMemory64 const):
* Source/JavaScriptCore/wasm/WasmOperationsInlines.h:
(JSC::Wasm::memoryInit):
* Source/JavaScriptCore/wasm/WasmSectionParser.cpp:
(JSC::Wasm::limitsFlagIsValid):
(JSC::Wasm::SectionParser::parseResizableLimits):
(JSC::Wasm::SectionParser::parseTableHelper):
(JSC::Wasm::SectionParser::parseMemoryHelper):
* Source/JavaScriptCore/wasm/WasmSectionParser.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyInstance.cpp:
(JSC::JSWebAssemblyInstance::memoryInit):
* Source/JavaScriptCore/wasm/js/JSWebAssemblyInstance.h:
Canonical link: https://commits.webkit.org/304075@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications