3c422d1c5e
The serializer currently cannot handle a heap state containing arbitrary compiled Code objects. As a quick fix for the --stress-snapshot d8 flag, we clear compiled data from the isolate prior to the serialize-deserialize-verify pass. With this change, mjsunit tests pass on x64. The %SerializeDeserializeNow() runtime function would require more work, since it is not possible to mutate the heap to this extent while still preserving a runnable host context and isolate. We will need another solution there. Drive-by: Skip the stress_snapshot variant except for the mjsunit suite. Tbr: machenbach@chromium.org Bug: v8:10493,v8:10416 Change-Id: Ie110da8b51613fcd69c7f391d3cf8589d6b04dd8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2182429 Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67585}
145 lines
5.6 KiB
Plaintext
145 lines
5.6 KiB
Plaintext
# Copyright 2013 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, {
|
|
# Flaky tests.
|
|
# BUG(v8:2989).
|
|
'dfg-inline-arguments-become-double': [PASS, FAIL],
|
|
'dfg-inline-arguments-become-int32': [PASS, FAIL],
|
|
'dfg-inline-arguments-reset': [PASS, FAIL],
|
|
'dfg-inline-arguments-reset-changetype': [PASS, FAIL],
|
|
# Irregexp interpreter overflows stack. We should just not crash.
|
|
'fast/js/regexp-stack-overflow': [PASS, FAIL],
|
|
|
|
# This test tries to sort very large array. Array#sort pre-processing does
|
|
# not support huge sparse Arrays, so this test runs a very long time.
|
|
# https://crbug.com/v8/8714
|
|
'array-sort-small-sparse-array-with-large-length': [SKIP],
|
|
|
|
# Slow tests.
|
|
'dfg-double-vote-fuzz': [PASS, SLOW],
|
|
}], # ALWAYS
|
|
['system == windows', {
|
|
# Exceeds call stack on windows after MSVS2017 switch.
|
|
'fast/js/excessive-comma-usage': [SKIP],
|
|
}], # system == windows
|
|
['mode == debug', {
|
|
# Too slow in debug mode.
|
|
'dfg-int-overflow-in-loop': [SKIP],
|
|
'dfg-double-vote-fuzz': [SKIP],
|
|
'reentrant-caching': [SKIP],
|
|
'sort-large-array': [SKIP],
|
|
# Too slow with --enable-slow-asserts.
|
|
'array-iterate-backwards': [SKIP],
|
|
}], # 'mode == debug'
|
|
['simulator_run', {
|
|
# Skip tests that timeout with turbofan.
|
|
'array-iterate-backwards': [PASS, NO_VARIANTS],
|
|
'function-apply-aliased': [SKIP],
|
|
|
|
# Skip tests that are too slow for simulators.
|
|
'dfg-int-overflow-in-loop': [SKIP],
|
|
}], # 'simulator_run'
|
|
['mode == debug and simulator_run', {
|
|
# Too slow on debug simulators.
|
|
'dfg-inline-function-dot-caller': [SKIP],
|
|
}], # 'mode == debug and simulator_run'
|
|
['dcheck_always_on == True and (arch == arm or arch == arm64)', {
|
|
# Doesn't work with gcc 4.6 on arm or arm64 for some reason.
|
|
'reentrant-caching': [SKIP],
|
|
}], # 'dcheck_always_on == True and (arch == arm or arch == arm64)'
|
|
['arch == mips', {
|
|
# Too slow for mips big-endian boards on bots (no FPU).
|
|
'dfg-int-overflow-in-loop': [SKIP],
|
|
}], # 'arch == mips'
|
|
['arch == s390 or arch == s390x', {
|
|
# Too slow.
|
|
'dfg-int-overflow-in-loop': [SKIP],
|
|
}], # 'arch == s390 or arch == s390x'
|
|
|
|
##############################################################################
|
|
['asan == True', {
|
|
# Skip tests not suitable for ASAN.
|
|
'fast/js/excessive-comma-usage': [SKIP],
|
|
|
|
# BUG(v8:4499).
|
|
'run-json-stringify': [SKIP],
|
|
}], # 'asan == True'
|
|
|
|
##############################################################################
|
|
['isolates', {
|
|
# BUG(v8:4499).
|
|
'*': [SKIP],
|
|
}], # 'isolates'
|
|
|
|
##############################################################################
|
|
['gc_stress == True', {
|
|
# Tests taking too long
|
|
'fast/js/excessive-comma-usage': [SKIP]
|
|
}], # 'gc_stress == True'
|
|
|
|
['gc_stress == True and mode == debug', {
|
|
# Skip tests that timeout.
|
|
}], # 'gc_stress == True and mode == debug'
|
|
|
|
##############################################################################
|
|
['arch == arm64 and msan', {
|
|
# Stack size too large with masm on Arm64.
|
|
'fast/js/excessive-comma-usage': [SKIP],
|
|
}], # arch == arm64 and msan
|
|
|
|
##############################################################################
|
|
['variant in [nooptimization, stress, stress_js_bg_compile_wasm_code_gc] and (arch == arm or arch == arm64) and simulator_run', {
|
|
# Slow tests: https://crbug.com/v8/7783
|
|
'dfg-double-vote-fuzz': [SKIP],
|
|
}], # variant in [nooptimization, stress, stress_js_bg_compile_wasm_code_gc] and (arch == arm or arch == arm64) and simulator_run
|
|
|
|
##############################################################################
|
|
['gcov_coverage', {
|
|
# Tests taking too long or getting too large call stacks.
|
|
'fast/js/excessive-comma-usage': [SKIP],
|
|
'run-json-stringify': [SKIP],
|
|
}], # 'gcov_coverage'
|
|
|
|
##############################################################################
|
|
['variant == no_wasm_traps', {
|
|
'*': [SKIP],
|
|
}], # variant == no_wasm_traps
|
|
|
|
##############################################################################
|
|
['no_i18n == True', {
|
|
'fast/js/string-capitalization': [FAIL],
|
|
}], # variant == no_wasm_traps
|
|
|
|
################################################################################
|
|
['variant == stress_snapshot', {
|
|
'*': [SKIP], # only relevant for mjsunit tests.
|
|
}],
|
|
|
|
]
|