Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a11ede1047e4c83f9f3b73a65bd88764616203a4
      
https://github.com/WebKit/WebKit/commit/a11ede1047e4c83f9f3b73a65bd88764616203a4
  Author: Justin Michaud <[email protected]>
  Date:   2022-12-15 (Thu, 15 Dec 2022)

  Changed paths:
    M JSTests/wasm/assert.js
    M JSTests/wasm/stress/dont-stack-overflow-in-air.js
    M JSTests/wasm/stress/simd-const-spill.js
    M JSTests/wasm/stress/simd-const.js
    A JSTests/wasm/stress/simd-exception.js
    M JSTests/wasm/stress/simd-kitchen-sink.js
    M JSTests/wasm/stress/simd-load.js
    A JSTests/wasm/stress/simd-osr.js
    M JSTests/wasm/stress/simd-register-allocation.js
    M JSTests/wasm/stress/simd-return-value-alignment.js
    A JSTests/wasm/stress/simd-tiny-loop.js
    M JSTests/wasm/v8/exceptions-simd.js
    M JSTests/wasm/v8/liftoff-simd-params.js
    M JSTests/wasm/v8/multi-value-simd.js
    M JSTests/wasm/v8/regress/regress-10309.js
    M JSTests/wasm/v8/regress/regress-1054466.js
    M JSTests/wasm/v8/regress/regress-1065599.js
    M JSTests/wasm/v8/regress/regress-1070078.js
    M JSTests/wasm/v8/regress/regress-1081030.js
    M JSTests/wasm/v8/regress/regress-10831.js
    M JSTests/wasm/v8/regress/regress-1111522.js
    M JSTests/wasm/v8/regress/regress-1112124.js
    M JSTests/wasm/v8/regress/regress-1116019.js
    M JSTests/wasm/v8/regress/regress-1124885.js
    M JSTests/wasm/v8/regress/regress-1132461.js
    M JSTests/wasm/v8/regress/regress-1161555.js
    M JSTests/wasm/v8/regress/regress-1161654.js
    M JSTests/wasm/v8/regress/regress-1161954.js
    M JSTests/wasm/v8/regress/regress-1165966.js
    M JSTests/wasm/v8/regress/regress-1179182.js
    M JSTests/wasm/v8/regress/regress-1187831.js
    M JSTests/wasm/v8/regress/regress-1188975.js
    M JSTests/wasm/v8/regress/regress-1199662.js
    M JSTests/wasm/v8/regress/regress-1231950.js
    M JSTests/wasm/v8/regress/regress-1242300.js
    M JSTests/wasm/v8/regress/regress-1242689.js
    M JSTests/wasm/v8/regress/regress-1264462.js
    M JSTests/wasm/v8/regress/regress-1271244.js
    M JSTests/wasm/v8/regress/regress-1271456.js
    M JSTests/wasm/v8/regress/regress-1271538.js
    M JSTests/wasm/v8/regress/regress-1282224.js
    M JSTests/wasm/v8/regress/regress-1283042.js
    M JSTests/wasm/v8/regress/regress-1283395.js
    M JSTests/wasm/v8/regress/regress-1284980.js
    M JSTests/wasm/v8/regress/regress-1286253.js
    M JSTests/wasm/v8/regress/regress-1289678.js
    M JSTests/wasm/v8/regress/regress-1290079.js
    M JSTests/wasm/v8/regress/regress-9447.js
    M JSTests/wasm/v8/regress/regress-crbug-1338980.js
    M JSTests/wasm/v8/regress/regress-crbug-1355070.js
    M JSTests/wasm/v8/regress/regress-crbug-1356718.js
    M JSTests/wasm/v8/simd-call.js
    M JSTests/wasm/v8/simd-errors.js
    M JSTests/wasm/v8/simd-globals.js
    M JSTests/wasm/v8/simd-i64x2-mul.js
    M Source/JavaScriptCore/b3/B3Procedure.cpp
    M Source/JavaScriptCore/b3/B3Procedure.h
    M Source/JavaScriptCore/runtime/Options.cpp
    M Source/JavaScriptCore/runtime/OptionsList.h
    M Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h
    M Source/JavaScriptCore/wasm/WasmSlowPaths.cpp
    M Tools/Scripts/run-jsc-stress-tests

  Log Message:
  -----------
  Increase WASM SIMD test coverage.
https://bugs.webkit.org/show_bug.cgi?id=249357

Reviewed by Yusuke Suzuki.

Increase simd test coverage:

1) Add a new testing mode to force every function to be conservative w.r.t. 
treating floating point registers as vectors
2) Allow tier-up directly to OMG for SIMD functions
3) Remove extra test options implied when using SIMD. Note that we now assume 
all functions might use SIMD if the LLInt is disabled.
4) Add new (currently failing) tests: simd-exception.js, simd-osr.js, 
simd-tiny-loop.js. Note that these all pass in v8.
5) Update dont-stack-overflow-in-air.js. It uses f64 locals, which become 
128-bit when the LLInt is disabled. This is a
   real regression introduced by this patch, but this mode is not very 
