Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2b1711fcb7c70e00cd95c8cce096d1a6af32a21d
      
https://github.com/WebKit/WebKit/commit/2b1711fcb7c70e00cd95c8cce096d1a6af32a21d
  Author: Justin Michaud <justin_mich...@apple.com>
  Date:   2022-12-13 (Tue, 13 Dec 2022)

  Changed paths:
    A JSTests/wasm/stress/simd-unreachable.js
    M Source/JavaScriptCore/wasm/WasmFunctionParser.h

  Log Message:
  -----------
  Fix WASM SIMD unreachable parsing.
https://bugs.webkit.org/show_bug.cgi?id=249190

Reviewed by Mark Lam.

The LLInt is responsible for validating SIMD modules. We do a really
strange (and totally incorrect) kind of lax validation for unreachable
code ostensibly to improve performance. For regular ops, this means we
do not do any pushing or popping from the stack.

This patch makes SIMD code act the same way, so that once we enter
reachable code again, the state of our expression stack is reasonable.

* JSTests/wasm/stress/simd-unreachable.js: Added.
(async test):
* Source/JavaScriptCore/wasm/WasmFunctionParser.h:
(JSC::Wasm::FunctionParser<Context>::simd):
(JSC::Wasm::FunctionParser<Context>::parseExpression):

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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to