v8/test/wasm-spec-tests/wasm-spec-tests.status
Ben Smith 34c8443c88 [wasm][bulk-memory] Check segment bounds lazily
The bulk memory proposal changed behavior of segment initialization
during instantiation. Previously, all segments would be bounds-checked,
after which the segments would be initialized.

The bulk memory proposal removes the up-front check, and always
initializes active segments in order, starting with element segments and
then continuing with data segments. Each active segment is initialized
as-if they were being initialized with the `memory.init` and
`table.init` instructions, so an out-of-bounds initialization may still
modify the memory or table partially.

Bug: v8:8892
Change-Id: I472fca2401e07d60b288f0cc745629a451b31088
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1565033
Commit-Queue: Ben Smith <binji@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#60885}
2019-04-16 22:43:11 +00:00

63 lines
2.4 KiB
Plaintext

# Copyright 2016 the V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
[
[ALWAYS, {
#TODO(ahaas): Add additional stack checks on mips.
'tests/skip-stack-guard-page': [PASS, ['arch == mipsel or arch == mips64el or ((arch == ppc or arch == ppc64 or arch == s390 or arch == s390x) and simulator_run)', SKIP]],
# TODO(v8:9144): The MVP behavior when bounds-checking segments changed in
# the bulk-memory proposal. Since we've enabled bulk-memory by default, we
# need to update to use its testsuite.
'tests/linking': [FAIL],
}], # ALWAYS
['arch == mipsel or arch == mips64el or arch == mips or arch == mips64', {
# These tests fail because mips does not support the correct NaN bit patterns.
'tests/float_misc': [SKIP],
'tests/float_exprs': [SKIP],
'tests/f32': [SKIP],
'tests/f64': [SKIP],
'tests/f32_bitwise': [SKIP],
'tests/f64_bitwise': [SKIP],
}], # 'arch == mipsel or arch == mips64el or arch == mips or arch == mips64'
['(arch == mipsel or arch == mips64el or arch == mips or arch == mips64) and not simulator_run', {
# This test fail because mips does not support the correct NaN bit patterns.
# But it doesn't fail in simulator.
'tests/conversions': [SKIP],
}], # '(arch == mipsel or arch == mips64el or arch == mips or arch == mips64) and not simulator_run'
['arch == arm and not simulator_run', {
# Too slow on chromebooks.
'tests/br_table': [SKIP],
}], # 'arch == arm and not simulator_run'
['arch == ppc or arch == ppc64', {
# These tests fail because ppc float min and max doesn't convert sNaN to qNaN.
'tests/f32': [SKIP],
'tests/f64': [SKIP],
# This test fails because ppc float to double doesn't convert sNaN to qNaN.
'tests/conversions': [SKIP],
}], # 'arch == ppc or arch == ppc64'
['arch == s390 or arch == s390x', {
# These tests fail because s390 float min and max doesn't convert sNaN to qNaN.
'tests/f32': [SKIP],
'tests/f64': [SKIP],
}], # 'arch == s390 or arch == s390x'
##############################################################################
['lite_mode or variant == jitless', {
# TODO(v8:7777): Re-enable once wasm is supported in jitless mode.
'*': [SKIP],
}], # lite_mode or variant == jitless
##############################################################################
['variant == jitless and not embedded_builtins', {
'*': [SKIP],
}], # variant == jitless and not embedded_builtins
]