Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a72737234a62b10f0fa151606c3289c41fe61b9d
      
https://github.com/WebKit/WebKit/commit/a72737234a62b10f0fa151606c3289c41fe61b9d
  Author: Mark Lam <[email protected]>
  Date:   2024-06-02 (Sun, 02 Jun 2024)

  Changed paths:
    M JSTests/microbenchmarks/exceptions-simd.js
    M JSTests/microbenchmarks/interpreter-wasm.js
    M JSTests/microbenchmarks/memcpy-wasm-large.js
    M JSTests/microbenchmarks/memcpy-wasm-medium.js
    M JSTests/microbenchmarks/memcpy-wasm-small.js
    M JSTests/microbenchmarks/memcpy-wasm.js
    M JSTests/microbenchmarks/wasm-cc-int-to-int.js
    M JSTests/stress/gc-b3.js
    M JSTests/stress/hoist-get-wasm-exports.js
    M JSTests/stress/shared-wasm-memory-with-zero-byte.js
    M JSTests/wasm/stress/cc-int-to-int-cross-module-with-exception.js
    M JSTests/wasm/stress/cc-int-to-int-jit-to-llint.js
    M JSTests/wasm/stress/cc-int-to-int-no-jit.js
    M Tools/Scripts/run-javascriptcore-tests
    M Tools/Scripts/run-jsc-stress-tests

  Log Message:
  -----------
  Clean up selection of JSC stress tests for watchOS.
https://bugs.webkit.org/show_bug.cgi?id=275037
rdar://129139565

Reviewed by Yusuke Suzuki.

1. Add a --platform option to run-javascriptcore-tests so that we can simulate 
running the test
   selection of a specific target platform (though we're still running with the 
jsc shell of
   the host platform).  This is useful for debugging the test selection, and 
maybe even debugging
   test failure using the same test constraints of the target platform.

2. Fix up run-jsc-stress-tests to only run the default and bytecode-cache test 
modes on watchOS.

   Also clean up the way we omit wasm tests:
   a. there's no need to skip if !$jitTests.  Just skip unless $isWasmPlatform.
   b. currently, $isWasmPlatform is false if !$jitTests.  Let's just configure 
that upfront at
      the top.  If this dependency changes in the future, we won't have to 
change all the
      locations that check tries to skip wasm tests.
   c. add a runDefaultWasm() for running wasm tests instead of having them use 
runDefault().
   d. rename runHarnessTest() to runWasmHarnessTest().  It is only used for 
running wasm tests.
      So, let's give it a name that is less ambiguous, and accurately describes 
what it does.

3. Make sure that tests that are not in the JSTests/wasm directory are skipped 
unless $isWasmPlatform.
   This is because tests in these directories are not run with the wasm harness.

   Also skip them for the lockdown test mode.  Thought the target platform 
$isWasmPlatform, wasm
   support may be disabled at runtime due to lockdown mode.  So, these tests 
need to be skipped
   explicitly when run in that mode.

4. Now that we can skip tests based on $isWasmPlatform and $skipModes, we can 
do away with the
   `(typeof WebAssembly === "object")` hack that we used previously to keep 
wasm tests from failing
   when wasm is not supported.  The hack still allows the test to run and exit 
early if wasm is
   disabled.  This consumes test execution time that is precious especially on 
slower platforms
   like watchOS.  Skipping the relevant tests is the superior solution, and so 
we're switching to
   that.

5. Also fixed stress/gc-b3.js to be less chatty.

* JSTests/microbenchmarks/exceptions-simd.js:
* JSTests/microbenchmarks/interpreter-wasm.js:
* JSTests/microbenchmarks/memcpy-wasm-large.js:
(catch):
(typeof.WebAssembly.string_appeared_here.eq): Deleted.
(typeof.WebAssembly.string_appeared_here.try.const.1.new.WebAssembly.Instance.new.WebAssembly.Module.new.Uint8Array):
 Deleted.
(typeof.WebAssembly.string_appeared_here.catch): Deleted.
* JSTests/microbenchmarks/memcpy-wasm-medium.js:
(catch):
(typeof.WebAssembly.string_appeared_here.eq): Deleted.
(typeof.WebAssembly.string_appeared_here.try.const.1.new.WebAssembly.Instance.new.WebAssembly.Module.new.Uint8Array):
 Deleted.
(typeof.WebAssembly.string_appeared_here.catch): Deleted.
* JSTests/microbenchmarks/memcpy-wasm-small.js:
(catch):
(typeof.WebAssembly.string_appeared_here.eq): Deleted.
(typeof.WebAssembly.string_appeared_here.try.const.1.new.WebAssembly.Instance.new.WebAssembly.Module.new.Uint8Array):
 Deleted.
(typeof.WebAssembly.string_appeared_here.catch): Deleted.
* JSTests/microbenchmarks/memcpy-wasm.js:
(catch):
(typeof.WebAssembly.string_appeared_here.eq): Deleted.
(typeof.WebAssembly.string_appeared_here.try.const.1.new.WebAssembly.Instance.new.WebAssembly.Module.new.Uint8Array):
 Deleted.
(typeof.WebAssembly.string_appeared_here.catch): Deleted.
* JSTests/microbenchmarks/wasm-cc-int-to-int.js:
* JSTests/stress/gc-b3.js:
(main):
* JSTests/stress/hoist-get-wasm-exports.js:
* JSTests/stress/shared-wasm-memory-with-zero-byte.js:
* JSTests/wasm/stress/cc-int-to-int-cross-module-with-exception.js:
* JSTests/wasm/stress/cc-int-to-int-jit-to-llint.js:
* JSTests/wasm/stress/cc-int-to-int-no-jit.js:
* Tools/Scripts/run-javascriptcore-tests:
(runJSCStressTests):
* Tools/Scripts/run-jsc-stress-tests:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to