[webkit-changes] [WebKit/WebKit] 9eed86: [JSC] Fix Wasm extended op parsing

Yusuke Suzuki noreply at github.com
Mon Jan 9 20:36:41 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9eed8642acbe2ab17b51c3d0faa9ff4a7c4ad1e7
      https://github.com/WebKit/WebKit/commit/9eed8642acbe2ab17b51c3d0faa9ff4a7c4ad1e7
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2023-01-09 (Mon, 09 Jan 2023)

  Changed paths:
    M JSTests/wasm/spec-tests/binary-leb128.wast.js
    M Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h
    M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp
    M Source/JavaScriptCore/wasm/WasmFunctionParser.h
    M Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp
    M Source/JavaScriptCore/wasm/WasmOpcodeCounter.cpp
    M Source/JavaScriptCore/wasm/WasmOpcodeCounter.h
    M Source/JavaScriptCore/wasm/WasmSlowPaths.cpp
    M Source/JavaScriptCore/wasm/WasmTypeDefinition.h
    M Source/JavaScriptCore/wasm/generateWasmOpsHeader.py

  Log Message:
  -----------
  [JSC] Fix Wasm extended op parsing
https://bugs.webkit.org/show_bug.cgi?id=250173
rdar://problem/103936859

Reviewed by Keith Miller.

This patch fixes wasm extended op parsing.

1. The payload of the Wasm extended op should be parsed as a VarUint32. This fixes failing spec-test in binary-leb128.wast.js.
2. Wasm GC extended ops are inconsistently named. This patch fixes them.
3. Align Wasm SIMD extended op parsing code to the other extended op parsing code.

* JSTests/wasm/spec-tests/binary-leb128.wast.js:
* Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h:
(JSC::Wasm::ExpressionType>::addArrayGet):
* Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::addArrayGet):
* Source/JavaScriptCore/wasm/WasmFunctionParser.h:
(JSC::Wasm::FunctionParser<Context>::parseExpression):
(JSC::Wasm::FunctionParser<Context>::parseUnreachableExpression):
* Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp:
(JSC::Wasm::LLIntGenerator::addArrayGet):
* Source/JavaScriptCore/wasm/WasmSlowPaths.cpp:
(JSC::LLInt::WASM_SLOW_PATH_DECL):
* Source/JavaScriptCore/wasm/WasmTypeDefinition.h:
* Source/JavaScriptCore/wasm/generateWasmOpsHeader.py:

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




More information about the webkit-changes mailing list