[webkit-changes] [WebKit/WebKit] ad1736: [JSC][32bit] Enable wasm signaling memory

Xan López noreply at github.com
Fri Feb 17 17:33:21 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ad17368e4bdbc6099f02e6c3871b05926893bcea
      https://github.com/WebKit/WebKit/commit/ad17368e4bdbc6099f02e6c3871b05926893bcea
  Author: Xan Lopez <xan at igalia.com>
  Date:   2023-02-17 (Fri, 17 Feb 2023)

  Changed paths:
    M JSTests/wasm/stress/shared-memory-errors.js
    M JSTests/wasm/stress/shared-wasm-memory-buffer.js
    M Source/JavaScriptCore/runtime/BufferMemoryHandle.cpp
    M Source/JavaScriptCore/runtime/Options.cpp
    M Source/JavaScriptCore/wasm/WasmMemory.cpp
    M Source/WTF/wtf/PlatformEnable.h

  Log Message:
  -----------
  [JSC][32bit] Enable wasm signaling memory
https://bugs.webkit.org/show_bug.cgi?id=244843

Reviewed by Yusuke Suzuki.

Enable wasm signaling memory on 32bit architectures. The only thing we
need to do is to limit the "fast mapped memory" size to 2GB, that way
we can fit that plus the redzone pages inside a 32bit pointer. This is
OK because our memory limit was already 2GB anyway
(MAX_ARRAY_BUFFER_SIZE).

* JSTests/wasm.yaml: unskip shared memory tests on arm.
* JSTests/wasm/stress/shared-memory-errors.js: ditto.
* JSTests/wasm/stress/shared-wasm-memory-buffer.js: ditto.
* Source/JavaScriptCore/wasm/WasmMemory.cpp: use a fast memory mapped
* size of 2GB for 32bit architectures.
* (JSC::Wasm::Memory::fastMappedBytes):
* Source/WTF/wtf/PlatformEnable.h: enable wasm memory signaling on
* 32bit.
* Source/JavaScriptCore/runtime/BufferMemoryHandle.cpp:
(JSC::BufferMemoryHandle::fastMappedRedzoneBytes):
* Source/JavaScriptCore/runtime/Options.cpp:
(JSC::Options::notifyOptionsChanged):

Canonical link: https://commits.webkit.org/260483@main




More information about the webkit-changes mailing list