v8/test/wasm-spec-tests/wasm-spec-tests.status
Lu Yahan 942a67ca01 Reland "[riscv32] Add RISCV32 backend"
This is a reland of commit 491de34bcc

co-authors: Ji Qiu <qiuji@iscas.ac.cn>
            Alvise De Faveri Tron <elvisilde@gmail.com>
            Usman Zain <uszain@gmail.com>
            Zheng Quan <vitalyankh@gmail.com>

Original change's description:
> [riscv32] Add RISCV32 backend
>
> This very large changeset adds support for RISCV32.
>
> Bug: v8:13025
> Change-Id: Ieacc857131e6620f0fcfd7daa88a0f8d77056aa9
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3736732
> Reviewed-by: Michael Achenbach <machenbach@chromium.org>
> Commit-Queue: Yahan Lu <yahan@iscas.ac.cn>
> Reviewed-by: ji qiu <qiuji@iscas.ac.cn>
> Reviewed-by: Andreas Haas <ahaas@chromium.org>
> Reviewed-by: Hannes Payer <hpayer@chromium.org>
> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#82053}

Bug: v8:13025
Change-Id: I220fae4b8e2679bdc111724e08817b079b373bd5
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3807124
Commit-Queue: Yahan Lu <yahan@iscas.ac.cn>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: ji qiu <qiuji@iscas.ac.cn>
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Cr-Commit-Position: refs/heads/main@{#82198}
2022-08-04 12:47:44 +00:00

180 lines
6.8 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, {
'skip-stack-guard-page': [PASS, ['((arch == ppc or arch == ppc64 or arch == s390 or arch == s390x) and simulator_run)', SKIP]],
# TODO(v8:10994): Failing spec test after update.
'proposals/js-types/data': [FAIL],
# Missing rebase in the proposal repository.
'proposals/js-types/table': [FAIL],
'proposals/memory64/linking': [FAIL],
'proposals/memory64/table': [FAIL],
'proposals/memory64/unreached-invalid': [FAIL],
# TODO(wasm): Roll newest tests into "js-types" repository.
'proposals/js-types/elem': [FAIL],
'proposals/js-types/globals': [FAIL],
'proposals/js-types/imports': [FAIL],
'proposals/js-types/linking': [FAIL],
# TODO(wasm): Roll newest tests into "tail-call" repository.
'proposals/tail-call/exports': [FAIL],
'proposals/tail-call/func': [FAIL],
'proposals/tail-call/globals': [FAIL],
'proposals/tail-call/linking': [FAIL],
# TODO(v8:11401): Fix memory64 spec tests / the v8 implementation (whatever
# is broken).
'proposals/memory64/data': [FAIL],
'proposals/memory64/elem': [FAIL],
'proposals/memory64/imports': [FAIL],
# Tests that need to run sequentially (e.g. due to memory consumption).
'simd_f32x4*': [PASS, HEAVY],
'simd_f64x2*': [PASS, HEAVY],
'f32*': [PASS, HEAVY],
'f64*': [PASS, HEAVY],
}], # ALWAYS
['arch == arm and not simulator_run', {
# See https://crbug.com/v8/10938 denormals not handled correctly on ARM.
'simd_f32x4': [PASS, FAIL],
'simd_f32x4_arith': [PASS, FAIL],
'simd_f32x4_cmp': [PASS, FAIL],
# This test only has 1 problematic use of f32x4.min and f32x4.div, consider
# removing it from upstream, then we can run this test.
'simd_splat' : [PASS, FAIL],
'simd_f32x4_pmin_pmax' : [PASS, FAIL],
}], # arch == arm and not simulator_run
['arch == mipsel or arch == mips64el or arch == mips or arch == mips64', {
# These tests fail because mips does not support the correct NaN bit patterns.
'float_misc': [SKIP],
'float_exprs': [SKIP],
'f32': [SKIP],
'f64': [SKIP],
'f32_bitwise': [SKIP],
'f64_bitwise': [SKIP],
'proposals/reference-types/conversions': [SKIP],
'proposals/bulk-memory-operations/conversions': [SKIP],
'proposals/js-types/f32': [SKIP],
'proposals/js-types/f64': [SKIP],
'proposals/js-types/f32_bitwise': [SKIP],
'proposals/js-types/f64_bitwise': [SKIP],
'proposals/js-types/float_exprs': [SKIP],
'proposals/js-types/float_misc': [SKIP],
'proposals/js-types/conversions': [SKIP],
'proposals/bulk-memory-operations/f32': [SKIP],
'proposals/bulk-memory-operations/f64': [SKIP],
'proposals/reference-types/f32': [SKIP],
'proposals/reference-types/f64': [SKIP],
'proposals/bulk-memory-operations/float_misc': [SKIP],
'proposals/reference-types/float_misc': [SKIP],
'proposals/tail-call/f32': [SKIP],
'proposals/tail-call/f32_bitwise': [SKIP],
'proposals/tail-call/f64': [SKIP],
'proposals/tail-call/f64_bitwise': [SKIP],
'proposals/tail-call/float_exprs': [SKIP],
'proposals/tail-call/float_misc': [SKIP],
'proposals/tail-call/conversions': [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.
'conversions': [SKIP],
}], # '(arch == mipsel or arch == mips64el or arch == mips or arch == mips64) and not simulator_run'
['(arch == mipsel or arch == mips64el or arch == loong64) and simulator_run', {
# These tests need larger stack size on simulator.
'skip-stack-guard-page': '--sim-stack-size=8192',
'proposals/tail-call/skip-stack-guard-page': '--sim-stack-size=8192',
}], # '(arch == mipsel or arch == mips64el) and simulator_run'
['arch == riscv64', {
# These tests need larger stack size on simulator.
'skip-stack-guard-page': '--sim-stack-size=8192',
'proposals/tail-call/skip-stack-guard-page': '--sim-stack-size=8192',
# SIMD is not fully implemented yet.
'simd*': [SKIP],
}], # 'arch == riscv64'
['arch == riscv32', {
# These tests need larger stack size on simulator.
'skip-stack-guard-page': '--sim-stack-size=8192',
'proposals/tail-call/skip-stack-guard-page': '--sim-stack-size=8192',
# SIMD is not fully implemented yet.
'simd*': [SKIP],
'func': ['variant == stress', SKIP],
'i64': ['variant == stress', SKIP],
'proposals/js-types/i64': ['variant == stress', SKIP],
'proposals/memory64/i64': ['variant == stress', SKIP],
}], # 'arch == riscv32'
['arch == ppc or arch == ppc64', {
# These tests fail because ppc float min and max doesn't convert sNaN to qNaN.
'f32': [SKIP],
'f64': [SKIP],
'proposals/js-types/f32': [SKIP],
'proposals/js-types/f64': [SKIP],
'proposals/bulk-memory-operations/f32': [SKIP],
'proposals/bulk-memory-operations/f64': [SKIP],
'proposals/reference-types/f32': [SKIP],
'proposals/reference-types/f64': [SKIP],
'proposals/tail-call/f32': [SKIP],
'proposals/tail-call/f64': [SKIP],
# This test fails because ppc float to double doesn't convert sNaN to qNaN.
'conversions': [SKIP],
'proposals/js-types/conversions': [SKIP],
'proposals/bulk-memory-operations/conversions': [SKIP],
'proposals/reference-types/conversions': [SKIP],
'proposals/tail-call/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.
'f32': [SKIP],
'f64': [SKIP],
'proposals/js-types/f32': [SKIP],
'proposals/js-types/f64': [SKIP],
'proposals/bulk-memory-operations/f32': [SKIP],
'proposals/bulk-memory-operations/f64': [SKIP],
'proposals/reference-types/f32': [SKIP],
'proposals/reference-types/f64': [SKIP],
'proposals/tail-call/f32': [SKIP],
'proposals/tail-call/f64': [SKIP],
}], # 'arch == s390 or arch == s390x'
##############################################################################
# TODO(v8:7777): Change this once wasm is supported in jitless mode.
['not has_webassembly or variant == jitless', {
'*': [SKIP],
}], # not has_webassembly or variant == jitless
################################################################################
['variant == stress_snapshot', {
'*': [SKIP], # only relevant for mjsunit tests.
}],
##############################################################################
['no_simd_hardware == True', {
'simd*': [SKIP],
}], # no_simd_hardware == True
##############################################################################
# Skip tests that require a large amount of virtual address space (inside the
# sandbox if that is enabled) if tsan is enabled.
['tsan == True', {
'memory_copy': [SKIP],
}],
]