[webkit-changes] [WebKit/WebKit] b2062f: Update wasm threads proposal tests and fix cmpxchg...

Commit Queue noreply at github.com
Thu Nov 16 08:40:05 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b2062fb65324b2f5b903e9762e061533b48b26f8
      https://github.com/WebKit/WebKit/commit/b2062fb65324b2f5b903e9762e061533b48b26f8
  Author: Max Rottenkolber <maximilian at igalia.com>
  Date:   2023-11-16 (Thu, 16 Nov 2023)

  Changed paths:
    A JSTests/wasm/spec-tests/atomic.wast.js
    M JSTests/wasm/spec-tests/binary-leb128.wast.js
    M JSTests/wasm/spec-tests/binary.wast.js
    M JSTests/wasm/spec-tests/br_table.wast.js
    M JSTests/wasm/spec-tests/elem.wast.js
    M JSTests/wasm/spec-tests/float_literals.wast.js
    M JSTests/wasm/threads-spec-tests/atomic-signed.wast.js
    M Source/JavaScriptCore/llint/InPlaceInterpreter.asm
    M Source/JavaScriptCore/llint/WebAssembly32_64.asm
    M Source/JavaScriptCore/llint/WebAssembly64.asm
    M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp
    M Source/JavaScriptCore/wasm/WasmBBQJIT.cpp

  Log Message:
  -----------
  Update wasm threads proposal tests and fix cmpxchg_u (edited)
https://bugs.webkit.org/show_bug.cgi?id=263292
rdar://117102231

Reviewed by Justin Michaud and Yusuke Suzuki.

In https://github.com/WebAssembly/threads/issues/195, it was documented
that JSC implements cmpxchg_u without wrapping the expected value.

Previously, the spec tests and reference interpreter followed this interpretation,
but the spec text, SpiderMonkey and v8 did the wrapping.

The spec tests were updated, and this new behaviour is simpler anyway,
so let's just do it.

* JSTests/wasm/spec-tests/atomic.wast.js: Added.
* JSTests/wasm/spec-tests/binary-leb128.wast.js:
* JSTests/wasm/spec-tests/binary.wast.js:
* JSTests/wasm/spec-tests/br_table.wast.js:
* JSTests/wasm/spec-tests/elem.wast.js:
* JSTests/wasm/spec-tests/float_literals.wast.js:
* JSTests/wasm/threads-spec-tests/atomic-signed.wast.js:
* Source/JavaScriptCore/llint/WebAssembly32_64.asm:
* Source/JavaScriptCore/llint/WebAssembly64.asm:
* Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::emitAtomicCompareExchange):
* Source/JavaScriptCore/wasm/WasmBBQJIT.cpp:
(JSC::Wasm::BBQJIT::emitAtomicCompareExchange):

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




More information about the webkit-changes mailing list