1 # Copyright 2011 the V8 project authors. All rights reserved.
2 # Redistribution and use in source and binary forms, with or without
3 # modification, are permitted provided that the following conditions are
6 # * Redistributions of source code must retain the above copyright
7 # notice, this list of conditions and the following disclaimer.
8 # * Redistributions in binary form must reproduce the above
9 # copyright notice, this list of conditions and the following
10 # disclaimer in the documentation and/or other materials provided
11 # with the distribution.
12 # * Neither the name of Google Inc. nor the names of its
13 # contributors may be used to endorse or promote products derived
14 # from this software without specific prior written permission.
16 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 ############################### BUGS ###################################
36 # Unicode canonicalization is not available with i18n turned off.
37 '15.5.4.9_CE': [['no_i18n', SKIP]],
39 ###################### NEEDS INVESTIGATION #######################
41 # Possibly same cause as S8.5_A2.1, below: floating-point tests.
42 'S15.8.2.16_A7': [PASS, FAIL_OK],
43 'S15.8.2.18_A7': [PASS, FAIL_OK],
44 'S15.8.2.7_A7': [PASS, FAIL_OK],
46 # This is an incompatibility between ES5 and V8 on enumerating
47 # shadowed elements in a for..in loop.
48 # https://code.google.com/p/v8/issues/detail?id=705
49 '12.6.4-2': [PASS, FAIL_OK],
51 ###################### MISSING ES6 FEATURES #######################
53 # Array.fill (currently requires --harmony-arrays)
54 'S22.1.3.6_T1': [FAIL],
56 # Array.find (currently requires --harmony-arrays)
57 'S22.1.2.3_T1': [FAIL],
58 'S22.1.2.3_T2': [FAIL],
59 'Array.prototype.find_empty-array-undefined': [FAIL],
60 'Array.prototype.find_length-property': [FAIL],
61 'Array.prototype.find_modify-after-start': [FAIL],
62 'Array.prototype.find_non-returning-predicate': [FAIL],
63 'Array.prototype.find_predicate-arguments': [FAIL],
64 'Array.prototype.find_push-after-start': [FAIL],
65 'Array.prototype.find_remove-after-start': [FAIL],
66 'Array.prototype.find_return-found-value': [FAIL],
67 'Array.prototype.find_skip-empty': [FAIL],
68 'Array.prototype.find_this-defined': [FAIL],
69 'Array.prototype.find_this-is-object': [FAIL],
70 'Array.prototype.find_this-undefined': [FAIL],
73 'S22.1.2.1_T1': [FAIL],
74 'S22.1.2.1_T2': [FAIL],
77 'Array.prototype.find_callable-predicate': [FAIL],
79 ######################## OBSOLETED BY ES6 ###########################
81 # ES6 allows duplicate properties
82 '11.1.5-4-4-a-1-s': [FAIL],
83 '11.1.5_4-4-b-1': [FAIL],
84 '11.1.5_4-4-b-2': [FAIL],
85 '11.1.5_4-4-c-1': [FAIL],
86 '11.1.5_4-4-c-2': [FAIL],
87 '11.1.5_4-4-d-1': [FAIL],
88 '11.1.5_4-4-d-2': [FAIL],
89 '11.1.5_4-4-d-3': [FAIL],
90 '11.1.5_4-4-d-4': [FAIL],
92 # ES6 does ToObject for Object.prototype.getOwnPropertyNames
94 '15.2.3.4-1-4': [FAIL],
95 '15.2.3.4-1-5': [FAIL],
97 # ES6 allows block-local functions.
105 'Sbp_A5_T1': [PASS], # Test is broken (strict reference to unbound variable)
108 ######################## NEEDS INVESTIGATION ###########################
110 # These test failures are specific to the intl402 suite and need investigation
111 # to be either marked as bugs with issues filed for them or as deliberate
112 # incompatibilities if the test cases turn out to be broken or ambiguous.
117 '10.1.1_19_c': [PASS, FAIL, NO_VARIANTS],
118 '10.1.2.1_4': [FAIL],
119 '10.2.3_b': [PASS, FAIL],
121 '11.1.1_17': [PASS, FAIL],
122 '11.1.1_19': [PASS, FAIL],
123 '11.1.1_20_c': [FAIL],
125 '11.1.2.1_4': [FAIL],
126 '11.3.2_FN_2': [PASS, FAIL],
127 '11.3.2_TRF': [PASS, FAIL],
130 '12.1.2.1_4': [FAIL],
131 '12.3.2_FDT_7_a_iv': [FAIL],
134 '15.5.4.9_3': [PASS, FAIL],
136 ##################### DELIBERATE INCOMPATIBILITIES #####################
138 'S15.8.2.8_A6': [PASS, FAIL_OK], # Math.exp (less precise with --fast-math)
140 # Linux for ia32 (and therefore simulators) default to extended 80 bit
141 # floating point formats, so these tests checking 64-bit FP precision fail.
142 # The other platforms/arch's pass these tests.
143 # We follow the other major JS engines by keeping this default.
144 'S8.5_A2.1': [PASS, FAIL_OK],
145 'S8.5_A2.2': [PASS, FAIL_OK],
147 ############################ INVALID TESTS #############################
149 # The reference value calculated by Test262 is incorrect if you run these
150 # tests in PST/PDT between first Sunday in March and first Sunday in April.
151 # The DST switch was moved in 2007 whereas Test262 bases the reference value
152 # on 2000. Test262 Bug: https://bugs.ecmascript.org/show_bug.cgi?id=293
153 'S15.9.3.1_A5_T1': [PASS, FAIL_OK],
154 'S15.9.3.1_A5_T2': [PASS, FAIL_OK],
155 'S15.9.3.1_A5_T3': [PASS, FAIL_OK],
156 'S15.9.3.1_A5_T4': [PASS, FAIL_OK],
157 'S15.9.3.1_A5_T5': [PASS, FAIL_OK],
158 'S15.9.3.1_A5_T6': [PASS, FAIL_OK],
160 # Test makes unjustified assumptions about the number of calls to SortCompare.
161 # Test262 Bug: https://bugs.ecmascript.org/show_bug.cgi?id=596
162 'bug_596_1': [PASS, FAIL_OK],
164 # Tests do not return boolean.
165 '15.2.3.14-1-1': [PASS, FAIL_OK],
166 '15.2.3.14-1-2': [PASS, FAIL_OK],
167 '15.2.3.14-1-3': [PASS, FAIL_OK],
169 # String.prototype.contains renamed to 'S.p.includes'
170 'String.prototype.contains_FailBadLocation' : [FAIL_OK],
171 'String.prototype.contains_FailLocation' : [FAIL_OK],
172 'String.prototype.contains_FailMissingLetter' : [FAIL_OK],
173 'String.prototype.contains_lengthProp' : [FAIL_OK],
174 'String.prototype.contains_Success' : [FAIL_OK],
175 'String.prototype.contains_SuccessNoLocation' : [FAIL_OK],
178 ############################ SKIPPED TESTS #############################
180 # These tests take a looong time to run in debug mode.
181 'S15.1.3.1_A2.5_T1': [PASS, ['mode == debug', SKIP]],
182 'S15.1.3.2_A2.5_T1': [PASS, ['mode == debug', SKIP]],
185 ['system == macos', {
186 '11.3.2_TRP': [FAIL],
187 '9.2.5_11_g_ii_2': [FAIL],
188 }], # system == macos
190 ['arch == arm or arch == mipsel or arch == mips or arch == arm64 or arch == mips64el', {
192 # TODO(mstarzinger): Causes stack overflow on simulators due to eager
193 # compilation of parenthesized function literals. Needs investigation.
194 'S13.2.1_A1_T1': [SKIP],
196 # BUG(3251225): Tests that timeout with --nocrankshaft.
197 'S15.1.3.1_A2.4_T1': [SKIP],
198 'S15.1.3.1_A2.5_T1': [SKIP],
199 'S15.1.3.2_A2.4_T1': [SKIP],
200 'S15.1.3.2_A2.5_T1': [SKIP],
201 'S15.1.3.3_A2.3_T1': [SKIP],
202 'S15.1.3.4_A2.3_T1': [SKIP],
203 }], # 'arch == arm or arch == mipsel or arch == mips or arch == arm64'