01821ab3b6
The "stress_background_compile" variant runs on all our bots. We combine it with testing wasm code GC (which kind of fits into background compile stressing) to get more coverage for that. Both features are orthogonal, so we can test both at the same time without loosing any coverage. R=machenbach@chromium.org CC=rmcilroy@chromium.org Bug: v8:8217 Change-Id: Ib17decd4869978ff98e302694fa73d70ceec120e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588472 Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61151}
60 lines
2.2 KiB
Python
60 lines
2.2 KiB
Python
# Copyright 2016 the V8 project authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
# Use this to run several variants of the tests.
|
|
ALL_VARIANT_FLAGS = {
|
|
"code_serializer": [["--cache=code"]],
|
|
"default": [[]],
|
|
"future": [["--future"]],
|
|
"gc_stats": [["--gc-stats=1"]],
|
|
# Alias of exhaustive variants, but triggering new test framework features.
|
|
"infra_staging": [[]],
|
|
"interpreted_regexp": [["--regexp-interpret-all"]],
|
|
"jitless": [["--jitless"]],
|
|
"minor_mc": [["--minor-mc"]],
|
|
# No optimization means disable all optimizations. OptimizeFunctionOnNextCall
|
|
# would not force optimization too. It turns into a Nop. Please see
|
|
# https://chromium-review.googlesource.com/c/452620/ for more discussion.
|
|
# For WebAssembly, we test "Liftoff-only" in the nooptimization variant and
|
|
# "TurboFan-only" in the stress variant. The WebAssembly configuration is
|
|
# independent of JS optimizations, so we can combine those configs.
|
|
"nooptimization": [["--no-opt", "--liftoff", "--no-wasm-tier-up"]],
|
|
"slow_path": [["--force-slow-path"]],
|
|
"stress": [["--stress-opt", "--always-opt", "--no-liftoff",
|
|
"--no-wasm-tier-up"]],
|
|
"stress_js_bg_compile_wasm_code_gc": [["--stress-background-compile",
|
|
"--wasm-code-gc",
|
|
"--stress-wasm-code-gc"]],
|
|
"stress_incremental_marking": [["--stress-incremental-marking"]],
|
|
# Trigger stress sampling allocation profiler with sample interval = 2^14
|
|
"stress_sampling": [["--stress-sampling-allocation-profiler=16384"]],
|
|
"trusted": [["--no-untrusted-code-mitigations"]],
|
|
"no_wasm_traps": [["--no-wasm-trap-handler"]],
|
|
}
|
|
|
|
SLOW_VARIANTS = set([
|
|
'stress',
|
|
'nooptimization',
|
|
])
|
|
|
|
FAST_VARIANTS = set([
|
|
'default'
|
|
])
|
|
|
|
|
|
def _variant_order_key(v):
|
|
if v in SLOW_VARIANTS:
|
|
return 0
|
|
if v in FAST_VARIANTS:
|
|
return 100
|
|
return 50
|
|
|
|
ALL_VARIANTS = sorted(ALL_VARIANT_FLAGS.keys(),
|
|
key=_variant_order_key)
|
|
|
|
# Check {SLOW,FAST}_VARIANTS entries
|
|
for variants in [SLOW_VARIANTS, FAST_VARIANTS]:
|
|
for v in variants:
|
|
assert v in ALL_VARIANT_FLAGS
|