ValueAdd should be constant folded if the operands are constant String,Primitive...
[WebKit-https.git] / JSTests / ChangeLog
1 2016-10-11  Saam Barati  <sbarati@apple.com>
2
3         ValueAdd should be constant folded if the operands are constant String,Primitive or Primitive,String
4         https://bugs.webkit.org/show_bug.cgi?id=163182
5
6         Reviewed by Filip Pizlo.
7
8         * microbenchmarks/string-add-constant-folding.js: Added.
9         (assert):
10         (runTests):
11         (add):
12         (test):
13
14 2016-10-07  Mark Lam  <mark.lam@apple.com>
15
16         Object.freeze() and seal() should throw if [[PreventExtensions]]() fails.
17         https://bugs.webkit.org/show_bug.cgi?id=163160
18
19         Reviewed by Saam Barati.
20
21         * stress/object-freeze-with-proxy-preventExtensions.js: Added.
22         * stress/object-seal-with-proxy-preventExtensions.js: Added.
23
24 2016-10-05  Yusuke Suzuki  <utatane.tea@gmail.com>
25
26         [DOMJIT] Add initial CheckDOM and CallDOM implementations
27         https://bugs.webkit.org/show_bug.cgi?id=162941
28
29         Reviewed by Filip Pizlo.
30
31         * stress/domjit-getter-poly.js: Added.
32         (shouldBe):
33         (access):
34         * stress/domjit-getter-proto.js: Added.
35         (shouldBe):
36         (access):
37         * stress/domjit-getter-super-poly.js: Added.
38         (shouldBe):
39         (access):
40         * stress/domjit-getter.js: Added.
41         (shouldBe):
42         (access):
43
44 2016-10-04  Saam Barati  <sbarati@apple.com>
45
46         String.prototype.toLowerCase should be a DFG/FTL intrinsic
47         https://bugs.webkit.org/show_bug.cgi?id=162887
48
49         Reviewed by Filip Pizlo and Yusuke Suzuki.
50
51         * microbenchmarks/to-lower-case.js: Added.
52         (assert):
53         (foo):
54         (bar):
55         * stress/to-lower-case.js: Added.
56         (assert):
57         (foo):
58
59 2016-10-04  JF Bastien  <jfbastien@apple.com>
60
61         WebAssembly: handle a few corner cases
62         https://bugs.webkit.org/show_bug.cgi?id=162884
63
64         Reviewed by Keith Miller.
65
66         * stress/wasm/generate-wasmops-header.js:
67         (const.opcodeIterator): max opcode value
68
69 2016-10-03  JF Bastien  <jfbastien@apple.com>
70
71         Auto-generate WASMOps.h, share with testing JSON file
72         https://bugs.webkit.org/show_bug.cgi?id=162870
73
74         Reviewed by Keith Miller.
75
76         * stress/wasm/to-c++.js: Added. Generates WASMOps.h, siilar to the current one but with more data.
77         (const.opcode_iterator):
78         (opcode_macroizer):
79         * stress/wasm/wasm.json: Added. Data from 0xC binary format version.
80
81 2016-10-03  Saam Barati  <sbarati@apple.com>
82
83         MapHash should speculate on the type of its child node
84         https://bugs.webkit.org/show_bug.cgi?id=161922
85
86         Reviewed by Filip Pizlo.
87
88         * microbenchmarks/map-key-well-typed.js: Added.
89         (assert):
90         (intKey):
91         (doubleKey):
92         (objectKey):
93         (stringKey):
94         (booleanKey):
95         (symbolKey):
96         (cellKey):
97         (assert.doubleKey):
98         (assert.booleanKey):
99
100 2016-10-03  Yusuke Suzuki  <utatane.tea@gmail.com>
101
102         [ES6] GeneratorFunction (a.k.a. GeneratorWrapperFunction)'s prototype object does not have constructor property
103         https://bugs.webkit.org/show_bug.cgi?id=162849
104
105         Reviewed by Geoffrey Garen.
106
107         * test262.yaml:
108
109 2016-10-01  Yusuke Suzuki  <utatane.tea@gmail.com>
110
111         [ES6] Align attributes of Generator related properties to spec
112         https://bugs.webkit.org/show_bug.cgi?id=162839
113
114         Reviewed by Saam Barati.
115
116         * test262.yaml:
117
118 2016-10-01  Yusuke Suzuki  <utatane.tea@gmail.com>
119
120         [ES6] GeneratorFunction constructor should instantiate generator function
121         https://bugs.webkit.org/show_bug.cgi?id=162838
122
123         Reviewed by Saam Barati.
124
125         * stress/generator-function-constructor-is-subclassible.js: Added.
126         (shouldBe):
127         (GeneratorFunction):
128         (prototype.hello):
129         * stress/generator-function-constructor.js:
130         * test262.yaml:
131
132 2016-09-30  Saam Barati  <sbarati@apple.com>
133
134         Arrow functions should not allow duplicate parameter names
135         https://bugs.webkit.org/show_bug.cgi?id=162741
136
137         Reviewed by Filip Pizlo.
138
139         * test262.yaml:
140
141 2016-09-30  Saam Barati  <sbarati@apple.com>
142
143         Make some microbenchmarks run for less time.
144
145         Rubber stamped by Filip Pizlo.
146
147         * microbenchmarks/bound-function-construction-performance.js:
148         (foo):
149         * microbenchmarks/getter-richards-try-catch.js:
150
151 2016-09-29  Joseph Pecoraro  <pecoraro@apple.com>
152
153         Arrow functions do not infer name from computed property but normal functions do
154         https://bugs.webkit.org/show_bug.cgi?id=162720
155
156         Reviewed by Saam Barati.
157
158         * stress/inferred-names.js:
159
160 2016-09-29  Mark Lam  <mark.lam@apple.com>
161
162         Break some slow running tests into smaller bits so they don't time out.
163         https://bugs.webkit.org/show_bug.cgi?id=162743
164
165         Reviewed by Keith Miller.
166
167         The following tests have shown to be slow running:
168             op_div.js
169             op_lshift.js
170             op_mod.js
171             op_mul.js
172             op_rshift.js
173             op_sub.js
174             op_urshift
175
176         These tests auto-generate permutations of values to apply to binary operations.
177         They also test the operations with 3 permutations of value types:
178             1. VarVar - both operands variables
179             2. VarConst - variable operand 1, constant / literal operand 2
180             3. ConstVar - constant / literal operand 1, variable operand 2
181
182         We can prevent these tests from timing out by breaking each up to only run 1 of
183         the 3 permutations of value types.
184
185         * stress/op_div-ConstVar.js: Added.
186         * stress/op_div-VarConst.js: Added.
187         * stress/op_div-VarVar.js: Copied from JSTests/stress/op_div.js.
188         (o1.valueOf): Deleted.
189         * stress/op_div.js: Removed.
190         * stress/op_lshift-ConstVar.js: Added.
191         * stress/op_lshift-VarConst.js: Added.
192         * stress/op_lshift-VarVar.js: Copied from JSTests/stress/op_lshift.js.
193         (o1.valueOf): Deleted.
194         * stress/op_lshift.js: Removed.
195         * stress/op_mod-ConstVar.js: Added.
196         * stress/op_mod-VarConst.js: Added.
197         * stress/op_mod-VarVar.js: Copied from JSTests/stress/op_mod.js.
198         (o1.valueOf): Deleted.
199         * stress/op_mod.js: Removed.
200         * stress/op_mul-ConstVar.js: Added.
201         * stress/op_mul-VarConst.js: Added.
202         * stress/op_mul-VarVar.js: Copied from JSTests/stress/op_mul.js.
203         (o1.valueOf): Deleted.
204         * stress/op_mul.js: Removed.
205         * stress/op_rshift-ConstVar.js: Added.
206         * stress/op_rshift-VarConst.js: Added.
207         * stress/op_rshift-VarVar.js: Copied from JSTests/stress/op_rshift.js.
208         (o1.valueOf): Deleted.
209         * stress/op_rshift.js: Removed.
210         * stress/op_sub-ConstVar.js: Added.
211         * stress/op_sub-VarConst.js: Added.
212         * stress/op_sub-VarVar.js: Copied from JSTests/stress/op_sub.js.
213         (o1.valueOf): Deleted.
214         * stress/op_sub.js: Removed.
215         * stress/op_urshift-ConstVar.js: Added.
216         * stress/op_urshift-VarConst.js: Added.
217         * stress/op_urshift-VarVar.js: Copied from JSTests/stress/op_urshift.js.
218         (o1.valueOf): Deleted.
219         * stress/op_urshift.js: Removed.
220         * stress/resources/binary-op-values.js: Added.
221         (o1.valueOf):
222
223 2016-09-29  Joseph Pecoraro  <pecoraro@apple.com>
224
225         test262: class and function names should be inferred in assignment
226         https://bugs.webkit.org/show_bug.cgi?id=146262
227
228         Reviewed by Saam Barati.
229
230         * stress/arrowfunction-name.js: Added.
231         Quick tests for arrow function names.
232
233         * stress/inferred-names.js: Added.
234         General test for inferred function names.
235
236         * test262.yaml:
237         Pass many tests checking inferred function names.
238
239 2016-09-29  Saam Barati  <sbarati@apple.com>
240
241         We don't properly propagate non-simple-parameter-list when parsing a setter
242         https://bugs.webkit.org/show_bug.cgi?id=160483
243
244         Reviewed by Joseph Pecoraro.
245
246         * test262.yaml:
247
248 2016-09-28  Saam Barati  <sbarati@apple.com>
249
250         stringProtoFuncRepeatCharacter will return `null` when it should not
251         https://bugs.webkit.org/show_bug.cgi?id=161944
252
253         Reviewed by Yusuke Suzuki.
254
255         * stress/pad-start-calls-repeat-character-with-double.js: Added.
256         (logLinesWithContext):
257
258 2016-09-27  Filip Pizlo  <fpizlo@apple.com>
259
260         B3::lowerMacros forgets to before->updatePredecessorsAfter() when lowering ChillMod on ARM64
261         https://bugs.webkit.org/show_bug.cgi?id=162644
262
263         Reviewed by Keith Miller.
264
265         * stress/chill-mod-chill-mod.js: Added.
266         (foo):
267
268 2016-09-26  Csaba Osztrogonác  <oszi@inf.u-szeged.hu>
269
270         Skip stress/string-joining-long-strings-should-not-crash.js on memory limited devices
271         https://bugs.webkit.org/show_bug.cgi?id=162386
272
273         Unreviewed, relanding r206317 after typo fix.
274
275         * stress/string-joining-long-strings-should-not-crash.js:
276
277 2016-09-24  Caitlin Potter  <caitp@igalia.com>
278
279         [JSTests] fix test262 expectations following r206333
280         https://bugs.webkit.org/show_bug.cgi?id=162533
281
282         Reviewed by Yusuke Suzuki.
283
284         * test262.yaml:
285
286 2016-09-23  Caitlin Potter  <caitp@igalia.com>
287
288         [JSC] Implement parsing of Async Functions
289         https://bugs.webkit.org/show_bug.cgi?id=161409
290
291         Reviewed by Yusuke Suzuki.
292
293         * stress/async-await-syntax.js: Added.
294         (testSyntax):
295         (testSyntaxError):
296         (testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntax):
297         (testTopLevelAsyncAwaitSyntaxSloppyMode):
298         (testTopLevelAsyncAwaitSyntaxStrictMode):
299         (testTopLevelAsyncAwaitSyntaxStrictMode.testSyntax):
300         (testNestedAsyncAwaitSyntax.async):
301         (testNestedAsyncAwaitSyntax.foo):
302         (testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntaxError):
303
304 2016-09-23  Ryan Haddad  <ryanhaddad@apple.com>
305
306         Unreviewed, rolling out r206317.
307
308         This change caused timeouts on El Capitan Release JSC tests
309
310         Reverted changeset:
311
312         "Skip stress/string-joining-long-strings-should-not-crash.js
313         on memory limited devices"
314         https://bugs.webkit.org/show_bug.cgi?id=162386
315         http://trac.webkit.org/changeset/206317
316
317 2016-09-23  Csaba Osztrogonác  <ossy@webkit.org>
318
319         Skip mozilla-tests.yaml/js1_5/Array/regress-157652 on memory limited devices
320         https://bugs.webkit.org/show_bug.cgi?id=162381
321
322         Reviewed by Mark Lam.
323
324         * mozilla/mozilla-tests.yaml:
325
326 2016-09-23  Csaba Osztrogonác  <ossy@webkit.org>
327
328         Skip stress/string-joining-long-strings-should-not-crash.js on memory limited devices
329         https://bugs.webkit.org/show_bug.cgi?id=162386
330
331         Reviewed by Mark Lam.
332
333         * stress/string-joining-long-strings-should-not-crash.js:
334
335 2016-09-22  Benjamin Poulain  <bpoulain@apple.com>
336
337         [JSC] Use an inline cache to generate op_negate
338         https://bugs.webkit.org/show_bug.cgi?id=162371
339
340         Reviewed by Saam Barati.
341
342         * stress/op-negate-inline-cache.js: Added.
343
344 2016-09-22  Mark Lam  <mark.lam@apple.com>
345
346         Array.prototype.join should do overflow checks on string joins.
347         https://bugs.webkit.org/show_bug.cgi?id=162459
348
349         Reviewed by Saam Barati.
350
351         * stress/array-join-on-strings-need-overflow-checks.js: Added.
352         (assert):
353         (catch):
354
355 2016-09-22  Joseph Pecoraro  <pecoraro@apple.com>
356
357         test262: Function length should be number of parameters before parameters with default values
358         https://bugs.webkit.org/show_bug.cgi?id=162377
359
360         Reviewed by Saam Barati.
361
362         * stress/es6-default-parameters.js:
363         Add our own tests for function lengths with default parameters.
364
365         * test262.yaml:
366         We now pass all dflt-length tests.
367
368 2016-09-20  Benjamin Poulain  <bpoulain@apple.com>
369
370         [JSC] Do not use EagerRun on tests counting recompilation
371         https://bugs.webkit.org/show_bug.cgi?id=162248
372
373         Reviewed by Geoffrey Garen.
374
375         This patch adds defaultNoEagerRun to all the tests
376         for which recompilation is the symptom of a bug.
377         The reason is that an OSR Exit can be unrelated to the tested
378         nodes when we are running in Eager mode.
379
380         * stress/arith-abs-on-various-types.js:
381         * stress/arith-ceil-on-various-types.js:
382         * stress/arith-clz32-on-various-types.js:
383         * stress/arith-cos-on-various-types.js:
384         * stress/arith-floor-on-various-types.js:
385         * stress/arith-fround-on-various-types.js:
386         * stress/arith-log-on-various-types.js:
387         * stress/arith-round-on-various-types.js:
388         * stress/arith-sin-on-various-types.js:
389         * stress/arith-sqrt-on-various-types.js:
390         * stress/arith-tan-on-various-types.js:
391         * stress/arith-trunc-on-various-types.js:
392
393         * stress/compare-strict-eq-on-various-types.js:
394         (testAllTypesCall):
395         The value 2 came from the other tests.
396         CompareStrictEq supports many more cases, the worst case
397         is bool->int->int52->number->polymorphic.
398
399 2016-09-20  Filip Pizlo  <fpizlo@apple.com>
400
401         Make MarkedBlock state tracking support overlapped allocation and marking state
402         https://bugs.webkit.org/show_bug.cgi?id=161581
403
404         Reviewed by Geoffrey Garen.
405         
406         Add a microbenchmark for why we want to reclaim empty blocks from other allocators.
407
408         * microbenchmarks/switching-size-classes.js: Added.
409
410 2016-09-20  Saam Barati  <sbarati@apple.com>
411
412         Unreviewed, added test for x86 32-bit failure for HasOwnProperty node in DFG.
413
414         * stress/has-own-property-called-on-non-object.js: Added.
415         (let.objs):
416         (new.String):
417         (foo):
418
419 2016-09-20  Yusuke Suzuki  <utatane.tea@gmail.com>
420
421         [JSC] Add `typeof value === "symbol"` handling to bytecode compiler
422         https://bugs.webkit.org/show_bug.cgi?id=162253
423
424         Reviewed by Sam Weinig.
425
426         * microbenchmarks/is-symbol-mixed.js: Added.
427         (isSymbol):
428         (i.let.pair.of.list.String):
429         * microbenchmarks/is-symbol.js: Added.
430         (isSymbol):
431
432 2016-09-19  Saam Barati  <sbarati@apple.com>
433
434         Make HasOwnProperty faster
435         https://bugs.webkit.org/show_bug.cgi?id=161708
436
437         Reviewed by Geoffrey Garen.
438
439         * microbenchmarks/has-own-property-name-cache.js: Added.
440         (foo):
441         * stress/has-own-property-cache-basics.js: Added.
442         (assert):
443         (foo):
444         * stress/has-own-property-name-cache-string-keys.js: Added.
445         (assert):
446         (foo):
447         * stress/has-own-property-name-cache-symbol-keys.js: Added.
448         (assert):
449         (foo):
450         * stress/has-own-property-name-cache-symbols-and-strings.js: Added.
451         (assert):
452         (foo):
453
454 2016-09-19  Benjamin Poulain  <bpoulain@apple.com>
455
456         [JSC] Make the rounding-related nodes support any type
457         https://bugs.webkit.org/show_bug.cgi?id=161895
458
459         Reviewed by Geoffrey Garen.
460
461         * stress/arith-ceil-on-various-types.js: Added.
462         * stress/arith-floor-on-various-types.js: Added.
463         * stress/arith-round-on-various-types.js: Added.
464         * stress/arith-trunc-on-various-types.js: Added.
465
466 2016-09-18  Yusuke Suzuki  <utatane.tea@gmail.com>
467
468         [JSC] Do not need to use defineProperty to define methods for object literals
469         https://bugs.webkit.org/show_bug.cgi?id=162111
470
471         Reviewed by Saam Barati.
472
473         * stress/object-literal-methods.js: Added.
474         (shouldBe):
475         (throw.new.Error.let.object.get name):
476         (throw.new.Error):
477         (shouldBe.let.object.get name):
478         (shouldBe.let.object.get prototype):
479         (shouldBe.let.object.get 42):
480
481 2016-09-16  Yusuke Suzuki  <utatane.tea@gmail.com>
482
483         [DFG] Introduce IsCellWithType node and unify IsJSArray, IsRegExpObject and newly added IsProxyObject
484         https://bugs.webkit.org/show_bug.cgi?id=162000
485
486         Reviewed by Filip Pizlo.
487
488         * microbenchmarks/is-array-for-array.js: Added.
489         (isArray):
490         * microbenchmarks/is-array-for-mixed-case.js: Added.
491         (isArray):
492         * microbenchmarks/is-array-for-non-array-object.js: Added.
493         (isArray):
494         * microbenchmarks/is-array-for-proxy.js: Added.
495         (isArray):
496         (isArray.proxy.throw.new.Error.isArray):
497         (isArray.proxy.throw.new.Error):
498
499 2016-09-16  Yusuke Suzuki  <utatane.tea@gmail.com>
500
501         Unreviewed, gardening test262 results
502
503         Some tests are now passed with JSC, but marked as failed.
504
505         * test262.yaml:
506
507 2016-09-16  Joseph Pecoraro  <pecoraro@apple.com>
508
509         test262: Various Constructors length properties should be configurable
510         https://bugs.webkit.org/show_bug.cgi?id=161998
511
512         Reviewed by Saam Barati.
513
514         * test262.yaml:
515
516 2016-09-15  Commit Queue  <commit-queue@webkit.org>
517
518         Unreviewed, rolling out r205931.
519         https://bugs.webkit.org/show_bug.cgi?id=162021
520
521         Tests for this change fail on 32-bit JSC bots (Requested by
522         ryanhaddad on #webkit).
523
524         Reverted changeset:
525
526         "[JSC] Make the rounding-related nodes support any type"
527         https://bugs.webkit.org/show_bug.cgi?id=161895
528         http://trac.webkit.org/changeset/205931
529
530 2016-09-15  Joseph Pecoraro  <pecoraro@apple.com>
531
532         test262: Should be a SyntaxError for duplicate parameter names in function with default parameters
533         https://bugs.webkit.org/show_bug.cgi?id=162013
534
535         Reviewed by Saam Barati.
536
537         * stress/es6-default-parameters.js:
538         * test262.yaml:
539
540 2016-09-14  Joseph Pecoraro  <pecoraro@apple.com>
541
542         ASSERT_NOT_REACHED when using spread inside an array literal with Function.prototype.apply
543         https://bugs.webkit.org/show_bug.cgi?id=162003
544
545         Reviewed by Saam Barati.
546
547         * stress/spread-calling.js:
548         * test262.yaml:
549
550 2016-09-14  Michael Saboff  <msaboff@apple.com>
551
552         YARR doesn't check for invalid flags for literal regular expressions
553         https://bugs.webkit.org/show_bug.cgi?id=161995
554
555         Reviewed by Mark Lam.
556
557         New test.
558
559         * stress/regress-161995.js: Added.
560         (testStatic):
561         (catch):
562
563 2016-09-14  Joseph Pecoraro  <pecoraro@apple.com>
564
565         test262: TypedArray constructors length should be 3 and configurable
566         https://bugs.webkit.org/show_bug.cgi?id=161955
567
568         Reviewed by Mark Lam.
569
570         * test262.yaml:
571
572 2016-09-14  Benjamin Poulain  <bpoulain@apple.com>
573
574         [JSC] Make the rounding-related nodes support any type
575         https://bugs.webkit.org/show_bug.cgi?id=161895
576
577         Reviewed by Geoffrey Garen.
578
579         * stress/arith-ceil-on-various-types.js: Added.
580         * stress/arith-floor-on-various-types.js: Added.
581         * stress/arith-round-on-various-types.js: Added.
582         * stress/arith-trunc-on-various-types.js: Added.
583
584 2016-09-14  Joseph Pecoraro  <pecoraro@apple.com>
585
586         TaggedTemplateString function calls should emit tail position calls
587         https://bugs.webkit.org/show_bug.cgi?id=161948
588
589         Reviewed by Yusuke Suzuki.
590
591         * stress/tail-call-recognize.js:
592         (runTests):
593         Ensure a tagged template string function call is tail call.
594
595         * test262.yaml:
596         These now pass.
597
598 2016-09-14  Joseph Pecoraro  <pecoraro@apple.com>
599
600         test262: Array.prototype.slice should always set length
601         https://bugs.webkit.org/show_bug.cgi?id=161953
602
603         Reviewed by Mark Lam.
604
605         * test262.yaml:
606
607 2016-09-13  JF Bastien  <jfbastien@apple.com>
608
609         Support jsc shell builtin `read`
610         https://bugs.webkit.org/show_bug.cgi?id=161662
611
612         Reviewed by Keith Miller.
613
614         * stress/jsc-read.js: Added.
615         (test): test `read` and `readFile` shell builtins, in string and binary mode.
616
617 2016-09-12  Skachkov Oleksandr  <gskachkov@gmail.com>
618
619         ES6: Classes: Should be allowed to create a static method with name "arguments"
620         https://bugs.webkit.org/show_bug.cgi?id=152985
621
622         Reviewed by Keith Miller.
623
624         * test262.yaml:
625
626 2016-09-12  Saam Barati  <sbarati@apple.com>
627
628         Speed up Function.prototype.bind a bit by making it a builtin
629         https://bugs.webkit.org/show_bug.cgi?id=161879
630
631         Reviewed by Filip Pizlo.
632
633         * microbenchmarks/function-bind-inlining.js: Added.
634         (assert):
635         (test):
636         (test2):
637         (foo):
638         * microbenchmarks/function-bind-no-inlining.js: Added.
639         (assert):
640         (test):
641         (test2):
642         (foo):
643
644 2016-09-12  Saam Barati  <sbarati@apple.com>
645
646         HashMapImpl should take into account m_deleteCount in its load factor and it should be able to rehash the table to be smaller
647         https://bugs.webkit.org/show_bug.cgi?id=161640
648
649         Reviewed by Geoffrey Garen.
650
651         * microbenchmarks/map-rehash.js: Added.
652         * stress/map-delete.js: Added.
653         (assert):
654         * stress/map-rehash-2.js: Added.
655         (assert):
656         * stress/map-rehash.js: Added.
657         (assert):
658
659 2016-09-12  Yusuke Suzuki  <utatane.tea@gmail.com>
660
661         Unreviewed, fix tests for different libm environments
662         https://bugs.webkit.org/show_bug.cgi?id=161857
663
664         * stress/ftl-arithtan.js:
665
666 2016-09-12  Benjamin Poulain  <bpoulain@apple.com>
667
668         [JSC] Use GetArrayLength for JSArray.length even when the array type is undecided
669         https://bugs.webkit.org/show_bug.cgi?id=161671
670
671         Reviewed by Geoffrey Garen.
672
673         * stress/get-array-length-on-undecided.js: Added.
674
675 2016-09-12  Yusuke Suzuki  <utatane.tea@gmail.com>
676
677         [DFG][FTL] Add ArithTan
678         https://bugs.webkit.org/show_bug.cgi?id=161857
679
680         Reviewed by Filip Pizlo.
681
682         * microbenchmarks/tan.js: Added.
683         * stress/arith-tan-on-various-types.js: Added.
684         (let.validInputTypedTestCases.validInputTestCases.map):
685         (isIdentical):
686         (opaqueTanNoArgument):
687         (testNoArgument):
688         (opaqueAllTypesTan):
689         (testAllTypesCall):
690         (testTangleTypeCall):
691         (testConstant):
692         (opaqueTanForSideEffects):
693         (testSideEffect.let.testObject.valueOf):
694         (testSideEffect):
695         (opaqueTanForCSE):
696         (testCSE.let.testObject.valueOf):
697         (testCSE):
698         (opaqueTanForDCE):
699         (testDCE.let.testObject.valueOf):
700         (testDCE):
701         (testException.opaqueTanWithException):
702         (testException):
703         * stress/ftl-arithtan.js: Added.
704         (foo):
705
706 2016-09-12  Saam Barati  <sbarati@apple.com>
707
708         MapHash should do constant folding when it has a constant argument and its legal to hash that value
709         https://bugs.webkit.org/show_bug.cgi?id=161639
710
711         Reviewed by Filip Pizlo.
712
713         * microbenchmarks/map-constant-key.js: Added.
714         (assert):
715         (test):
716         (foo):
717
718 2016-09-12  Michael Saboff  <msaboff@apple.com>
719
720         JSC test timeout: ChakraCore.yaml/ChakraCore/test/Bugs/bug56026_trycatch.js.default
721         https://bugs.webkit.org/show_bug.cgi?id=161863
722
723         Reviewed by Saam Barati.
724
725         * ChakraCore.yaml:
726         Disabled Bugs/bug56026_trycatch.js.
727
728 2016-09-09  Michael Saboff  <msaboff@apple.com>
729
730         Unreviewed, rolling r205759 back in with a fix.
731
732         The expectation file, JSTests/ChakraCore/test/Lib/tostring.baseline-jsc,
733         should be named "toString.baseline-jsc".
734
735         * ChakraCore/test/Lib/toString.baseline-jsc: Copied from JSTests/ChakraCore/test/Lib/tostring.baseline-jsc.
736         * ChakraCore/test/Lib/tostring.baseline-jsc: Removed.
737
738 2016-09-09  Michael Saboff  <msaboff@apple.com>
739
740         Disable three flakey Chakra Tests
741         https://bugs.webkit.org/show_bug.cgi?id=161807
742
743         Reviewed by Saam Barati.
744
745         * ChakraCore.yaml: Disabled the flakey tests
746         ChakraCore/test/Array/protoLookup_native.js
747         ChakraCore/test/LetConst/delete.js
748         ChakraCore/test/fieldopts/fieldhoist_sideeffect.js
749
750 2016-09-08  Saam Barati  <sbarati@apple.com>
751
752         We should inline operationConvertJSValueToBoolean into JIT code
753         https://bugs.webkit.org/show_bug.cgi?id=161729
754
755         Reviewed by Filip Pizlo.
756
757         * stress/value-to-boolean.js: Added.
758         (assert):
759         (test1):
760         (test2):
761         (test3):
762
763 2016-09-08  Mark Lam  <mark.lam@apple.com>
764
765         REGRESSION (r205569?): 32-bit JSC test timeout: stress/rest-parameter-many-arguments.js.dfg-maximal-flush-validate-no-cjit
766         https://bugs.webkit.org/show_bug.cgi?id=161756
767
768         Reviewed by Saam Barati.
769
770         It looks like the 32-bit JSC bot is just too slow at running this test with the
771         dfg-maximal-flush-validate-no-cjit configuration.  We'll try excluding that
772         configuration.
773
774         * stress/rest-parameter-many-arguments.js:
775
776 2016-09-08  JF Bastien  <jfbastien@apple.com>
777
778         Delete older WebAssembly tests
779         https://bugs.webkit.org/show_bug.cgi?id=161758
780
781         Reviewed by Filip Pizlo.
782
783         They're not running, rely on the older polyfill prototype, and the older code was deleted in: https://trac.webkit.org/changeset/204180
784
785         * stress/wasm-arithmetic-float32.js: Removed.
786         * stress/wasm-arithmetic-float64.js: Removed.
787         * stress/wasm-arithmetic-int32.js: Removed.
788         * stress/wasm-calls.js: Removed.
789         * stress/wasm-comma.js: Removed.
790         * stress/wasm-control-flow.js: Removed.
791         * stress/wasm-globals.js: Removed.
792         * stress/wasm-linear-memory.js: Removed.
793         * stress/wasm-locals.js: Removed.
794         * stress/wasm-relational.js: Removed.
795         * stress/wasm-type-conversion.js: Removed.
796         * stress/wasm/arithmetic-float32.wasm: Removed.
797         * stress/wasm/arithmetic-float64.wasm: Removed.
798         * stress/wasm/arithmetic-int32.wasm: Removed.
799         * stress/wasm/calls.wasm: Removed.
800         * stress/wasm/comma.wasm: Removed.
801         * stress/wasm/control-flow.wasm: Removed.
802         * stress/wasm/globals.wasm: Removed.
803         * stress/wasm/linear-memory.wasm: Removed.
804         * stress/wasm/locals.wasm: Removed.
805         * stress/wasm/relational.wasm: Removed.
806         * stress/wasm/type-conversion.wasm: Removed.
807
808 2016-09-08  Per Arne Vollan  <pvollan@apple.com>
809
810         [Win] Exception fuzz tests fail
811         https://bugs.webkit.org/show_bug.cgi?id=140928
812
813         Reviewed by Mark Lam.
814
815         Unskip tests.
816
817         * exceptionFuzz.yaml:
818
819 2016-09-06  Saam Barati  <sbarati@apple.com>
820
821         ProxyObject's structure should not have ObjectPrototype as its prototype and it should not have special behavior for intercepting "__proto__"
822         https://bugs.webkit.org/show_bug.cgi?id=161558
823
824         Reviewed by Benjamin Poulain.
825
826         * stress/proxy-get-prototype-of.js:
827         * stress/proxy-set-prototype-of.js:
828         (let.handler.setPrototypeOf): Deleted.
829         * stress/proxy-underscore-proto.js: Added.
830         (assert):
831
832 2016-09-06  Saam Barati  <sbarati@apple.com>
833
834         Make JSMap and JSSet faster
835         https://bugs.webkit.org/show_bug.cgi?id=160989
836
837         Reviewed by Filip Pizlo.
838
839         * microbenchmarks/dense-set.js: Added.
840         (bench):
841         * microbenchmarks/large-map-iteration-with-additions.js: Added.
842         (bar):
843         (foo):
844         * microbenchmarks/large-map-iteration-with-mutation.js: Added.
845         (bar):
846         (foo):
847         * microbenchmarks/large-map-iteration.js: Added.
848         (bar):
849         (foo):
850         * microbenchmarks/map-get-get-cse.js: Added.
851         (bar):
852         (foo):
853         * microbenchmarks/map-has-get-cse-opportunity.js: Added.
854         (bar):
855         (foo):
856         * microbenchmarks/sparse-set.js: Added.
857         (bench):
858         * stress/map-cse-correctness.js: Added.
859         (assert):
860         (testHas):
861         (testGet):
862         (foo):
863         * stress/map-iteration.js: Added.
864         (assert):
865         (test1):
866         (test2):
867         (test3):
868         (test4):
869         (test5):
870         (test6):
871         (test7):
872         (test8):
873         (test9):
874         (test10):
875         (test11):
876         (test12):
877         (test13):
878         (test14):
879         (test15):
880         (test16):
881         (test17):
882         (test18):
883
884 2016-09-06  Benjamin Poulain  <bpoulain@apple.com>
885
886         [JSC] Make ArithClz32 work with Cell arguments
887         https://bugs.webkit.org/show_bug.cgi?id=161369
888
889         Reviewed by Geoffrey Garen.
890
891         * stress/arith-clz32-on-various-types.js: Added.
892
893 2016-09-06  Commit Queue  <commit-queue@webkit.org>
894
895         Unreviewed, rolling out r205504.
896         https://bugs.webkit.org/show_bug.cgi?id=161645
897
898         Broke the iOS device build (Requested by ryanhaddad on
899         #webkit).
900
901         Reverted changeset:
902
903         "Make JSMap and JSSet faster"
904         https://bugs.webkit.org/show_bug.cgi?id=160989
905         http://trac.webkit.org/changeset/205504
906
907 2016-09-06  Saam Barati  <sbarati@apple.com>
908
909         Make JSMap and JSSet faster
910         https://bugs.webkit.org/show_bug.cgi?id=160989
911
912         Reviewed by Filip Pizlo.
913
914         * microbenchmarks/dense-set.js: Added.
915         (bench):
916         * microbenchmarks/large-map-iteration-with-additions.js: Added.
917         (bar):
918         (foo):
919         * microbenchmarks/large-map-iteration-with-mutation.js: Added.
920         (bar):
921         (foo):
922         * microbenchmarks/large-map-iteration.js: Added.
923         (bar):
924         (foo):
925         * microbenchmarks/map-get-get-cse.js: Added.
926         (bar):
927         (foo):
928         * microbenchmarks/map-has-get-cse-opportunity.js: Added.
929         (bar):
930         (foo):
931         * microbenchmarks/sparse-set.js: Added.
932         (bench):
933         * stress/map-cse-correctness.js: Added.
934         (assert):
935         (testHas):
936         (testGet):
937         (foo):
938         * stress/map-iteration.js: Added.
939         (assert):
940         (test1):
941         (test2):
942         (test3):
943         (test4):
944         (test5):
945         (test6):
946         (test7):
947         (test8):
948         (test9):
949         (test10):
950         (test11):
951         (test12):
952         (test13):
953         (test14):
954         (test15):
955         (test16):
956         (test17):
957         (test18):
958
959 2016-08-31  Filip Pizlo  <fpizlo@apple.com>
960
961         Butterflies should be allocated in Auxiliary MarkedSpace instead of CopiedSpace and we should rewrite as much of the GC as needed to make this not a regression
962         https://bugs.webkit.org/show_bug.cgi?id=160125
963
964         Reviewed by Geoffrey Garen and Keith Miller.
965         
966         Most of the things I did properly covered by existing tests, but I found some simple cases of
967         unshifting that had sketchy coverage.
968
969         * stress/array-storage-array-unshift.js: Added.
970         * stress/contiguous-array-unshift.js: Added.
971         * stress/double-array-unshift.js: Added.
972         * stress/int32-array-unshift.js: Added.
973
974 2016-09-02  Michael Saboff  <msaboff@apple.com>
975
976         Unreviewed fix after importing Chakra test
977
978         * ChakraCore.yaml: Skipped ChakraCore/test/UnifiedRegex/crazy.js because the original
979         test contained tab characters.  I removed the tabs before landing.  This test depended
980         on the tab characters and now fails after they were removed.
981         test.
982
983 2016-09-01  Michael Saboff  <msaboff@apple.com>
984
985         Import Chakra tests to JSC
986         https://bugs.webkit.org/show_bug.cgi?id=154697
987
988         Reviewed by Saam Barati.
989
990         Added Chakra tests.  All these tests are under Chakra/test.  This is the same layout
991         for tests in the Chakra tree.
992
993         Created a ChakraCore.yaml file to be used with run-jsc-stress-tests.  This file contains
994         the tests that are run when the original Chakra runtests.py script is run.  That script
995         is the test driver for *nix platforms and does not attempt to run all tests or all
996         variations of tests.  The runtest.py driver consults rlexe.xml files in each test
997         subdirectory to determine the test to run, the options to pass to the test and how to
998         determine pass/fail of the test.  With runtests.py as the start, tests that didn't
999         pass directly where either skipped, with a message describing why or through 
1000         adjustments to the test infrastructure, as described below, where made to pass.
1001         
1002         The only modification to the test infrastrucutre are:
1003
1004          1) Added simple mapping of Chakra expected exception text to JSC expected text in
1005             test/UnitTestFramework/UnitTestFramework.js.  It would make sense to also
1006             map some JSC specific exception text to more generic text for the cases where
1007             that text contains indetifier names or other source specific strings and the
1008             Chakra equivolent exception texts are generic.  
1009  
1010          2) Created JSC specific expected text files where it is clear that the text work
1011             as expected on JSC but the test output is different.  Typically the differences
1012             fall into three categories, different exception output, different output from
1013             toString() of a function, slight numeric differences, and test that rely on
1014             iteration order.
1015
1016          3) Stripped the CR's from the CR-LF line terminations of the files.  
1017
1018         No actual test .js files were modified.
1019
1020         * ChakraCore: Added.
1021         * ChakraCore.yaml: Added.
1022         * ChakraCore/CONTRIBUTING.md: Added.
1023         * ChakraCore/LICENSE.txt: Added.
1024         * ChakraCore/README.md: Added.
1025         * ChakraCore/THIRD-PARTY-NOTICES.txt: Added.
1026         * ChakraCore/test: Added this directory and the tests included therein.
1027
1028 2016-09-01  JF Bastien  <jfbastien@apple.com>
1029
1030         GetByIdWithThis/GetByValWithThis should have ValueProfiles so that they can predict their result types
1031         https://bugs.webkit.org/show_bug.cgi?id=160922
1032
1033         Reviewed by Keith Miller.
1034
1035         Benchmark GetBy{Id,Val}WithThis in monomorphic and polymorphic uses.
1036         The value profile is used by the calc functions, which do some mild math with the result.
1037         These benchmarks get ~4% faster with value profiling.
1038
1039         * microbenchmarks/super-get-by-id-with-this-monomorphic.js: Added.
1040         (A):
1041         (A.prototype.set value):
1042         (A.prototype.get value):
1043         (B.prototype.set value):
1044         (B.prototype.get value):
1045         (B):
1046         (const.bench):
1047         * microbenchmarks/super-get-by-id-with-this-polymorphic.js: Added.
1048         (A):
1049         (A.prototype.set value):
1050         (A.prototype.get value):
1051         (B.prototype.set value):
1052         (B.prototype.get value):
1053         (B):
1054         (const.bench):
1055         * microbenchmarks/super-get-by-val-with-this-monomorphic.js: Added.
1056         (value):
1057         (A):
1058         (A.prototype.set v):
1059         (A.prototype.get v):
1060         (B.prototype.set v):
1061         (B.prototype.get v):
1062         (B):
1063         (const.bench):
1064         * microbenchmarks/super-get-by-val-with-this-polymorphic.js: Added.
1065         (value):
1066         (A):
1067         (A.prototype.set v):
1068         (A.prototype.get v):
1069         (B.prototype.set v):
1070         (B.prototype.get v):
1071         (B):
1072         (const.bench):
1073
1074 2016-09-01  Benjamin Poulain  <bpoulain@apple.com>
1075
1076         arith-abs-on-various-types.js is flaky
1077
1078         Unreviewed.
1079
1080         * stress/arith-abs-on-various-types.js:
1081         Two compilation is too small for the worst case.
1082         Math.abs() can be typed integer->number->untyped if we are very unlucky.
1083
1084 2016-09-01  Filip Pizlo  <fpizlo@apple.com>
1085
1086         ObjectAllocationSinkingPhase::insertOSRHintsForUpdate() fails to emit updated hints in some cases
1087         https://bugs.webkit.org/show_bug.cgi?id=161492
1088
1089         Reviewed by Mark Lam.
1090         
1091         This bug affected function->activation references but not object->object field references,
1092         because object->object field references are !neededForMaterialization(). So, the object
1093         test always passed but the activation/function test used to always fail. It passes now.
1094
1095         * stress/materialize-activation-referenced-from-phantom-function.js: Added.
1096         (bar):
1097         (inc):
1098         (dec):
1099         (foo):
1100         (test):
1101         * stress/materialize-object-referenced-from-phantom-object.js: Added.
1102         (bar):
1103         (foo):
1104         (test):
1105
1106 2016-08-31  Yusuke Suzuki  <utatane.tea@gmail.com>
1107
1108         stress/random-53bit.js.ftl-no-cjit-no-inline-validate sometimes fails
1109         https://bugs.webkit.org/show_bug.cgi?id=161436
1110
1111         Reviewed by Filip Pizlo.
1112
1113         The test checks Math.random() correctly produces 53bit random values.
1114         The test can fail by design, but this should be fairly rare.
1115
1116         However, when introducing, we wrap the `test()` with 1e4 to ensure the FTL compilation, and this
1117         increases the failure rate. By increasing the MAX in the test, we make the failures much more rare case.
1118
1119         And we also add getRandomSeed() and setRandomSeed(seed) JSC shell helpers to dump more useful information
1120         and reproduce the situation easily.
1121
1122         * stress/random-53bit.js:
1123         (test):
1124
1125 2016-08-29  Benjamin Poulain  <bpoulain@apple.com>
1126
1127         [JSC] Improve ArithAbs with polymorphic input
1128         https://bugs.webkit.org/show_bug.cgi?id=161286
1129
1130         Reviewed by Saam Barati.
1131
1132         * stress/arith-abs-on-various-types.js: Added.
1133         New tests.
1134
1135         * stress/arith-cos-on-various-types.js:
1136         * stress/arith-fround-on-various-types.js:
1137         * stress/arith-log-on-various-types.js:
1138         * stress/arith-sin-on-various-types.js:
1139         * stress/arith-sqrt-on-various-types.js:
1140         Extend the existing tests to cover the DCE case.
1141
1142 2016-08-26  Benjamin Poulain  <benjamin@webkit.org>
1143
1144         [JSC] Implement CompareStrictEq(String, Untyped) in FTL
1145         https://bugs.webkit.org/show_bug.cgi?id=161229
1146
1147         Reviewed by Geoffrey Garen.
1148
1149         * stress/compare-strict-eq-on-various-types.js: Added.
1150
1151 2016-08-26  Yusuke Suzuki  <utatane.tea@gmail.com>
1152
1153         [ES6] newPromiseCapabilities should check the given argument is constructor
1154         https://bugs.webkit.org/show_bug.cgi?id=161226
1155
1156         Reviewed by Mark Lam.
1157
1158         The arrow function should not be a constructor. So the error should be raised.
1159
1160         * stress/new-promise-capabilities-requires-constructor.js: Added.
1161         (shouldThrow):
1162
1163 2016-08-25  Benjamin Poulain  <bpoulain@apple.com>
1164
1165         [JSC] Clean up the abstract interpreter for cos/sin/sqrt/fround/log
1166         https://bugs.webkit.org/show_bug.cgi?id=161181
1167
1168         Reviewed by Geoffrey Garen.
1169
1170         Extend the tests to constants.
1171         Add no-argument cases where needed.
1172
1173         * stress/arith-cos-on-various-types.js:
1174         * stress/arith-fround-on-various-types.js:
1175         * stress/arith-log-on-various-types.js:
1176         * stress/arith-sin-on-various-types.js:
1177         * stress/arith-sqrt-on-various-types.js:
1178
1179 2016-08-25  Yusuke Suzuki  <utatane.tea@gmail.com>
1180
1181         [DFG][FTL] Implement ES6 Generators in DFG / FTL
1182         https://bugs.webkit.org/show_bug.cgi?id=152723
1183
1184         Reviewed by Filip Pizlo.
1185
1186         * stress/generator-fib-ftl-and-array.js: Added.
1187         (fib):
1188         * stress/generator-fib-ftl-and-object.js: Added.
1189         (fib):
1190         * stress/generator-fib-ftl-and-string.js: Added.
1191         (fib):
1192         * stress/generator-fib-ftl.js: Added.
1193         (fib):
1194         * stress/generator-frame-empty.js: Added.
1195         (shouldThrow):
1196         (shouldThrow.fib):
1197         * stress/generator-reduced-save-point-put-to-scope.js: Added.
1198         (shouldBe):
1199         (gen):
1200         * stress/generator-transfer-register-beyond-mutiple-yields.js: Added.
1201         (shouldBe):
1202         (gen):
1203
1204 2016-08-25  JF Bastien  <jfbastien@apple.com>
1205
1206         TryGetById should have a ValueProfile so that it can predict its output type
1207         https://bugs.webkit.org/show_bug.cgi?id=160921
1208
1209         Reviewed by Saam Barati.
1210
1211         * microbenchmarks/try-get-by-id-basic.js: Added.
1212         (const.check):
1213         (const.bench.f.const.fooPlusBar.createBuiltin):
1214         * microbenchmarks/try-get-by-id-polymorphic.js: Added.
1215         (const.check):
1216         (fooPlusBar.createBuiltin):
1217         (bench):
1218
1219 2016-08-25  Caio Lima  <ticaiolima@gmail.com>
1220
1221         NewRegexp should not prevent inlining
1222         https://bugs.webkit.org/show_bug.cgi?id=154808
1223
1224         Reviewed by Geoffrey Garen.
1225
1226         Added test where functions with NewRegExp can be inlined right now.
1227
1228         * stress/new-regex-inline.js: Added.
1229         (assert):
1230         (testRegexpInline):
1231         (toInlineGlobal):
1232         (withRegexp):
1233         (inlineRegexpNotGlobal):
1234         (toInlineRecursive):
1235         (regexpContainsRecursive):
1236
1237 2016-08-24  Benjamin Poulain  <benjamin@webkit.org>
1238
1239         [JSC] Make FRound work with any type
1240         https://bugs.webkit.org/show_bug.cgi?id=161129
1241
1242         Reviewed by Geoffrey Garen.
1243
1244         * stress/arith-fround-on-various-types.js: Added.
1245
1246 2016-08-24  Filip Pizlo  <fpizlo@apple.com>
1247
1248         Unreviewed, roll out r204901, r204897, r204866, r204856, r204854.
1249
1250         * stress/array-storage-array-unshift.js: Removed.
1251         * stress/contiguous-array-unshift.js: Removed.
1252         * stress/double-array-unshift.js: Removed.
1253         * stress/int32-array-unshift.js: Removed.
1254
1255 2016-08-24  Skachkov Oleksandr  <gskachkov@gmail.com>
1256
1257         [ES2016] Allow assignment in for-in head in not-strict mode
1258         https://bugs.webkit.org/show_bug.cgi?id=160955
1259
1260         Reviewed by Saam Barati.
1261
1262         * stress/for-in-tests.js:
1263         (foo):
1264         (boo):
1265         (catch):
1266
1267 2016-08-23  Benjamin Poulain  <benjamin@webkit.org>
1268
1269         [JSC] Make ArithLog works with any type
1270         https://bugs.webkit.org/show_bug.cgi?id=161110
1271
1272         Reviewed by Geoffrey Garen.
1273
1274         * stress/arith-log-on-various-types.js: Added.
1275
1276 2016-08-23  Saam Barati  <sbarati@apple.com>
1277
1278         JSC should have a "microbenchmarks" directory instead of "regress" directory
1279         https://bugs.webkit.org/show_bug.cgi?id=161096
1280
1281         Rubber stamped by Mark Lam.
1282
1283         * microbenchmarks: Copied from LayoutTests/js/regress/script-tests.
1284
1285 2016-08-23  Keith Miller  <keith_miller@apple.com>
1286
1287         %TypedArray%.prototype.slice needs to check that the source and destination have not been detached.
1288         https://bugs.webkit.org/show_bug.cgi?id=161031
1289         <rdar://problem/27937019>
1290
1291         Reviewed by Geoffrey Garen.
1292
1293         * stress/typedarray-slice.js:
1294         (get let):
1295         (get try):
1296         (testSpeciesWithTransferring):
1297
1298 2016-08-22  Filip Pizlo  <fpizlo@apple.com>
1299
1300         Butterflies should be allocated in Auxiliary MarkedSpace instead of CopiedSpace and we should rewrite as much of the GC as needed to make this not a regression
1301         https://bugs.webkit.org/show_bug.cgi?id=160125
1302
1303         Reviewed by Geoffrey Garen.
1304         
1305         Most of the things I did properly covered by existing tests, but I found some simple cases of
1306         unshifting that had sketchy coverage.
1307
1308         * stress/array-storage-array-unshift.js: Added.
1309         * stress/contiguous-array-unshift.js: Added.
1310         * stress/double-array-unshift.js: Added.
1311         * stress/int32-array-unshift.js: Added.
1312
1313 2016-08-23  Keith Miller  <keith_miller@apple.com>
1314
1315         Update/add new test262 tests
1316         https://bugs.webkit.org/show_bug.cgi?id=161098
1317
1318         Reviewed by Saam Barati.
1319
1320         * test262.yaml:
1321         * test262/test/annexB/language/statements/for-in/bare-initializer.js: Added.
1322         * test262/test/annexB/language/statements/for-in/const-initializer.js: Added.
1323         * test262/test/annexB/language/statements/for-in/let-initializer.js: Added.
1324         * test262/test/annexB/language/statements/for-in/nonstrict-initializer.js: Added.
1325         (a):
1326         * test262/test/annenxB/language/statements/for-in/strict-initializer.js: Added.
1327         * test262/test/annexB/language/statements/for-in/var-arraybindingpattern-initializer.js: Added.
1328         * test262/test/annexB/language/statements/for-in/var-objectbindingpattern-initializer.js: Added.
1329         * test262/test/built-ins/AsyncFunction/AsyncFunction-construct.js: Added.
1330         (AsyncFunction.async.foo):
1331         * test262/test/built-ins/AsyncFunction/AsyncFunction-is-extensible.js: Added.
1332         (AsyncFunction.async):
1333         * test262/test/built-ins/AsyncFunction/AsyncFunction-is-subclass.js: Added.
1334         (async.foo):
1335         * test262/test/built-ins/AsyncFunction/AsyncFunction-length.js: Added.
1336         (AsyncFunction.async.foo):
1337         * test262/test/built-ins/AsyncFunction/AsyncFunction-name.js: Added.
1338         (AsyncFunction.async.foo):
1339         * test262/test/built-ins/AsyncFunction/AsyncFunction-prototype.js: Added.
1340         (AsyncFunction.async.foo):
1341         * test262/test/built-ins/AsyncFunction/AsyncFunction.js: Added.
1342         (AsyncFunction.async.foo):
1343         * test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-is-extensible.js: Added.
1344         (AsyncFunction.async.foo):
1345         * test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-prototype.js: Added.
1346         (AsyncFunction.async.foo):
1347         * test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-to-string.js: Added.
1348         (AsyncFunction.async.foo):
1349         * test262/test/built-ins/AsyncFunction/instance-construct.js: Added.
1350         (async.foo):
1351         * test262/test/built-ins/AsyncFunction/instance-has-name.js: Added.
1352         (async.foo):
1353         * test262/test/built-ins/AsyncFunction/instance-length.js: Added.
1354         (async.l0):
1355         (async.l1):
1356         (async.l2):
1357         * test262/test/built-ins/AsyncFunction/instance-prototype-property.js: Added.
1358         (async.foo):
1359         * test262/test/built-ins/AsyncFunction/is-not-a-global.js: Added.
1360         * test262/test/built-ins/DataView/prototype/getFloat32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getFloat32/detached-buffer-after-integer-byteoffset.js.
1361         * test262/test/built-ins/DataView/prototype/getFloat32/detached-buffer-before-outofrange-byteoffset.js:
1362         * test262/test/built-ins/DataView/prototype/getFloat64/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getFloat64/detached-buffer-after-integer-byteoffset.js.
1363         * test262/test/built-ins/DataView/prototype/getFloat64/detached-buffer-before-outofrange-byteoffset.js:
1364         * test262/test/built-ins/DataView/prototype/getInt16/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getInt16/detached-buffer-after-integer-byteoffset.js.
1365         * test262/test/built-ins/DataView/prototype/getInt16/detached-buffer-before-outofrange-byteoffset.js:
1366         * test262/test/built-ins/DataView/prototype/getInt32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getInt32/detached-buffer-after-integer-byteoffset.js.
1367         * test262/test/built-ins/DataView/prototype/getInt32/detached-buffer-before-outofrange-byteoffset.js:
1368         * test262/test/built-ins/DataView/prototype/getInt8/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getInt8/detached-buffer-after-integer-byteoffset.js.
1369         * test262/test/built-ins/DataView/prototype/getInt8/detached-buffer-before-outofrange-byteoffset.js:
1370         * test262/test/built-ins/DataView/prototype/getUint16/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getUint16/detached-buffer-after-integer-byteoffset.js.
1371         * test262/test/built-ins/DataView/prototype/getUint16/detached-buffer-before-outofrange-byteoffset.js:
1372         * test262/test/built-ins/DataView/prototype/getUint32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getUint32/detached-buffer-after-integer-byteoffset.js.
1373         * test262/test/built-ins/DataView/prototype/getUint32/detached-buffer-before-outofrange-byteoffset.js:
1374         * test262/test/built-ins/DataView/prototype/getUint8/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getUint8/detached-buffer-after-integer-byteoffset.js.
1375         * test262/test/built-ins/DataView/prototype/getUint8/detached-buffer-before-outofrange-byteoffset.js:
1376         * test262/test/built-ins/DataView/prototype/setFloat32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setFloat32/detached-buffer-after-integer-byteoffset.js.
1377         * test262/test/built-ins/DataView/prototype/setFloat32/detached-buffer-before-outofrange-byteoffset.js:
1378         * test262/test/built-ins/DataView/prototype/setFloat32/index-check-before-value-conversion.js:
1379         * test262/test/built-ins/DataView/prototype/setFloat32/range-check-after-value-conversion.js:
1380         * test262/test/built-ins/DataView/prototype/setFloat64/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setFloat64/detached-buffer-after-integer-byteoffset.js.
1381         * test262/test/built-ins/DataView/prototype/setFloat64/detached-buffer-before-outofrange-byteoffset.js:
1382         * test262/test/built-ins/DataView/prototype/setFloat64/index-check-before-value-conversion.js:
1383         * test262/test/built-ins/DataView/prototype/setFloat64/range-check-after-value-conversion.js:
1384         * test262/test/built-ins/DataView/prototype/setInt16/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setInt16/detached-buffer-after-integer-byteoffset.js.
1385         * test262/test/built-ins/DataView/prototype/setInt16/detached-buffer-before-outofrange-byteoffset.js:
1386         * test262/test/built-ins/DataView/prototype/setInt16/index-check-before-value-conversion.js:
1387         * test262/test/built-ins/DataView/prototype/setInt16/range-check-after-value-conversion.js:
1388         * test262/test/built-ins/DataView/prototype/setInt32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setInt32/detached-buffer-after-integer-byteoffset.js.
1389         * test262/test/built-ins/DataView/prototype/setInt32/detached-buffer-before-outofrange-byteoffset.js:
1390         * test262/test/built-ins/DataView/prototype/setInt32/index-check-before-value-conversion.js:
1391         * test262/test/built-ins/DataView/prototype/setInt32/range-check-after-value-conversion.js:
1392         * test262/test/built-ins/DataView/prototype/setInt8/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setInt8/detached-buffer-after-integer-byteoffset.js.
1393         * test262/test/built-ins/DataView/prototype/setInt8/detached-buffer-before-outofrange-byteoffset.js:
1394         * test262/test/built-ins/DataView/prototype/setInt8/index-check-before-value-conversion.js:
1395         * test262/test/built-ins/DataView/prototype/setInt8/range-check-after-value-conversion.js:
1396         * test262/test/built-ins/DataView/prototype/setUint16/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setUint16/detached-buffer-after-integer-byteoffset.js.
1397         * test262/test/built-ins/DataView/prototype/setUint16/detached-buffer-before-outofrange-byteoffset.js:
1398         * test262/test/built-ins/DataView/prototype/setUint16/index-check-before-value-conversion.js:
1399         * test262/test/built-ins/DataView/prototype/setUint16/range-check-after-value-conversion.js:
1400         * test262/test/built-ins/DataView/prototype/setUint32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setUint32/detached-buffer-after-integer-byteoffset.js.
1401         * test262/test/built-ins/DataView/prototype/setUint32/detached-buffer-before-outofrange-byteoffset.js:
1402         * test262/test/built-ins/DataView/prototype/setUint32/index-check-before-value-conversion.js:
1403         * test262/test/built-ins/DataView/prototype/setUint32/range-check-after-value-conversion.js:
1404         * test262/test/built-ins/DataView/prototype/setUint8/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setUint8/detached-buffer-after-integer-byteoffset.js.
1405         * test262/test/built-ins/DataView/prototype/setUint8/detached-buffer-before-outofrange-byteoffset.js:
1406         * test262/test/built-ins/DataView/prototype/setUint8/index-check-before-value-conversion.js:
1407         * test262/test/built-ins/DataView/prototype/setUint8/range-check-after-value-conversion.js:
1408         * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget-bound.js: Added.
1409         (A):
1410         * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget.js: Added.
1411         (A):
1412         * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-self-new.js: Added.
1413         (A):
1414         * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-self-reflect.js: Added.
1415         (A):
1416         * test262/test/built-ins/Function/prototype/toString/AsyncFunction.js: Added.
1417         (async.f):
1418         * test262/test/built-ins/Function/prototype/toString/async-function-declaration.js: Added.
1419         (async.f):
1420         * test262/test/built-ins/Function/prototype/toString/async-function-expression.js: Added.
1421         (let.f.async.f):
1422         * test262/test/built-ins/Function/prototype/toString/async-method.js: Added.
1423         (let.f.async.f):
1424         (let.g.async.string_appeared_here):
1425         * test262/test/built-ins/JSON/parse/reviver-array-define-prop-err.js: Added.
1426         (defineProperty):
1427         * test262/test/built-ins/JSON/parse/reviver-array-delete-err.js: Added.
1428         (deleteProperty):
1429         * test262/test/built-ins/JSON/parse/reviver-array-length-coerce-err.js: Added.
1430         (uncoercible.valueOf):
1431         (get if):
1432         * test262/test/built-ins/JSON/parse/reviver-array-length-get-err.js: Added.
1433         (get if):
1434         * test262/test/built-ins/JSON/parse/reviver-call-err.js: Added.
1435         * test262/test/built-ins/JSON/parse/reviver-get-name-err.js: Added.
1436         (thrower):
1437         * test262/test/built-ins/JSON/parse/reviver-object-define-prop-err.js: Added.
1438         (defineProperty):
1439         * test262/test/built-ins/JSON/parse/reviver-object-delete-err.js: Added.
1440         (deleteProperty):
1441         * test262/test/built-ins/JSON/parse/reviver-object-own-keys-err.js: Added.
1442         (ownKeys):
1443         * test262/test/built-ins/Number/prototype/toExponential/infinity.js: Added.
1444         * test262/test/built-ins/Number/prototype/toExponential/nan.js: Added.
1445         * test262/test/built-ins/Number/prototype/toExponential/prop-desc.js: Added.
1446         * test262/test/built-ins/Number/prototype/toExponential/return-abrupt-tointeger-fractiondigits-symbol.js: Added.
1447         * test262/test/built-ins/Number/prototype/toExponential/return-abrupt-tointeger-fractiondigits.js: Added.
1448         (fd1.valueOf):
1449         (fd2.toString):
1450         * test262/test/built-ins/Number/prototype/toExponential/return-values.js: Added.
1451         * test262/test/built-ins/Number/prototype/toExponential/this-is-0-fractiondigits-is-0.js: Added.
1452         * test262/test/built-ins/Number/prototype/toExponential/this-is-0-fractiondigits-is-not-0.js: Added.
1453         * test262/test/built-ins/Number/prototype/toExponential/this-type-not-number-or-number-object.js: Added.
1454         * test262/test/built-ins/Number/prototype/toExponential/tointeger-fractiondigits.js: Added.
1455         * test262/test/built-ins/Number/prototype/toExponential/undefined-fractiondigits.js: Added.
1456         * test262/test/built-ins/Object/getOwnPropertyDescriptors/duplicate-keys.js:
1457         * test262/test/built-ins/Object/getOwnPropertyDescriptors/proxy-undefined-descriptor.js: Added.
1458         (badProxyHandlers.allowProxyTraps.getOwnPropertyDescriptor):
1459         (badProxyHandlers.allowProxyTraps.ownKeys):
1460         * test262/test/built-ins/Proxy/setPrototypeOf/boolean-trap-result-extensible-target.js: Removed.
1461         (setPrototypeOf): Deleted.
1462         * test262/test/built-ins/Proxy/setPrototypeOf/internals-call-order.js: Added.
1463         (target.new.Proxy.Object.create.isExtensible):
1464         (target.new.Proxy.Object.create.getPrototypeOf):
1465         (target.new.Proxy.Object.create):
1466         (setPrototypeOf):
1467         * test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-target-not-same-target-prototype.js:
1468         (setPrototypeOf):
1469         * test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-target-same-target-prototype.js:
1470         (setPrototypeOf):
1471         * test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-trap-is-false-return-false.js: Removed.
1472         (setPrototypeOf): Deleted.
1473         * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-get-trap.js: Added.
1474         * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-isextensible-target.js: Added.
1475         (isExtensible):
1476         (setPrototypeOf):
1477         * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-target-getprototypeof.js: Added.
1478         (getPrototypeOf):
1479         (setPrototypeOf):
1480         * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-trap.js: Renamed from JSTests/test262/test/built-ins/Proxy/setPrototypeOf/return-is-abrupt.js.
1481         (setPrototypeOf):
1482         * test262/test/built-ins/Proxy/setPrototypeOf/return-is-abrupt.js:
1483         (setPrototypeOf): Deleted.
1484         * test262/test/built-ins/Proxy/setPrototypeOf/toboolean-trap-result-false.js: Added.
1485         (isExtensible):
1486         (setPrototypeOf):
1487         * test262/test/built-ins/Proxy/setPrototypeOf/toboolean-trap-result-true-target-is-extensible.js: Added.
1488         (isExtensible):
1489         (getPrototypeOf):
1490         (setPrototypeOf):
1491         * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-not-callable.js:
1492         * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-undefined-or-null.js: Added.
1493         (setPrototypeOf):
1494         * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-undefined.js: Removed.
1495         * test262/test/built-ins/RegExp/lastIndex.js: Added.
1496         * test262/test/built-ins/RegExp/prototype/global/15.10.7.2-1.js: Removed.
1497         * test262/test/built-ins/RegExp/prototype/global/this-val-invalid-obj.js: Added.
1498         (get Object):
1499         * test262/test/built-ins/RegExp/prototype/global/this-val-non-obj.js: Added.
1500         (get Object):
1501         * test262/test/built-ins/RegExp/prototype/global/this-val-regexp-prototype.js: Added.
1502         * test262/test/built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1.js: Removed.
1503         * test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-invalid-obj.js: Added.
1504         (get Object):
1505         * test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-non-obj.js: Added.
1506         (get Object):
1507         * test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-regexp-prototype.js: Added.
1508         * test262/test/built-ins/RegExp/prototype/lastIndex/15.10.7.5-1.js: Removed.
1509         * test262/test/built-ins/RegExp/prototype/lastIndex/15.10.7.5-2.js: Removed.
1510         * test262/test/built-ins/RegExp/prototype/lastIndex/S15.10.7.5_A8.js: Removed.
1511         (__re.hasOwnProperty): Deleted.
1512         (__re.propertyIsEnumerable): Deleted.
1513         (count.0): Deleted.
1514         * test262/test/built-ins/RegExp/prototype/lastIndex/S15.10.7.5_A9.js: Removed.
1515         (__re.hasOwnProperty): Deleted.
1516         (catch): Deleted.
1517         * test262/test/built-ins/RegExp/prototype/multiline/15.10.7.4-1.js: Removed.
1518         * test262/test/built-ins/RegExp/prototype/multiline/this-val-invalid-obj.js: Added.
1519         (get Object):
1520         * test262/test/built-ins/RegExp/prototype/multiline/this-val-non-obj.js: Added.
1521         (get Object):
1522         * test262/test/built-ins/RegExp/prototype/multiline/this-val-regexp-prototype.js: Added.
1523         * test262/test/built-ins/RegExp/prototype/no-regexp-matcher.js: Added.
1524         * test262/test/built-ins/RegExp/prototype/source/15.10.7.1-1.js: Removed.
1525         * test262/test/built-ins/RegExp/prototype/source/this-val-invalid-obj.js: Added.
1526         (get Object):
1527         * test262/test/built-ins/RegExp/prototype/source/this-val-non-obj.js: Added.
1528         (get Object):
1529         * test262/test/built-ins/RegExp/prototype/source/this-val-regexp-prototype.js: Added.
1530         * test262/test/built-ins/RegExp/prototype/source/value-empty.js: Added.
1531         * test262/test/built-ins/RegExp/prototype/source/value-line-terminator.js: Added.
1532         * test262/test/built-ins/RegExp/prototype/source/value-u.js: Added.
1533         * test262/test/built-ins/RegExp/prototype/source/value.js: Added.
1534         * test262/test/built-ins/RegExp/prototype/sticky/this-val-invalid-obj.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/sticky/this-invalid-obj.js.
1535         * test262/test/built-ins/RegExp/prototype/sticky/this-val-non-obj.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/sticky/this-non-obj.js.
1536         * test262/test/built-ins/RegExp/prototype/sticky/this-val-regexp-prototype.js: Added.
1537         * test262/test/built-ins/RegExp/prototype/sticky/this-val-regexp.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/sticky/this-regexp.js.
1538         * test262/test/built-ins/RegExp/prototype/unicode/this-val-invalid-obj.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/unicode/this-invald-obj.js.
1539         * test262/test/built-ins/RegExp/prototype/unicode/this-val-non-obj.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/unicode/this-non-obj.js.
1540         * test262/test/built-ins/RegExp/prototype/unicode/this-val-regexp-prototype.js: Added.
1541         * test262/test/built-ins/RegExp/prototype/unicode/this-val-regexp.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/unicode/this-regexp.js.
1542         * test262/test/built-ins/String/numeric-properties.js: Added.
1543         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/date-is-infinity-throws.js: Added.
1544         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/date-is-nan-throws.js: Added.
1545         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/formatToParts.js: Added.
1546         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/length.js: Added.
1547         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/main.js: Added.
1548         (reduce):
1549         (compareFTPtoFormat):
1550         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/name.js: Added.
1551         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/return-abrupt-tonumber-date.js: Added.
1552         (obj1.valueOf):
1553         (obj2.toString):
1554         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/this-has-not-internal-throws.js: Added.
1555         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/this-is-not-object-throws.js: Added.
1556         * test262/test/intl402/NumberFormat/prototype/formatToParts/formatToParts.js: Added.
1557         * test262/test/intl402/NumberFormat/prototype/formatToParts/length.js: Added.
1558         * test262/test/intl402/NumberFormat/prototype/formatToParts/main.js: Added.
1559         (reduce):
1560         (compareFTPtoFormat):
1561         * test262/test/intl402/NumberFormat/prototype/formatToParts/name.js: Added.
1562         * test262/test/intl402/NumberFormat/prototype/formatToParts/return-abrupt-tonumber.js: Added.
1563         (obj1.valueOf):
1564         (obj2.toString):
1565         * test262/test/intl402/NumberFormat/prototype/formatToParts/this-has-not-internal-throws.js: Added.
1566         * test262/test/intl402/NumberFormat/prototype/formatToParts/this-is-not-object-throws.js: Added.
1567         * test262/test/language/arguments-object/10.6-10-c-ii-2-s.js:
1568         (foo): Deleted.
1569         * test262/test/language/arguments-object/unmapped/via-params-dflt.js: Added.
1570         (dflt):
1571         * test262/test/language/arguments-object/unmapped/via-params-dstr.js: Added.
1572         (dstr):
1573         * test262/test/language/arguments-object/unmapped/via-params-rest.js: Added.
1574         (rest):
1575         * test262/test/language/arguments-object/unmapped/via-strict.js: Renamed from JSTests/test262/test/language/arguments-object/10.6-10-c-ii-2-s.js.
1576         (foo):
1577         * test262/test/language/block-scope/syntax/redeclaration-global/allowed-to-redeclare-function-declaration-with-function-declaration.js:
1578         (f): Deleted.
1579         * test262/test/language/eval-code/direct/super-call-arrow.js: Added.
1580         (catch):
1581         * test262/test/language/eval-code/direct/super-call-fn.js: Added.
1582         (f):
1583         * test262/test/language/eval-code/direct/super-call.js: Added.
1584         (catch):
1585         * test262/test/language/eval-code/direct/super-prop-arrow.js: Added.
1586         (catch):
1587         * test262/test/language/eval-code/direct/super-prop-method.js: Added.
1588         (o.method):
1589         * test262/test/language/eval-code/direct/super-prop.js: Added.
1590         (catch):
1591         * test262/test/language/eval-code/indirect/super-call.js: Added.
1592         (catch):
1593         (try.m):
1594         * test262/test/language/eval-code/indirect/super-prop.js: Added.
1595         (catch):
1596         (try.m):
1597         * test262/test/language/expressions/arrow-function/params-trailing-comma-length.js: Added.
1598         (assert.sameValue):
1599         * test262/test/language/expressions/arrow-function/params-trailing-comma.js: Added.
1600         * test262/test/language/expressions/async-arrow-function/arrow-returns-promise.js: Added.
1601         (p.then):
1602         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-NSPL-with-USD.js: Added.
1603         (async):
1604         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-arguments-in-formal-parameters.js: Added.
1605         (async):
1606         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-await-in-formals-default.js: Added.
1607         (async):
1608         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-await-in-formals.js: Added.
1609         (async):
1610         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-body-contains-super-call.js: Added.
1611         (async):
1612         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-body-contains-super-property.js: Added.
1613         (async):
1614         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-duplicate-parameters.js: Added.
1615         (async):
1616         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-eval-in-formal-parameters.js: Added.
1617         (async):
1618         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-body-duplicate.js: Added.
1619         (async):
1620         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-contains-super-call.js: Added.
1621         (async.foo.super):
1622         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-contains-super-property.js: Added.
1623         (async):
1624         * test262/test/language/expressions/async-function/early-errors-expression-NSPL-with-USD.js: Added.
1625         (async):
1626         * test262/test/language/expressions/async-function/early-errors-expression-binding-identifier-arguments.js: Added.
1627         (async.arguments):
1628         * test262/test/language/expressions/async-function/early-errors-expression-binding-identifier-eval.js: Added.
1629         (async.eval):
1630         * test262/test/language/expressions/async-function/early-errors-expression-body-contains-super-call.js: Added.
1631         (async.foo):
1632         * test262/test/language/expressions/async-function/early-errors-expression-body-contains-super-property.js: Added.
1633         (async.foo):
1634         * test262/test/language/expressions/async-function/early-errors-expression-eval-in-formal-parameters.js: Added.
1635         (async.foo):
1636         * test262/test/language/expressions/async-function/early-errors-expression-formals-body-duplicate.js: Added.
1637         (async.foo):
1638         * test262/test/language/expressions/async-function/early-errors-expression-formals-contains-super-call.js: Added.
1639         (async.foo):
1640         * test262/test/language/expressions/async-function/early-errors-expression-formals-contains-super-property.js: Added.
1641         (async.foo):
1642         * test262/test/language/expressions/async-function/early-errors-expression-not-simple-assignment-target.js: Added.
1643         (async.foo):
1644         * test262/test/language/expressions/async-function/expression-returns-promise.js: Added.
1645         (p.async):
1646         * test262/test/language/expressions/async-function/syntax-expression-is-PrimaryExpression.js: Added.
1647         (async.foo):
1648         * test262/test/language/expressions/await/await-BindingIdentifier-in-global.js: Added.
1649         (async.await):
1650         * test262/test/language/expressions/await/await-BindingIdentifier-nested.js: Added.
1651         (async.foo.await):
1652         (async.foo):
1653         * test262/test/language/expressions/await/await-awaits-thenable-not-callable.js: Added.
1654         (async.foo):
1655         * test262/test/language/expressions/await/await-awaits-thenables-that-throw.js: Added.
1656         (thenable.then):
1657         (async.foo):
1658         * test262/test/language/expressions/await/await-awaits-thenables.js: Added.
1659         (thenable.then):
1660         (async.foo):
1661         * test262/test/language/expressions/await/await-in-function.js: Added.
1662         (foo):
1663         * test262/test/language/expressions/await/await-in-generator.js: Added.
1664         (foo):
1665         * test262/test/language/expressions/await/await-in-global.js: Added.
1666         * test262/test/language/expressions/await/await-in-nested-function.js: Added.
1667         (async.foo.bar):
1668         (async.foo):
1669         * test262/test/language/expressions/await/await-in-nested-generator.js: Added.
1670         (async.foo.bar):
1671         (async.foo):
1672         * test262/test/language/expressions/await/await-throws-rejections.js: Added.
1673         (async.foo):
1674         * test262/test/language/expressions/await/early-errors-await-not-simple-assignment-target.js: Added.
1675         (async.foo):
1676         * test262/test/language/expressions/await/no-operand.js: Added.
1677         (async.foo):
1678         * test262/test/language/expressions/await/syntax-await-has-UnaryExpression-with-MultiplicativeExpression.js: Added.
1679         (async.foo):
1680         * test262/test/language/expressions/await/syntax-await-has-UnaryExpression.js: Added.
1681         (async.foo):
1682         * test262/test/language/expressions/call/trailing-comma.js: Added.
1683         (foo):
1684         * test262/test/language/expressions/function/arguments-with-arguments-fn.js: Added.
1685         (f):
1686         * test262/test/language/expressions/function/arguments-with-arguments-lex.js: Added.
1687         (f):
1688         * test262/test/language/expressions/function/params-trailing-comma-arguments.js: Added.
1689         (f1):
1690         (f2):
1691         * test262/test/language/expressions/function/params-trailing-comma-length.js: Added.
1692         (assert.sameValue):
1693         * test262/test/language/expressions/function/params-trailing-comma.js: Added.
1694         * test262/test/language/expressions/generators/arguments-with-arguments-fn.js: Added.
1695         (g):
1696         * test262/test/language/expressions/generators/arguments-with-arguments-lex.js: Added.
1697         (g):
1698         * test262/test/language/expressions/generators/params-trailing-comma-arguments.js: Added.
1699         (f1):
1700         (f2):
1701         * test262/test/language/expressions/generators/params-trailing-comma-length.js: Added.
1702         (assert.sameValue):
1703         * test262/test/language/expressions/generators/params-trailing-comma.js: Added.
1704         * test262/test/language/expressions/object/computed-property-evaluation-order.js: Added.
1705         * test262/test/language/expressions/object/method-definition/async-super-call-body.js: Added.
1706         (sup.method):
1707         (child.async.method):
1708         * test262/test/language/expressions/object/method-definition/async-super-call-param.js: Added.
1709         (sup.method):
1710         (child.async.method.x.super.method):
1711         * test262/test/language/expressions/object/method-definition/early-errors-object-method-NSPL-with-USD.js: Added.
1712         (foo):
1713         * test262/test/language/expressions/object/method-definition/early-errors-object-method-arguments-in-formal-parameters.js: Added.
1714         (async.foo):
1715         * test262/test/language/expressions/object/method-definition/early-errors-object-method-await-in-formals-default.js: Added.
1716         (async.foo):
1717         * test262/test/language/expressions/object/method-definition/early-errors-object-method-await-in-formals.js: Added.
1718         (async.foo):
1719         * test262/test/language/expressions/object/method-definition/early-errors-object-method-body-contains-super-call.js: Added.
1720         (async.foo):
1721         * test262/test/language/expressions/object/method-definition/early-errors-object-method-duplicate-parameters.js: Added.
1722         (async.foo):
1723         * test262/test/language/expressions/object/method-definition/early-errors-object-method-eval-in-formal-parameters.js: Added.
1724         (async.foo):
1725         * test262/test/language/expressions/object/method-definition/early-errors-object-method-formals-body-duplicate.js: Added.
1726         (async.foo):
1727         * test262/test/language/expressions/object/method-definition/early-errors-object-method-formals-contains-super-call.js: Added.
1728         (async.foo.foo.super):
1729         * test262/test/language/expressions/object/method-definition/object-method-returns-promise.js: Added.
1730         (obj.async.method):
1731         * test262/test/language/expressions/object/method-definition/params-trailing-comma-arguments.js: Added.
1732         (obj.f1):
1733         (obj.f2):
1734         * test262/test/language/expressions/object/method-definition/params-trailing-comma-length.js: Added.
1735         (obj.one):
1736         (obj.two):
1737         * test262/test/language/expressions/object/method-definition/params-trailing-comma-rest.js: Added.
1738         (m):
1739         * test262/test/language/expressions/object/method-definition/params-trailing-comma.js: Added.
1740         (one):
1741         (two):
1742         * test262/test/language/global-code/decl-func-dup.js: Renamed from JSTests/test262/test/language/block-scope/syntax/redeclaration-global/allowed-to-redeclare-function-declaration-with-function-declaration.js.
1743         (f):
1744         * test262/test/language/global-code/decl-func.js: Added.
1745         (brandNew):
1746         * test262/test/language/global-code/decl-lex-configurable-global.js: Added.
1747         * test262/test/language/global-code/decl-lex-deletion.js: Added.
1748         (test262class):
1749         * test262/test/language/global-code/decl-lex-restricted-global.js: Added.
1750         * test262/test/language/global-code/decl-lex.js: Added.
1751         (test262class):
1752         * test262/test/language/global-code/decl-var.js: Added.
1753         * test262/test/language/global-code/return.js: Added.
1754         * test262/test/language/global-code/script-decl-func-dups.js: Added.
1755         * test262/test/language/global-code/script-decl-func-err-non-configurable.js: Added.
1756         * test262/test/language/global-code/script-decl-func-err-non-extensible.js: Added.
1757         * test262/test/language/global-code/script-decl-func.js: Added.
1758         * test262/test/language/global-code/script-decl-lex-deletion.js: Added.
1759         * test262/test/language/global-code/script-decl-lex-lex.js: Added.
1760         (test262Class):
1761         * test262/test/language/global-code/script-decl-lex-restricted-global.js: Added.
1762         * test262/test/language/global-code/script-decl-lex-var.js: Added.
1763         (test262Fn):
1764         * test262/test/language/global-code/script-decl-lex.js: Added.
1765         * test262/test/language/global-code/script-decl-var-collision.js: Added.
1766         (test262Class):
1767         * test262/test/language/global-code/script-decl-var-err.js: Added.
1768         * test262/test/language/global-code/script-decl-var.js: Added.
1769         * test262/test/language/global-code/super-call-arrow.js: Added.
1770         * test262/test/language/global-code/super-call.js: Added.
1771         * test262/test/language/global-code/super-prop-arrow.js: Added.
1772         * test262/test/language/global-code/super-prop.js: Added.
1773         * test262/test/language/global-code/yield-non-strict.js: Added.
1774         (catch):
1775         * test262/test/language/global-code/yield-strict.js: Added.
1776         * test262/test/language/literals/regexp/lastIndex.js: Added.
1777         * test262/test/language/literals/regexp/u-unicode-esc-bounds.js:
1778         * test262/test/language/literals/regexp/y-assertion-start.js: Added.
1779         * test262/test/language/module-code/instn-star-err-not-found-faulty_FIXTURE.js:
1780         * test262/test/language/module-code/instn-star-err-not-found.js:
1781         * test262/test/language/module-code/namespace/internals/get-own-property-str-found-init.js:
1782         * test262/test/language/module-code/parse-err-return.js: Added.
1783         * test262/test/language/module-code/parse-err-yield.js: Added.
1784         * test262/test/language/rest-parameters/params-trailing-comma-rest.js: Added.
1785         * test262/test/language/statements/async-function/declaration-returns-promise.js: Added.
1786         (async.foo):
1787         * test262/test/language/statements/async-function/early-errors-declaration-NSPL-with-USD.js: Added.
1788         (async.foo):
1789         * test262/test/language/statements/async-function/early-errors-declaration-arguments-in-formal-parameters.js: Added.
1790         (async.foo):
1791         * test262/test/language/statements/async-function/early-errors-declaration-await-in-formals-default.js: Added.
1792         (async.foo):
1793         * test262/test/language/statements/async-function/early-errors-declaration-await-in-formals.js: Added.
1794         (async.foo):
1795         * test262/test/language/statements/async-function/early-errors-declaration-binding-identifier-arguments.js: Added.
1796         (async.arguments):
1797         * test262/test/language/statements/async-function/early-errors-declaration-binding-identifier-eval.js: Added.
1798         (async.eval):
1799         * test262/test/language/statements/async-function/early-errors-declaration-body-contains-super-call.js: Added.
1800         (async.foo):
1801         * test262/test/language/statements/async-function/early-errors-declaration-body-contains-super-property.js: Added.
1802         (async.foo):
1803         * test262/test/language/statements/async-function/early-errors-declaration-duplicate-parameters.js: Added.
1804         (async.foo):
1805         * test262/test/language/statements/async-function/early-errors-declaration-eval-in-formal-parameters.js: Added.
1806         (async.foo):
1807         * test262/test/language/statements/async-function/early-errors-declaration-formals-body-duplicate.js: Added.
1808         (async.foo):
1809         * test262/test/language/statements/async-function/early-errors-declaration-formals-contains-super-call.js: Added.
1810         (async.foo):
1811         * test262/test/language/statements/async-function/early-errors-declaration-formals-contains-super-property.js: Added.
1812         (async.foo):
1813         * test262/test/language/statements/async-function/early-errors-no-async-generator.js: Added.
1814         (async.foo):
1815         * test262/test/language/statements/async-function/evaluation-body-that-returns-after-await.js: Added.
1816         (async.foo):
1817         (foo.then):
1818         * test262/test/language/statements/async-function/evaluation-body-that-returns.js: Added.
1819         (async.foo):
1820         (foo.then):
1821         * test262/test/language/statements/async-function/evaluation-body-that-throws-after-await.js: Added.
1822         (async.foo):
1823         (foo.then):
1824         * test262/test/language/statements/async-function/evaluation-body-that-throws.js: Added.
1825         (async.foo):
1826         (foo.then):
1827         * test262/test/language/statements/async-function/evaluation-body.js: Added.
1828         (async.foo):
1829         * test262/test/language/statements/async-function/evaluation-default-that-throws.js: Added.
1830         (async.foo):
1831         (foo.then):
1832         * test262/test/language/statements/async-function/evaluation-mapped-arguments.js: Added.
1833         (async.foo):
1834         * test262/test/language/statements/async-function/evaluation-this-value-global.js: Added.
1835         (async.foo):
1836         * test262/test/language/statements/async-function/evaluation-this-value-passed.js: Added.
1837         (async.foo):
1838         * test262/test/language/statements/async-function/evaluation-unmapped-arguments.js: Added.
1839         (async.foo):
1840         * test262/test/language/statements/async-function/syntax-declaration-line-terminators-allowed.js: Added.
1841         (async.foo):
1842         * test262/test/language/statements/async-function/syntax-declaration-no-line-terminator.js: Added.
1843         (async.foo):
1844         * test262/test/language/statements/async-function/syntax-declaration.js: Added.
1845         (async.foo):
1846         (foo.then):
1847         * test262/test/language/statements/class/definition/class-method-returns-promise.js: Added.
1848         (Foo.prototype.async.method):
1849         (Foo):
1850         * test262/test/language/statements/class/definition/early-errors-class-method-NSPL-with-USD.js: Added.
1851         (Foo.prototype.async.bar):
1852         (Foo):
1853         * test262/test/language/statements/class/definition/early-errors-class-method-arguments-in-formal-parameters.js: Added.
1854         (Foo.prototype.async.foo):
1855         (Foo):
1856         * test262/test/language/statements/class/definition/early-errors-class-method-await-in-formals-default.js: Added.
1857         (Foo.prototype.async.foo):
1858         (Foo):
1859         * test262/test/language/statements/class/definition/early-errors-class-method-await-in-formals.js: Added.
1860         (Foo.prototype.async.foo):
1861         (Foo):
1862         * test262/test/language/statements/class/definition/early-errors-class-method-body-contains-super-call.js: Added.
1863         (Foo.prototype.async.foo):
1864         (Foo):
1865         * test262/test/language/statements/class/definition/early-errors-class-method-duplicate-parameters.js: Added.
1866         (Foo.prototype.async.foo):
1867         (Foo):
1868         * test262/test/language/statements/class/definition/early-errors-class-method-eval-in-formal-parameters.js: Added.
1869         (Foo.prototype.async.foo):
1870         (Foo):
1871         * test262/test/language/statements/class/definition/early-errors-class-method-formals-body-duplicate.js: Added.
1872         (Foo.async.foo):
1873         (Foo):
1874         * test262/test/language/statements/class/definition/early-errors-class-method-formals-contains-super-call.js: Added.
1875         (Foo.prototype.async.foo):
1876         (Foo):
1877         * test262/test/language/statements/class/definition/methods-async-super-call-body.js: Added.
1878         (A.prototype.async.method):
1879         (A):
1880         (B.prototype.async.method):
1881         (B):
1882         * test262/test/language/statements/class/definition/methods-async-super-call-param.js: Added.
1883         (A.prototype.async.method):
1884         (A):
1885         (B.prototype.async.method):
1886         (B):
1887         * test262/test/language/statements/class/definition/params-trailing-comma-arguments.js: Added.
1888         (C.prototype.f1):
1889         (C.prototype.f2):
1890         (C):
1891         * test262/test/language/statements/class/definition/params-trailing-comma-length.js: Added.
1892         (C.prototype.one):
1893         (C.prototype.two):
1894         (C):
1895         * test262/test/language/statements/class/definition/params-trailing-comma-rest.js: Added.
1896         (C.prototype.m):
1897         (C):
1898         * test262/test/language/statements/class/definition/params-trailing-comma.js: Added.
1899         (C.prototype.one):
1900         (C.prototype.two):
1901         (C):
1902         * test262/test/language/statements/function/arguments-with-arguments-fn.js: Added.
1903         (f):
1904         * test262/test/language/statements/function/arguments-with-arguments-lex.js: Added.
1905         (f):
1906         * test262/test/language/statements/function/params-trailing-comma-arguments.js: Added.
1907         (f1):
1908         (f2):
1909         * test262/test/language/statements/function/params-trailing-comma-length.js: Added.
1910         (one):
1911         (two):
1912         * test262/test/language/statements/function/params-trailing-comma.js: Added.
1913         (one):
1914         (two):
1915         * test262/test/language/statements/generators/arguments-with-arguments-fn.js: Added.
1916         (g):
1917         * test262/test/language/statements/generators/arguments-with-arguments-lex.js: Added.
1918         (g):
1919         * test262/test/language/statements/generators/params-trailing-comma-length.js: Added.
1920         (one):
1921         (two):
1922         * test262/test/language/statements/generators/params-trailing-comma.js: Added.
1923         (one):
1924         (two):
1925         * test262/test262-Revision.txt:
1926
1927 2016-08-23  Benjamin Poulain  <bpoulain@apple.com>
1928
1929         [JSC] Make Math.cos() and Math.sin() work with any argument type
1930         https://bugs.webkit.org/show_bug.cgi?id=161069
1931
1932         Reviewed by Geoffrey Garen.
1933
1934         * stress/arith-cos-on-various-types.js: Added.
1935         * stress/arith-sin-on-various-types.js: Added.
1936
1937 2016-08-23  Yusuke Suzuki  <utatane.tea@gmail.com>
1938
1939         [ES6] Module namespace object's Symbol.iterator method should only accept module namespace objects
1940         https://bugs.webkit.org/show_bug.cgi?id=161097
1941
1942         Reviewed by Keith Miller.
1943
1944         * test262.yaml:
1945
1946 2016-08-22  Yusuke Suzuki  <utatane.tea@gmail.com>
1947
1948         [ES6] Modules' `export default function/class` should be declaration
1949         https://bugs.webkit.org/show_bug.cgi?id=160499
1950
1951         Reviewed by Saam Barati.
1952
1953         Add several module tests. And flip the failed tests flags in test262.
1954
1955         * modules/export-default-function-name-in-assignment-expression.js: Added.
1956         (export.default):
1957         * modules/export-default-function-name-in-class-declaration.js: Added.
1958         * modules/export-default-function-name-in-function-declaration.js: Added.
1959         (export.default):
1960         * modules/export-default-function-name-in-generator-declaration.js: Added.
1961         (export.default):
1962         * stress/method-name.js: Added.
1963         (testSyntax):
1964         (testSyntaxError):
1965         (testSyntaxError.Hello.prototype.hello.hello):
1966         (testSyntaxError.Hello):
1967         (SyntaxError.Unexpected.identifier.string_appeared_here.Expected.an.opening.string_appeared_here.before.a.method.testSyntaxError.let.obj.hello.hello):
1968         (testSyntaxError.Hello.prototype.get hello):
1969         (testSyntaxError.Hello.prototype.set hello):
1970         * test262.yaml:
1971
1972 2016-08-22  Yusuke Suzuki  <utatane.tea@gmail.com>
1973
1974         [ES6] Module should not allow HTML comments
1975         https://bugs.webkit.org/show_bug.cgi?id=161041
1976
1977         Reviewed by Saam Barati.
1978
1979         * modules/html-comments.js: Added.
1980         (shouldThrow):
1981         * test262.yaml:
1982
1983 2016-08-21  Yusuke Suzuki  <utatane.tea@gmail.com>
1984
1985         [DFG] Should not fixup AnyIntUse in 32_64
1986         https://bugs.webkit.org/show_bug.cgi?id=161029
1987
1988         Reviewed by Saam Barati.
1989
1990         * typeProfiler/int52-dfg.js: Added.
1991         (test):
1992
1993 2016-08-21  Yusuke Suzuki  <utatane.tea@gmail.com>
1994
1995         Unreviewed, rolling out r204697
1996         https://bugs.webkit.org/show_bug.cgi?id=161029
1997
1998         * typeProfiler/int52-dfg.js: Removed.
1999         (test): Deleted.
2000         * typeProfiler/number-filter-dfg.js: Removed.
2001         (test): Deleted.
2002
2003 2016-08-21  Yusuke Suzuki  <utatane.tea@gmail.com>
2004
2005         [DFG] Should not fixup AnyIntUse in 32_64
2006         https://bugs.webkit.org/show_bug.cgi?id=161029
2007
2008         Reviewed by Saam Barati.
2009
2010         * typeProfiler/int52-dfg.js: Added.
2011         (test):
2012         * typeProfiler/number-filter-dfg.js: Added.
2013         (test):
2014
2015 2016-08-19  Benjamin Poulain  <bpoulain@apple.com>
2016
2017         [JSC] ArithSqrt should work with any argument type
2018         https://bugs.webkit.org/show_bug.cgi?id=160954
2019
2020         Reviewed by Saam Barati.
2021
2022         * stress/arith-sqrt-on-various-types.js: Added.
2023         (let.validInputTypedTestCases.validInputTestCases.map):
2024         (isIdentical):
2025         (opaqueAllTypesSqrt):
2026         (testAllTypesCall):
2027         (testSingleTypeCall):
2028         (opaqueSqrtForSideEffects):
2029         (testSideEffect.let.testObject.valueOf):
2030         (testSideEffect):
2031         (opaqueSqrtForCSE):
2032         (testCSE.let.testObject.valueOf):
2033         (testCSE):
2034         (testException.opaqueSqrtWithException):
2035         (testException):
2036
2037 2016-08-19  Joseph Pecoraro  <pecoraro@apple.com>
2038
2039         Make custom Error properties (line, column, sourceURL) configurable and writable
2040         https://bugs.webkit.org/show_bug.cgi?id=160984
2041         <rdar://problem/27905979>
2042
2043         Reviewed by Saam Barati.
2044
2045         * stress/native-error-properties.js: Added.
2046         (assert):
2047         (shouldNotThrow):
2048
2049         (checkEmptyErrorPropertiesDescriptors):
2050         (checkNonEmptyErrorPropertiesDescriptors):
2051         The spec only describes the "message" property, so
2052         ensure it has the right descriptor attributes.
2053
2054         (checkErrorPropertiesWritable):
2055         Ensure common error property names are writable.
2056         In strict mode this would have thrown an exception
2057         if they were readonly.
2058
2059 2016-08-18  Mark Lam  <mark.lam@apple.com>
2060
2061         ScopedArguments is using the wrong owner object for a write barrier.
2062         https://bugs.webkit.org/show_bug.cgi?id=160976
2063         <rdar://problem/27328506>
2064
2065         Reviewed by Keith Miller.
2066
2067         * stress/scoped-arguments-write-barrier-should-be-on-scope-object.js: Added.
2068
2069 2016-08-17  JF Bastien  <jfbastien@apple.com>
2070
2071         We allow assignments to const variables when in a for-in/for-of loop
2072         https://bugs.webkit.org/show_bug.cgi?id=156673
2073
2074         Reviewed by Filip Pizlo.
2075
2076         * stress/for-in-of-const.js: Added.
2077         (expect_nothrow):
2078         (expect_throw):
2079         (capture):
2080
2081 2016-08-17  Mark Lam  <mark.lam@apple.com>
2082
2083         Remove an invalid assertion in the DFG backend's GetById emitter.
2084         https://bugs.webkit.org/show_bug.cgi?id=160925
2085         <rdar://problem/27248961>
2086
2087         Reviewed by Filip Pizlo.
2088
2089         * stress/dfg-get-by-id-should-not-assert-non-null-prediction.js: Added.
2090
2091 2016-08-16  Ryan Haddad  <ryanhaddad@apple.com>
2092
2093         Unreviewed, rolling out r204464.
2094
2095         This is no longer needed after r204495.
2096
2097         Reverted changeset:
2098
2099         "Skip failing test mozilla/ecma/LexicalConventions/7.7.3.js"
2100         https://bugs.webkit.org/show_bug.cgi?id=160662
2101         http://trac.webkit.org/changeset/204464
2102
2103 2016-08-15  Ryan Haddad  <ryanhaddad@apple.com>
2104
2105         Skip failing test mozilla/ecma/LexicalConventions/7.7.3.js
2106         https://bugs.webkit.org/show_bug.cgi?id=160662
2107
2108         Unreviewed test gardening.
2109
2110         * mozilla/ecma/LexicalConventions/7.7.3.js:
2111
2112 2016-08-14  Skachkov Oleksandr  <gskachkov@gmail.com>
2113
2114         [2016] Set correct status for test262 after implementation of Object.values&Object.entries
2115         https://bugs.webkit.org/show_bug.cgi?id=160844
2116
2117         Reviewed by Saam Barati.
2118
2119         Patch contains fix statuses of specs in the test262 test collection after implementation of 
2120         Object.values and Object.entries functions. Also patch contains small fixes in tests of the 
2121         tests for Object.values/entries functions.
2122
2123         * stress/object-entries.js:
2124         (Object.getOwnPropertyDescriptor):
2125         * stress/object-values.js:
2126         (Object.getOwnPropertyDescriptor):
2127         * test262.yaml:
2128
2129 2016-08-12  Saam Barati  <sbarati@apple.com>
2130
2131         Inline store loop for CopyRest in DFG and FTL for certain array modes
2132         https://bugs.webkit.org/show_bug.cgi?id=159612
2133
2134         Reviewed by Filip Pizlo.
2135
2136         * stress/rest-parameter-having-a-bad-time.js: Added.
2137         * stress/rest-parameter-many-arguments.js: Added.
2138         * stress/rest-parameter-various-types.js: Added.
2139
2140 2016-08-12  Skachkov Oleksandr  <gskachkov@gmail.com>
2141
2142         [ES2016] Implement Object.entries
2143         https://bugs.webkit.org/show_bug.cgi?id=160412
2144
2145         Reviewed by Saam Barati.
2146
2147         Patch contains tests for Object.entries function and 
2148         fix of wrong tests for Object.values function.
2149
2150         * stress/object-entries.js: 
2151         (compare):
2152         (string_appeared_here.forEach):
2153         (const.getInvokedFunctions.):
2154         (const.getInvokedFunctions):
2155         (Array.prototype.push):
2156         * stress/object-values.js:
2157
2158 2016-08-11  Mark Lam  <mark.lam@apple.com>
2159
2160         OverridesHasInstance should not branch across register allocations.
2161         https://bugs.webkit.org/show_bug.cgi?id=160792
2162         <rdar://problem/27361778>
2163
2164         Reviewed by Benjamin Poulain.
2165
2166         * stress/OverrideHasInstance-should-not-branch-across-register-allocations.js: Added.
2167
2168 2016-08-11  Mark Lam  <mark.lam@apple.com>
2169
2170         The jsc shell's Element host constructor should throw if it fails to construct an object.
2171         https://bugs.webkit.org/show_bug.cgi?id=160773
2172         <rdar://problem/27328608>
2173
2174         Reviewed by Saam Barati.
2175
2176         * stress/generational-opaque-roots.js:
2177
2178 2016-08-11  Mark Lam  <mark.lam@apple.com>
2179
2180         Disallow synchronous sweeping for eden GCs.
2181         https://bugs.webkit.org/show_bug.cgi?id=160716
2182
2183         Reviewed by Geoffrey Garen.
2184
2185         * stress/eden-gc-with-retired-blocks.js: Added.
2186         - This test is just in case we add back support for eden GCs with synchronous
2187           sweeping in the future.
2188
2189 2016-08-10  Michael Saboff  <msaboff@apple.com>
2190
2191         Baseline GetByVal and PutByVal for cache ID stubs need to handle exceptions
2192         https://bugs.webkit.org/show_bug.cgi?id=160749
2193
2194         Reviewed by Filip Pizlo.
2195
2196         New test that causes baseline GetByValWithCachedId and PutByValWithCachedId
2197         stubs to be generated and then throws exceptions for those stub to handle
2198         to verify that they are properly handled.
2199
2200         * stress/regress-160749.js: Added.
2201         (testCachedGetByVal.):
2202         (testCachedGetByVal.get for):
2203         (testCachedGetByVal):
2204         (testCachedPutByVal.):
2205         (testCachedPutByVal.set for):
2206         (testCachedPutByVal):
2207
2208 2016-08-10  Mark Lam  <mark.lam@apple.com>
2209
2210         DFG's flushForTerminal() needs to add PhantomLocals for bytecode live locals.
2211         https://bugs.webkit.org/show_bug.cgi?id=160755
2212         <rdar://problem/27488507>
2213
2214         Reviewed by Filip Pizlo.
2215
2216         * stress/need-bytecode-liveness-for-unreachable-blocks-at-dfg-time.js: Added.
2217
2218 2016-08-09  Skachkov Oleksandr  <gskachkov@gmail.com>
2219
2220         [ES2016] Implement Object.values
2221         https://bugs.webkit.org/show_bug.cgi?id=160410
2222
2223         Reviewed by Saam Barati, Yusuke Suzuki.
2224
2225         * stress/object-values.js: Added.
2226         (compare):
2227         (string_appeared_here.forEach):
2228         (const.getInvokedFunctions.):
2229         (const.getInvokedFunctions):
2230         (Array.prototype.push):
2231
2232 2016-08-09  Saam Barati  <sbarati@apple.com>
2233
2234         JSBoundFunction should lazily generate its name string
2235         https://bugs.webkit.org/show_bug.cgi?id=160678
2236         <rdar://problem/27043194>
2237
2238         Reviewed by Mark Lam.
2239
2240         * stress/bound-function-lazy-name-generation.js: Added.
2241         (assert):
2242         (test.let.f):
2243         (test.f):
2244         (test):
2245
2246 2016-08-08  Mark Lam  <mark.lam@apple.com>
2247
2248         ASSERTION FAILED: hasInlineStorage() in JSFinalObject::visitChildren().
2249         https://bugs.webkit.org/show_bug.cgi?id=160666
2250
2251         Reviewed by Keith Miller.
2252
2253         * stress/object-constructor-should-be-new-target-aware.js:
2254
2255 2016-08-07  Yusuke Suzuki  <utatane.tea@gmail.com>
2256
2257         [ES6] Module namespace object should not allow unset IC
2258         https://bugs.webkit.org/show_bug.cgi?id=160553
2259
2260         Reviewed by Saam Barati.
2261
2262         * modules/namespace-object-get-property.js: Added.
2263         (import.as.ns.from.string_appeared_here.shouldThrow):
2264         * modules/namespace-object-has-property.js: Added.
2265         * modules/namespace-object-inline-caching.js: Added.
2266         (import.as.A.from.string_appeared_here.import.as.B.from.string_appeared_here.lookup):
2267         (shouldBe.lookup.lookup):
2268         (shouldBe.lookup):
2269         * modules/namespace-object-inline-caching/a.js: Added.
2270         * modules/namespace-object-inline-caching/b.js: Added.
2271         * modules/namespace-object-try-get.js: Added.
2272         (import.as.ns.from.string_appeared_here.tryGetByIdText):
2273         (tryGetByIdTextStrict):
2274         * modules/namespace-object-typed-array-fast-path.js: Added.
2275         * test262.yaml:
2276
2277 2016-08-05  Saam Barati  <sbarati@apple.com>
2278
2279         various math operations don't properly check for an exception after calling toNumber() on the lhs
2280         https://bugs.webkit.org/show_bug.cgi?id=160154
2281
2282         Reviewed by Mark Lam.
2283
2284         * stress/to-number-throws-correct-exception.js: Added.
2285         (test.let.test.runTest.):
2286         (test.let.test.runTest.get f):
2287         (test.let.test.runTest):
2288         (test.let.test):
2289         (test):
2290         (test2.runTest.):
2291         (test2.runTest.get f):
2292         (test2.runTest):
2293         (test2):
2294
2295 2016-08-05  Saam Barati  <sbarati@apple.com>
2296
2297         Assertion failure when accessing TDZ variable in catch through eval
2298         https://bugs.webkit.org/show_bug.cgi?id=160554
2299
2300         Reviewed by Mark Lam and Keith Miller.
2301
2302         * stress/catch-variables-under-tdz.js: Added.
2303         (test):
2304
2305 2016-08-04  Yusuke Suzuki  <utatane.tea@gmail.com>
2306
2307         [ES6] JSModuleNamespaceObject's Symbol.iterator function should have name
2308         https://bugs.webkit.org/show_bug.cgi?id=160549
2309
2310         Reviewed by Saam Barati.
2311
2312         * modules/namespace-object-symbol-iterator-name.js: Added.
2313         * test262.yaml:
2314
2315 2016-08-04  Keith Miller  <keith_miller@apple.com>
2316
2317         ASSERTION FAILED: !hasInstanceValueNode->isCellConstant() || defaultHasInstanceFunction == hasInstanceValueNode->asCell()
2318         https://bugs.webkit.org/show_bug.cgi?id=160562
2319
2320         Reviewed by Mark Lam.
2321
2322         * stress/instanceof-late-constant-folding.js: Added.
2323         (Constructor):
2324         (value):
2325         (body):
2326
2327 2016-08-04  Caitlin Potter  <caitp@igalia.com>
2328
2329         [JSC] fix generator-syntax.js JSTest again after yield grammar fix
2330         https://bugs.webkit.org/show_bug.cgi?id=160550
2331
2332         Reviewed by Yusuke Suzuki.
2333
2334         * stress/generator-syntax.js:
2335         (testYieldBindingIdentifier):
2336
2337 2016-08-03  Caitlin Potter  <caitp@igalia.com>
2338
2339         Clarify SyntaxErrors around yield and unskip tests
2340         https://bugs.webkit.org/show_bug.cgi?id=158460
2341
2342         Reviewed by Saam Barati.
2343
2344         Fix and unskip tests which erroneously asserted that `yield` is not a
2345         valid BindingIdentifier, and improve error message for YieldExpressions
2346         occuring in Arrow formal parameters.
2347
2348         * stress/generator-syntax.js:
2349         * stress/yield-out-of-generator.js:
2350
2351 2016-08-03  Filip Pizlo  <fpizlo@apple.com>
2352
2353         REGRESSION(r203368): broke some test262 tests
2354         https://bugs.webkit.org/show_bug.cgi?id=160479
2355
2356         Reviewed by Mark Lam.
2357         
2358         Added a stress test for this case, since we don't always run test262.
2359
2360         * stress/freeze-setter.js: Added.
2361         (let.o.set foo):
2362
2363 2016-08-03  Saam Barati  <sbarati@apple.com>
2364
2365         Implement nested rest destructuring w.r.t the ES7 spec
2366         https://bugs.webkit.org/show_bug.cgi?id=160423
2367
2368         Reviewed by Filip Pizlo.
2369
2370         * stress/destructuring-rest-element.js: Added.
2371         (assert):
2372         (test):
2373         (arr):
2374         (eq):
2375         (gen):
2376         (fakeGen.return.Symbol.iterator):
2377         (fakeGen):
2378         * stress/rest-elements.js:
2379         (testSyntaxError.String.raw):
2380         * stress/rest-parameter-is-destructuring.js: Added.
2381         (assert):
2382         (test):
2383         (foo):
2384         (bar):
2385         * test262.yaml:
2386
2387 2016-08-02  Saam Barati  <sbarati@apple.com>
2388
2389         Rename Changelog to ChangeLog
2390
2391         Rubber stamped by Keith Miller.
2392
2393         * Changelog: Removed.
2394
2395 2016-08-02  Saam Barati  <sbarati@apple.com>
2396
2397         update a class extending null w.r.t the ES7 spec
2398         https://bugs.webkit.org/show_bug.cgi?id=160417
2399
2400         Reviewed by Keith Miller.
2401
2402         * Changelog:
2403         * stress/class-derived-from-null.js: Added.
2404         (assert):
2405         (test):
2406         (test1.C):
2407         (test1):
2408         (jsNull):
2409         (test2.C):
2410         (test2):
2411         (test3.C):
2412         (test3.D):
2413         (test3.E):
2414         (test3):
2415         (test4.E):
2416         (test4):
2417         (test5.E):
2418         (test5):
2419         (test6.Base):
2420         (test6.D):
2421         (test6.E):
2422         (test6.F):
2423         (test6.G):
2424         (test6):
2425         * test262.yaml:
2426
2427 2016-08-01  Filip Pizlo  <fpizlo@apple.com>
2428
2429         Rationalize varargs stack overflow checks
2430         https://bugs.webkit.org/show_bug.cgi?id=160425
2431
2432         Reviewed by Michael Saboff.
2433
2434         * stress/arity-check-ftl-throw-more-args.js: Added.
2435         (catch):
2436
2437 2016-08-01  Keith Miller  <keith_miller@apple.com>
2438
2439         We should not keep the JavaScript tests inside the Source/JavaScriptCore/ directory.
2440         https://bugs.webkit.org/show_bug.cgi?id=160372
2441
2442         Rubber stamped by Geoffrey Garen.
2443
2444         This patch moves all the JavaScript tests from Source/JavaScriptCore/tests to
2445         a new top level directory, JSTests. Having the tests in the Source directory
2446         was both confusing an inconvenient for people that just want to checkout the
2447         source code of WebKit. Since there is no other obvious place to put all the
2448         JavaScript tests a new top level directory seemed the most sensible.
2449
2450         * tests/: Deleted.