blob: fdebf6eb3197276984ddb9a2df5c26c2482c3302 [file] [log] [blame]
# Copyright 2012 the V8 project authors. All rights reserved.
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above
# copyright notice, this list of conditions and the following
# disclaimer in the documentation and/or other materials provided
# with the distribution.
# * Neither the name of Google Inc. nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
[
[ALWAYS, {
# All tests in the bug directory are expected to fail.
'bugs/*': [FAIL],
##############################################################################
# Flaky tests.
# BUG(v8:2921).
'debug-step-4-in-frame': [PASS, FAIL, SLOW],
##############################################################################
# Fails.
'regress/regress-1119': [FAIL],
# Issue 1719: Slow to collect arrays over several contexts.
'regress/regress-524': [SKIP],
# When that bug is fixed, revert the expectation to:
# Skip long running test in debug and allow it to timeout in release mode.
# regress/regress-524: [PASS, TIMEOUT, ['mode == debug', SKIP]],
# This test non-deterministically runs out of memory on Windows ia32.
'regress/regress-crbug-160010': [SKIP],
# Issue 3389: deopt_every_n_garbage_collections is unsafe
'regress/regress-2653': [SKIP],
# Issue 3784: setters-on-elements is flaky
'setters-on-elements': [PASS, FAIL],
##############################################################################
# TurboFan compiler failures.
# TODO(verwaest): Some tests are over-restrictive about object layout.
'array-constructor-feedback': [PASS, NO_VARIANTS],
'array-feedback': [PASS, NO_VARIANTS],
'compare-known-objects-slow': [PASS, NO_VARIANTS],
'elements-kind': [PASS, NO_VARIANTS],
'opt-elements-kind': [PASS, NO_VARIANTS],
'smi-representation': [PASS, NO_VARIANTS],
# Some tests are just too slow to run for now.
'big-object-literal': [PASS, NO_VARIANTS],
'bit-not': [PASS, NO_VARIANTS],
'json2': [PASS, NO_VARIANTS],
'packed-elements': [PASS, NO_VARIANTS],
'string-indexof-1': [PASS, NO_VARIANTS],
'unbox-double-arrays': [PASS, NO_VARIANTS],
'unicode-test': [PASS, NO_VARIANTS],
'whitespaces': [PASS, NO_VARIANTS],
'compiler/osr-assert': [PASS, NO_VARIANTS],
'es6/string-fromcodepoint': [PASS, NO_VARIANTS],
'regress/regress-2185-2': [PASS, NO_VARIANTS],
'regress/regress-2612': [PASS, NO_VARIANTS],
# Modules are busted
'harmony/module-linking': [SKIP],
'harmony/module-recompile': [SKIP],
'harmony/module-resolution': [SKIP],
'harmony/regress/regress-343928': [SKIP],
# Issue 3660: Replacing activated TurboFan frames by unoptimized code does
# not work, but we expect it to not crash.
'debug-step-turbofan': [PASS, FAIL],
# TODO(mstarzinger): Optimizing top-level code revealed some issues. Fix!
'bitops-info': [PASS, NO_VARIANTS], # fails on ARM hardware.
'md5': [PASS, NO_VARIANTS], # fails on ARM hardware.
'debug-break-inline': [PASS, NO_VARIANTS], # very flaky.
'debug-compile-event-newfunction': [PASS, NO_VARIANTS],
'debug-conditional-breakpoints': [PASS, NO_VARIANTS],
'debug-evaluate-locals-optimized': [PASS, NO_VARIANTS],
'debug-evaluate-locals-optimized-double': [PASS, NO_VARIANTS],
'debug-evaluate-recursive': [PASS, NO_VARIANTS], # only in no-snap debug.
'debug-ignore-breakpoints': [PASS, NO_VARIANTS], # only in no-snap debug.
'debug-setbreakpoint': [PASS, NO_VARIANTS], # only in no-snap debug.
'debug-step': [PASS, NO_VARIANTS], # windows only.
'debug-step-2': [PASS, NO_VARIANTS], # flaky in no-snap mode.
'debug-step-3': [PASS, NO_VARIANTS], # flaky in no-snap mode.
'debug-stepframe-clearing': [PASS, NO_VARIANTS], # only in no-snap debug.
'debug-stepin-call-function-stub': [PASS, NO_VARIANTS], # only in no-snap debug.
'debug-stepin-positions': [PASS, NO_VARIANTS], # only due to inlining.
'regress/regress-3717': [PASS, NO_VARIANTS], # only in no-snap mode.
'regress/regress-2451': [PASS, NO_VARIANTS], # with custom snapshot and gc-stress.
'debug-multiple-breakpoints': [PASS, NO_VARIANTS], # with custom snapshot and gc-stress.
'debug-listbreakpoints': [PASS, NO_VARIANTS], # arm64 nosnap with turbofan
'debug-enable-disable-breakpoints': [PASS, NO_VARIANTS], #arm64 nosnap with turbofan.
# Issue 4035: unexpected frame->context() in debugger
'regress/regress-crbug-107996': [PASS, NO_VARIANTS],
'regress/regress-crbug-171715': [PASS, NO_VARIANTS],
'regress/regress-crbug-222893': [PASS, NO_VARIANTS],
'regress/regress-crbug-323936': [PASS, NO_VARIANTS],
'regress/regress-crbug-491943': [PASS, NO_VARIANTS],
'regress/regress-325676': [PASS, NO_VARIANTS],
'debug-evaluate-closure': [PASS, NO_VARIANTS],
'debug-evaluate-with': [PASS, NO_VARIANTS],
# TODO(mstarzinger): Optimizing top-level code flushed out some correctness
# issues on ARM and ARM64.
'es6/math-log2-log10': [PASS, NO_VARIANTS], # on ARM and ARM64.
'mirror-script': [PASS, NO_VARIANTS], # on ARM64 only.
# TODO(jarin/mstarzinger): Investigate debugger issues with TurboFan.
'debug-evaluate-const': [PASS, NO_VARIANTS],
'debug-evaluate-locals': [PASS, NO_VARIANTS],
'debug-evaluate-locals-capturing': [PASS, NO_VARIANTS],
'debug-liveedit-check-stack': [PASS, NO_VARIANTS], # only in no-snap mode.
'debug-liveedit-double-call': [PASS, NO_VARIANTS],
'debug-set-variable-value': [PASS, NO_VARIANTS],
'debug-stepout-scope-part1': [PASS, NO_VARIANTS],
'debug-stepout-scope-part2': [PASS, NO_VARIANTS],
'debug-stepout-scope-part3': [PASS, NO_VARIANTS],
'es6/debug-evaluate-blockscopes': [PASS, NO_VARIANTS],
# issue 4055:
'es6/generators-debug-scopes': [PASS, NO_VARIANTS],
# TODO(titzer): --always-opt incorrectly disables CrankShaft soft deopt points
'result-table-min': [PASS, NO_VARIANTS],
'result-table-max': [PASS, NO_VARIANTS],
# TODO(titzer): too slow in --turbo mode due to O(n^2) graph verification.
'regress/regress-1122': [PASS, NO_VARIANTS],
# Assumptions about optimization need investigation in TurboFan.
'regress-sync-optimized-lists': [PASS, NO_VARIANTS],
# issue 4078:
'allocation-site-info': [PASS, NO_VARIANTS],
##############################################################################
# Too slow in debug mode with --stress-opt mode.
'compiler/regress-stacktrace-methods': [PASS, ['mode == debug', SKIP]],
'compiler/regress-funcaller': [PASS, ['mode == debug', SKIP]],
'regress/regress-2318': [PASS, ['mode == debug', SKIP]],
'regress/regress-create-exception': [PASS, ['mode == debug', SKIP]],
##############################################################################
# Too slow in debug mode for validation of elements.
'regress/regress-430201': [PASS, ['mode == debug', SKIP]],
'regress/regress-430201b': [PASS, ['mode == debug', SKIP]],
##############################################################################
# Too slow in debug mode for GC stress mode.
'regress/regress-crbug-217858': [PASS, ['mode == debug', SKIP]],
##############################################################################
# Only RegExp stuff tested, no need for extensive optimizing compiler tests.
'regexp-global': [PASS, NO_VARIANTS],
'third_party/regexp-pcre/regexp-pcre': [PASS, NO_VARIANTS],
##############################################################################
# No need to waste time for this test.
'd8-performance-now': [PASS, NO_VARIANTS],
'regress/regress-crbug-491062': [PASS, NO_VARIANTS],
# Issue 488: this test sometimes times out.
'array-constructor': [PASS, TIMEOUT],
# Very slow on ARM and MIPS, contains no architecture dependent code.
'unicode-case-overoptimization': [PASS, NO_VARIANTS, ['arch == arm or arch == arm64 or arch == android_arm or arch == android_arm64 or arch == mipsel or arch == mips64el or arch == mips64 or arch == mips', TIMEOUT]],
'regress/regress-3976': [PASS, NO_VARIANTS, ['arch == arm or arch == arm64 or arch == android_arm or arch == android_arm64 or arch == mipsel or arch == mips64el or arch == mips64 or arch == mips', SKIP]],
'regress/regress-crbug-482998': [PASS, NO_VARIANTS, ['arch == arm or arch == arm64 or arch == android_arm or arch == android_arm64 or arch == mipsel or arch == mips64el or arch == mips', SKIP]],
##############################################################################
# This test expects to reach a certain recursion depth, which may not work
# for debug mode.
'json-recursive': [PASS, ['mode == debug', PASS, FAIL]],
##############################################################################
# Skip long running tests that time out in debug mode.
'generated-transition-stub': [PASS, ['mode == debug', SKIP]],
'migrations': [SKIP],
'array-functions-prototype-misc': [PASS, SLOW, ['mode == debug', SKIP]],
##############################################################################
# This test sets the umask on a per-process basis and hence cannot be
# used in multi-threaded runs.
# On android there is no /tmp directory.
# Currently d8-os generates a temporary directory name using Math.random(), so
# we cannot run several variants of d8-os simultaneously, since all of them
# get the same random seed and would generate the same directory name. Besides
# that, it doesn't make sense to run several variants of d8-os anyways.
'd8-os': [PASS, NO_VARIANTS, ['isolates or arch == android_arm or arch == android_arm64 or arch == android_ia32', SKIP]],
'tools/tickprocessor': [PASS, NO_VARIANTS, ['arch == android_arm or arch == android_arm64 or arch == android_ia32', SKIP]],
##############################################################################
# Long running test that reproduces memory leak and should be run manually.
'regress/regress-2073': [SKIP],
##############################################################################
# Tests verifying CHECK and ASSERT.
'verify-check-false': [FAIL, NO_VARIANTS],
'verify-assert-false': [NO_VARIANTS, ['mode == release and dcheck_always_on == False', PASS], ['mode == debug or dcheck_always_on == True', FAIL]],
##############################################################################
# Tests with different versions for release and debug.
'compiler/alloc-number': [PASS, ['mode == debug', SKIP]],
'compiler/alloc-number-debug': [PASS, ['mode == release', SKIP]],
'regress/regress-634': [PASS, ['mode == debug', SKIP]],
'regress/regress-634-debug': [PASS, ['mode == release', SKIP]],
# BUG(336820). TODO(bmeurer): Investigate.
'regress/regress-336820': [PASS, FAIL],
# BUG(v8:2989). PASS/FAIL on linux32 because crankshaft is turned off for
# nosse2. Also for arm novfp3.
'regress/regress-2989': [FAIL, NO_VARIANTS, ['system == linux and arch == x87 or arch == arm and simulator == True', PASS]],
# Skip endain dependent test for mips due to different typed views of the same
# array buffer.
'nans': [PASS, ],
# This test variant makes only sense on arm.
'math-floor-of-div-nosudiv': [PASS, SLOW, ['arch not in [arm, arm64, android_arm, android_arm64]', SKIP]],
# Too slow for slow variants.
'asm/embenchen/*': [PASS, SLOW, FAST_VARIANTS],
'asm/poppler/*': [PASS, SLOW, FAST_VARIANTS],
'asm/sqlite3/*': [PASS, SLOW, FAST_VARIANTS],
# BUG(v8:3838).
'regress/regress-3116': [PASS, ['isolates', FLAKY]],
# BUG(v8:4458). TODO(mvstanton): reenable the test once --vector-stores is
# prermanently enabled.
'call-counts': [SKIP],
# BUG(chromium:508074). Remove this once the issue is fixed.
'harmony/arrow-rest-params': [PASS, NO_VARIANTS],
'harmony/rest-params': [PASS, ['no_snap == True', NO_VARIANTS]],
# Slow tests.
'copy-on-write-assert': [PASS, SLOW],
'debug-scopes': [PASS, SLOW],
'es7/object-observe': [PASS, ['mode == debug', SLOW]],
'numops-fuzz-part*': [PASS, ['mode == debug', SLOW]],
'readonly': [PASS, SLOW],
'regress/regress-1200351': [PASS, ['mode == debug', SLOW]],
'regress/regress-crbug-474297': [PASS, ['mode == debug', SLOW]],
'strong/implicit-conversions': [PASS, SLOW],
'strong/load-element-mutate-backing-store': [PASS, SLOW],
}], # ALWAYS
['novfp3 == True', {
'asm/embenchen/box2d': [SKIP],
'asm/embenchen/zlib': [SKIP],
'asm/embenchen/memops': [SKIP],
'asm/embenchen/lua_binarytrees': [SKIP],
}], # novfp3 == True
##############################################################################
['gc_stress == True', {
# Skip tests not suitable for GC stress.
'allocation-site-info': [SKIP],
'array-constructor-feedback': [SKIP],
'array-feedback': [SKIP],
'array-literal-feedback': [SKIP],
'd8-performance-now': [SKIP],
'debug-stepout-scope-part8': [PASS, ['arch == arm ', FAIL]],
'elements-kind': [SKIP],
'elements-transition-hoisting': [SKIP],
'fast-prototype': [SKIP],
'field-type-tracking': [SKIP],
'getters-on-elements': [SKIP],
'es6/block-let-crankshaft': [SKIP],
'opt-elements-kind': [SKIP],
'osr-elements-kind': [SKIP],
'regress/regress-crbug-137689': [SKIP],
'regress/regress-165637': [SKIP],
'regress/regress-2249': [SKIP],
'regress/regress-4121': [SKIP],
'compare-known-objects-slow': [SKIP],
# Tests taking too long
'debug-stepout-scope-part8': [SKIP],
'mirror-object': [SKIP],
'packed-elements': [SKIP],
'regress/regress-1122': [SKIP],
'regress/regress-331444': [SKIP],
'regress/regress-353551': [SKIP],
'regress/regress-crbug-119926': [SKIP],
'regress/short-circuit': [SKIP],
'stack-traces-overflow': [SKIP],
'unicode-test': [SKIP],
'whitespaces': [SKIP],
# TODO(mstarzinger): Takes too long with TF.
'array-sort': [PASS, NO_VARIANTS],
'regress/regress-91008': [PASS, NO_VARIANTS],
'regress/regress-417709a': [PASS, ['arch == arm64', NO_VARIANTS]],
'regress/regress-transcendental': [PASS, ['arch == arm64', NO_VARIANTS]],
'compiler/osr-regress-max-locals': [PASS, NO_VARIANTS],
'math-floor-of-div': [PASS, NO_VARIANTS],
'unicodelctest': [PASS, NO_VARIANTS],
'unicodelctest-no-optimization': [PASS, NO_VARIANTS],
# TODO(jkummerow): Doesn't work correctly in GC stress.
'regress/regress-crbug-500497': [SKIP],
# Too slow for gc stress.
'asm/embenchen/box2d': [SKIP],
# Issue 3723.
'regress/regress-3717': [SKIP],
# BUG(v8:4237)
'regress/regress-3976': [SKIP],
# BUG(v8:4359)
'strong/load-proxy': [SKIP],
# Slow tests.
'array-constructor': [PASS, SLOW],
'json': [PASS, SLOW],
'regress/regress-446389': [PASS, SLOW],
'regress/regress-inline-getter-near-stack-limit': [PASS, SLOW],
# BUG(v8:3097)
'debug-references': [SKIP],
}], # 'gc_stress == True'
##############################################################################
['no_i18n == True and mode == debug', {
# Tests too slow for no18n debug.
'regress/regress-1200351': [SKIP],
}], # 'no_i18n == True and mode == debug'
##############################################################################
['byteorder == big', {
# Emscripten requires little-endian, skip all tests on big endian platforms.
'asm/embenchen/*': [SKIP],
'asm/poppler/*': [SKIP],
'asm/sqlite3/*': [SKIP],
}], # 'byteorder == big'
##############################################################################
['arch == arm64 or arch == android_arm64', {
# arm64 TF timeout.
'regress/regress-1257': [PASS, TIMEOUT],
# Requires bigger stack size in the Genesis and if stack size is increased,
# the test requires too much time to run. However, the problem test covers
# should be platform-independent.
'regress/regress-1132': [SKIP],
# Pass but take too long to run. Skip.
# Some similar tests (with fewer iterations) may be included in arm64-js
# tests.
'asm/embenchen/box2d': [SKIP],
'asm/embenchen/lua_binarytrees': [SKIP],
'big-object-literal': [SKIP],
'compiler/regress-arguments': [SKIP],
'compiler/regress-gvn': [SKIP],
'compiler/regress-max-locals-for-osr': [SKIP],
'compiler/regress-4': [SKIP],
'compiler/regress-or': [SKIP],
'compiler/regress-rep-change': [SKIP],
'regress/regress-1117': [SKIP],
'regress/regress-1145': [SKIP],
'regress/regress-1849': [SKIP],
'regress/regress-3247124': [SKIP],
'regress/regress-634': [SKIP],
'regress/regress-91008': [SKIP],
'regress/regress-91010': [SKIP],
'regress/regress-91013': [SKIP],
'regress/regress-99167': [SKIP],
# Long running tests.
'regress/regress-2185': [PASS, ['mode == debug', PASS, TIMEOUT]],
'regress/regress-2185-2': [PASS, TIMEOUT],
'whitespaces': [PASS, TIMEOUT, SLOW],
# BUG(v8:3457).
'deserialize-reference': [PASS, FAIL],
# BUG(v8:4016)
'regress/regress-crbug-467047': [SKIP],
# Slow tests.
'array-concat': [PASS, SLOW],
'array-constructor': [PASS, SLOW],
'array-indexing': [PASS, SLOW],
'array-reduce': [PASS, SLOW],
'array-sort': [PASS, SLOW],
'array-splice': [PASS, SLOW],
'bit-not': [PASS, SLOW],
'compiler/alloc-number': [PASS, SLOW],
'compiler/osr-assert': [PASS, SLOW],
'compiler/osr-with-args': [PASS, SLOW],
'debug-scopes': [PASS, SLOW],
'generated-transition-stub': [PASS, SLOW],
'json2': [PASS, SLOW],
'math-floor-of-div-nosudiv': [PASS, SLOW],
'math-floor-of-div': [PASS, SLOW],
'mirror-object': [PASS, SLOW],
'packed-elements': [PASS, SLOW],
'regress/regress-1122': [PASS, SLOW],
'regress/regress-2185-2': [PASS, SLOW],
'regress/regress-2185': [PASS, SLOW],
'regress/regress-2790': [PASS, SLOW],
'regress/regress-331444': [PASS, SLOW],
'regress/regress-490': [PASS, SLOW],
'regress/regress-crbug-217858': [PASS, SLOW],
'regress/regress-create-exception': [PASS, SLOW],
'regress/regress-json-stringify-gc': [PASS, SLOW],
'string-indexof-2': [PASS, SLOW],
'unicodelctest-no-optimization': [PASS, SLOW],
'unicodelctest': [PASS, SLOW],
'unicode-test': [PASS, SLOW],
}], # 'arch == arm64'
['arch == arm64 and mode == debug and simulator_run == True', {
# Pass but take too long with the simulator in debug mode.
'array-iterate-backwards': [PASS, TIMEOUT],
'array-sort': [PASS, TIMEOUT],
'packed-elements': [SKIP],
'regexp-global': [SKIP],
'compiler/alloc-numbers': [SKIP],
'harmony/symbols': [SKIP],
'math-floor-of-div': [PASS, TIMEOUT],
'math-floor-of-div-nosudiv': [PASS, TIMEOUT],
'unicodelctest': [PASS, TIMEOUT],
'unicodelctest-no-optimization': [PASS, TIMEOUT],
# Issue 3219:
'getters-on-elements': [PASS, ['gc_stress == True', FAIL]],
}], # 'arch == arm64 and mode == debug and simulator_run == True'
##############################################################################
['asan == True', {
# Skip tests not suitable for ASAN.
'big-array-literal': [SKIP],
'big-object-literal': [SKIP],
'regress/regress-crbug-178790': [SKIP],
# Exception thrown during bootstrapping on ASAN builds, see issue 4236.
'regress/regress-1132': [SKIP],
}], # 'asan == True'
##############################################################################
['msan == True', {
# Skip tests not suitable for MSAN.
'big-array-literal': [SKIP],
# ICU upstream issues.
'date': [SKIP],
'deep-recursion': [SKIP],
'regress/regress-builtinbust-7': [SKIP],
'string-localecompare': [SKIP],
}], # 'msan == True'
##############################################################################
['arch == arm or arch == android_arm', {
# Slow tests which times out in debug mode.
'try': [PASS, ['mode == debug', SKIP]],
'debug-scripts-request': [PASS, ['mode == debug', SKIP]],
'array-constructor': [PASS, ['mode == debug', SKIP]],
'regress/regress-1122': [PASS, ['mode == debug and arch == android_arm', SKIP]],
# Flaky test that can hit compilation-time stack overflow in debug mode.
'unicode-test': [PASS, ['mode == debug', PASS, FAIL]],
# Times out often in release mode on ARM.
'compiler/regress-stacktrace-methods': [PASS, ['mode == release', TIMEOUT]],
'array-splice': [PASS, TIMEOUT],
# Long running test.
'string-indexof-2': [PASS, TIMEOUT],
'mirror-object': [PASS, TIMEOUT],
# Long running tests. Skipping because having them timeout takes too long on
# the buildbot.
'big-object-literal': [SKIP],
'compiler/alloc-number': [SKIP],
'regress/regress-490': [SKIP],
'regress/regress-634': [SKIP],
'regress/regress-create-exception': [SKIP],
'regress/regress-3247124': [SKIP],
# Requires bigger stack size in the Genesis and if stack size is increased,
# the test requires too much time to run. However, the problem test covers
# should be platform-independent.
'regress/regress-1132': [SKIP],
# Currently always deopt on minus zero
'math-floor-of-div-minus-zero': [SKIP],
############################################################################
# Slow tests.
'regress/regress-2185-2': [PASS, SLOW],
'mirror-object': [PASS, SLOW],
'compiler/osr-with-args': [PASS, SLOW],
'array-sort': [PASS, SLOW],
'packed-elements': [PASS, SLOW],
'regress/regress-91008': [PASS, SLOW],
'regress/regress-2790': [PASS, SLOW],
'regress/regress-json-stringify-gc': [PASS, SLOW],
'regress/regress-1122': [PASS, SLOW],
}], # 'arch == arm or arch == android_arm'
##############################################################################
['arch == mipsel or arch == mips', {
# Slow tests which times out in debug mode.
'try': [PASS, ['mode == debug', SKIP]],
'debug-scripts-request': [PASS, ['mode == debug', SKIP]],
'array-constructor': [PASS, ['mode == debug', SKIP]],
# Times out often in release mode on MIPS.
'compiler/regress-stacktrace-methods': [PASS, ['mode == release', TIMEOUT]],
'array-splice': [PASS, TIMEOUT],
# Long running test.
'mirror-object': [PASS, TIMEOUT],
'string-indexof-2': [PASS, TIMEOUT],
# Long running tests. Skipping because having them timeout takes too long on
# the buildbot.
'compiler/alloc-number': [SKIP],
'regress/regress-490': [SKIP],
'regress/regress-634': [SKIP],
'regress/regress-create-exception': [SKIP],
'regress/regress-3247124': [SKIP],
# Requires bigger stack size in the Genesis and if stack size is increased,
# the test requires too much time to run. However, the problem test covers
# should be platform-independent.
'regress/regress-1132': [SKIP],
# Currently always deopt on minus zero
'math-floor-of-div-minus-zero': [SKIP],
}], # 'arch == mipsel or arch == mips'
##############################################################################
['arch == mips', {
# Flaky with TF.
'mirror-script': [PASS, NO_VARIANTS],
}], # 'arch == mips'
##############################################################################
['arch == x87', {
# Turbofan will hit the known issue that x87 changes sNaN to qNaN by default.
'regress/regress-undefined-nan': [SKIP],
}], # 'arch == x87'
##############################################################################
['arch == mips64el or arch == mips64', {
# Slow tests which times out in debug mode.
'try': [PASS, ['mode == debug', SKIP]],
'debug-scripts-request': [PASS, ['mode == debug', SKIP]],
'array-constructor': [PASS, ['mode == debug', SKIP]],
# Times out often in release mode on MIPS.
'compiler/regress-stacktrace-methods': [PASS, PASS, ['mode == release', TIMEOUT]],
'array-splice': [PASS, TIMEOUT],
# Long running test.
'mirror-object': [PASS, TIMEOUT],
'string-indexof-2': [PASS, TIMEOUT],
# BUG(3251035): Timeouts in long looping crankshaft optimization
# tests. Skipping because having them timeout takes too long on the
# buildbot.
'compiler/alloc-number': [PASS, SLOW],
'compiler/array-length': [PASS, SLOW],
'compiler/assignment-deopt': [PASS, SLOW],
'compiler/deopt-args': [PASS, SLOW],
'compiler/inline-compare': [PASS, SLOW],
'compiler/inline-global-access': [PASS, SLOW],
'compiler/optimized-function-calls': [PASS, SLOW],
'compiler/pic': [PASS, SLOW],
'compiler/property-calls': [PASS, SLOW],
'compiler/recursive-deopt': [PASS, SLOW],
'compiler/regress-4': [PASS, SLOW],
'compiler/regress-funcaller': [PASS, SLOW],
'compiler/regress-rep-change': [PASS, SLOW],
'compiler/regress-arguments': [PASS, SLOW],
'compiler/regress-funarguments': [PASS, SLOW],
'compiler/regress-3249650': [PASS, SLOW],
'compiler/simple-deopt': [PASS, SLOW],
'regress/regress-490': [PASS, SLOW],
'regress/regress-634': [PASS, SLOW],
'regress/regress-create-exception': [PASS, SLOW],
'regress/regress-3218915': [PASS, SLOW],
'regress/regress-3247124': [PASS, SLOW],
# Requires bigger stack size in the Genesis and if stack size is increased,
# the test requires too much time to run. However, the problem test covers
# should be platform-independent.
'regress/regress-1132': [SKIP],
# Currently always deopt on minus zero
'math-floor-of-div-minus-zero': [SKIP],
}], # 'arch == mips64el or arch == mips64'
##############################################################################
['system == windows', {
# TODO(mstarzinger): Too slow with turbo fan.
'big-object-literal': [PASS, ['mode == debug', SKIP]],
'math-floor-of-div': [PASS, ['mode == debug', SKIP]],
'math-floor-of-div-nosudiv': [PASS, ['mode == debug', SKIP]],
'osr-regress-max-locals': [PASS, ['mode == debug', SKIP]],
'unicodelctest': [PASS, ['mode == debug', SKIP]],
# BUG(v8:3435)
'debug-script-breakpoints': [PASS, FAIL],
# BUG(v8:4495).
'es6/collections': [PASS, ['arch == ia32', FAST_VARIANTS]],
}], # 'system == windows'
##############################################################################
# Native Client uses the ARM simulator so will behave similarly to arm
# on mjsunit tests.
# TODO(bradchen): enable more tests for NaCl V8 when it stops using
# the ARM simulator.
##############################################################################
['arch == nacl_ia32 or arch == nacl_x64', {
# There is no /tmp directory for NaCl runs
'd8-os': [SKIP],
# Stack manipulations in LiveEdit is not implemented for this arch.
'debug-liveedit-check-stack': [SKIP],
'debug-liveedit-stack-padding': [SKIP],
'debug-liveedit-restart-frame': [SKIP],
'debug-liveedit-double-call': [SKIP],
'harmony/generators-debug-liveedit': [SKIP],
# NaCl builds have problems with this test since Pepper_28.
# V8 Issue 2786
'math-exp-precision': [SKIP],
# Requires bigger stack size in the Genesis and if stack size is increased,
# the test requires too much time to run. However, the problem test covers
# should be platform-independent.
'regress/regress-1132': [SKIP],
# Poor performance for NaCl V8 causes an assertion failure for this test.
'regress/regress-165637': [SKIP],
# Skip long running test that times out in debug mode and goes OOM on NaCl.
'regress/regress-crbug-160010': [SKIP],
# Skip tests that timout with turbofan.
'regress/regress-1257': [PASS, NO_VARIANTS],
'regress/regress-2618': [PASS, NO_VARIANTS],
'regress/regress-298269': [PASS, NO_VARIANTS],
'regress/regress-634': [PASS, NO_VARIANTS],
'regress/regress-91008': [PASS, NO_VARIANTS],
'compiler/osr-alignment': [PASS, NO_VARIANTS],
'compiler/osr-one': [PASS, NO_VARIANTS],
'compiler/osr-two': [PASS, NO_VARIANTS],
'stack-traces-overflow': [PASS, NO_VARIANTS],
'mirror-object': [PASS, NO_VARIANTS],
# Bug(v8:2978).
'lithium/MathExp': [PASS, FAIL],
# Lead to OOM:
'string-oom-*': [SKIP],
# Crashes.
'harmony/private': [SKIP],
'harmony/symbols': [SKIP],
}], # 'arch == nacl_ia32 or arch == nacl_x64'
##############################################################################
['deopt_fuzzer == True', {
# Skip tests that are not suitable for deoptimization fuzzing.
'assert-opt-and-deopt': [SKIP],
'never-optimize': [SKIP],
'regress/regress-2185-2': [SKIP],
'readonly': [SKIP],
'array-feedback': [SKIP],
# Bounds check triggers forced deopt for array constructors.
'array-constructor-feedback': [SKIP],
# Deopting uses just enough memory to make this one OOM.
'regress/regress-3976': [SKIP],
# Deopt every n garbage collections collides with deopt every n times.
'regress/regress-2653': [SKIP],
}], # 'deopt_fuzzer == True'
##############################################################################
['predictable == True', {
# Skip tests that are known to be non-deterministic.
'd8-worker-sharedarraybuffer': [SKIP],
}], # 'predictable == True'
##############################################################################
['arch == ppc and simulator_run == True or arch == ppc64 and simulator_run == True', {
# take too long with the simulator.
'regress/regress-1132': [SKIP],
}], # 'arch == ppc and simulator_run == True'
['ignition == True', {
'asm/*': [SKIP],
'compiler/*': [SKIP],
'const*': [SKIP],
'debug-*': [SKIP],
'es6/*': [SKIP],
'es7/*': [SKIP],
'strong/*': [SKIP],
'harmony/*': [SKIP],
'regress/debug*': [SKIP],
'regress/regress-debug*': [SKIP],
'allocation-folding': [SKIP],
'api-call-after-bypassed-exception': [SKIP],
'apply-arguments-gc-safepoint': [SKIP],
'arguments-load-across-eval': [SKIP],
'arguments-read-and-assignment': [SKIP],
'array-bounds-check-removal': [SKIP],
'array-constructor': [SKIP],
'array-elements-from-array-prototype-chain': [SKIP],
'array-functions-prototype-misc': [SKIP],
'array-join': [SKIP],
'array-length-number-conversion': [SKIP],
'array-literal-feedback': [SKIP],
'array-literal-transitions': [SKIP],
'array-reduce': [SKIP],
'array-tostring': [SKIP],
'assert-opt-and-deopt': [SKIP],
'big-array-literal': [SKIP],
'break': [SKIP],
'call-runtime-tail': [SKIP],
'context-calls-maintained': [SKIP],
'contextual-calls': [SKIP],
'cross-realm-filtering': [SKIP],
'cyclic-array-to-string': [SKIP],
'd8-worker-sharedarraybuffer': [SKIP],
'deopt-minus-zero': [SKIP],
'deopt-with-fp-regs': [SKIP],
'deserialize-script-id': [SKIP],
'div-mul-minus-one': [SKIP],
'double-equals': [SKIP],
'double-intrinsics': [SKIP],
'elements-transition-hoisting': [SKIP],
'error-constructors': [SKIP],
'eval-enclosing-function-name': [SKIP],
'eval-stack-trace': [SKIP],
'fast-prototype': [SKIP],
'for-in-special-cases': [SKIP],
'function-call': [SKIP],
'get-caller-js-function': [SKIP],
'get-prototype-of': [SKIP],
'getter-in-prototype': [SKIP],
'getters-on-elements': [SKIP],
'global-hash': [SKIP],
'global-load-from-eval-in-with': [SKIP],
'global-vars-with': [SKIP],
'instanceof-2': [SKIP],
'math-floor-of-div-minus-zero': [SKIP],
'math-min-max': [SKIP],
'messages': [SKIP],
'mirror-object': [SKIP],
'numops-fuzz-part1': [SKIP],
'numops-fuzz-part2': [SKIP],
'numops-fuzz-part3': [SKIP],
'numops-fuzz-part4': [SKIP],
'object-literal-gc': [SKIP],
'osr-elements-kind': [SKIP],
'property-load-across-eval': [SKIP],
'proto-accessor': [SKIP],
'regress-3225': [SKIP],
'regress/clear-keyed-call': [SKIP],
'regress/regress-102153': [SKIP],
'regress/regress-1079': [SKIP],
'regress/regress-109195': [SKIP],
'regress/regress-1114040': [SKIP],
'regress/regress-1125': [SKIP],
'regress/regress-1129': [SKIP],
'regress/regress-117409': [SKIP],
'regress/regress-1177809': [SKIP],
'regress/regress-119609': [SKIP],
'regress/regress-1209': [SKIP],
'regress/regress-124594': [SKIP],
'regress/regress-124': [SKIP],
'regress/regress-125515': [SKIP],
'regress/regress-128018': [SKIP],
'regress/regress-131994': [SKIP],
'regress/regress-133211b': [SKIP],
'regress/regress-1365': [SKIP],
'regress/regress-1369': [SKIP],
'regress/regress-1403': [SKIP],
'regress/regress-1412': [SKIP],
'regress/regress-1415': [SKIP],
'regress/regress-1436': [SKIP],
'regress/regress-1493017': [SKIP],
'regress/regress-1523': [SKIP],
'regress/regress-1560': [SKIP],
'regress/regress-1586': [SKIP],
'regress/regress-1639-2': [SKIP],
'regress/regress-1639': [SKIP],
'regress/regress-166553': [SKIP],
'regress/regress-1708': [SKIP],
'regress/regress-1757': [SKIP],
'regress/regress-1790': [SKIP],
'regress/regress-1980': [SKIP],
'regress/regress-2054': [SKIP],
'regress/regress-2071': [SKIP],
'regress/regress-2132': [SKIP],
'regress/regress-2163': [SKIP],
'regress/regress-2318': [SKIP],
'regress/regress-2339': [SKIP],
'regress/regress-2444': [SKIP],
'regress/regress-244': [SKIP],
'regress/regress-2593': [SKIP],
'regress/regress-2594': [SKIP],
'regress/regress-2618': [SKIP],
'regress/regress-263': [SKIP],
'regress/regress-265': [SKIP],
'regress/regress-269': [SKIP],
'regress/regress-2790': [SKIP],
'regress/regress-2825': [SKIP],
'regress/regress-286': [SKIP],
'regress/regress-298269': [SKIP],
'regress/regress-3176': [SKIP],
'regress/regress-318420': [SKIP],
'regress/regress-320532': [SKIP],
'regress/regress-3281': [SKIP],
'regress/regress-331444': [SKIP],
'regress/regress-343609': [SKIP],
'regress/regress-347530': [SKIP],
'regress/regress-352982': [SKIP],
'regress/regress-354357': [SKIP],
'regress/regress-356053': [SKIP],
'regress/regress-357105': [SKIP],
'regress/regress-361025': [SKIP],
'regress/regress-3621': [SKIP],
'regress/regress-365172-3': [SKIP],
'regress/regress-370827': [SKIP],
'regress/regress-3709': [SKIP],
'regress/regress-377290': [SKIP],
'regress/regress-385565': [SKIP],
'regress/regress-3859': [SKIP],
'regress/regress-3884': [SKIP],
'regress/regress-3926': [SKIP],
'regress/regress-3960': [SKIP],
'regress/regress-3969': [SKIP],
'regress/regress-4023': [SKIP],
'regress/regress-4027': [SKIP],
'regress/regress-403292': [SKIP],
'regress/regress-410912': [SKIP],
'regress/regress-4121': [SKIP],
'regress/regress-419663': [SKIP],
'regress/regress-4255-4': [SKIP],
'regress/regress-430201': [SKIP],
'regress/regress-430201b': [SKIP],
'regress/regress-4309-3': [SKIP],
'regress/regress-4320': [SKIP],
'regress/regress-4325': [SKIP],
'regress/regress-436893': [SKIP],
'regress/regress-4374': [SKIP],
'regress/regress-4388': [SKIP],
'regress/regress-444805': [SKIP],
'regress/regress-446389': [SKIP],
'regress/regress-4515': [SKIP],
'regress/regress-4521': [SKIP],
'regress/regress-4525': [SKIP],
'regress/regress-453481': [SKIP],
'regress/regress-4534': [SKIP],
'regress/regress-454725': [SKIP],
'regress/regress-470804': [SKIP],
'regress/regress-476488': [SKIP],
'regress/regress-491536': [SKIP],
'regress/regress-514362': [SKIP],
'regress/regress-520029': [SKIP],
'regress/regress-542099': [SKIP],
'regress/regress-542100': [SKIP],
'regress/regress-580': [SKIP],
'regress/regress-618': [SKIP],
'regress/regress-643': [SKIP],
'regress/regress-69': [SKIP],
'regress/regress-70066': [SKIP],
'regress/regress-747': [SKIP],
'regress/regress-806473': [SKIP],
'regress/regress-842017': [SKIP],
'regress/regress-84234': [SKIP],
'regress/regress-88858': [SKIP],
'regress/regress-94425': [SKIP],
'regress/regress-94873': [SKIP],
'regress/regress-95485': [SKIP],
'regress/regress-97116b': [SKIP],
'regress/regress-97116': [SKIP],
'regress/regress-974': [SKIP],
'regress/regress-99167': [SKIP],
'regress/regress-998565': [SKIP],
'regress/regress-arguments-gc': [SKIP],
'regress/regress-assignment-in-test-context': [SKIP],
'regress/regress-cnlt-elements': [SKIP],
'regress/regress-cnlt-enum-indices': [SKIP],
'regress/regress-cntl-descriptors-enum': [SKIP],
'regress/regress-conditional-position': [SKIP],
'regress/regress-convert-enum': [SKIP],
'regress/regress-crbug-119800': [SKIP],
'regress/regress-crbug-135008': [SKIP],
'regress/regress-crbug-229923': [SKIP],
'regress/regress-crbug-242502': [SKIP],
'regress/regress-crbug-242924': [SKIP],
'regress/regress-crbug-245480': [SKIP],
'regress/regress-crbug-349079': [SKIP],
'regress/regress-crbug-350864': [SKIP],
'regress/regress-crbug-352058': [SKIP],
'regress/regress-crbug-357137': [SKIP],
'regress/regress-crbug-385002': [SKIP],
'regress/regress-crbug-387599': [SKIP],
'regress/regress-crbug-405922': [SKIP],
'regress/regress-crbug-409614': [SKIP],
'regress/regress-crbug-410033': [SKIP],
'regress/regress-crbug-412208': [SKIP],
'regress/regress-crbug-416558': [SKIP],
'regress/regress-crbug-424142': [SKIP],
'regress/regress-crbug-431602': [SKIP],
'regress/regress-crbug-432493': [SKIP],
'regress/regress-crbug-450642': [SKIP],
'regress/regress-crbug-465298': [SKIP],
'regress/regress-crbug-467180': [SKIP],
'regress/regress-crbug-467531': [SKIP],
'regress/regress-crbug-474297': [SKIP],
'regress/regress-crbug-480819': [SKIP],
'regress/regress-crbug-481896': [SKIP],
'regress/regress-crbug-485548-1': [SKIP],
'regress/regress-crbug-485548-2': [SKIP],
'regress/regress-crbug-487289': [SKIP],
'regress/regress-crbug-489293': [SKIP],
'regress/regress-crbug-489597': [SKIP],
'regress/regress-crbug-498142': [SKIP],
'regress/regress-crbug-500824': [SKIP],
'regress/regress-crbug-501809': [SKIP],
'regress/regress-crbug-506443': [SKIP],
'regress/regress-crbug-507070': [SKIP],
'regress/regress-crbug-527364': [SKIP],
'regress/regress-crbug-530598': [SKIP],
'regress/regress-crbug-546968': [SKIP],
'regress/regress-deopt-gcb': [SKIP],
'regress/regress-deopt-gc': [SKIP],
'regress/regress-embedded-cons-string': [SKIP],
'regress/regress-existing-shared-function-info': [SKIP],
'regress/regress-fast-literal-transition': [SKIP],
'regress/regress-force-representation': [SKIP],
'regress/regress-function-constructor-receiver': [SKIP],
'regress/regress-handle-illegal-redeclaration': [SKIP],
'regress/regress-inline-class-constructor': [SKIP],
'regress/regress-inlining-function-literal-context': [SKIP],
'regress/regress-lazy-deopt-reloc': [SKIP],
'regress/regress-map-invalidation-2': [SKIP],
'regress/regress-opt-after-debug-deopt': [SKIP],
'regress/regress-param-local-type': [SKIP],
'regress/regress-prepare-break-while-recompile': [SKIP],
'regress/regress-put-prototype-transition': [SKIP],
'regress/regress-sliced-external-cons-regexp': [SKIP],
'regress/regress-transcendental': [SKIP],
'regress/regress-typedarray-length': [SKIP],
'regress/splice-missing-wb': [SKIP],
'shift-for-integer-div': [SKIP],
'simple-constructor': [SKIP],
'sin-cos': [SKIP],
'smi-mul-const': [SKIP],
'smi-mul': [SKIP],
'sparse-array-reverse': [SKIP],
'stack-traces': [SKIP],
'strict-mode': [SKIP],
'string-case': [SKIP],
'string-external-cached': [SKIP],
'string-externalize': [SKIP],
'string-natives': [SKIP],
'string-replace-with-empty': [SKIP],
'string-slices': [SKIP],
'switch-opt': [SKIP],
'tools/profile': [SKIP],
'tools/profviz': [SKIP],
'try-finally-continue': [SKIP],
'try': [SKIP],
'unary-minus-deopt': [SKIP],
'undetectable-compare': [SKIP],
'unused-context-in-with': [SKIP],
'uri': [SKIP],
'value-wrapper': [SKIP],
'with-parameter-access': [SKIP],
'with-prototype': [SKIP],
'with-readonly': [SKIP],
}], # ignition == True
['ignition == True and arch == arm and mode == debug', {
'date-parse': [SKIP],
'math-floor-part1': [SKIP],
'regress/regress-1167': [SKIP],
'regress/regress-165637': [SKIP],
'regress/regress-2249': [SKIP],
'regress/regress-542823': [SKIP],
'regress/regress-634-debug': [SKIP],
'regress/regress-78270': [SKIP],
'regress/regress-crbug-347903': [SKIP],
'regress/short-circuit': [SKIP],
'stack-traces-overflow': [SKIP],
'unicodelctest': [SKIP],
'unicodelctest-no-optimization': [SKIP],
}], # ignition == True and arch == arm and mode == debug
]