v8/test/debugger/debugger.status
Michael Achenbach ee56a9863e [test] Run heavy tests sequentially
This adds a new status file indicator "HEAVY" to mark tests with high
resource demands. There will be other tests running in parallel,
but only a limited number of other heavy tests. The limit is
controlled with a new parameter --max-heavy-tests and defaults to 1.

The change also marks a variety of tests as heavy that recently had
flaky timeouts. Heavy also implies slow, hence heavy tests are
executed at the beginning with a higher timeout like other slow tests.

The implementation is encapsulated in the test-processor chain. A
new processor buffers heavy tests in a queue and adds buffered tests
only if other heavy tests have ended their computation.

Bug: v8:5861
Change-Id: I89648ad0030271a3a5af588ecc9c43285b728d6d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2905767
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Liviu Rau <liviurau@chromium.org>
Cr-Commit-Position: refs/heads/master@{#74712}
2021-05-21 12:59:49 +00:00

177 lines
6.9 KiB
Plaintext

# 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.
[
[ALWAYS, {
# All tests in the bug directory are expected to fail.
'bugs/*': [FAIL],
# Issue 3660: Replacing activated TurboFan frames by unoptimized code does
# not work, but we expect it to not crash.
'debug/debug-step-turbofan': [PASS, FAIL],
# Issue 3641: The new 'then' semantics suppress some exceptions.
# These tests may be changed or removed when 'chain' is deprecated.
'debug/es6/debug-promises/reject-with-throw-in-reject': [FAIL],
'debug/es6/debug-promises/reject-with-undefined-reject': [FAIL],
'debug/es6/debug-promises/reject-with-invalid-reject': [FAIL],
# Issue 5651: Context mismatch in ScopeIterator::Type() for eval default
# parameter value (the test causes indexing a FixedArray out of bounds ->
# CRASH is also a reasonable outcome).
'debug/es6/debug-scope-default-param-with-eval': [FAIL, CRASH],
# Too slow in debug mode and on slow platforms.
'regress/regress-2318': [PASS, HEAVY, ['mode == debug or (arch != ia32 and arch != x64) or asan == True or msan == True', SKIP]],
# forcing weak callback in asan build change break order
'debug/debug-stepin-builtin-callback': [['asan == True or msan == True', SKIP]],
# Tests that need to run sequentially (e.g. due to memory consumption).
'debug/debug-scopes': [PASS, HEAVY],
'debug/debug-stepout-scope-part*': [PASS, HEAVY],
'debug/ignition/debug-step-prefix-bytecodes': [PASS, HEAVY, ['mode == debug', SKIP]],
}], # ALWAYS
##############################################################################
['variant == stress', {
# TODO(turbofan): Functions with eval or debugger now get optimized
# with Turbofan, which has issues with the debugger issues.
'debug/debug-evaluate-locals': [FAIL],
# Very slow in stress mode.
'regress/regress-2318': [SKIP],
# Currently fails because breakpoint information is inconsistent after
# disabling and re-enabling the debugger (https://crbug.com/v8/10403).
'debug/wasm/debug-step-into-wasm': [SKIP],
}], # variant == stress
##############################################################################
['variant == stress and (arch == arm or arch == arm64) and simulator_run', {
# Slow tests: https://crbug.com/v8/7783
'debug/debug-stepout-scope-part*': [SKIP],
}], # variant == stress and (arch == arm or arch == arm64) and simulator_run
##############################################################################
['gc_stress == True', {
# Skip tests not suitable for GC stress.
# Tests taking too long
'debug/debug-stepout-scope-part*': [SKIP],
# Async function tests taking too long
# https://bugs.chromium.org/p/v8/issues/detail?id=5411
'debug/es8/async-debug-caught-exception-cases0': [SKIP],
'debug/es8/async-debug-caught-exception-cases1': [SKIP],
'debug/es8/async-debug-caught-exception-cases2': [SKIP],
'debug/es8/async-debug-caught-exception-cases3': [SKIP],
'debug/es8/async-function-debug-scopes': [SKIP],
# https://crbug.com/v8/8141
'debug/debug-liveedit-1': [SKIP],
'debug/es6/debug-liveedit-new-target-3': [SKIP],
'debug/side-effect/debug-evaluate-no-side-effect-control': [SKIP],
}], # 'gc_stress == True'
##############################################################################
['gc_fuzzer', {
# Slow tests.
'regress/regress-2318': [SKIP],
}], # 'gc_fuzzer'
##############################################################################
['predictable == True', {
# https://crbug.com/v8/8147
'debug/debug-liveedit-*': [SKIP],
'debug/debug-set-variable-value': [SKIP],
# Rely on (blocking) concurrent compilation.
'debug/regress/regress-opt-after-debug-deopt': [SKIP],
'debug/regress/regress-prepare-break-while-recompile': [SKIP],
'regress/regress-7421': [SKIP],
}], # 'predictable == True'
##############################################################################
['variant == no_wasm_traps', {
'*': [SKIP],
}], # variant == no_wasm_traps
##############################################################################
['arch == arm and not simulator_run', {
# Too slow on chromebooks.
'debug/ignition/debug-step-prefix-bytecodes': [SKIP],
}], # 'arch == arm and not simulator_run'
##############################################################################
['arch == arm and mode == debug', {
# Tests taking too long
'debug/debug-stepout-scope-part1': [SKIP],
'debug/debug-stepout-scope-part2': [SKIP],
'debug/debug-stepout-scope-part3': [SKIP],
'debug/debug-stepout-scope-part4': [SKIP],
'debug/debug-stepout-scope-part5': [SKIP],
'debug/debug-stepout-scope-part6': [SKIP],
'debug/debug-stepout-scope-part7': [SKIP],
'debug/debug-stepout-scope-part8': [SKIP],
}], # 'arch == arm and mode == debug'
['mode != debug', {
# Test uses a flag only available in debug mode
'debug/wasm/debug-enabled-tier-down-wasm-unsupported-liftoff': [SKIP],
}],
##############################################################################
['arch == s390 or arch == s390x', {
# Stack manipulations in LiveEdit is not implemented for this arch.
'debug/debug-liveedit-check-stack': [SKIP],
}], # 'arch == s390 or arch == s390x'
##############################################################################
# TODO(v8:7777): Change this once wasm is supported in jitless mode.
['not has_webassembly or variant == jitless', {
'debug/wasm/*': [SKIP],
'regress/regress-crbug-840288': [SKIP],
'regress/regress-crbug-1032042': [SKIP],
}], # not has_webassembly or variant == jitless
##############################################################################
['variant == turboprop or variant == turboprop_as_toptier', {
# Deopts differently than TurboFan.
'debug/debug-optimize': [SKIP],
'debug/debug-compile-optimized': [SKIP],
}], # variant == turboprop or variant == turboprop_as_toptier
##############################################################################
# Liftoff needs to be enabled before running these tests.
['arch in (s390, s390x, ppc, ppc64)', {
'regress/regress-crbug-1032042': [SKIP],
'regress/regress-crbug-840288': [SKIP],
'debug/wasm/*': [SKIP],
}],
##############################################################################
# Tests requiring Sparkplug.
['arch not in (x64, arm64, ia32, arm)', {
'regress/regress-crbug-1199681': [SKIP],
}],
################################################################################
['variant == stress_snapshot', {
'*': [SKIP], # only relevant for mjsunit tests.
}],
################################################################################
['third_party_heap', {
# Requires --concurrent_recompilation
'debug/regress/regress-opt-after-debug-deopt': [SKIP],
'debug/regress/regress-prepare-break-while-recompile': [SKIP],
'regress/regress-7421': [SKIP],
# Requires a second isolate
'debug/debug-step': [SKIP],
'debug/deserialize-script-id': [SKIP],
'regress/regress-crbug-507070': [SKIP],
}], # third_party_heap
]