# 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], ############################################################################## # 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], # Proxy tests rely on non ES6 version of Proxies # TODO(neis,cbruni): figure out which Proxy tests can be reused 'harmony/proxies-example-membrane': [SKIP], 'strong/load-proxy': [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. # TODO(rossberg) 'strong/literals': [SKIP], # Rest arguments do not respect strongness in 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: Scope chain length observed by debugger is off. '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], 'regress/regress-store-uncacheable': [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]], # 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. 'array-constructor': [PASS, TIMEOUT], # 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]], ############################################################################## # 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], # TODO(bradnelson): Enable tests in a separate change. 'wasm/*': [SKIP], }], # 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-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], # 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-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, 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-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. '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-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', { 'const*': [SKIP], 'debug-*': [SKIP], 'es6/*': [SKIP], 'es7/*': [SKIP], 'strong/*': [SKIP], 'harmony/*': [SKIP], 'regress/debug*': [SKIP], 'regress/regress-debug*': [SKIP], # TODO(bradnelson): Figure out why these tests fail with ignition. 'wasm/*': [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-elements-from-array-prototype-chain': [SKIP], 'array-functions-prototype-misc': [SKIP], 'array-join': [SKIP], 'array-literal-feedback': [SKIP], 'array-literal-transitions': [SKIP], 'array-tostring': [SKIP], 'break': [SKIP], 'call-runtime-tail': [SKIP], 'compiler/compare-map-elim2': [SKIP], 'compiler/deopt-inlined-smi': [SKIP], 'compiler/deopt-tonumber-compare': [SKIP], 'compiler/escape-analysis-arguments': [SKIP], 'compiler/escape-analysis': [SKIP], 'compiler/expression-trees': [SKIP], 'compiler/inline-arguments': [SKIP], 'compiler/inline-arity-mismatch': [SKIP], 'compiler/inline-construct': [SKIP], 'compiler/lazy-deopt-in-literal': [SKIP], 'compiler/manual-concurrent-recompile': [SKIP], 'compiler/optimized-for-in': [SKIP], 'compiler/optimized-function-calls': [SKIP], 'compiler/optimize_max': [SKIP], 'compiler/optimize_min': [SKIP], 'compiler/opt-next-call-turbo': [SKIP], 'compiler/osr-forof': [SKIP], 'compiler/property-refs': [SKIP], 'compiler/regress-3786': [SKIP], 'compiler/regress-446647': [SKIP], 'compiler/regress-447567': [SKIP], 'compiler/regress-469089': [SKIP], 'compiler/regress-96989': [SKIP], 'compiler/regress-const': [SKIP], 'compiler/regress-funarguments': [SKIP], 'compiler/regress-stacktrace-methods': [SKIP], 'compiler/regress-variable-liveness': [SKIP], 'compiler/rotate': [SKIP], 'compiler/safepoint': [SKIP], 'compiler/try-deopt': [SKIP], 'compiler/try-osr': [SKIP], 'compiler/uint32': [SKIP], 'compiler/variables': [SKIP], 'context-calls-maintained': [SKIP], 'contextual-calls': [SKIP], 'cross-realm-filtering': [SKIP], 'cyclic-array-to-string': [SKIP], 'd8-worker-sharedarraybuffer': [SKIP], 'delete-in-with': [SKIP], 'deopt-minus-zero': [SKIP], 'deserialize-optimize-inner': [SKIP], 'double-equals': [SKIP], 'eval-enclosing-function-name': [SKIP], 'eval-stack-trace': [SKIP], 'fast-prototype': [SKIP], 'field-type-tracking': [SKIP], 'for-in-opt': [SKIP], 'for-in-special-cases': [SKIP], 'function-call': [SKIP], 'get-caller-js-function': [SKIP], 'get-prototype-of': [SKIP], 'getter-in-prototype': [SKIP], 'global-hash': [SKIP], 'global-load-from-eval-in-with': [SKIP], 'global-vars-with': [SKIP], 'instanceof-2': [SKIP], 'json-replacer-number-wrapper-tostring': [SKIP], 'json-replacer-order': [SKIP], 'json': [SKIP], 'keyed-load-with-symbol-key': [SKIP], 'local-load-from-eval': [SKIP], 'math-min-max': [SKIP], 'messages': [SKIP], 'mirror-object': [SKIP], 'object-literal-gc': [SKIP], 'osr-elements-kind': [SKIP], 'property-load-across-eval': [SKIP], 'proto-accessor': [SKIP], 'readonly': [SKIP], 'receiver-in-with-calls': [SKIP], 'regress-3225': [SKIP], 'regress/clear-keyed-call': [SKIP], 'regress/poly_count_operation': [SKIP], 'regress/regress-102153': [SKIP], 'regress/regress-1030466': [SKIP], 'regress/regress-1079': [SKIP], 'regress/regress-109195': [SKIP], 'regress/regress-1114040': [SKIP], 'regress/regress-1125': [SKIP], 'regress/regress-1129': [SKIP], 'regress/regress-1170187': [SKIP], 'regress/regress-117409': [SKIP], 'regress/regress-1177809': [SKIP], 'regress/regress-119609': [SKIP], 'regress/regress-123919': [SKIP], 'regress/regress-124594': [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-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-1853': [SKIP], 'regress/regress-1980': [SKIP], 'regress/regress-2054': [SKIP], 'regress/regress-2071': [SKIP], 'regress/regress-2163': [SKIP], 'regress/regress-220': [SKIP], 'regress/regress-2318': [SKIP], 'regress/regress-2339': [SKIP], 'regress/regress-2374': [SKIP], 'regress/regress-2593': [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-3135': [SKIP], 'regress/regress-3138': [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-347914': [SKIP], 'regress/regress-351261': [SKIP], 'regress/regress-352982': [SKIP], 'regress/regress-353551': [SKIP], 'regress/regress-354357': [SKIP], 'regress/regress-356053': [SKIP], 'regress/regress-357105': [SKIP], 'regress/regress-359441': [SKIP], 'regress/regress-361025': [SKIP], 'regress/regress-3621': [SKIP], 'regress/regress-365172-3': [SKIP], 'regress/regress-370827': [SKIP], 'regress/regress-377290': [SKIP], 'regress/regress-3859': [SKIP], 'regress/regress-3884': [SKIP], 'regress/regress-3926': [SKIP], 'regress/regress-3960': [SKIP], 'regress/regress-3969': [SKIP], 'regress/regress-3985': [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-430201b': [SKIP], 'regress/regress-430201': [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-447756': [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-457935': [SKIP], 'regress/regress-470804': [SKIP], 'regress/regress-476488': [SKIP], 'regress/regress-503565': [SKIP], 'regress/regress-514362': [SKIP], 'regress/regress-520029': [SKIP], 'regress/regress-542100': [SKIP], 'regress/regress-544991': [SKIP], 'regress/regress-568765': [SKIP], 'regress/regress-572589': [SKIP], 'regress/regress-580': [SKIP], 'regress/regress-618': [SKIP], 'regress/regress-69': [SKIP], 'regress/regress-70066': [SKIP], 'regress/regress-747': [SKIP], 'regress/regress-753': [SKIP], 'regress/regress-799761': [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-arg-materialize-store': [SKIP], 'regress/regress-arguments-gc': [SKIP], 'regress/regress-assignment-in-test-context': [SKIP], 'regress/regress-bce-underflow': [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-109362': [SKIP], 'regress/regress-crbug-119800': [SKIP], 'regress/regress-crbug-163530': [SKIP], 'regress/regress-crbug-229923': [SKIP], 'regress/regress-crbug-242502': [SKIP], 'regress/regress-crbug-242924': [SKIP], 'regress/regress-crbug-245480': [SKIP], 'regress/regress-crbug-350864': [SKIP], 'regress/regress-crbug-351262': [SKIP], 'regress/regress-crbug-352058': [SKIP], 'regress/regress-crbug-357137': [SKIP], 'regress/regress-crbug-385002': [SKIP], 'regress/regress-crbug-387599': [SKIP], 'regress/regress-crbug-405517': [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-429159': [SKIP], 'regress/regress-crbug-431602': [SKIP], 'regress/regress-crbug-432493': [SKIP], 'regress/regress-crbug-450642': [SKIP], 'regress/regress-crbug-455644': [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-501809': [SKIP], 'regress/regress-crbug-506443': [SKIP], 'regress/regress-crbug-507070': [SKIP], 'regress/regress-crbug-517592': [SKIP], 'regress/regress-crbug-522895': [SKIP], 'regress/regress-crbug-527364': [SKIP], 'regress/regress-crbug-546968': [SKIP], 'regress/regress-crbug-568477-1': [SKIP], 'regress/regress-crbug-568477-2': [SKIP], 'regress/regress-crbug-568477-3': [SKIP], 'regress/regress-crbug-568477-4': [SKIP], 'regress/regress-crbug-572590': [SKIP], 'regress/regress-crbug-573857': [SKIP], 'regress/regress-crbug-575080': [SKIP], 'regress/regress-deopt-gcb': [SKIP], 'regress/regress-deopt-gc': [SKIP], 'regress/regress-deopt-in-array-literal-spread': [SKIP], 'regress/regress-embedded-cons-string': [SKIP], 'regress/regress-existing-shared-function-info': [SKIP], 'regress/regress-fast-literal-transition': [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-latin-1': [SKIP], 'regress/regress-lazy-deopt-reloc': [SKIP], 'regress/regress-opt-after-debug-deopt': [SKIP], 'regress/regress-osr-in-case-label': [SKIP], 'regress/regress-osr-in-literal': [SKIP], 'regress/regress-prepare-break-while-recompile': [SKIP], 'regress/regress-put-prototype-transition': [SKIP], 'regress/regress-sliced-external-cons-regexp': [SKIP], 'regress/regress-store-heapobject': [SKIP], 'regress/regress-transcendental': [SKIP], 'regress/regress-typedarray-length': [SKIP], 'regress/splice-missing-wb': [SKIP], 'setter-on-constructor-prototype': [SKIP], 'shift-for-integer-div': [SKIP], 'simple-constructor': [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], 'tools/profile': [SKIP], 'tools/profviz': [SKIP], 'try-finally-continue': [SKIP], 'try': [SKIP], 'undetectable-compare': [SKIP], 'unused-context-in-with': [SKIP], 'value-wrapper': [SKIP], 'with-function-expression': [SKIP], 'with-parameter-access': [SKIP], 'with-prototype': [SKIP], 'with-readonly': [SKIP], 'with-value': [SKIP], 'regress/regress-builtinbust-7': [SKIP], 'regress/regress-crbug-451770': [SKIP], 'regress/regress-crbug-503968': [SKIP], 'regress/regress-crbug-504729': [SKIP], }], # ignition == True ['ignition == True and (arch == arm or arch == arm64)', { 'array-constructor': [SKIP], 'array-sort': [SKIP], 'array-store-and-grow': [SKIP], 'compiler/division-by-constant': [SKIP], 'compiler/osr-big': [SKIP], 'compiler/osr-nested': [SKIP], 'compiler/osr-one': [SKIP], 'compiler/osr-two': [SKIP], 'mul-exhaustive-part*': [SKIP], 'regress/regress-1257': [SKIP], 'regress/regress-165637': [SKIP], 'regress/regress-319722-ArrayBuffer': [SKIP], 'regress/regress-411210': [SKIP], 'regress/regress-91008': [SKIP], 'regress/regress-crbug-347903': [SKIP], 'regress/regress-crbug-500497': [SKIP], 'regress/regress-crbug-505007-1': [SKIP], 'regress/regress-crbug-505007-2': [SKIP], 'regress/regress-2193': [SKIP], 'regress/regress-3158': [SKIP], 'regress/regress-347904': [SKIP], 'regress/regress-380092': [SKIP], 'regress/regress-4173': [SKIP], 'regress/regress-copy-hole-to-field': [SKIP], 'regress/regress-crbug-315252': [SKIP], 'regress/regress-crbug-412215': [SKIP], 'regress/regress-crbug-513507': [SKIP], 'regress/regress-deep-proto': [SKIP], 'regress/regress-deopt-store-effect': [SKIP], 'regress/regress-undefined-store-keyed-fast-element': [SKIP], 'stack-traces-overflow': [SKIP], 'unicodelctest': [SKIP], 'unicodelctest-no-optimization': [SKIP], }], # ignition == True and (arch == arm or arch == arm64) ############################################################################## ['gcov_coverage', { # Tests taking too long. 'array-functions-prototype-misc': [SKIP], 'strong/implicit-conversions': [SKIP], 'strong/load-element-mutate-backing-store': [SKIP], }], # 'gcov_coverage' ]