important for performance so we force the LLInt to be enabled in this mode.

* JSTests/wasm/assert.js:
* JSTests/wasm/stress/simd-const-spill.js:
* JSTests/wasm/stress/simd-const.js:
* JSTests/wasm/stress/simd-exception.js: Added.
(let.wat.module.import.string_appeared_here.string_appeared_here.tag.e.i32.param.i32.func.test_throw.export.string_appeared_here.param.sz.i32.local.i.i32.local.i.i32.const.0.loop.loop.local.i.i32.const.1.i32.add.local.i.local.i.local.sz.i32.eq.then.throw.e.i32.local.i.local.i.i32.const.1000.i32.lt_s.br_if.loop.func.test_catch.export.string_appeared_here.result.i32.v128.const.i32x4.1337.1337.1337.1337.try.call.test_throw.i32.const.500.catch.e.i32.i32.const.500.i32.ne.then.unreachable.i32x4.extract_lane.3.async
 test):
* JSTests/wasm/stress/simd-kitchen-sink.js:
* JSTests/wasm/stress/simd-load.js:
* JSTests/wasm/stress/simd-register-allocation.js:
* JSTests/wasm/stress/simd-return-value-alignment.js:
* JSTests/wasm/v8/exceptions-simd.js:
(TestThrowS128Default):
* JSTests/wasm/v8/liftoff-simd-params.js:
* JSTests/wasm/v8/multi-value-simd.js:
* JSTests/wasm/v8/regress/regress-10309.js:
* JSTests/wasm/v8/regress/regress-1054466.js:
* JSTests/wasm/v8/regress/regress-1065599.js:
* JSTests/wasm/v8/regress/regress-1070078.js:
* JSTests/wasm/v8/regress/regress-1081030.js:
* JSTests/wasm/v8/regress/regress-10831.js:
* JSTests/wasm/v8/regress/regress-1111522.js:
* JSTests/wasm/v8/regress/regress-1112124.js:
* JSTests/wasm/v8/regress/regress-1116019.js:
* JSTests/wasm/v8/regress/regress-1124885.js:
* JSTests/wasm/v8/regress/regress-1132461.js:
* JSTests/wasm/v8/regress/regress-1161555.js:
* JSTests/wasm/v8/regress/regress-1161654.js:
* JSTests/wasm/v8/regress/regress-1161954.js:
* JSTests/wasm/v8/regress/regress-1165966.js:
* JSTests/wasm/v8/regress/regress-1179182.js:
* JSTests/wasm/v8/regress/regress-1187831.js:
* JSTests/wasm/v8/regress/regress-1188975.js:
* JSTests/wasm/v8/regress/regress-1199662.js:
* JSTests/wasm/v8/regress/regress-1231950.js:
* JSTests/wasm/v8/regress/regress-1242300.js:
* JSTests/wasm/v8/regress/regress-1242689.js:
* JSTests/wasm/v8/regress/regress-1264462.js:
* JSTests/wasm/v8/regress/regress-1271244.js:
* JSTests/wasm/v8/regress/regress-1271456.js:
* JSTests/wasm/v8/regress/regress-1271538.js:
* JSTests/wasm/v8/regress/regress-1282224.js:
* JSTests/wasm/v8/regress/regress-1283042.js:
* JSTests/wasm/v8/regress/regress-1283395.js:
* JSTests/wasm/v8/regress/regress-1284980.js:
* JSTests/wasm/v8/regress/regress-1286253.js:
* JSTests/wasm/v8/regress/regress-1289678.js:
* JSTests/wasm/v8/regress/regress-1290079.js:
* JSTests/wasm/v8/regress/regress-9447.js:
* JSTests/wasm/v8/regress/regress-crbug-1338980.js:
* JSTests/wasm/v8/regress/regress-crbug-1355070.js:
* JSTests/wasm/v8/regress/regress-crbug-1356718.js:
* JSTests/wasm/v8/simd-call.js:
* JSTests/wasm/v8/simd-errors.js:
* JSTests/wasm/v8/simd-globals.js:
* JSTests/wasm/v8/simd-i64x2-mul.js:
* Source/JavaScriptCore/b3/B3Procedure.h:
(JSC::B3::Procedure::usesSIMD const):
* Source/JavaScriptCore/runtime/Options.cpp:
(JSC::Options::notifyOptionsChanged):
* Source/JavaScriptCore/runtime/OptionsList.h:
* Source/JavaScriptCore/wasm/WasmSlowPaths.cpp:
(JSC::LLInt::jitCompileSIMDFunction):
* Tools/Scripts/run-jsc-stress-tests:

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to