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