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