[RJST] eager-no-cjit should really mean eager
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 30 Aug 2014 18:22:11 +0000 (18:22 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 30 Aug 2014 18:22:11 +0000 (18:22 +0000)
https://bugs.webkit.org/show_bug.cgi?id=136407

Reviewed by Mark Hahnenberg.

At some point we made NO_CJIT_OPTIONS force threshold settings to something reasonable
and well-known. But the way we appended options was such that NO_CJIT_OPTIONS came in
after EAGER_OPTIONS. The whole point of "eager" was to use eager tier-up thresholds. This
all meant that NO_CJIT_OPTIONS was overriding the eagerness of EAGER_OPTIONS, for the one
threshold setting that NO_CJIT_OPTIONS was currently setting
(thresholdForJITAfterWarmUp). The solution is to make sure that we always append
NO_CJIT_OPTIONS before we append EAGER_OPTIONS.

Luckily, no tests regressed during the time that we lost eager-no-cjit coverage.

* Scripts/run-jsc-stress-tests:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@173140 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/Scripts/run-jsc-stress-tests

index c823e8b..463a257 100644 (file)
@@ -1,3 +1,22 @@
+2014-08-30  Filip Pizlo  <fpizlo@apple.com>
+
+        [RJST] eager-no-cjit should really mean eager
+        https://bugs.webkit.org/show_bug.cgi?id=136407
+
+        Reviewed by Mark Hahnenberg.
+        
+        At some point we made NO_CJIT_OPTIONS force threshold settings to something reasonable
+        and well-known. But the way we appended options was such that NO_CJIT_OPTIONS came in
+        after EAGER_OPTIONS. The whole point of "eager" was to use eager tier-up thresholds. This
+        all meant that NO_CJIT_OPTIONS was overriding the eagerness of EAGER_OPTIONS, for the one
+        threshold setting that NO_CJIT_OPTIONS was currently setting
+        (thresholdForJITAfterWarmUp). The solution is to make sure that we always append
+        NO_CJIT_OPTIONS before we append EAGER_OPTIONS.
+        
+        Luckily, no tests regressed during the time that we lost eager-no-cjit coverage.
+
+        * Scripts/run-jsc-stress-tests:
+
 2014-08-29  Daniel Bates  <dabates@apple.com>
 
         [iOS] Configure Xcode to build a command line tool for the iOS Simulator
index c554588..fea0f96 100755 (executable)
@@ -613,7 +613,7 @@ def runDFGEager
 end
 
 def runDFGEagerNoCJITValidate
-    run("dfg-eager-no-cjit-validate", "--validateGraph=true", *(EAGER_OPTIONS + NO_CJIT_OPTIONS))
+    run("dfg-eager-no-cjit-validate", "--validateGraph=true", *(NO_CJIT_OPTIONS + EAGER_OPTIONS))
 end
 
 def runFTLEager
@@ -621,11 +621,11 @@ def runFTLEager
 end
 
 def runFTLEagerNoCJITValidate
-    run("ftl-eager-no-cjit", "--validateGraph=true", *(FTL_OPTIONS + EAGER_OPTIONS + NO_CJIT_OPTIONS)) if $enableFTL
+    run("ftl-eager-no-cjit", "--validateGraph=true", *(FTL_OPTIONS + NO_CJIT_OPTIONS + EAGER_OPTIONS)) if $enableFTL
 end
 
 def runFTLEagerNoCJITOSRValidation
-    run("ftl-eager-no-cjit-osr-validation", "--validateFTLOSRExitLiveness=true", *(FTL_OPTIONS + EAGER_OPTIONS + NO_CJIT_OPTIONS)) if $enableFTL
+    run("ftl-eager-no-cjit-osr-validation", "--validateFTLOSRExitLiveness=true", *(FTL_OPTIONS + NO_CJIT_OPTIONS + EAGER_OPTIONS)) if $enableFTL
 end
 
 def runAlwaysTriggerCopyPhase
@@ -740,7 +740,7 @@ def runLayoutTestNoCJIT
 end
 
 def runLayoutTestDFGEagerNoCJIT
-    runLayoutTest("dfg-eager-no-cjit", *(EAGER_OPTIONS + NO_CJIT_OPTIONS))
+    runLayoutTest("dfg-eager-no-cjit", *(NO_CJIT_OPTIONS + EAGER_OPTIONS))
 end
 
 def runLayoutTestDefaultFTL
@@ -752,7 +752,7 @@ def runLayoutTestFTLNoCJIT
 end
 
 def runLayoutTestFTLEagerNoCJIT
-    runLayoutTest("ftl-eager-no-cjit", "--testTheFTL=true", *(FTL_OPTIONS + EAGER_OPTIONS + NO_CJIT_OPTIONS)) if $enableFTL
+    runLayoutTest("ftl-eager-no-cjit", "--testTheFTL=true", *(FTL_OPTIONS + NO_CJIT_OPTIONS + EAGER_OPTIONS)) if $enableFTL
 end
 
 def noFTLRunLayoutTest
@@ -835,11 +835,11 @@ def runMozillaTestBaselineJIT(mode, *extraFiles)
 end
 
 def runMozillaTestDFGEagerNoCJITValidatePhases(mode, *extraFiles)
-    runMozillaTest("dfg-eager-no-cjit-validate-phases", mode, extraFiles, "--validateBytecode=true", "--validateGraphAtEachPhase=true", *(EAGER_OPTIONS + NO_CJIT_OPTIONS))
+    runMozillaTest("dfg-eager-no-cjit-validate-phases", mode, extraFiles, "--validateBytecode=true", "--validateGraphAtEachPhase=true", *(NO_CJIT_OPTIONS + EAGER_OPTIONS))
 end
 
 def runMozillaTestFTLEagerNoCJITValidatePhases(mode, *extraFiles)
-    runMozillaTest("ftl-eager-no-cjit-validate-phases", mode, extraFiles, "--validateBytecode=true", "--validateGraphAtEachPhase=true", *(FTL_OPTIONS + EAGER_OPTIONS + NO_CJIT_OPTIONS)) if $enableFTL
+    runMozillaTest("ftl-eager-no-cjit-validate-phases", mode, extraFiles, "--validateBytecode=true", "--validateGraphAtEachPhase=true", *(FTL_OPTIONS + NO_CJIT_OPTIONS + EAGER_OPTIONS)) if $enableFTL
 end
 
 def defaultRunMozillaTest(mode, *extraFiles)