mjsunit.status 54.7 KB
Newer Older
1
# Copyright 2012 the V8 project authors. All rights reserved.
2 3 4 5
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
kasperl@chromium.org's avatar
kasperl@chromium.org committed
6
#     * Redistributions of source code must retain the above copyright
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
#       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.

28 29
[
[ALWAYS, {
30 31 32
  # Modules which are only meant to be imported from by other tests, not to be
  # tested standalone.
  'modules-skip*': [SKIP],
33
  'harmony/modules-skip*': [SKIP],
34
  'regress/modules-skip*': [SKIP],
35
  'wasm/exceptions-utils': [SKIP],
36
  'wasm/wasm-module-builder': [SKIP],
37

38 39 40 41
  # All tests in the bug directory are expected to fail.
  'bugs/*': [FAIL],

  ##############################################################################
42
  # Open bugs.
43

44 45
  # BUG(v8:2989).
  'regress/regress-2989': [FAIL, NO_VARIANTS, ['lite_mode == True', SKIP]],
46

47 48 49
  # Issue 3784: setters-on-elements is flaky
  'setters-on-elements': [PASS, FAIL],

50 51
  # https://crbug.com/v8/7697
  'array-literal-feedback': [PASS, FAIL],
52

53 54
  # https://crbug.com/v8/7775
  'allocation-site-info': [SKIP],
55

56 57
  # BUG(v8:8169)
  'external-backing-store-gc': [SKIP],
58

59 60
  # Issue 9380: Memory leaks of shared WebAssembly.Memory objects
  'wasm/shared-memory-worker-gc': [SKIP],
61

62 63 64
  # BUG(v8:10197)
  'regress/regress-748069': [SKIP],

65 66 67 68
  # https://crbug.com/1043058
  # Enable once serializing a running isolate is fully implemented.
  'serialize-deserialize-now': [SKIP],

69 70 71 72
  # BUG(v8:9506): times out.
  'wasm/shared-memory-worker-explicit-gc-stress': [PASS, SLOW],
  'wasm/shared-memory-worker-gc-stress': [PASS, SLOW],

Camillo Bruni's avatar
Camillo Bruni committed
73 74 75
  # https://crbug.com/1129854
  'tools/log': ['arch == arm or arch == arm64', SKIP],

76
  ##############################################################################
77 78 79
  # Tests where variants make no sense.
  'd8/enable-tracing': [PASS, NO_VARIANTS],
  'd8/d8-os': [PASS, NO_VARIANTS],
80
  'd8/d8-performance-now': [PASS, NO_VARIANTS],
81 82
  'regexp-global': [PASS, NO_VARIANTS],
  'regress/regress-4595': [PASS, NO_VARIANTS],
83
  'regress/regress-crbug-491062': [PASS, NO_VARIANTS],
84 85 86 87
  'third_party/regexp-pcre/regexp-pcre': [PASS, NO_VARIANTS],
  'tools/compiler-trace-flags': [PASS, NO_VARIANTS],
  'tools/dumpcpp': [PASS, NO_VARIANTS],
  'tools/tickprocessor': [PASS, NO_VARIANTS],
88

89
  # Issue 488: this test sometimes times out.
90
  # TODO(arm): This seems to flush out a bug on arm with simulator.
91
  'array-constructor': [PASS, SLOW, ['arch == arm and simulator_run', SKIP]],
92

93
  ##############################################################################
94 95
  # Long-running tests.
  # We really should find better solutions for these.
96
  'es6/promise-all-overflow-1': [SKIP],
97
  'harmony/promise-any-overflow-1': [SKIP],
98
  'migrations': [SKIP],
99
  'regress/regress-2073': [SKIP],
100 101 102 103

  ##############################################################################
  # Tests verifying CHECK and ASSERT.
  'verify-check-false': [FAIL, NO_VARIANTS],
104
  'verify-assert-false': [NO_VARIANTS, ['mode == release and dcheck_always_on == False', PASS], ['mode == debug', FAIL]],
105 106 107 108 109 110

  ##############################################################################
  # 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]],
111

112
  # This test variant makes only sense on arm.
113
  'math-floor-of-div-nosudiv': [PASS, SLOW, ['arch not in [arm, arm64]', SKIP]],
114

115 116 117
  # OOM flakes in isolates tests because too many largish heaps are created.
  'asm/asm-heap': [PASS, NO_VARIANTS, ['isolates', SKIP]],

118
  # Slow tests.
119 120 121 122 123
  'array-functions-prototype-misc': [PASS, SLOW],
  'asm/embenchen/*': [PASS, SLOW, NO_VARIANTS],
  'asm/poppler/*': [PASS, SLOW, NO_VARIANTS],
  'asm/sqlite3/*': [PASS, SLOW, NO_VARIANTS],
  'compiler/regress-9017': [PASS, SLOW],
124
  'copy-on-write-assert': [PASS, SLOW],
125
  'es6/promise-all-overflow-2': [PASS, SLOW, ['arch != x64', SKIP]],
126
  'es6/typedarray-construct-offset-not-smi': [PASS, SLOW],
127 128
  'harmony/promise-any-overflow-2': [PASS, SLOW, ['arch != x64', SKIP]],
  'harmony/sharedarraybuffer-worker-gc-stress': [PASS, SLOW],
129
  'harmony/futex': [PASS, SLOW],
130
  'harmony/regexp-property-script-extensions': [PASS, SLOW],
131
  'ignition/regress-672027': [PASS, SLOW],
132
  'large-object-literal-slow-elements': [PASS, SLOW],
133
  'math-floor-of-div': [PASS, SLOW],
134
  'md5': [PASS, SLOW],
135
  'readonly': [PASS, SLOW],
136 137 138
  'regress/regress-1122': [PASS, SLOW],
  'regress/regress-605470': [PASS, SLOW],
  'regress/regress-655573': [PASS, SLOW],
139
  'regress/regress-1034322': [PASS, SLOW, NO_VARIANTS, ['mode != release', SKIP]],
140
  'regress/regress-1200351': [PASS, SLOW],
141
  'regress/regress-crbug-808192': [PASS, SLOW, NO_VARIANTS, ['arch not in (ia32, x64)', SKIP]],
142
  'regress/regress-crbug-918301': [PASS, SLOW, NO_VARIANTS, ['mode != release or dcheck_always_on', SKIP], ['(arch == arm or arch == arm64) and simulator_run', SKIP], ['tsan', SKIP]],
143
  'regress/wasm/regress-810973': [PASS, SLOW],
144
  'sealed-array-reduce': [PASS, SLOW],
145
  'string-replace-gc': [PASS, SLOW],
146
  'wasm/embenchen/*': [PASS, SLOW],
147
  'wasm/futex': [PASS, SLOW],
148
  'wasm/unreachable-validation': [PASS, SLOW],
149 150
  'wasm/atomics-stress': [PASS, SLOW, NO_VARIANTS, ['mode != release or dcheck_always_on', SKIP], ['tsan', SKIP]],
  'wasm/atomics64-stress': [PASS, SLOW, NO_VARIANTS, ['mode != release or dcheck_always_on', SKIP], ['tsan', SKIP]],
151 152
  'wasm/compare-exchange-stress': [PASS, SLOW, NO_VARIANTS],
  'wasm/compare-exchange64-stress': [PASS, SLOW, NO_VARIANTS],
153

154
  # Very slow on ARM and MIPS, contains no architecture dependent code.
Brice Dobry's avatar
Brice Dobry committed
155 156 157 158 159
  'unicode-case-overoptimization0': [PASS, NO_VARIANTS, ['arch in (arm, arm64, mipsel, mips64el, mips64, mips, riscv64)', SKIP]],
  'unicode-case-overoptimization1': [PASS, NO_VARIANTS, ['arch in (arm, arm64, mipsel, mips64el, mips64, mips, riscv64)', SKIP]],
  'regress/regress-3976': [PASS, NO_VARIANTS, ['arch in (arm, arm64, mipsel, mips64el, mips64, mips, riscv64)', SKIP]],
  'regress/regress-crbug-482998': [PASS, NO_VARIANTS, ['arch in (arm, arm64, mipsel, mips64el, mips, riscv64)', SKIP]],
  'regress/regress-740784': [PASS, NO_VARIANTS, ['arch in (arm, arm64, mipsel, mips64el, mips, riscv64)', SKIP]],
160

machenbach's avatar
machenbach committed
161 162 163
  # TODO(bmeurer): Flaky timeouts (sometimes <1s, sometimes >3m).
  'unicodelctest': [PASS, NO_VARIANTS],
  'unicodelctest-no-optimization': [PASS, NO_VARIANTS],
164

165
  # Test is only enabled on ASAN. Takes too long on many other bots.
166
  'regress/regress-crbug-9161': [PASS, SLOW, ['asan == False', SKIP]],
167

168 169
  # OOM with too many isolates/memory objects (https://crbug.com/1010272)
  # Predictable tests fail due to race between postMessage and GrowMemory
170
  'regress/wasm/regress-1010272': [PASS, NO_VARIANTS, ['system == android', SKIP], ['predictable', SKIP]],
171 172 173 174

  # Only makes sense in the no_i18n variant.
  'es6/unicode-regexp-ignore-case-noi18n':
      [['no_i18n == True', PASS], ['no_i18n == False', FAIL]],
175 176 177

  # Needs to be adapted after changes to Function constructor. chromium:1065094
  'cross-realm-filtering': [SKIP],
178
}],  # ALWAYS
179

180 181 182 183 184
##############################################################################
['mode == debug', {
  # Skip slow tests in debug mode.
  'array-functions-prototype-misc': [SKIP],
  'compiler/regress-808472': [SKIP],
185
  'compiler/regress-1161357': [SKIP],
186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214
  'es6/promise-all-overflow-2': [SKIP],
  'generated-transition-stub': [SKIP],
  'regress/regress-524': [SKIP],
  'regress/regress-4595': [SKIP],
  'regress/regress-430201': [SKIP],
  'regress/regress-430201b': [SKIP],
  'regress/regress-716044': [SKIP],
  'regress/regress-crbug-217858': [SKIP],
  'regress/regress-crbug-808192': [SKIP],
  'regress/regress-crbug-941743': [SKIP],
  'regress/regress-create-exception': [SKIP],

  # These tests run out of stack space in debug mode.
  'big-array-literal': [SKIP],
  'big-object-literal': [SKIP],

  # Too slow in debug mode BUG(v8:9506): times out.
  'wasm/shared-memory-worker-explicit-gc-stress': [SKIP],
  'wasm/shared-memory-worker-gc-stress': [SKIP],

  # For these tests, making them as slow is enough:
  'numops-fuzz-part*': [SLOW],

  # worker creation/shutdown is very slow in debug mode
  'd8/d8-worker-shutdown*': [SLOW],
  # Allocates a huge string and then flattens it.
  'regress/regress-752764': [SLOW],
}],  # mode == debug

215
['novfp3', {
216 217 218 219
  'asm/embenchen/box2d': [SKIP],
  'asm/embenchen/zlib': [SKIP],
  'asm/embenchen/memops': [SKIP],
  'asm/embenchen/lua_binarytrees': [SKIP],
220
}],  # novfp3
221

222
##############################################################################
223
# TODO(ahaas): Port multiple return values to MIPS, S390 and PPC
224
['arch in (mips, mips64, mipsel, mips64el, s390, s390x, ppc, ppc64)', {
225 226 227 228
  'wasm/multi-value': [SKIP],
}],

##############################################################################
229 230 231 232 233 234 235 236 237 238 239 240
['simulator_run', {
  # Skip/annotate tests that are too slow on simulators.
  'random-bit-correlations': [SLOW],
  'regress/regress-crbug-941743': [SKIP],
  'regress/regress-crbug-1041232': [SKIP],
  'regress/wasm/regress-1010272': [SKIP],
  'wasm/atomics-stress': [SKIP],
  'wasm/atomics64-stress': [SKIP],
}],  # simulator_run

##############################################################################
['gc_stress', {
241 242 243 244 245
  # Skip tests not suitable for GC stress.
  'allocation-site-info': [SKIP],
  'array-constructor-feedback': [SKIP],
  'array-feedback': [SKIP],
  'array-literal-feedback': [SKIP],
246
  'd8/d8-performance-now': [SKIP],
247
  'elements-kind': [SKIP],
248
  'elements-transition-hoisting': [SKIP],
249
  'fast-prototype': [SKIP],
250
  'field-type-tracking': [SKIP],
251
  'getters-on-elements': [SKIP],
252
  'es6/block-let-crankshaft': [SKIP],
253 254
  'opt-elements-kind': [SKIP],
  'osr-elements-kind': [SKIP],
255
  'compiler/number-divide': [SKIP],
256
  'regress/regress-crbug-137689': [SKIP],
257
  'regress/regress-trap-allocation-memento': [SKIP],
258
  'regress/regress-2249': [SKIP],
259
  'regress/regress-3709': [SKIP],
260
  'regress/regress-4121': [SKIP],
261
  'regress/regress-6989': [SKIP],
262
  'compare-known-objects-slow': [SKIP],
263
  'compiler/array-multiple-receiver-maps': [SKIP],
264
  # Tests taking too long
265 266 267
  'regress/regress-1122': [SKIP],
  'regress/regress-331444': [SKIP],
  'regress/regress-353551': [SKIP],
268 269
  'regress/regress-1138075': [SKIP],
  'regress/regress-1138611': [SKIP],
270 271
  'regress/regress-crbug-119926': [SKIP],
  'regress/short-circuit': [SKIP],
272
  'stack-traces-overflow': [SKIP],
273
  'unicode-test': [SKIP],
274
  'whitespaces': [SKIP],
275
  'baseline/*': [SKIP],
276

277 278 279 280
  # Unsuitable for GC stress because coverage information is lost on GC.
  'code-coverage-ad-hoc': [SKIP],
  'code-coverage-precise': [SKIP],

281
  # Takes too long with TF.
282
  'array-sort': [PASS, NO_VARIANTS],
283
  'regress/regress-91008': [PASS, NO_VARIANTS],
284
  'regress/regress-transcendental': [PASS, ['arch == arm64', NO_VARIANTS]],
285
  'compiler/osr-regress-max-locals': [PASS, NO_VARIANTS],
286
  'math-floor-of-div': [PASS, SLOW, NO_VARIANTS],
287 288
  'unicodelctest': [PASS, NO_VARIANTS],
  'unicodelctest-no-optimization': [PASS, NO_VARIANTS],
289

290
  # TODO(jkummerow): Doesn't work correctly in GC stress.
291
  'regress/regress-crbug-500497': [SKIP],
292

293 294
  # Too slow for gc stress.
  'asm/embenchen/box2d': [SKIP],
295

296 297 298 299
  # Too slow for gc stress, BUG(v8:9506): times out.
  'wasm/shared-memory-worker-explicit-gc-stress': [SKIP],
  'wasm/shared-memory-worker-gc-stress': [SKIP],

littledan's avatar
littledan committed
300 301
  # BUG(v8:4237)
  'regress/regress-3976': [SKIP],
302

303 304 305
  # Slow tests.
  'array-constructor': [PASS, SLOW],
  'json': [PASS, SLOW],
306

307
  # BUG(v8:4779): Crashes flakily with stress mode on arm64.
308
  'array-splice': [PASS, SLOW, ['arch == arm64', NO_VARIANTS]],
309

310 311 312 313 314 315 316 317 318
  # BUG(v8:7880): Slow tests.
  'regress/regress-707066': [SKIP],
  'regress/regress-446389': [SKIP],
  'regress/regress-458987': [SKIP],
  'es6/regress/regress-crbug-465671': [SKIP],
  'regress/regress-inline-getter-near-stack-limit': [SKIP],
  'es6/regress/regress-crbug-465671-null': [SKIP],
  'regress/regress-148378': [SKIP],
  'regress/regress-crbug-762472': [SKIP],
319

320 321
  # BUG(v8:10035)
  'compiler/deopt-array-builtins': [SKIP],
322 323 324

  # BUG(v8:11240)
  'regress/regress-v8-9267-1': [SKIP],
325
}],  # 'gc_stress'
326

327
##############################################################################
328
['lite_mode or variant == jitless', {
329 330
  # Skip tests not suitable for lite_mode.

331
  # TODO(v8:7777): Re-enable once wasm is supported in jitless mode.
332 333 334 335 336
  'regress/regress-5888': [SKIP],
  'regress/regress-5911': [SKIP],
  'regress/regress-813440': [SKIP],
  'regress/regress-crbug-746835': [SKIP],
  'regress/regress-crbug-772056': [SKIP],
337
  'regress/regress-crbug-816961': [SKIP],
338
  'regress/regress-crbug-969498': [SKIP],
339
  'regress/regress-crbug-1047368': [SKIP],
340
  'regress/wasm/*': [SKIP],
341
  'regress/regress-8947': [SKIP],
342
  'regress/regress-9209': [SKIP],
343
  'regress/regress-1034394': [SKIP],
344
  'regress/regress-v8-9106': [SKIP],
345 346 347
  'wasm/*': [SKIP],

  # Other tests that use asm / wasm / optimized code.
348 349 350 351 352
  'asm/asm-heap': [SKIP],
  'asm/asm-validation': [SKIP],
  'asm/call-stdlib': [SKIP],
  'asm/call-annotation': [SKIP],
  'asm/global-imports': [SKIP],
353
  'asm/regress-1027595': [SKIP],
354
  'asm/regress-1069173': [SKIP],
355
  'asm/regress-913822': [SKIP],
356
  'asm/regress-937650': [SKIP],
357
  'asm/regress-9531': [SKIP],
358
  'asm/return-types': [SKIP],
359 360 361 362 363
  'regress/regress-599719': [SKIP],
  'regress/regress-6196': [SKIP],
  'regress/regress-6700': [SKIP],
  'regress/regress-6838-2': [SKIP],
  'regress/regress-6838-3': [SKIP],
364
  'regress/regress-6838-4': [SKIP],
365
  'regress/regress-9022': [SKIP],
366
  'regress/regress-9832': [SKIP],
367
  'regress/regress-crbug-934138': [SKIP],
368
  'regress/regress-crbug-976934': [SKIP],
369 370 371

  # Timeouts in lite / jitless mode.
  'asm/embenchen/*': [SKIP],
372 373 374 375 376 377 378 379 380 381

  # Tests that generate code at runtime.
  'code-comments': [SKIP],
  'regress/regress-617526': [SKIP],
  'regress/regress-7893': [SKIP],
  'regress/regress-8377': [SKIP],
  'regress/regress-863810': [SKIP],
  'regress/regress-crbug-721835': [SKIP],
  'regress/regress-crbug-759327': [SKIP],
  'regress/regress-crbug-898974': [SKIP],
382
  'regexp-tier-up': [SKIP],
383 384
  'regexp-tier-up-multiple': [SKIP],
  'regress/regress-996234': [SKIP],
385 386 387

  # These tests check that we can trace the compiler.
  'tools/compiler-trace-flags': [SKIP],
388 389
  'tools/compiler-trace-flags-wasm': [SKIP],

390 391 392
  # Too slow on arm64 simulator and debug: https://crbug.com/v8/7783
  'md5': [PASS, ['arch == arm64 and mode == debug and simulator_run', SKIP]],

393 394
  # Slow with pointer compression.
  'regress/regress-crbug-319860': [PASS, ['pointer_compression', SLOW]],
395 396 397

  # Flag --interpreted-frames-native-stack incompatible with jitless
  'regress/regress-10138': [SKIP],
398
  'regress/regress-1078913': [SKIP],
399 400 401

  # Baseline incompatible with jitless
  'baseline/*': [SKIP]
402 403
}],  # 'lite_mode or variant == jitless'

404 405
##############################################################################
['no_i18n', {
406
  # Case-insensitive unicode regexp relies on case mapping provided by ICU.
407 408 409 410 411
  'es6/unicode-regexp-ignore-case': [FAIL],
  'regress/regress-5036': [FAIL],
  'es7/regexp-ui-word': [FAIL],
  'regexp-modifiers-i18n': [FAIL],
  'regexp-modifiers-autogenerated-i18n': [FAIL],
412 413 414 415 416

  # Desugaring regexp property class relies on ICU. Anything goes as long as we
  # don't crash.
  'harmony/regexp-property-*': [PASS,FAIL],
  'regress/regress-793588': [PASS,FAIL],
417 418 419 420

  # noi18n build cannot parse characters in supplementary plane.
  'harmony/regexp-named-captures': [FAIL],

421 422 423 424 425 426 427 428 429
  # noi18n cannot turn on ICU backend for Date. Anything goes as long as we
  # don't crash.
  'icu-date-to-string': [PASS,FAIL],
  'icu-date-lord-howe': [PASS,FAIL],
  'tzoffset-transition-apia': [PASS,FAIL],
  'tzoffset-transition-lord-howe': [PASS,FAIL],
  'tzoffset-transition-moscow': [PASS,FAIL],
  'tzoffset-transition-new-york': [PASS,FAIL],
  'tzoffset-seoul': [PASS,FAIL],
430 431

  # noi18n is required for Intl
432
  'regress/regress-crbug-1052647': [PASS,FAIL],
433 434
}],  # 'no_i18n'

435 436 437 438
##############################################################################
['is_full_debug', {
  # Tests too slow in non-optimized debug mode.
  'regress/regress-2790': [SKIP],
439
  'regress/regress-331444': [SKIP],
440
  'regress/regress-740784': [SKIP],
441
  'regress/regress-992389': [SKIP],
442 443
}],  # 'is_full_debug'

444 445 446 447
##############################################################################
['byteorder == big', {
  # Emscripten requires little-endian, skip all tests on big endian platforms.
  'asm/embenchen/*': [SKIP],
448 449
  'asm/poppler/*': [SKIP],
  'asm/sqlite3/*': [SKIP],
450 451
  # TODO(mips-team): Fix Wasm for big-endian.
  'wasm/*': [SKIP],
452 453
}],  # 'byteorder == big'

454 455 456 457
##############################################################################
# 32-bit platforms
['arch in (ia32, arm, mips, mipsel)', {
  # Needs >2GB of available contiguous memory.
458
  'wasm/grow-huge-memory': [SKIP],
459
  'wasm/huge-memory': [SKIP],
460
  'wasm/huge-typedarray': [SKIP],
461 462
}],  # 'arch in (ia32, arm, mips, mipsel)'

463
##############################################################################
464
['arch == arm64', {
465 466 467 468 469 470 471

  # 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.
472 473
  # Some similar tests (with fewer iterations) may be included in arm64-js
  # tests.
474 475
  'asm/embenchen/box2d': [SKIP],
  'asm/embenchen/lua_binarytrees': [SKIP],
476 477 478 479 480 481 482 483 484 485 486 487 488
  '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],

489 490 491
  # BUG(v8:3457).
  'deserialize-reference': [PASS, FAIL],

492 493 494
  # BUG(v8:4016)
  'regress/regress-crbug-467047': [SKIP],

495 496 497
  # OOMing tests
  'regress/regress-500980': [SKIP],

Seth Brenith's avatar
Seth Brenith committed
498 499 500
  # BUG(v8:9337).
  'compiler/regress-9017': [SKIP],

501 502 503 504 505 506 507
  # Slow tests.
  'array-indexing': [PASS, SLOW],
  'array-reduce': [PASS, SLOW],
  'array-sort': [PASS, SLOW],
  'array-splice': [PASS, SLOW],
  'compiler/alloc-number': [PASS, SLOW],
  'compiler/osr-with-args': [PASS, SLOW],
508
  'frozen-array-reduce': [PASS, SLOW],
509 510 511
  'generated-transition-stub': [PASS, SLOW],
  'json2': [PASS, SLOW],
  'math-floor-of-div-nosudiv': [PASS, SLOW],
512
  'messages': [PASS, SLOW],
513 514 515 516 517 518 519 520 521 522
  '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],
523
  'wasm/atomics': [PASS, SLOW],
524
  'whitespaces': [PASS, SLOW],
525

526 527 528
  # BUG(v8:10032).
  'array-store-and-grow': [PASS, SLOW],

529 530
  # BUG(v8:7247).
  'regress/regress-779407': [PASS, SLOW, NO_VARIANTS],
531
}],  # 'arch == arm64'
532

533 534
##############################################################################
['arch == arm64 and simulator_run', {
535
  'compiler/osr-big': [PASS, SLOW],
536
  'regress/regress-454725': [PASS, SLOW],
537
  'json': [PASS, SLOW],
538
  'try': [PASS, SLOW],
539
  'non-extensible-array-reduce': [PASS, SLOW],
540 541
}],  # 'arch == arm64 and simulator_run'

542
##############################################################################
543
['arch == arm64 and mode == debug and simulator_run', {
544 545

  # Pass but take too long with the simulator in debug mode.
546
  'array-sort': [PASS, SLOW],
547
  'regexp-global': [SKIP],
548 549 550
  'math-floor-of-div-nosudiv': [PASS, SLOW],
  'unicodelctest': [PASS, SLOW],
  'unicodelctest-no-optimization': [PASS, SLOW],
551 552
  # Issue 3219:
  'getters-on-elements': [PASS, ['gc_stress == True', FAIL]],
553
}],  # 'arch == arm64 and mode == debug and simulator_run'
554

555 556 557 558 559
##############################################################################
['asan == True', {
  # Skip tests not suitable for ASAN.
  'big-array-literal': [SKIP],
  'regress/regress-crbug-178790': [SKIP],
560

561 562 563 564
  # https://bugs.chromium.org/p/v8/issues/detail?id=4639
  # The failed allocation causes an asan/msan/tsan error
  'es6/typedarray-construct-offset-not-smi': [SKIP],

565
  # Exception thrown during bootstrapping on ASAN builds, see issue 4236.
566
  'regress/regress-1132': [SKIP],
567 568 569 570

  # Flaky on ASAN builds: https://bugs.chromium.org/p/v8/issues/detail?id=6305
  'regress/regress-430201': [SKIP],
  'regress/regress-430201b': [SKIP],
571 572 573

  # Stack overflow on windows.
  'es8/regress/regress-624300': [PASS, ['system == windows', SKIP]],
574 575 576 577

  # https://bugs.chromium.org/p/v8/issues/detail?id=7102
  # Flaky due to huge string allocation.
  'regress/regress-748069': [SKIP],
578 579
}],  # 'asan == True'

580 581 582 583
##############################################################################
['msan == True', {
  # Skip tests not suitable for MSAN.
  'big-array-literal': [SKIP],
584 585 586 587 588
  # ICU upstream issues.
  'date': [SKIP],
  'deep-recursion': [SKIP],
  'regress/regress-builtinbust-7': [SKIP],
  'string-localecompare': [SKIP],
589

590
  # Too slow.
591
  'asm/embenchen/zlib': [SKIP],
592
  'harmony/regexp-property-lu-ui': [SKIP],
593 594 595 596
  'regress/regress-779407': [SKIP],
  'wasm/embenchen/box2d': [SKIP],
  'wasm/embenchen/lua_binarytrees': [SKIP],
  'wasm/embenchen/zlib': [SKIP],
597

598 599 600
  # https://bugs.chromium.org/p/v8/issues/detail?id=7102
  # Flaky due to huge string allocation.
  'regress/regress-748069': [SKIP],
601 602 603

  # https://bugs.chromium.org/p/v8/issues/detail?id=11438
  'regress/regress-crbug-627935': [SKIP],
604
}],  # 'msan == True'
605

606 607
##############################################################################
['tsan == True', {
608

609 610 611 612 613 614 615
  # https://bugs.chromium.org/p/v8/issues/detail?id=7102
  # Flaky due to huge string allocation.
  'regress/regress-748069': [SKIP],

  # BUG(v8:7042). Uses a lot of memory.
  'regress/regress-678917': [SKIP],

616 617 618
  # BUG(v8:8103). Uses a lot of memory.
  'regress/regress-852258': [SKIP],

619 620
  # BUG(v8:6924). The test uses a lot of memory.
  'regress/wasm/regress-694433': [SKIP],
621
  'es6/typedarray': [PASS, NO_VARIANTS],
622
  'regress/regress-752764': [PASS, SLOW, NO_VARIANTS],
623

624 625 626 627
  # BUG(v8:9242). Uses a lot of memory.
  'regress/regress-599414-array-concat-fast-path': [PASS, SLOW],

  # BUG(v8:9026). Flaky timeouts.
628
  'es6/large-classes-properties': [SKIP],
629

630
  # Slow tests.
631
  'compiler/regress-1125145': [SKIP],
632
  'es6/block-conflicts-sloppy': [PASS, SLOW],
633
  'math-floor-part1': [PASS, SLOW],
634
  'regress/regress-430201': [SKIP],
635
  'regress/regress-500980': [PASS, SLOW],
636
  'wasm/shared-memory-worker-stress': [PASS, SLOW],
637 638 639

  # BUG(v8:9506): times out.
  'wasm/shared-memory-worker-explicit-gc-stress': [SKIP],
640 641
}],  # 'tsan == True'

642
##############################################################################
643
['arch == arm', {
644 645 646 647

  # Slow tests which times out in debug mode.
  'try': [PASS, ['mode == debug', SKIP]],
  'array-constructor': [PASS, ['mode == debug', SKIP]],
648
  'regress/regress-1122': [PASS, SLOW, ['mode == debug', SKIP]],
649 650

  # Flaky test that can hit compilation-time stack overflow in debug mode.
651
  'unicode-test': [PASS, ['mode == debug', FAIL]],
652

653 654 655
  # Slow in release mode on ARM.
  'compiler/regress-stacktrace-methods': [PASS, SLOW],
  'array-splice': [PASS, SLOW],
656

657 658
  # Long running tests. Skipping because having them timeout takes too long on
  # the buildbot.
659 660 661 662 663 664 665 666 667 668 669 670
  '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],
671

Seth Brenith's avatar
Seth Brenith committed
672 673 674
  # BUG(v8:9337).
  'compiler/regress-9017': [SKIP],

675 676
  # Slow tests.
  'array-sort': [PASS, SLOW],
677
  'compiler/osr-with-args': [PASS, SLOW],
678
  'regress/regress-2790': [PASS, SLOW],
679
  'regress/regress-91008': [PASS, SLOW],
680
  'regress/regress-json-stringify-gc': [PASS, SLOW],
681
  'string-indexof-2': [PASS, SLOW],
682
  'wasm/atomics': [PASS, SLOW],
683
}],  # 'arch == arm
684

685
##############################################################################
686
['arch in (mipsel, mips, mips64el, mips64) and not simulator_run', {
687 688 689 690 691 692
  # These tests fail occasionally on the buildbots because they consume
  # a large amount of memory if executed in parallel. Therefore we
  # run only a single instance of these tests
  'regress/regress-crbug-514081': [PASS, NO_VARIANTS],
  'regress/regress-599414-array-concat-fast-path': [PASS, NO_VARIANTS],
  'array-functions-prototype-misc': [PASS, NO_VARIANTS],
693
}],  # 'arch in (mipsel, mips, mips64el, mips64)'
694

695
##############################################################################
696
['arch in (mipsel, mips, mips64el, mips64, ppc, ppc64)', {
697 698 699 700 701
  # These tests fail because qNaN and sNaN values are encoded differently on
  # MIPS and ARM/x86 architectures
  'wasm/float-constant-folding': [SKIP],
}],

702
##############################################################################
703
['arch == mipsel or arch == mips', {
704 705 706 707 708

  # Slow tests which times out in debug mode.
  'try': [PASS, ['mode == debug', SKIP]],
  'array-constructor': [PASS, ['mode == debug', SKIP]],

709 710 711
  # Slow in release mode on MIPS.
  'compiler/regress-stacktrace-methods': [PASS, SLOW],
  'array-splice': [PASS, SLOW],
712 713

  # Long running test.
714
  'string-indexof-2': [PASS, SLOW],
715

716 717
  # Long running tests. Skipping because having them timeout takes too long on
  # the buildbot.
718 719 720 721 722 723 724 725 726 727 728 729
  '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],
730 731 732

  # Requires too much memory on MIPS.
  'regress/regress-752764': [SKIP],
733
  'regress/regress-779407': [SKIP],
734
  'harmony/bigint/regressions': [SKIP],
735 736 737 738

  # Pre-r6 MIPS32 doesn't have instructions needed to properly handle 64-bit
  # atomic instructions.
  'wasm/atomics64-stress': [PASS, ['mips_arch_variant != r6', SKIP]],
739
}],  # 'arch == mipsel or arch == mips'
740

741
##############################################################################
742
['arch == mips64el or arch == mips64', {
743 744 745 746

  # Slow tests which times out in debug mode.
  'try': [PASS, ['mode == debug', SKIP]],
  'array-constructor': [PASS, ['mode == debug', SKIP]],
747

748 749 750
  # Slow in release mode on MIPS.
  'compiler/regress-stacktrace-methods': [PASS, SLOW],
  'array-splice': [PASS, SLOW],
751 752

  # Long running test.
753
  'string-indexof-2': [PASS, SLOW],
754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786

  # 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],
787 788 789

  # Requires too much memory on MIPS.
  'regress/regress-752764': [SKIP],
790
  'regress/regress-779407': [SKIP],
791
}],  # 'arch == mips64el or arch == mips64'
792

Brice Dobry's avatar
Brice Dobry committed
793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864
##############################################################################
['arch == riscv64', {

  # Slow tests which times out in debug mode.
  'try': [PASS, ['mode == debug', SKIP]],
  'array-constructor': [PASS, ['mode == debug', SKIP]],

  # Slow in release mode on RISC-V.
  'compiler/regress-stacktrace-methods': [PASS, SLOW],
  'array-splice': [PASS, SLOW],

  # Long running test.
  'string-indexof-2': [PASS, SLOW],

  # 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],

  # Requires too much memory on RISC-V.
  'regress/regress-752764': [SKIP],
  'regress/regress-779407': [SKIP],
  'harmony/bigint/regressions': [SKIP],

  # https://github.com/v8-riscv/v8/issues/53
  'wasm/float-constant-folding': [SKIP],

  'wasm/memory_2gb_oob': [SKIP], # OOM: sorry, best effort max memory size test
  'wasm/memory_4gb_oob': [SKIP], # OOM: sorry, best effort max memory size test

  # This often fails in debug mode because it is too slow
  'd8/d8-performance-now': [PASS, ['mode == debug', SKIP]],

  # Some atomic functions are not yet implemented
  'wasm/compare-exchange64-stress': [SKIP],
  'wasm/compare-exchange-stress': [SKIP],
  'regress/wasm/regress-1045225': [SKIP],
  'regress/wasm/regress-1045737': [SKIP],
  'regress/wasm/regress-1048241': [SKIP],
  'regress/wasm/regress-1074586-b': [SKIP],
  'regress/wasm/regress-1075953': [SKIP],
  'regress/wasm/regress-1074586': [SKIP],
  'regress/wasm/regress-1079449': [SKIP],
  'regress/wasm/regress-1080902': [SKIP],
  'regress/wasm/regress-1140549': [SKIP],
  'regress/wasm/regress-1153442': [SKIP],
  'regress/wasm/regress-1168116': [SKIP],
  'wasm/atomics': [SKIP],
  'wasm/atomics-non-shared': [SKIP],
  'wasm/grow-shared-memory': [SKIP],
  'wasm/shared-memory': [SKIP],

  # https://github.com/v8-riscv/v8/issues/418
  'regress/regress-1138075': [SKIP],
  'regress/regress-1138611': [SKIP],
}],  # 'arch == riscv64'

['arch == riscv64 and variant == stress_incremental_marking', {
  # https://github.com/v8-riscv/v8/issues/414
  'wasm/externref-globals-liftoff': [SKIP],
}], #'arch == riscv64 and variant == stress-incremental-marking'

865 866 867 868 869 870 871 872
##############################################################################
['system == macos', {
  # TODO(machenbach): These tests are x25 slower on 4-core Mac Minis. They can
  # be unskipped as soon as the pools only contain 8-core+ Macs.
  'wasm/compare-exchange-stress': [SKIP],
  'wasm/compare-exchange64-stress': [SKIP],
}],  # 'system == macos'

873 874
##############################################################################
['system == windows', {
875
  # Too slow with turbo fan.
876 877 878
  'math-floor-of-div': [PASS, ['mode == debug', SKIP]],
  'math-floor-of-div-nosudiv': [PASS, ['mode == debug', SKIP]],
  'unicodelctest': [PASS, ['mode == debug', SKIP]],
879

880 881 882
  # Setting the timezone and locale with environment variables unavailable
  'icu-date-to-string': [SKIP],
  'icu-date-lord-howe': [SKIP],
883
  'regress/regress-6288': [SKIP],
884 885 886 887 888 889 890
  'tzoffset-transition-apia': [SKIP],
  'tzoffset-transition-lord-howe': [SKIP],
  'tzoffset-transition-moscow': [SKIP],
  'tzoffset-transition-new-york': [SKIP],
  'tzoffset-transition-new-york-noi18n': [SKIP],
  'tzoffset-seoul': [SKIP],
  'tzoffset-seoul-noi18n': [SKIP],
891
}],  # 'system == windows'
892

893 894 895
##############################################################################
['system == android', {
  # Tests consistently failing on Android.
896
  # Setting the timezone and locale with environment variables unavailable
897 898 899
  'icu-date-to-string': [SKIP],
  'icu-date-lord-howe': [SKIP],
  'regress/regress-6288': [SKIP],
900 901 902 903 904 905 906
  'tzoffset-transition-apia': [SKIP],
  'tzoffset-transition-lord-howe': [SKIP],
  'tzoffset-transition-moscow': [SKIP],
  'tzoffset-transition-new-york': [SKIP],
  'tzoffset-transition-new-york-noi18n': [SKIP],
  'tzoffset-seoul': [SKIP],
  'tzoffset-seoul-noi18n': [SKIP],
907
  # OOM:
908
  'regress/regress-752764': [FAIL],
909
  # Flaky OOM:
910
  'regress/regress-748069': [SKIP],
911
  'regress/regress-779407': [SKIP],
912
  'regress/regress-852258': [SKIP],
913 914
}],  # 'system == android'

915 916 917 918 919
##############################################################################
['isolates', {
  # Slow tests.
  'es6/typedarray-of': [PASS, SLOW],
  'regress/regress-crbug-854299': [PASS, SLOW],
920

921 922 923 924 925
  # 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.
  'd8/d8-os': [SKIP],

926 927 928 929
  # Runs flakily OOM because multiple isolates are involved which create many
  # wasm memories each. Before running OOM on a wasm memory allocation we
  # trigger a GC, but only in the isolate allocating the new memory.
  'wasm/module-memory': [SKIP],
930
  'wasm/shared-memory-gc-stress': [SKIP],
931 932 933 934 935

  # The {FreezeWasmLazyCompilation} runtime function sets a flag in the native
  # module, which causes a data-race if the native module is shared between
  # isolates.
  'wasm/lazy-compilation': [SKIP],
936

937 938 939 940 941
  # Tier down/up Wasm functions is non-deterministic with
  # multiple isolates, as dynamic tiering relies on a array shared
  # in the module, that can be modified by all instances.
  'wasm/wasm-dynamic-tiering': [SKIP],

942 943 944 945 946 947 948 949 950
  # waitAsync tests modify the global state (across Isolates)
  'harmony/atomics-waitasync': [SKIP],
  'harmony/atomics-waitasync-1thread-2timeout': [SKIP],
  'harmony/atomics-waitasync-1thread-promise-out-of-scope': [SKIP],
  'harmony/atomics-waitasync-1thread-timeout': [SKIP],
  'harmony/atomics-waitasync-1thread-wake-up-fifo': [SKIP],
  'harmony/atomics-waitasync-1thread-wake-up-simple': [SKIP],
  'harmony/atomics-waitasync-worker-shutdown-before-wait-finished-timeout': [SKIP],
  'harmony/atomics-waitasync-worker-shutdown-before-wait-finished-no-timeout': [SKIP],
951 952
}],  # 'isolates'

953
##############################################################################
954
['deopt_fuzzer', {
955 956 957 958 959

  # Skip tests that are not suitable for deoptimization fuzzing.
  'never-optimize': [SKIP],
  'readonly': [SKIP],
  'array-feedback': [SKIP],
960
  'array-reduce': [SKIP],
961 962 963 964
  'deopt-recursive-eager-once': [SKIP],
  'deopt-recursive-lazy-once': [SKIP],
  'deopt-recursive-soft-once': [SKIP],
  'code-coverage-block-opt': [SKIP],
965 966
  'compiler/serializer-apply': [SKIP],
  'compiler/serializer-call': [SKIP],
967 968
  'compiler/serializer-dead-after-jump': [SKIP],
  'compiler/serializer-dead-after-return': [SKIP],
969
  'compiler/serializer-transition-propagation': [SKIP],
970 971
  'regress/regress-1049982-1': [SKIP],
  'regress/regress-1049982-2': [SKIP],
972

973 974 975
  # Bounds check triggers forced deopt for array constructors.
  'array-constructor-feedback': [SKIP],

976 977 978
  # Deopting uses just enough memory to make this one OOM.
  'regress/regress-3976': [SKIP],

979 980 981
  # Forced optimisation path tests.
  'shared-function-tier-up-turbo': [SKIP],

982 983
  # Too slow tests.
  'regress/regress-740784': [SKIP],
984 985 986

  # https://crbug.com/v8/9984
  'compiler/opt-higher-order-functions': [SKIP],
987
}],  # 'deopt_fuzzer'
988

989
##############################################################################
990
['gc_fuzzer', {
991 992 993
  'regress/regress-336820': [SKIP],
  'regress/regress-748069': [SKIP],
  'regress/regress-778668': [SKIP],
994
  'ignition/regress-672027': [PASS, ['tsan', SKIP]],
995
  'string-replace-gc': [PASS, SLOW, ['mode == debug', SKIP]],
996

997 998 999 1000
  # Unsuitable for GC fuzzing because coverage information is lost on GC.
  'code-coverage-ad-hoc': [SKIP],
  'code-coverage-precise': [SKIP],

1001 1002 1003
  # Flaky under GC stress (sometimes precludes the tested optimization)
  'compiler/load-elimination-const-field': [SKIP],

1004 1005 1006
  # Passes incompatible arguments.
  'd8/d8-arguments': [SKIP],

1007
  # Fails allocation on tsan.
1008
  'regress/regress-779407': [PASS, ['tsan', SKIP]],
1009 1010 1011 1012

  # Tests that fail some assertions due to checking internal state sensitive
  # to GC.
  'compiler/native-context-specialization-hole-check': [SKIP],
1013 1014
  'compiler/serializer-apply': [SKIP],
  'compiler/serializer-call': [SKIP],
1015 1016
  'compiler/serializer-dead-after-jump': [SKIP],
  'compiler/serializer-dead-after-return': [SKIP],
1017
  'compiler/serializer-transition-propagation': [SKIP],
1018
  'opt-elements-kind': [SKIP],
1019
  'regress/regress-trap-allocation-memento': [SKIP],
1020
  'regress/regress-v8-9267-*': [SKIP],
1021
  'shared-function-tier-up-turbo': [SKIP],
1022

1023
}],  # 'gc_fuzzer'
1024

1025 1026 1027 1028 1029
##############################################################################
['endurance_fuzzer', {
  # BUG(v8:7400).
  'wasm/lazy-compilation': [SKIP],

1030 1031 1032
  # BUG(v8:7429).
  'regress/regress-599414-array-concat-fast-path': [SKIP],

1033 1034
  # Often crashes due to memory consumption.
  'regress/regress-655573': [SKIP],
1035 1036 1037 1038 1039 1040

  # TSAN allocation failures.
  'deep-recursion': [PASS, ['tsan', SKIP]],
  'regress/regress-430201b': [PASS, ['tsan', SKIP]],
  'regress/regress-crbug-493779': [PASS, ['tsan', SKIP]],
  'regress/wasm/regress-763439': [PASS, ['tsan', SKIP]],
1041 1042
}],  # 'endurance_fuzzer'

1043 1044 1045 1046
##############################################################################
['predictable == True', {

  # Skip tests that are known to be non-deterministic.
1047 1048
  'd8/d8-worker-sharedarraybuffer': [SKIP],
  'd8/d8-os': [SKIP],
1049 1050
  'd8/d8-worker-shutdown': [SKIP],
  'd8/d8-worker-shutdown-gc': [SKIP],
1051
  'harmony/futex': [SKIP],
1052 1053 1054

  # BUG(v8:7166).
  'd8/enable-tracing': [SKIP],
1055 1056 1057 1058 1059 1060 1061 1062

  # Rely on (blocking) concurrent compilation.
  'compiler/concurrent-invalidate-transition-map': [SKIP],
  'compiler/concurrent-proto-change': [SKIP],
  'compiler/manual-concurrent-recompile': [SKIP],
  'compiler/regress-905555-2': [SKIP],
  'compiler/regress-905555': [SKIP],
  'compiler/regress-9945-1': [SKIP],
1063 1064
  'concurrent-initial-prototype-change-1': [SKIP],
  'concurrent-initial-prototype-change-2': [SKIP],
1065 1066 1067
  'regress/regress-356053': [SKIP],
  'regress/regress-embedded-cons-string': [SKIP],

1068 1069 1070
  # Intentionally non-deterministic using shared arraybuffers.
  'wasm/atomics-stress': [SKIP],
  'wasm/atomics64-stress': [SKIP],
1071
  'wasm/futex': [SKIP],
1072
  'regress/wasm/regress-1067621': [SKIP],
1073 1074 1075

  # BUG(v8:9975).
  'es6/typedarray-copywithin': [SKIP],
1076 1077 1078 1079 1080 1081 1082 1083 1084

  # BUG(v8:11319): Predictable crashes with --wasm-tier-up.
  'wasm/compiled-module-serialization': [SKIP],
  'wasm/graceful_shutdown_during_tierup': [SKIP],
  'wasm/print-code': [SKIP],
  'regress/wasm/regress-11024': [SKIP],
  'regress/wasm/regress-7785': [SKIP],
  'regress/wasm/regress-808848': [SKIP],
  'regress/wasm/regress-808980': [SKIP],
1085 1086
}],  # 'predictable == True'

1087
##############################################################################
1088
['simulator_run and (arch in [ppc64, s390x])', {
1089 1090 1091

  # take too long with the simulator.
  'regress/regress-1132': [SKIP],
1092
  'regress/regress-740784': [SKIP],
1093
  'regress/regress-crbug-482998': [PASS, SLOW],
1094
  'regress/regress-91008': [PASS, SLOW],
1095
  'regress/regress-779407': [PASS, SLOW],
1096
  'harmony/regexp-property-lu-ui': [PASS, SLOW],
1097
  'whitespaces': [PASS, SLOW],
1098
  'generated-transition-stub': [PASS, SLOW],
1099
}],  # 'simulator_run and (arch in [ppc64, s390x])'
1100

1101 1102 1103 1104 1105
##############################################################################
['arch == ppc64', {

  # stack overflow
  'big-array-literal': [SKIP],
1106
  'regress/regress-353551': [SKIP],
1107 1108
}],  # 'arch == ppc64'

1109 1110 1111 1112
##############################################################################
['system == aix', {
  # stack overflow
  'regress/regress-crbug-178790': [PASS, ['mode == debug', SKIP]],
1113 1114 1115
  # PASE environment currently ships with no tzdata database
  'tzoffset-transition-new-york-noi18n': [SKIP],
  'tzoffset-seoul-noi18n': [SKIP],
1116 1117
}],  # 'system == aix'

1118 1119 1120 1121 1122 1123
##############################################################################
['arch == s390x', {
  # stack overflow
  'regress/regress-crbug-178790': [PASS, ['mode == debug', SKIP]],
}],  # 'arch == s390x'

1124 1125
##############################################################################
['variant == stress', {
1126
  # Slow tests.
1127
  'array-natives-elements': [SKIP],
1128 1129
  'ignition/regress-599001-verifyheap': [SKIP],
  'unicode-test': [SKIP],
1130

1131 1132
  # The RegExp code cache means running this test multiple times is invalid.
  'regexp-tier-up': [SKIP],
1133
  'regexp-tier-up-multiple': [SKIP],
1134

1135 1136
  # Flaky crash on Odroid devices: https://crbug.com/v8/7678
  'regress/regress-336820': [PASS, ['arch == arm and not simulator_run', SKIP]],
1137

1138
  # Goes OOM on ODROID devices: https://crbug.com/v8/9026
1139
  # Too slow on PPC: https://crbug.com/v8/9246
1140
  'es6/large-classes-properties': [PASS, SLOW, ['(arch == arm and not simulator_run) or arch in [ppc, ppc64]', SKIP]],
1141
  'regress/regress-1122': [PASS, ['tsan', SKIP]],
1142

1143 1144 1145
  # Too slow with gc_stress on arm64.
  'messages': [PASS, ['gc_stress and arch == arm64', SKIP]],

1146 1147
  # Slow on arm64 simulator: https://crbug.com/v8/7783
  'string-replace-gc': [PASS, ['arch == arm64 and simulator_run', SKIP]],
1148

1149 1150 1151 1152
  # Too memory hungry.
  'regress/regress-779407': [PASS, ['tsan', SKIP]],
  'regress/regress-599414-array-concat-fast-path':  [PASS, ['tsan', SKIP]],

1153 1154
  # Too memory hungry on Odroid devices.
  'regress/regress-678917': [PASS, ['arch == arm and not simulator_run', SKIP]],
1155 1156 1157

  # Baseline tests don't make sense with optimization stressing.
  'baseline/*': [SKIP],
1158 1159
}],  # variant == stress

1160 1161 1162
##############################################################################
['variant == stress and (arch == arm or arch == arm64) and simulator_run', {
  # Slow tests: https://crbug.com/v8/7783
1163
  'es6/large-classes-properties': [SKIP],
1164
  'generated-transition-stub': [SKIP],
1165
  'regress/regress-336820': [SKIP],
1166 1167
}],  # variant == stress and (arch == arm or arch == arm64) and simulator_run

1168
##############################################################################
1169
['variant in (nooptimization, jitless) and arch in (arm, arm64) and simulator_run', {
1170
  # Slow tests: https://crbug.com/v8/7783
1171
  'regress/regress-crbug-319860': [SKIP],
1172 1173
}],  # variant == nooptimization and (arch == arm or arch == arm64) and simulator_run

1174 1175 1176 1177 1178
##############################################################################
['variant == nooptimization', {
  # Tests that depend on optimization (beyond doing assertOptimized).
  'regress/regress-1049982-1': [SKIP],
  'regress/regress-1049982-2': [SKIP],
1179 1180 1181
  # Wasm serialization relies on TurboFan to be available, hence does not work
  # in the 'nooptimization' variant.
  'regress/wasm/regress-7785': [SKIP],
1182 1183
}],  # variant == nooptimization

1184
##############################################################################
1185 1186 1187 1188 1189 1190
['(arch == arm or arch == arm64)', {
  # Flaky tests: https://crbug.com/v8/8090
  'regress/regress-752764': [SKIP],
}],  # (arch == arm or arch == arm64)

##############################################################################
1191 1192 1193
['gcov_coverage', {
  # Tests taking too long.
  'array-functions-prototype-misc': [SKIP],
1194 1195 1196

  # Stack overflow.
  'big-array-literal': [SKIP],
1197 1198
}],  # 'gcov_coverage'

1199
##############################################################################
1200
['variant == no_wasm_traps', {
1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215
  # Skip stuff uninteresting for wasm traps
  '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],
1216
}],  # variant == no_wasm_traps
1217

1218 1219 1220 1221
##############################################################################
['no_harness', {
    # skip assertion tests since the stack trace is broken if mjsunit is
    # included in the snapshot
1222
    'mjsunit-assertion-error': [SKIP],
1223 1224
}], # no_harness

1225 1226 1227 1228 1229 1230
##############################################################################
['arch != x64 or deopt_fuzzer', {
    # Skip stress-deopt-count tests since it's in x64 only
    'compiler/stress-deopt-count-*': [SKIP],
}], # arch != x64 or deopt_fuzzer

1231
##############################################################################
1232 1233
# Liftoff is currently only sufficiently implemented on x64, ia32, arm64 and
# arm.
1234
# TODO(clemensb): Implement on all other platforms (crbug.com/v8/6600).
1235
['arch not in (x64, ia32, arm64, arm)', {
1236
  'wasm/liftoff': [SKIP],
1237
  'wasm/tier-up-testing-flag': [SKIP],
1238
  'wasm/tier-down-to-liftoff': [SKIP],
1239
  'wasm/wasm-dynamic-tiering': [SKIP],
1240
}], # arch not in (x64, ia32, arm64, arm)
1241

1242 1243 1244 1245
##############################################################################
['system != linux', {
  # Multi-mapped mock allocator is only available on Linux.
  'regress/regress-crbug-1041232': [SKIP],
1246
  'regress/regress-crbug-1104608': [SKIP],
1247 1248
}],

1249
##############################################################################
1250
['variant == turboprop or variant == turboprop_as_toptier', {
1251 1252 1253 1254
  # Deopts differently than TurboFan.
  'compiler/native-context-specialization-hole-check': [SKIP],
  'compiler/number-comparison-truncations': [SKIP],
  'compiler/redundancy-elimination': [SKIP],
1255
  'compiler/regress-9945-*': [SKIP],
1256
  'es6/super-ic-opt-no-turboprop': [SKIP],
1257 1258 1259

  # Static asserts for optimizations don't hold due to removed optimization
  # phases.
1260 1261
  'compiler/concurrent-inlining-1': [SKIP],
  'compiler/concurrent-inlining-2': [SKIP],
1262
  'compiler/constant-fold-add-static': [SKIP],
1263
  'compiler/diamond-followedby-branch': [SKIP],
1264
  'compiler/is-being-interpreted-*': [SKIP],
1265
  'compiler/load-elimination-const-field': [SKIP],
1266
  'compiler/serializer-accessors': [SKIP],
1267 1268
  'compiler/serializer-apply': [SKIP],
  'compiler/serializer-call': [SKIP],
1269 1270
  'compiler/serializer-dead-after-jump': [SKIP],
  'compiler/serializer-dead-after-return': [SKIP],
1271 1272
  'compiler/serializer-feedback-propagation-*': [SKIP],
  'compiler/serializer-transition-propagation': [SKIP],
1273 1274

  # Some tests rely on inlining.
1275
  'compiler/inlined-call-polymorphic': [SKIP],
1276
  'compiler/opt-higher-order-functions': [SKIP],
1277 1278
  'regress/regress-1049982-1': [SKIP],
  'regress/regress-1049982-2': [SKIP],
1279
  'es6/iterator-eager-deopt': [SKIP],
1280

1281 1282 1283 1284 1285
  # In turboprop we reuse the optimized code on soft deopt. The following tests
  # test for a soft deopt and they won't work in TurboProp.
  'deopt-recursive-soft-once': [SKIP],
  'regress/regress-3709': [SKIP],
  'regress/regress-5790': [SKIP],
1286 1287 1288

  # const field tracking is disabled in turboprop
  'const-field-tracking': [SKIP],
1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299

  # Dynamic map checks doesn't use information from maps so we don't inline
  # array builtins or track field representation.
  'compiler/deopt-inlined-from-call': [SKIP],
  'compiler/field-representation-tracking': [SKIP],
  'field-type-tracking': [SKIP],

  # We don't migrate deprecated maps with dynamic map checks. This will be
  # fixed in a later cl.
  # TODO(mythria): Reenable this when the cl that migrates deprecated maps
  # lands
1300
  'regress/regress-932953': [FAIL],
1301

1302 1303 1304 1305
  # Tests failing for the lack of function context specialization in Turboprop.
  'compiler/abstract-equal-receiver': [FAIL],
  'compiler/constant-fold-cow-array': [FAIL],
  'compiler/promise-resolve-stable-maps': [FAIL],
1306
}],  # variant == turboprop or variant = turboprop_as_toptier
1307

1308 1309 1310 1311 1312 1313
##############################################################################
['variant == top_level_await', {
  # specifically expects to fail on top level await.
  'harmony/modules-import-15': [SKIP],
}], # variant == top_level_await

1314 1315 1316 1317 1318 1319 1320
##############################################################################
['variant == stress_js_bg_compile_wasm_code_gc', {
  # Runs significantly slower with --stress-wasm-code-gc, problematic
  # especially in combination with tsan or other slow configurations.
  'wasm/many-modules': [SKIP],
}],  # variant == stress_js_bg_compile_wasm_code_gc

1321 1322 1323 1324 1325 1326 1327 1328
##############################################################################
['variant == assert_types', {
  # Type assertions can lead to differences in representation selection,
  # which in turn can lead to different deopt behavior.
  'compiler/number-abs': [SKIP],
  'compiler/number-toboolean': [SKIP],
}],  # variant == assert_types

1329
##############################################################################
1330 1331 1332
['variant == stress_snapshot and arch != x64', {
  # Deserialization fails due to read-only snapshot checksum verification.
  # https://crbug.com/v8/10491
1333
  '*': [SKIP],
1334
}],  # variant == stress_snapshot and arch != x64
1335

1336
##############################################################################
1337
['variant == stress_snapshot and arch == x64', {
1338 1339
  # Crashes the serializer due to recursion.
  'deep-recursion': [SKIP],
1340
  'string-replace-gc': [SKIP],
1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371
  # Debug check failed:
  # map == GetReadOnlyRoots(isolate).fixed_array_map() || map == GetReadOnlyRoots(isolate).fixed_cow_array_map().
  # This means a mismatch of elements kinds / elements on the global object.
  'es6/block-sloppy-function': [SKIP],
  'es6/reflect-get-own-property-descriptor': [SKIP],
  'es6/reflect': [SKIP],
  'get-own-property-descriptor': [SKIP],
  'global-properties': [SKIP],
  'indexed-accessors': [SKIP],
  'object-freeze-global': [SKIP],
  'object-seal-global': [SKIP],
  'regress/regress-1103': [SKIP],
  'regress/regress-1112': [SKIP],
  'regress/regress-1120': [SKIP],
  'regress/regress-2346': [SKIP],
  'regress/regress-489151': [SKIP],
  'regress/regress-crbug-1002628': [SKIP],
  'regress/regress-crbug-454091': [SKIP],
  'regress/regress-crbug-663750': [SKIP],
  'regress/regress-freeze-setter': [SKIP],
  # TODO(v8:10494): asm Code objects can't be flushed and end up in the isolate
  # serializer.
  'asm/*': [SKIP],
  'compiler/regress-439743': [SKIP],
  'regress/regress-441099': [SKIP],
  'regress/regress-617526': [SKIP],
  'regress/regress-6196': [SKIP],
  'regress/regress-677685': [SKIP],
  'regress/regress-7893': [SKIP],
  'regress/regress-799690': [SKIP],
  'regress/regress-8377': [SKIP],
1372
  'regress/regress-crbug-1047368': [SKIP],
1373 1374 1375 1376 1377 1378 1379 1380
  'regress/regress-crbug-898974': [SKIP],
  'regress/regress-crbug-935800': [SKIP],
  'regress/regress-crbug-976934': [SKIP],
  'regress/wasm/*': [SKIP],
  'wasm/*': [SKIP],
  # Investigate (IsScript).
  'harmony/import-from-compilation-errored': [SKIP],
  'harmony/private-fields-special-object': [SKIP],
1381 1382
  # Skip, since import errors since they refer to the script via debug symbols
  'harmony/import-from-instantiation-errored': [SKIP],
1383 1384 1385 1386
  # Investigate (JSFunction in startup serializer).
  'regress/regress-1034394': [SKIP],
  'regress/regress-863810': [SKIP],
  'regress/regress-crbug-772056': [SKIP],
1387 1388
  # The entire snapshotting code assumes that the snapshot size fits
  # into an int, so it doesn't support huge TypedArrays.
1389 1390
  'regress/regress-319722-ArrayBuffer': [SKIP],
  'regress/regress-667603': [SKIP],
1391
  'regress/regress-crbug-1104608': [SKIP],
1392 1393 1394 1395 1396 1397 1398
  # Investigate (IsFixedArrayBase).
  'regress/regress-786784': [SKIP],
  'regress/regress-v8-9656': [SKIP],
  # Investigate (startup_serializer_->ReferenceMapContains(obj)).
  'regress/regress-813440': [SKIP],
  # Investigate (segfault).
  'regress/regress-crbug-397662': [SKIP],
1399 1400 1401
  # Script referenced only through context-dependent SourceTextModule
  # https://bugs.chromium.org/p/v8/issues/detail?id=11073
  'tools/processor': [SKIP],
1402 1403 1404 1405 1406 1407 1408 1409 1410
}],  # variant == stress_snapshot and arch == x64

##############################################################################
['variant == slow_path', {
  # This tests creates a pretty big array and calls Array.prototype.slice on
  # it. In the slow path, this results in one runtime call per element, which
  # takes several minutes overall.
  'regress/wasm/regress-9017': [SKIP],
}],  # variant == slow_path
1411

1412
['((arch == mipsel or arch == mips64el or arch == mips or arch == mips64) and not simd_mips) or (arch in [ppc64, s390x])', {
1413 1414
  # Requires scalar lowering for 64x2 SIMD instructions, which are not
  # implemented yet.
1415
  # Also skip tests on archs that don't support SIMD and lowering doesn't yet work correctly.
1416
  # Condition copied from cctest.status.
1417
  'regress/wasm/regress-10831': [SKIP],
1418
}],  # ((arch == mipsel or arch == mips64el or arch == mips or arch == mips64) and not simd_mips) or (arch in [ppc64, s390x])
1419

1420 1421 1422 1423 1424 1425 1426 1427 1428 1429
##############################################################################
['variant == stress_sampling', {
  # https://bugs.chromium.org/p/v8/issues/detail?id=10915
  'harmony/weakrefs/stress-finalizationregistry-dirty-enqueue': [SKIP],
  'regress/regress-484544': [SKIP],
  'regress/regress-543994': [SKIP],
  'regress/regress-crbug-1041232': [SKIP],
  'regress/regress-set-flags-stress-compact': [SKIP],
}],  # variant == stress_sampling

1430 1431 1432 1433 1434
##############################################################################
['variant == stress_incremental_marking', {
  'wasm/shared-memory-worker-stress': [PASS, SLOW, ['tsan', SKIP]],
}],  # variant == stress_incremental_marking

1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456
##############################################################################
['no_simd_sse == True', {
  'wasm/exceptions-simd': [SKIP],
  'wasm/liftoff-simd-params': [SKIP],
  'wasm/multi-value-simd': [SKIP],
  'wasm/simd-*': [SKIP],
  'regress/wasm/regress-10309': [SKIP],
  'regress/wasm/regress-10831': [SKIP],
  'regress/wasm/regress-1054466': [SKIP],
  'regress/wasm/regress-1065599': [SKIP],
  'regress/wasm/regress-1070078': [SKIP],
  'regress/wasm/regress-1081030': [SKIP],
  'regress/wasm/regress-1111522': [SKIP],
  'regress/wasm/regress-1112124': [SKIP],
  'regress/wasm/regress-1116019': [SKIP],
  'regress/wasm/regress-1124885': [SKIP],
  'regress/wasm/regress-1132461': [SKIP],
  'regress/wasm/regress-1161555': [SKIP],
  'regress/wasm/regress-1161954': [SKIP],
  'regress/wasm/regress-1165966': [SKIP],
}],  # no_simd_sse == True

1457 1458 1459 1460 1461 1462
##############################################################################
# TODO(v8:11421): Port baseline compiler to ia32, Arm, MIPS, S390 and PPC
['arch not in (x64, arm64)', {
  'baseline/*': [SKIP],
}],

1463
]