Revision f230a1cf deps/v8/test/mozilla/mozilla.status

View differences:

deps/v8/test/mozilla/mozilla.status
42 42
# debugging.
43 43
# --------------------------------------------------------------------
44 44

  
45
prefix mozilla
46
def FAIL_OK = FAIL, OKAY
45
[
46
[ALWAYS, {
47
  ##################### NEEDS INVESTIGATION ##############
48

  
49
  # BUG(2893): These tests started to fail after i18n support was turned on.
50
  # Need to investigate why.
51
  'ecma_3/Number/15.7.4.3-02': [PASS, FAIL],
52
  'ecma_3/Date/15.9.5.5-02': [PASS, FAIL],
53

  
54
  ##################### SKIPPED TESTS #####################
55

  
56
  # This test checks that we behave properly in an out-of-memory
57
  # situation.  The test fails in V8 with an exception and takes a long
58
  # time to do so.
59
  'js1_5/Regress/regress-271716-n': [SKIP],
60

  
61
  # BUG(960): This test has an insane amount of output when it times out,
62
  # messing up ability to see other failures on the waterfall.
63
  'js1_5/extensions/regress-342960': [SKIP],
64

  
65
  # This test uses a unitialized variable. A Bug has been filed:
66
  # https://bugzilla.mozilla.org/show_bug.cgi?id=575575
67
  'js1_5/Array/regress-465980-02': [SKIP],
68

  
69
  # These tests are simply wrong (i.e., they do not test what they intend
70
  # to test).
71
  # In particular, these two compare numbers to NaN with != in the current
72
  # version of the Mozilla tests. This is *fixed* in a later version.
73
  # The tests should be re-enabled when switching to a new version.
74
  'ecma_3/Date/15.9.3.2-1': [SKIP],
75
  'js1_2/function/Number': [SKIP],
76

  
77
  # TODO(2018): Temporarily allow timeout in debug mode.
78
  'js1_5/GC/regress-203278-2': [PASS, ['mode == debug', TIMEOUT, FAIL]],
79

  
80
  ##################### SLOW TESTS #####################
81

  
82
  # This takes a long time to run (~100 seconds). It should only be run
83
  # by the really patient.
84
  'js1_5/GC/regress-324278': [SLOW],
85

  
86
  # This takes a long time to run because our indexOf operation is
87
  # pretty slow - it causes a lot of GCs; see issue
88
  # #926379. We could consider marking this SKIP because it takes a
89
  # while to run to completion.
90
  'js1_5/GC/regress-338653': [SLOW],
91

  
92
  # This test is designed to run until it runs out of memory. This takes
93
  # a very long time because it builds strings character by character
94
  # and compiles a lot of regular expressions. We could consider marking
95
  # this SKIP because it takes a while to run to completion.
96
  'js1_5/GC/regress-346794': [SLOW],
97

  
98
  # Runs out of memory while trying to build huge string of 'x'
99
  # characters. This takes a long time to run (~32 seconds).
100
  'js1_5/GC/regress-348532': [SLOW],
101

  
102

  
103
  ##################### FLAKY TESTS #####################
104

  
105
  # These tests time out in debug mode but pass in product mode
106
  'js1_5/Regress/regress-360969-03': [PASS, ['mode == debug', TIMEOUT]],
107
  'js1_5/Regress/regress-360969-04': [PASS, ['mode == debug', TIMEOUT]],
108
  'js1_5/Regress/regress-360969-05': [PASS, ['mode == debug', TIMEOUT]],
109
  'js1_5/Regress/regress-360969-06': [PASS, ['mode == debug', TIMEOUT]],
110
  'js1_5/extensions/regress-365527': [PASS, ['mode == debug', TIMEOUT]],
47 111

  
112
  'js1_5/Regress/regress-280769-3': [PASS, ['mode == debug', FAIL]],
113
  'js1_5/Regress/regress-203278-1': [PASS, ['mode == debug', FAIL]],
114
  'js1_5/Regress/regress-244470': [PASS, ['mode == debug', FAIL]],
115
  'ecma_3/RegExp/regress-209067': [PASS, ['mode == debug', FAIL]],
116
  'js1_5/GC/regress-278725': [PASS, ['mode == debug', FAIL]],
117
  # http://b/issue?id=1206983
118
  'js1_5/Regress/regress-367561-03': [PASS, ['mode == debug', FAIL]],
119
  'ecma/Date/15.9.5.10-2': [PASS, FAIL, ['mode == debug', TIMEOUT]],
48 120

  
49
##################### SKIPPED TESTS #####################
50

  
51
# This test checks that we behave properly in an out-of-memory
52
# situation.  The test fails in V8 with an exception and takes a long
53
# time to do so.
54
js1_5/Regress/regress-271716-n: SKIP
55

  
56
# BUG(960): This test has an insane amount of output when it times out,
57
# messing up ability to see other failures on the waterfall.
58
js1_5/extensions/regress-342960: SKIP
59

  
60
# This test uses a unitialized variable. A Bug has been filed:
61
# https://bugzilla.mozilla.org/show_bug.cgi?id=575575
62
js1_5/Array/regress-465980-02: SKIP
63

  
64
# These tests are simply wrong (i.e., they do not test what they intend
65
# to test).
66
# In particular, these two compare numbers to NaN with != in the current
67
# version of the Mozilla tests. This is *fixed* in a later version.
68
# The tests should be re-enabled when switching to a new version.
69
ecma_3/Date/15.9.3.2-1: SKIP
70
js1_2/function/Number: SKIP
71

  
72
# TODO(2018): Temporarily allow timeout in debug mode.
73
js1_5/GC/regress-203278-2: PASS || (TIMEOUT || FAIL) if $mode == debug
74

  
75
##################### SLOW TESTS #####################
76

  
77
# This takes a long time to run (~100 seconds). It should only be run
78
# by the really patient.
79
js1_5/GC/regress-324278: SLOW
80

  
81
# This takes a long time to run because our indexOf operation is
82
# pretty slow - it causes a lot of GCs; see issue
83
# #926379. We could consider marking this SKIP because it takes a
84
# while to run to completion.
85
js1_5/GC/regress-338653: SLOW
86

  
87
# This test is designed to run until it runs out of memory. This takes
88
# a very long time because it builds strings character by character
89
# and compiles a lot of regular expressions. We could consider marking
90
# this SKIP because it takes a while to run to completion.
91
js1_5/GC/regress-346794: SLOW
92

  
93
# Runs out of memory while trying to build huge string of 'x'
94
# characters. This takes a long time to run (~32 seconds).
95
js1_5/GC/regress-348532: SLOW
121
  # These tests create two Date objects just after each other and
122
  # expects them to match.  Sometimes this happens on the border
123
  # between one second and the next.
124
  'ecma/Date/15.9.2.1': [PASS, FAIL],
125
  'ecma/Date/15.9.2.2-1': [PASS, FAIL],
126
  'ecma/Date/15.9.2.2-2': [PASS, FAIL],
127
  'ecma/Date/15.9.2.2-3': [PASS, FAIL],
128
  'ecma/Date/15.9.2.2-4': [PASS, FAIL],
129
  'ecma/Date/15.9.2.2-5': [PASS, FAIL],
130
  'ecma/Date/15.9.2.2-6': [PASS, FAIL],
96 131

  
132
  # 1026139: These date tests fail on arm and mips
133
  'ecma/Date/15.9.5.29-1': [PASS, ['arch == arm or arch == mipsel', FAIL]],
134
  'ecma/Date/15.9.5.28-1': [PASS, ['arch == arm or arch == mipsel', FAIL]],
97 135

  
98
##################### FLAKY TESTS #####################
136
  # 1050186: Arm/MIPS vm is broken; probably unrelated to dates
137
  'ecma/Array/15.4.4.5-3': [PASS, ['arch == arm or arch == mipsel', FAIL]],
138
  'ecma/Date/15.9.5.22-2': [PASS, ['arch == arm or arch == mipsel', FAIL]],
99 139

  
100
# These tests time out in debug mode but pass in product mode
101
js1_5/Regress/regress-360969-03: PASS || TIMEOUT if $mode == debug
102
js1_5/Regress/regress-360969-04: PASS || TIMEOUT if $mode == debug
103
js1_5/Regress/regress-360969-05: PASS || TIMEOUT if $mode == debug
104
js1_5/Regress/regress-360969-06: PASS || TIMEOUT if $mode == debug
105
js1_5/extensions/regress-365527: PASS || TIMEOUT if $mode == debug
140
  # Flaky test that fails due to what appears to be a bug in the test.
141
  # Occurs depending on current time
142
  'ecma/Date/15.9.5.8': [PASS, FAIL],
106 143

  
107
js1_5/Regress/regress-280769-3: PASS || FAIL if $mode == debug
108
js1_5/Regress/regress-203278-1: PASS || FAIL if $mode == debug
109
js1_5/Regress/regress-244470: PASS || FAIL if $mode == debug
110
ecma_3/RegExp/regress-209067: PASS || FAIL if $mode == debug
111
js1_5/GC/regress-278725: PASS || FAIL if $mode == debug
112
# http://b/issue?id=1206983
113
js1_5/Regress/regress-367561-03: PASS || FAIL if $mode == debug
114
ecma/Date/15.9.5.10-2: PASS || (FAIL || TIMEOUT if $mode == debug)
144
  # Severely brain-damaged test. Access to local variables must not
145
  # be more than 2.5 times faster than access to global variables? WTF?
146
  'js1_5/Regress/regress-169559': [PASS, FAIL],
115 147

  
116
# These tests create two Date objects just after each other and
117
# expects them to match.  Sometimes this happens on the border
118
# between one second and the next.
119
ecma/Date/15.9.2.1: PASS || FAIL
120
ecma/Date/15.9.2.2-1: PASS || FAIL
121
ecma/Date/15.9.2.2-2: PASS || FAIL
122
ecma/Date/15.9.2.2-3: PASS || FAIL
123
ecma/Date/15.9.2.2-4: PASS || FAIL
124
ecma/Date/15.9.2.2-5: PASS || FAIL
125
ecma/Date/15.9.2.2-6: PASS || FAIL
126 148

  
127
# 1026139: These date tests fail on arm and mips
128
ecma/Date/15.9.5.29-1: PASS || FAIL if ($arch == arm || $arch == mipsel)
129
ecma/Date/15.9.5.28-1: PASS || FAIL if ($arch == arm || $arch == mipsel)
149
  # Test that rely on specific timezone (not working in Denmark).
150
  'js1_5/Regress/regress-58116': [PASS, FAIL],
130 151

  
131
# 1050186: Arm/MIPS vm is broken; probably unrelated to dates
132
ecma/Array/15.4.4.5-3: PASS || FAIL if ($arch == arm || $arch == mipsel)
133
ecma/Date/15.9.5.22-2: PASS || FAIL if ($arch == arm || $arch == mipsel)
134 152

  
135
# Flaky test that fails due to what appears to be a bug in the test.
136
# Occurs depending on current time
137
ecma/Date/15.9.5.8: PASS || FAIL
153
  # Flaky random() test. Tests the distribution of calls to Math.random().
154
  'js1_5/Regress/regress-211590': [PASS, FAIL],
138 155

  
139
# Severely brain-damaged test. Access to local variables must not
140
# be more than 2.5 times faster than access to global variables? WTF?
141
js1_5/Regress/regress-169559: PASS || FAIL
142 156

  
157
  # Flaky tests; expect BigO-order computations to yield 1, but the code
158
  # cannot handle outliers. See bug #925864.
159
  'ecma_3/RegExp/regress-311414': [PASS, FAIL],
160
  'ecma_3/RegExp/regress-289669': [PASS, FAIL],
161
  'js1_5/String/regress-314890': [PASS, FAIL],
162
  'js1_5/String/regress-56940-01': [PASS, FAIL],
163
  'js1_5/String/regress-56940-02': [PASS, FAIL],
164
  'js1_5/String/regress-157334-01': [PASS, FAIL],
165
  'js1_5/String/regress-322772': [PASS, FAIL],
166
  'js1_5/Array/regress-99120-01': [PASS, FAIL],
167
  'js1_5/Array/regress-99120-02': [PASS, FAIL],
168
  'js1_5/Regress/regress-347306-01': [PASS, FAIL],
169
  'js1_5/Regress/regress-416628': [PASS, FAIL, ['mode == debug', TIMEOUT]],
143 170

  
144
# Test that rely on specific timezone (not working in Denmark).
145
js1_5/Regress/regress-58116: PASS || FAIL
146 171

  
172
  # The following two tests assume that daylight savings time starts first
173
  # Sunday in April. This is not true when executing the tests outside
174
  # California! In Denmark the adjustment starts one week earlier.
175
  # Tests based on shell that use dates in this gap are flaky.
176
  'ecma/Date/15.9.5.10-1': [PASS, FAIL],
177
  'ecma/Date/15.9.5.12-1': [PASS, FAIL],
178
  'ecma/Date/15.9.5.14': [PASS, FAIL],
179
  'ecma/Date/15.9.5.34-1': [PASS, FAIL],
147 180

  
148
# Flaky random() test. Tests the distribution of calls to Math.random().
149
js1_5/Regress/regress-211590: PASS || FAIL
150 181

  
182
  # These tests sometimes pass (in particular on Windows). They build up
183
  # a lot of stuff on the stack, which normally causes a stack overflow,
184
  # but sometimes it makes it through?
185
  'js1_5/Regress/regress-98901': [PASS, FAIL],
151 186

  
152
# Flaky tests; expect BigO-order computations to yield 1, but the code
153
# cannot handle outliers. See bug #925864.
154
ecma_3/RegExp/regress-311414: PASS || FAIL
155
ecma_3/RegExp/regress-289669: PASS || FAIL
156
js1_5/String/regress-314890: PASS || FAIL
157
js1_5/String/regress-56940-01: PASS || FAIL
158
js1_5/String/regress-56940-02: PASS || FAIL
159
js1_5/String/regress-157334-01: PASS || FAIL
160
js1_5/String/regress-322772: PASS || FAIL
161
js1_5/Array/regress-99120-01: PASS || FAIL
162
js1_5/Array/regress-99120-02: PASS || FAIL
163
js1_5/Regress/regress-347306-01: PASS || FAIL
164
js1_5/Regress/regress-416628: PASS || FAIL || TIMEOUT if $mode == debug
165 187

  
188
  # Tests that sorting arrays of ints is less than 3 times as fast
189
  # as sorting arrays of strings.
190
  'js1_5/extensions/regress-371636': [PASS, FAIL, ['mode == debug', TIMEOUT]],
166 191

  
167
# The following two tests assume that daylight savings time starts first Sunday
168
# in April. This is not true when executing the tests outside California!
169
# In Denmark the adjustment starts one week earlier!.
170
# Tests based on shell that use dates in this gap are flaky.
171
ecma/Date/15.9.5.10-1: PASS || FAIL
172
ecma/Date/15.9.5.12-1: PASS || FAIL
173
ecma/Date/15.9.5.14: PASS || FAIL
174
ecma/Date/15.9.5.34-1: PASS || FAIL
175 192

  
193
  # Tests depend on GC timings. Inherently flaky.
194
  'js1_5/GC/regress-383269-01': [PASS, FAIL],
195
  'js1_5/GC/regress-383269-02': [PASS, FAIL],
196
  'js1_5/Regress/regress-404755': [PASS, FAIL],
176 197

  
177
# These tests sometimes pass (in particular on Windows). They build up
178
# a lot of stuff on the stack, which normally causes a stack overflow,
179
# but sometimes it makes it through?
180
js1_5/Regress/regress-98901: PASS || FAIL
181 198

  
199
  # Test that depends on timer resolution. Fails every now and then
200
  # if we're unlucky enough to get a context switch at a bad time.
201
  'js1_5/extensions/regress-363258': [PASS, FAIL],
182 202

  
183
# Tests that sorting arrays of ints is less than 3 times as fast
184
# as sorting arrays of strings.
185
js1_5/extensions/regress-371636: PASS || FAIL || TIMEOUT if $mode == debug
186 203

  
204
  # Test that assumes specific runtime for a regexp, flaky in debug mode.
205
  'ecma_3/RegExp/regress-85721': [PASS, ['mode == debug', FAIL]],
187 206

  
188
# Tests depend on GC timings. Inherently flaky.
189
js1_5/GC/regress-383269-01: PASS || FAIL
190
js1_5/GC/regress-383269-02: PASS || FAIL
191
js1_5/Regress/regress-404755: PASS || FAIL
192 207

  
208
  # Test that assumes specific execution time, flaky in debug mode.
209
  'js1_5/Array/regress-101964': [PASS, ['mode == debug', FAIL]],
193 210

  
194
# Test that depends on timer resolution. Fails every now and then
195
# if we're unlucky enough to get a context switch at a bad time.
196
js1_5/extensions/regress-363258: PASS || FAIL
197 211

  
212
  ##################### INCOMPATIBLE TESTS #####################
198 213

  
199
# Test that assumes specific runtime for a regexp, flaky in debug mode.
200
ecma_3/RegExp/regress-85721: PASS || FAIL if $mode == debug
214
  # This section is for tests that fail in both V8 and JSC.  Thus they
215
  # have been determined to be incompatible between Mozilla and V8/JSC.
201 216

  
217
  # toPrecision argument restricted to range 1..21 in JSC/V8 and ECMA-262
218
  'js1_5/Regress/regress-452346': [FAIL_OK],
202 219

  
203
# Test that assumes specific execution time, flaky in debug mode.
204
js1_5/Array/regress-101964: PASS || FAIL if $mode == debug
220
  # Fail because it calls builtins as functions and do not expect the
221
  # builtin to have undefined as the receiver.
222
  'ecma/String/15.5.4.6-2': [FAIL_OK],
205 223

  
224
  # Fail because it expects String.prototype.split to distinguish whether
225
  # separator was undefined or not passed at all.
226
  'ecma/String/15.5.4.8-2': [FAIL_OK],
206 227

  
207
##################### INCOMPATIBLE TESTS #####################
228
  # Fail because of toLowerCase and toUpperCase conversion.
229
  'ecma/String/15.5.4.11-2': [FAIL_OK],
230
  'ecma/String/15.5.4.11-5': [FAIL_OK],
231
  'ecma/String/15.5.4.12-1': [FAIL_OK],
232
  'ecma/String/15.5.4.12-4': [FAIL_OK],
208 233

  
209
# This section is for tests that fail in both V8 and JSC.  Thus they
210
# have been determined to be incompatible between Mozilla and V8/JSC.
234
  # This test uses an older version of the unicode standard that fails
235
  # us because we correctly convert the armenian small ligature ech-yiwn
236
  # to the two upper-case characters ECH and YIWN, whereas the older
237
  # unicode version converts it to itself.
238
  'ecma/String/15.5.4.12-5': [FAIL_OK],
211 239

  
212
# toPrecision argument restricted to range 1..21 in JSC/V8 and ECMA-262
213
js1_5/Regress/regress-452346: FAIL_OK
240
  # Creates a linked list of arrays until we run out of memory or timeout.
241
  'js1_5/Regress/regress-312588': [SKIP],
214 242

  
215
# Fail because it calls builtins as functions and do not expect the
216
# builtin to have undefined as the receiver.
217
ecma/String/15.5.4.6-2: FAIL_OK
218 243

  
219
# Fail because it expects String.prototype.split to distinguish whether
220
# separator was undefined or not passed at all.
221
ecma/String/15.5.4.8-2: FAIL_OK
244
  # Runs out of memory because it compiles huge functions.
245
  'js1_5/Function/regress-338001': [FAIL_OK],
246
  'js1_5/Function/regress-338121-01': [FAIL_OK],
247
  'js1_5/Function/regress-338121-02': [FAIL_OK],
248
  'js1_5/Function/regress-338121-03': [FAIL_OK],
222 249

  
223
# Fail because of toLowerCase and toUpperCase conversion.
224
ecma/String/15.5.4.11-2: FAIL_OK
225
ecma/String/15.5.4.11-5: FAIL_OK
226
ecma/String/15.5.4.12-1: FAIL_OK
227
ecma/String/15.5.4.12-4: FAIL_OK
250
  # Expectes 'prototype' property of functions to be enumerable.
251
  'js1_5/Function/10.1.6-01': [FAIL_OK],
228 252

  
229
# This test uses an older version of the unicode standard that fails
230
# us because we correctly convert the armenian small ligature ech-yiwn
231
# to the two upper-case characters ECH and YIWN, whereas the older
232
# unicode version converts it to itself.
233
ecma/String/15.5.4.12-5: FAIL_OK
253
  #:=== RegExp:===
254
  # We don't match the syntax error message of Mozilla for invalid
255
  # RegExp flags.
256
  'ecma_3/RegExp/15.10.4.1-6': [FAIL_OK],
234 257

  
235
# Creates a linked list of arrays until we run out of memory or timeout.
236
js1_5/Regress/regress-312588: SKIP
258
  # PCRE doesn't allow subpattern nesting deeper than 200, this tests
259
  # depth 500.  JSC detects the case, and return null from the match,
260
  # and passes this test (the test doesn't check for a correct return
261
  # value).
262
  'ecma_3/RegExp/regress-119909': [PASS, FAIL_OK],
237 263

  
238 264

  
239
# Runs out of memory because it compiles huge functions.
240
js1_5/Function/regress-338001: FAIL_OK
241
js1_5/Function/regress-338121-01: FAIL_OK
242
js1_5/Function/regress-338121-02: FAIL_OK
243
js1_5/Function/regress-338121-03: FAIL_OK
265
  # Difference in the way capturing subpatterns work.  In JS, when the
266
  # 'minimum repeat count' is reached, the empty string must not match.
267
  # In this case, we are similar but not identical to JSC.  Hard to
268
  # support the JS behavior with PCRE, so maybe emulate JSC?
269
  'ecma_3/RegExp/regress-209919': [PASS, FAIL_OK],
270
  'js1_5/extensions/regress-459606': [PASS, FAIL_OK],
244 271

  
245
# Expectes 'prototype' property of functions to be enumerable.
246
js1_5/Function/10.1.6-01: FAIL_OK
247 272

  
248
#:=== RegExp:===
249
# We don't match the syntax error message of Mozilla for invalid
250
# RegExp flags.
251
ecma_3/RegExp/15.10.4.1-6: FAIL_OK
273
  # PCRE's match limit is reached.  SpiderMonkey hangs on the first one,
274
  # JSC returns true somehow.  Maybe they up the match limit?  There is
275
  # an open V8 bug 676063 about this.
276
  'ecma_3/RegExp/regress-330684': [TIMEOUT],
252 277

  
253
# PCRE doesn't allow subpattern nesting deeper than 200, this tests
254
# depth 500.  JSC detects the case, and return null from the match,
255
# and passes this test (the test doesn't check for a correct return
256
# value).
257
ecma_3/RegExp/regress-119909: PASS || FAIL_OK
258 278

  
279
  # This test contains a regexp that runs exponentially long.  Spidermonkey
280
  # standalone will hang, though apparently inside Firefox it will trigger a
281
  # long-running-script timeout.  JSCRE passes by hitting the matchLimit and
282
  # just pretending that an exhaustive search found no match.
283
  'ecma_3/RegExp/regress-307456': [PASS, TIMEOUT],
259 284

  
260
# Difference in the way capturing subpatterns work.  In JS, when the
261
# 'minimum repeat count' is reached, the empty string must not match.
262
# In this case, we are similar but not identical to JSC.  Hard to
263
# support the JS behavior with PCRE, so maybe emulate JSC?
264
ecma_3/RegExp/regress-209919: PASS || FAIL_OK
265
js1_5/extensions/regress-459606: PASS || FAIL_OK
266 285

  
286
  # We do not detect overflow in bounds for back references and {}
287
  # quantifiers.  Might fix by parsing numbers differently?
288
  'js1_5/Regress/regress-230216-2': [FAIL_OK],
267 289

  
268
# PCRE's match limit is reached.  SpiderMonkey hangs on the first one,
269
# JSC returns true somehow.  Maybe they up the match limit?  There is
270
# an open V8 bug 676063 about this.
271
ecma_3/RegExp/regress-330684: TIMEOUT
272 290

  
291
  # Regexp too long for PCRE.
292
  'js1_5/Regress/regress-280769': [PASS, FAIL],
293
  'js1_5/Regress/regress-280769-1': [PASS, FAIL],
294
  'js1_5/Regress/regress-280769-2': [PASS, FAIL],
295
  'js1_5/Regress/regress-280769-4': [PASS, FAIL],
296
  'js1_5/Regress/regress-280769-5': [PASS, FAIL],
273 297

  
274
# This test contains a regexp that runs exponentially long.  Spidermonkey
275
# standalone will hang, though apparently inside Firefox it will trigger a
276
# long-running-script timeout.  JSCRE passes by hitting the matchLimit and
277
# just pretending that an exhaustive search found no match.
278
ecma_3/RegExp/regress-307456: PASS || TIMEOUT
279 298

  
299
  # We do not support static RegExp.multiline - should we?.
300
  'js1_2/regexp/RegExp_multiline': [FAIL_OK],
301
  'js1_2/regexp/RegExp_multiline_as_array': [FAIL_OK],
302
  'js1_2/regexp/beginLine': [FAIL_OK],
303
  'js1_2/regexp/endLine': [FAIL_OK],
280 304

  
281
# We do not detect overflow in bounds for back references and {}
282
# quantifiers.  Might fix by parsing numbers differently?
283
js1_5/Regress/regress-230216-2: FAIL_OK
305
  # We no longer let calls to test and exec with no argument implicitly
306
  # use the previous input.
307
  'js1_2/regexp/RegExp_input': [FAIL_OK],
308
  'js1_2/regexp/RegExp_input_as_array': [FAIL_OK],
284 309

  
285 310

  
286
# Regexp too long for PCRE.
287
js1_5/Regress/regress-280769: PASS || FAIL
288
js1_5/Regress/regress-280769-1: PASS || FAIL
289
js1_5/Regress/regress-280769-2: PASS || FAIL
290
js1_5/Regress/regress-280769-4: PASS || FAIL
291
js1_5/Regress/regress-280769-5: PASS || FAIL
311
  # To be compatible with safari typeof a regexp yields 'function';
312
  # in firefox it yields 'object'.
313
  'js1_2/function/regexparg-1': [FAIL_OK],
292 314

  
293 315

  
294
# We do not support static RegExp.multiline - should we?.
295
js1_2/regexp/RegExp_multiline: FAIL_OK
296
js1_2/regexp/RegExp_multiline_as_array: FAIL_OK
297
js1_2/regexp/beginLine: FAIL_OK
298
js1_2/regexp/endLine: FAIL_OK
316
  # Date trouble?
317
  'js1_5/Date/regress-301738-02': [FAIL_OK],
299 318

  
300
# We no longer let calls to test and exec with no argument implicitly
301
# use the previous input.
302
js1_2/regexp/RegExp_input: FAIL_OK
303
js1_2/regexp/RegExp_input_as_array: FAIL_OK
304 319

  
320
  # This test fails for all browsers on in the CET timezone.
321
  'ecma/Date/15.9.5.35-1': [PASS, FAIL_OK],
305 322

  
306
# To be compatible with safari typeof a regexp yields 'function';
307
# in firefox it yields 'object'.
308
js1_2/function/regexparg-1: FAIL_OK
309 323

  
324
  # Spidermonkey allows stuff in parenthesis directly after the minutes
325
  # in a date.  JSC does not, so we don't either.
326
  'js1_5/Date/regress-309925-02': [FAIL_OK],
310 327

  
311
# Date trouble?
312
js1_5/Date/regress-301738-02: FAIL_OK
313 328

  
329
  # Print string after deleting array element?
330
  'js1_5/Expressions/regress-96526-delelem': [FAIL_OK],
314 331

  
315
# This test fails for all browsers on in the CET timezone.
316
ecma/Date/15.9.5.35-1: PASS || FAIL_OK
317 332

  
333
  # Stack overflows should be InternalError: too much recursion?
334
  'js1_5/Regress/regress-234389': [FAIL_OK],
318 335

  
319
# Spidermonkey allows stuff in parenthesis directly after the minutes
320
# in a date.  JSC does not, so we don't either.
321
js1_5/Date/regress-309925-02: FAIL_OK
322 336

  
337
  # This may very well be a bogus test. I'm not sure yet.
338
  'js1_5/Regress/regress-320119': [FAIL_OK],
323 339

  
324
# Print string after deleting array element?
325
js1_5/Expressions/regress-96526-delelem: FAIL_OK
326 340

  
341
  # No support for toSource().
342
  'js1_5/Regress/regress-248444': [FAIL_OK],
343
  'js1_5/Regress/regress-313967-01': [FAIL_OK],
344
  'js1_5/Regress/regress-313967-02': [FAIL_OK],
327 345

  
328
# Stack overflows should be InternalError: too much recursion?
329
js1_5/Regress/regress-234389: FAIL_OK
346
  # This fails because we don't have stack space for Function.prototype.apply
347
  # with very large numbers of arguments.  The test uses 2^24 arguments.
348
  'js1_5/Array/regress-350256-03': [FAIL_OK],
330 349

  
331 350

  
332
# This may very well be a bogus test. I'm not sure yet.
333
js1_5/Regress/regress-320119: FAIL_OK
351
  # Extra arguments not handled properly in String.prototype.match
352
  'js1_5/Regress/regress-179524': [FAIL_OK],
334 353

  
335 354

  
336
# No support for toSource().
337
js1_5/Regress/regress-248444: FAIL_OK
338
js1_5/Regress/regress-313967-01: FAIL_OK
339
js1_5/Regress/regress-313967-02: FAIL_OK
355
  # Uncategorized failures. Please help categorize (or fix) these failures.
356
  'js1_5/Regress/regress-172699': [FAIL_OK],
340 357

  
341
# This fails because we don't have stack space for Function.prototype.apply
342
# with very large numbers of arguments.  The test uses 2^24 arguments.
343
js1_5/Array/regress-350256-03: FAIL_OK
344 358

  
359
  # Assumes that the prototype of a function is enumerable. Non-ECMA,
360
  # see section 15.3.3.1, page 86.
361
  'ecma/GlobalObject/15.1.2.2-1': [FAIL_OK],
362
  'ecma/GlobalObject/15.1.2.3-1': [FAIL_OK],
363
  'ecma/GlobalObject/15.1.2.4': [FAIL_OK],
364
  'ecma/GlobalObject/15.1.2.5-1': [FAIL_OK],
365
  'ecma/GlobalObject/15.1.2.6': [FAIL_OK],
366
  'ecma/GlobalObject/15.1.2.7': [FAIL_OK],
345 367

  
346
# Extra arguments not handled properly in String.prototype.match
347
js1_5/Regress/regress-179524: FAIL_OK
348 368

  
369
  # Leading zero no longer signal octal numbers (ECMA-262 Annex E 15.1.2.2).
370
  'ecma/GlobalObject/15.1.2.2-2': [FAIL_OK],
349 371

  
350
# Uncategorized failures. Please help categorize (or fix) these failures.
351
js1_5/Regress/regress-172699: FAIL_OK
352 372

  
373
  # Tests that rely on specific details of function decompilation or
374
  # print strings for errors. Non-ECMA behavior.
375
  'js1_2/function/tostring-2': [FAIL_OK],
376
  'js1_2/Objects/toString-001': [FAIL_OK],
377
  'js1_5/LexicalConventions/regress-469940': [FAIL_OK],
378
  'js1_5/Exceptions/regress-332472': [FAIL_OK],
379
  'js1_5/Regress/regress-173067': [FAIL_OK],
380
  'js1_5/Regress/regress-355556': [FAIL_OK],
381
  'js1_5/Regress/regress-328664': [FAIL_OK],
382
  'js1_5/Regress/regress-252892': [FAIL_OK],
383
  'js1_5/Regress/regress-352208': [FAIL_OK],
384
  'ecma_3/Array/15.4.5.1-01': [FAIL_OK],
385
  'ecma_3/Array/regress-387501': [FAIL_OK],
386
  'ecma_3/LexicalConventions/7.9.1': [FAIL_OK],
387
  'ecma_3/RegExp/regress-375711': [FAIL_OK],
388
  'ecma_3/Unicode/regress-352044-01': [FAIL_OK],
389
  'ecma_3/extensions/regress-274152': [FAIL_OK],
390
  'js1_5/Regress/regress-372364': [FAIL_OK],
391
  'js1_5/Regress/regress-420919': [FAIL_OK],
392
  'js1_5/Regress/regress-422348': [FAIL_OK],
393
  'js1_5/Regress/regress-410852': [FAIL_OK],
394
  'ecma_3/RegExp/regress-375715-04': [FAIL_OK],
395
  'js1_5/decompilation/regress-456964-01': [FAIL_OK],
396
  'js1_5/decompilation/regress-437288-02': [FAIL_OK],
397
  'js1_5/decompilation/regress-457824': [FAIL_OK],
398
  'js1_5/decompilation/regress-460116-01': [FAIL_OK],
399
  'js1_5/decompilation/regress-460116-02': [FAIL_OK],
400
  'js1_5/decompilation/regress-460501': [FAIL_OK],
401
  'js1_5/decompilation/regress-460116-03': [FAIL_OK],
402
  'js1_5/decompilation/regress-461110': [FAIL_OK],
353 403

  
354
# Assumes that the prototype of a function is enumerable. Non-ECMA,
355
# see section 15.3.3.1, page 86.
356
ecma/GlobalObject/15.1.2.2-1: FAIL_OK
357
ecma/GlobalObject/15.1.2.3-1: FAIL_OK
358
ecma/GlobalObject/15.1.2.4: FAIL_OK
359
ecma/GlobalObject/15.1.2.5-1: FAIL_OK
360
ecma/GlobalObject/15.1.2.6: FAIL_OK
361
ecma/GlobalObject/15.1.2.7: FAIL_OK
362 404

  
405
  # Tests that use uneval.  Non-ECMA.
406
  'js1_5/GC/regress-418128': [FAIL_OK],
407
  'js1_5/extensions/regress-465276': [FAIL_OK],
408
  'js1_5/Error/regress-465377': [FAIL_OK],
363 409

  
364
# Leading zero no longer signal octal numbers (ECMA-262 Annex E 15.1.2.2).
365
ecma/GlobalObject/15.1.2.2-2: FAIL_OK
410
  # Tests that use the watch method.  Non-ECMA.
411
  'js1_5/extensions/regress-435345-01': [FAIL_OK],
412
  'js1_5/extensions/regress-455413': [FAIL_OK],
366 413

  
367 414

  
368
# Tests that rely on specific details of function decompilation or
369
# print strings for errors. Non-ECMA behavior.
370
js1_2/function/tostring-2: FAIL_OK
371
js1_2/Objects/toString-001: FAIL_OK
372
js1_5/LexicalConventions/regress-469940: FAIL_OK
373
js1_5/Exceptions/regress-332472: FAIL_OK
374
js1_5/Regress/regress-173067: FAIL_OK
375
js1_5/Regress/regress-355556: FAIL_OK
376
js1_5/Regress/regress-328664: FAIL_OK
377
js1_5/Regress/regress-252892: FAIL_OK
378
js1_5/Regress/regress-352208: FAIL_OK
379
ecma_3/Array/15.4.5.1-01: FAIL_OK
380
ecma_3/Array/regress-387501: FAIL_OK
381
ecma_3/LexicalConventions/7.9.1: FAIL_OK
382
ecma_3/RegExp/regress-375711: FAIL_OK
383
ecma_3/Unicode/regress-352044-01: FAIL_OK
384
ecma_3/extensions/regress-274152: FAIL_OK
385
js1_5/Regress/regress-372364: FAIL_OK
386
js1_5/Regress/regress-420919: FAIL_OK
387
js1_5/Regress/regress-422348: FAIL_OK
388
js1_5/Regress/regress-410852: FAIL_OK
389
ecma_3/RegExp/regress-375715-04: FAIL_OK
390
js1_5/decompilation/regress-456964-01: FAIL_OK
391
js1_5/decompilation/regress-437288-02: FAIL_OK
392
js1_5/decompilation/regress-457824: FAIL_OK
393
js1_5/decompilation/regress-460116-01: FAIL_OK
394
js1_5/decompilation/regress-460116-02: FAIL_OK
395
js1_5/decompilation/regress-460501: FAIL_OK
396
js1_5/decompilation/regress-460116-03: FAIL_OK
397
js1_5/decompilation/regress-461110: FAIL_OK
415
  # Uses Mozilla-specific QName, XML, XMLList and Iterator.
416
  'js1_5/Regress/regress-407323': [FAIL_OK],
417
  'js1_5/Regress/regress-407957': [FAIL_OK],
398 418

  
399 419

  
400
# Tests that use uneval.  Non-ECMA.
401
js1_5/GC/regress-418128: FAIL_OK
402
js1_5/extensions/regress-465276: FAIL_OK
403
js1_5/Error/regress-465377: FAIL_OK
420
  # Relies on JavaScript 1.2 / 1.3 deprecated features.
421
  'js1_2/function/String': [FAIL_OK],
422
  'js1_2/operator/equality': [FAIL_OK],
423
  'js1_2/version120/boolean-001': [FAIL_OK],
424
  'js1_2/String/concat': [FAIL_OK],
425
  'js1_2/function/Function_object': [FAIL_OK],
426
  'js1_2/function/tostring-1': [FAIL_OK],
427
  'js1_2/version120/regress-99663': [FAIL_OK],
428
  'js1_2/regexp/RegExp_lastIndex': [FAIL_OK],
429
  'js1_2/regexp/string_split': [FAIL_OK],
404 430

  
405
# Tests that use the watch method.  Non-ECMA.
406
js1_5/extensions/regress-435345-01: FAIL_OK
407
js1_5/extensions/regress-455413: FAIL_OK
408 431

  
432
  # RegExps are not callable.
433
  'js1_2/regexp/simple_form': [FAIL_OK],
434
  'js1_2/regexp/regress-6359': [FAIL_OK],
435
  'js1_2/regexp/regress-9141': [FAIL_OK],
436
  'js1_5/Regress/regress-224956': [FAIL_OK],
437
  'js1_5/Regress/regress-325925': [FAIL_OK],
438
  'ecma_2/RegExp/regress-001': [FAIL_OK],
409 439

  
410
# Uses Mozilla-specific QName, XML, XMLList and Iterator.
411
js1_5/Regress/regress-407323: FAIL_OK
412
js1_5/Regress/regress-407957: FAIL_OK
440
  # We do not check for bad surrogate pairs when quoting strings.
441
  'js1_5/Regress/regress-315974': [FAIL_OK],
413 442

  
414 443

  
415
# Relies on JavaScript 1.2 / 1.3 deprecated features.
416
js1_2/function/String: FAIL_OK
417
js1_2/operator/equality: FAIL_OK
418
js1_2/version120/boolean-001: FAIL_OK
419
js1_2/String/concat: FAIL_OK
420
js1_2/function/Function_object: FAIL_OK
421
js1_2/function/tostring-1: FAIL_OK
422
js1_2/version120/regress-99663: FAIL_OK
423
js1_2/regexp/RegExp_lastIndex: FAIL_OK
424
js1_2/regexp/string_split: FAIL_OK
444
  # Use unsupported "watch".
445
  'js1_5/Regress/regress-213482': [FAIL_OK],
446
  'js1_5/Regress/regress-240577': [FAIL_OK],
447
  'js1_5/Regress/regress-355344': [FAIL_OK],
448
  'js1_5/Object/regress-362872-01': [FAIL_OK],
449
  'js1_5/Object/regress-362872-02': [FAIL_OK],
450
  'js1_5/Regress/regress-361467': [FAIL_OK],
451
  'js1_5/Regress/regress-385393-06': [FAIL_OK],
452
  'js1_5/Regress/regress-506567': [FAIL_OK],
425 453

  
426 454

  
427
# RegExps are not callable.
428
js1_2/regexp/simple_form: FAIL_OK
429
js1_2/regexp/regress-6359: FAIL_OK
430
js1_2/regexp/regress-9141: FAIL_OK
431
js1_5/Regress/regress-224956: FAIL_OK
432
js1_5/Regress/regress-325925: FAIL_OK
433
ecma_2/RegExp/regress-001: FAIL_OK
455
  # Use special Mozilla getter/setter syntax
456
  'js1_5/Regress/regress-354924': [FAIL_OK],
457
  'js1_5/Regress/regress-355341': [FAIL_OK],
458
  'js1_5/GC/regress-316885-01': [FAIL_OK],
459
  'js1_5/GetSet/getset-002': [FAIL_OK],
460
  'js1_5/GetSet/regress-353264': [FAIL_OK],
461
  'js1_5/Regress/regress-361617': [FAIL_OK],
462
  'js1_5/Regress/regress-362583': [FAIL_OK],
463
  'js1_5/extensions/regress-356378': [FAIL_OK],
464
  'js1_5/extensions/regress-452178': [FAIL_OK],
434 465

  
435
# We do not check for bad surrogate pairs when quoting strings.
436
js1_5/Regress/regress-315974: FAIL_OK
437 466

  
467
  # Requires Mozilla-specific strict mode or options() function.
468
  'ecma_3/Object/8.6.1-01': [FAIL_OK],
469
  'js1_5/Exceptions/regress-315147': [FAIL_OK],
470
  'js1_5/Regress/regress-106244': [FAIL_OK],
471
  'js1_5/Regress/regress-317533': [FAIL_OK],
472
  'js1_5/Regress/regress-323314-1': [FAIL_OK],
473
  'js1_5/Regress/regress-352197': [FAIL_OK],
438 474

  
439
# Use unsupported "watch".
440
js1_5/Regress/regress-213482: FAIL_OK
441
js1_5/Regress/regress-240577: FAIL_OK
442
js1_5/Regress/regress-355344: FAIL_OK
443
js1_5/Object/regress-362872-01: FAIL_OK
444
js1_5/Object/regress-362872-02: FAIL_OK
445
js1_5/Regress/regress-361467: FAIL_OK
446
js1_5/Regress/regress-385393-06: FAIL_OK
447
js1_5/Regress/regress-506567: FAIL_OK
448 475

  
476
  # Equivalent to assert(false).
477
  'ecma_2/RegExp/exec-001': [FAIL_OK],
478
  'ecma_2/String/replace-001': [FAIL_OK],
449 479

  
450
# Use special Mozilla getter/setter syntax
451
js1_5/Regress/regress-354924: FAIL_OK
452
js1_5/Regress/regress-355341: FAIL_OK
453
js1_5/GC/regress-316885-01: FAIL_OK
454
js1_5/GetSet/getset-002: FAIL_OK
455
js1_5/GetSet/regress-353264: FAIL_OK
456
js1_5/Regress/regress-361617: FAIL_OK
457
js1_5/Regress/regress-362583: FAIL_OK
458
js1_5/extensions/regress-356378: FAIL_OK
459
js1_5/extensions/regress-452178: FAIL_OK
460 480

  
481
  # We do not strip unicode format control characters. This is really
482
  # required for working with non-latin character sets.  We match JSC
483
  # and IE here.  Firefox matches the spec (section 7.1).
484
  'ecma_3/Unicode/uc-001': [FAIL_OK],
461 485

  
462
# Requires Mozilla-specific strict mode or options() function.
463
ecma_3/Object/8.6.1-01: FAIL_OK
464
js1_5/Exceptions/regress-315147: FAIL_OK
465
js1_5/Regress/regress-106244: FAIL_OK
466
js1_5/Regress/regress-317533: FAIL_OK
467
js1_5/Regress/regress-323314-1: FAIL_OK
468
js1_5/Regress/regress-352197: FAIL_OK
469 486

  
487
  # A non-breaking space doesn't match \s in a regular expression.  This
488
  # behaviour matches JSC.  All the VMs have different behaviours in which
489
  # characters match \s so we do the same as JSC until they change.
490
  'ecma_3/Unicode/uc-002': [PASS, FAIL_OK],
470 491

  
471
# Equivalent to assert(false).
472
ecma_2/RegExp/exec-001: FAIL_OK
473
ecma_2/String/replace-001: FAIL_OK
474 492

  
493
  # String.prototype.split on empty strings always returns an array
494
  # with one element (as specified in ECMA-262).
495
  'js1_2/Array/array_split_1': [FAIL_OK],
475 496

  
476
# We do not strip unicode format control characters. This is really
477
# required for working with non-latin character sets.  We match JSC
478
# and IE here.  Firefox matches the spec (section 7.1).
479
ecma_3/Unicode/uc-001: FAIL_OK
480 497

  
498
  # The concat() method is defined in Array.prototype; not Array.
499
  'js1_5/Array/regress-313153': [FAIL_OK],
481 500

  
482
# A non-breaking space doesn't match \s in a regular expression.  This behaviour
483
# matches JSC.  All the VMs have different behaviours in which characters match
484
# \s so we do the same as JSC until they change.
485
ecma_3/Unicode/uc-002: PASS || FAIL_OK
501
  # The join() method is defined on Array.prototype; not Array.
502
  'js1_5/Array/regress-474529': [FAIL_OK],
486 503

  
504
  # The lastIndexOf() method is defined on Array.prototype, not Array.
505
  'ecma_3/Array/15.5.4.8-01': [FAIL_OK],
487 506

  
488
# String.prototype.split on empty strings always returns an array
489
# with one element (as specified in ECMA-262).
490
js1_2/Array/array_split_1: FAIL_OK
507
  # Properties fileName, and lineNumber of Error instances are
508
  # not supported. Mozilla specific extension.
509
  'js1_5/Exceptions/errstack-001': [FAIL_OK],
510
  'js1_5/Exceptions/regress-257751': [FAIL_OK],
511
  'js1_5/Regress/regress-119719': [FAIL_OK],
512
  'js1_5/Regress/regress-167328': [FAIL_OK],
513
  'js1_5/Regress/regress-243869': [FAIL_OK],
491 514

  
492 515

  
493
# The concat() method is defined in Array.prototype; not Array.
494
js1_5/Array/regress-313153: FAIL_OK
516
  # Unsupported import/export and <xml> literals. Mozilla extensions.
517
  'js1_5/Regress/regress-249211': [FAIL_OK],
518
  'js1_5/Regress/regress-309242': [FAIL_OK],
519
  'js1_5/Regress/regress-350692': [FAIL_OK],
520
  'js1_5/extensions/regress-421621': [FAIL_OK],
521
  'js1_5/extensions/regress-432075': [FAIL_OK],
495 522

  
496
# The join() method is defined on Array.prototype; not Array.
497
js1_5/Array/regress-474529: FAIL_OK
498 523

  
499
# The lastIndexOf() method is defined on Array.prototype, not Array.
500
ecma_3/Array/15.5.4.8-01: FAIL_OK
524
  # The length of Error functions is 1 not 3.
525
  'js1_5/Exceptions/regress-123002': [FAIL_OK],
501 526

  
502
# Properties fileName, and lineNumber of Error instances are
503
# not supported. Mozilla specific extension.
504
js1_5/Exceptions/errstack-001: FAIL_OK
505
js1_5/Exceptions/regress-257751: FAIL_OK
506
js1_5/Regress/regress-119719: FAIL_OK
507
js1_5/Regress/regress-167328: FAIL_OK
508
js1_5/Regress/regress-243869: FAIL_OK
509 527

  
528
  # Reserved keywords as function names, etc is not supported.
529
  'js1_5/LexicalConventions/regress-343675': [FAIL_OK],
510 530

  
511
# Unsupported import/export and <xml> literals. Mozilla extensions.
512
js1_5/Regress/regress-249211: FAIL_OK
513
js1_5/Regress/regress-309242: FAIL_OK
514
js1_5/Regress/regress-350692: FAIL_OK
515
js1_5/extensions/regress-421621: FAIL_OK
516
js1_5/extensions/regress-432075: FAIL_OK
517 531

  
532
  # Tests if future reserved keywords of ECMA-262, edition 3 emit warnings. We
533
  # implement the edition 5 behaviour and fail on use of edition 5 future
534
  # reserved keywords as identifiers.
535
  'js1_5/Regress/regress-240317': [FAIL_OK],
518 536

  
519
# The length of Error functions is 1 not 3.
520
js1_5/Exceptions/regress-123002: FAIL_OK
521 537

  
538
  # Unsupported list comprehensions: [ ... for ... ] and for each.
539
  'js1_5/Regress/regress-352009': [FAIL_OK],
540
  'js1_5/Regress/regress-349648': [FAIL_OK],
522 541

  
523
# Reserved keywords as function names, etc is not supported.
524
js1_5/LexicalConventions/regress-343675: FAIL_OK
525 542

  
543
  # Expects top level arguments (passed on command line?) to be
544
  # the empty string?
545
  'js1_5/Regress/regress-336100': [FAIL_OK],
526 546

  
527
# Tests if future reserved keywords of ECMA-262, edition 3 emit warnings. We
528
# implement the edition 5 behaviour and fail on use of edition 5 future reserved
529
# keywords as identifiers.
530
js1_5/Regress/regress-240317: FAIL_OK
531 547

  
548
  # Regular expression test failures due to PCRE. We match JSC (ie, perl)
549
  # behavior and not the ECMA spec.
550
  'ecma_3/RegExp/perlstress-001': [PASS, FAIL_OK],
551
  'ecma_3/RegExp/regress-334158': [PASS, FAIL],
532 552

  
533
# Unsupported list comprehensions: [ ... for ... ] and for each.
534
js1_5/Regress/regress-352009: FAIL_OK
535
js1_5/Regress/regress-349648: FAIL_OK
553
  # This test fails due to http://code.google.com/p/v8/issues/detail?id=187
554
  # Failure to clear captures when a lookahead is unwound.
555
  'ecma_3/RegExp/15.10.2-1': [PASS, FAIL_OK],
536 556

  
557
  # This test requires a failure if we try to compile a function with more
558
  # than 65536 arguments.  This seems to be a Mozilla restriction.
559
  'js1_5/Regress/regress-290575': [PASS, FAIL_OK],
537 560

  
538
# Expects top level arguments (passed on command line?) to be
539
# the empty string?
540
js1_5/Regress/regress-336100: FAIL_OK
541 561

  
562
  # Fails because of the way function declarations are
563
  # handled in V8/JSC. V8 follows IE behavior and introduce
564
  # all nested function declarations when entering the
565
  # surrounding function, whereas Spidermonkey declares
566
  # them dynamically when the statement is executed.
567
  'ecma_3/Function/scope-001': [FAIL_OK],
568
  'ecma_3/FunExpr/fe-001': [FAIL_OK],
569
  'js1_5/Scope/regress-184107': [FAIL_OK],
542 570

  
543
# Regular expression test failures due to PCRE. We match JSC (ie, perl)
544
# behavior and not the ECMA spec.
545
ecma_3/RegExp/perlstress-001: PASS || FAIL_OK
546
ecma_3/RegExp/regress-334158: PASS || FAIL
547 571

  
548
# This test fails due to http://code.google.com/p/v8/issues/detail?id=187
549
# Failure to clear captures when a lookahead is unwound.
550
ecma_3/RegExp/15.10.2-1: PASS || FAIL_OK
572
  # Function is deletable in V8 and JSC.
573
  'js1_5/Regress/regress-352604': [FAIL_OK],
551 574

  
552
# This test requires a failure if we try to compile a function with more
553
# than 65536 arguments.  This seems to be a Mozilla restriction.
554
js1_5/Regress/regress-290575: PASS || FAIL_OK
555 575

  
576
  # Cannot call strings as functions. Expects not to crash.
577
  'js1_5/Regress/regress-417893': [FAIL_OK],
556 578

  
557
# Fails because of the way function declarations are
558
# handled in V8/JSC. V8 follows IE behavior and introduce
559
# all nested function declarations when entering the
560
# surrounding function, whereas Spidermonkey declares
561
# them dynamically when the statement is executed.
562
ecma_3/Function/scope-001: FAIL_OK
563
ecma_3/FunExpr/fe-001: FAIL_OK
564
js1_5/Scope/regress-184107: FAIL_OK
565 579

  
580
  # Unsupported use of "[]" as function parameter. We match JSC.
581
  'js1_5/Regress/regress-416737-01': [FAIL_OK],
582
  'js1_5/Regress/regress-416737-02': [FAIL_OK],
566 583

  
567
# Function is deletable in V8 and JSC.
568
js1_5/Regress/regress-352604: FAIL_OK
569 584

  
585
  # Illegal escape-sequences in string literals. Has already been fixed
586
  # by most engines (i.e. V8, JSC, Opera and FF).
587
  'ecma/Array/15.4.5.1-1': [FAIL_OK],
588
  'ecma/LexicalConventions/7.7.4': [FAIL_OK],
589
  'ecma_2/RegExp/hex-001': [FAIL_OK],
590
  'js1_2/regexp/hexadecimal': [FAIL_OK],
570 591

  
571
# Cannot call strings as functions. Expects not to crash.
572
js1_5/Regress/regress-417893: FAIL_OK
573 592

  
574

  
575
# Unsupported use of "[]" as function parameter. We match JSC.
576
js1_5/Regress/regress-416737-01: FAIL_OK
577
js1_5/Regress/regress-416737-02: FAIL_OK
578

  
579

  
580
# Illegal escape-sequences in string literals. Has already been fixed
581
# by most engines (i.e. V8, JSC, Opera and FF).
582
ecma/Array/15.4.5.1-1: FAIL_OK
583
ecma/LexicalConventions/7.7.4: FAIL_OK
584
ecma_2/RegExp/hex-001: FAIL_OK
585
js1_2/regexp/hexadecimal: FAIL_OK
586

  
587

  
588
# The source field of RegExp objects is properly escaped. We match JSC.
589
ecma_2/RegExp/constructor-001: FAIL_OK
590
ecma_2/RegExp/function-001: FAIL_OK
591
ecma_2/RegExp/properties-001: FAIL_OK
592

  
593

  
594
# Negative hexadecimal literals are parsed as NaN. This test is outdated.
595
ecma/TypeConversion/9.3.1-3: FAIL_OK
596

  
597

  
598
##################### FAILING TESTS #####################
599

  
600
# This section is for tests that fail in V8 and pass in JSC.
601
# Tests that fail in both V8 and JSC belong in the FAIL_OK
602
# category.
603

  
604
# This fails because we don't handle Function.prototype.apply with very large
605
# numbers of arguments (depending on max stack size).  350256-02 needs more than
606
# 4Mbytes of stack space.
607
js1_5/Array/regress-350256-02: FAIL
608

  
609

  
610
# This test seems designed to fail (it produces a 700Mbyte string).
611
# We fail on out of memory.  The important thing is not to crash.
612
js1_5/Regress/regress-303213: FAIL || TIMEOUT if $mode == debug
613

  
614
# This test fails since we now throw in String.prototype.match when apply
615
# is given null or undefined as this argument (and so does firefox nightly).
616
js1_5/Regress/regress-295052: FAIL
617

  
618
# Bug 1202592: New ecma_3/String/15.5.4.11 is failing.
619
ecma_3/String/15.5.4.11: FAIL
620

  
621
# Bug 1202597: New js1_5/Expressions/regress-394673 is failing.
622
# Marked as: Will not fix. V8 throws an acceptable RangeError.
623
js1_5/Expressions/regress-394673: FAIL
624

  
625

  
626
# Bug 762: http://code.google.com/p/v8/issues/detail?id=762
627
# We do not correctly handle assignments within "with"
628
ecma_3/Statements/12.10-01: FAIL
629

  
630
# We do not throw an exception when a const is redeclared.
631
# (We only fail section 1 of the test.)
632
js1_5/Regress/regress-103602: FAIL
633

  
634
##################### MOZILLA EXTENSION TESTS #####################
635

  
636
ecma/extensions/15.1.2.1-1: FAIL_OK
637
ecma_3/extensions/regress-385393-03: FAIL_OK
638
ecma_3/extensions/7.9.1: FAIL_OK
639
js1_5/extensions/catchguard-001: FAIL_OK
640
js1_5/extensions/catchguard-002: FAIL_OK
641
js1_5/extensions/catchguard-003: FAIL_OK
642
js1_5/extensions/getset-001: FAIL_OK
643
js1_5/extensions/getset-003: FAIL_OK
644
js1_5/extensions/no-such-method: FAIL_OK
645
js1_5/extensions/regress-104077: FAIL_OK
646
js1_5/extensions/regress-226078: FAIL_OK
647
js1_5/extensions/regress-303277: FAIL_OK
648
js1_5/extensions/regress-304897: FAIL_OK
649
js1_5/extensions/regress-306738: FAIL_OK
650
js1_5/extensions/regress-311161: FAIL_OK
651
js1_5/extensions/regress-311583: FAIL_OK
652
js1_5/extensions/regress-311792-01: FAIL_OK
653
js1_5/extensions/regress-312278: FAIL_OK
654
js1_5/extensions/regress-313630: FAIL_OK
655
js1_5/extensions/regress-313763: FAIL_OK
656
js1_5/extensions/regress-313803: FAIL_OK
657
js1_5/extensions/regress-314874: FAIL_OK
658
js1_5/extensions/regress-322957: FAIL_OK
659
js1_5/extensions/regress-328556: FAIL_OK
660
js1_5/extensions/regress-333541: FAIL_OK
661
js1_5/extensions/regress-335700: FAIL_OK
662
js1_5/extensions/regress-336409-1: FAIL_OK
663
js1_5/extensions/regress-336409-2: FAIL_OK
664
js1_5/extensions/regress-336410-2: FAIL_OK
665
js1_5/extensions/regress-341956-01: FAIL_OK
666
js1_5/extensions/regress-345967: FAIL_OK
667
js1_5/extensions/regress-346494-01: FAIL_OK
668
js1_5/extensions/regress-346494: FAIL_OK
669
js1_5/extensions/regress-347306-02: FAIL_OK
670
js1_5/extensions/regress-348986: FAIL_OK
671
js1_5/extensions/regress-349616: FAIL_OK
672
js1_5/extensions/regress-350312-02: FAIL_OK
673
js1_5/extensions/regress-350312-03: FAIL_OK
674
js1_5/extensions/regress-350531: FAIL_OK
675
js1_5/extensions/regress-351102-01: FAIL_OK
676
js1_5/extensions/regress-351102-02: FAIL_OK
677
js1_5/extensions/regress-351102-06: FAIL_OK
678
js1_5/extensions/regress-351973: FAIL_OK
679
js1_5/extensions/regress-352060: FAIL_OK
680
js1_5/extensions/regress-352094: FAIL_OK
681
js1_5/extensions/regress-352261: FAIL_OK
682
js1_5/extensions/regress-352281: FAIL_OK
683
js1_5/extensions/regress-352455: FAIL_OK
684
js1_5/extensions/regress-352604: FAIL_OK
685
js1_5/extensions/regress-353214: FAIL_OK
686
js1_5/extensions/regress-355339: FAIL_OK
687
js1_5/extensions/regress-355497: FAIL_OK
688
js1_5/extensions/regress-355622: FAIL_OK
689
js1_5/extensions/regress-355736: FAIL_OK
690
js1_5/extensions/regress-356085: FAIL_OK
691
js1_5/extensions/regress-356106: FAIL_OK
692
js1_5/extensions/regress-358594-01: FAIL_OK
693
js1_5/extensions/regress-358594-02: FAIL_OK
694
js1_5/extensions/regress-358594-03: FAIL_OK
695
js1_5/extensions/regress-358594-04: FAIL_OK
696
js1_5/extensions/regress-358594-05: FAIL_OK
697
js1_5/extensions/regress-358594-06: FAIL_OK
698
js1_5/extensions/regress-361346: FAIL_OK
699
js1_5/extensions/regress-361360: FAIL_OK
700
js1_5/extensions/regress-361558: FAIL_OK
701
js1_5/extensions/regress-361571: FAIL_OK
702
js1_5/extensions/regress-361856: FAIL_OK
703
js1_5/extensions/regress-361964: FAIL_OK
704
js1_5/extensions/regress-363988: FAIL_OK
705
js1_5/extensions/regress-365869: FAIL_OK
706
js1_5/extensions/regress-367630: FAIL_OK
707
js1_5/extensions/regress-367923: FAIL_OK
708
js1_5/extensions/regress-368859: FAIL_OK
709
js1_5/extensions/regress-369696-01: FAIL_OK
710
js1_5/extensions/regress-369696-02: FAIL_OK
711
js1_5/extensions/regress-369696-03: FAIL_OK
712
js1_5/extensions/regress-374589: FAIL_OK
713
js1_5/extensions/regress-375801: FAIL_OK
714
js1_5/extensions/regress-376052: FAIL_OK
715
js1_5/extensions/regress-379523: FAIL_OK
716
js1_5/extensions/regress-380581: FAIL_OK
717
js1_5/extensions/regress-380831: FAIL_OK
718
js1_5/extensions/regress-381205: FAIL_OK
719
js1_5/extensions/regress-381211: FAIL_OK
720
js1_5/extensions/regress-381304: FAIL_OK
721
js1_5/extensions/regress-382509: FAIL_OK
722
js1_5/extensions/regress-383965: FAIL_OK
723
js1_5/extensions/regress-384680: FAIL_OK
724
js1_5/extensions/regress-385393-09: FAIL_OK
725
js1_5/extensions/regress-407501: FAIL_OK
726
js1_5/extensions/regress-418730: FAIL_OK
727
js1_5/extensions/regress-420612: FAIL_OK
728
js1_5/extensions/regress-420869-01: FAIL_OK
729
js1_5/extensions/regress-424257: FAIL_OK
730
js1_5/extensions/regress-424683-01: FAIL_OK
731
js1_5/extensions/regress-429739: FAIL_OK
732
js1_5/extensions/regress-454142: FAIL_OK
733
js1_5/extensions/regress-465145: FAIL_OK
734
js1_5/extensions/regress-469625: FAIL_OK
735
js1_5/extensions/regress-472787: FAIL_OK
736
js1_5/extensions/regress-44009: FAIL_OK
737
js1_5/extensions/regress-50447-1: FAIL_OK
738
js1_5/extensions/regress-50447: FAIL_OK
739
js1_5/extensions/regress-90596-001: FAIL_OK
740
js1_5/extensions/regress-90596-002: FAIL_OK
741
js1_5/extensions/regress-96284-001: FAIL_OK
742
js1_5/extensions/regress-96284-002: FAIL_OK
743
js1_5/extensions/toLocaleFormat-01: FAIL_OK
744
js1_5/extensions/toLocaleFormat-02: FAIL_OK
745

  
746
js1_5/extensions/regress-330569: TIMEOUT
747
js1_5/extensions/regress-351448: TIMEOUT
748
# In the 64-bit version, this test takes longer to run out of memory
749
# than it does in the 32-bit version when attempting to generate a huge
750
# error message in debug mode.
751
js1_5/extensions/regress-336410-1: FAIL_OK || TIMEOUT if ($mode == debug && $arch == x64)
752

  
753
##################### DECOMPILATION TESTS #####################
754

  
755
# We don't really about the outcome of running the
756
# decompilation tests as long as they don't crash or
757
# timeout.
758

  
759
js1_5/decompilation/regress-344120: PASS || FAIL
760
js1_5/decompilation/regress-346892: PASS || FAIL
761
js1_5/decompilation/regress-346902: PASS || FAIL
762
js1_5/decompilation/regress-346904: PASS || FAIL
763
js1_5/decompilation/regress-346915: PASS || FAIL
764
js1_5/decompilation/regress-349484: PASS || FAIL
765
js1_5/decompilation/regress-349489: PASS || FAIL
766
js1_5/decompilation/regress-349491: PASS || FAIL
767
js1_5/decompilation/regress-349596: PASS || FAIL
768
js1_5/decompilation/regress-349650: PASS || FAIL
769
js1_5/decompilation/regress-349663: PASS || FAIL
770
js1_5/decompilation/regress-350242: PASS || FAIL
771
js1_5/decompilation/regress-350263: PASS || FAIL
772
js1_5/decompilation/regress-350271: PASS || FAIL
773
js1_5/decompilation/regress-350666: PASS || FAIL
774
js1_5/decompilation/regress-350670: PASS || FAIL
775
js1_5/decompilation/regress-351104: PASS || FAIL
776
js1_5/decompilation/regress-351219: PASS || FAIL
777
js1_5/decompilation/regress-351336: PASS || FAIL
778
js1_5/decompilation/regress-351597: PASS || FAIL
779
js1_5/decompilation/regress-351625: PASS || FAIL
780
js1_5/decompilation/regress-351626: PASS || FAIL
781
js1_5/decompilation/regress-351693: PASS || FAIL
782
js1_5/decompilation/regress-351705: PASS || FAIL
783
js1_5/decompilation/regress-351793: PASS || FAIL
784
js1_5/decompilation/regress-352013: PASS || FAIL
785
js1_5/decompilation/regress-352022: PASS || FAIL
786
js1_5/decompilation/regress-352073: PASS || FAIL
787
js1_5/decompilation/regress-352202: PASS || FAIL
788
js1_5/decompilation/regress-352312: PASS || FAIL
789
js1_5/decompilation/regress-352360: PASS || FAIL
790
js1_5/decompilation/regress-352375: PASS || FAIL
791
js1_5/decompilation/regress-352453: PASS || FAIL
792
js1_5/decompilation/regress-352649: PASS || FAIL
793
js1_5/decompilation/regress-352873-01: PASS || FAIL
794
js1_5/decompilation/regress-352873-02: PASS || FAIL
795
js1_5/decompilation/regress-353000: PASS || FAIL
796
js1_5/decompilation/regress-353120: PASS || FAIL
797
js1_5/decompilation/regress-353146: PASS || FAIL
798
js1_5/decompilation/regress-354878: PASS || FAIL
799
js1_5/decompilation/regress-354910: PASS || FAIL
800
js1_5/decompilation/regress-355992: PASS || FAIL
801
js1_5/decompilation/regress-356083: PASS || FAIL
802
js1_5/decompilation/regress-356248: PASS || FAIL
803
js1_5/decompilation/regress-371692: PASS || FAIL
804
js1_5/decompilation/regress-373678: PASS || FAIL
805
js1_5/decompilation/regress-375639: PASS || FAIL
806
js1_5/decompilation/regress-375882: PASS || FAIL
807
js1_5/decompilation/regress-376564: PASS || FAIL
808
js1_5/decompilation/regress-383721: PASS || FAIL
809
js1_5/decompilation/regress-406555: PASS || FAIL
810
js1_5/decompilation/regress-460870: PASS || FAIL
811

  
812

  
813
[ $arch == arm ]
814

  
815
# BUG(3251229): Times out when running new crankshaft test script.
816
ecma_3/RegExp/regress-311414: SKIP
817
ecma/Date/15.9.5.8: SKIP
818
ecma/Date/15.9.5.10-2: SKIP
819
ecma/Date/15.9.5.11-2: SKIP
820
ecma/Date/15.9.5.12-2: SKIP
821
js1_5/Array/regress-99120-02: SKIP
822
js1_5/extensions/regress-371636: SKIP
823
js1_5/Regress/regress-203278-1: SKIP
824
js1_5/Regress/regress-404755:  SKIP
825
js1_5/Regress/regress-451322: SKIP
826

  
827

  
828
# BUG(1040): Allow this test to timeout.
829
js1_5/GC/regress-203278-2: PASS || TIMEOUT
830

  
831

  
832
[ $arch == mipsel ]
833

  
834
# BUG(3251229): Times out when running new crankshaft test script.
835
ecma_3/RegExp/regress-311414: SKIP
836
ecma/Date/15.9.5.8: SKIP
837
ecma/Date/15.9.5.10-2: SKIP
838
ecma/Date/15.9.5.11-2: SKIP
839
ecma/Date/15.9.5.12-2: SKIP
840
js1_5/Array/regress-99120-02: SKIP
841
js1_5/extensions/regress-371636: SKIP
842
js1_5/Regress/regress-203278-1: SKIP
843
js1_5/Regress/regress-404755:  SKIP
844
js1_5/Regress/regress-451322: SKIP
845

  
846

  
847
# BUG(1040): Allow this test to timeout.
848
js1_5/GC/regress-203278-2: PASS || TIMEOUT
593
  # The source field of RegExp objects is properly escaped. We match JSC.
594
  'ecma_2/RegExp/constructor-001': [FAIL_OK],
595
  'ecma_2/RegExp/function-001': [FAIL_OK],
596
  'ecma_2/RegExp/properties-001': [FAIL_OK],
597

  
598

  
599
  # Negative hexadecimal literals are parsed as NaN. This test is outdated.
600
  'ecma/TypeConversion/9.3.1-3': [FAIL_OK],
601

  
602

  
603
  ##################### FAILING TESTS #####################
604

  
605
  # This section is for tests that fail in V8 and pass in JSC.
606
  # Tests that fail in both V8 and JSC belong in the FAIL_OK
607
  # category.
608

  
609
  # This fails because we don't handle Function.prototype.apply with very large
610
  # numbers of arguments (depending on max stack size).  350256-02 needs more
611
  # than 4Mbytes of stack space.
612
  'js1_5/Array/regress-350256-02': [FAIL],
613

  
614

  
615
  # This test seems designed to fail (it produces a 700Mbyte string).
616
  # We fail on out of memory.  The important thing is not to crash.
617
  'js1_5/Regress/regress-303213': [FAIL, ['mode == debug', TIMEOUT]],
618

  
619
  # This test fails since we now throw in String.prototype.match when apply
620
  # is given null or undefined as this argument (and so does firefox nightly).
621
  'js1_5/Regress/regress-295052': [FAIL],
622

  
623
  # Bug 1202592: New ecma_3/String/15.5.4.11 is failing.
624
  'ecma_3/String/15.5.4.11': [FAIL],
625

  
626
  # Bug 1202597: New js1_5/Expressions/regress-394673 is failing.
627
  # Marked as: Will not fix. V8 throws an acceptable RangeError.
628
  'js1_5/Expressions/regress-394673': [FAIL],
629

  
630

  
631
  # Bug 762: http://code.google.com/p/v8/issues/detail?id=762
632
  # We do not correctly handle assignments within "with"
633
  'ecma_3/Statements/12.10-01': [FAIL],
634

  
635
  # We do not throw an exception when a const is redeclared.
636
  # (We only fail section 1 of the test.)
637
  'js1_5/Regress/regress-103602': [FAIL],
638

  
639
  ##################### MOZILLA EXTENSION TESTS #####################
640

  
641
  'ecma/extensions/15.1.2.1-1': [FAIL_OK],
642
  'ecma_3/extensions/regress-385393-03': [FAIL_OK],
643
  'ecma_3/extensions/7.9.1': [FAIL_OK],
644
  'js1_5/extensions/catchguard-001': [FAIL_OK],
645
  'js1_5/extensions/catchguard-002': [FAIL_OK],
646
  'js1_5/extensions/catchguard-003': [FAIL_OK],
647
  'js1_5/extensions/getset-001': [FAIL_OK],
648
  'js1_5/extensions/getset-003': [FAIL_OK],
649
  'js1_5/extensions/no-such-method': [FAIL_OK],
650
  'js1_5/extensions/regress-104077': [FAIL_OK],
651
  'js1_5/extensions/regress-226078': [FAIL_OK],
652
  'js1_5/extensions/regress-303277': [FAIL_OK],
653
  'js1_5/extensions/regress-304897': [FAIL_OK],
654
  'js1_5/extensions/regress-306738': [FAIL_OK],
655
  'js1_5/extensions/regress-311161': [FAIL_OK],
656
  'js1_5/extensions/regress-311583': [FAIL_OK],
657
  'js1_5/extensions/regress-311792-01': [FAIL_OK],
658
  'js1_5/extensions/regress-312278': [FAIL_OK],
659
  'js1_5/extensions/regress-313630': [FAIL_OK],
660
  'js1_5/extensions/regress-313763': [FAIL_OK],
661
  'js1_5/extensions/regress-313803': [FAIL_OK],
662
  'js1_5/extensions/regress-314874': [FAIL_OK],
663
  'js1_5/extensions/regress-322957': [FAIL_OK],
664
  'js1_5/extensions/regress-328556': [FAIL_OK],
665
  'js1_5/extensions/regress-333541': [FAIL_OK],
666
  'js1_5/extensions/regress-335700': [FAIL_OK],
667
  'js1_5/extensions/regress-336409-1': [FAIL_OK],
668
  'js1_5/extensions/regress-336409-2': [FAIL_OK],
669
  'js1_5/extensions/regress-336410-2': [FAIL_OK],
670
  'js1_5/extensions/regress-341956-01': [FAIL_OK],
671
  'js1_5/extensions/regress-345967': [FAIL_OK],
672
  'js1_5/extensions/regress-346494-01': [FAIL_OK],
673
  'js1_5/extensions/regress-346494': [FAIL_OK],
674
  'js1_5/extensions/regress-347306-02': [FAIL_OK],
675
  'js1_5/extensions/regress-348986': [FAIL_OK],
676
  'js1_5/extensions/regress-349616': [FAIL_OK],
677
  'js1_5/extensions/regress-350312-02': [FAIL_OK],
678
  'js1_5/extensions/regress-350312-03': [FAIL_OK],
679
  'js1_5/extensions/regress-350531': [FAIL_OK],
680
  'js1_5/extensions/regress-351102-01': [FAIL_OK],
681
  'js1_5/extensions/regress-351102-02': [FAIL_OK],
682
  'js1_5/extensions/regress-351102-06': [FAIL_OK],
683
  'js1_5/extensions/regress-351973': [FAIL_OK],
684
  'js1_5/extensions/regress-352060': [FAIL_OK],
685
  'js1_5/extensions/regress-352094': [FAIL_OK],
686
  'js1_5/extensions/regress-352261': [FAIL_OK],
687
  'js1_5/extensions/regress-352281': [FAIL_OK],
688
  'js1_5/extensions/regress-352455': [FAIL_OK],
689
  'js1_5/extensions/regress-352604': [FAIL_OK],
690
  'js1_5/extensions/regress-353214': [FAIL_OK],
691
  'js1_5/extensions/regress-355339': [FAIL_OK],
692
  'js1_5/extensions/regress-355497': [FAIL_OK],
693
  'js1_5/extensions/regress-355622': [FAIL_OK],
694
  'js1_5/extensions/regress-355736': [FAIL_OK],
695
  'js1_5/extensions/regress-356085': [FAIL_OK],
696
  'js1_5/extensions/regress-356106': [FAIL_OK],
697
  'js1_5/extensions/regress-358594-01': [FAIL_OK],
698
  'js1_5/extensions/regress-358594-02': [FAIL_OK],
699
  'js1_5/extensions/regress-358594-03': [FAIL_OK],
700
  'js1_5/extensions/regress-358594-04': [FAIL_OK],
701
  'js1_5/extensions/regress-358594-05': [FAIL_OK],
702
  'js1_5/extensions/regress-358594-06': [FAIL_OK],
703
  'js1_5/extensions/regress-361346': [FAIL_OK],
704
  'js1_5/extensions/regress-361360': [FAIL_OK],
705
  'js1_5/extensions/regress-361558': [FAIL_OK],
706
  'js1_5/extensions/regress-361571': [FAIL_OK],
707
  'js1_5/extensions/regress-361856': [FAIL_OK],
708
  'js1_5/extensions/regress-361964': [FAIL_OK],
709
  'js1_5/extensions/regress-363988': [FAIL_OK],
710
  'js1_5/extensions/regress-365869': [FAIL_OK],
711
  'js1_5/extensions/regress-367630': [FAIL_OK],
712
  'js1_5/extensions/regress-367923': [FAIL_OK],
713
  'js1_5/extensions/regress-368859': [FAIL_OK],
714
  'js1_5/extensions/regress-369696-01': [FAIL_OK],
715
  'js1_5/extensions/regress-369696-02': [FAIL_OK],
716
  'js1_5/extensions/regress-369696-03': [FAIL_OK],
717
  'js1_5/extensions/regress-374589': [FAIL_OK],
718
  'js1_5/extensions/regress-375801': [FAIL_OK],
719
  'js1_5/extensions/regress-376052': [FAIL_OK],
720
  'js1_5/extensions/regress-379523': [FAIL_OK],
721
  'js1_5/extensions/regress-380581': [FAIL_OK],
722
  'js1_5/extensions/regress-380831': [FAIL_OK],
723
  'js1_5/extensions/regress-381205': [FAIL_OK],
724
  'js1_5/extensions/regress-381211': [FAIL_OK],
725
  'js1_5/extensions/regress-381304': [FAIL_OK],
726
  'js1_5/extensions/regress-382509': [FAIL_OK],
727
  'js1_5/extensions/regress-383965': [FAIL_OK],
728
  'js1_5/extensions/regress-384680': [FAIL_OK],
729
  'js1_5/extensions/regress-385393-09': [FAIL_OK],
730
  'js1_5/extensions/regress-407501': [FAIL_OK],
731
  'js1_5/extensions/regress-418730': [FAIL_OK],
732
  'js1_5/extensions/regress-420612': [FAIL_OK],
733
  'js1_5/extensions/regress-420869-01': [FAIL_OK],
734
  'js1_5/extensions/regress-424257': [FAIL_OK],
735
  'js1_5/extensions/regress-424683-01': [FAIL_OK],
736
  'js1_5/extensions/regress-429739': [FAIL_OK],
737
  'js1_5/extensions/regress-454142': [FAIL_OK],
738
  'js1_5/extensions/regress-465145': [FAIL_OK],
739
  'js1_5/extensions/regress-469625': [FAIL_OK],
740
  'js1_5/extensions/regress-472787': [FAIL_OK],
741
  'js1_5/extensions/regress-44009': [FAIL_OK],
742
  'js1_5/extensions/regress-50447-1': [FAIL_OK],
743
  'js1_5/extensions/regress-50447': [FAIL_OK],
744
  'js1_5/extensions/regress-90596-001': [FAIL_OK],
745
  'js1_5/extensions/regress-90596-002': [FAIL_OK],
746
  'js1_5/extensions/regress-96284-001': [FAIL_OK],
747
  'js1_5/extensions/regress-96284-002': [FAIL_OK],
748
  'js1_5/extensions/toLocaleFormat-01': [FAIL_OK],
749
  'js1_5/extensions/toLocaleFormat-02': [FAIL_OK],
750

  
751
  'js1_5/extensions/regress-330569': [TIMEOUT],
752
  'js1_5/extensions/regress-351448': [TIMEOUT],
753
  # In the 64-bit version, this test takes longer to run out of memory
754
  # than it does in the 32-bit version when attempting to generate a huge
755
  # error message in debug mode.
756
  'js1_5/extensions/regress-336410-1': [FAIL_OK, ['mode == debug and arch == x64', TIMEOUT]],
757

  
758
  ##################### DECOMPILATION TESTS #####################
759

  
760
  # We don't really about the outcome of running the
761
  # decompilation tests as long as they don't crash or
762
  # timeout.
763

  
764
  'js1_5/decompilation/regress-344120': [PASS, FAIL],
765
  'js1_5/decompilation/regress-346892': [PASS, FAIL],
766
  'js1_5/decompilation/regress-346902': [PASS, FAIL],
767
  'js1_5/decompilation/regress-346904': [PASS, FAIL],
768
  'js1_5/decompilation/regress-346915': [PASS, FAIL],
769
  'js1_5/decompilation/regress-349484': [PASS, FAIL],
770
  'js1_5/decompilation/regress-349489': [PASS, FAIL],
771
  'js1_5/decompilation/regress-349491': [PASS, FAIL],
772
  'js1_5/decompilation/regress-349596': [PASS, FAIL],
773
  'js1_5/decompilation/regress-349650': [PASS, FAIL],
774
  'js1_5/decompilation/regress-349663': [PASS, FAIL],
775
  'js1_5/decompilation/regress-350242': [PASS, FAIL],
776
  'js1_5/decompilation/regress-350263': [PASS, FAIL],
777
  'js1_5/decompilation/regress-350271': [PASS, FAIL],
778
  'js1_5/decompilation/regress-350666': [PASS, FAIL],
779
  'js1_5/decompilation/regress-350670': [PASS, FAIL],
780
  'js1_5/decompilation/regress-351104': [PASS, FAIL],
781
  'js1_5/decompilation/regress-351219': [PASS, FAIL],
782
  'js1_5/decompilation/regress-351336': [PASS, FAIL],
783
  'js1_5/decompilation/regress-351597': [PASS, FAIL],
784
  'js1_5/decompilation/regress-351625': [PASS, FAIL],
785
  'js1_5/decompilation/regress-351626': [PASS, FAIL],
786
  'js1_5/decompilation/regress-351693': [PASS, FAIL],
787
  'js1_5/decompilation/regress-351705': [PASS, FAIL],
788
  'js1_5/decompilation/regress-351793': [PASS, FAIL],
789
  'js1_5/decompilation/regress-352013': [PASS, FAIL],
790
  'js1_5/decompilation/regress-352022': [PASS, FAIL],
791
  'js1_5/decompilation/regress-352073': [PASS, FAIL],
792
  'js1_5/decompilation/regress-352202': [PASS, FAIL],
793
  'js1_5/decompilation/regress-352312': [PASS, FAIL],
794
  'js1_5/decompilation/regress-352360': [PASS, FAIL],
795
  'js1_5/decompilation/regress-352375': [PASS, FAIL],
796
  'js1_5/decompilation/regress-352453': [PASS, FAIL],
797
  'js1_5/decompilation/regress-352649': [PASS, FAIL],
798
  'js1_5/decompilation/regress-352873-01': [PASS, FAIL],
799
  'js1_5/decompilation/regress-352873-02': [PASS, FAIL],
800
  'js1_5/decompilation/regress-353000': [PASS, FAIL],
801
  'js1_5/decompilation/regress-353120': [PASS, FAIL],
802
  'js1_5/decompilation/regress-353146': [PASS, FAIL],
803
  'js1_5/decompilation/regress-354878': [PASS, FAIL],
804
  'js1_5/decompilation/regress-354910': [PASS, FAIL],
805
  'js1_5/decompilation/regress-355992': [PASS, FAIL],
806
  'js1_5/decompilation/regress-356083': [PASS, FAIL],
807
  'js1_5/decompilation/regress-356248': [PASS, FAIL],
808
  'js1_5/decompilation/regress-371692': [PASS, FAIL],
809
  'js1_5/decompilation/regress-373678': [PASS, FAIL],
810
  'js1_5/decompilation/regress-375639': [PASS, FAIL],
811
  'js1_5/decompilation/regress-375882': [PASS, FAIL],
812
  'js1_5/decompilation/regress-376564': [PASS, FAIL],
813
  'js1_5/decompilation/regress-383721': [PASS, FAIL],
814
  'js1_5/decompilation/regress-406555': [PASS, FAIL],
815
  'js1_5/decompilation/regress-460870': [PASS, FAIL],
816
}],  # ALWAYS
817

  
818

  
819
['arch == arm', {
820

  
821
  # BUG(3251229): Times out when running new crankshaft test script.
822
  'ecma_3/RegExp/regress-311414': [SKIP],
823
  'ecma/Date/15.9.5.8': [SKIP],
824
  'ecma/Date/15.9.5.10-2': [SKIP],
825
  'ecma/Date/15.9.5.11-2': [SKIP],
826
  'ecma/Date/15.9.5.12-2': [SKIP],
827
  'js1_5/Array/regress-99120-02': [SKIP],
828
  'js1_5/extensions/regress-371636': [SKIP],
829
  'js1_5/Regress/regress-203278-1': [SKIP],
830
  'js1_5/Regress/regress-404755': [SKIP],
831
  'js1_5/Regress/regress-451322': [SKIP],
832

  
833

  
834
  # BUG(1040): Allow this test to timeout.
835
  'js1_5/GC/regress-203278-2': [PASS, TIMEOUT],
836
}],  # 'arch == arm'
837

  
838

  
839
['arch == mipsel', {
840

  
841
  # BUG(3251229): Times out when running new crankshaft test script.
842
  'ecma_3/RegExp/regress-311414': [SKIP],
843
  'ecma/Date/15.9.5.8': [SKIP],
844
  'ecma/Date/15.9.5.10-2': [SKIP],
845
  'ecma/Date/15.9.5.11-2': [SKIP],
846
  'ecma/Date/15.9.5.12-2': [SKIP],
847
  'js1_5/Array/regress-99120-02': [SKIP],
848
  'js1_5/extensions/regress-371636': [SKIP],
849
  'js1_5/Regress/regress-203278-1': [SKIP],
850
  'js1_5/Regress/regress-404755': [SKIP],
851
  'js1_5/Regress/regress-451322': [SKIP],
852

  
853

  
854
  # BUG(1040): Allow this test to timeout.
855
  'js1_5/GC/regress-203278-2': [PASS, TIMEOUT],
856
}],  # 'arch == mipsel'
857
]
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff