Title: [222135] trunk
Revision
222135
Author
[email protected]
Date
2017-09-17 08:39:02 -0700 (Sun, 17 Sep 2017)

Log Message

https://bugs.webkit.org/show_bug.cgi?id=177038
Add an option to run-jsc-stress-tests to limit tests variations to a basic set

Reviewed by JF Bastien.

JSTests:

* stress/unshiftCountSlowCase-correct-postCapacity.js: Disabled this test on ARM64 iOS devices
as it dies using too much memory.

Tools:

Added the --basic option that runs defaults tests with the following modes, default, no-llint,
no-cjit-validate-phases, no-cjit-collect-continuously, dfg-eager and for FTL platforms: no-ftl,
ftl-eager-no-cjit and ftl-no-cjit-small-pool.  This takes about half the time as running all
16 modes of a full run.

* Scripts/run-jsc-stress-tests:

Modified Paths

Diff

Modified: trunk/JSTests/ChangeLog (222134 => 222135)


--- trunk/JSTests/ChangeLog	2017-09-17 14:37:31 UTC (rev 222134)
+++ trunk/JSTests/ChangeLog	2017-09-17 15:39:02 UTC (rev 222135)
@@ -1,3 +1,13 @@
+2017-09-17  Michael Saboff  <[email protected]>
+
+        https://bugs.webkit.org/show_bug.cgi?id=177038
+        Add an option to run-jsc-stress-tests to limit tests variations to a basic set
+
+        Reviewed by JF Bastien.
+
+        * stress/unshiftCountSlowCase-correct-postCapacity.js: Disabled this test on ARM64 iOS devices
+        as it dies using too much memory.
+
 2017-09-15  Saam Barati  <[email protected]>
 
         Arity fixup during inlining should do a 2 phase commit so it properly recovers the frame in case of exit

Modified: trunk/JSTests/stress/unshiftCountSlowCase-correct-postCapacity.js (222134 => 222135)


--- trunk/JSTests/stress/unshiftCountSlowCase-correct-postCapacity.js	2017-09-17 14:37:31 UTC (rev 222134)
+++ trunk/JSTests/stress/unshiftCountSlowCase-correct-postCapacity.js	2017-09-17 15:39:02 UTC (rev 222135)
@@ -1,4 +1,4 @@
-//@ if $buildType == "release" then runDefault else skip end
+//@ if $buildType == "release" && $architecture != "arm64" then runDefault else skip end
 
 function temp(i) {
     let a1 = [{}];

Modified: trunk/Tools/ChangeLog (222134 => 222135)


--- trunk/Tools/ChangeLog	2017-09-17 14:37:31 UTC (rev 222134)
+++ trunk/Tools/ChangeLog	2017-09-17 15:39:02 UTC (rev 222135)
@@ -1,3 +1,17 @@
+2017-09-17  Michael Saboff  <[email protected]>
+
+        https://bugs.webkit.org/show_bug.cgi?id=177038
+        Add an option to run-jsc-stress-tests to limit tests variations to a basic set
+
+        Reviewed by JF Bastien.
+
+        Added the --basic option that runs defaults tests with the following modes, default, no-llint,
+        no-cjit-validate-phases, no-cjit-collect-continuously, dfg-eager and for FTL platforms: no-ftl,
+        ftl-eager-no-cjit and ftl-no-cjit-small-pool.  This takes about half the time as running all
+        16 modes of a full run.
+
+        * Scripts/run-jsc-stress-tests:
+
 2017-09-16  Tim Horton  <[email protected]>
 
         Fix the Tools build with CMake on macOS

Modified: trunk/Tools/Scripts/run-jsc-stress-tests (222134 => 222135)


--- trunk/Tools/Scripts/run-jsc-stress-tests	2017-09-17 14:37:31 UTC (rev 222134)
+++ trunk/Tools/Scripts/run-jsc-stress-tests	2017-09-17 15:39:02 UTC (rev 222135)
@@ -117,7 +117,7 @@
 $hostOS = nil
 $filter = nil
 $envVars = []
-$quickMode = false
+$mode = "full"
 $buildType = "release"
 $forceCollectContinuously = false
 
@@ -157,6 +157,10 @@
     puts "                            e.g. \"foo=bar x=y\" (no quotes). Note, if you pass DYLD_FRAMEWORK_PATH"
     puts "                            it will override the default value."
     puts "--quick              (-q)   Only run with the default and no-cjit-validate modes."
+    puts "--basic                     Run with default and these additional modes: no-llint,"
+    puts "                            no-cjit-validate-phases, no-cjit-collect-continuously, dfg-eager"
+    puts "                            and for FTL platforms: no-ftl, ftl-eager-no-cjit and"
+    puts "                            ftl-no-cjit-small-pool."
     exit 1
 end
 
@@ -186,7 +190,8 @@
                ['--env-vars', GetoptLong::REQUIRED_ARGUMENT],
                ['--debug', GetoptLong::NO_ARGUMENT],
                ['--release', GetoptLong::NO_ARGUMENT],
-               ['--quick', '-q', GetoptLong::NO_ARGUMENT]).each {
+               ['--quick', '-q', GetoptLong::NO_ARGUMENT],
+               ['--basic', GetoptLong::NO_ARGUMENT]).each {
     | opt, arg |
     case opt
     when '--help'
@@ -240,7 +245,9 @@
     when '--env-vars'
         $envVars = arg.gsub(/\s+/, ' ').split(' ')
     when '--quick'
-        $quickMode = true
+        $mode = "quick"
+    when '--basic'
+        $mode = "basic"
     when '--debug'
         $buildType = "debug"
     when '--release'
@@ -689,7 +696,7 @@
 end
 
 def defaultRun
-    if $quickMode
+    if $mode == "quick"
         defaultQuickRun
     else
         runDefault
@@ -698,26 +705,31 @@
             runNoCJITValidatePhases
             runNoCJITCollectContinuously if shouldCollectContinuously?
             runDFGEager
-            runDFGEagerNoCJITValidate
-            runDFGMaximalFlushPhase
+            if $mode != "basic"
+                runDFGEagerNoCJITValidate
+                runDFGMaximalFlushPhase
+            end
 
             return if !$isFTLPlatform
 
             runNoFTL
+            runFTLEager
+            runFTLEagerNoCJITValidate
+            runFTLNoCJITSmallPool
+
+            return if $mode == "basic"
+
             runFTLNoCJITValidate
             runFTLNoCJITB3O1
             runFTLNoCJITNoPutStackValidate
             runFTLNoCJITNoInlineValidate
-            runFTLEager
-            runFTLEagerNoCJITValidate
             runFTLEagerNoCJITB3O1
-            runFTLNoCJITSmallPool
         end
     end
 end
 
 def defaultNoNoLLIntRun
-    if $quickMode
+    if $mode == "quick"
         defaultQuickRun
     else
         runDefault
@@ -725,19 +737,24 @@
             runNoCJITValidatePhases
             runNoCJITCollectContinuously if shouldCollectContinuously?
             runDFGEager
-            runDFGEagerNoCJITValidate
-            runDFGMaximalFlushPhase
+            if $mode != "basic"
+                runDFGEagerNoCJITValidate
+                runDFGMaximalFlushPhase
+            end
 
             return if !$isFTLPlatform
 
             runNoFTL
             runFTLNoCJITValidate
+            runFTLNoCJITSmallPool
+
+            return if $mode == "basic"
+
             runFTLNoCJITB3O1
             runFTLNoCJITNoPutStackValidate
             runFTLNoCJITNoInlineValidate
             runFTLEager
             runFTLEagerNoCJITValidate
-            runFTLNoCJITSmallPool
         end
     end
 end
@@ -747,7 +764,7 @@
     if $jitTests
         runNoCJITValidate
 
-        return if $isFTLPlatform
+        return if !$isFTLPlatform
 
         runNoFTL
         runFTLNoCJITValidate
@@ -784,6 +801,9 @@
 
         runNoFTL
         runFTLNoCJITValidate
+
+        return if $mode == "basic"
+
         runFTLNoCJITNoInlineValidate
         runFTLNoCJITB3O1
     end
@@ -961,7 +981,7 @@
     prepareExtraAbsoluteFiles(WASMTESTS_PATH, ["wasm.json"])
     prepareExtraRelativeFiles(modules.map { |f| "../" + f }, $collection)
     run("default-wasm", "-m", *FTL_OPTIONS)
-    if !$quickMode
+    if $mode != "quick"
         run("wasm-no-cjit-yes-tls-context", "-m", "--useFastTLSForWasmContext=true", *(FTL_OPTIONS + NO_CJIT_OPTIONS))
         run("wasm-eager-jettison", "-m", "--forceCodeBlockToJettisonDueToOldAge=true", *FTL_OPTIONS)
         run("wasm-no-call-ic", "-m", "--useCallICsForWebAssemblyToJSCalls=false", *FTL_OPTIONS)
@@ -980,7 +1000,7 @@
     wasm = $benchmark.to_s.sub! '.js', '.wasm'
     prepareExtraRelativeFiles([Pathname('..') + wasm], $collection)
     run("default-wasm", *FTL_OPTIONS)
-    if !$quickMode
+    if $mode != "quick"
         run("wasm-no-cjit-yes-tls-context", "--useFastTLSForWasmContext=true", *(FTL_OPTIONS + NO_CJIT_OPTIONS))
         run("wasm-eager-jettison", "--forceCodeBlockToJettisonDueToOldAge=true", *FTL_OPTIONS)
         run("wasm-no-call-ic", "--useCallICsForWebAssemblyToJSCalls=false", *FTL_OPTIONS)
@@ -1004,7 +1024,7 @@
     prepareExtraRelativeFiles(harness.map { |f| "../../spec-harness/" + f }, $collection)
 
     runWithOutputHandler("default-wasm", noisyOutputHandler, "../spec-harness.js", *FTL_OPTIONS)
-    if !$quickMode
+    if $mode != "quick"
       runWithOutputHandler("wasm-no-cjit-yes-tls-context", noisyOutputHandler, "../spec-harness.js",  "--useFastTLSForWasmContext=true", *(FTL_OPTIONS + NO_CJIT_OPTIONS))
       runWithOutputHandler("wasm-eager-jettison", noisyOutputHandler, "../spec-harness.js", "--forceCodeBlockToJettisonDueToOldAge=true", *FTL_OPTIONS)
       runWithOutputHandler("wasm-no-call-ic", noisyOutputHandler, "../spec-harness.js", "--useCallICsForWebAssemblyToJSCalls=false", *FTL_OPTIONS)
@@ -1134,7 +1154,7 @@
 end
 
 def defaultRunLayoutTest
-    if $quickMode
+    if $mode == "quick"
         defaultQuickRunLayoutTest
     else
         runLayoutTestDefault
@@ -1266,7 +1286,7 @@
 end
 
 def defaultRunMozillaTest(mode, *extraFiles)
-    if $quickMode
+    if $mode == "quick"
         defaultQuickRunMozillaTest(mode, *extraFiles)
     else
         runMozillaTestNoFTL(mode, *extraFiles)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to