[webkit-changes] [WebKit/WebKit] a11ede: Increase WASM SIMD test coverage.
Justin Michaud
noreply at github.com
Thu Dec 15 21:07:04 PST 2022
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: a11ede1047e4c83f9f3b73a65bd88764616203a4
https://github.com/WebKit/WebKit/commit/a11ede1047e4c83f9f3b73a65bd88764616203a4
Author: Justin Michaud <justin_michaud at apple.com>
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
More information about the webkit-changes
mailing list