| # 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], |
| |
| ############################################################################## |
| # 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], |
| |
| # Issue 3641: The new 'then' semantics suppress some exceptions. |
| # These tests may be changed or removed when 'chain' is deprecated. |
| 'es6/debug-promises/reject-with-throw-in-reject': [FAIL], |
| 'es6/debug-promises/reject-with-undefined-reject': [FAIL], |
| 'es6/debug-promises/reject-with-invalid-reject': [FAIL], |
| |
| # Issue 3660: Replacing activated TurboFan frames by unoptimized code does |
| # not work, but we expect it to not crash. |
| 'debug-step-turbofan': [PASS, FAIL], |
| |
| ############################################################################## |
| # Too slow in debug mode with --stress-opt mode. |
| '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]], |
| |
| # Too slow in debug mode and under turbofan. |
| 'regress/regress-4595': [PASS, NO_VARIANTS, ['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. |
| # TODO(arm): This seems to flush out a bug on arm with simulator. |
| 'array-constructor': [PASS, TIMEOUT, ['arch == arm and simulator == True', SKIP]], |
| |
| # Issue 4413: this test sometimes times out with TSAN because we trigger |
| # the slow path in C++ with holey arrays in Function.prototype.apply. |
| # TODO(bmeurer): Add fast support for holey arrays in apply. |
| 'apply': [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]], |
| |
| ############################################################################## |
| # 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]], |
| 'tools/dumpcpp': [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-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]], |
| |
| # 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], |
| |
| # Slow tests. |
| 'copy-on-write-assert': [PASS, SLOW], |
| 'debug-scopes': [PASS, SLOW], |
| 'numops-fuzz-part*': [PASS, ['mode == debug', SLOW]], |
| 'readonly': [PASS, SLOW], |
| 'regress/regress-1200351': [PASS, SLOW], |
| 'regress/regress-crbug-474297': [PASS, ['mode == debug', SLOW]], |
| 'es6/tail-call-megatest*': [PASS, SLOW, FAST_VARIANTS, ['tsan', SKIP]], |
| |
| # TODO(titzer): ASM->WASM tests on these platforms |
| 'wasm/asm-wasm': [PASS, ['arch in [arm, arm64, mips, mipsel, mips64, mips64el]', SKIP]], |
| # TODO(branelson): Figure out why ignition + asm-wasm-stdlib fails. |
| # TODO(branelson): The old status entry was misconfigured as it added |
| # "or ignition == True". This was deprecated at some point and was never |
| # true. Essentially the next lines skip the tests for a bunch of |
| # architectures. |
| 'wasm/asm-wasm-stdlib': [PASS, ['arch in [arm, arm64, mips, mipsel, mips64, mips64el]', SKIP]], |
| 'wasm/asm-wasm-literals': [PASS, ['arch in [arm, arm64, mips, mipsel, mips64, mips64el]', SKIP]], |
| 'wasm/asm-wasm-copy': [PASS, ['arch in [arm, arm64, mips, mipsel, mips64, mips64el]', SKIP]], |
| 'wasm/asm-wasm-deopt': [PASS, ['arch in [arm, arm64, mips, mipsel, mips64, mips64el]', SKIP]], |
| 'wasm/asm-wasm-switch': [PASS, ['arch in [arm, arm64, mips, mipsel, mips64, mips64el]', SKIP]], |
| |
| # case-insensitive unicode regexp relies on case mapping provided by ICU. |
| 'es6/unicode-regexp-ignore-case': [PASS, ['no_i18n == True', FAIL]], |
| 'es6/unicode-regexp-ignore-case-noi18n': [FAIL, ['no_i18n == True', PASS]], |
| 'regress/regress-5036': [PASS, ['no_i18n == True', FAIL]], |
| # desugaring regexp property class relies on ICU. |
| 'harmony/regexp-property-*': [PASS, ['no_i18n == True', FAIL]], |
| |
| # TODO(bmeurer): Flaky timeouts (sometimes <1s, sometimes >3m). |
| 'unicodelctest': [PASS, NO_VARIANTS], |
| 'unicodelctest-no-optimization': [PASS, NO_VARIANTS], |
| |
| # TODO(rmcilroy,5038): Crashes in Deoptimizer::PatchCodeForDeoptimization on |
| # nosnap builds when --stress-opt and --turbo-from-bytecode is enabled. |
| 'harmony/generators-turbo': [PASS, FAST_VARIANTS], |
| }], # 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], |
| '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-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], |
| |
| # 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], |
| |
| # BUG(v8:4779): Crashes flakily with stress mode on arm64. |
| 'array-splice': [PASS, SLOW, ['arch == arm64', FAST_VARIANTS]], |
| |
| # BUG(v8:5053). |
| 'wasm/embenchen/fasta': [PASS, FAST_VARIANTS], |
| }], # 'gc_stress == True' |
| |
| ############################################################################## |
| ['byteorder == big', { |
| # Emscripten requires little-endian, skip all tests on big endian platforms. |
| 'asm/embenchen/*': [SKIP], |
| 'asm/poppler/*': [SKIP], |
| 'asm/sqlite3/*': [SKIP], |
| # TODO(mips-team): Fix Wasm for big-endian. |
| 'wasm/*': [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-4': [SKIP], |
| 'compiler/regress-or': [SKIP], |
| 'compiler/regress-rep-change': [SKIP], |
| 'regress/regress-1117': [SKIP], |
| 'regress/regress-1849': [SKIP], |
| 'regress/regress-3247124': [SKIP], |
| 'regress/regress-91008': [SKIP], |
| 'regress/regress-91010': [SKIP], |
| 'regress/regress-91013': [SKIP], |
| 'regress/regress-99167': [SKIP], |
| |
| # 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], |
| 'whitespaces': [PASS, TIMEOUT, SLOW], |
| }], # 'arch == arm64' |
| |
| ['arch == arm64 and mode == debug and simulator_run == True', { |
| |
| # Pass but take too long with the simulator in debug mode. |
| 'array-sort': [PASS, TIMEOUT], |
| 'packed-elements': [SKIP], |
| 'regexp-global': [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], |
| |
| # Too slow. |
| 'harmony/regexp-property-lu-ui': [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, SLOW, ['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 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-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. |
| 'array-sort': [PASS, SLOW], |
| 'compiler/osr-with-args': [PASS, SLOW], |
| 'mirror-object': [PASS, SLOW], |
| 'packed-elements': [PASS, SLOW], |
| 'regress/regress-2185-2': [PASS, SLOW], |
| 'regress/regress-2790': [PASS, SLOW], |
| 'regress/regress-91008': [PASS, SLOW], |
| 'regress/regress-json-stringify-gc': [PASS, SLOW], |
| 'string-indexof-2': [PASS, TIMEOUT], |
| }], # '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-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 == 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-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': [SKIP], |
| 'math-floor-of-div': [PASS, ['mode == debug', SKIP]], |
| 'math-floor-of-div-nosudiv': [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' |
| |
| ############################################################################## |
| ['system == macos', { |
| # BUG(v8:5333) |
| 'big-object-literal': [SKIP], |
| }], # 'system == macos' |
| |
| ############################################################################## |
| ['arch == s390 or arch == s390x', { |
| |
| # 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], |
| }], # 'arch == s390 or arch == s390x' |
| |
| ############################################################################## |
| ['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], |
| |
| # Too slow. |
| 'es6/tail-call-megatest*': [SKIP], |
| |
| # Ongoing implementation of modules. |
| # https://bugs.chromium.org/p/v8/issues/detail?id=1569 |
| # The deopt fuzzer currently does not respect the 'variant != ignition' rule |
| # further down in this file, so we have to duplicate this here. |
| # https://bugs.chromium.org/p/v8/issues/detail?id=5374 |
| 'modules-*': [SKIP], |
| }], # 'deopt_fuzzer == True' |
| |
| ############################################################################## |
| ['predictable == True', { |
| |
| # Skip tests that are known to be non-deterministic. |
| 'd8-worker-sharedarraybuffer': [SKIP], |
| 'd8-os': [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' |
| |
| ############################################################################## |
| ['arch == ppc64', { |
| |
| # stack overflow |
| 'big-array-literal': [SKIP], |
| 'regress/regress-353551': [SKIP], |
| }], # 'arch == ppc64' |
| |
| ############################################################################## |
| ['variant == stress', { |
| 'debug-evaluate-locals-optimized': [FAIL], |
| 'debug-evaluate-locals-optimized-double': [FAIL], |
| 'ignition/regress-599001-verifyheap': [SKIP], |
| 'unicode-test': [SKIP], |
| }], # variant == stress |
| |
| ############################################################################## |
| ['variant == turbofan', { |
| |
| # Assumptions about optimization need investigation in TurboFan. |
| 'regress-sync-optimized-lists': [FAIL], |
| |
| }], # variant == turbofan |
| |
| ############################################################################## |
| ['variant == turbofan_opt', { |
| |
| # TODO(jarin/mstarzinger): Investigate debugger issues with TurboFan. |
| 'debug-evaluate-closure': [FAIL], |
| 'debug-evaluate-locals': [FAIL], |
| 'debug-set-variable-value': [FAIL], |
| 'debug-evaluate-locals-optimized': [FAIL], |
| 'debug-evaluate-locals-optimized-double': [FAIL], |
| 'debug-liveedit-double-call': [FAIL], |
| 'es6/debug-evaluate-blockscopes': [FAIL], |
| |
| # TODO(jgruber): Fails in --turbo --always-opt mode. |
| 'regress/regress-105': [FAIL], |
| |
| # Too slow. |
| 'big-object-literal': [SKIP], |
| 'ignition/regress-599001-verifyheap': [SKIP], |
| 'unicode-test': [SKIP], |
| |
| }], # variant == turbofan_opt |
| |
| ############################################################################## |
| ['variant == ignition', { |
| 'debug-liveedit-double-call': [FAIL], |
| 'regress-sync-optimized-lists': [FAIL], |
| |
| # Might trigger stack overflow. |
| 'unicode-test': [SKIP], |
| |
| # TODO(4680): Test doesn't know about three tier compiler pipeline. |
| 'assert-opt-and-deopt': [SKIP], |
| |
| # BUG(rmcilroy,4989): Function is optimized without type feedback and so |
| # immediately deopts again, causing check failure in the test. |
| 'compiler/deopt-inlined-from-call': [FAIL], |
| 'compiler/increment-typefeedback': [FAIL], |
| 'compiler/manual-concurrent-recompile': [FAIL], |
| 'constant-folding-2': [FAIL], |
| 'debug-is-active': [FAIL], |
| 'deopt-with-fp-regs': [FAIL], |
| 'deserialize-optimize-inner': [FAIL], |
| 'div-mul-minus-one': [FAIL], |
| 'double-intrinsics': [FAIL], |
| 'elements-transition-hoisting': [FAIL], |
| 'es6/block-let-crankshaft': [FAIL], |
| 'es6/block-let-crankshaft-sloppy': [FAIL], |
| 'getters-on-elements': [FAIL], |
| 'harmony/do-expressions': [FAIL], |
| 'math-floor-of-div-minus-zero': [FAIL], |
| 'regress/regress-2132': [FAIL], |
| 'regress/regress-2339': [FAIL], |
| 'regress/regress-3176': [FAIL], |
| 'regress/regress-3709': [FAIL], |
| 'regress/regress-385565': [FAIL], |
| 'regress/regress-crbug-594183': [FAIL], |
| 'regress/regress-embedded-cons-string': [FAIL], |
| 'regress/regress-map-invalidation-2': [FAIL], |
| 'regress/regress-param-local-type': [FAIL], |
| 'regress/regress-prepare-break-while-recompile': [FAIL], |
| 'shift-for-integer-div': [FAIL], |
| 'sin-cos': [FAIL], |
| 'smi-mul-const': [FAIL], |
| 'smi-mul': [FAIL], |
| 'unary-minus-deopt': [FAIL], |
| }], # variant == ignition |
| |
| ['variant == ignition and arch == arm64', { |
| # TODO(rmcilroy,4680): Arm64 specific timeouts. |
| 'asm/construct-double': [SKIP], |
| 'compiler/osr-one': [SKIP], |
| 'compiler/osr-two': [SKIP], |
| 'wasm/asm-wasm-i32': [SKIP], |
| 'wasm/asm-wasm-u32': [SKIP], |
| }], # variant == ignition and arch == arm64 |
| |
| ['variant == ignition and arch == arm', { |
| # TODO(rmcilroy,4680): Arm specific timeouts. |
| 'compiler/osr-one': [SKIP], |
| 'compiler/osr-two': [SKIP], |
| 'regress/regress-1257': [SKIP], |
| }], # variant == ignition and arch == arm |
| |
| ['variant == ignition and msan', { |
| # TODO(mythria,4680): All of these tests have large loops and hence slow |
| # and timeout. |
| 'compiler/osr-big': [SKIP], |
| 'compiler/osr-nested': [SKIP], |
| 'regress/regress-298269': [SKIP], |
| 'regress/regress-crbug-319860': [SKIP], |
| 'regress/regress-deep-proto': [SKIP], |
| 'try': [SKIP], |
| # Too slow for interpreter and msan. |
| 'es6/tail-call-megatest*': [SKIP], |
| }], # variant == ignition and msan |
| |
| ############################################################################## |
| ['variant == ignition_staging', { |
| 'assert-opt-and-deopt': [SKIP], |
| 'compiler/deopt-inlined-from-call': [FAIL], |
| 'compiler/increment-typefeedback': [FAIL], |
| 'compiler/manual-concurrent-recompile': [FAIL], |
| 'constant-folding-2': [FAIL], |
| 'debug-is-active': [FAIL], |
| 'debug-liveedit-double-call': [FAIL], |
| 'deopt-with-fp-regs': [FAIL], |
| 'deserialize-optimize-inner': [FAIL], |
| 'div-mul-minus-one': [FAIL], |
| 'elements-transition-hoisting': [FAIL], |
| 'es6/block-let-crankshaft': [FAIL], |
| 'es6/block-let-crankshaft-sloppy': [FAIL], |
| 'getters-on-elements': [FAIL], |
| 'harmony/do-expressions': [FAIL], |
| 'math-floor-of-div-minus-zero': [FAIL], |
| 'regress/regress-2132': [FAIL], |
| 'regress/regress-2339': [FAIL], |
| 'regress/regress-3176': [FAIL], |
| 'regress/regress-3709': [FAIL], |
| 'regress/regress-385565': [FAIL], |
| 'regress/regress-crbug-594183': [FAIL], |
| 'regress/regress-embedded-cons-string': [FAIL], |
| 'regress/regress-map-invalidation-2': [FAIL], |
| 'regress/regress-param-local-type': [FAIL], |
| 'regress/regress-prepare-break-while-recompile': [FAIL], |
| 'regress-sync-optimized-lists': [FAIL], |
| 'shift-for-integer-div': [FAIL], |
| 'sin-cos': [FAIL], |
| 'smi-mul-const': [FAIL], |
| 'smi-mul': [FAIL], |
| 'unary-minus-deopt': [FAIL], |
| |
| # Flaky. |
| 'asm/int32div': [SKIP], |
| 'asm/int32mod': [SKIP], |
| 'compiler/uint32': [SKIP], |
| 'regress/regress-454725': [SKIP], |
| |
| # Might trigger stack overflow. |
| 'unicode-test': [SKIP], |
| |
| }], # variant == ignition_staging |
| |
| ############################################################################## |
| ['variant == ignition_turbofan', { |
| 'debug-liveedit-double-call': [FAIL], |
| |
| # Might trigger stack overflow. |
| 'unicode-test': [SKIP], |
| |
| 'wasm/asm-wasm-f32': [PASS, ['arch in [arm64]', SKIP]], |
| 'wasm/asm-wasm-f64': [PASS, ['arch in [arm64]', SKIP]], |
| |
| # TODO(rmcilroy,titzer): Times out after |
| # https://codereview.chromium.org/1951013002 . |
| 'regress/regress-599717': [PASS, ['tsan', SKIP]], |
| |
| # TODO(rmcilroy,5038): Crashes in Deoptimizer::PatchCodeForDeoptimization on |
| # nosnap builds when --stress-opt and --turbo-from-bytecode is enabled. |
| 'harmony/generators-turbo': [PASS, FAST_VARIANTS], |
| 'regress/regress-crbug-352058': [SKIP], |
| |
| # TODO(jarin): No truncations on CheckFloat64Hole. |
| 'getters-on-elements': [SKIP], |
| |
| # TODO(rmcilroy): Flaky OOM. |
| 'unicodelctest-no-optimization': [SKIP], |
| }], # variant == ignition_turbofan |
| |
| ['variant == ignition_turbofan and arch == arm64', { |
| # TODO(rmcilroy,4680): Arm64 specific timeouts. |
| 'asm/construct-double': [SKIP], |
| 'compiler/osr-one': [SKIP], |
| 'compiler/osr-two': [SKIP], |
| 'wasm/asm-wasm-i32': [SKIP], |
| 'wasm/asm-wasm-u32': [SKIP], |
| }], # variant == ignition_turbofan and arch == arm64 |
| |
| ['variant == ignition_turbofan and arch == arm', { |
| # TODO(rmcilroy,4680): Arm specific timeouts. |
| 'compiler/osr-one': [SKIP], |
| 'compiler/osr-two': [SKIP], |
| 'regress/regress-1257': [SKIP], |
| }], # variant == ignition_turbofan and arch == arm |
| |
| ['variant == ignition_turbofan and msan', { |
| # TODO(mythria,4680): All of these tests have large loops and hence slow |
| # and timeout. |
| 'compiler/osr-big': [SKIP], |
| 'compiler/osr-nested': [SKIP], |
| 'regress/regress-298269': [SKIP], |
| 'regress/regress-crbug-319860': [SKIP], |
| 'regress/regress-deep-proto': [SKIP], |
| 'try': [SKIP], |
| # Too slow for interpreter and msan. |
| 'es6/tail-call-megatest*': [SKIP], |
| }], # variant == ignition_turbofan and msan |
| |
| ['variant != ignition', { |
| # Ongoing implementation of modules. |
| # https://bugs.chromium.org/p/v8/issues/detail?id=1569 |
| 'modules-*': [SKIP], |
| }], # variants != ignition |
| |
| ############################################################################## |
| ['gcov_coverage', { |
| # Tests taking too long. |
| 'array-functions-prototype-misc': [SKIP], |
| |
| # Stack overflow. |
| 'big-array-literal': [SKIP], |
| }], # 'gcov_coverage' |
| |
| ############################################################################## |
| ['variant == asm_wasm', { |
| # Skip stuff uninteresting for asm.js |
| 'bugs/*': [SKIP], |
| 'compiler/*': [SKIP], |
| 'es6/*': [SKIP], |
| 'es7/*': [SKIP], |
| 'es8/*': [SKIP], |
| 'harmony/*': [SKIP], |
| 'ignition/*': [SKIP], |
| 'lithium/*': [SKIP], |
| 'third_party/*': [SKIP], |
| 'tools/*': [SKIP], |
| 'apply': [SKIP], |
| 'math-*': [SKIP], |
| 'unicode-test': [SKIP], |
| 'whitespaces': [SKIP], |
| }], # variant == asm_wasm |
| |
| ] |