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 4# met: 5# 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. 15# 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. 27 28# This file is up to date with respect to Mozilla's CVS repository as of 29# 2010-06-29. If new tests are added to Mozilla's CVS it may need to be 30# updated. 31 32# To get the mozilla tests: 33# cd /path/to/checkout/test/mozilla 34# rm -rf data 35# cvs -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co -D 2010-06-29 mozilla/js/tests 36# mv mozilla/js/tests data 37# rm -rf mozilla 38 39# -------------------------------------------------------------------- 40# If you add a test case to this file, please try to provide 41# an explanation of why the test fails; this may ease future 42# debugging. 43# -------------------------------------------------------------------- 44 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 ################## TURBO-FAN FAILURES ################### 55 56 # TODO(turbofan): These are all covered by mjsunit as well. Enable them once 57 # we pass 'mjsunit' and 'webkit' with TurboFan. 58 'js1_5/Regress/regress-80981': [PASS, NO_VARIANTS], 59 60 # TODO(turbofan): Causes timeouts since top-level code is optimized. 61 'ecma_3/Statements/regress-324650': [PASS, NO_VARIANTS], 62 'ecma_3/Statements/regress-74474-002': [PASS, NO_VARIANTS], 63 'ecma_3/Statements/regress-74474-003': [PASS, NO_VARIANTS], 64 'js1_5/Regress/regress-111557': [PASS, NO_VARIANTS], 65 'js1_5/Regress/regress-155081': [PASS, NO_VARIANTS], 66 'js1_5/Regress/regress-155081-2': [PASS, NO_VARIANTS], 67 'js1_5/Regress/regress-451322': [PASS, NO_VARIANTS], 68 69 # TODO(turbofan): Large switch statements crash. 70 'js1_5/Regress/regress-398085-01': [PASS, NO_VARIANTS], 71 72 ############################ INVALID TESTS ############################# 73 74 # Function length properties are configurable in ES6 75 'ecma/Array/15.4.4.3-1': [FAIL], 76 'ecma/Array/15.4.4.4-1': [FAIL], 77 'ecma/Array/15.4.4.4-2': [FAIL], 78 'ecma/String/15.5.4.10-1': [FAIL], 79 'ecma/String/15.5.4.11-1': [FAIL], 80 'ecma/String/15.5.4.7-2': [FAIL], 81 'ecma/String/15.5.4.8-1': [FAIL], 82 'ecma/String/15.5.4.9-1': [FAIL], 83 84 # Date.prototype is an Object, not a Date 85 'ecma/Date/15.9.5': [FAIL], 86 87 # In ES6, the completion value of a 0-iterations loop is 'undefined'. 88 'ecma/Statements/12.6.3-2': [PASS, FAIL], 89 90 # ES2015 ToLength semantics 91 'ecma_3/RegExp/15.10.6.2-2': [FAIL], 92 93 # Escaped keywords are early errors in ES6 94 'ecma_3/Unicode/uc-003': [FAIL], 95 96 # RegExp.multiline is not part of any ECMAScript specification, and is 97 # slated for deprecation in Mozilla 98 # (https://bugzilla.mozilla.org/show_bug.cgi?id=1220457) 99 'js1_5/Regress/regress-418504': [FAIL], 100 101 # ES2015 const redefinition throws, initializers are required, and no 102 # global object properties are made, unlike Mozilla legacy const 103 'js1_5/Regress/regress-103602': [FAIL], 104 'js1_5/Regress/regress-321874': [FAIL], 105 'js1_5/Regress/regress-383674': [FAIL], 106 'js1_5/extensions/regress-452565': [FAIL], 107 'js1_5/extensions/scope-001': [FAIL], 108 # To add insult to injury, these tests time out in debug mode 109 'js1_5/Regress/regress-360969-03': [FAIL, ['mode == debug', TIMEOUT, NO_VARIANTS]], 110 'js1_5/Regress/regress-360969-04': [FAIL, ['mode == debug', TIMEOUT, NO_VARIANTS]], 111 112 ##################### SKIPPED TESTS ##################### 113 114 # This test checks that we behave properly in an out-of-memory 115 # situation. The test fails in V8 with an exception and takes a long 116 # time to do so. 117 'js1_5/Regress/regress-271716-n': [SKIP], 118 119 # BUG(960): This test has an insane amount of output when it times out, 120 # messing up ability to see other failures on the waterfall. 121 'js1_5/extensions/regress-342960': [SKIP], 122 123 # This test uses a unitialized variable. A Bug has been filed: 124 # https://bugzilla.mozilla.org/show_bug.cgi?id=575575 125 'js1_5/Array/regress-465980-02': [SKIP], 126 127 # These tests are simply wrong (i.e., they do not test what they intend 128 # to test). 129 # In particular, these two compare numbers to NaN with != in the current 130 # version of the Mozilla tests. This is *fixed* in a later version. 131 # The tests should be re-enabled when switching to a new version. 132 'ecma_3/Date/15.9.3.2-1': [SKIP], 133 'js1_2/function/Number': [SKIP], 134 135 # TODO(2018): Temporarily allow timeout in debug mode. 136 'js1_5/GC/regress-203278-2': [PASS, ['mode == debug', TIMEOUT, NO_VARIANTS, FAIL]], 137 138 # These tests use invalid LHS expressions in assignments. 139 'js1_5/Regress/regress-319391': [SKIP], 140 'js1_5/Regress/regress-350253': [SKIP], 141 'js1_5/Regress/regress-462292': [SKIP], 142 'js1_5/decompilation/regress-443071-01': [SKIP], 143 144 ##################### SLOW TESTS ##################### 145 146 # This takes a long time to run (~100 seconds). It should only be run 147 # by the really patient. 148 'js1_5/GC/regress-324278': [SKIP], 149 150 # This takes a long time to run because our indexOf operation is 151 # pretty slow - it causes a lot of GCs; see issue 152 # #926379. We could consider marking this SKIP because it takes a 153 # while to run to completion. 154 'js1_5/GC/regress-338653': [SKIP], 155 156 # This test is designed to run until it runs out of memory. This takes 157 # a very long time because it builds strings character by character 158 # and compiles a lot of regular expressions. We could consider marking 159 # this SKIP because it takes a while to run to completion. 160 'js1_5/GC/regress-346794': [SKIP], 161 162 # Runs out of memory while trying to build huge string of 'x' 163 # characters. This takes a long time to run (~32 seconds). 164 'js1_5/GC/regress-348532': [SKIP], 165 166 167 # Runs for too long: huge array with getters and setters. As it says 168 # in the test: "This test will probably run out of memory". 169 'js1_5/extensions/regress-345967': [SKIP], 170 171 172 ##################### FLAKY TESTS ##################### 173 174 # These tests time out in debug mode but pass in product mode 175 'js1_5/Regress/regress-360969-05': [PASS, ['mode == debug', TIMEOUT, NO_VARIANTS]], 176 'js1_5/Regress/regress-360969-06': [PASS, ['mode == debug', TIMEOUT, NO_VARIANTS]], 177 'js1_5/extensions/regress-365527': [PASS, SLOW, ['mode == debug', TIMEOUT, NO_VARIANTS]], 178 179 'js1_5/Regress/regress-280769-3': [PASS, ['mode == debug', FAIL]], 180 'js1_5/Regress/regress-203278-1': [PASS, ['mode == debug', FAIL]], 181 'js1_5/Regress/regress-244470': [PASS, ['mode == debug', FAIL]], 182 'ecma_3/RegExp/regress-209067': [PASS, ['mode == debug', FAIL]], 183 'js1_5/GC/regress-278725': [PASS, ['mode == debug', FAIL]], 184 # http://b/issue?id=1206983 185 'js1_5/Regress/regress-367561-03': [PASS, ['mode == debug', FAIL]], 186 'ecma/Date/15.9.5.10-2': [PASS, FAIL, ['mode == debug', TIMEOUT, NO_VARIANTS]], 187 188 # These tests create two Date objects just after each other and 189 # expects them to match. Sometimes this happens on the border 190 # between one second and the next. 191 'ecma/Date/15.9.2.1': [PASS, FAIL], 192 'ecma/Date/15.9.2.2-1': [PASS, FAIL], 193 'ecma/Date/15.9.2.2-2': [PASS, FAIL], 194 'ecma/Date/15.9.2.2-3': [PASS, FAIL], 195 'ecma/Date/15.9.2.2-4': [PASS, FAIL], 196 'ecma/Date/15.9.2.2-5': [PASS, FAIL], 197 'ecma/Date/15.9.2.2-6': [PASS, FAIL], 198 199 # 1026139: These date tests fail on arm and mips. 200 # These date tests also fail in a time zone without daylight saving time. 201 'ecma/Date/15.9.5.29-1': [PASS, FAIL], 202 'ecma/Date/15.9.5.28-1': [PASS, FAIL], 203 204 # 1050186: Arm/MIPS vm is broken; probably unrelated to dates 205 'ecma/Array/15.4.4.5-3': [PASS, ['arch == arm or arch == mipsel or arch == mips', FAIL]], 206 'ecma/Date/15.9.5.22-2': [PASS, ['arch == arm or arch == mipsel or arch == mips', FAIL]], 207 208 # Flaky test that fails due to what appears to be a bug in the test. 209 # Occurs depending on current time 210 'ecma/Date/15.9.5.8': [PASS, FAIL], 211 212 # Severely brain-damaged test. Access to local variables must not 213 # be more than 2.5 times faster than access to global variables? WTF? 214 'js1_5/Regress/regress-169559': [PASS, FAIL], 215 216 217 # Test that rely on specific timezone (not working in Denmark). 218 'js1_5/Regress/regress-58116': [PASS, FAIL], 219 220 221 # Flaky random() test. Tests the distribution of calls to Math.random(). 222 'js1_5/Regress/regress-211590': [PASS, FAIL], 223 224 225 # Flaky tests; expect BigO-order computations to yield 1, but the code 226 # cannot handle outliers. See bug #925864. 227 'ecma_3/RegExp/regress-311414': [PASS, FAIL], 228 'ecma_3/RegExp/regress-289669': [PASS, FAIL], 229 'js1_5/String/regress-314890': [PASS, FAIL], 230 'js1_5/String/regress-56940-01': [PASS, FAIL], 231 'js1_5/String/regress-56940-02': [PASS, FAIL], 232 'js1_5/String/regress-157334-01': [PASS, FAIL], 233 'js1_5/String/regress-322772': [PASS, FAIL], 234 'js1_5/Array/regress-99120-01': [PASS, FAIL, NO_VARIANTS], 235 'js1_5/Array/regress-99120-02': [PASS, FAIL], 236 'js1_5/Regress/regress-347306-01': [PASS, FAIL], 237 'js1_5/Regress/regress-416628': [PASS, FAIL, ['mode == debug', TIMEOUT, NO_VARIANTS]], 238 239 240 # The following two tests assume that daylight savings time starts first 241 # Sunday in April. This is not true when executing the tests outside 242 # California! In Denmark the adjustment starts one week earlier. 243 # Tests based on shell that use dates in this gap are flaky. 244 'ecma/Date/15.9.5.10-1': [PASS, FAIL], 245 'ecma/Date/15.9.5.12-1': [PASS, FAIL], 246 'ecma/Date/15.9.5.14': [PASS, FAIL], 247 'ecma/Date/15.9.5.34-1': [PASS, FAIL], 248 249 250 # These tests sometimes pass (in particular on Windows). They build up 251 # a lot of stuff on the stack, which normally causes a stack overflow, 252 # but sometimes it makes it through? 253 'js1_5/Regress/regress-98901': [PASS, FAIL], 254 255 256 # Tests that sorting arrays of ints is less than 3 times as fast 257 # as sorting arrays of strings. 258 'js1_5/extensions/regress-371636': [PASS, FAIL, ['mode == debug', TIMEOUT, NO_VARIANTS]], 259 260 261 # Tests depend on GC timings. Inherently flaky. 262 'js1_5/GC/regress-383269-01': [PASS, FAIL], 263 'js1_5/GC/regress-383269-02': [PASS, FAIL], 264 'js1_5/Regress/regress-404755': [PASS, FAIL], 265 266 267 # Test that depends on timer resolution. Fails every now and then 268 # if we're unlucky enough to get a context switch at a bad time. 269 # TODO(mstarzinger): Switch off TF on windows due to timeouts. 270 'js1_5/extensions/regress-363258': [PASS, FAIL, ['system == windows', NO_VARIANTS]], 271 272 273 # Test that assumes specific runtime for a regexp, flaky in debug mode. 274 'ecma_3/RegExp/regress-85721': [PASS, ['mode == debug', FAIL]], 275 276 277 # Test that assumes specific execution time, flaky in debug mode. 278 'js1_5/Array/regress-101964': [PASS, ['mode == debug', FAIL]], 279 280 281 ##################### INCOMPATIBLE TESTS ##################### 282 283 # This section is for tests that fail in both V8 and JSC. Thus they 284 # have been determined to be incompatible between Mozilla and V8/JSC. 285 286 # Any local 'arguments' variable should not be allowed to shadow the value 287 # returned via the indirect 'arguments' property accessor. 288 'js1_4/Functions/function-001': [FAIL_OK], 289 290 # toPrecision argument restricted to range 1..21 in JSC/V8 and ECMA-262 291 'js1_5/Regress/regress-452346': [FAIL_OK], 292 293 # Fail because it calls builtins as functions and do not expect the 294 # builtin to have undefined as the receiver. 295 'ecma/String/15.5.4.6-2': [FAIL_OK], 296 297 # Fail because it expects String.prototype.split to distinguish whether 298 # separator was undefined or not passed at all. 299 'ecma/String/15.5.4.8-2': [FAIL_OK], 300 301 # Fail because of toLowerCase and toUpperCase conversion. 302 'ecma/String/15.5.4.11-2': [FAIL_OK], 303 'ecma/String/15.5.4.11-5': [FAIL_OK], 304 'ecma/String/15.5.4.12-1': [FAIL_OK], 305 'ecma/String/15.5.4.12-4': [FAIL_OK], 306 307 # This test uses an older version of the unicode standard that fails 308 # us because we correctly convert the armenian small ligature ech-yiwn 309 # to the two upper-case characters ECH and YIWN, whereas the older 310 # unicode version converts it to itself. 311 'ecma/String/15.5.4.12-5': [FAIL_OK], 312 313 # Creates a linked list of arrays until we run out of memory or timeout. 314 'js1_5/Regress/regress-312588': [SKIP], 315 316 317 # Runs out of memory because it compiles huge functions. 318 'js1_5/Function/regress-338001': [FAIL_OK], 319 'js1_5/Function/regress-338121-01': [FAIL_OK], 320 'js1_5/Function/regress-338121-02': [FAIL_OK], 321 'js1_5/Function/regress-338121-03': [FAIL_OK], 322 323 # Expectes 'prototype' property of functions to be enumerable. 324 'js1_5/Function/10.1.6-01': [FAIL_OK], 325 326 #:=== RegExp:=== 327 # We don't match the syntax error message of Mozilla for invalid 328 # RegExp flags. 329 'ecma_3/RegExp/15.10.4.1-6': [FAIL_OK], 330 331 # PCRE's match limit is reached. SpiderMonkey hangs on the first one, 332 # JSC returns true somehow. Maybe they up the match limit? There is 333 # an open V8 bug 676063 about this. 334 # TODO(yangguo): Hangs on complex regexp. Please investigate if this gives 335 # any useful coverage. 336 'ecma_3/RegExp/regress-330684': [SKIP], 337 338 339 # This test contains a regexp that runs exponentially long. Spidermonkey 340 # standalone will hang, though apparently inside Firefox it will trigger a 341 # long-running-script timeout. JSCRE passes by hitting the matchLimit and 342 # just pretending that an exhaustive search found no match. 343 # TODO(yangguo): Hangs on complex regexp. Please investigate if this gives 344 # any useful coverage. 345 'ecma_3/RegExp/regress-307456': [SKIP], 346 347 348 # We do not detect overflow in bounds for back references and {} 349 # quantifiers. Might fix by parsing numbers differently? 350 'js1_5/Regress/regress-230216-2': [FAIL_OK], 351 352 353 # BUG(v8:3767) 354 'js1_5/Regress/regress-280769-2': [PASS, ['arch == arm64', SKIP]], 355 356 # Regexps too big. 357 'js1_5/Regress/regress-280769-1': [SKIP], 358 'js1_5/Regress/regress-280769-5': [SKIP], 359 360 361 # We do not support static RegExp.multiline - should we?. 362 'js1_2/regexp/RegExp_multiline': [FAIL_OK], 363 'js1_2/regexp/RegExp_multiline_as_array': [FAIL_OK], 364 'js1_2/regexp/beginLine': [FAIL_OK], 365 'js1_2/regexp/endLine': [FAIL_OK], 366 367 # We no longer let calls to test and exec with no argument implicitly 368 # use the previous input. 369 'js1_2/regexp/RegExp_input': [FAIL_OK], 370 'js1_2/regexp/RegExp_input_as_array': [FAIL_OK], 371 372 373 # To be compatible with safari typeof a regexp yields 'function'; 374 # in firefox it yields 'object'. 375 'js1_2/function/regexparg-1': [FAIL_OK], 376 377 378 # Date trouble? 379 'js1_5/Date/regress-301738-02': [FAIL_OK], 380 381 382 # This test fails for all browsers on in the CET timezone. 383 'ecma/Date/15.9.5.35-1': [PASS, FAIL_OK], 384 385 386 # Spidermonkey allows stuff in parenthesis directly after the minutes 387 # in a date. JSC does not, so we don't either. 388 'js1_5/Date/regress-309925-02': [FAIL_OK], 389 390 391 # Print string after deleting array element? 392 'js1_5/Expressions/regress-96526-delelem': [FAIL_OK], 393 394 395 # Stack overflows should be InternalError: too much recursion? 396 'js1_5/Regress/regress-234389': [FAIL_OK], 397 398 399 # This may very well be a bogus test. I'm not sure yet. 400 'js1_5/Regress/regress-320119': [FAIL_OK], 401 402 403 # No support for toSource(). 404 'js1_5/Regress/regress-313967-01': [FAIL_OK], 405 'js1_5/Regress/regress-313967-02': [FAIL_OK], 406 'js1_5/extensions/regress-459606': [FAIL_OK], 407 408 # This fails because we don't have stack space for Function.prototype.apply 409 # with very large numbers of arguments. The test uses 2^24 arguments. 410 'js1_5/Array/regress-350256-03': [FAIL_OK], 411 412 413 # Extra arguments not handled properly in String.prototype.match 414 'js1_5/Regress/regress-179524': [FAIL_OK], 415 416 417 # Uncategorized failures. Please help categorize (or fix) these failures. 418 'js1_5/Regress/regress-172699': [FAIL_OK], 419 420 421 # Assumes that the prototype of a function is enumerable. Non-ECMA, 422 # see section 15.3.3.1, page 86. 423 'ecma/GlobalObject/15.1.2.2-1': [FAIL_OK], 424 'ecma/GlobalObject/15.1.2.3-1': [FAIL_OK], 425 'ecma/GlobalObject/15.1.2.4': [FAIL_OK], 426 'ecma/GlobalObject/15.1.2.5-1': [FAIL_OK], 427 'ecma/GlobalObject/15.1.2.6': [FAIL_OK], 428 'ecma/GlobalObject/15.1.2.7': [FAIL_OK], 429 430 431 # Leading zero no longer signal octal numbers (ECMA-262 Annex E 15.1.2.2). 432 'ecma/GlobalObject/15.1.2.2-2': [FAIL_OK], 433 434 435 # Tests that rely on specific details of function decompilation or 436 # print strings for errors. Non-ECMA behavior. 437 'js1_2/function/tostring-2': [FAIL_OK], 438 'js1_2/Objects/toString-001': [FAIL_OK], 439 'js1_5/LexicalConventions/regress-469940': [FAIL_OK], 440 'js1_5/Exceptions/regress-332472': [FAIL_OK], 441 'js1_5/Regress/regress-173067': [FAIL_OK], 442 'js1_5/Regress/regress-328664': [FAIL_OK], 443 'js1_5/Regress/regress-252892': [FAIL_OK], 444 'js1_5/Regress/regress-352208': [FAIL_OK], 445 'ecma_3/Array/15.4.5.1-01': [FAIL_OK], 446 'ecma_3/Array/regress-387501': [FAIL_OK], 447 'ecma_3/LexicalConventions/7.9.1': [FAIL_OK], 448 'ecma_3/RegExp/regress-375711': [FAIL_OK], 449 'ecma_3/Unicode/regress-352044-01': [FAIL_OK], 450 'ecma_3/extensions/regress-274152': [FAIL_OK], 451 'js1_5/Regress/regress-372364': [FAIL_OK], 452 'js1_5/Regress/regress-420919': [FAIL_OK], 453 'js1_5/Regress/regress-422348': [FAIL_OK], 454 'js1_5/Regress/regress-410852': [FAIL_OK], 455 'ecma_3/RegExp/regress-375715-04': [FAIL_OK], 456 'js1_5/decompilation/regress-456964-01': [FAIL_OK], 457 'js1_5/decompilation/regress-437288-02': [FAIL_OK], 458 'js1_5/decompilation/regress-457824': [FAIL_OK], 459 'js1_5/decompilation/regress-460116-01': [FAIL_OK], 460 'js1_5/decompilation/regress-460116-02': [FAIL_OK], 461 'js1_5/decompilation/regress-460501': [FAIL_OK], 462 'js1_5/decompilation/regress-460116-03': [FAIL_OK], 463 'js1_5/decompilation/regress-461110': [FAIL_OK], 464 465 466 # Tests that use uneval. Non-ECMA. 467 'js1_5/GC/regress-418128': [FAIL_OK], 468 'js1_5/extensions/regress-465276': [FAIL_OK], 469 'js1_5/Error/regress-465377': [FAIL_OK], 470 471 # Tests that use the watch method. Non-ECMA. 472 'js1_5/extensions/regress-435345-01': [FAIL_OK], 473 'js1_5/extensions/regress-455413': [FAIL_OK], 474 475 476 # Uses Mozilla-specific QName, XML, XMLList and Iterator. 477 'js1_5/Regress/regress-407323': [FAIL_OK], 478 'js1_5/Regress/regress-407957': [FAIL_OK], 479 480 481 # Relies on JavaScript 1.2 / 1.3 deprecated features. 482 'js1_2/function/String': [FAIL_OK], 483 'js1_2/operator/equality': [FAIL_OK], 484 'js1_2/version120/boolean-001': [FAIL_OK], 485 'js1_2/String/concat': [FAIL_OK], 486 'js1_2/function/Function_object': [FAIL_OK], 487 'js1_2/function/tostring-1': [FAIL_OK], 488 'js1_2/version120/regress-99663': [FAIL_OK], 489 'js1_2/regexp/RegExp_lastIndex': [FAIL_OK], 490 'js1_2/regexp/string_split': [FAIL_OK], 491 492 493 # RegExps are not callable. 494 'js1_2/regexp/simple_form': [FAIL_OK], 495 'js1_2/regexp/regress-6359': [FAIL_OK], 496 'js1_2/regexp/regress-9141': [FAIL_OK], 497 'js1_5/Regress/regress-224956': [FAIL_OK], 498 'js1_5/Regress/regress-325925': [FAIL_OK], 499 'ecma_2/RegExp/regress-001': [FAIL_OK], 500 501 # We do not check for bad surrogate pairs when quoting strings. 502 'js1_5/Regress/regress-315974': [FAIL_OK], 503 504 505 # Use unsupported "watch". 506 'js1_5/Regress/regress-213482': [FAIL_OK], 507 'js1_5/Regress/regress-240577': [FAIL_OK], 508 'js1_5/Regress/regress-355344': [FAIL_OK], 509 'js1_5/Object/regress-362872-01': [FAIL_OK], 510 'js1_5/Object/regress-362872-02': [FAIL_OK], 511 'js1_5/Regress/regress-361467': [FAIL_OK], 512 'js1_5/Regress/regress-385393-06': [FAIL_OK], 513 'js1_5/Regress/regress-506567': [FAIL_OK], 514 515 516 # Use special Mozilla getter/setter syntax 517 'js1_5/Regress/regress-354924': [FAIL_OK], 518 'js1_5/Regress/regress-355341': [FAIL_OK], 519 'js1_5/GC/regress-316885-01': [FAIL_OK], 520 'js1_5/GetSet/getset-002': [FAIL_OK], 521 'js1_5/GetSet/regress-353264': [FAIL_OK], 522 'js1_5/Regress/regress-361617': [FAIL_OK], 523 'js1_5/Regress/regress-362583': [FAIL_OK], 524 'js1_5/extensions/regress-356378': [FAIL_OK], 525 'js1_5/extensions/regress-452178': [FAIL_OK], 526 527 528 # Requires Mozilla-specific strict mode or options() function. 529 'ecma_3/Object/8.6.1-01': [FAIL_OK], 530 'js1_5/Exceptions/regress-315147': [FAIL_OK], 531 'js1_5/Regress/regress-106244': [FAIL_OK], 532 'js1_5/Regress/regress-317533': [FAIL_OK], 533 'js1_5/Regress/regress-323314-1': [FAIL_OK], 534 'js1_5/Regress/regress-352197': [FAIL_OK], 535 536 537 # Equivalent to assert(false). 538 'ecma_2/RegExp/exec-001': [FAIL_OK], 539 'ecma_2/String/replace-001': [FAIL_OK], 540 541 542 # We do not strip unicode format control characters. This is really 543 # required for working with non-latin character sets. We match JSC 544 # and IE here. Firefox matches the spec (section 7.1). 545 'ecma_3/Unicode/uc-001': [FAIL_OK], 546 547 548 # A non-breaking space doesn't match \s in a regular expression. This 549 # behaviour matches JSC. All the VMs have different behaviours in which 550 # characters match \s so we do the same as JSC until they change. 551 'ecma_3/Unicode/uc-002': [PASS, FAIL_OK], 552 553 554 # String.prototype.split on empty strings always returns an array 555 # with one element (as specified in ECMA-262). 556 'js1_2/Array/array_split_1': [FAIL_OK], 557 558 559 # The concat() method is defined in Array.prototype; not Array. 560 'js1_5/Array/regress-313153': [FAIL_OK], 561 562 # The join() method is defined on Array.prototype; not Array. 563 'js1_5/Array/regress-474529': [FAIL_OK], 564 565 # The lastIndexOf() method is defined on Array.prototype, not Array. 566 'ecma_3/Array/15.5.4.8-01': [FAIL_OK], 567 568 # Properties fileName, and lineNumber of Error instances are 569 # not supported. Mozilla specific extension. 570 'js1_5/Exceptions/errstack-001': [FAIL_OK], 571 'js1_5/Exceptions/regress-257751': [FAIL_OK], 572 'js1_5/Regress/regress-119719': [FAIL_OK], 573 'js1_5/Regress/regress-167328': [FAIL_OK], 574 'js1_5/Regress/regress-243869': [FAIL_OK], 575 576 577 # Unsupported import/export and <xml> literals. Mozilla extensions. 578 'js1_5/Regress/regress-249211': [FAIL_OK], 579 'js1_5/Regress/regress-309242': [FAIL_OK], 580 'js1_5/Regress/regress-350692': [FAIL_OK], 581 'js1_5/extensions/regress-421621': [FAIL_OK], 582 'js1_5/extensions/regress-432075': [FAIL_OK], 583 584 585 # The length of Error functions is 1 not 3. 586 'js1_5/Exceptions/regress-123002': [FAIL_OK], 587 588 589 # Reserved keywords as function names, etc is not supported. 590 'js1_5/LexicalConventions/regress-343675': [FAIL_OK], 591 592 593 # Tests if future reserved keywords of ECMA-262, edition 3 emit warnings. We 594 # implement the edition 5 behaviour and fail on use of edition 5 future 595 # reserved keywords as identifiers. 596 'js1_5/Regress/regress-240317': [FAIL_OK], 597 598 599 # Unsupported list comprehensions: [ ... for ... ] and for each. 600 'js1_5/Regress/regress-352009': [FAIL_OK], 601 'js1_5/Regress/regress-349648': [FAIL_OK], 602 603 604 # Expects top level arguments (passed on command line?) to be 605 # the empty string? 606 'js1_5/Regress/regress-336100': [FAIL_OK], 607 608 609 # This test fails due to http://code.google.com/p/v8/issues/detail?id=187 610 # Failure to clear captures when a lookahead is unwound. 611 'ecma_3/RegExp/15.10.2-1': [PASS, FAIL_OK], 612 613 # This test requires a failure if we try to compile a function with more 614 # than 65536 arguments. This seems to be a Mozilla restriction. 615 'js1_5/Regress/regress-290575': [PASS, FAIL_OK], 616 617 618 # Function is deletable in V8 and JSC. 619 'js1_5/Regress/regress-352604': [FAIL_OK], 620 621 622 # Cannot call strings as functions. Expects not to crash. 623 'js1_5/Regress/regress-417893': [FAIL_OK], 624 625 626 # Illegal escape-sequences in string literals. Has already been fixed 627 # by most engines (i.e. V8, JSC, Opera and FF). 628 'ecma/Array/15.4.5.1-1': [FAIL_OK], 629 'ecma/LexicalConventions/7.7.4': [FAIL_OK], 630 'ecma_2/RegExp/hex-001': [FAIL_OK], 631 'js1_2/regexp/hexadecimal': [FAIL_OK], 632 633 634 # The source field of RegExp objects is properly escaped. We match JSC. 635 'ecma_2/RegExp/constructor-001': [FAIL_OK], 636 'ecma_2/RegExp/function-001': [FAIL_OK], 637 'ecma_2/RegExp/properties-001': [FAIL_OK], 638 639 640 # Negative hexadecimal literals are parsed as NaN. This test is outdated. 641 'ecma/TypeConversion/9.3.1-3': [FAIL_OK], 642 643 ##################### FAILING TESTS ##################### 644 645 # This section is for tests that fail in V8 and pass in JSC. 646 # Tests that fail in both V8 and JSC belong in the FAIL_OK 647 # category. 648 649 # This fails because we don't handle Function.prototype.apply with very large 650 # numbers of arguments (depending on max stack size). 350256-02 needs more 651 # than 4Mbytes of stack space. 652 'js1_5/Array/regress-350256-02': [FAIL], 653 654 655 # This test seems designed to fail (it produces a 700Mbyte string). 656 # We fail on out of memory. The important thing is not to crash. 657 'js1_5/Regress/regress-303213': [FAIL, ['mode == debug', TIMEOUT, NO_VARIANTS]], 658 659 # This test fails since we now throw in String.prototype.match when apply 660 # is given null or undefined as this argument (and so does firefox nightly). 661 'js1_5/Regress/regress-295052': [FAIL], 662 663 # Bug 1202592: New ecma_3/String/15.5.4.11 is failing. 664 'ecma_3/String/15.5.4.11': [FAIL], 665 666 # Bug 1202597: New js1_5/Expressions/regress-394673 is failing. 667 # Marked as: Will not fix. V8 throws an acceptable RangeError. 668 'js1_5/Expressions/regress-394673': [FAIL], 669 670 671 # Bug 762: http://code.google.com/p/v8/issues/detail?id=762 672 # We do not correctly handle assignments within "with" 673 'ecma_3/Statements/12.10-01': [FAIL], 674 675 # https://bugs.chromium.org/p/v8/issues/detail?id=4647 676 'ecma_3/FunExpr/fe-001': [FAIL_OK], 677 678 ##################### MOZILLA EXTENSION TESTS ##################### 679 680 'ecma/extensions/15.1.2.1-1': [FAIL_OK], 681 'ecma_3/extensions/regress-385393-03': [FAIL_OK], 682 'ecma_3/extensions/7.9.1': [FAIL_OK], 683 'js1_5/extensions/catchguard-001': [FAIL_OK], 684 'js1_5/extensions/catchguard-002': [FAIL_OK], 685 'js1_5/extensions/catchguard-003': [FAIL_OK], 686 'js1_5/extensions/getset-001': [FAIL_OK], 687 'js1_5/extensions/getset-003': [FAIL_OK], 688 'js1_5/extensions/no-such-method': [FAIL_OK], 689 'js1_5/extensions/regress-104077': [FAIL_OK], 690 'js1_5/extensions/regress-226078': [FAIL_OK], 691 'js1_5/extensions/regress-303277': [FAIL_OK], 692 'js1_5/extensions/regress-304897': [FAIL_OK], 693 'js1_5/extensions/regress-306738': [FAIL_OK], 694 'js1_5/extensions/regress-311161': [FAIL_OK], 695 'js1_5/extensions/regress-311583': [FAIL_OK], 696 'js1_5/extensions/regress-311792-01': [FAIL_OK], 697 'js1_5/extensions/regress-312278': [FAIL_OK], 698 'js1_5/extensions/regress-313630': [FAIL_OK], 699 'js1_5/extensions/regress-313803': [FAIL_OK], 700 'js1_5/extensions/regress-314874': [FAIL_OK], 701 'js1_5/extensions/regress-322957': [FAIL_OK], 702 'js1_5/extensions/regress-328556': [FAIL_OK], 703 'js1_5/extensions/regress-333541': [FAIL_OK], 704 'js1_5/extensions/regress-335700': [FAIL_OK], 705 'js1_5/extensions/regress-336409-1': [FAIL_OK], 706 'js1_5/extensions/regress-336409-2': [FAIL_OK], 707 'js1_5/extensions/regress-336410-2': [FAIL_OK], 708 'js1_5/extensions/regress-346494-01': [FAIL_OK], 709 'js1_5/extensions/regress-346494': [FAIL_OK], 710 'js1_5/extensions/regress-347306-02': [FAIL_OK], 711 'js1_5/extensions/regress-348986': [FAIL_OK], 712 'js1_5/extensions/regress-349616': [FAIL_OK], 713 'js1_5/extensions/regress-350312-02': [FAIL_OK], 714 'js1_5/extensions/regress-350312-03': [FAIL_OK], 715 'js1_5/extensions/regress-350531': [FAIL_OK], 716 'js1_5/extensions/regress-351102-01': [FAIL_OK], 717 'js1_5/extensions/regress-351102-02': [FAIL_OK], 718 'js1_5/extensions/regress-351102-06': [FAIL_OK], 719 'js1_5/extensions/regress-351973': [FAIL_OK], 720 'js1_5/extensions/regress-352060': [FAIL_OK], 721 'js1_5/extensions/regress-352094': [FAIL_OK], 722 'js1_5/extensions/regress-352261': [FAIL_OK], 723 'js1_5/extensions/regress-352281': [FAIL_OK], 724 'js1_5/extensions/regress-352455': [FAIL_OK], 725 'js1_5/extensions/regress-352604': [FAIL_OK], 726 'js1_5/extensions/regress-353214': [FAIL_OK], 727 'js1_5/extensions/regress-355339': [FAIL_OK], 728 'js1_5/extensions/regress-355497': [FAIL_OK], 729 'js1_5/extensions/regress-355622': [FAIL_OK], 730 'js1_5/extensions/regress-355736': [FAIL_OK], 731 'js1_5/extensions/regress-356085': [FAIL_OK], 732 'js1_5/extensions/regress-356106': [FAIL_OK], 733 'js1_5/extensions/regress-358594-01': [FAIL_OK], 734 'js1_5/extensions/regress-358594-02': [FAIL_OK], 735 'js1_5/extensions/regress-358594-03': [FAIL_OK], 736 'js1_5/extensions/regress-358594-04': [FAIL_OK], 737 'js1_5/extensions/regress-358594-05': [FAIL_OK], 738 'js1_5/extensions/regress-358594-06': [FAIL_OK], 739 'js1_5/extensions/regress-361346': [FAIL_OK], 740 'js1_5/extensions/regress-361360': [FAIL_OK], 741 'js1_5/extensions/regress-361558': [FAIL_OK], 742 'js1_5/extensions/regress-361571': [FAIL_OK], 743 'js1_5/extensions/regress-361856': [FAIL_OK], 744 'js1_5/extensions/regress-361964': [FAIL_OK], 745 'js1_5/extensions/regress-363988': [FAIL_OK], 746 'js1_5/extensions/regress-365869': [FAIL_OK], 747 748 # Uses non ES5 compatible syntax for setter 749 'js1_5/extensions/regress-367501-01': [FAIL_OK], 750 'js1_5/extensions/regress-367501-02': [FAIL_OK], 751 'js1_5/extensions/regress-367501-03': [FAIL_OK], 752 'js1_5/extensions/regress-367501-04': [FAIL_OK], 753 754 'js1_5/extensions/regress-367630': [FAIL_OK], 755 'js1_5/extensions/regress-367923': [FAIL_OK], 756 'js1_5/extensions/regress-368859': [FAIL_OK], 757 'js1_5/extensions/regress-369696-01': [FAIL_OK], 758 'js1_5/extensions/regress-369696-02': [FAIL_OK], 759 'js1_5/extensions/regress-369696-03': [FAIL_OK], 760 'js1_5/extensions/regress-374589': [FAIL_OK], 761 'js1_5/extensions/regress-375801': [FAIL_OK], 762 'js1_5/extensions/regress-376052': [FAIL_OK], 763 'js1_5/extensions/regress-379523': [FAIL_OK], 764 'js1_5/extensions/regress-380581': [FAIL_OK], 765 'js1_5/extensions/regress-380831': [FAIL_OK], 766 'js1_5/extensions/regress-381205': [FAIL_OK], 767 'js1_5/extensions/regress-381211': [FAIL_OK], 768 'js1_5/extensions/regress-381304': [FAIL_OK], 769 'js1_5/extensions/regress-382509': [FAIL_OK], 770 'js1_5/extensions/regress-383965': [FAIL_OK], 771 'js1_5/extensions/regress-384680': [FAIL_OK], 772 'js1_5/extensions/regress-385393-09': [FAIL_OK], 773 'js1_5/extensions/regress-407501': [FAIL_OK], 774 'js1_5/extensions/regress-418730': [FAIL_OK], 775 'js1_5/extensions/regress-420612': [FAIL_OK], 776 'js1_5/extensions/regress-420869-01': [FAIL_OK], 777 'js1_5/extensions/regress-424257': [FAIL_OK], 778 'js1_5/extensions/regress-424683-01': [FAIL_OK], 779 'js1_5/extensions/regress-429739': [FAIL_OK], 780 'js1_5/extensions/regress-454142': [FAIL_OK], 781 'js1_5/extensions/regress-465145': [FAIL_OK], 782 'js1_5/extensions/regress-469625': [FAIL_OK], 783 'js1_5/extensions/regress-472787': [FAIL_OK], 784 'js1_5/extensions/regress-44009': [FAIL_OK], 785 'js1_5/extensions/regress-50447-1': [FAIL_OK], 786 'js1_5/extensions/regress-50447': [FAIL_OK], 787 'js1_5/extensions/regress-90596-001': [FAIL_OK], 788 'js1_5/extensions/regress-90596-002': [FAIL_OK], 789 'js1_5/extensions/regress-96284-001': [FAIL_OK], 790 'js1_5/extensions/regress-96284-002': [FAIL_OK], 791 'js1_5/extensions/toLocaleFormat-01': [FAIL_OK], 792 'js1_5/extensions/toLocaleFormat-02': [FAIL_OK], 793 794 # TODO(yangguo): Both tests have complex regular expressions (nested (.*)* 795 # and the like). Please investigate if these tests provide any coverage. 796 # Furthermore, an exception is expected which is not thrown by v8. 797 'js1_5/extensions/regress-330569': [SKIP], 798 'js1_5/extensions/regress-351448': [SKIP], 799 # In the 64-bit version, this test takes longer to run out of memory 800 # than it does in the 32-bit version when attempting to generate a huge 801 # error message in debug mode. 802 'js1_5/extensions/regress-336410-1': [FAIL_OK, ['mode == debug and arch == x64', TIMEOUT, NO_VARIANTS]], 803 804 ##################### DECOMPILATION TESTS ##################### 805 806 # We don't really about the outcome of running the 807 # decompilation tests as long as they don't crash or 808 # timeout. 809 810 'js1_5/decompilation/regress-344120': [PASS, FAIL], 811 'js1_5/decompilation/regress-346892': [PASS, FAIL], 812 'js1_5/decompilation/regress-346902': [PASS, FAIL], 813 'js1_5/decompilation/regress-346904': [PASS, FAIL], 814 'js1_5/decompilation/regress-346915': [PASS, FAIL], 815 'js1_5/decompilation/regress-349484': [PASS, FAIL], 816 'js1_5/decompilation/regress-349489': [PASS, FAIL], 817 'js1_5/decompilation/regress-349491': [PASS, FAIL], 818 'js1_5/decompilation/regress-349596': [PASS, FAIL], 819 'js1_5/decompilation/regress-349650': [PASS, FAIL], 820 'js1_5/decompilation/regress-349663': [PASS, FAIL], 821 'js1_5/decompilation/regress-350242': [PASS, FAIL], 822 'js1_5/decompilation/regress-350263': [PASS, FAIL], 823 'js1_5/decompilation/regress-350271': [PASS, FAIL], 824 'js1_5/decompilation/regress-350666': [PASS, FAIL], 825 'js1_5/decompilation/regress-350670': [PASS, FAIL], 826 'js1_5/decompilation/regress-351104': [PASS, FAIL], 827 'js1_5/decompilation/regress-351219': [PASS, FAIL], 828 'js1_5/decompilation/regress-351336': [PASS, FAIL], 829 'js1_5/decompilation/regress-351597': [PASS, FAIL], 830 'js1_5/decompilation/regress-351625': [PASS, FAIL], 831 'js1_5/decompilation/regress-351626': [PASS, FAIL], 832 'js1_5/decompilation/regress-351693': [PASS, FAIL], 833 'js1_5/decompilation/regress-351705': [PASS, FAIL], 834 'js1_5/decompilation/regress-351793': [PASS, FAIL], 835 'js1_5/decompilation/regress-352013': [PASS, FAIL], 836 'js1_5/decompilation/regress-352022': [PASS, FAIL], 837 'js1_5/decompilation/regress-352073': [PASS, FAIL], 838 'js1_5/decompilation/regress-352202': [PASS, FAIL], 839 'js1_5/decompilation/regress-352312': [PASS, FAIL], 840 'js1_5/decompilation/regress-352360': [PASS, FAIL], 841 'js1_5/decompilation/regress-352375': [PASS, FAIL], 842 'js1_5/decompilation/regress-352453': [PASS, FAIL], 843 'js1_5/decompilation/regress-352649': [PASS, FAIL], 844 'js1_5/decompilation/regress-352873-01': [PASS, FAIL], 845 'js1_5/decompilation/regress-352873-02': [PASS, FAIL], 846 'js1_5/decompilation/regress-353000': [PASS, FAIL], 847 'js1_5/decompilation/regress-353120': [PASS, FAIL], 848 'js1_5/decompilation/regress-353146': [PASS, FAIL], 849 'js1_5/decompilation/regress-354878': [PASS, FAIL], 850 'js1_5/decompilation/regress-354910': [PASS, FAIL], 851 'js1_5/decompilation/regress-355992': [PASS, FAIL], 852 'js1_5/decompilation/regress-356083': [PASS, FAIL], 853 'js1_5/decompilation/regress-356248': [PASS, FAIL], 854 'js1_5/decompilation/regress-371692': [PASS, FAIL], 855 'js1_5/decompilation/regress-373678': [PASS, FAIL], 856 'js1_5/decompilation/regress-375639': [PASS, FAIL], 857 'js1_5/decompilation/regress-375882': [PASS, FAIL], 858 'js1_5/decompilation/regress-376564': [PASS, FAIL], 859 'js1_5/decompilation/regress-383721': [PASS, FAIL], 860 'js1_5/decompilation/regress-406555': [PASS, FAIL], 861 'js1_5/decompilation/regress-460870': [PASS, FAIL], 862}], # ALWAYS 863 864 865['no_i18n == True and mode == debug', { 866 # Tests too slow for no18n debug. 867 'ecma_3/Statements/regress-302439': [PASS, FAST_VARIANTS], 868 'js1_5/Regress/regress-98901': [SKIP], 869 'ecma_3/RegExp/perlstress-001': [PASS, FAST_VARIANTS], 870 'js1_5/extensions/regress-311161': [FAIL_OK, FAST_VARIANTS], 871}], # 'no_i18n == True and mode == debug' 872 873 874['arch == arm or arch == arm64', { 875 876 # BUG(3251229): Times out when running new crankshaft test script. 877 'ecma_3/RegExp/regress-311414': [SKIP], 878 'ecma/Date/15.9.5.8': [SKIP], 879 'ecma/Date/15.9.5.10-2': [SKIP], 880 'ecma/Date/15.9.5.11-2': [SKIP], 881 'ecma/Date/15.9.5.12-2': [SKIP], 882 'js1_5/Array/regress-99120-02': [SKIP], 883 'js1_5/extensions/regress-371636': [SKIP], 884 'js1_5/Regress/regress-203278-1': [SKIP], 885 'js1_5/Regress/regress-404755': [SKIP], 886 'js1_5/Regress/regress-451322': [SKIP], 887 888 # BUG(1040): Allow this test to timeout. 889 'js1_5/GC/regress-203278-2': [PASS, TIMEOUT, NO_VARIANTS], 890}], # 'arch == arm or arch == arm64' 891 892 893['arch == arm64', { 894 # BUG(v8:3503): Times out in debug mode. 895 'js1_5/Regress/regress-280769-2': [PASS, FAIL, ['mode == debug', SKIP]], 896 # BUG(v8:3716): Flaky failure. 897 'ecma/Date/15.9.5.26-1': [PASS, FAIL], 898}], # 'arch == arm64' 899 900 901['arch == mipsel or arch == mips64el or arch == mips64', { 902 903 # BUG(3251229): Times out when running new crankshaft test script. 904 'ecma_3/RegExp/regress-311414': [SKIP], 905 'ecma/Date/15.9.5.8': [SKIP], 906 'ecma/Date/15.9.5.10-2': [SKIP], 907 'ecma/Date/15.9.5.11-2': [SKIP], 908 'ecma/Date/15.9.5.12-2': [SKIP], 909 'js1_5/Array/regress-99120-02': [SKIP], 910 'js1_5/extensions/regress-371636': [SKIP], 911 'js1_5/Regress/regress-203278-1': [SKIP], 912 'js1_5/Regress/regress-404755': [SKIP], 913 'js1_5/Regress/regress-451322': [SKIP], 914 915 916 # BUG(1040): Allow this test to timeout. 917 'js1_5/GC/regress-203278-2': [PASS, TIMEOUT, NO_VARIANTS], 918}], # 'arch == mipsel or arch == mips64el or arch == mips64' 919 920['arch == mipsel and simulator_run == True', { 921 # Crashes due to C stack overflow. 922 'js1_5/extensions/regress-355497': [SKIP], 923}], # 'arch == mipsel and simulator_run == True' 924 925['arch == mips64el and simulator_run == True', { 926 'js1_5/extensions/regress-355497': [FAIL_OK, 'Flags: --sim-stack-size=512'], 927}], # 'arch == mips64el and simulator_run == True' 928 929['arch == mips', { 930 931 # BUG(3251229): Times out when running new crankshaft test script. 932 'ecma_3/RegExp/regress-311414': [SKIP], 933 'ecma/Date/15.9.5.8': [SKIP], 934 'ecma/Date/15.9.5.10-2': [SKIP], 935 'ecma/Date/15.9.5.11-2': [SKIP], 936 'ecma/Date/15.9.5.12-2': [SKIP], 937 'js1_5/Array/regress-99120-02': [SKIP], 938 'js1_5/extensions/regress-371636': [SKIP], 939 'js1_5/Regress/regress-203278-1': [SKIP], 940 'js1_5/Regress/regress-404755': [SKIP], 941 'js1_5/Regress/regress-451322': [SKIP], 942 943 944 # BUG(1040): Allow this test to timeout. 945 'js1_5/GC/regress-203278-2': [PASS, TIMEOUT, NO_VARIANTS], 946}], # 'arch == mips' 947 948['arch == arm and simulator_run == True', { 949 950 #BUG(3837): Crashes due to C stack overflow. 951 'js1_5/extensions/regress-355497': [SKIP], 952}], # 'arch == arm and simulator_run == True' 953 954['arch == arm64 and simulator_run == True', { 955 956 'js1_5/GC/regress-203278-2': [SKIP], 957 958 # These tests time out in debug mode but pass in product mode 959 'js1_5/Regress/regress-360969-03': [SKIP], 960 'js1_5/Regress/regress-360969-04': [SKIP], 961 'js1_5/Regress/regress-360969-05': [SKIP], 962 'js1_5/Regress/regress-360969-06': [SKIP], 963 'js1_5/extensions/regress-365527': [SKIP], 964 'ecma/Date/15.9.5.10-2': [SKIP], 965 'js1_5/Regress/regress-416628': [SKIP], 966 'js1_5/extensions/regress-371636': [SKIP], 967 'ecma_3/RegExp/regress-330684': [SKIP], 968 'ecma_3/RegExp/regress-307456': [SKIP], 969 'js1_5/Regress/regress-303213': [SKIP], 970 'js1_5/extensions/regress-330569': [SKIP], 971 'js1_5/extensions/regress-351448': [SKIP], 972 'js1_5/extensions/regress-336410-1': [SKIP], 973 974 #BUG(3152): Avoid C stack overflow. 975 'js1_5/extensions/regress-355497': [FAIL_OK, 'Flags: --sim-stack-size=512'], 976}], # 'arch == arm64 and simulator_run == True' 977] 978