summaryrefslogtreecommitdiff
path: root/deps/v8/test/wasm-spec-tests/wasm-spec-tests.status
blob: 676c4a9627413f1c9d713e6f3917e2db3dfeb0aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
# 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).
  'proposals/simd/simd_f32x4*': [PASS, HEAVY],
  'proposals/simd/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.
  'proposals/simd/simd_f32x4': [PASS, FAIL],
  'proposals/simd/simd_f32x4_arith': [PASS, FAIL],
  'proposals/simd/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.
  'proposals/simd/simd_splat' : [PASS, FAIL],
  'proposals/simd/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.
   'proposals/simd/*': [SKIP],
}],  # 'arch == riscv64

['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', {
  'proposals/simd/*': [SKIP],
}],  # no_simd_hardware == True

]