Bug 1692096 - reduce jittest flags on android/aarch64 || android/debug. r=releng-reviewers,jandem,sfink,aki
authorJoel Maher <jmaher@mozilla.com>
Thu, 25 Feb 2021 16:28:03 +0000
changeset 568774 0ffc244f78cc6ab7577793c7bbf10753d098f5f7
parent 568773 0473c841087439828b59c8810380fbc6c6e7e5e3
child 568775 37d78cccb07028c108a303ab821bb66708a9b41c
push id38238
push usercsabou@mozilla.com
push dateThu, 25 Feb 2021 21:52:15 +0000
treeherdermozilla-central@a6f0e34af589 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersreleng-reviewers, jandem, sfink, aki
bugs1692096
milestone88.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1692096 - reduce jittest flags on android/aarch64 || android/debug. r=releng-reviewers,jandem,sfink,aki reduce jittest flags on android/aarch64 || android/debug Differential Revision: https://phabricator.services.mozilla.com/D106329
taskcluster/ci/test/compiled.yml
taskcluster/ci/test/test-sets.yml
testing/mozharness/configs/android/android_common.py
testing/mozharness/scripts/android_hardware_unittest.py
--- a/taskcluster/ci/test/compiled.yml
+++ b/taskcluster/ci/test/compiled.yml
@@ -67,17 +67,17 @@ gtest:
 
 jittest:
     description: "JIT Test run"
     suite: jittest
     treeherder-symbol: Jit
     run-on-projects:
         by-test-platform:
             android-hw-.*-aarch64/debug: ['mozilla-central', 'release']
-            android-hw-.*-api-16(?:-shippable)?/.*: ['mozilla-central', 'release']
+            android-hw-.*-api-16/debug: ['mozilla-central', 'release']
             default: built-projects
     chunks:
         by-test-platform:
             windows.*: 1
             windows10-64-ccov-qr/opt: 8
             macosx.*/opt: 1
             macosx.*/debug: 3
             android.*: 10
@@ -97,8 +97,34 @@ jittest:
     target:
         by-test-platform:
             android-.*: geckoview-androidTest.apk
             default: null
     tier:
         by-test-platform:
             android-hw.*: 2
             default: default
+
+jittest-all:
+    description: "JIT Test run with all flags for android arm7 opt"
+    suite: jittest
+    treeherder-symbol: Jit
+    run-on-projects:
+        by-test-platform:
+            android-hw-.*-api-16(?:-shippable)?/.*: ['mozilla-central', 'release']
+            default: []
+    chunks: 10
+    max-run-time: 3600
+    mozharness:
+        chunked: true
+        extra-options:
+            by-test-platform:
+                android.*:
+                    - --jittest-flags=all
+                default: None
+    target:
+        by-test-platform:
+            android-.*: geckoview-androidTest.apk
+            default: null
+    tier:
+        by-test-platform:
+            android-hw.*: 2
+            default: default
--- a/taskcluster/ci/test/test-sets.yml
+++ b/taskcluster/ci/test/test-sets.yml
@@ -480,17 +480,17 @@ android-x86_64-qr-tests:
     - web-platform-tests-crashtest
     - web-platform-tests-reftest
     - reftest
 
 android-hw-aarch64-opt-unittests:
     - jittest
 
 android-hw-arm7-pgo-unittests:
-    - jittest
+    - jittest-all
     - jsreftest
 
 android-hw-aarch64-pgo-unittests:
     - jittest
 
 android-hw-arm7-debug-unittests:
     - jittest
     - jsreftest
--- a/testing/mozharness/configs/android/android_common.py
+++ b/testing/mozharness/configs/android/android_common.py
@@ -252,17 +252,17 @@ config = {
                 "../../bin/js",
                 "--remote",
                 "-j",
                 "1",
                 "--localLib=../../bin",
                 "--no-slow",
                 "--no-progress",
                 "--format=automation",
-                "--jitflags=all",
+                "--jitflags=%(jittest_flags)s",
                 "--deviceSerial=%(device_serial)s",
             ],
         },
         "jsreftest": {
             "run_filename": "remotereftest.py",
             "testsdir": "reftest",
             "options": [
                 "--app=%(app)s",
--- a/testing/mozharness/scripts/android_hardware_unittest.py
+++ b/testing/mozharness/scripts/android_hardware_unittest.py
@@ -115,16 +115,25 @@ class AndroidHardwareTest(
             ],
             {
                 "action": "append",
                 "dest": "extra_prefs",
                 "default": [],
                 "help": "Extra user prefs.",
             },
         ],
+        [
+            ["--jittest-flags"],
+            {
+                "action": "store",
+                "dest": "jittest_flags",
+                "default": "debug",
+                "help": "Flags to run with jittest (all, debug, etc.).",
+            },
+        ],
     ] + copy.deepcopy(testing_config_options)
 
     def __init__(self, require_config_file=False):
         super(AndroidHardwareTest, self).__init__(
             config_options=self.config_options,
             all_actions=[
                 "clobber",
                 "download-and-extract",
@@ -155,16 +164,17 @@ class AndroidHardwareTest(
         self.this_chunk = c.get("this_chunk")
         self.total_chunks = c.get("total_chunks")
         self.xre_path = None
         self.log_raw_level = c.get("log_raw_level")
         self.log_tbpl_level = c.get("log_tbpl_level")
         self.enable_webrender = c.get("enable_webrender")
         self.enable_fission = c.get("enable_fission")
         self.extra_prefs = c.get("extra_prefs")
+        self.jittest_flags = c.get("jittest_flags")
 
     def query_abs_dirs(self):
         if self.abs_dirs:
             return self.abs_dirs
         abs_dirs = super(AndroidHardwareTest, self).query_abs_dirs()
         dirs = {}
         dirs["abs_test_install_dir"] = os.path.join(abs_dirs["abs_work_dir"], "tests")
         dirs["abs_test_bin_dir"] = os.path.join(
@@ -230,16 +240,17 @@ class AndroidHardwareTest(
             "symbols_path": self.symbols_path,
             "modules_dir": dirs["abs_modules_dir"],
             "installer_path": self.installer_path,
             "raw_log_file": raw_log_file,
             "log_tbpl_level": self.log_tbpl_level,
             "log_raw_level": self.log_raw_level,
             "error_summary_file": error_summary_file,
             "xpcshell_extra": c.get("xpcshell_extra", ""),
+            "jittest_flags": self.jittest_flags,
         }
 
         user_paths = json.loads(os.environ.get("MOZHARNESS_TEST_PATHS", '""'))
 
         for option in self.config["suite_definitions"][self.test_suite]["options"]:
             opt = option.split("=")[0]
             # override configured chunk options with script args, if specified
             if opt in ("--this-chunk", "--total-chunks"):