1 # Copyright 2012 the V8 project authors. All rights reserved. 2 # Redistribution and use in source and binary forms, with or without 3 # modification, are permitted provided that the following conditions are 4 # met: 5 # 6 # * Redistributions of source code must retain the above copyright 7 # notice, this list of conditions and the following disclaimer. 8 # * Redistributions in binary form must reproduce the above 9 # copyright notice, this list of conditions and the following 10 # disclaimer in the documentation and/or other materials provided 11 # with the distribution. 12 # * Neither the name of Google Inc. nor the names of its 13 # contributors may be used to endorse or promote products derived 14 # from this software without specific prior written permission. 15 # 16 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 17 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 18 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 19 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 20 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 21 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 22 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 26 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 28 [ 29 [ALWAYS, { 30 # All tests in the bug directory are expected to fail. 31 'bugs/*': [FAIL], 32 33 ############################################################################## 34 # Flaky tests. 35 # BUG(v8:2921). 36 'debug-step-4-in-frame': [PASS, FAIL, SLOW], 37 38 ############################################################################## 39 # Fails. 40 'regress/regress-1119': [FAIL], 41 42 # Issue 1719: Slow to collect arrays over several contexts. 43 'regress/regress-524': [SKIP], 44 # When that bug is fixed, revert the expectation to: 45 # Skip long running test in debug and allow it to timeout in release mode. 46 # regress/regress-524: [PASS, TIMEOUT, ['mode == debug', SKIP]], 47 48 # This test non-deterministically runs out of memory on Windows ia32. 49 'regress/regress-crbug-160010': [SKIP], 50 51 ############################################################################## 52 # Too slow in debug mode with --stress-opt mode. 53 'compiler/regress-stacktrace-methods': [PASS, ['mode == debug', SKIP]], 54 'compiler/regress-funcaller': [PASS, ['mode == debug', SKIP]], 55 'regress/regress-2318': [PASS, ['mode == debug', SKIP]], 56 'regress/regress-create-exception': [PASS, ['mode == debug', SKIP]], 57 58 ############################################################################## 59 # Too slow in debug mode for GC stress mode. 60 'regress/regress-crbug-217858': [PASS, ['mode == debug', SKIP]], 61 62 ############################################################################## 63 # Only regexp stuff tested, no need for extensive Crankshaft tests. 64 'regexp-global': [PASS, NO_VARIANTS], 65 66 ############################################################################## 67 # No need to waste time for this test. 68 'd8-performance-now': [PASS, NO_VARIANTS], 69 70 ############################################################################## 71 # These use a built-in that's only present in debug mode. They take 72 # too long to run in debug mode on ARM and MIPS. 73 'fuzz-natives-part*': [PASS, ['mode == release or arch == arm or arch == android_arm or arch == mipsel', SKIP]], 74 75 'big-object-literal': [PASS, ['arch == arm or arch == android_arm', SKIP]], 76 77 # Issue 488: this test sometimes times out. 78 'array-constructor': [PASS, TIMEOUT], 79 80 # Very slow on ARM and MIPS, contains no architecture dependent code. 81 'unicode-case-overoptimization': [PASS, NO_VARIANTS, ['arch == arm or arch == android_arm or arch == mipsel', TIMEOUT]], 82 83 ############################################################################## 84 # This test expects to reach a certain recursion depth, which may not work 85 # for debug mode. 86 'json-recursive': [PASS, ['mode == debug', PASS, FAIL]], 87 88 ############################################################################## 89 # Skip long running tests that time out in debug mode. 90 'generated-transition-stub': [PASS, ['mode == debug', SKIP]], 91 92 ############################################################################## 93 # This test sets the umask on a per-process basis and hence cannot be 94 # used in multi-threaded runs. 95 # On android there is no /tmp directory. 96 'd8-os': [PASS, ['isolates or arch == android_arm or arch == android_ia32', SKIP]], 97 'tools/tickprocessor': [PASS, ['arch == android_arm or arch == android_ia32', SKIP]], 98 99 ############################################################################## 100 # Long running test that reproduces memory leak and should be run manually. 101 'regress/regress-2073': [SKIP], 102 }], # ALWAYS 103 104 ############################################################################## 105 ['arch == arm or arch == android_arm', { 106 107 # Slow tests which times out in debug mode. 108 'try': [PASS, ['mode == debug', SKIP]], 109 'debug-scripts-request': [PASS, ['mode == debug', SKIP]], 110 'array-constructor': [PASS, ['mode == debug', SKIP]], 111 'regress/regress-1122': [PASS, ['mode == debug and arch == android_arm', SKIP]], 112 113 # Flaky test that can hit compilation-time stack overflow in debug mode. 114 'unicode-test': [PASS, ['mode == debug', PASS, FAIL]], 115 116 # Times out often in release mode on ARM. 117 'compiler/regress-stacktrace-methods': [PASS, PASS, ['mode == release', TIMEOUT]], 118 'array-splice': [PASS, TIMEOUT], 119 120 # Long running test. 121 'string-indexof-2': [PASS, TIMEOUT], 122 'mirror-object': [PASS, TIMEOUT], 123 124 # BUG(3251035): Timeouts in long looping crankshaft optimization 125 # tests. Skipping because having them timeout takes too long on the 126 # buildbot. 127 'compiler/alloc-number': [SKIP], 128 'compiler/array-length': [SKIP], 129 'compiler/assignment-deopt': [SKIP], 130 'compiler/deopt-args': [SKIP], 131 'compiler/inline-compare': [SKIP], 132 'compiler/inline-global-access': [SKIP], 133 'compiler/optimized-function-calls': [SKIP], 134 'compiler/pic': [SKIP], 135 'compiler/property-calls': [SKIP], 136 'compiler/recursive-deopt': [SKIP], 137 'compiler/regress-4': [SKIP], 138 'compiler/regress-funcaller': [SKIP], 139 'compiler/regress-rep-change': [SKIP], 140 'compiler/regress-arguments': [SKIP], 141 'compiler/regress-funarguments': [SKIP], 142 'compiler/regress-3249650': [SKIP], 143 'compiler/simple-deopt': [SKIP], 144 'regress/regress-490': [SKIP], 145 'regress/regress-634': [SKIP], 146 'regress/regress-create-exception': [SKIP], 147 'regress/regress-3218915': [SKIP], 148 'regress/regress-3247124': [SKIP], 149 150 # Requires bigger stack size in the Genesis and if stack size is increased, 151 # the test requires too much time to run. However, the problem test covers 152 # should be platform-independent. 153 'regress/regress-1132': [SKIP], 154 155 # Stack manipulations in LiveEdit is not implemented for this arch. 156 'debug-liveedit-check-stack': [SKIP], 157 'debug-liveedit-stack-padding': [SKIP], 158 'debug-liveedit-restart-frame': [SKIP], 159 'debug-liveedit-double-call': [SKIP], 160 161 # Currently always deopt on minus zero 162 'math-floor-of-div-minus-zero': [SKIP], 163 164 ############################################################################ 165 # Slow tests. 166 'regress/regress-2185-2': [PASS, SLOW], 167 'mirror-object': [PASS, SLOW], 168 'compiler/osr-with-args': [PASS, SLOW], 169 'array-sort': [PASS, SLOW], 170 'packed-elements': [PASS, SLOW], 171 'regress/regress-91008': [PASS, SLOW], 172 'regress/regress-2790': [PASS, SLOW], 173 'regress/regress-json-stringify-gc': [PASS, SLOW], 174 'regress/regress-1122': [PASS, SLOW], 175 }], # 'arch == arm or arch == android_arm' 176 177 ############################################################################## 178 ['arch == mipsel', { 179 180 # Slow tests which times out in debug mode. 181 'try': [PASS, ['mode == debug', SKIP]], 182 'debug-scripts-request': [PASS, ['mode == debug', SKIP]], 183 'array-constructor': [PASS, ['mode == debug', SKIP]], 184 185 # Times out often in release mode on MIPS. 186 'compiler/regress-stacktrace-methods': [PASS, PASS, ['mode == release', TIMEOUT]], 187 'array-splice': [PASS, TIMEOUT], 188 189 # Long running test. 190 'mirror-object': [PASS, TIMEOUT], 191 'string-indexof-2': [PASS, TIMEOUT], 192 193 # BUG(3251035): Timeouts in long looping crankshaft optimization 194 # tests. Skipping because having them timeout takes too long on the 195 # buildbot. 196 'compiler/alloc-number': [SKIP], 197 'compiler/array-length': [SKIP], 198 'compiler/assignment-deopt': [SKIP], 199 'compiler/deopt-args': [SKIP], 200 'compiler/inline-compare': [SKIP], 201 'compiler/inline-global-access': [SKIP], 202 'compiler/optimized-function-calls': [SKIP], 203 'compiler/pic': [SKIP], 204 'compiler/property-calls': [SKIP], 205 'compiler/recursive-deopt': [SKIP], 206 'compiler/regress-4': [SKIP], 207 'compiler/regress-funcaller': [SKIP], 208 'compiler/regress-rep-change': [SKIP], 209 'compiler/regress-arguments': [SKIP], 210 'compiler/regress-funarguments': [SKIP], 211 'compiler/regress-3249650': [SKIP], 212 'compiler/simple-deopt': [SKIP], 213 'regress/regress-490': [SKIP], 214 'regress/regress-634': [SKIP], 215 'regress/regress-create-exception': [SKIP], 216 'regress/regress-3218915': [SKIP], 217 'regress/regress-3247124': [SKIP], 218 219 # Requires bigger stack size in the Genesis and if stack size is increased, 220 # the test requires too much time to run. However, the problem test covers 221 # should be platform-independent. 222 'regress/regress-1132': [SKIP], 223 224 # Stack manipulations in LiveEdit is not implemented for this arch. 225 'debug-liveedit-check-stack': [SKIP], 226 'debug-liveedit-stack-padding': [SKIP], 227 'debug-liveedit-restart-frame': [SKIP], 228 'debug-liveedit-double-call': [SKIP], 229 230 # Currently always deopt on minus zero 231 'math-floor-of-div-minus-zero': [SKIP], 232 }], # 'arch == mipsel' 233 234 ############################################################################## 235 # Native Client uses the ARM simulator so will behave similarly to arm 236 # on mjsunit tests. 237 # TODO(bradchen): enable more tests for NaCl V8 when it stops using 238 # the ARM simulator. 239 ############################################################################## 240 ['arch == nacl_ia32 or arch == nacl_x64', { 241 # There is no /tmp directory for NaCl runs 242 'd8-os': [SKIP], 243 244 # Stack manipulations in LiveEdit is not implemented for this arch. 245 'debug-liveedit-check-stack': [SKIP], 246 'debug-liveedit-stack-padding': [SKIP], 247 'debug-liveedit-restart-frame': [SKIP], 248 'debug-liveedit-double-call': [SKIP], 249 250 # This test dumps core for arm.debug, so no reason to expect it to work 251 # for NaCl. The other three fuzz-natives tests seem to run fine. 252 # As noted above none of them are run in the arm.debug case. 253 'fuzz-natives-part4': [SKIP], 254 255 # NaCl builds have problems with this test since Pepper_28. 256 # V8 Issue 2786 257 'math-exp-precision': [SKIP], 258 259 # Requires bigger stack size in the Genesis and if stack size is increased, 260 # the test requires too much time to run. However, the problem test covers 261 # should be platform-independent. 262 'regress/regress-1132': [SKIP], 263 264 # Poor performance for NaCl V8 causes an assertion failure for this test. 265 'regress/regress-165637': [SKIP], 266 267 # Skip long running test that times out in debug mode and goes OOM on NaCl. 268 'regress/regress-crbug-160010': [SKIP], 269 270 # Bug(v8:2978). 271 'lithium/MathExp': [PASS, FAIL], 272 }], # 'arch == nacl_ia32 or arch == nacl_x64' 273 274 ############################################################################## 275 ['deopt_fuzzer == True', { 276 277 # Skip tests that are not suitable for deoptimization fuzzing. 278 'assert-opt-and-deopt': [SKIP], 279 'never-optimize': [SKIP], 280 'regress/regress-2185-2': [SKIP], 281 'harmony/object-observe': [SKIP], 282 'readonly': [SKIP], 283 'array-feedback': [SKIP], 284 285 # Deopt every n garbage collections collides with deopt every n times. 286 'regress/regress-2653': [SKIP], 287 }], # 'deopt_fuzzer == True' 288 ] 289