| # 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], |
| |
| ############################################################################## |
| # 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 GC stress mode. |
| 'regress/regress-crbug-217858': [PASS, ['mode == debug', SKIP]], |
| |
| ############################################################################## |
| # Only regexp stuff tested, no need for extensive Crankshaft tests. |
| 'regexp-global': [PASS, NO_VARIANTS], |
| |
| ############################################################################## |
| # No need to waste time for this test. |
| 'd8-performance-now': [PASS, NO_VARIANTS], |
| |
| ############################################################################## |
| # These use a built-in that's only present in debug mode. They take |
| # too long to run in debug mode on ARM and MIPS. |
| 'fuzz-natives-part*': [PASS, ['mode == release or arch == arm or arch == android_arm or arch == mipsel', SKIP]], |
| |
| 'big-object-literal': [PASS, ['arch == arm or arch == android_arm', SKIP]], |
| |
| # 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 == android_arm or arch == mipsel', TIMEOUT]], |
| |
| ############################################################################## |
| # 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]], |
| |
| ############################################################################## |
| # 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. |
| 'd8-os': [PASS, ['isolates or arch == android_arm or arch == android_ia32', SKIP]], |
| 'tools/tickprocessor': [PASS, ['arch == android_arm 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', PASS], ['mode == debug', FAIL]], |
| }], # ALWAYS |
| |
| ############################################################################## |
| ['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, PASS, ['mode == release', TIMEOUT]], |
| 'array-splice': [PASS, TIMEOUT], |
| |
| # Long running test. |
| 'string-indexof-2': [PASS, TIMEOUT], |
| 'mirror-object': [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': [SKIP], |
| 'compiler/array-length': [SKIP], |
| 'compiler/assignment-deopt': [SKIP], |
| 'compiler/deopt-args': [SKIP], |
| 'compiler/inline-compare': [SKIP], |
| 'compiler/inline-global-access': [SKIP], |
| 'compiler/optimized-function-calls': [SKIP], |
| 'compiler/pic': [SKIP], |
| 'compiler/property-calls': [SKIP], |
| 'compiler/recursive-deopt': [SKIP], |
| 'compiler/regress-4': [SKIP], |
| 'compiler/regress-funcaller': [SKIP], |
| 'compiler/regress-rep-change': [SKIP], |
| 'compiler/regress-arguments': [SKIP], |
| 'compiler/regress-funarguments': [SKIP], |
| 'compiler/regress-3249650': [SKIP], |
| 'compiler/simple-deopt': [SKIP], |
| 'regress/regress-490': [SKIP], |
| 'regress/regress-634': [SKIP], |
| 'regress/regress-create-exception': [SKIP], |
| 'regress/regress-3218915': [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], |
| |
| # 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], |
| |
| # 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', { |
| |
| # 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': [SKIP], |
| 'compiler/array-length': [SKIP], |
| 'compiler/assignment-deopt': [SKIP], |
| 'compiler/deopt-args': [SKIP], |
| 'compiler/inline-compare': [SKIP], |
| 'compiler/inline-global-access': [SKIP], |
| 'compiler/optimized-function-calls': [SKIP], |
| 'compiler/pic': [SKIP], |
| 'compiler/property-calls': [SKIP], |
| 'compiler/recursive-deopt': [SKIP], |
| 'compiler/regress-4': [SKIP], |
| 'compiler/regress-funcaller': [SKIP], |
| 'compiler/regress-rep-change': [SKIP], |
| 'compiler/regress-arguments': [SKIP], |
| 'compiler/regress-funarguments': [SKIP], |
| 'compiler/regress-3249650': [SKIP], |
| 'compiler/simple-deopt': [SKIP], |
| 'regress/regress-490': [SKIP], |
| 'regress/regress-634': [SKIP], |
| 'regress/regress-create-exception': [SKIP], |
| 'regress/regress-3218915': [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], |
| |
| # 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], |
| |
| # Currently always deopt on minus zero |
| 'math-floor-of-div-minus-zero': [SKIP], |
| }], # 'arch == mipsel' |
| |
| ############################################################################## |
| # 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], |
| |
| # This test dumps core for arm.debug, so no reason to expect it to work |
| # for NaCl. The other three fuzz-natives tests seem to run fine. |
| # As noted above none of them are run in the arm.debug case. |
| 'fuzz-natives-part4': [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], |
| |
| # Bug(v8:2978). |
| 'lithium/MathExp': [PASS, FAIL], |
| }], # '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], |
| 'harmony/object-observe': [SKIP], |
| 'readonly': [SKIP], |
| 'array-feedback': [SKIP], |
| |
| # Deopt every n garbage collections collides with deopt every n times. |
| 'regress/regress-2653': [SKIP], |
| }], # 'deopt_fuzzer == True' |
| ] |