1 2018-05-04 Dominik Infuehr <dinfuehr@igalia.com>
3 Disable tests on systems with limited memory
4 https://bugs.webkit.org/show_bug.cgi?id=185296
6 Reviewed by Saam Barati.
8 Test doesn't work with a limited amount of memory. I tried to reduce memory usage
9 but then it was hard to reproduce the failure the test was originally made to test.
11 * stress/array-reverse-doesnt-clobber.js:
13 2018-05-03 Saam Barati <sbarati@apple.com>
15 Don't prevent CreateThis being folded to NewObject when the structure is poly proto
16 https://bugs.webkit.org/show_bug.cgi?id=185177
18 Reviewed by Filip Pizlo.
20 * microbenchmarks/construct-poly-proto-object.js: Added.
23 * stress/allocation-sinking-new-object-with-poly-proto.js: Added.
30 2018-05-03 Michael Saboff <msaboff@apple.com>
32 OSR entry pruning of Program Bytecodes doesn't take into account try/catch
33 https://bugs.webkit.org/show_bug.cgi?id=185281
35 Reviewed by Saam Barati.
39 * stress/baseline-osrentry-catch-is-reachable.js: Added.
42 2018-05-03 Ryan Haddad <ryanhaddad@apple.com>
44 Unreviewed, rolling out r231197.
46 The test added with this change crashes on the 32-bit JSC bot.
50 "Correctly detect string overflow when using the 'Function'
52 https://bugs.webkit.org/show_bug.cgi?id=184883
53 https://trac.webkit.org/changeset/231197
55 2018-05-02 Filip Pizlo <fpizlo@apple.com>
57 JSC should know how to cache custom getter accesses on the prototype chain
58 https://bugs.webkit.org/show_bug.cgi?id=185213
60 Reviewed by Keith Miller.
62 * microbenchmarks/get-custom-getter.js: Added.
65 2018-05-02 Robin Morisset <rmorisset@apple.com>
67 emitCodeToGetArgumentsArrayLength should not crash on PhantomNewArrayWithSpread
68 https://bugs.webkit.org/show_bug.cgi?id=183172
70 Reviewed by Filip Pizlo.
72 * stress/length-of-new-array-with-spread.js: Added.
77 2018-05-01 Yusuke Suzuki <utatane.tea@gmail.com>
79 [JSC] Add SameValue DFG node
80 https://bugs.webkit.org/show_bug.cgi?id=185065
82 Reviewed by Saam Barati.
84 * microbenchmarks/object-is.js: Added.
93 * stress/object-is.js: Added.
111 2018-05-01 Robin Morisset <rmorisset@apple.com>
113 Correctly detect string overflow when using the 'Function' constructor
114 https://bugs.webkit.org/show_bug.cgi?id=184883
115 <rdar://problem/36320331>
117 Reviewed by Filip Pizlo.
119 I put this regression test in the 'slowMicrobenchmarks' directory because it takes nearly 30s to run, and I am not sure where else to put it.
121 * slowMicrobenchmarks/function-constructor-with-huge-strings.js: Added.
124 2018-05-01 Robin Morisset <rmorisset@apple.com>
126 IntlObject.cpp::removeUnicodeLocaleExtension() should not touch locales that end in '-u'
127 https://bugs.webkit.org/show_bug.cgi?id=185162
129 Reviewed by Filip Pizlo.
131 * stress/incomplete-unicode-locale.js: Added.
134 2018-05-01 Dominik Infuehr <dinfuehr@igalia.com>
136 Add SetCallee as DFG-Operation
137 https://bugs.webkit.org/show_bug.cgi?id=184582
139 Reviewed by Filip Pizlo.
141 Added test that runs into infinite loop without updating the callee and
142 therefore emitting SetCallee in DFG for recursive tail calls.
144 * stress/closure-recursive-tail-call-infinite-loop.js: Added.
151 2018-04-30 Saam Barati <sbarati@apple.com>
153 ToString constant folds without preserving checks, causing us to break assumptions that the code would OSR exit
154 https://bugs.webkit.org/show_bug.cgi?id=185149
155 <rdar://problem/39455917>
157 Reviewed by Filip Pizlo.
159 * stress/keep-checks-when-converting-to-lazy-js-constant-in-strength-reduction.js: Added.
161 2018-04-29 Filip Pizlo <fpizlo@apple.com>
163 LICM shouldn't hoist nodes if hoisted nodes exited in that code block
164 https://bugs.webkit.org/show_bug.cgi?id=185126
166 Reviewed by Saam Barati.
168 I found this bug by accident when I was writing this test for something else.
170 This change also speeds up other benchmarks of this case that we already had. They are all called
171 the licm-dragons tests.
173 * microbenchmarks/licm-dragons-two-structures.js: Added.
176 2018-04-29 Commit Queue <commit-queue@webkit.org>
178 Unreviewed, rolling out r231137.
179 https://bugs.webkit.org/show_bug.cgi?id=185118
181 It is breaking Test262 language/expressions/multiplication
182 /order-of-evaluation.js (Requested by caiolima on #webkit).
186 "[ESNext][BigInt] Implement support for "*" operation"
187 https://bugs.webkit.org/show_bug.cgi?id=183721
188 https://trac.webkit.org/changeset/231137
190 2018-04-28 Saam Barati <sbarati@apple.com>
192 We don't model regexp effects properly
193 https://bugs.webkit.org/show_bug.cgi?id=185059
194 <rdar://problem/39736150>
196 Reviewed by Filip Pizlo.
198 * stress/regexp-exec-test-effectful-last-index.js: Added.
201 (i.regexLastIndex.toString):
204 2018-04-28 Rick Waldron <waldron.rick@gmail.com>
206 Token misspelled "tocken" in error message string
207 https://bugs.webkit.org/show_bug.cgi?id=185030
209 Reviewed by Saam Barati.
211 * ChakraCore/test/Basics/IdsWithEscapes.baseline-jsc: Fix typo "tocken" => "token"
212 * stress/destructuring-assignment-syntax.js: Fix typo "tocken" => "token"
213 * stress/error-messages-for-in-operator-should-not-crash.js: Fix typo "tocken" => "token"
214 * stress/reserved-word-with-escape.js: Fix typo "tocken" => "token"
215 (testSyntaxError.String.raw.v):
216 (String.raw.SyntaxError.Cannot.use.the.keyword.string_appeared_here.as.a.name):
217 (testSyntaxError.String.raw.a):
219 2018-04-28 Caio Lima <ticaiolima@gmail.com>
221 [ESNext][BigInt] Implement support for "*" operation
222 https://bugs.webkit.org/show_bug.cgi?id=183721
224 Reviewed by Saam Barati.
227 * stress/big-int-mul-jit.js: Added.
228 * stress/big-int-mul-to-primitive-precedence.js: Added.
229 * stress/big-int-mul-to-primitive.js: Added.
230 * stress/big-int-mul-type-error.js: Added.
231 * stress/big-int-mul-wrapped-value.js: Added.
232 * stress/big-int-multiplication.js: Added.
233 * stress/big-int-multiply-memory-stress.js: Added.
235 2018-04-28 Commit Queue <commit-queue@webkit.org>
237 Unreviewed, rolling out r231131.
238 https://bugs.webkit.org/show_bug.cgi?id=185112
240 It is breaking Debug build due to unchecked exception
241 (Requested by caiolima on #webkit).
245 "[ESNext][BigInt] Implement support for "*" operation"
246 https://bugs.webkit.org/show_bug.cgi?id=183721
247 https://trac.webkit.org/changeset/231131
249 2018-04-27 Caio Lima <ticaiolima@gmail.com>
251 [ESNext][BigInt] Implement support for "*" operation
252 https://bugs.webkit.org/show_bug.cgi?id=183721
254 Reviewed by Saam Barati.
257 * stress/big-int-mul-jit.js: Added.
258 * stress/big-int-mul-to-primitive-precedence.js: Added.
259 * stress/big-int-mul-to-primitive.js: Added.
260 * stress/big-int-mul-type-error.js: Added.
261 * stress/big-int-mul-wrapped-value.js: Added.
262 * stress/big-int-multiplication.js: Added.
263 * stress/big-int-multiply-memory-stress.js: Added.
265 2018-04-27 Ryan Haddad <ryanhaddad@apple.com>
267 Unreviewed, rolling out r231086.
269 Caused JSC test failures due to an unchecked exception.
273 "[ESNext][BigInt] Implement support for "*" operation"
274 https://bugs.webkit.org/show_bug.cgi?id=183721
275 https://trac.webkit.org/changeset/231086
277 2018-04-27 Ryan Haddad <ryanhaddad@apple.com>
279 Unreviewed test gardening, update expectations for test262/intl402/PluralRules tests after r231047.
281 * test262.yaml: Mark tests as passing.
283 2018-04-26 Caio Lima <ticaiolima@gmail.com>
285 [ESNext][BigInt] Implement support for "*" operation
286 https://bugs.webkit.org/show_bug.cgi?id=183721
288 Reviewed by Saam Barati.
291 * stress/big-int-mul-jit.js: Added.
292 * stress/big-int-mul-to-primitive-precedence.js: Added.
293 * stress/big-int-mul-to-primitive.js: Added.
294 * stress/big-int-mul-type-error.js: Added.
295 * stress/big-int-mul-wrapped-value.js: Added.
296 * stress/big-int-multiplication.js: Added.
297 * stress/big-int-multiply-memory-stress.js: Added.
299 2018-04-25 Robin Morisset <rmorisset@apple.com>
301 In FTLLowerDFGToB3.cpp::compileCreateRest, always use a contiguous array as the indexing type when under isWatchingHavingABadTimeWatchpoint
302 https://bugs.webkit.org/show_bug.cgi?id=184773
303 <rdar://problem/37773612>
305 Reviewed by Filip Pizlo.
307 This bug requires a race between the thread doing FTL compilation and the main thread, but it triggers in 100% of cases (before the fix) on my machine
308 so I decided to add it to the stress tests nonetheless.
310 * stress/create-rest-while-having-a-bad-time.js: Added.
315 2018-04-25 Keith Miller <keith_miller@apple.com>
317 Add missing scope release to functionProtoFuncToString
318 https://bugs.webkit.org/show_bug.cgi?id=184995
320 Reviewed by Saam Barati.
322 * stress/function-toString-arrow.js: Added.
325 2018-04-24 Keith Miller <keith_miller@apple.com>
327 fromCharCode is missing some exception checks
328 https://bugs.webkit.org/show_bug.cgi?id=184952
330 Reviewed by Saam Barati.
332 * stress/fromCharCode-exception-check.js: Added.
335 2018-04-24 Mark Lam <mark.lam@apple.com>
337 Gardening: test fix after r230863.
338 https://bugs.webkit.org/show_bug.cgi?id=184846
339 <rdar://problem/39390672>
343 * stress/json-stringified-overflow-2.js:
345 * stress/json-stringified-overflow.js:
348 2018-04-20 JF Bastien <jfbastien@apple.com>
350 Handle more JSON stringify OOM
351 https://bugs.webkit.org/show_bug.cgi?id=184846
352 <rdar://problem/39390672>
354 Reviewed by Mark Lam.
356 * stress/json-stringified-overflow-2.js: Added. Same as the one
357 below, but with a bigger input which will trigger a different code
360 * stress/json-stringified-overflow.js: Modify the test to only
361 catch OOM on stringification. not on string creation.
363 2018-04-18 Yusuke Suzuki <utatane.tea@gmail.com>
365 [WebAssembly][Modules] Import tables in wasm modules
366 https://bugs.webkit.org/show_bug.cgi?id=184738
368 Reviewed by JF Bastien.
370 * wasm/modules/wasm-imports-js-re-exports-wasm-exports.js:
371 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm:
372 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat:
373 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js:
374 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm:
375 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat:
376 * wasm/modules/wasm-imports-wasm-exports.js:
377 * wasm/modules/wasm-imports-wasm-exports/imports.wasm:
378 * wasm/modules/wasm-imports-wasm-exports/imports.wat:
379 * wasm/modules/wasm-imports-wasm-exports/sum.wasm:
380 * wasm/modules/wasm-imports-wasm-exports/sum.wat:
382 2018-04-18 Yusuke Suzuki <utatane.tea@gmail.com>
384 [WebAssembly][Modules] Import globals from wasm modules
385 https://bugs.webkit.org/show_bug.cgi?id=184736
387 Reviewed by JF Bastien.
390 * wasm/modules/wasm-imports-js-re-exports-wasm-exports.js:
391 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm:
392 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat:
393 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js:
394 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm:
395 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat:
396 * wasm/modules/wasm-imports-wasm-exports.js:
397 * wasm/modules/wasm-imports-wasm-exports/imports.wasm:
398 * wasm/modules/wasm-imports-wasm-exports/imports.wat:
399 * wasm/modules/wasm-imports-wasm-exports/sum.wasm:
400 * wasm/modules/wasm-imports-wasm-exports/sum.wat:
402 2018-04-18 Yusuke Suzuki <utatane.tea@gmail.com>
404 Unreviewed, reland r230697, r230720, and r230724.
405 https://bugs.webkit.org/show_bug.cgi?id=184600
408 * wasm/modules/constant.wasm: Added.
409 * wasm/modules/constant.wat: Added.
410 * wasm/modules/default-import-star-error.js: Added.
412 * wasm/modules/default-import-star-error/entry.wasm: Added.
413 * wasm/modules/default-import-star-error/entry.wat: Added.
414 * wasm/modules/default-import-star-error/t0.js: Added.
415 * wasm/modules/default-import-star-error/t1.js: Added.
416 * wasm/modules/default-import-star-error/t2.js: Added.
417 (export.default.Cocoa):
418 * wasm/modules/js-wasm-cycle.js: Added.
419 * wasm/modules/js-wasm-cycle/entry.js: Added.
420 (from.string_appeared_here.export.return42):
421 * wasm/modules/js-wasm-cycle/sum.wasm: Added.
422 * wasm/modules/js-wasm-cycle/sum.wat: Added.
423 * wasm/modules/js-wasm-function-namespace.js: Added.
425 * wasm/modules/js-wasm-function.js: Added.
427 * wasm/modules/js-wasm-global-namespace.js: Added.
429 * wasm/modules/js-wasm-global.js: Added.
431 * wasm/modules/js-wasm-memory-namespace.js: Added.
433 * wasm/modules/js-wasm-memory.js: Added.
435 * wasm/modules/js-wasm-start.js: Added.
437 * wasm/modules/js-wasm-table-namespace.js: Added.
439 * wasm/modules/js-wasm-table.js: Added.
441 * wasm/modules/memory.wasm: Added.
442 * wasm/modules/memory.wat: Added.
443 * wasm/modules/run-from-wasm.wasm: Added.
444 * wasm/modules/run-from-wasm.wat: Added.
445 * wasm/modules/run-from-wasm/check.js: Added.
447 * wasm/modules/start.wasm: Added.
448 * wasm/modules/start.wat: Added.
449 * wasm/modules/sum.wasm: Added.
450 * wasm/modules/sum.wat: Added.
451 * wasm/modules/table.wasm: Added.
452 * wasm/modules/table.wat: Added.
453 * wasm/modules/wasm-imports-js-exports.js: Added.
454 * wasm/modules/wasm-imports-js-exports/imports.wasm: Added.
455 * wasm/modules/wasm-imports-js-exports/imports.wat: Added.
456 * wasm/modules/wasm-imports-js-exports/sum.js: Added.
458 * wasm/modules/wasm-imports-js-re-exports-wasm-exports.js: Added.
459 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm: Added.
460 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat: Added.
461 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js: Added.
462 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm: Added.
463 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat: Added.
464 * wasm/modules/wasm-imports-wasm-exports.js: Added.
465 * wasm/modules/wasm-imports-wasm-exports/imports.wasm: Added.
466 * wasm/modules/wasm-imports-wasm-exports/imports.wat: Added.
467 * wasm/modules/wasm-imports-wasm-exports/sum.wasm: Added.
468 * wasm/modules/wasm-imports-wasm-exports/sum.wat: Added.
469 * wasm/modules/wasm-js-cycle.js: Added.
470 * wasm/modules/wasm-js-cycle/entry.wasm: Added.
471 * wasm/modules/wasm-js-cycle/entry.wat: Added.
472 * wasm/modules/wasm-js-cycle/sum.js: Added.
473 (from.string_appeared_here.export.sum):
474 * wasm/modules/wasm-wasm-cycle.js: Added.
475 * wasm/modules/wasm-wasm-cycle/entry.wasm: Added.
476 * wasm/modules/wasm-wasm-cycle/entry.wat: Added.
477 * wasm/modules/wasm-wasm-cycle/sum.wasm: Added.
478 * wasm/modules/wasm-wasm-cycle/sum.wat: Added.
480 2018-04-17 Commit Queue <commit-queue@webkit.org>
482 Unreviewed, rolling out r230697, r230720, and r230724.
483 https://bugs.webkit.org/show_bug.cgi?id=184717
485 These caused multiple failures on the Test262 testers.
486 (Requested by mlewis13 on #webkit).
490 "[WebAssembly][Modules] Prototype wasm import"
491 https://bugs.webkit.org/show_bug.cgi?id=184600
492 https://trac.webkit.org/changeset/230697
494 "[WebAssembly][Modules] Implement function import from wasm
496 https://bugs.webkit.org/show_bug.cgi?id=184689
497 https://trac.webkit.org/changeset/230720
499 "[JSC] Rename runWebAssembly to runWebAssemblySuite"
500 https://bugs.webkit.org/show_bug.cgi?id=184703
501 https://trac.webkit.org/changeset/230724
503 2018-04-17 JF Bastien <jfbastien@apple.com>
505 A put is not an ExistingProperty put when we transition a structure because of an attributes change
506 https://bugs.webkit.org/show_bug.cgi?id=184706
507 <rdar://problem/38871451>
509 Reviewed by Saam Barati.
511 * stress/put-by-id-direct-strict-transition.js: Added.
513 (j.const.obj.set hello):
514 * stress/put-by-id-direct-transition.js: Added.
516 (j.const.obj.set hello):
517 * stress/put-getter-setter-by-id-strict-transition.js: Added.
519 (j.const.obj.set hello):
520 * stress/put-getter-setter-by-id-transition.js: Added.
522 (j.const.obj.set hello):
524 2018-04-16 Filip Pizlo <fpizlo@apple.com>
526 PutStackSinkingPhase should know that KillStack means ConflictingFlush
527 https://bugs.webkit.org/show_bug.cgi?id=184672
529 Reviewed by Michael Saboff.
531 * stress/sink-put-stack-over-kill-stack.js: Added.
537 2018-04-17 Yusuke Suzuki <utatane.tea@gmail.com>
539 [JSC] Rename runWebAssembly to runWebAssemblySuite
540 https://bugs.webkit.org/show_bug.cgi?id=184703
542 Reviewed by JF Bastien.
544 And add runWebAssembly as a command to simplely run wasm modules.
548 2018-04-17 Yusuke Suzuki <utatane.tea@gmail.com>
550 [WebAssembly][Modules] Implement function import from wasm modules
551 https://bugs.webkit.org/show_bug.cgi?id=184689
553 Reviewed by JF Bastien.
556 * wasm/modules/js-wasm-cycle.js: Added.
557 * wasm/modules/js-wasm-cycle/entry.js: Added.
558 (from.string_appeared_here.export.return42):
559 * wasm/modules/js-wasm-cycle/sum.wasm: Added.
560 * wasm/modules/js-wasm-cycle/sum.wat: Added.
561 * wasm/modules/run-from-wasm.wasm: Added.
562 * wasm/modules/run-from-wasm.wat: Added.
563 * wasm/modules/run-from-wasm/check.js: Added.
565 * wasm/modules/wasm-imports-js-exports.js: Added.
566 * wasm/modules/wasm-imports-js-exports/imports.wasm: Added.
567 * wasm/modules/wasm-imports-js-exports/imports.wat: Added.
568 * wasm/modules/wasm-imports-js-exports/sum.js: Added.
570 * wasm/modules/wasm-imports-js-re-exports-wasm-exports.js: Added.
571 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm: Added.
572 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat: Added.
573 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js: Added.
574 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm: Added.
575 * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat: Added.
576 * wasm/modules/wasm-imports-wasm-exports.js: Added.
577 * wasm/modules/wasm-imports-wasm-exports/imports.wasm: Added.
578 * wasm/modules/wasm-imports-wasm-exports/imports.wat: Added.
579 * wasm/modules/wasm-imports-wasm-exports/sum.wasm: Added.
580 * wasm/modules/wasm-imports-wasm-exports/sum.wat: Added.
581 * wasm/modules/wasm-js-cycle.js: Added.
582 * wasm/modules/wasm-js-cycle/entry.wasm: Added.
583 * wasm/modules/wasm-js-cycle/entry.wat: Added.
584 * wasm/modules/wasm-js-cycle/sum.js: Added.
585 (from.string_appeared_here.export.sum):
586 * wasm/modules/wasm-wasm-cycle.js: Added.
587 * wasm/modules/wasm-wasm-cycle/entry.wasm: Added.
588 * wasm/modules/wasm-wasm-cycle/entry.wat: Added.
589 * wasm/modules/wasm-wasm-cycle/sum.wasm: Added.
590 * wasm/modules/wasm-wasm-cycle/sum.wat: Added.
592 2018-04-16 Yusuke Suzuki <utatane.tea@gmail.com>
594 [WebAssembly][Modules] Prototype wasm import
595 https://bugs.webkit.org/show_bug.cgi?id=184600
597 Reviewed by JF Bastien.
599 Add wasm and wat files since module loader want to load wasm files from FS.
600 Currently, importing the other modules from wasm is not supported.
603 * wasm/modules/constant.wasm: Added.
604 * wasm/modules/constant.wat: Added.
605 * wasm/modules/js-wasm-function-namespace.js: Added.
607 * wasm/modules/js-wasm-function.js: Added.
609 * wasm/modules/js-wasm-global-namespace.js: Added.
611 * wasm/modules/js-wasm-global.js: Added.
613 * wasm/modules/js-wasm-memory-namespace.js: Added.
615 * wasm/modules/js-wasm-memory.js: Added.
617 * wasm/modules/js-wasm-start.js: Added.
619 * wasm/modules/js-wasm-table-namespace.js: Added.
621 * wasm/modules/js-wasm-table.js: Added.
623 * wasm/modules/memory.wasm: Added.
624 * wasm/modules/memory.wat: Added.
625 * wasm/modules/start.wasm: Added.
626 * wasm/modules/start.wat: Added.
627 * wasm/modules/sum.wasm: Added.
628 * wasm/modules/sum.wat: Added.
629 * wasm/modules/table.wasm: Added.
630 * wasm/modules/table.wat: Added.
632 2018-04-14 Filip Pizlo <fpizlo@apple.com>
634 Function.prototype.caller shouldn't return generator bodies
635 https://bugs.webkit.org/show_bug.cgi?id=184630
637 Reviewed by Yusuke Suzuki.
639 * stress/function-caller-async-arrow-function-body.js: Added.
640 * stress/function-caller-async-function-body.js: Added.
641 * stress/function-caller-async-generator-body.js: Added.
642 * stress/function-caller-generator-body.js: Added.
643 * stress/function-caller-generator-method-body.js: Added.
645 2018-04-12 Tomas Popela <tpopela@redhat.com>
647 Unreviewed, skip JIT tests if it isn't enabled
649 See https://bugs.webkit.org/show_bug.cgi?id=182730.
651 * stress/big-int-spec-to-primitive.js:
652 * stress/big-int-spec-to-this.js:
654 2018-04-10 Caio Lima <ticaiolima@gmail.com>
656 [ESNext][BigInt] Add support for BigInt in SpeculatedType
657 https://bugs.webkit.org/show_bug.cgi?id=182470
659 Reviewed by Saam Barati.
661 * stress/big-int-spec-to-primitive.js: Added.
662 * stress/big-int-spec-to-this.js: Added.
663 * stress/big-int-strict-equals-jit.js: Added.
664 * stress/big-int-strict-spec-to-this.js: Added.
665 * stress/big-int-type-of-proven-type.js: Added.
667 2018-04-10 Filip Pizlo <fpizlo@apple.com>
669 DFG AI and clobberize should agree with each other
670 https://bugs.webkit.org/show_bug.cgi?id=184440
672 Reviewed by Saam Barati.
674 Add tests for all of the bugs I fixed.
676 * stress/direct-arguments-out-of-bounds-change-structure.js: Added.
678 * stress/new-typed-array-cse-effects.js: Added.
680 * stress/scoped-arguments-out-of-bounds-change-structure.js: Added.
683 * stress/string-from-char-code-change-structure-not-dead.js: Added.
686 (weirdValue.valueOf):
687 * stress/string-from-char-code-change-structure.js: Added.
690 (weirdValue.valueOf):
692 2018-04-09 Leo Balter <leonardo.balter@gmail.com>
694 Fix errant Test262 files CRLF to LF for consistency with the original source
695 https://bugs.webkit.org/show_bug.cgi?id=184425
697 Reviewed by Yusuke Suzuki.
699 * test262/test/built-ins/Math/acosh/nan-returns.js:
700 * test262/test/built-ins/Math/asinh/asinh-specialVals.js:
701 * test262/test/built-ins/Math/atanh/atanh-specialVals.js:
702 * test262/test/built-ins/Math/cbrt/cbrt-specialValues.js:
703 * test262/test/built-ins/Math/cbrt/prop-desc.js:
704 * test262/test/built-ins/Math/cosh/cosh-specialVals.js:
705 * test262/test/built-ins/Math/expm1/expm1-specialVals.js:
706 * test262/test/built-ins/Math/log10/Log10-specialVals.js:
707 * test262/test/built-ins/Math/log2/log2-basicTests.js:
708 * test262/test/built-ins/Math/sign/sign-specialVals.js:
709 * test262/test/built-ins/Math/sinh/sinh-specialVals.js:
710 * test262/test/built-ins/Math/tanh/tanh-specialVals.js:
711 * test262/test/built-ins/Math/trunc/trunc-sampleTests.js:
712 * test262/test/built-ins/Math/trunc/trunc-specialVals.js:
714 2018-04-08 Yusuke Suzuki <utatane.tea@gmail.com>
716 Unreviewed, remove incorrect entry in test262.yaml
717 https://bugs.webkit.org/show_bug.cgi?id=184266
721 2018-04-08 Valerie Young <valerie@bocoup.com>
723 [JSC] Update Test262 to April 6 version
724 https://bugs.webkit.org/show_bug.cgi?id=184266
726 Rubber stamped by Yusuke Suzuki.
728 2018-04-08 Yusuke Suzuki <utatane.tea@gmail.com>
730 [JSC] Introduce op_get_by_id_direct
731 https://bugs.webkit.org/show_bug.cgi?id=183970
733 Reviewed by Filip Pizlo.
735 * stress/generator-prototype-copy.js: Added.
740 * stress/generator-type-check.js: Added.
744 * stress/get-by-id-direct-getter.js: Added.
748 (builtin.createBuiltin):
750 * stress/get-by-id-direct.js: Added.
753 (builtin.createBuiltin):
755 We fixed long-standing spec compatibility issue.
756 As a result, this patch makes several test262 tests passed!
759 2018-04-07 Yusuke Suzuki <utatane.tea@gmail.com>
761 Unreviewed, annotate test with @skip if $memoryLimited
762 https://bugs.webkit.org/show_bug.cgi?id=183894
764 * stress/json-stringified-overflow.js:
766 2018-04-06 Alexey Proskuryakov <ap@apple.com>
768 Add svn:eol-style to line-terminator-normalisation-CR.js
769 https://bugs.webkit.org/show_bug.cgi?id=184341
771 * test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js: Added property svn:eol-style.
773 2018-04-06 Ross Kirsling <ross.kirsling@sony.com>
775 Unreviewed, remove errant LF from existing test262 test for CR line endings.
777 * test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js:
779 2018-04-05 Ross Kirsling <ross.kirsling@sony.com>
781 Unreviewed, rolling out r230320.
783 Revert fix, as the root cause lies elsewhere.
787 "[test262] Mark line-terminator-normalisation-CR.js as a
789 https://bugs.webkit.org/show_bug.cgi?id=184341
790 https://trac.webkit.org/changeset/230320
792 2018-04-05 Ross Kirsling <ross.kirsling@sony.com>
794 [test262] Mark line-terminator-normalisation-CR.js as a binary file.
795 https://bugs.webkit.org/show_bug.cgi?id=184341
797 Reviewed by Yusuke Suzuki.
799 This test is all about CR line endings, but `svn-apply` can't deal with them.
800 Treating the file as binary ensures that its contents never are never shown in a diff.
802 * .gitattributes: Added.
804 2018-04-05 Robin Morisset <rmorisset@apple.com>
806 Fix testcase (missing try/catch).
807 https://bugs.webkit.org/show_bug.cgi?id=183657
811 * stress/large-unshift-splice.js
813 2018-04-04 Filip Pizlo <fpizlo@apple.com>
815 REGRESSION(r222563): removed DoubleReal type check causes tons of crashes because CSE has never known how to handle SaneChain
816 https://bugs.webkit.org/show_bug.cgi?id=184319
818 Reviewed by Saam Barati.
820 * stress/array-push-nan-to-double-array-cse-sane-and-insane-chain.js: Added.
823 * stress/array-push-nan-to-double-array.js: Added.
827 2018-04-03 Mark Lam <mark.lam@apple.com>
829 Test js-fixed-array-out-of-memory.js should be excluded for memory limited devices.
830 https://bugs.webkit.org/show_bug.cgi?id=184284
832 Reviewed by Saam Barati.
834 * stress/js-fixed-array-out-of-memory.js:
836 2018-03-31 Filip Pizlo <fpizlo@apple.com>
838 JSC crash in JIT code with for-of loop and Array/Set iterators
839 https://bugs.webkit.org/show_bug.cgi?id=183174
841 Reviewed by Saam Barati.
843 * microbenchmarks/hoist-get-by-offset-tower-with-inferred-types.js: Added. This test shows that fixing the bug didn't break hoisting of GetByOffset with inferred types. I confirmed that if I did break it, this test slows down by >7x.
845 * stress/hoist-get-by-offset-with-control-dependent-inferred-type.js: Added. This test shows that the bug is fixed.
848 2018-03-30 JF Bastien <jfbastien@apple.com>
850 WebAssembly: support DataView compilation
851 https://bugs.webkit.org/show_bug.cgi?id=183342
853 Reviewed by Mark Lam.
855 Test WebAssembly compilation using a DataView with offset.
857 * wasm/regress/183342.js: Added.
860 2018-03-30 Filip Pizlo <fpizlo@apple.com>
862 Bytecode generator should not get_from_scope something that may be a hole into a variable that is already live
863 https://bugs.webkit.org/show_bug.cgi?id=184189
865 Reviewed by JF Bastien.
867 * stress/load-hole-from-scope-into-live-var.js: Added.
868 (result.eval.try.switch):
871 2018-03-30 Ryan Haddad <ryanhaddad@apple.com>
873 Unreviewed, rolling out r230102.
875 Caused assertion failures on JSC bots.
879 "A stack overflow in the parsing of a builtin (called by
880 createExecutable) cause a crash instead of a catchable js
882 https://bugs.webkit.org/show_bug.cgi?id=184074
883 https://trac.webkit.org/changeset/230102
885 2018-03-30 Robin Morisset <rmorisset@apple.com>
887 Inlining of a function that ends in op_unreachable in a non-tail position triggers an ASSERT
888 https://bugs.webkit.org/show_bug.cgi?id=183812
890 Reviewed by Keith Miller.
892 * stress/inlining-unreachable-non-tail.js: Added.
896 2018-03-30 Robin Morisset <rmorisset@apple.com>
898 A stack overflow in the parsing of a builtin (called by createExecutable) cause a crash instead of a catchable js exception
899 https://bugs.webkit.org/show_bug.cgi?id=184074
900 <rdar://problem/37165897>
902 Reviewed by Keith Miller.
904 * stress/stack-overflow-while-parsing-builtin.js: Added.
907 2018-03-30 Robin Morisset <rmorisset@apple.com>
909 Out-of-bounds accesses due to a missing check for MAX_STORAGE_VECTOR_LENGTH in unshiftCountForAnyIndexingType
910 https://bugs.webkit.org/show_bug.cgi?id=183657
912 Reviewed by Keith Miller.
914 * stress/large-unshift-splice.js: Added.
917 2018-03-28 Robin Morisset <rmorisset@apple.com>
919 appendQuotedJSONString stops on arithmetic overflow instead of propagating it upwards
920 https://bugs.webkit.org/show_bug.cgi?id=183894
922 Reviewed by Saam Barati.
924 * stress/json-stringified-overflow.js: Added.
927 2018-03-26 Filip Pizlo <fpizlo@apple.com>
929 DFG should know that CreateThis can be effectful
930 https://bugs.webkit.org/show_bug.cgi?id=184013
932 Reviewed by Saam Barati.
934 * stress/create-this-property-change.js: Added.
938 * stress/create-this-structure-change-without-cse.js: Added.
942 * stress/create-this-structure-change.js: Added.
947 2018-03-22 Yusuke Suzuki <utatane.tea@gmail.com>
949 [DFG] Introduces fused compare and jump
950 https://bugs.webkit.org/show_bug.cgi?id=177100
952 Reviewed by Mark Lam.
954 * stress/fused-jeq-slow.js: Added.
961 * stress/fused-jeq.js: Added.
968 * stress/fused-jstricteq-slow.js: Added.
975 * stress/fused-jstricteq.js: Added.
983 2018-03-22 Yusuke Suzuki <utatane.tea@gmail.com>
985 [JSC] Clear MustGenerate for ToString(Number) converted from NumberToStringWithRadix
986 https://bugs.webkit.org/show_bug.cgi?id=183559
988 Reviewed by Mark Lam.
990 * stress/double-to-string-in-loop-removed.js: Added.
992 * stress/int32-to-string-in-loop-removed.js: Added.
994 * stress/int52-to-string-in-loop-removed.js: Added.
997 2018-03-22 Michael Saboff <msaboff@apple.com>
999 Race Condition in arrayProtoFuncReverse() causes wrong results or crash
1000 https://bugs.webkit.org/show_bug.cgi?id=183901
1002 Reviewed by Keith Miller.
1006 * stress/array-reverse-doesnt-clobber.js: Added.
1008 (createArrayOfArrays):
1009 (createArrayStorage):
1011 2018-03-21 Filip Pizlo <fpizlo@apple.com>
1013 ScopedArguments should do poisoning and index masking
1014 https://bugs.webkit.org/show_bug.cgi?id=183863
1016 Reviewed by Mark Lam.
1018 Adds another stress test of scoped arguments.
1020 * stress/scoped-arguments-test.js: Added.
1023 2018-03-20 Saam Barati <sbarati@apple.com>
1025 We need to do proper bookkeeping of exitOK when inserting constants when sinking NewArrayBuffer
1026 https://bugs.webkit.org/show_bug.cgi?id=183795
1027 <rdar://problem/38298694>
1029 Reviewed by JF Bastien.
1031 * stress/sink-phantom-new-array-buffer-exit-ok.js: Added.
1035 2018-03-16 Yusuke Suzuki <utatane.tea@gmail.com>
1037 [DFG][FTL] Add vectorLengthHint for NewArray
1038 https://bugs.webkit.org/show_bug.cgi?id=183694
1040 Reviewed by Saam Barati.
1042 * stress/vector-length-hint-array-constructor.js: Added.
1045 * stress/vector-length-hint-new-array.js: Added.
1049 2018-03-13 Yusuke Suzuki <utatane.tea@gmail.com>
1051 [DFG][FTL] Make ArraySlice(0) code tight
1052 https://bugs.webkit.org/show_bug.cgi?id=183590
1054 Reviewed by Saam Barati.
1056 * stress/array-slice-with-zero.js: Added.
1060 * stress/array-slice-zero-args.js: Added.
1064 2018-03-14 Caitlin Potter <caitp@igalia.com>
1066 [JSC] fix order of evaluation for ClassDefinitionEvaluation
1067 https://bugs.webkit.org/show_bug.cgi?id=183523
1069 Reviewed by Keith Miller.
1071 Computed property names need to be evaluated in source order during class
1072 definition evaluation, as it's observable (and specified to work this way).
1074 This change improves compatibility with Chromium.
1076 * stress/class_elements.js: Added.
1078 (test.C.prototype.effect):
1080 (test.C.prototype.get effect):
1081 (test.C.prototype.set effect):
1084 2018-03-11 Yusuke Suzuki <utatane.tea@gmail.com>
1086 [DFG] AI should convert CreateThis to NewObject if the prototype object is proved
1087 https://bugs.webkit.org/show_bug.cgi?id=183310
1089 Reviewed by Filip Pizlo.
1091 * stress/ai-create-this-to-new-object-fire.js: Added.
1099 * stress/ai-create-this-to-new-object.js: Added.
1108 2018-03-10 Yusuke Suzuki <utatane.tea@gmail.com>
1110 [FTL] Drop NewRegexp for String.prototype.match with RegExp + global flag
1111 https://bugs.webkit.org/show_bug.cgi?id=181848
1113 Reviewed by Sam Weinig.
1115 * microbenchmarks/regexp-u-global-es5.js: Added.
1117 * microbenchmarks/regexp-u-global-es6.js: Added.
1119 * stress/materialized-regexp-has-correct-last-index-set-by-match-at-osr-exit.js: Added.
1123 * stress/materialized-regexp-has-correct-last-index-set-by-match.js: Added.
1127 2018-03-07 Dominik Infuehr <dinfuehr@igalia.com>
1129 Disable test stress/var-injection-cache-invalidation.js on systems with limited memory
1130 https://bugs.webkit.org/show_bug.cgi?id=183334
1132 Reviewed by Žan Doberšek.
1134 * stress/var-injection-cache-invalidation.js:
1136 2018-03-06 Dominik Infuehr <dinfuehr@igalia.com>
1138 [ARM] Disable tests that run out of memory
1139 https://bugs.webkit.org/show_bug.cgi?id=182699
1141 Reviewed by Žan Doberšek.
1143 Skip tests that run of of memory. Do not run
1144 modules/module-jit-reachability.js without LLInt to prevent
1145 running out of executable memory.
1148 * modules/module-jit-reachability.js:
1149 * stress/has-own-property-name-cache-string-keys.js:
1150 * stress/has-own-property-name-cache-symbol-keys.js:
1152 2018-03-01 Yusuke Suzuki <utatane.tea@gmail.com>
1154 ASSERTION FAILED: matchContextualKeyword(m_vm->propertyNames->async)
1155 https://bugs.webkit.org/show_bug.cgi?id=183173
1157 Reviewed by Saam Barati.
1159 * stress/async-arrow-function-in-class-heritage.js: Added.
1164 2018-03-01 Saam Barati <sbarati@apple.com>
1166 We need to clear cached structures when having a bad time
1167 https://bugs.webkit.org/show_bug.cgi?id=183256
1168 <rdar://problem/36245022>
1170 Reviewed by Mark Lam.
1172 * stress/having-a-bad-time-with-derived-arrays.js: Added.
1178 2018-02-28 Yusuke Suzuki <utatane.tea@gmail.com>
1180 JSC crash with `import("")`
1181 https://bugs.webkit.org/show_bug.cgi?id=183175
1183 Reviewed by Saam Barati.
1185 * stress/import-with-empty-string.js: Added.
1187 2018-02-27 Yusuke Suzuki <utatane.tea@gmail.com>
1189 Unreviewed, skip FTL tests if FTL is disabled
1190 https://bugs.webkit.org/show_bug.cgi?id=183071
1192 * stress/has-indexed-property-array-storage-ftl.js:
1193 * stress/has-indexed-property-slow-put-array-storage-ftl.js:
1195 2018-02-25 Yusuke Suzuki <utatane.tea@gmail.com>
1197 [FTL] Support PutByVal(ArrayStorage/SlowPutArrayStorage)
1198 https://bugs.webkit.org/show_bug.cgi?id=182965
1200 Reviewed by Saam Barati.
1202 * stress/put-by-val-array-storage.js: Added.
1204 (testArrayStorageInBounds):
1205 * stress/put-by-val-direct-out-of-bounds-setter.js: Added.
1207 (testInt32.createBuiltin):
1209 * stress/put-by-val-slow-put-array-storage.js: Added.
1211 (testArrayStorageInBounds):
1213 2018-02-26 Saam Barati <sbarati@apple.com>
1215 validateStackAccess should not validate if the offset is within the stack bounds
1216 https://bugs.webkit.org/show_bug.cgi?id=183067
1217 <rdar://problem/37749988>
1219 Reviewed by Mark Lam.
1221 * stress/dont-validate-stack-offset-in-b3-because-it-might-be-guarded-by-control-flow.js: Added.
1227 2018-02-26 Yusuke Suzuki <utatane.tea@gmail.com>
1229 Unreviewed, skip FTL tests if FTL is disabled
1230 https://bugs.webkit.org/show_bug.cgi?id=183071
1232 * stress/has-indexed-property-array-storage-ftl.js:
1233 * stress/has-indexed-property-slow-put-array-storage-ftl.js:
1235 2018-02-23 Saam Barati <sbarati@apple.com>
1237 Make Number.isInteger an intrinsic
1238 https://bugs.webkit.org/show_bug.cgi?id=183088
1240 Reviewed by JF Bastien.
1242 * stress/number-is-integer-intrinsic.js: Added.
1244 2018-02-23 Oleksandr Skachkov <gskachkov@gmail.com>
1246 WebAssembly: cache memory address / size on instance
1247 https://bugs.webkit.org/show_bug.cgi?id=177305
1249 Reviewed by JF Bastien.
1251 * wasm/function-tests/memory-reuse.js: Added.
1252 (createWasmInstance):
1256 (checkWasmInstancesWithSharedMemory):
1258 2018-02-23 Yusuke Suzuki <utatane.tea@gmail.com>
1260 [JSC] Implement $vm.ftlTrue function for FTL testing
1261 https://bugs.webkit.org/show_bug.cgi?id=183071
1263 Reviewed by Mark Lam.
1265 * stress/dead-fiat-value-to-int52-then-exit-not-double.js:
1267 * stress/dead-fiat-value-to-int52-then-exit-not-int52.js:
1269 * stress/dead-fiat-value-to-int52.js:
1271 * stress/dead-osr-entry-value.js:
1273 * stress/fiat-value-to-int52-then-exit-not-double.js:
1275 * stress/fiat-value-to-int52-then-exit-not-int52.js:
1277 * stress/fiat-value-to-int52-then-fail-to-fold.js:
1279 * stress/fiat-value-to-int52-then-fold.js:
1281 * stress/fiat-value-to-int52.js:
1283 * stress/fold-based-on-int32-proof-mul-branch.js:
1285 * stress/fold-profiled-call-to-call.js:
1287 * stress/fold-to-double-constant-then-exit.js:
1289 * stress/fold-to-int52-constant-then-exit.js:
1291 * stress/fold-to-primitive-in-cfa.js:
1293 * stress/fold-to-primitive-to-identity-in-cfa.js:
1295 * stress/has-indexed-property-array-storage-ftl.js: Added.
1299 * stress/has-indexed-property-slow-put-array-storage-ftl.js: Added.
1303 * stress/int52-ai-add-then-filter-int32.js:
1305 * stress/int52-ai-mul-and-clean-neg-zero-then-filter-int32.js:
1307 * stress/int52-ai-mul-then-filter-int32.js:
1309 * stress/int52-ai-neg-then-filter-int32.js:
1311 * stress/int52-ai-sub-then-filter-int32.js:
1313 * stress/licm-pre-header-cannot-exit-nested.js:
1315 * stress/licm-pre-header-cannot-exit.js:
1317 * stress/sparse-array-entry-update-144067.js:
1318 (useMemoryToTriggerGCs):
1319 * stress/test-spec-misc.js:
1321 * stress/tricky-array-bounds-checks.js:
1324 2018-02-22 Yusuke Suzuki <utatane.tea@gmail.com>
1326 [FTL] Support HasIndexedProperty for ArrayStorage and SlowPutArrayStorage
1327 https://bugs.webkit.org/show_bug.cgi?id=182792
1329 Reviewed by Mark Lam.
1331 * stress/has-indexed-property-array-storage.js: Added.
1335 * stress/has-indexed-property-slow-put-array-storage.js: Added.
1340 2018-02-20 Saam Barati <sbarati@apple.com>
1342 DFG::VarargsForwardingPhase should eliminate getting argument length
1343 https://bugs.webkit.org/show_bug.cgi?id=182959
1345 Reviewed by Keith Miller.
1347 * microbenchmarks/forward-arguments-dont-escape-on-arguments-length.js: Added.
1349 2018-02-14 Yusuke Suzuki <utatane.tea@gmail.com>
1351 [FTL] Support ArrayPush for ArrayStorage
1352 https://bugs.webkit.org/show_bug.cgi?id=182782
1354 Reviewed by Saam Barati.
1356 Existing array-push-multiple-storage.js covers ArrayPush(ArrayStorage) multiple arguments case.
1358 * stress/array-push-array-storage-beyond-int32.js: Added.
1361 * stress/array-push-array-storage.js: Added.
1364 * stress/array-push-multiple-array-storage-beyond-int32.js: Added.
1367 * stress/array-push-multiple-storage-continuous.js: Added.
1371 2018-02-14 Yusuke Suzuki <utatane.tea@gmail.com>
1373 [FTL] Support ArrayPop for ArrayStorage
1374 https://bugs.webkit.org/show_bug.cgi?id=182783
1376 Reviewed by Saam Barati.
1378 * stress/array-pop-array-storage.js: Added.
1382 2018-02-14 Yusuke Suzuki <utatane.tea@gmail.com>
1384 [FTL] Add Arrayify for ArrayStorage and SlowPutArrayStorage
1385 https://bugs.webkit.org/show_bug.cgi?id=182731
1387 Reviewed by Saam Barati.
1389 * stress/arrayify-array-storage-array.js: Added.
1392 * stress/arrayify-array-storage-non-array.js: Added.
1395 * stress/arrayify-array-storage.js: Added.
1398 * stress/arrayify-slow-put-array-storage-pass-array-storage.js: Added.
1401 * stress/arrayify-slow-put-array-storage.js: Added.
1405 2018-02-19 Saam Barati <sbarati@apple.com>
1407 Don't use JSFunction's allocation profile when getting the prototype can be effectful
1408 https://bugs.webkit.org/show_bug.cgi?id=182942
1409 <rdar://problem/37584764>
1411 Reviewed by Mark Lam.
1413 * stress/get-prototype-create-this-effectful.js: Added.
1415 2018-02-16 Saam Barati <sbarati@apple.com>
1417 Fix bugs from r228411
1418 https://bugs.webkit.org/show_bug.cgi?id=182851
1419 <rdar://problem/37577732>
1421 Reviewed by JF Bastien.
1423 * stress/constant-folding-phase-insert-check-handle-varargs.js: Added.
1425 2018-02-15 Filip Pizlo <fpizlo@apple.com>
1427 Unreviewed, roll out r228366 since it did not progress anything.
1429 * stress/gc-error-stack.js: Removed.
1430 * stress/no-gc-error-stack.js: Removed.
1432 2018-02-15 Tomas Popela <tpopela@redhat.com>
1434 Many stress tests fail with JIT disabled
1435 https://bugs.webkit.org/show_bug.cgi?id=182730
1437 Reviewed by Saam Barati.
1439 These tests are broken by design if the JIT is disabled - they test
1440 the return value of numberOfDFGCompiles(), which is always set to
1441 1000000.0 in TestRunnerUtils.cpp and makes the tests to fail.
1443 * stress/arith-abs-on-various-types.js:
1444 * stress/arith-abs-to-arith-negate-range-optimizaton.js:
1445 * stress/arith-acos-on-various-types.js:
1446 * stress/arith-acosh-on-various-types.js:
1447 * stress/arith-asin-on-various-types.js:
1448 * stress/arith-asinh-on-various-types.js:
1449 * stress/arith-atan-on-various-types.js:
1450 * stress/arith-atanh-on-various-types.js:
1451 * stress/arith-cbrt-on-various-types.js:
1452 * stress/arith-ceil-on-various-types.js:
1453 * stress/arith-clz32-on-various-types.js:
1454 * stress/arith-cos-on-various-types.js:
1455 * stress/arith-cosh-on-various-types.js:
1456 * stress/arith-expm1-on-various-types.js:
1457 * stress/arith-floor-on-various-types.js:
1458 * stress/arith-fround-on-various-types.js:
1459 * stress/arith-log-on-various-types.js:
1460 * stress/arith-log10-on-various-types.js:
1461 * stress/arith-log2-on-various-types.js:
1462 * stress/arith-negate-on-various-types.js:
1463 * stress/arith-round-on-various-types.js:
1464 * stress/arith-sin-on-various-types.js:
1465 * stress/arith-sinh-on-various-types.js:
1466 * stress/arith-sqrt-on-various-types.js:
1467 * stress/arith-tan-on-various-types.js:
1468 * stress/arith-tanh-on-various-types.js:
1469 * stress/arith-trunc-on-various-types.js:
1470 * stress/compare-strict-eq-on-various-types.js:
1472 2018-02-14 Ryan Haddad <ryanhaddad@apple.com>
1474 Skip stress/new-largeish-contiguous-array-with-size.js on arm.
1476 Unreviewed test gardening.
1478 * stress/new-largeish-contiguous-array-with-size.js:
1480 2018-02-14 Saam Barati <sbarati@apple.com>
1482 Setting a VMTrap shouldn't look at topCallFrame since that may imply we're in C code and holding the malloc lock
1483 https://bugs.webkit.org/show_bug.cgi?id=182801
1485 Reviewed by Keith Miller.
1487 * stress/watchdog-dont-malloc-when-in-c-code.js: Added.
1489 2018-02-14 Ryan Haddad <ryanhaddad@apple.com>
1491 Skip JSC test stress/activation-sink-default-value-tdz-error.js on debug.
1492 https://bugs.webkit.org/show_bug.cgi?id=182526
1494 Unreviewed test gardening.
1496 * stress/activation-sink-default-value-tdz-error.js:
1498 2018-02-13 Saam Barati <sbarati@apple.com>
1500 putDirectIndexSlowOrBeyondVectorLength needs to convert to dictionary indexing mode always if attributes are present
1501 https://bugs.webkit.org/show_bug.cgi?id=182755
1502 <rdar://problem/37080864>
1504 Reviewed by Keith Miller.
1506 * stress/always-enter-dictionary-indexing-mode-with-getter.js: Added.
1507 (test1.o.get 10005):
1512 2018-02-13 Caitlin Potter <caitp@igalia.com>
1514 [JSC] cache TaggedTemplate arrays by callsite rather than by contents
1515 https://bugs.webkit.org/show_bug.cgi?id=182717
1517 Reviewed by Yusuke Suzuki.
1519 https://github.com/tc39/ecma262/pull/890 imposes a change to template
1520 literals, to allow template callsite arrays to be collected when the
1521 code containing the tagged template call is collected. This spec change
1522 has received concensus and been ratified.
1524 This change eliminates the eternal map associating template contents
1527 * stress/tagged-template-object-collect.js: Renamed from JSTests/stress/tagged-template-registry-key-collect.js.
1528 * stress/tagged-template-object.js: Renamed from JSTests/stress/tagged-template-registry-key.js.
1529 * stress/tagged-templates-identity.js:
1530 * stress/template-string-tags-eval.js:
1533 2018-02-13 Yusuke Suzuki <utatane.tea@gmail.com>
1535 Support GetArrayLength on ArrayStorage in the FTL
1536 https://bugs.webkit.org/show_bug.cgi?id=182625
1538 Reviewed by Saam Barati.
1540 * stress/array-storage-length.js: Added.
1544 (testSlowPutInBound):
1545 (testSlowPutUncountable):
1546 * stress/undecided-length.js: Added.
1550 2018-02-12 Saam Barati <sbarati@apple.com>
1552 DFG::emitCodeToGetArgumentsArrayLength needs to handle NewArrayBuffer/PhantomNewArrayBuffer
1553 https://bugs.webkit.org/show_bug.cgi?id=182706
1554 <rdar://problem/36833681>
1556 Reviewed by Filip Pizlo.
1558 * stress/get-array-length-phantom-new-array-buffer.js: Added.
1562 2018-02-09 Filip Pizlo <fpizlo@apple.com>
1564 Don't waste memory for error.stack
1565 https://bugs.webkit.org/show_bug.cgi?id=182656
1567 Reviewed by Saam Barati.
1571 * stress/gc-error-stack.js: Added. Shows that the GC forgets frames now.
1572 * stress/no-gc-error-stack.js: Added. Shows that the GC won't forget things if you ask for the stack.
1574 2018-02-08 Yusuke Suzuki <utatane.tea@gmail.com>
1576 [JSC] Update Test262 to Feb 9 version
1577 https://bugs.webkit.org/show_bug.cgi?id=182468
1579 Reviewed by Saam Barati.
1581 2018-02-08 Yusuke Suzuki <utatane.tea@gmail.com>
1583 Unreviewed, fix invalid line terminator in old test262 file part 2
1584 https://bugs.webkit.org/show_bug.cgi?id=182468
1586 * test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js:
1588 2018-02-08 Yusuke Suzuki <utatane.tea@gmail.com>
1590 Unreviewed, fix invalid line terminator in old test262 file
1591 https://bugs.webkit.org/show_bug.cgi?id=182468
1593 * test262/test/language/literals/regexp/7.8.5-1.js:
1595 2018-02-06 Yusuke Suzuki <utatane.tea@gmail.com>
1597 [JSC] Implement Array.prototype.flatMap and Array.prototype.flatten
1598 https://bugs.webkit.org/show_bug.cgi?id=182440
1600 Reviewed by Darin Adler.
1602 * stress/array-flatmap.js: Added.
1607 * stress/array-flatten.js: Added.
1611 * test262/test/built-ins/Array/prototype/flatMap/depth-always-one.js:
1613 Pick test262 82c6148980332febe92a544a1fb653718e9fdb57 change.
1615 2018-02-06 Keith Miller <keith_miller@apple.com>
1617 put_to_scope/get_from_scope should not cache lexical scopes when expecting a global object
1618 https://bugs.webkit.org/show_bug.cgi?id=182549
1619 <rdar://problem/36189995>
1621 Reviewed by Saam Barati.
1623 * stress/var-injection-cache-invalidation.js: Added.
1624 (allocateLotsOfThings):
1627 2018-02-03 Yusuke Suzuki <utatane.tea@gmail.com>
1629 Unreviewed, follow up for test262 update
1630 https://bugs.webkit.org/show_bug.cgi?id=182288
1634 2018-02-02 Ryan Haddad <ryanhaddad@apple.com>
1636 Update test262 to Jan 30 version
1637 https://bugs.webkit.org/show_bug.cgi?id=182288
1639 Unreviewed test gardening.
1641 * test262.yaml: Remove entry for missing test language/expressions/assignment/white-space.js
1643 2018-02-02 Saam Barati <sbarati@apple.com>
1645 When BytecodeParser inserts Unreachable after ForceOSRExit it needs to update ArgumentPositions for Flushes it inserts
1646 https://bugs.webkit.org/show_bug.cgi?id=182368
1647 <rdar://problem/36932466>
1649 Reviewed by Mark Lam.
1651 * stress/flush-after-force-exit-in-bytecodeparser-needs-to-update-argument-positions.js: Added.
1652 (runNearStackLimit.t):
1653 (runNearStackLimit):
1654 (try.runNearStackLimit):
1657 2018-02-02 Yusuke Suzuki <utatane.tea@gmail.com>
1659 Update test262 to Jan 30 version
1660 https://bugs.webkit.org/show_bug.cgi?id=182288
1662 Rubber stamped by Saam Barati.
1664 This patch updates test262 to the latest one, Jan 30 version.
1665 Since added and changed files are too many, we cannot create ChangeLog.
1666 The following files are changed.
1668 Several files are intentionally omitted due to merge failures. We should investigate how to merge files
1669 including some special line terminators (like u2028, u2029).
1672 * test262/test262-Revision.txt:
1675 2018-02-02 Guillaume Emont <guijemont@igalia.com>
1677 JSTests: Skip mozilla/js1_5/Array/regress-157652.js on all memory limited platforms
1678 https://bugs.webkit.org/show_bug.cgi?id=182411
1680 Reviewed by Carlos Alberto Lopez Perez.
1682 This is skipped only on arm memory limited platforms. Until recently
1683 it was not a problem on MIPS as the butterfly was not initialized. But
1684 since r227435, the butterfly is initialized in that test and therefore
1685 memory is allocated, and the test typically takes around 512M, which
1686 means it generally gets OOM-killed on the MIPS buildbot.
1688 * mozilla/mozilla-tests.yaml:
1690 2018-02-01 Mark Lam <mark.lam@apple.com>
1692 Fix broken bounds check in FTL's compileGetMyArgumentByVal().
1693 https://bugs.webkit.org/show_bug.cgi?id=182419
1694 <rdar://problem/37044945>
1696 Reviewed by Saam Barati.
1698 * stress/regress-182419.js: Added.
1700 2018-02-01 Keith Miller <keith_miller@apple.com>
1702 Fix crashes due to mishandling custom sections.
1703 https://bugs.webkit.org/show_bug.cgi?id=182404
1704 <rdar://problem/36935863>
1706 Reviewed by Saam Barati.
1709 (export.default.Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.case.string_appeared_here.this.section):
1710 * wasm/js-api/validate.js:
1713 2018-01-31 Saam Barati <sbarati@apple.com>
1715 JSC incorrectly interpreting script, sets Global Property instead of Global Lexical variable (LiteralParser / JSONP path)
1716 https://bugs.webkit.org/show_bug.cgi?id=182074
1717 <rdar://problem/36846261>
1719 Reviewed by Mark Lam.
1721 * stress/jsonp-program-evaluate-path-must-consider-global-lexical-environment.js: Added.
1727 2018-01-30 Yusuke Suzuki <utatane.tea@gmail.com>
1729 Unreviewed, update test262 expects
1730 https://bugs.webkit.org/show_bug.cgi?id=182232
1734 2018-01-29 Yusuke Suzuki <utatane.tea@gmail.com>
1736 [JSC] Implement trimStart and trimEnd
1737 https://bugs.webkit.org/show_bug.cgi?id=182233
1739 Reviewed by Mark Lam.
1741 * stress/trim.js: Added.
1747 2018-01-29 Yusuke Suzuki <utatane.tea@gmail.com>
1749 [JSC] Relax line terminators in String to make JSON subset of JS
1750 https://bugs.webkit.org/show_bug.cgi?id=182232
1752 Reviewed by Keith Miller.
1754 * ChakraCore/test/es5/Lex_u3.baseline-jsc:
1755 * stress/relaxed-line-terminators-in-string.js: Added.
1758 2018-01-29 Michael Saboff <msaboff@apple.com>
1760 REGRESSION (r227341): DFG_ASSERT failure at JSC::DFG::AtTailAbstractState::forNode()
1761 https://bugs.webkit.org/show_bug.cgi?id=182249
1763 Reviewed by Keith Miller.
1765 New regression test.
1767 * stress/compare-clobber-untypeduse.js: Added.
1769 2018-01-29 Matt Lewis <jlewis3@apple.com>
1771 Unreviewed, rolling out r227725.
1773 This caused internal failures.
1777 "JSC Sampling Profiler: Detect tester and testee when sampling
1779 https://bugs.webkit.org/show_bug.cgi?id=152729
1780 https://trac.webkit.org/changeset/227725
1782 2018-01-29 Yusuke Suzuki <utatane.tea@gmail.com>
1784 JSC Sampling Profiler: Detect tester and testee when sampling in RegExp JIT
1785 https://bugs.webkit.org/show_bug.cgi?id=152729
1787 Reviewed by Saam Barati.
1789 * stress/sampling-profiler-regexp.js: Added.
1790 (platformSupportsSamplingProfiler.test):
1791 (platformSupportsSamplingProfiler.baz):
1792 (platformSupportsSamplingProfiler):
1794 2018-01-29 Yusuke Suzuki <utatane.tea@gmail.com>
1796 [DFG][FTL] WeakMap#set should have DFG node
1797 https://bugs.webkit.org/show_bug.cgi?id=180015
1799 Reviewed by Saam Barati.
1801 * stress/weakmap-set-change-get.js: Added.
1804 * stress/weakmap-set-cse.js: Added.
1807 * stress/weakset-add-change-get.js: Added.
1809 * stress/weakset-add-cse.js: Added.
1812 2018-01-27 Yusuke Suzuki <utatane.tea@gmail.com>
1814 DFG strength reduction fails to convert NumberToStringWithValidRadixConstant for 0 to constant '0'
1815 https://bugs.webkit.org/show_bug.cgi?id=182213
1817 Reviewed by Mark Lam.
1819 * stress/int32-min-to-string.js: Added.
1826 * stress/zero-to-string.js: Added.
1834 2018-01-23 Yusuke Suzuki <utatane.tea@gmail.com>
1836 Add more module scope related tests with code evaluation by string
1837 https://bugs.webkit.org/show_bug.cgi?id=181983
1839 Reviewed by Sam Weinig.
1841 Add more module scope related tests. When the original tests are landed,
1842 we do not have browser integration. This patch adds more module scope tests
1843 with dynamically created script evaluation. We add tests with Function
1844 constructor, direct eval, indirect eval, setTimeout, setInterval, and event handlers.
1846 * modules/scopes-eval.js: Added.
1848 * modules/scopes.js:
1851 2018-01-23 Filip Pizlo <fpizlo@apple.com>
1853 Unreviewed, retire some microbenchmarks that are proportionately very slow. Benchmark running time should be proportional to their value. Microbenchmarks have little value, so they should be very fast.
1855 * microbenchmarks/array-push-3.js: Removed.
1856 * microbenchmarks/bigswitch-indirect-symbol-or-undefined.js: Removed.
1857 * microbenchmarks/double-to-int32.js: Removed.
1858 * microbenchmarks/fake-iterators-that-throw-when-finished.js: Removed.
1859 * microbenchmarks/ftl-polymorphic-bitand.js: Removed.
1860 * microbenchmarks/ftl-polymorphic-bitor.js: Removed.
1861 * microbenchmarks/ftl-polymorphic-bitxor.js: Removed.
1862 * microbenchmarks/ftl-polymorphic-lshift.js: Removed.
1863 * microbenchmarks/ftl-polymorphic-rshift.js: Removed.
1864 * microbenchmarks/ftl-polymorphic-sub.js: Removed.
1865 * microbenchmarks/ftl-polymorphic-urshift.js: Removed.
1866 * microbenchmarks/map-constant-key.js: Removed.
1867 * microbenchmarks/nested-function-parsing.js: Removed.
1868 * microbenchmarks/rest-parameter-allocation-elimination.js: Removed.
1869 * microbenchmarks/spread-large-array.js: Removed.
1870 * microbenchmarks/string-add-constant-folding.js: Removed.
1871 * microbenchmarks/to-lower-case.js: Removed.
1872 * microbenchmarks/undefined-property-access.js: Removed.
1873 * slowMicrobenchmarks/array-push-3.js: Copied from JSTests/microbenchmarks/array-push-3.js.
1874 * slowMicrobenchmarks/bigswitch-indirect-symbol-or-undefined.js: Copied from JSTests/microbenchmarks/bigswitch-indirect-symbol-or-undefined.js.
1875 * slowMicrobenchmarks/double-to-int32.js: Copied from JSTests/microbenchmarks/double-to-int32.js.
1876 * slowMicrobenchmarks/fake-iterators-that-throw-when-finished.js: Copied from JSTests/microbenchmarks/fake-iterators-that-throw-when-finished.js.
1877 * slowMicrobenchmarks/ftl-polymorphic-bitand.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-bitand.js.
1878 * slowMicrobenchmarks/ftl-polymorphic-bitor.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-bitor.js.
1879 * slowMicrobenchmarks/ftl-polymorphic-bitxor.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-bitxor.js.
1880 * slowMicrobenchmarks/ftl-polymorphic-lshift.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-lshift.js.
1881 * slowMicrobenchmarks/ftl-polymorphic-rshift.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-rshift.js.
1882 * slowMicrobenchmarks/ftl-polymorphic-sub.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-sub.js.
1883 * slowMicrobenchmarks/ftl-polymorphic-urshift.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-urshift.js.
1884 * slowMicrobenchmarks/map-constant-key.js: Copied from JSTests/microbenchmarks/map-constant-key.js.
1885 * slowMicrobenchmarks/nested-function-parsing.js: Copied from JSTests/microbenchmarks/nested-function-parsing.js.
1886 * slowMicrobenchmarks/rest-parameter-allocation-elimination.js: Copied from JSTests/microbenchmarks/rest-parameter-allocation-elimination.js.
1887 * slowMicrobenchmarks/spread-large-array.js: Copied from JSTests/microbenchmarks/spread-large-array.js.
1888 * slowMicrobenchmarks/string-add-constant-folding.js: Copied from JSTests/microbenchmarks/string-add-constant-folding.js.
1889 * slowMicrobenchmarks/to-lower-case.js: Copied from JSTests/microbenchmarks/to-lower-case.js.
1890 * slowMicrobenchmarks/undefined-property-access.js: Copied from JSTests/microbenchmarks/undefined-property-access.js.
1892 2018-01-23 Robin Morisset <rmorisset@apple.com>
1894 Update the argument count in DFGByteCodeParser::handleRecursiveCall
1895 https://bugs.webkit.org/show_bug.cgi?id=181739
1896 <rdar://problem/36627662>
1898 Reviewed by Saam Barati.
1900 * stress/recursive-tail-call-with-different-argument-count.js: Added.
1904 2018-01-22 Michael Saboff <msaboff@apple.com>
1906 DFG abstract interpreter needs to properly model effects of some Math ops
1907 https://bugs.webkit.org/show_bug.cgi?id=181886
1909 Reviewed by Saam Barati.
1911 New regression test.
1913 * stress/arith-nodes-abstract-interpreter-untypeduse.js: Added.
1916 2018-01-20 Caio Lima <ticaiolima@gmail.com>
1918 [JSC] NumberPrototype::extractRadixFromArgs incorrectly cast double to int32_t
1919 https://bugs.webkit.org/show_bug.cgi?id=181182
1921 Reviewed by Darin Adler.
1923 * stress/big-int-prototype-to-string-cast-overflow.js: Added.
1924 * stress/big-int-prototype-to-string-exception.js: Added.
1925 * stress/big-int-prototype-to-string-wrong-values.js: Added.
1926 * stress/number-prototype-to-string-cast-overflow.js: Added.
1927 * stress/number-prototype-to-string-exception.js: Added.
1928 * stress/number-prototype-to-string-wrong-values.js: Added.
1930 2018-01-19 Ryan Haddad <ryanhaddad@apple.com>
1932 Disable Atomics when SharedArrayBuffer isn’t enabled
1933 https://bugs.webkit.org/show_bug.cgi?id=181572
1935 Unreviewed test gardening.
1937 * test262.yaml: Skip tests that fail after this change.
1939 2018-01-19 Saam Barati <sbarati@apple.com>
1941 Kill ArithNegate's ArithProfile assert inside BytecodeParser
1942 https://bugs.webkit.org/show_bug.cgi?id=181877
1943 <rdar://problem/36630552>
1945 Reviewed by Mark Lam.
1947 * stress/arith-profile-for-negate-can-see-non-number-due-to-dfg-osr-exit-profiling.js: Added.
1948 (runNearStackLimit):
1953 (i.try.runNearStackLimit):
1956 2018-01-19 Saam Barati <sbarati@apple.com>
1958 Spread's effects are modeled incorrectly both in AI and in Clobberize
1959 https://bugs.webkit.org/show_bug.cgi?id=181867
1960 <rdar://problem/36290415>
1962 Reviewed by Michael Saboff.
1964 * stress/ai-needs-to-model-spreads-effects.js: Added.
1965 (try.p.Symbol.iterator):
1968 * stress/clobberize-needs-to-model-spread-effects.js: Added.
1971 (a.Symbol.iterator):
1973 2018-01-19 Yusuke Suzuki <utatane.tea@gmail.com>
1975 Unreviewed, reduce count of iteration to fix timing out debug JSC test
1976 https://bugs.webkit.org/show_bug.cgi?id=181535
1978 * stress/inserted-recovery-with-set-last-index.js:
1980 2018-01-17 Yusuke Suzuki <utatane.tea@gmail.com>
1982 [DFG][FTL] Introduce PhantomNewRegexp and RegExpExecNonGlobalOrSticky
1983 https://bugs.webkit.org/show_bug.cgi?id=181535
1985 Reviewed by Saam Barati.
1987 * stress/inserted-recovery-with-set-last-index.js: Added.
1990 * stress/materialize-regexp-at-osr-exit.js: Added.
1993 * stress/materialize-regexp-cyclic-regexp-at-osr-exit.js: Added.
1996 * stress/materialize-regexp-cyclic-regexp.js: Added.
2000 * stress/materialize-regexp-cyclic.js: Added.
2004 * stress/materialize-regexp-referenced-from-phantom-regexp-cyclic.js: Added.
2008 * stress/materialize-regexp-referenced-from-phantom-regexp.js: Added.
2012 * stress/materialize-regexp.js: Added.
2015 * stress/phantom-regexp-regexp-exec.js: Added.
2018 * stress/phantom-regexp-string-match.js: Added.
2021 * stress/regexp-last-index-sinking.js: Added.
2025 2018-01-17 Saam Barati <sbarati@apple.com>
2027 Disable Atomics when SharedArrayBuffer isn’t enabled
2028 https://bugs.webkit.org/show_bug.cgi?id=181572
2029 <rdar://problem/36553206>
2031 Reviewed by Michael Saboff.
2033 * stress/isLockFree.js:
2035 2018-01-17 Saam Barati <sbarati@apple.com>
2037 DFG::Node::convertToConstant needs to clear the varargs flags
2038 https://bugs.webkit.org/show_bug.cgi?id=181697
2039 <rdar://problem/36497332>
2041 Reviewed by Yusuke Suzuki.
2043 * stress/dfg-node-convert-to-constant-must-clear-varargs-flags.js: Added.
2048 2018-01-16 Ryan Haddad <ryanhaddad@apple.com>
2050 Unreviewed, rolling out r226937.
2052 Tests added with this change are failing due to a missing
2057 "[JSC] NumberPrototype::extractRadixFromArgs incorrectly cast
2059 https://bugs.webkit.org/show_bug.cgi?id=181182
2060 https://trac.webkit.org/changeset/226937
2062 2018-01-13 Caio Lima <ticaiolima@gmail.com>
2064 [JSC] NumberPrototype::extractRadixFromArgs incorrectly cast double to int32_t
2065 https://bugs.webkit.org/show_bug.cgi?id=181182
2067 Reviewed by Darin Adler.
2070 * stress/big-int-constructor.js:
2071 * stress/big-int-prototype-to-string-cast-overflow.js: Added.
2073 (assertThrowRangeError):
2074 * stress/number-prototype-to-string-cast-overflow.js: Added.
2076 (assertThrowRangeError):
2078 2018-01-12 Saam Barati <sbarati@apple.com>
2080 CheckStructure can be incorrectly subsumed by CheckStructureOrEmpty
2081 https://bugs.webkit.org/show_bug.cgi?id=181177
2082 <rdar://problem/36205704>
2084 Reviewed by Yusuke Suzuki.
2086 * stress/check-structure-ir-ensures-empty-does-not-flow-through.js: Added.
2087 (runNearStackLimit.t):
2088 (runNearStackLimit):
2092 2018-01-12 Saam Barati <sbarati@apple.com>
2094 Each variant of a polymorphic inlined call should be exitOK at the top of the block
2095 https://bugs.webkit.org/show_bug.cgi?id=181562
2096 <rdar://problem/36445624>
2098 Reviewed by Yusuke Suzuki.
2100 * stress/each-block-at-top-of-polymorphic-call-inlining-should-be-exitOK.js: Added.
2104 2018-01-11 Saam Barati <sbarati@apple.com>
2106 When inserting Unreachable in byte code parser we need to flush all the right things
2107 https://bugs.webkit.org/show_bug.cgi?id=181509
2108 <rdar://problem/36423110>
2110 Reviewed by Mark Lam.
2112 * stress/proper-flushing-when-we-insert-unreachable-after-force-exit-in-bytecode-parser.js: Added.
2114 2018-01-11 Saam Barati <sbarati@apple.com>
2116 JITMathIC code in the FTL is wrong when code gets duplicated
2117 https://bugs.webkit.org/show_bug.cgi?id=181525
2118 <rdar://problem/36351993>
2120 Reviewed by Michael Saboff and Keith Miller.
2122 * stress/allow-math-ic-b3-code-duplication.js: Added.
2124 2018-01-11 Saam Barati <sbarati@apple.com>
2126 Our for-in caching is wrong when we add indexed properties on things in the prototype chain
2127 https://bugs.webkit.org/show_bug.cgi?id=181508
2129 Reviewed by Yusuke Suzuki.
2131 * stress/for-in-prototype-with-indexed-properties-should-prevent-caching.js: Added.
2138 2018-01-09 Mark Lam <mark.lam@apple.com>
2140 ASSERTION FAILED: pair.second->m_type & PropertyNode::Getter
2141 https://bugs.webkit.org/show_bug.cgi?id=181388
2142 <rdar://problem/36349351>
2144 Reviewed by Saam Barati.
2146 * stress/regress-181388.js: Added.
2148 2018-01-08 JF Bastien <jfbastien@apple.com>
2150 WebAssembly: mask indexed accesses to Table
2151 https://bugs.webkit.org/show_bug.cgi?id=181412
2152 <rdar://problem/36363236>
2154 Reviewed by Saam Barati.
2156 Update error messages.
2158 * wasm/js-api/table.js:
2159 (assert.throws.WebAssembly.Table.prototype.grow):
2161 2018-01-08 Ryan Haddad <ryanhaddad@apple.com>
2163 Disable SharedArrayBuffer tests missed in r226386.
2164 https://bugs.webkit.org/show_bug.cgi?id=181266
2166 Unreviewed test gardening.
2170 2018-01-06 Yusuke Suzuki <utatane.tea@gmail.com>
2172 Object.getOwnPropertyNames includes "arguments" and "caller" for bound functions
2173 https://bugs.webkit.org/show_bug.cgi?id=181321
2175 Reviewed by Saam Barati.
2177 * stress/bound-function-does-not-have-caller-and-arguments.js: Added.
2182 2018-01-05 Ryan Haddad <ryanhaddad@apple.com>
2184 Unreviewed, attempt to fix test262 after r226386.
2188 2018-01-04 Yusuke Suzuki <utatane.tea@gmail.com>
2190 [DFG] Define defs for MapSet/SetAdd to participate in CSE
2191 https://bugs.webkit.org/show_bug.cgi?id=179911
2193 Reviewed by Saam Barati.
2195 In addition to these tests, map-set-cse.js and set-add-cse.js work.
2197 * stress/map-set-change-get.js: Added.
2200 * stress/map-set-create-bucket.js: Added.
2203 * stress/set-add-create-bucket.js: Added.
2206 2018-01-03 Michael Saboff <msaboff@apple.com>
2208 Disable SharedArrayBuffers from Web API
2209 https://bugs.webkit.org/show_bug.cgi?id=181266
2211 Reviewed by Saam Barati.
2213 Disabled SharedArrayBuffer tests.
2215 * stress/SharedArrayBuffer-opt.js:
2216 * stress/SharedArrayBuffer.js:
2217 * stress/array-buffer-byte-length.js:
2218 * stress/atomics-add-uint32.js:
2219 * stress/atomics-known-int-use.js:
2220 * stress/atomics-neg-zero.js:
2221 * stress/atomics-store-return.js:
2222 * stress/lars-sab-workers.js:
2223 * stress/regress-159779-1.js:
2224 * stress/regress-159779-2.js:
2225 * stress/regress-170473.js:
2228 2018-01-03 Caio Lima <ticaiolima@gmail.com>
2230 [ESNext][BigInt] Failing test stress/big-int-constructor-oom.js into MIPS
2231 https://bugs.webkit.org/show_bug.cgi?id=181258
2233 Reviewed by Antonio Gomes.
2235 * stress/big-int-constructor-gc.js:
2236 * stress/big-int-constructor-oom.js:
2238 2018-01-03 Robin Morisset <rmorisset@apple.com>
2240 Inlining of a function that ends in op_unreachable crashes
2241 https://bugs.webkit.org/show_bug.cgi?id=181027
2243 Reviewed by Filip Pizlo.
2245 * stress/inlining-unreachable.js: Added.
2250 2018-01-02 Saam Barati <sbarati@apple.com>
2252 Incorrect assertion inside AccessCase
2253 https://bugs.webkit.org/show_bug.cgi?id=181200
2254 <rdar://problem/35494754>
2256 Reviewed by Yusuke Suzuki.
2258 * stress/setter-same-base-and-rhs-invalid-assertion-inside-access-case.js: Added.
2263 2018-01-02 Caio Lima <ticaiolima@gmail.com>
2265 [ESNext][BigInt] Implement BigIntConstructor and BigIntPrototype
2266 https://bugs.webkit.org/show_bug.cgi?id=175359
2268 Reviewed by Yusuke Suzuki.
2271 * stress/big-int-as-key.js: Added.
2272 * stress/big-int-constructor-gc.js: Added.
2273 * stress/big-int-constructor-oom.js: Added.
2274 * stress/big-int-constructor-properties.js: Added.
2275 * stress/big-int-constructor-prototype-prop-descriptor.js: Added.
2276 * stress/big-int-constructor-prototype.js: Added.
2277 * stress/big-int-constructor.js: Added.
2278 * stress/big-int-function-apply.js:
2279 * stress/big-int-length.js: Added.
2280 * stress/big-int-prop-descriptor.js: Added.
2281 * stress/big-int-proto-constructor.js: Added.
2282 * stress/big-int-proto-name.js: Added.
2283 * stress/big-int-prototype-properties.js: Added.
2284 * stress/big-int-prototype-proto.js: Added.
2285 * stress/big-int-prototype-value-of.js: Added.
2286 * stress/big-int-prototype-symbol-to-string-tag.js: Added.
2287 * stress/big-int-prototype-to-string-apply.js: Added.
2288 * stress/big-int-to-object.js: Added.
2289 * stress/big-int-to-string.js: Added.
2291 2017-12-28 Saam Barati <sbarati@apple.com>
2293 Assertion used to determine if something is an async generator is wrong
2294 https://bugs.webkit.org/show_bug.cgi?id=181168
2295 <rdar://problem/35640560>
2297 Reviewed by Yusuke Suzuki.
2299 * stress/async-generator-assertion.js: Added.
2301 2017-12-21 Guillaume Emont <guijemont@igalia.com>
2303 Skip stress/splay-flash-access tests on memory limited platforms
2304 https://bugs.webkit.org/show_bug.cgi?id=181086
2306 Reviewed by Carlos Alberto Lopez Perez.
2308 These tests use about 185M of memory, and occasionally get OOM-killed
2309 on memory limited platforms.
2311 * stress/splay-flash-access-1ms.js:
2312 * stress/splay-flash-access.js:
2314 2017-12-21 Guillaume Emont <guijemont@igalia.com>
2316 Skip slow jsc tests on embedded platforms
2317 https://bugs.webkit.org/show_bug.cgi?id=180937
2319 Reviewed by Carlos Alberto Lopez Perez.
2321 The tests typeProfiler/deltablue-for-of.js and
2322 typeProfiler/getter-richards.js take a very long time in the
2323 ftl-no-cjit-type-profiler-force-poly-proto on embedded platform, and
2324 thus always timeout. They should be skipped on these platforms.
2326 * typeProfiler/deltablue-for-of.js: Skip on arm*/mips.
2327 * typeProfiler/getter-richards.js: Skip on arm*/mips.
2329 2017-12-19 Yusuke Suzuki <utatane.tea@gmail.com>
2331 [JSC] Do not check isValid() in op_new_regexp
2332 https://bugs.webkit.org/show_bug.cgi?id=180970
2334 Reviewed by Saam Barati.
2336 * stress/regexp-syntax-error-invalid-flags.js: Added.
2339 2017-12-18 Guillaume Emont <guijemont@igalia.com>
2341 Skip stress/call-apply-exponential-bytecode-size.js unless x86-64 or arm64
2342 https://bugs.webkit.org/show_bug.cgi?id=180712
2344 Reviewed by Michael Catanzaro.
2346 stress/call-apply-exponential-bytecode-size.js crashes if the
2347 ExecutableAllocator's fixedExecutableMemoryPoolSize is less than 64
2348 MB. Currently it is 64 MB or more only on x86-64 and arm64, so we
2349 should skip the test on other platforms.
2351 * stress/call-apply-exponential-bytecode-size.js:
2353 2017-12-17 Yusuke Suzuki <utatane.tea@gmail.com>
2355 [FTL] NewArrayBuffer should be sinked if it is only used for spreading
2356 https://bugs.webkit.org/show_bug.cgi?id=179762
2358 Reviewed by Saam Barati.
2360 * stress/call-varargs-double-new-array-buffer.js: Added.
2364 * stress/call-varargs-spread-new-array-buffer.js: Added.
2368 * stress/call-varargs-spread-new-array-buffer2.js: Added.
2372 * stress/forward-varargs-double-new-array-buffer.js: Added.
2378 * stress/new-array-buffer-sinking-osrexit.js: Added.
2381 * stress/new-array-with-spread-double-new-array-buffer.js: Added.
2384 * stress/new-array-with-spread-with-phantom-new-array-buffer.js: Added.
2388 * stress/phantom-new-array-buffer-forward-varargs.js: Added.
2401 * stress/phantom-new-array-buffer-forward-varargs2.js: Added.
2407 * stress/phantom-new-array-buffer-osr-exit.js: Added.
2414 2017-12-14 Saam Barati <sbarati@apple.com>
2416 The CleanUp after LICM is erroneously removing a Check
2417 https://bugs.webkit.org/show_bug.cgi?id=180852
2418 <rdar://problem/36063494>
2420 Reviewed by Filip Pizlo.
2422 * stress/dont-run-cleanup-after-licm.js: Added.
2424 2017-12-14 Michael Saboff <msaboff@apple.com>
2426 REGRESSION (r225695): Repro crash on yahoo login page
2427 https://bugs.webkit.org/show_bug.cgi?id=180761
2429 Reviewed by JF Bastien.
2431 New regression test.
2433 * stress/regress-180761.js: Added.
2435 2017-12-13 Keith Miller <keith_miller@apple.com>
2437 JSObjects should have a mask for loading indexed properties
2438 https://bugs.webkit.org/show_bug.cgi?id=180768
2440 Reviewed by Mark Lam.
2442 * stress/int16-put-by-val-in-and-out-of-bounds.js:
2445 2017-12-13 Saam Barati <sbarati@apple.com>
2447 Arrow functions need their own structure because they have different properties than sloppy functions
2448 https://bugs.webkit.org/show_bug.cgi?id=180779
2449 <rdar://problem/35814591>
2451 Reviewed by Mark Lam.
2453 * stress/arrow-function-needs-its-own-structure.js: Added.
2459 2017-12-13 Saam Barati <sbarati@apple.com>
2461 Fix how JSFunction handles "caller" and "arguments" for functions that don't have those properties
2462 https://bugs.webkit.org/show_bug.cgi?id=163579
2463 <rdar://problem/35455798>
2465 Reviewed by Mark Lam.
2467 * stress/caller-and-arguments-properties-for-functions-that-dont-have-them.js: Added.
2472 (i.test1.async.foo):
2476 2017-12-13 Saam Barati <sbarati@apple.com>
2478 TypeCheckHoistingPhase needs to emit a CheckStructureOrEmpty if it's doing it for |this|
2479 https://bugs.webkit.org/show_bug.cgi?id=180734
2480 <rdar://problem/35640547>
2482 Reviewed by Yusuke Suzuki.
2484 * stress/type-check-hoisting-phase-hoist-check-structure-on-tdz-this-value.js: Added.
2485 (__isPropertyOfType):
2488 (__getRandomObject):
2494 2017-12-12 Saam Barati <sbarati@apple.com>
2496 We need to model effects of Spread(@PhantomCreateRest) in Clobberize/PreciseLocalClobberize
2497 https://bugs.webkit.org/show_bug.cgi?id=180725
2498 <rdar://problem/35970511>
2500 Reviewed by Michael Saboff.
2502 * stress/model-effects-properly-of-spread-over-phantom-create-rest.js: Added.
2507 2017-12-12 Yusuke Suzuki <utatane.tea@gmail.com>
2509 [JSC] Implement optimized WeakMap and WeakSet
2510 https://bugs.webkit.org/show_bug.cgi?id=179929
2512 Reviewed by Saam Barati.
2514 * microbenchmarks/weak-map-key.js:
2515 * microbenchmarks/weak-set-key.js: Copied from JSTests/microbenchmarks/weak-map-key.js.
2518 (let.start.Date.now):
2519 * stress/basic-weakmap.js: Added.
2522 * stress/basic-weakset.js: Added.
2525 * stress/weakmap-cse-set-break.js: Added.
2528 * stress/weakmap-cse.js: Added.
2531 * stress/weakmap-gc.js: Added.
2533 * stress/weakset-cse-add-break.js: Added.
2536 * stress/weakset-cse.js: Added.
2539 * stress/weakset-gc.js: Added.
2544 2017-12-12 Saam Barati <sbarati@apple.com>
2546 ConstantFoldingPhase rule for GetMyArgumentByVal must check for negative indices
2547 https://bugs.webkit.org/show_bug.cgi?id=180723
2548 <rdar://problem/35859726>
2550 Reviewed by JF Bastien.
2552 * stress/get-my-argument-by-val-constant-folding.js: Added.
2556 2017-12-12 Caio Lima <ticaiolima@gmail.com>
2558 [ESNext][BigInt] Implement BigInt literals and JSBigInt
2559 https://bugs.webkit.org/show_bug.cgi?id=179000
2561 Reviewed by Darin Adler and Yusuke Suzuki.
2563 * bigIntTests.yaml: Added.
2564 * stress/big-int-literal-line-terminator.js: Added.
2565 * stress/big-int-literals.js: Added.
2566 * stress/big-int-operations-error.js: Added.
2567 * stress/big-int-type-of.js: Added.
2568 * stress/big-int-white-space-trailing-leading.js: Added.
2569 * stress/big-int-function-apply.js: Added.
2571 2017-12-11 Saam Barati <sbarati@apple.com>
2573 We need to disableCaching() in ErrorInstance when we materialize properties
2574 https://bugs.webkit.org/show_bug.cgi?id=180343
2575 <rdar://problem/35833002>
2577 Reviewed by Mark Lam.
2579 * stress/disable-caching-when-lazy-materializing-error-property-on-put.js: Added.
2583 (storeToStackAlreadyMaterialized):
2585 2017-12-05 JF Bastien <jfbastien@apple.com>
2587 WebAssembly: don't eagerly checksum
2588 https://bugs.webkit.org/show_bug.cgi?id=180441
2589 <rdar://problem/35156628>
2591 Reviewed by Saam Barati.
2593 Checksum is now disabled, so tests only have <?> as the module
2596 * wasm/function-tests/nameSection.js:
2597 * wasm/function-tests/stack-overflow.js:
2598 (import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.assertOverflows):
2599 (assertOverflows.assertThrows):
2601 * wasm/function-tests/stack-trace.js:
2603 2017-12-04 JF Bastien <jfbastien@apple.com>
2605 Proxy all functions, except the $ objects
2606 https://bugs.webkit.org/show_bug.cgi?id=180375
2608 Reviewed by Saam Barati.
2610 It looks like this test may have broken some executions because I
2611 call some internal objects. Explicitly ignore objects whose name
2612 starts with "$" because it's a bad idea anyways.
2614 * stress/proxy-all-the-parameters.js:
2618 2017-12-04 Saam Barati <sbarati@apple.com>
2620 We need to leave room on the top of the stack for the FTL TailCall slow path so it doesn't overwrite things we want to retrieve when doing a stack walk when throwing an exception
2621 https://bugs.webkit.org/show_bug.cgi?id=180366
2622 <rdar://problem/35685877>
2624 Reviewed by Michael Saboff.
2626 * stress/ftl-tail-call-throw-exception-from-slow-path-recover-stack-values.js: Added.
2628 (test1.base.getParentStaticValue):
2630 (test1.__v_24888.prototype.set prop):
2632 (test2.base.getParentStaticValue):
2634 (test2.__v_24888.prototype.set prop):
2638 2017-12-01 JF Bastien <jfbastien@apple.com>
2640 Try proxying all function arguments
2641 https://bugs.webkit.org/show_bug.cgi?id=180306
2643 Reviewed by Saam Barati.
2645 * stress/proxy-all-the-parameters.js: Added.
2652 (let.o.of.getObjects.let.f.of.getFunctions.catch):
2654 2017-12-01 JF Bastien <jfbastien@apple.com>
2656 JavaScriptCore: missing exception checks in Math functions that take more than one argument
2657 https://bugs.webkit.org/show_bug.cgi?id=180297
2658 <rdar://problem/35745556>
2660 Reviewed by Mark Lam.
2662 * stress/math-exceptions.js: Added.
2666 2017-12-01 JF Bastien <jfbastien@apple.com>
2668 JavaScriptCore: add test for weird class static getters
2669 https://bugs.webkit.org/show_bug.cgi?id=180281
2670 <rdar://problem/35592139>
2672 Reviewed by Mark Lam.
2674 I fixed a bug for it in r224927 and didn't add a test. Do so.
2676 * stress/class-static-get-weird.js: Added.
2677 (c.prototype.get name):
2679 (c.prototype.get arguments):
2680 (c.prototype.get caller):
2681 (c.prototype.get length):
2683 2017-12-01 Saam Barati <sbarati@apple.com>
2685 Having a bad time needs to handle ArrayClass indexing type as well
2686 https://bugs.webkit.org/show_bug.cgi?id=180274
2687 <rdar://problem/35667869>
2689 Reviewed by Keith Miller and Mark Lam.
2691 * stress/array-prototype-slow-put-having-a-bad-time-2.js: Added.
2693 * stress/array-prototype-slow-put-having-a-bad-time.js: Added.
2696 2017-12-01 JF Bastien <jfbastien@apple.com>
2698 WebAssembly: restore cached stack limit after out-call
2699 https://bugs.webkit.org/show_bug.cgi?id=179106
2700 <rdar://problem/35337525>
2702 Reviewed by Saam Barati.
2704 * wasm/function-tests/double-instance.js: Added.
2706 (const.imp.get callAnother):
2708 2017-11-30 JF Bastien <jfbastien@apple.com>
2710 WebAssembly: improve stack trace
2711 https://bugs.webkit.org/show_bug.cgi?id=179343
2713 Reviewed by Saam Barati.
2715 Update the tests to follow the new format. Notably, SHA1 module
2716 hash is now included in traces, and stubs are properly identified.
2718 * wasm/assert.js: Add an assertion which matches regular expressions.
2719 * wasm/function-tests/nameSection.js:
2720 * wasm/function-tests/stack-overflow.js:
2721 (import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.assertOverflows):
2722 (assertOverflows.assertThrows.wasm.1):
2723 (assertOverflows.assertThrows.wasm.0):
2724 (assertOverflows.assertThrows):
2726 * wasm/function-tests/stack-trace.js:
2727 (import.Builder.from.string_appeared_here.assert): Deleted.
2728 * wasm/function-tests/trap-after-cross-instance-call.js:
2729 (wasmFrameCountFromError):
2730 * wasm/function-tests/trap-load-2.js:
2731 (wasmFrameCountFromError):
2732 * wasm/function-tests/trap-load.js:
2733 (wasmFrameCountFromError):
2735 2017-11-30 Mark Lam <mark.lam@apple.com>
2737 jsc shell's flashHeapAccess() should not do JS work after releasing access to the heap.
2738 https://bugs.webkit.org/show_bug.cgi?id=180219
2739 <rdar://problem/35696536>
2741 Reviewed by Filip Pizlo.
2743 * stress/regress-180219.js: Added.
2745 2017-11-30 Yusuke Suzuki <utatane.tea@gmail.com>
2747 [DFG][FTL] operationHasIndexedProperty does not consider negative int32_t
2748 https://bugs.webkit.org/show_bug.cgi?id=180190
2750 Reviewed by Mark Lam.
2752 * stress/operation-in-may-have-negative-int32-array-storage.js: Added.
2755 * stress/operation-in-may-have-negative-int32-contiguous-array.js: Added.
2758 * stress/operation-in-may-have-negative-int32-double-array.js: Added.
2761 * stress/operation-in-may-have-negative-int32-generic-array.js: Added.
2764 * stress/operation-in-may-have-negative-int32-int32-array.js: Added.
2767 * stress/operation-in-may-have-negative-int32.js: Added.
2770 * stress/operation-in-negative-int32-cast.js: Added.
2774 2017-11-28 JF Bastien <jfbastien@apple.com>
2776 Strict and sloppy functions shouldn't share structure
2777 https://bugs.webkit.org/show_bug.cgi?id=180103
2778 <rdar://problem/35667847>
2780 Reviewed by Saam Barati.
2782 * stress/get-by-id-strict-arguments.js: Added. Used to not throw
2783 because the IC was wrong.
2788 * stress/get-by-id-strict-callee.js: Added. Not strictly necessary
2789 in this patch, but may as well test odd strict mode corner cases.
2793 * stress/get-by-id-strict-caller.js: Added. Also IC'd wrong.
2798 * stress/get-by-id-strict-nested-arguments-2.js: Added. Same as
2799 next file, but with invalidation of the FunctionExecutable's
2800 singletonFunction() to hit SpeculativeJIT::compileNewFunction's
2807 * stress/get-by-id-strict-nested-arguments.js: Added. Make sure
2808 strict nesting works correctly.
2812 * stress/strict-function-structure.js: Added. The test used to
2813 assert in objectProtoFuncHasOwnProperty.
2817 * stress/strict-nested-function-structure.js: Added. Nesting.
2823 2017-11-29 Robin Morisset <rmorisset@apple.com>
2825 The recursive tail call optimisation is wrong on closures
2826 https://bugs.webkit.org/show_bug.cgi?id=179835
2828 Reviewed by Saam Barati.
2830 * stress/closure-recursive-tail-call.js: Added.
2833 2017-11-27 JF Bastien <jfbastien@apple.com>
2835 JavaScript rest function parameter with negative index leads to bad DFG abstract interpretation
2836 https://bugs.webkit.org/show_bug.cgi?id=180051
2837 <rdar://problem/35614371>
2839 Reviewed by Saam Barati.
2841 * stress/rest-parameter-negative.js: Added.
2847 2017-11-27 Saam Barati <sbarati@apple.com>
2849 Spread can escape when CreateRest does not
2850 https://bugs.webkit.org/show_bug.cgi?id=180057
2851 <rdar://problem/35676119>
2853 Reviewed by JF Bastien.
2855 * stress/spread-escapes-but-create-rest-does-not.js: Added.
2861 2017-11-21 Yusuke Suzuki <utatane.tea@gmail.com>
2863 [DFG] Add NormalizeMapKey DFG IR
2864 https://bugs.webkit.org/show_bug.cgi?id=179912
2866 Reviewed by Saam Barati.
2868 * stress/map-untyped-normalize-cse.js: Added.
2871 * stress/map-untyped-normalize.js: Added.
2874 * stress/set-untyped-normalize-cse.js: Added.
2876 (set return.set has.set has):
2877 * stress/set-untyped-normalize.js: Added.
2879 (set return.set has):
2881 2017-11-26 Yusuke Suzuki <utatane.tea@gmail.com>
2883 [FTL] Support DeleteById and DeleteByVal
2884 https://bugs.webkit.org/show_bug.cgi?id=180022
2886 Reviewed by Saam Barati.
2888 * stress/delete-by-id.js: Added.
2892 * stress/delete-by-val-ftl.js: Added.
2897 2017-11-26 Yusuke Suzuki <utatane.tea@gmail.com>
2899 [DFG] Introduce {Set,Map,WeakMap}Fields
2900 https://bugs.webkit.org/show_bug.cgi?id=179925
2902 Reviewed by Saam Barati.
2904 * stress/map-set-clobber-map-get.js: Added.
2907 * stress/map-set-does-not-clobber-set-has.js: Added.
2909 * stress/map-set-does-not-clobber-weak-map-get.js: Added.
2912 * stress/set-add-clobber-set-has.js: Added.
2914 * stress/set-add-does-not-clobber-map-get.js: Added.
2917 2017-11-24 Mark Lam <mark.lam@apple.com>
2919 Move unsafe jsc shell test functions to the $vm object.
2920 https://bugs.webkit.org/show_bug.cgi?id=179980
2922 Reviewed by Yusuke Suzuki.
2924 * controlFlowProfiler/driver/driver.js:
2925 * controlFlowProfiler/execution-count.js:
2926 * controlFlowProfiler/if-statement.js:
2927 * controlFlowProfiler/loop-statements.js:
2928 * controlFlowProfiler/switch-statements.js:
2929 * controlFlowProfiler/test-jit.js:
2930 * exceptionFuzz/3d-cube.js:
2931 * exceptionFuzz/date-format-xparb.js:
2932 * exceptionFuzz/earley-boyer.js:
2933 * heapProfiler/basic-edges.js:
2934 * heapProfiler/property-edge-types.js:
2935 * microbenchmarks/try-get-by-id-basic.js:
2936 * microbenchmarks/try-get-by-id-polymorphic.js:
2937 * modules/namespace-object-try-get.js:
2938 * stress/argument-count-bytecode.js:
2939 * stress/argument-intrinsic-basic.js:
2940 * stress/argument-intrinsic-inlining-use-caller-arg.js:
2941 * stress/argument-intrinsic-inlining-with-result-escape.js:
2942 * stress/argument-intrinsic-inlining-with-vararg-with-enough-arguments.js:
2943 * stress/argument-intrinsic-inlining-with-vararg.js:
2944 * stress/argument-intrinsic-nested-inlining.js:
2945 * stress/argument-intrinsic-not-convert-to-get-argument.js:
2946 * stress/argument-intrinsic-with-stack-write.js:
2947 * stress/arity-mismatch-get-argument.js:
2948 * stress/array-message-passing.js:
2949 * stress/array-push-with-force-exit.js:
2950 * stress/check-dom-with-signature.js:
2951 * stress/check-sub-class.js:
2952 * stress/compare-eq-incomplete-profile.js:
2953 * stress/custom-get-set-inline-caching-one-level-up-proto-chain.js:
2954 * stress/do-eval-virtual-call-correctly.js:
2955 * stress/dom-jit-with-poly-proto.js:
2956 * stress/domjit-exception-ic.js:
2957 * stress/domjit-exception.js:
2958 * stress/domjit-getter-complex-with-incorrect-object.js:
2959 * stress/domjit-getter-complex.js:
2960 * stress/domjit-getter-poly.js:
2961 * stress/domjit-getter-proto.js:
2962 * stress/domjit-getter-super-poly.js:
2963 * stress/domjit-getter-try-catch-getter-as-get-by-id-register-restoration.js:
2964 * stress/domjit-getter-type-check.js:
2965 * stress/domjit-getter.js:
2966 * stress/exit-during-inlined-arity-fixup-recover-proper-frame.js:
2967 * stress/for-in-proxy-target-changed-structure.js:
2968 * stress/for-in-proxy.js:
2969 * stress/generational-opaque-roots.js:
2970 * stress/global-const-redeclaration-setting-2.js:
2971 * stress/global-const-redeclaration-setting-3.js:
2972 * stress/global-const-redeclaration-setting-4.js:
2973 * stress/global-const-redeclaration-setting-5.js:
2974 * stress/global-const-redeclaration-setting.js:
2975 * stress/import-basic.js:
2976 * stress/import-from-eval.js:
2977 * stress/import-reject-with-exception.js:
2978 * stress/import-syntax.js:
2979 * stress/impure-get-own-property-slot-inline-cache.js:
2980 * stress/is-constructor.js:
2981 * stress/istypedarrayview-intrinsic.js:
2982 * stress/jsc-setImpureGetterDelegate-on-bad-type.js:
2983 * stress/jsc-test-functions-should-be-more-robust.js:
2984 * stress/object-toString-with-proxy.js:
2985 * stress/poly-proto-custom-value-and-accessor.js:
2986 * stress/proxy-inline-cache.js:
2987 * stress/re-execute-error-module.js:
2988 * stress/regress-150532.js:
2989 * stress/regress-156992.js:
2990 * stress/regress-179619.js:
2991 * stress/resources/shadow-chicken-support.js:
2992 * stress/runtime-array.js:
2993 * stress/sampling-profiler-microtasks.js:
2994 * stress/shadow-chicken-enabled.js:
2995 * stress/spread-correct-global-object-on-exception.js:
2996 * stress/super-get-by-id.js:
2997 * stress/tailCallForwardArguments.js:
2998 * stress/to-object-intrinsic-boolean-edge.js:
2999 * stress/to-object-intrinsic-null-or-undefined-edge.js:
3000 * stress/to-object-intrinsic-number-edge.js:
3001 * stress/to-object-intrinsic-object-edge.js:
3002 * stress/to-object-intrinsic-string-edge.js:
3003 * stress/to-object-intrinsic-symbol-edge.js:
3004 * stress/to-object-intrinsic.js:
3005 * stress/try-catch-custom-getter-as-get-by-id.js:
3006 * stress/try-get-by-id-poly-proto.js:
3007 * stress/try-get-by-id-should-spill-registers-dfg.js:
3008 * stress/try-get-by-id.js:
3009 * typeProfiler/arrow-functions.js:
3010 * typeProfiler/basic.js:
3011 * typeProfiler/captured.js:
3012 * typeProfiler/classes.js:
3013 * typeProfiler/dfg-jit-optimizations.js:
3014 * typeProfiler/dictionary-mode.js:
3015 * typeProfiler/es6-block-scoping.js:
3016 * typeProfiler/es6-classes.js:
3017 * typeProfiler/inheritance.js:
3018 * typeProfiler/int52-dfg.js:
3019 * typeProfiler/loop.js:
3020 * typeProfiler/optional-fields.js:
3021 * typeProfiler/overflow.js:
3022 * typeProfiler/return.js:
3023 * typeProfiler/symbol.js:
3024 * typeProfiler/weird-prototype-chain.js:
3026 2017-11-21 Yusuke Suzuki <utatane.tea@gmail.com>
3028 [DFG][FTL] Support MapSet / SetAdd intrinsics
3029 https://bugs.webkit.org/show_bug.cgi?id=179858
3031 Reviewed by Saam Barati.
3033 * microbenchmarks/map-has-and-set.js: Added.
3035 * stress/map-set-check-failure.js: Added.
3039 * stress/map-set-cse.js: Added.
3042 * stress/set-add-check-failure.js: Added.
3046 * stress/set-add-cse.js: Added.
3049 2017-11-21 Yusuke Suzuki <utatane.tea@gmail.com>
3051 [JSC] Allow poly proto for intrinsic getters
3052 https://bugs.webkit.org/show_bug.cgi?id=179550
3054 Reviewed by Saam Barati.
3056 This change is also tested by existing tests.
3058 1. stress/intrinsic-getter-with-poly-proto.js
3059 2. stress/poly-proto-intrinsic-getter-correctness.js
3061 * stress/intrinsic-getter-with-poly-proto-getter-change.js: Added.
3063 (makePolyProtoObject.foo.C):
3064 (makePolyProtoObject.foo):
3065 (makePolyProtoObject):
3067 * stress/intrinsic-getter-with-poly-proto-proto-change.js: Added.
3069 (makePolyProtoObject.foo.C):
3070 (makePolyProtoObject.foo):
3071 (makePolyProtoObject):
3074 2017-11-20 Guillaume Emont <guijemont@igalia.com>
3076 Skip stress/unshiftCountSlowCase-correct-postCapacity.js on embedded Linux
3077 https://bugs.webkit.org/show_bug.cgi?id=179744
3079 Reviewed by Michael Catanzaro.
3081 This test uses too much memory for our buildbots on these platforms
3082 and gets OOM-killed.
3084 * stress/unshiftCountSlowCase-correct-postCapacity.js:
3085 Skip if $memoryLimited and linux.
3087 2017-11-17 JF Bastien <jfbastien@apple.com>
3089 WebAssembly JS API: throw when a promise can't be created
3090 https://bugs.webkit.org/show_bug.cgi?id=179826
3091 <rdar://problem/35455813>
3093 Reviewed by Mark Lam.
3095 Test WebAssembly.{compile,instantiate} where promise creation
3096 fails because of a stack overflow.
3098 * wasm/js-api/promise-stack-overflow.js: Added.
3099 (const.runNearStackLimit.f.const.t):
3100 (async.testCompile):
3101 (async.testInstantiate):
3103 2017-11-16 Yusuke Suzuki <utatane.tea@gmail.com>
3105 Unreviewed, mark regress-178385.js as memory exhausting
3107 * stress/regress-178385.js:
3109 2017-11-16 Ryan Haddad <ryanhaddad@apple.com>
3111 Mark test262/test/language/statements/class/definition/fn-name-static-precedence.js as passing after r224927.
3113 Unreviewed test gardening.
3117 2017-11-16 Robin Morisset <rmorisset@apple.com>
3119 REGRESSION (r224592): oss-fuzz: jsc: Null-dereference READ in JSC::JSCell::isObject (4216)
3120 https://bugs.webkit.org/show_bug.cgi?id=179763
3121 <rdar://problem/35550513>
3123 Reviewed by Keith Miller.
3125 Just adding a slightly cleaned-up version of the original fuzzer-found test.
3127 * stress/tdz-this-in-try-catch.js: Added.
3131 2017-11-14 Yusuke Suzuki <utatane.tea@gmail.com>
3133 [DFG][FTL] Support Array::DirectArguments with OutOfBounds
3134 https://bugs.webkit.org/show_bug.cgi?id=179594
3136 Reviewed by Saam Barati.
3138 * stress/direct-arguments-in-bounds-to-out-of-bounds.js: Added.
3141 * stress/direct-arguments-out-of-bounds-watchpoint.js: Added.
3145 2017-11-14 Saam Barati <sbarati@apple.com>
3147 We need to set topCallFrame when calling Wasm::Memory::grow from the JIT
3148 https://bugs.webkit.org/show_bug.cgi?id=179639
3149 <rdar://problem/35513018>
3151 Reviewed by JF Bastien.
3153 * wasm/function-tests/grow-memory-cause-gc.js: Added.
3157 2017-11-13 Mark Lam <mark.lam@apple.com>
3159 Add more overflow check book-keeping for MarkedArgumentBuffer.
3160 https://bugs.webkit.org/show_bug.cgi?id=179634
3161 <rdar://problem/35492517>
3163 Reviewed by Saam Barati.
3165 * stress/regress-179634.js: Added.
3167 2017-11-13 Mark Lam <mark.lam@apple.com>
3169 Make the jsc shell loadGetterFromGetterSetter() function more robust.
3170 https://bugs.webkit.org/show_bug.cgi?id=179619
3171 <rdar://problem/35492518>
3173 Reviewed by Saam Barati.
3175 * stress/regress-179619.js: Added.
3177 2017-11-12 Mark Lam <mark.lam@apple.com>
3179 We should ensure that operationStrCat2 and operationStrCat3 are never passed Symbols as arguments.
3180 https://bugs.webkit.org/show_bug.cgi?id=179562
3181 <rdar://problem/35467022>
3183 Reviewed by Saam Barati.
3185 * regress-179562.js: Added.
3187 2017-11-08 Saam Barati <sbarati@apple.com>
3189 A JSFunction's ObjectAllocationProfile should watch the poly prototype watchpoint so it can clear its object allocation profile
3190 https://bugs.webkit.org/show_bug.cgi?id=177792
3192 Reviewed by Yusuke Suzuki.
3194 * microbenchmarks/poly-proto-clear-js-function-allocation-profile.js: Added.
3196 (foo.Foo.prototype.ensureX):
3201 2017-11-08 Ryan Haddad <ryanhaddad@apple.com>
3203 Mark test262.yaml/test262/test/language/statements/try/tco-catch.js as passing.
3204 https://bugs.webkit.org/show_bug.cgi?id=178592
3206 Unreviewed test gardening.
3210 2017-11-08 Robin Morisset <rmorisset@apple.com>
3212 Turn recursive tail calls into loops
3213 https://bugs.webkit.org/show_bug.cgi?id=176601
3215 Reviewed by Saam Barati.
3217 Relanding after https://bugs.webkit.org/show_bug.cgi?id=178834.
3219 Add some simple test that computes factorial in several ways, and other trivial computations.
3220 They all tests the case where foo calls bar (in an inlineable way) that then does a tail call.
3221 Depending on the nature of both calls, it is possible or not to turn the tail call into a loop.
3222 I have no clear way of checking that the call was indeed transformed, but I can check that the code computes the right result
3223 (which it doesn't if that tail call is transformed into a loop in the unsound cases).
3225 * stress/inline-call-to-recursive-tail-call.js: Added.
3240 2017-11-07 Mark Lam <mark.lam@apple.com>
3242 AccessCase::generateImpl() should exclude the result register when restoring registers after a call.
3243 https://bugs.webkit.org/show_bug.cgi?id=179355
3244 <rdar://problem/35263053>
3246 Reviewed by Saam Barati.
3248 * stress/regress-179355.js: Added.
3250 2017-11-05 Yusuke Suzuki <utatane.tea@gmail.com>
3252 JIT call inline caches should cache calls to objects with getCallData/getConstructData traps
3253 https://bugs.webkit.org/show_bug.cgi?id=144458
3255 Reviewed by Saam Barati.
3257 * microbenchmarks/dfg-internal-function-call.js: Added.
3259 * microbenchmarks/dfg-internal-function-construct.js: Added.
3261 * microbenchmarks/dfg-internal-function-not-handled-call.js: Added.
3263 * microbenchmarks/dfg-internal-function-not-handled-construct.js: Added.
3265 * stress/dfg-internal-function-call.js: Added.
3268 * stress/dfg-internal-function-construct.js: Added.
3271 * stress/internal-function-call.js: Added.
3273 * stress/internal-function-construct.js: Added.
3276 2017-11-05 Per Arne Vollan <pvollan@apple.com>
3278 [Win] Skip stress/regress-178385.js.
3279 https://bugs.webkit.org/show_bug.cgi?id=179298
3281 Unreviewed test gardening.
3283 * stress/regress-178385.js:
3285 2017-11-03 Keith Miller <keith_miller@apple.com>
3287 Add test for ic with side effects
3288 https://bugs.webkit.org/show_bug.cgi?id=179268
3290 Reviewed by Saam Barati.
3292 * stress/put-inline-cache-side-effects.js: Added.
3293 (let.i.of.objs.keys):
3296 2017-11-03 Mark Lam <mark.lam@apple.com>
3298 CachedCall (and its clients) needs overflow checks.
3299 https://bugs.webkit.org/show_bug.cgi?id=179185
3301 Reviewed by JF Bastien.
3303 * stress/regress-179185.js: Added.
3305 2017-11-02 Michael Saboff <msaboff@apple.com>
3307 DFG needs to handle code motion of code in for..in loop bodies
3308 https://bugs.webkit.org/show_bug.cgi?id=179212
3310 Reviewed by Keith Miller.
3312 New regression test.
3314 * stress/for-in-side-effects.js: Added.
3322 2017-11-02 Filip Pizlo <fpizlo@apple.com>
3324 AI does not correctly model the clobber case of ArithClz32
3325 https://bugs.webkit.org/show_bug.cgi?id=179188
3327 Reviewed by Michael Saboff.
3329 * stress/arith-clz32-effects.js: Added.
3333 2017-11-01 Michael Saboff <msaboff@apple.com>
3335 Integer overflow in code generated by LoadVarargs processing in DFG and FTL.
3336 https://bugs.webkit.org/show_bug.cgi?id=179140
3338 Reviewed by Saam Barati.
3340 New regression test.
3342 * stress/regress-179140.js: Added.
3346 2017-11-01 Yusuke Suzuki <utatane.tea@gmail.com>
3348 [JSC] Introduce @toObject
3349 https://bugs.webkit.org/show_bug.cgi?id=178726
3351 Reviewed by Saam Barati.
3353 * stress/array-copywithin.js:
3355 * stress/object-constructor-boolean-edge.js: Added.
3358 * stress/object-constructor-global.js: Added.
3360 * stress/object-constructor-null-edge.js: Added.
3363 * stress/object-constructor-number-edge.js: Added.
3366 * stress/object-constructor-object-edge.js: Added.
3370 * stress/object-constructor-string-edge.js: Added.
3373 * stress/object-constructor-symbol-edge.js: Added.
3376 * stress/object-constructor-undefined-edge.js: Added.
3379 * stress/symbol-array-from.js: Added.
3381 * stress/to-object-intrinsic-boolean-edge.js: Added.
3383 (builtin.createBuiltin):
3384 * stress/to-object-intrinsic-null-or-undefined-edge.js: Added.
3386 * stress/to-object-intrinsic-number-edge.js: Added.
3388 (builtin.createBuiltin):
3389 * stress/to-object-intrinsic-object-edge.js: Added.
3391 (builtin.createBuiltin):
3393 * stress/to-object-intrinsic-string-edge.js: Added.
3395 (builtin.createBuiltin):
3396 * stress/to-object-intrinsic-symbol-edge.js: Added.
3398 (builtin.createBuiltin):
3399 * stress/to-object-intrinsic.js: Added.
3402 (builtin.createBuiltin):
3404 2017-10-27 Yusuke Suzuki <utatane.tea@gmail.com>
3406 [DFG][FTL] Introduce StringSlice
3407 https://bugs.webkit.org/show_bug.cgi?id=178934
3409 Reviewed by Saam Barati.
3411 * microbenchmarks/string-slice-empty.js: Added.
3413 * microbenchmarks/string-slice-one-char.js: Added.
3415 * microbenchmarks/string-slice.js: Added.
3418 2017-10-26 Michael Saboff <msaboff@apple.com>
3420 REGRESSION(r222601): We fail to properly backtrack into a sub pattern of a parenthesis with non-zero minimum
3421 https://bugs.webkit.org/show_bug.cgi?id=178890
3423 Reviewed by Keith Miller.
3425 New regression test.
3427 * stress/regress-178890.js: Added.
3429 2017-10-26 Mark Lam <mark.lam@apple.com>
3431 JSRopeString::RopeBuilder::append() should check for overflows.
3432 https://bugs.webkit.org/show_bug.cgi?id=178385
3433 <rdar://problem/35027468>
3435 Reviewed by Saam Barati.
3437 * stress/regress-178385.js: Added.
3439 2017-10-26 Ryan Haddad <ryanhaddad@apple.com>
3441 Unreviewed, rolling out r223961.
3443 The change that required this has been rolled out.
3447 "Mark test262.yaml/test262/test/language/statements/try/tco-
3448 catch.js as passing."
3449 https://bugs.webkit.org/show_bug.cgi?id=178592
3450 https://trac.webkit.org/changeset/223961
3452 2017-10-25 Commit Queue <commit-queue@webkit.org>
3454 Unreviewed, rolling out r223691 and r223729.
3455 https://bugs.webkit.org/show_bug.cgi?id=178834
3457 Broke Speedometer 2 React-Redux-TodoMVC test case (Requested
3458 by rniwa on #webkit).
3460 Reverted changesets:
3462 "Turn recursive tail calls into loops"
3463 https://bugs.webkit.org/show_bug.cgi?id=176601
3464 https://trac.webkit.org/changeset/223691
3466 "REGRESSION(r223691): DFGByteCodeParser.cpp:1483:83: warning:
3467 comparison is always false due to limited range of data type
3469 https://bugs.webkit.org/show_bug.cgi?id=178543
3470 https://trac.webkit.org/changeset/223729
3472 2017-10-25 Ryan Haddad <ryanhaddad@apple.com>
3474 Mark test262.yaml/test262/test/language/statements/try/tco-catch.js as passing.
3475 https://bugs.webkit.org/show_bug.cgi?id=178592
3477 Unreviewed test gardening.
3481 2017-10-24 Yusuke Suzuki <utatane.tea@gmail.com>
3483 [FTL] Support NewStringObject
3484 https://bugs.webkit.org/show_bug.cgi?id=178737
3486 Reviewed by Saam Barati.
3488 * stress/new-string-object.js: Added.
3492 2017-10-15 Yusuke Suzuki <utatane.tea@gmail.com>
3494 [JSC] modules can be visited more than once when resolving bindings through "star" exports as long as the exportName is different each time
3495 https://bugs.webkit.org/show_bug.cgi?id=178308
3497 Reviewed by Mark Lam.
3501 2017-10-23 Yusuke Suzuki <utatane.tea@gmail.com>
3503 [JSC] Use fastJoin in Array#toString
3504 https://bugs.webkit.org/show_bug.cgi?id=178062
3506 Reviewed by Darin Adler.
3508 * microbenchmarks/contiguous-array-to-string.js: Added.
3510 * microbenchmarks/double-array-to-string.js: Added.
3512 * microbenchmarks/int32-array-to-string.js: Added.
3515 2017-10-22 Zan Dobersek <zdobersek@igalia.com>
3517 stress/check-string-ident.js is improperly skipped
3518 https://bugs.webkit.org/show_bug.cgi?id=178642
3520 Reviewed by Saam Barati.
3522 * stress/check-string-ident.js: Drop the defaultNoEagerRun directive
3523 since it enforces the run-jsc-stress-tests script to still set up the
3524 test to run, despite the skip directive that's used before.
3526 2017-10-20 Mark Lam <mark.lam@apple.com>
3528 Add a test case for r214334.
3529 https://bugs.webkit.org/show_bug.cgi?id=169941
3530 <rdar://problem/31221258>
3532 Reviewed by JF Bastien.
3534 * stress/regress-169941.js: Added.
3536 2017-10-19 JF Bastien <jfbastien@apple.com>
3538 WebAssembly: no VM / JS version of everything but Instance
3539 https://bugs.webkit.org/show_bug.cgi?id=177473
3541 Reviewed by Filip Pizlo, Saam Barati.
3543 - Exceeding max on memory growth now returns a range error as per
3544 spec. This is a (very minor) breaking change: it used to throw OOM
3545 error. Update the corresponding test.
3547 * wasm/js-api/memory-grow.js:
3549 * wasm/js-api/table.js:
3552 2017-10-19 Mark Lam <mark.lam@apple.com>
3554 Stringifier::appendStringifiedValue() is missing an exception check.
3555 https://bugs.webkit.org/show_bug.cgi?id=178386
3556 <rdar://problem/35027610>
3558 Reviewed by Saam Barati.
3560 * stress/regress-178386.js: Added.
3562 2017-10-19 Michael Saboff <msaboff@apple.com>
3564 Test262: RegExp/property-escapes/generated/Emoji_Component.js fails with current RegExp Unicode Properties implementation
3565 https://bugs.webkit.org/show_bug.cgi?id=178521
3567 Reviewed by JF Bastien.
3569 * test262.yaml: Enabled test262/test/built-ins/RegExp/property-escapes/generated/Emoji_Component.js as it
3570 now passes with the current version (5.0) of the Emoji spec.
3572 2017-10-19 Robin Morisset <rmorisset@apple.com>
3574 Turn recursive tail calls into loops
3575 https://bugs.webkit.org/show_bug.cgi?id=176601
3577 Reviewed by Saam Barati.
3579 Add some simple test that computes factorial in several ways, and other trivial computations.
3580 They all tests the case where foo calls bar (in an inlineable way) that then does a tail call.
3581 Depending on the nature of both calls, it is possible or not to turn the tail call into a loop.
3582 I have no clear way of checking that the call was indeed transformed, but I can check that the code computes the right result
3583 (which it doesn't if that tail call is transformed into a loop in the unsound cases).
3585 * stress/inline-call-to-recursive-tail-call.js: Added.
3597 2017-10-18 Mark Lam <mark.lam@apple.com>
3599 RegExpObject::defineOwnProperty() does not need to compare values if no descriptor value is specified.
3600 https://bugs.webkit.org/show_bug.cgi?id=177600
3601 <rdar://problem/34710985>
3603 Reviewed by Saam Barati.
3605 * stress/regress-177600.js: Added.
3607 2017-10-18 Mark Lam <mark.lam@apple.com>
3609 The compiler should always register a structure when it adds its transitionWatchPointSet.
3610 https://bugs.webkit.org/show_bug.cgi?id=178420
3611 <rdar://problem/34814024>
3613 Reviewed by Saam Barati and Filip Pizlo.
3615 * stress/regress-178420.js: Added.
3616 (new.Array.10000.map):
3618 2017-10-18 Yusuke Suzuki <utatane.tea@gmail.com>
3620 [JSC] __proto__ getter should be fast
3621 https://bugs.webkit.org/show_bug.cgi?id=178067
3623 Reviewed by Saam Barati.
3625 * stress/dfg-object-proto-accessor.js: Added.
3629 * stress/dfg-object-proto-getter.js: Added.
3633 * stress/dfg-object-prototype-of.js: Added.
3637 * stress/dfg-reflect-get-prototype-of.js: Added.
3641 * stress/intrinsic-getter-with-poly-proto.js: Added.
3643 (makePolyProtoObject.foo.C):
3644 (makePolyProtoObject.foo):
3645 (makePolyProtoObject):
3647 * stress/object-get-prototype-of-filtered.js: Added.
3652 * stress/object-get-prototype-of-mono-proto.js: Added.
3654 (makePolyProtoObject.foo.C):
3655 (makePolyProtoObject.foo):
3656 (makePolyProtoObject):
3658 * stress/object-get-prototype-of-poly-mono-proto.js: Added.
3660 (makePolyProtoObject.foo.C):
3661 (makePolyProtoObject.foo):
3662 (makePolyProtoObject):
3664 * stress/object-get-prototype-of-poly-proto.js: Added.
3666 (makePolyProtoObject.foo.C):
3667 (makePolyProtoObject.foo):
3668 (makePolyProtoObject):
3670 * stress/object-proto-getter-filtered.js: Added.
3675 * stress/object-proto-getter-poly-mono-proto.js: Added.
3677 (makePolyProtoObject.foo.C):
3678 (makePolyProtoObject.foo):
3679 (makePolyProtoObject):
3681 * stress/object-proto-getter-poly-proto.js: Added.
3683 (makePolyProtoObject.foo.C):
3684 (makePolyProtoObject.foo):
3685 (makePolyProtoObject):
3687 * stress/object-prototype-proto-accessors-should-throw-on-undefined-this.js:
3688 * stress/string-proto.js: Added.
3692 2017-10-17 Ryan Haddad <ryanhaddad@apple.com>
3694 Unreviewed, rolling out r223523.
3696 A test for this change is failing on debug JSC bots.
3700 "[JSC] __proto__ getter should be fast"
3701 https://bugs.webkit.org/show_bug.cgi?id=178067
3702 https://trac.webkit.org/changeset/223523
3704 2017-10-10 Yusuke Suzuki <utatane.tea@gmail.com>
3706 [JSC] __proto__ getter should be fast
3707 https://bugs.webkit.org/show_bug.cgi?id=178067
3709 Reviewed by Saam Barati.
3711 * stress/dfg-object-proto-accessor.js: Added.
3715 * stress/dfg-object-proto-getter.js: Added.
3719 * stress/dfg-object-prototype-of.js: Added.
3723 * stress/dfg-reflect-get-prototype-of.js: Added.
3727 * stress/object-get-prototype-of-filtered.js: Added.
3732 * stress/object-get-prototype-of-mono-proto.js: Added.
3734 (makePolyProtoObject.foo.C):
3735 (makePolyProtoObject.foo):
3736 (makePolyProtoObject):
3738 * stress/object-get-prototype-of-poly-mono-proto.js: Added.
3740 (makePolyProtoObject.foo.C):
3741 (makePolyProtoObject.foo):
3742 (makePolyProtoObject):
3744 * stress/object-get-prototype-of-poly-proto.js: Added.
3746 (makePolyProtoObject.foo.C):
3747 (makePolyProtoObject.foo):
3748 (makePolyProtoObject):
3750 * stress/object-proto-getter-filtered.js: Added.
3755 * stress/object-proto-getter-poly-mono-proto.js: Added.
3757 (makePolyProtoObject.foo.C):
3758 (makePolyProtoObject.foo):
3759 (makePolyProtoObject):
3761 * stress/object-proto-getter-poly-proto.js: Added.
3763 (makePolyProtoObject.foo.C):
3764 (makePolyProtoObject.foo):
3765 (makePolyProtoObject):
3767 * stress/object-prototype-proto-accessors-should-throw-on-undefined-this.js:
3768 * stress/string-proto.js: Added.
3772 2017-10-14 Yusuke Suzuki <utatane.tea@gmail.com>
3774 Reland "Add Above/Below comparisons for UInt32 patterns"
3775 https://bugs.webkit.org/show_bug.cgi?id=177281
3777 Reviewed by Saam Barati.
3779 * stress/uint32-comparison-jump.js: Added.
3789 * stress/uint32-comparison.js: Added.
3800 2017-10-12 Yusuke Suzuki <utatane.tea@gmail.com>
3802 WebAssembly: Wasm functions should have either JSFunctionType or TypeOfShouldCallGetCallData
3803 https://bugs.webkit.org/show_bug.cgi?id=178210
3805 Reviewed by Saam Barati.
3807 * wasm/function-tests/trap-from-start-async.js:
3808 (async.StartTrapsAsync):
3809 * wasm/function-tests/trap-from-start.js:
3811 * wasm/js-api/web-assembly-function.js:
3812 (assert.eq.Object.getPrototypeOf):
3813 * wasm/js-api/wrapper-function.js:
3814 (return.new.WebAssembly.Module):
3815 (assert.throws.makeInstance): Deleted.
3816 (assert.throws.Bar): Deleted.
3817 (assert.throws): Deleted.
3819 2017-09-29 Filip Pizlo <fpizlo@apple.com>
3821 Enable gigacage on iOS
3822 https://bugs.webkit.org/show_bug.cgi?id=177586
3824 Reviewed by JF Bastien.
3826 Add tests for when Gigacage gets runtime disabled.
3828 * stress/disable-gigacage-arrays.js: Added.
3830 * stress/disable-gigacage-strings.js: Added.
3832 * stress/disable-gigacage-typed-arrays.js: Added.
3835 2017-10-11 Yusuke Suzuki <utatane.tea@gmail.com>
3837 import.meta should not be assignable
3838 https://bugs.webkit.org/show_bug.cgi?id=178202
3840 Reviewed by Saam Barati.
3842 * modules/import-meta-assignment.js: Added.
3844 (SyntaxError.import.meta.can.shouldThrow):
3846 2017-10-11 Saam Barati <sbarati@apple.com>
3848 Unreviewed. Actually skip certain type profiler tests in debug.
3850 * typeProfiler.yaml:
3851 * typeProfiler/deltablue-for-of.js:
3852 * typeProfiler/getter-richards.js:
3854 2017-10-11 Commit Queue <commit-queue@webkit.org>
3856 Unreviewed, rolling out r223113 and r223121.
3857 https://bugs.webkit.org/show_bug.cgi?id=178182
3859 Reintroduced 20% regression on Kraken (Requested by rniwa on
3862 Reverted changesets:
3864 "Enable gigacage on iOS"
3865 https://bugs.webkit.org/show_bug.cgi?id=177586
3866 https://trac.webkit.org/changeset/223113
3868 "Use one virtual allocation for all gigacages and their
3870 https://bugs.webkit.org/show_bug.cgi?id=178050
3871 https://trac.webkit.org/changeset/223121
3873 2017-10-11 Michael Saboff <msaboff@apple.com>
3875 Disable test262 named capture group tests with direct unicode names and with references before definitions
3876 https://bugs.webkit.org/show_bug.cgi?id=178177
3878 Reviewed by Keith Miller.
3880 Bugs to track fixing these test are:
3881 https://bugs.webkit.org/show_bug.cgi?id=178174 -
3882 "Add support in named capture group identifiers for direct surrogate pairs"
3883 https://bugs.webkit.org/show_bug.cgi?id=178175 -
3884 "Test262 failure with Named Capture Groups - using a reference before the group is defined"
3888 2017-10-11 Caio Lima <ticaiolima@gmail.com>
3890 Object properties are undefined in super.call() but not in this.call()
3891 https://bugs.webkit.org/show_bug.cgi?id=177230
3893 Reviewed by Saam Barati.
3895 * stress/super-call-function-subclass.js: Added.
3899 * stress/super-dot-call-and-apply.js: Added.
3903 (A.prototype.apply):
3904 (B.prototype.testSuper):
3906 (const.obj.new.B.string_appeared_here.obj.testSuper.C):
3907 (D.prototype.testSuper):
3910 2017-10-10 Saam Barati <sbarati@apple.com>
3912 The prototype cache should be aware of the Executable it generates a Structure for
3913 https://bugs.webkit.org/show_bug.cgi?id=177907
3915 Reviewed by Filip Pizlo.
3917 * microbenchmarks/dont-confuse-structures-from-different-executable-as-poly-proto.js: Added.
3927 2017-10-09 Yusuke Suzuki <utatane.tea@gmail.com>
3929 `async` should be able to be used as an imported binding name
3930 https://bugs.webkit.org/show_bug.cgi?id=176573
3932 Reviewed by Saam Barati.
3934 * modules/import-default-async.js: Added.
3935 * modules/import-named-async-as.js: Added.
3936 * modules/import-named-async.js: Added.
3937 * modules/import-named-async/target.js: Added.
3938 * modules/import-namespace-async.js: Added.
3941 2017-09-29 Filip Pizlo <fpizlo@apple.com>
3943 Enable gigacage on iOS
3944 https://bugs.webkit.org/show_bug.cgi?id=177586
3946 Reviewed by JF Bastien.
3948 Add tests for when Gigacage gets runtime disabled.
3950 * stress/disable-gigacage-arrays.js: Added.
3952 * stress/disable-gigacage-strings.js: Added.
3954 * stress/disable-gigacage-typed-arrays.js: Added.
3957 2017-10-09 Michael Saboff <msaboff@apple.com>
3959 Implement RegExp Unicode property escapes
3960 https://bugs.webkit.org/show_bug.cgi?id=172069
3962 Reviewed by JF Bastien.
3964 Enabled Unicode Property tests.
3968 2017-10-09 Commit Queue <commit-queue@webkit.org>
3970 Unreviewed, rolling out r223015 and r223025.
3971 https://bugs.webkit.org/show_bug.cgi?id=178093
3973 Regressed Kraken on iOS by 20% (Requested by keith_mi_ on
3976 Reverted changesets:
3978 "Enable gigacage on iOS"
3979 https://bugs.webkit.org/show_bug.cgi?id=177586
3980 http://trac.webkit.org/changeset/223015
3982 "Unreviewed, disable Gigacage on ARM64 Linux"
3983 https://bugs.webkit.org/show_bug.cgi?id=177586
3984 http://trac.webkit.org/changeset/223025
3986 2017-10-09 Ryan Haddad <ryanhaddad@apple.com>
3988 Update expectations for test262 tests that pass after r223043.
3989 https://bugs.webkit.org/show_bug.cgi?id=176685
3991 Unreviewed test gardening.
3995 2017-10-09 Ryan Haddad <ryanhaddad@apple.com>
3997 Unreviewed, rolling out r223022.
3999 This change introduced 18 test262 failures.
4003 "`async` should be able to be used as an imported binding
4005 https://bugs.webkit.org/show_bug.cgi?id=176573
4006 http://trac.webkit.org/changeset/223022
4008 2017-10-09 Saam Barati <sbarati@apple.com>
4010 3 poly-proto JSC tests timing out on debug after r222827
4011 https://bugs.webkit.org/show_bug.cgi?id=177880
4012 <rdar://problem/34817122>
4016 I'm skipping these type profiler tests on debug since they are long running.
4018 * typeProfiler/deltablue-for-of.js:
4019 * typeProfiler/getter-richards.js:
4021 2017-10-09 Oleksandr Skachkov <gskachkov@gmail.com>
4023 Safari 10 /11 problem with if (!await get(something)).
4024 https://bugs.webkit.org/show_bug.cgi?id=176685
4026 Reviewed by Saam Barati.
4028 * stress/async-await-basic.js:
4029 (awaitEpression.async):
4030 * stress/async-await-syntax.js:
4031 (testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntax):
4032 (prototype.testTopLevelAsyncAwaitSyntaxStrictMode):
4034 2017-10-08 Saam Barati <sbarati@apple.com>
4036 Unreviewed. Make some type profiler tests run for less time to avoid debug timeouts.
4038 * typeProfiler/deltablue-for-of.js:
4039 * typeProfiler/getter-richards.js:
4041 2017-10-07 Yusuke Suzuki <utatane.tea@gmail.com>
4043 `async` should be able to be used as an imported binding name
4044 https://bugs.webkit.org/show_bug.cgi?id=176573
4046 Reviewed by Darin Adler.
4048 * modules/import-default-async.js: Added.
4049 * modules/import-named-async-as.js: Added.
4050 * modules/import-named-async.js: Added.
4051 * modules/import-named-async/target.js: Added.
4052 * modules/import-namespace-async.js: Added.
4054 2017-09-29 Filip Pizlo <fpizlo@apple.com>
4056 Enable gigacage on iOS
4057 https://bugs.webkit.org/show_bug.cgi?id=177586
4059 Reviewed by JF Bastien.
4061 Add tests for when Gigacage gets runtime disabled.
4063 * stress/disable-gigacage-arrays.js: Added.
4065 * stress/disable-gigacage-strings.js: Added.
4067 * stress/disable-gigacage-typed-arrays.js: Added.
4070 2017-10-06 Commit Queue <commit-queue@webkit.org>
4072 Unreviewed, rolling out r222791 and r222873.
4073 https://bugs.webkit.org/show_bug.cgi?id=178031
4075 Caused crashes with workers/wasm LayoutTests (Requested by
4076 ryanhaddad on #webkit).
4078 Reverted changesets:
4080 "WebAssembly: no VM / JS version of everything but Instance"
4081 https://bugs.webkit.org/show_bug.cgi?id=177473
4082 http://trac.webkit.org/changeset/222791
4084 "WebAssembly: address no VM / JS follow-ups"
4085 https://bugs.webkit.org/show_bug.cgi?id=177887
4086 http://trac.webkit.org/changeset/222873
4088 2017-10-05 Saam Barati <sbarati@apple.com>
4090 Make sure all prototypes under poly proto get added into the VM's prototype map
4091 https://bugs.webkit.org/show_bug.cgi?id=177909
4093 Reviewed by Keith Miller.
4095 * stress/poly-proto-prototype-map-having-a-bad-time.js: Added.
4101 2017-09-30 Yusuke Suzuki <utatane.tea@gmail.com>
4103 [JSC] Introduce import.meta
4104 https://bugs.webkit.org/show_bug.cgi?id=177703
4106 Reviewed by Filip Pizlo.
4108 * modules/import-meta-syntax.js: Added.
4111 * modules/import-meta.js: Added.
4112 * modules/import-meta/cocoa.js: Added.
4113 * modules/resources/assert.js:
4114 (export.shouldNotThrow):
4115 * stress/import-syntax.js:
4117 2017-10-04 Saam Barati <sbarati@apple.com>
4119 Make pertinent AccessCases watch the poly proto watchpoint
4120 https://bugs.webkit.org/show_bug.cgi?id=177765
4122 Reviewed by Keith Miller.
4124 * microbenchmarks/poly-proto-and-non-poly-proto-same-ic.js: Added.
4129 * stress/poly-proto-clear-stub.js: Added.
4134 2017-10-04 Ryan Haddad <ryanhaddad@apple.com>
4136 Remove failure expectation for async-func-decl-dstr-obj-id-put-unresolvable-no-strict.js.
4138 Unreviewed test gardening.
4142 2017-10-04 Saam Barati <sbarati@apple.com>
4144 3 poly-proto JSC tests timing out on debug after r222827
4145 https://bugs.webkit.org/show_bug.cgi?id=177880
4147 Rubber stamped by Mark Lam.
4149 * microbenchmarks/poly-proto-access.js:
4150 * typeProfiler/deltablue-for-of.js:
4151 * typeProfiler/getter-richards.js:
4153 2017-10-04 Joseph Pecoraro <pecoraro@apple.com>
4155 Unreviewed, marking tco-catch.js as a failure after test262 update
4156 https://bugs.webkit.org/show_bug.cgi?id=177859
4160 2017-10-04 Yusuke Suzuki <utatane.tea@gmail.com>
4162 Unreviewed, marking one async iterator test262 test failed
4163 https://bugs.webkit.org/show_bug.cgi?id=177859
4167 2017-10-04 Yusuke Suzuki <utatane.tea@gmail.com>
4169 [Test262] Update Test262 to Oct 4 version
4170 https://bugs.webkit.org/show_bug.cgi?id=177859
4172 Reviewed by Sam Weinig.
4174 Let's rebaseline test262. Since it includes the latest changes to ArrayIterator::next,
4175 we no longer need to mark it skip/fail. Also this update includes bunch of BigInt tests.
4178 * test262/harness/promiseHelper.js: Renamed from JSTests/test262/harness/PromiseHelper.js.
4180 * test262/harness/typeCoercion.js:
4181 (testCoercibleToIndexZero):
4182 (testCoercibleToIndexOne):
4183 (testCoercibleToIndexFromIndex):
4184 (testNotCoercibleToIndex.testPrimitiveValue):
4185 (testNotCoercibleToInteger):
4186 (testCoercibleToBigIntZero.testPrimitiveValue):
4187 (testCoercibleToBigIntZero):
4188 (testCoercibleToBigIntOne.testPrimitiveValue):
4189 (testCoercibleToBigIntOne):
4190 (testPrimitiveValue):
4191 (testCoercibleToBigIntFromBigInt):
4192 (testNotCoercibleToBigInt.testPrimitiveValue):
4193 (testNotCoercibleToBigInt.testStringValue):
4194 (testNotCoercibleToBigInt):
4195 * test262/test/built-ins/Array/from/proto-from-ctor-realm.js:
4196 * test262/test/built-ins/Array/length/define-own-prop-length-overflow-realm.js:
4197 * test262/test/built-ins/Array/of/proto-from-ctor-realm.js:
4198 * test262/test/built-ins/Array/proto-from-ctor-realm.js:
4199 * test262/test/built-ins/Array/prototype/concat/create-proto-from-ctor-realm-array.js:
4200 * test262/test/built-ins/Array/prototype/concat/create-proto-from-ctor-realm-non-array.js:
4201 * test262/test/built-ins/Array/prototype/filter/create-proto-from-ctor-realm-array.js:
4202 * test262/test/built-ins/Array/prototype/filter/create-proto-from-ctor-realm-non-array.js:
4203 * test262/test/built-ins/Array/prototype/map/create-proto-from-ctor-realm-array.js:
4204 * test262/test/built-ins/Array/prototype/map/create-proto-from-ctor-realm-non-array.js:
4205 * test262/test/built-ins/Array/prototype/slice/create-proto-from-ctor-realm-array.js:
4206 * test262/test/built-ins/Array/prototype/slice/create-proto-from-ctor-realm-non-array.js:
4207 * test262/test/built-ins/Array/prototype/splice/create-proto-from-ctor-realm-array.js:
4208 * test262/test/built-ins/Array/prototype/splice/create-proto-from-ctor-realm-non-array.js:
4209 * test262/test/built-ins/ArrayBuffer/proto-from-ctor-realm.js:
4210 * test262/test/built-ins/BigInt/asIntN/bigint-tobigint.js:
4211 (testCoercibleToBigIntZero):
4212 (testCoercibleToBigIntOne):
4213 (testNotCoercibleToBigInt):
4216 (toString): Deleted.
4217 (Symbol.toPrimitive): Deleted.
4218 * test262/test/built-ins/BigInt/asIntN/bits-toindex.js:
4219 (testCoercibleToIndexZero):
4220 (testCoercibleToIndexOne):
4221 (testNotCoercibleToIndex):
4223 (assert.sameValue.BigInt.asIntN.valueOf): Deleted.
4224 (assert.sameValue.BigInt.asIntN.toString): Deleted.
4225 (BigInt.asIntN.Symbol.toPrimitive): Deleted.
4226 (BigInt.asIntN.valueOf): Deleted.
4227 (BigInt.asIntN.toString): Deleted.
4228 * test262/test/built-ins/BigInt/asUintN/arithmetic.js: Added.
4229 * test262/test/built-ins/BigInt/asUintN/asUintN.js: Added.
4230 * test262/test/built-ins/BigInt/asUintN/bigint-tobigint.js: Added.
4231 (testCoercibleToBigIntZero):
4232 (testCoercibleToBigIntOne):
4233 (testNotCoercibleToBigInt):
4234 * test262/test/built-ins/BigInt/asUintN/bits-toindex.js: Added.
4235 (testCoercibleToIndexZero):
4236 (testCoercibleToIndexOne):
4237 (testNotCoercibleToIndex):
4238 * test262/test/built-ins/BigInt/asUintN/length.js: Added.
4239 * test262/test/built-ins/BigInt/asUintN/name.js: Added.
4240 * test262/test/built-ins/BigInt/asUintN/order-of-steps.js: Added.
4243 * test262/test/built-ins/BigInt/prototype/valueOf/length.js: Added.
4244 * test262/test/built-ins/BigInt/prototype/valueOf/name.js: Added.
4245 * test262/test/built-ins/BigInt/prototype/valueOf/prop-desc.js: Added.
4246 * test262/test/built-ins/BigInt/prototype/valueOf/return.js: Added.
4247 * test262/test/built-ins/BigInt/prototype/valueOf/this-value-invalid-object-throws.js: Added.
4248 * test262/test/built-ins/BigInt/prototype/valueOf/this-value-invalid-primitive-throws.js: Added.
4249 * test262/test/built-ins/Boolean/proto-from-ctor-realm.js:
4250 * test262/test/built-ins/DataView/proto-from-ctor-realm-sab.js:
4251 * test262/test/built-ins/DataView/proto-from-ctor-realm.js:
4252 * test262/test/built-ins/Date/proto-from-ctor-realm-one.js:
4253 * test262/test/built-ins/Date/proto-from-ctor-realm-two.js:
4254 * test262/test/built-ins/Date/proto-from-ctor-realm-zero.js:
4255 * test262/test/built-ins/Error/proto-from-ctor-realm.js:
4256 * test262/test/built-ins/Function/call-bind-this-realm-undef.js:
4257 * test262/test/built-ins/Function/call-bind-this-realm-value.js:
4258 * test262/test/built-ins/Function/internals/Call/class-ctor-realm.js:
4259 * test262/test/built-ins/Function/internals/Construct/base-ctor-revoked-proxy-realm.js:
4260 * test262/test/built-ins/Function/internals/Construct/derived-return-val-realm.js:
4261 * test262/test/built-ins/Function/internals/Construct/derived-this-uninitialized-realm.js:
4262 * test262/test/built-ins/Function/proto-from-ctor-realm.js:
4263 * test262/test/built-ins/Function/prototype/bind/get-fn-realm.js:
4264 * test262/test/built-ins/Function/prototype/bind/proto-from-ctor-realm.js:
4265 * test262/test/built-ins/GeneratorFunction/proto-from-ctor-realm.js:
4266 * test262/test/built-ins/JSON/stringify/bigint-order.js: Added.
4268 (BigInt.prototype.toJSON):
4269 * test262/test/built-ins/JSON/stringify/bigint-replacer.js: Added.
4271 * test262/test/built-ins/JSON/stringify/bigint-tojson.js: Added.
4272 (BigInt.prototype.toJSON):
4273 * test262/test/built-ins/JSON/stringify/bigint.js:
4274 * test262/test/built-ins/Map/proto-from-ctor-realm.js:
4275 * test262/test/built-ins/Number/S9.3.1_A2_U180E.js:
4276 * test262/test/built-ins/Number/S9.3.1_A3_T1_U180E.js:
4277 * test262/test/built-ins/Number/S9.3.1_A3_T2_U180E.js:
4278 * test262/test/built-ins/Number/proto-from-ctor-realm.js:
4279 * test262/test/built-ins/Object/proto-from-ctor.js:
4280 * test262/test/built-ins/Promise/proto-from-ctor-realm.js:
4281 * test262/test/built-ins/Proxy/apply/arguments-realm.js:
4282 * test262/test/built-ins/Proxy/apply/trap-is-not-callable-realm.js:
4283 * test262/test/built-ins/Proxy/construct/arguments-realm.js:
4284 * test262/test/built-ins/Proxy/construct/trap-is-not-callable-realm.js:
4285 * test262/test/built-ins/Proxy/construct/trap-is-undefined-proto-from-ctor-realm.js:
4286 * test262/test/built-ins/Proxy/defineProperty/desc-realm.js:
4287 * test262/test/built-ins/Proxy/defineProperty/null-handler-realm.js:
4288 * test262/test/built-ins/Proxy/defineProperty/targetdesc-configurable-desc-not-configurable-realm.js:
4289 * test262/test/built-ins/Proxy/defineProperty/targetdesc-not-compatible-descriptor-not-configurable-target-realm.js:
4290 * test262/test/built-ins/Proxy/defineProperty/targetdesc-not-compatible-descriptor-realm.js:
4291 * test262/test/built-ins/Proxy/defineProperty/targetdesc-undefined-not-configurable-descriptor-realm.js:
4292 * test262/test/built-ins/Proxy/defineProperty/targetdesc-undefined-target-is-not-extensible-realm.js:
4293 * test262/test/built-ins/Proxy/defineProperty/trap-is-not-callable-realm.js:
4294 * test262/test/built-ins/Proxy/deleteProperty/trap-is-not-callable-realm.js:
4295 * test262/test/built-ins/Proxy/get-fn-realm.js:
4296 * test262/test/built-ins/Proxy/get/trap-is-not-callable-realm.js:
4297 * test262/test/built-ins/Proxy/getOwnPropertyDescriptor/result-type-is-not-object-nor-undefined-realm.js:
4298 * test262/test/built-ins/Proxy/getOwnPropertyDescriptor/trap-is-not-callable-realm.js:
4299 * test262/test/built-ins/Proxy/getPrototypeOf/trap-is-not-callable-realm.js:
4300 * test262/test/built-ins/Proxy/has/trap-is-not-callable-realm.js:
4301 * test262/test/built-ins/Proxy/isExtensible/trap-is-not-callable-realm.js:
4302 * test262/test/built-ins/Proxy/ownKeys/return-not-list-object-throws-realm.js:
4303 * test262/test/built-ins/Proxy/ownKeys/trap-is-not-callable-realm.js:
4304 * test262/test/built-ins/Proxy/preventExtensions/trap-is-not-callable-realm.js:
4305 * test262/test/built-ins/Proxy/set/trap-is-not-callable-realm.js:
4306 * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-not-callable-realm.js:
4307 * test262/test/built-ins/RegExp/S15.10.2.12_A1_T1.js:
4310 * test262/test/built-ins/RegExp/dotall/with-dotall-unicode.js:
4311 * test262/test/built-ins/RegExp/dotall/with-dotall.js:
4312 * test262/test/built-ins/RegExp/dotall/without-dotall-unicode.js:
4313 * test262/test/built-ins/RegExp/dotall/without-dotall.js:
4314 * test262/test/built-ins/RegExp/proto-from-ctor-realm.js:
4315 * test262/test/built-ins/RegExp/prototype/Symbol.split/splitter-proto-from-ctor-realm.js:
4316 * test262/test/built-ins/RegExp/u180e.js: Added.
4317 * test262/test/built-ins/Set/proto-from-ctor-realm.js:
4318 * test262/test/built-ins/SharedArrayBuffer/proto-from-ctor-realm.js:
4319 * test262/test/built-ins/String/proto-from-ctor-realm.js:
4320 * test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail.js:
4321 * test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail_2.js:
4322 * test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success.js:
4323 * test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_2.js:
4324 * test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_3.js:
4325 * test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_4.js:
4326 * test262/test/built-ins/String/prototype/endsWith/coerced-values-of-position.js:
4327 * test262/test/built-ins/String/prototype/endsWith/endsWith.js:
4328 * test262/test/built-ins/String/prototype/endsWith/length.js:
4329 * test262/test/built-ins/String/prototype/endsWith/name.js:
4330 * test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-position-as-symbol.js:
4331 * test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-position.js:
4332 * test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-as-symbol.js:
4333 * test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-regexp-test.js:
4334 * test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring.js:
4335 * test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-this-as-symbol.js:
4336 * test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-this.js:
4337 * test262/test/built-ins/String/prototype/endsWith/return-false-if-search-start-is-less-than-zero.js:
4338 * test262/test/built-ins/String/prototype/endsWith/return-true-if-searchstring-is-empty.js:
4339 * test262/test/built-ins/String/prototype/endsWith/searchstring-found-with-position.js:
4340 * test262/test/built-ins/String/prototype/endsWith/searchstring-found-without-position.js:
4341 * test262/test/built-ins/String/prototype/endsWith/searchstring-is-regexp-throws.js:
4342 * test262/test/built-ins/String/prototype/endsWith/searchstring-not-found-with-position.js:
4343 * test262/test/built-ins/String/prototype/endsWith/searchstring-not-found-without-position.js:
4344 * test262/test/built-ins/String/prototype/endsWith/this-is-null-throws.js:
4345 * test262/test/built-ins/String/prototype/endsWith/this-is-undefined-throws.js:
4346 * test262/test/built-ins/String/prototype/includes/String.prototype.includes_FailBadLocation.js:
4347 * test262/test/built-ins/String/prototype/includes/String.prototype.includes_FailLocation.js:
4348 * test262/test/built-ins/String/prototype/includes/String.prototype.includes_FailMissingLetter.js:
4349 * test262/test/built-ins/String/prototype/includes/String.prototype.includes_Success.js:
4350 * test262/test/built-ins/String/prototype/includes/String.prototype.includes_SuccessNoLocation.js:
4351 * test262/test/built-ins/String/prototype/includes/String.prototype.includes_lengthProp.js:
4352 * test262/test/built-ins/String/prototype/includes/coerced-values-of-position.js:
4353 * test262/test/built-ins/String/prototype/includes/includes.js:
4354 * test262/test/built-ins/String/prototype/includes/length.js:
4355 * test262/test/built-ins/String/prototype/includes/name.js:
4356 * test262/test/built-ins/String/prototype/includes/return-abrupt-from-position-as-symbol.js:
4357 * test262/test/built-ins/String/prototype/includes/return-abrupt-from-position.js:
4358 * test262/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-as-symbol.js:
4359 * test262/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-regexp-test.js:
4360 * test262/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring.js:
4361 * test262/test/built-ins/String/prototype/includes/return-abrupt-from-this-as-symbol.js:
4362 * test262/test/built-ins/String/prototype/includes/return-abrupt-from-this.js:
4363 * test262/test/built-ins/String/prototype/includes/return-false-with-out-of-bounds-position.js:
4364 * test262/test/built-ins/String/prototype/includes/return-true-if-searchstring-is-empty.js:
4365 * test262/test/built-ins/String/prototype/includes/searchstring-found-with-position.js:
4366 * test262/test/built-ins/String/prototype/includes/searchstring-found-without-position.js:
4367 * test262/test/built-ins/String/prototype/includes/searchstring-is-regexp-throws.js:
4368 * test262/test/built-ins/String/prototype/includes/searchstring-not-found-with-position.js:
4369 * test262/test/built-ins/String/prototype/includes/searchstring-not-found-without-position.js:
4370 * test262/test/built-ins/String/prototype/includes/this-is-null-throws.js:
4371 * test262/test/built-ins/String/prototype/includes/this-is-undefined-throws.js:
4372 * test262/test/built-ins/String/prototype/toLocaleLowerCase/Final_Sigma_U180E.js:
4373 * test262/test/built-ins/String/prototype/toLowerCase/Final_Sigma_U180E.js:
4374 * test262/test/built-ins/String/prototype/trim/u180e.js:
4375 * test262/test/built-ins/Symbol/for/cross-realm.js:
4376 * test262/test/built-ins/Symbol/hasInstance/cross-realm.js:
4377 * test262/test/built-ins/Symbol/isConcatSpreadable/cross-realm.js:
4378 * test262/test/built-ins/Symbol/iterator/cross-realm.js:
4379 * test262/test/built-ins/Symbol/keyFor/cross-realm.js:
4380 * test262/test/built-ins/Symbol/match/cross-realm.js:
4381 * test262/test/built-ins/Symbol/replace/cross-realm.js:
4382 * test262/test/built-ins/Symbol/search/cross-realm.js:
4383 * test262/test/built-ins/Symbol/species/cross-realm.js:
4384 * test262/test/built-ins/Symbol/split/cross-realm.js:
4385 * test262/test/built-ins/Symbol/toPrimitive/cross-realm.js:
4386 * test262/test/built-ins/Symbol/toStringTag/cross-realm.js:
4387 * test262/test/built-ins/Symbol/unscopables/cross-realm.js:
4388 * test262/test/built-ins/ThrowTypeError/distinct-cross-realm.js:
4389 * test262/test/built-ins/TypedArrays/buffer-arg-proto-from-ctor-realm-sab.js:
4390 * test262/test/built-ins/TypedArrays/buffer-arg-proto-from-ctor-realm.js:
4391 * test262/test/built-ins/TypedArrays/internals/DefineOwnProperty/detached-buffer-realm.js:
4392 * test262/test/built-ins/TypedArrays/internals/Get/detached-buffer-realm.js:
4393 * test262/test/built-ins/TypedArrays/internals/GetOwnProperty/detached-buffer-realm.js:
4394 * test262/test/built-ins/TypedArrays/internals/HasProperty/detached-buffer-realm.js:
4395 * test262/test/built-ins/TypedArrays/internals/Set/detached-buffer-realm.js:
4396 * test262/test/built-ins/TypedArrays/length-arg-proto-from-ctor-realm.js:
4397 * test262/test/built-ins/TypedArrays/no-args-proto-from-ctor-realm.js:
4398 * test262/test/built-ins/TypedArrays/object-arg-proto-from-ctor-realm.js:
4399 * test262/test/built-ins/TypedArrays/typedarray-arg-other-ctor-buffer-ctor-custom-species-proto-from-ctor-realm.js:
4400 * test262/test/built-ins/TypedArrays/typedarray-arg-proto-from-ctor-realm.js:
4401 * test262/test/built-ins/TypedArrays/typedarray-arg-same-ctor-buffer-ctor-species-custom-proto-from-ctor-realm.js:
4402 * test262/test/built-ins/WeakMap/proto-from-ctor-realm.js:
4403 * test262/test/built-ins/WeakSet/proto-from-ctor-realm.js:
4404 * test262/test/built-ins/parseFloat/S15.1.2.3_A2_T10_U180E.js:
4405 * test262/test/built-ins/parseInt/S15.1.2.2_A2_T10_U180E.js:
4406 * test262/test/intl402/NumberFormat/prototype/formatToParts/length.js:
4407 * test262/test/language/comments/mongolian-vowel-separator-multi.js:
4408 * test262/test/language/comments/mongolian-vowel-separator-single-eval.js:
4409 * test262/test/language/comments/mongolian-vowel-separator-single.js:
4410 * test262/test/language/eval-code/indirect/realm.js:
4411 * test262/test/language/expressions/assignment/dstr-obj-rest-order.js: Added.
4414 * test262/test/language/expressions/call/eval-realm-indirect.js:
4415 * test262/test/language/expressions/generators/eval-body-proto-realm.js:
4416 * test262/test/language/expressions/greater-than-or-equal/bigint-and-bigint.js: Added.
4417 * test262/test/language/expressions/greater-than-or-equal/bigint-and-non-finite.js: Added.
4418 * test262/test/language/expressions/greater-than-or-equal/bigint-and-number-extremes.js: Added.
4419 * test262/test/language/expressions/greater-than-or-equal/bigint-and-number.js:
4420 * test262/test/language/expressions/greater-than/bigint-and-bigint.js: Added.