JSC should have a "microbenchmarks" directory instead of "regress" directory
[WebKit-https.git] / JSTests / ChangeLog
1 2016-08-23  Saam Barati  <sbarati@apple.com>
2
3         JSC should have a "microbenchmarks" directory instead of "regress" directory
4         https://bugs.webkit.org/show_bug.cgi?id=161096
5
6         Rubber stamped by Mark Lam.
7
8         * microbenchmarks: Copied from LayoutTests/js/regress/script-tests.
9
10 2016-08-23  Keith Miller  <keith_miller@apple.com>
11
12         %TypedArray%.prototype.slice needs to check that the source and destination have not been detached.
13         https://bugs.webkit.org/show_bug.cgi?id=161031
14         <rdar://problem/27937019>
15
16         Reviewed by Geoffrey Garen.
17
18         * stress/typedarray-slice.js:
19         (get let):
20         (get try):
21         (testSpeciesWithTransferring):
22
23 2016-08-22  Filip Pizlo  <fpizlo@apple.com>
24
25         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
26         https://bugs.webkit.org/show_bug.cgi?id=160125
27
28         Reviewed by Geoffrey Garen.
29         
30         Most of the things I did properly covered by existing tests, but I found some simple cases of
31         unshifting that had sketchy coverage.
32
33         * stress/array-storage-array-unshift.js: Added.
34         * stress/contiguous-array-unshift.js: Added.
35         * stress/double-array-unshift.js: Added.
36         * stress/int32-array-unshift.js: Added.
37
38 2016-08-23  Keith Miller  <keith_miller@apple.com>
39
40         Update/add new test262 tests
41         https://bugs.webkit.org/show_bug.cgi?id=161098
42
43         Reviewed by Saam Barati.
44
45         * test262.yaml:
46         * test262/test/annexB/language/statements/for-in/bare-initializer.js: Added.
47         * test262/test/annexB/language/statements/for-in/const-initializer.js: Added.
48         * test262/test/annexB/language/statements/for-in/let-initializer.js: Added.
49         * test262/test/annexB/language/statements/for-in/nonstrict-initializer.js: Added.
50         (a):
51         * test262/test/annenxB/language/statements/for-in/strict-initializer.js: Added.
52         * test262/test/annexB/language/statements/for-in/var-arraybindingpattern-initializer.js: Added.
53         * test262/test/annexB/language/statements/for-in/var-objectbindingpattern-initializer.js: Added.
54         * test262/test/built-ins/AsyncFunction/AsyncFunction-construct.js: Added.
55         (AsyncFunction.async.foo):
56         * test262/test/built-ins/AsyncFunction/AsyncFunction-is-extensible.js: Added.
57         (AsyncFunction.async):
58         * test262/test/built-ins/AsyncFunction/AsyncFunction-is-subclass.js: Added.
59         (async.foo):
60         * test262/test/built-ins/AsyncFunction/AsyncFunction-length.js: Added.
61         (AsyncFunction.async.foo):
62         * test262/test/built-ins/AsyncFunction/AsyncFunction-name.js: Added.
63         (AsyncFunction.async.foo):
64         * test262/test/built-ins/AsyncFunction/AsyncFunction-prototype.js: Added.
65         (AsyncFunction.async.foo):
66         * test262/test/built-ins/AsyncFunction/AsyncFunction.js: Added.
67         (AsyncFunction.async.foo):
68         * test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-is-extensible.js: Added.
69         (AsyncFunction.async.foo):
70         * test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-prototype.js: Added.
71         (AsyncFunction.async.foo):
72         * test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-to-string.js: Added.
73         (AsyncFunction.async.foo):
74         * test262/test/built-ins/AsyncFunction/instance-construct.js: Added.
75         (async.foo):
76         * test262/test/built-ins/AsyncFunction/instance-has-name.js: Added.
77         (async.foo):
78         * test262/test/built-ins/AsyncFunction/instance-length.js: Added.
79         (async.l0):
80         (async.l1):
81         (async.l2):
82         * test262/test/built-ins/AsyncFunction/instance-prototype-property.js: Added.
83         (async.foo):
84         * test262/test/built-ins/AsyncFunction/is-not-a-global.js: Added.
85         * 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.
86         * test262/test/built-ins/DataView/prototype/getFloat32/detached-buffer-before-outofrange-byteoffset.js:
87         * 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.
88         * test262/test/built-ins/DataView/prototype/getFloat64/detached-buffer-before-outofrange-byteoffset.js:
89         * 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.
90         * test262/test/built-ins/DataView/prototype/getInt16/detached-buffer-before-outofrange-byteoffset.js:
91         * 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.
92         * test262/test/built-ins/DataView/prototype/getInt32/detached-buffer-before-outofrange-byteoffset.js:
93         * 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.
94         * test262/test/built-ins/DataView/prototype/getInt8/detached-buffer-before-outofrange-byteoffset.js:
95         * 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.
96         * test262/test/built-ins/DataView/prototype/getUint16/detached-buffer-before-outofrange-byteoffset.js:
97         * 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.
98         * test262/test/built-ins/DataView/prototype/getUint32/detached-buffer-before-outofrange-byteoffset.js:
99         * 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.
100         * test262/test/built-ins/DataView/prototype/getUint8/detached-buffer-before-outofrange-byteoffset.js:
101         * 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.
102         * test262/test/built-ins/DataView/prototype/setFloat32/detached-buffer-before-outofrange-byteoffset.js:
103         * test262/test/built-ins/DataView/prototype/setFloat32/index-check-before-value-conversion.js:
104         * test262/test/built-ins/DataView/prototype/setFloat32/range-check-after-value-conversion.js:
105         * 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.
106         * test262/test/built-ins/DataView/prototype/setFloat64/detached-buffer-before-outofrange-byteoffset.js:
107         * test262/test/built-ins/DataView/prototype/setFloat64/index-check-before-value-conversion.js:
108         * test262/test/built-ins/DataView/prototype/setFloat64/range-check-after-value-conversion.js:
109         * 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.
110         * test262/test/built-ins/DataView/prototype/setInt16/detached-buffer-before-outofrange-byteoffset.js:
111         * test262/test/built-ins/DataView/prototype/setInt16/index-check-before-value-conversion.js:
112         * test262/test/built-ins/DataView/prototype/setInt16/range-check-after-value-conversion.js:
113         * 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.
114         * test262/test/built-ins/DataView/prototype/setInt32/detached-buffer-before-outofrange-byteoffset.js:
115         * test262/test/built-ins/DataView/prototype/setInt32/index-check-before-value-conversion.js:
116         * test262/test/built-ins/DataView/prototype/setInt32/range-check-after-value-conversion.js:
117         * 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.
118         * test262/test/built-ins/DataView/prototype/setInt8/detached-buffer-before-outofrange-byteoffset.js:
119         * test262/test/built-ins/DataView/prototype/setInt8/index-check-before-value-conversion.js:
120         * test262/test/built-ins/DataView/prototype/setInt8/range-check-after-value-conversion.js:
121         * 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.
122         * test262/test/built-ins/DataView/prototype/setUint16/detached-buffer-before-outofrange-byteoffset.js:
123         * test262/test/built-ins/DataView/prototype/setUint16/index-check-before-value-conversion.js:
124         * test262/test/built-ins/DataView/prototype/setUint16/range-check-after-value-conversion.js:
125         * 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.
126         * test262/test/built-ins/DataView/prototype/setUint32/detached-buffer-before-outofrange-byteoffset.js:
127         * test262/test/built-ins/DataView/prototype/setUint32/index-check-before-value-conversion.js:
128         * test262/test/built-ins/DataView/prototype/setUint32/range-check-after-value-conversion.js:
129         * 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.
130         * test262/test/built-ins/DataView/prototype/setUint8/detached-buffer-before-outofrange-byteoffset.js:
131         * test262/test/built-ins/DataView/prototype/setUint8/index-check-before-value-conversion.js:
132         * test262/test/built-ins/DataView/prototype/setUint8/range-check-after-value-conversion.js:
133         * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget-bound.js: Added.
134         (A):
135         * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget.js: Added.
136         (A):
137         * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-self-new.js: Added.
138         (A):
139         * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-self-reflect.js: Added.
140         (A):
141         * test262/test/built-ins/Function/prototype/toString/AsyncFunction.js: Added.
142         (async.f):
143         * test262/test/built-ins/Function/prototype/toString/async-function-declaration.js: Added.
144         (async.f):
145         * test262/test/built-ins/Function/prototype/toString/async-function-expression.js: Added.
146         (let.f.async.f):
147         * test262/test/built-ins/Function/prototype/toString/async-method.js: Added.
148         (let.f.async.f):
149         (let.g.async.string_appeared_here):
150         * test262/test/built-ins/JSON/parse/reviver-array-define-prop-err.js: Added.
151         (defineProperty):
152         * test262/test/built-ins/JSON/parse/reviver-array-delete-err.js: Added.
153         (deleteProperty):
154         * test262/test/built-ins/JSON/parse/reviver-array-length-coerce-err.js: Added.
155         (uncoercible.valueOf):
156         (get if):
157         * test262/test/built-ins/JSON/parse/reviver-array-length-get-err.js: Added.
158         (get if):
159         * test262/test/built-ins/JSON/parse/reviver-call-err.js: Added.
160         * test262/test/built-ins/JSON/parse/reviver-get-name-err.js: Added.
161         (thrower):
162         * test262/test/built-ins/JSON/parse/reviver-object-define-prop-err.js: Added.
163         (defineProperty):
164         * test262/test/built-ins/JSON/parse/reviver-object-delete-err.js: Added.
165         (deleteProperty):
166         * test262/test/built-ins/JSON/parse/reviver-object-own-keys-err.js: Added.
167         (ownKeys):
168         * test262/test/built-ins/Number/prototype/toExponential/infinity.js: Added.
169         * test262/test/built-ins/Number/prototype/toExponential/nan.js: Added.
170         * test262/test/built-ins/Number/prototype/toExponential/prop-desc.js: Added.
171         * test262/test/built-ins/Number/prototype/toExponential/return-abrupt-tointeger-fractiondigits-symbol.js: Added.
172         * test262/test/built-ins/Number/prototype/toExponential/return-abrupt-tointeger-fractiondigits.js: Added.
173         (fd1.valueOf):
174         (fd2.toString):
175         * test262/test/built-ins/Number/prototype/toExponential/return-values.js: Added.
176         * test262/test/built-ins/Number/prototype/toExponential/this-is-0-fractiondigits-is-0.js: Added.
177         * test262/test/built-ins/Number/prototype/toExponential/this-is-0-fractiondigits-is-not-0.js: Added.
178         * test262/test/built-ins/Number/prototype/toExponential/this-type-not-number-or-number-object.js: Added.
179         * test262/test/built-ins/Number/prototype/toExponential/tointeger-fractiondigits.js: Added.
180         * test262/test/built-ins/Number/prototype/toExponential/undefined-fractiondigits.js: Added.
181         * test262/test/built-ins/Object/getOwnPropertyDescriptors/duplicate-keys.js:
182         * test262/test/built-ins/Object/getOwnPropertyDescriptors/proxy-undefined-descriptor.js: Added.
183         (badProxyHandlers.allowProxyTraps.getOwnPropertyDescriptor):
184         (badProxyHandlers.allowProxyTraps.ownKeys):
185         * test262/test/built-ins/Proxy/setPrototypeOf/boolean-trap-result-extensible-target.js: Removed.
186         (setPrototypeOf): Deleted.
187         * test262/test/built-ins/Proxy/setPrototypeOf/internals-call-order.js: Added.
188         (target.new.Proxy.Object.create.isExtensible):
189         (target.new.Proxy.Object.create.getPrototypeOf):
190         (target.new.Proxy.Object.create):
191         (setPrototypeOf):
192         * test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-target-not-same-target-prototype.js:
193         (setPrototypeOf):
194         * test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-target-same-target-prototype.js:
195         (setPrototypeOf):
196         * test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-trap-is-false-return-false.js: Removed.
197         (setPrototypeOf): Deleted.
198         * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-get-trap.js: Added.
199         * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-isextensible-target.js: Added.
200         (isExtensible):
201         (setPrototypeOf):
202         * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-target-getprototypeof.js: Added.
203         (getPrototypeOf):
204         (setPrototypeOf):
205         * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-trap.js: Renamed from JSTests/test262/test/built-ins/Proxy/setPrototypeOf/return-is-abrupt.js.
206         (setPrototypeOf):
207         * test262/test/built-ins/Proxy/setPrototypeOf/return-is-abrupt.js:
208         (setPrototypeOf): Deleted.
209         * test262/test/built-ins/Proxy/setPrototypeOf/toboolean-trap-result-false.js: Added.
210         (isExtensible):
211         (setPrototypeOf):
212         * test262/test/built-ins/Proxy/setPrototypeOf/toboolean-trap-result-true-target-is-extensible.js: Added.
213         (isExtensible):
214         (getPrototypeOf):
215         (setPrototypeOf):
216         * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-not-callable.js:
217         * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-undefined-or-null.js: Added.
218         (setPrototypeOf):
219         * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-undefined.js: Removed.
220         * test262/test/built-ins/RegExp/lastIndex.js: Added.
221         * test262/test/built-ins/RegExp/prototype/global/15.10.7.2-1.js: Removed.
222         * test262/test/built-ins/RegExp/prototype/global/this-val-invalid-obj.js: Added.
223         (get Object):
224         * test262/test/built-ins/RegExp/prototype/global/this-val-non-obj.js: Added.
225         (get Object):
226         * test262/test/built-ins/RegExp/prototype/global/this-val-regexp-prototype.js: Added.
227         * test262/test/built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1.js: Removed.
228         * test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-invalid-obj.js: Added.
229         (get Object):
230         * test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-non-obj.js: Added.
231         (get Object):
232         * test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-regexp-prototype.js: Added.
233         * test262/test/built-ins/RegExp/prototype/lastIndex/15.10.7.5-1.js: Removed.
234         * test262/test/built-ins/RegExp/prototype/lastIndex/15.10.7.5-2.js: Removed.
235         * test262/test/built-ins/RegExp/prototype/lastIndex/S15.10.7.5_A8.js: Removed.
236         (__re.hasOwnProperty): Deleted.
237         (__re.propertyIsEnumerable): Deleted.
238         (count.0): Deleted.
239         * test262/test/built-ins/RegExp/prototype/lastIndex/S15.10.7.5_A9.js: Removed.
240         (__re.hasOwnProperty): Deleted.
241         (catch): Deleted.
242         * test262/test/built-ins/RegExp/prototype/multiline/15.10.7.4-1.js: Removed.
243         * test262/test/built-ins/RegExp/prototype/multiline/this-val-invalid-obj.js: Added.
244         (get Object):
245         * test262/test/built-ins/RegExp/prototype/multiline/this-val-non-obj.js: Added.
246         (get Object):
247         * test262/test/built-ins/RegExp/prototype/multiline/this-val-regexp-prototype.js: Added.
248         * test262/test/built-ins/RegExp/prototype/no-regexp-matcher.js: Added.
249         * test262/test/built-ins/RegExp/prototype/source/15.10.7.1-1.js: Removed.
250         * test262/test/built-ins/RegExp/prototype/source/this-val-invalid-obj.js: Added.
251         (get Object):
252         * test262/test/built-ins/RegExp/prototype/source/this-val-non-obj.js: Added.
253         (get Object):
254         * test262/test/built-ins/RegExp/prototype/source/this-val-regexp-prototype.js: Added.
255         * test262/test/built-ins/RegExp/prototype/source/value-empty.js: Added.
256         * test262/test/built-ins/RegExp/prototype/source/value-line-terminator.js: Added.
257         * test262/test/built-ins/RegExp/prototype/source/value-u.js: Added.
258         * test262/test/built-ins/RegExp/prototype/source/value.js: Added.
259         * 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.
260         * 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.
261         * test262/test/built-ins/RegExp/prototype/sticky/this-val-regexp-prototype.js: Added.
262         * test262/test/built-ins/RegExp/prototype/sticky/this-val-regexp.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/sticky/this-regexp.js.
263         * 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.
264         * 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.
265         * test262/test/built-ins/RegExp/prototype/unicode/this-val-regexp-prototype.js: Added.
266         * test262/test/built-ins/RegExp/prototype/unicode/this-val-regexp.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/unicode/this-regexp.js.
267         * test262/test/built-ins/String/numeric-properties.js: Added.
268         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/date-is-infinity-throws.js: Added.
269         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/date-is-nan-throws.js: Added.
270         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/formatToParts.js: Added.
271         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/length.js: Added.
272         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/main.js: Added.
273         (reduce):
274         (compareFTPtoFormat):
275         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/name.js: Added.
276         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/return-abrupt-tonumber-date.js: Added.
277         (obj1.valueOf):
278         (obj2.toString):
279         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/this-has-not-internal-throws.js: Added.
280         * test262/test/intl402/DateTimeFormat/prototype/formatToParts/this-is-not-object-throws.js: Added.
281         * test262/test/intl402/NumberFormat/prototype/formatToParts/formatToParts.js: Added.
282         * test262/test/intl402/NumberFormat/prototype/formatToParts/length.js: Added.
283         * test262/test/intl402/NumberFormat/prototype/formatToParts/main.js: Added.
284         (reduce):
285         (compareFTPtoFormat):
286         * test262/test/intl402/NumberFormat/prototype/formatToParts/name.js: Added.
287         * test262/test/intl402/NumberFormat/prototype/formatToParts/return-abrupt-tonumber.js: Added.
288         (obj1.valueOf):
289         (obj2.toString):
290         * test262/test/intl402/NumberFormat/prototype/formatToParts/this-has-not-internal-throws.js: Added.
291         * test262/test/intl402/NumberFormat/prototype/formatToParts/this-is-not-object-throws.js: Added.
292         * test262/test/language/arguments-object/10.6-10-c-ii-2-s.js:
293         (foo): Deleted.
294         * test262/test/language/arguments-object/unmapped/via-params-dflt.js: Added.
295         (dflt):
296         * test262/test/language/arguments-object/unmapped/via-params-dstr.js: Added.
297         (dstr):
298         * test262/test/language/arguments-object/unmapped/via-params-rest.js: Added.
299         (rest):
300         * 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.
301         (foo):
302         * test262/test/language/block-scope/syntax/redeclaration-global/allowed-to-redeclare-function-declaration-with-function-declaration.js:
303         (f): Deleted.
304         * test262/test/language/eval-code/direct/super-call-arrow.js: Added.
305         (catch):
306         * test262/test/language/eval-code/direct/super-call-fn.js: Added.
307         (f):
308         * test262/test/language/eval-code/direct/super-call.js: Added.
309         (catch):
310         * test262/test/language/eval-code/direct/super-prop-arrow.js: Added.
311         (catch):
312         * test262/test/language/eval-code/direct/super-prop-method.js: Added.
313         (o.method):
314         * test262/test/language/eval-code/direct/super-prop.js: Added.
315         (catch):
316         * test262/test/language/eval-code/indirect/super-call.js: Added.
317         (catch):
318         (try.m):
319         * test262/test/language/eval-code/indirect/super-prop.js: Added.
320         (catch):
321         (try.m):
322         * test262/test/language/expressions/arrow-function/params-trailing-comma-length.js: Added.
323         (assert.sameValue):
324         * test262/test/language/expressions/arrow-function/params-trailing-comma.js: Added.
325         * test262/test/language/expressions/async-arrow-function/arrow-returns-promise.js: Added.
326         (p.then):
327         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-NSPL-with-USD.js: Added.
328         (async):
329         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-arguments-in-formal-parameters.js: Added.
330         (async):
331         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-await-in-formals-default.js: Added.
332         (async):
333         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-await-in-formals.js: Added.
334         (async):
335         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-body-contains-super-call.js: Added.
336         (async):
337         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-body-contains-super-property.js: Added.
338         (async):
339         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-duplicate-parameters.js: Added.
340         (async):
341         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-eval-in-formal-parameters.js: Added.
342         (async):
343         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-body-duplicate.js: Added.
344         (async):
345         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-contains-super-call.js: Added.
346         (async.foo.super):
347         * test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-contains-super-property.js: Added.
348         (async):
349         * test262/test/language/expressions/async-function/early-errors-expression-NSPL-with-USD.js: Added.
350         (async):
351         * test262/test/language/expressions/async-function/early-errors-expression-binding-identifier-arguments.js: Added.
352         (async.arguments):
353         * test262/test/language/expressions/async-function/early-errors-expression-binding-identifier-eval.js: Added.
354         (async.eval):
355         * test262/test/language/expressions/async-function/early-errors-expression-body-contains-super-call.js: Added.
356         (async.foo):
357         * test262/test/language/expressions/async-function/early-errors-expression-body-contains-super-property.js: Added.
358         (async.foo):
359         * test262/test/language/expressions/async-function/early-errors-expression-eval-in-formal-parameters.js: Added.
360         (async.foo):
361         * test262/test/language/expressions/async-function/early-errors-expression-formals-body-duplicate.js: Added.
362         (async.foo):
363         * test262/test/language/expressions/async-function/early-errors-expression-formals-contains-super-call.js: Added.
364         (async.foo):
365         * test262/test/language/expressions/async-function/early-errors-expression-formals-contains-super-property.js: Added.
366         (async.foo):
367         * test262/test/language/expressions/async-function/early-errors-expression-not-simple-assignment-target.js: Added.
368         (async.foo):
369         * test262/test/language/expressions/async-function/expression-returns-promise.js: Added.
370         (p.async):
371         * test262/test/language/expressions/async-function/syntax-expression-is-PrimaryExpression.js: Added.
372         (async.foo):
373         * test262/test/language/expressions/await/await-BindingIdentifier-in-global.js: Added.
374         (async.await):
375         * test262/test/language/expressions/await/await-BindingIdentifier-nested.js: Added.
376         (async.foo.await):
377         (async.foo):
378         * test262/test/language/expressions/await/await-awaits-thenable-not-callable.js: Added.
379         (async.foo):
380         * test262/test/language/expressions/await/await-awaits-thenables-that-throw.js: Added.
381         (thenable.then):
382         (async.foo):
383         * test262/test/language/expressions/await/await-awaits-thenables.js: Added.
384         (thenable.then):
385         (async.foo):
386         * test262/test/language/expressions/await/await-in-function.js: Added.
387         (foo):
388         * test262/test/language/expressions/await/await-in-generator.js: Added.
389         (foo):
390         * test262/test/language/expressions/await/await-in-global.js: Added.
391         * test262/test/language/expressions/await/await-in-nested-function.js: Added.
392         (async.foo.bar):
393         (async.foo):
394         * test262/test/language/expressions/await/await-in-nested-generator.js: Added.
395         (async.foo.bar):
396         (async.foo):
397         * test262/test/language/expressions/await/await-throws-rejections.js: Added.
398         (async.foo):
399         * test262/test/language/expressions/await/early-errors-await-not-simple-assignment-target.js: Added.
400         (async.foo):
401         * test262/test/language/expressions/await/no-operand.js: Added.
402         (async.foo):
403         * test262/test/language/expressions/await/syntax-await-has-UnaryExpression-with-MultiplicativeExpression.js: Added.
404         (async.foo):
405         * test262/test/language/expressions/await/syntax-await-has-UnaryExpression.js: Added.
406         (async.foo):
407         * test262/test/language/expressions/call/trailing-comma.js: Added.
408         (foo):
409         * test262/test/language/expressions/function/arguments-with-arguments-fn.js: Added.
410         (f):
411         * test262/test/language/expressions/function/arguments-with-arguments-lex.js: Added.
412         (f):
413         * test262/test/language/expressions/function/params-trailing-comma-arguments.js: Added.
414         (f1):
415         (f2):
416         * test262/test/language/expressions/function/params-trailing-comma-length.js: Added.
417         (assert.sameValue):
418         * test262/test/language/expressions/function/params-trailing-comma.js: Added.
419         * test262/test/language/expressions/generators/arguments-with-arguments-fn.js: Added.
420         (g):
421         * test262/test/language/expressions/generators/arguments-with-arguments-lex.js: Added.
422         (g):
423         * test262/test/language/expressions/generators/params-trailing-comma-arguments.js: Added.
424         (f1):
425         (f2):
426         * test262/test/language/expressions/generators/params-trailing-comma-length.js: Added.
427         (assert.sameValue):
428         * test262/test/language/expressions/generators/params-trailing-comma.js: Added.
429         * test262/test/language/expressions/object/computed-property-evaluation-order.js: Added.
430         * test262/test/language/expressions/object/method-definition/async-super-call-body.js: Added.
431         (sup.method):
432         (child.async.method):
433         * test262/test/language/expressions/object/method-definition/async-super-call-param.js: Added.
434         (sup.method):
435         (child.async.method.x.super.method):
436         * test262/test/language/expressions/object/method-definition/early-errors-object-method-NSPL-with-USD.js: Added.
437         (foo):
438         * test262/test/language/expressions/object/method-definition/early-errors-object-method-arguments-in-formal-parameters.js: Added.
439         (async.foo):
440         * test262/test/language/expressions/object/method-definition/early-errors-object-method-await-in-formals-default.js: Added.
441         (async.foo):
442         * test262/test/language/expressions/object/method-definition/early-errors-object-method-await-in-formals.js: Added.
443         (async.foo):
444         * test262/test/language/expressions/object/method-definition/early-errors-object-method-body-contains-super-call.js: Added.
445         (async.foo):
446         * test262/test/language/expressions/object/method-definition/early-errors-object-method-duplicate-parameters.js: Added.
447         (async.foo):
448         * test262/test/language/expressions/object/method-definition/early-errors-object-method-eval-in-formal-parameters.js: Added.
449         (async.foo):
450         * test262/test/language/expressions/object/method-definition/early-errors-object-method-formals-body-duplicate.js: Added.
451         (async.foo):
452         * test262/test/language/expressions/object/method-definition/early-errors-object-method-formals-contains-super-call.js: Added.
453         (async.foo.foo.super):
454         * test262/test/language/expressions/object/method-definition/object-method-returns-promise.js: Added.
455         (obj.async.method):
456         * test262/test/language/expressions/object/method-definition/params-trailing-comma-arguments.js: Added.
457         (obj.f1):
458         (obj.f2):
459         * test262/test/language/expressions/object/method-definition/params-trailing-comma-length.js: Added.
460         (obj.one):
461         (obj.two):
462         * test262/test/language/expressions/object/method-definition/params-trailing-comma-rest.js: Added.
463         (m):
464         * test262/test/language/expressions/object/method-definition/params-trailing-comma.js: Added.
465         (one):
466         (two):
467         * 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.
468         (f):
469         * test262/test/language/global-code/decl-func.js: Added.
470         (brandNew):
471         * test262/test/language/global-code/decl-lex-configurable-global.js: Added.
472         * test262/test/language/global-code/decl-lex-deletion.js: Added.
473         (test262class):
474         * test262/test/language/global-code/decl-lex-restricted-global.js: Added.
475         * test262/test/language/global-code/decl-lex.js: Added.
476         (test262class):
477         * test262/test/language/global-code/decl-var.js: Added.
478         * test262/test/language/global-code/return.js: Added.
479         * test262/test/language/global-code/script-decl-func-dups.js: Added.
480         * test262/test/language/global-code/script-decl-func-err-non-configurable.js: Added.
481         * test262/test/language/global-code/script-decl-func-err-non-extensible.js: Added.
482         * test262/test/language/global-code/script-decl-func.js: Added.
483         * test262/test/language/global-code/script-decl-lex-deletion.js: Added.
484         * test262/test/language/global-code/script-decl-lex-lex.js: Added.
485         (test262Class):
486         * test262/test/language/global-code/script-decl-lex-restricted-global.js: Added.
487         * test262/test/language/global-code/script-decl-lex-var.js: Added.
488         (test262Fn):
489         * test262/test/language/global-code/script-decl-lex.js: Added.
490         * test262/test/language/global-code/script-decl-var-collision.js: Added.
491         (test262Class):
492         * test262/test/language/global-code/script-decl-var-err.js: Added.
493         * test262/test/language/global-code/script-decl-var.js: Added.
494         * test262/test/language/global-code/super-call-arrow.js: Added.
495         * test262/test/language/global-code/super-call.js: Added.
496         * test262/test/language/global-code/super-prop-arrow.js: Added.
497         * test262/test/language/global-code/super-prop.js: Added.
498         * test262/test/language/global-code/yield-non-strict.js: Added.
499         (catch):
500         * test262/test/language/global-code/yield-strict.js: Added.
501         * test262/test/language/literals/regexp/lastIndex.js: Added.
502         * test262/test/language/literals/regexp/u-unicode-esc-bounds.js:
503         * test262/test/language/literals/regexp/y-assertion-start.js: Added.
504         * test262/test/language/module-code/instn-star-err-not-found-faulty_FIXTURE.js:
505         * test262/test/language/module-code/instn-star-err-not-found.js:
506         * test262/test/language/module-code/namespace/internals/get-own-property-str-found-init.js:
507         * test262/test/language/module-code/parse-err-return.js: Added.
508         * test262/test/language/module-code/parse-err-yield.js: Added.
509         * test262/test/language/rest-parameters/params-trailing-comma-rest.js: Added.
510         * test262/test/language/statements/async-function/declaration-returns-promise.js: Added.
511         (async.foo):
512         * test262/test/language/statements/async-function/early-errors-declaration-NSPL-with-USD.js: Added.
513         (async.foo):
514         * test262/test/language/statements/async-function/early-errors-declaration-arguments-in-formal-parameters.js: Added.
515         (async.foo):
516         * test262/test/language/statements/async-function/early-errors-declaration-await-in-formals-default.js: Added.
517         (async.foo):
518         * test262/test/language/statements/async-function/early-errors-declaration-await-in-formals.js: Added.
519         (async.foo):
520         * test262/test/language/statements/async-function/early-errors-declaration-binding-identifier-arguments.js: Added.
521         (async.arguments):
522         * test262/test/language/statements/async-function/early-errors-declaration-binding-identifier-eval.js: Added.
523         (async.eval):
524         * test262/test/language/statements/async-function/early-errors-declaration-body-contains-super-call.js: Added.
525         (async.foo):
526         * test262/test/language/statements/async-function/early-errors-declaration-body-contains-super-property.js: Added.
527         (async.foo):
528         * test262/test/language/statements/async-function/early-errors-declaration-duplicate-parameters.js: Added.
529         (async.foo):
530         * test262/test/language/statements/async-function/early-errors-declaration-eval-in-formal-parameters.js: Added.
531         (async.foo):
532         * test262/test/language/statements/async-function/early-errors-declaration-formals-body-duplicate.js: Added.
533         (async.foo):
534         * test262/test/language/statements/async-function/early-errors-declaration-formals-contains-super-call.js: Added.
535         (async.foo):
536         * test262/test/language/statements/async-function/early-errors-declaration-formals-contains-super-property.js: Added.
537         (async.foo):
538         * test262/test/language/statements/async-function/early-errors-no-async-generator.js: Added.
539         (async.foo):
540         * test262/test/language/statements/async-function/evaluation-body-that-returns-after-await.js: Added.
541         (async.foo):
542         (foo.then):
543         * test262/test/language/statements/async-function/evaluation-body-that-returns.js: Added.
544         (async.foo):
545         (foo.then):
546         * test262/test/language/statements/async-function/evaluation-body-that-throws-after-await.js: Added.
547         (async.foo):
548         (foo.then):
549         * test262/test/language/statements/async-function/evaluation-body-that-throws.js: Added.
550         (async.foo):
551         (foo.then):
552         * test262/test/language/statements/async-function/evaluation-body.js: Added.
553         (async.foo):
554         * test262/test/language/statements/async-function/evaluation-default-that-throws.js: Added.
555         (async.foo):
556         (foo.then):
557         * test262/test/language/statements/async-function/evaluation-mapped-arguments.js: Added.
558         (async.foo):
559         * test262/test/language/statements/async-function/evaluation-this-value-global.js: Added.
560         (async.foo):
561         * test262/test/language/statements/async-function/evaluation-this-value-passed.js: Added.
562         (async.foo):
563         * test262/test/language/statements/async-function/evaluation-unmapped-arguments.js: Added.
564         (async.foo):
565         * test262/test/language/statements/async-function/syntax-declaration-line-terminators-allowed.js: Added.
566         (async.foo):
567         * test262/test/language/statements/async-function/syntax-declaration-no-line-terminator.js: Added.
568         (async.foo):
569         * test262/test/language/statements/async-function/syntax-declaration.js: Added.
570         (async.foo):
571         (foo.then):
572         * test262/test/language/statements/class/definition/class-method-returns-promise.js: Added.
573         (Foo.prototype.async.method):
574         (Foo):
575         * test262/test/language/statements/class/definition/early-errors-class-method-NSPL-with-USD.js: Added.
576         (Foo.prototype.async.bar):
577         (Foo):
578         * test262/test/language/statements/class/definition/early-errors-class-method-arguments-in-formal-parameters.js: Added.
579         (Foo.prototype.async.foo):
580         (Foo):
581         * test262/test/language/statements/class/definition/early-errors-class-method-await-in-formals-default.js: Added.
582         (Foo.prototype.async.foo):
583         (Foo):
584         * test262/test/language/statements/class/definition/early-errors-class-method-await-in-formals.js: Added.
585         (Foo.prototype.async.foo):
586         (Foo):
587         * test262/test/language/statements/class/definition/early-errors-class-method-body-contains-super-call.js: Added.
588         (Foo.prototype.async.foo):
589         (Foo):
590         * test262/test/language/statements/class/definition/early-errors-class-method-duplicate-parameters.js: Added.
591         (Foo.prototype.async.foo):
592         (Foo):
593         * test262/test/language/statements/class/definition/early-errors-class-method-eval-in-formal-parameters.js: Added.
594         (Foo.prototype.async.foo):
595         (Foo):
596         * test262/test/language/statements/class/definition/early-errors-class-method-formals-body-duplicate.js: Added.
597         (Foo.async.foo):
598         (Foo):
599         * test262/test/language/statements/class/definition/early-errors-class-method-formals-contains-super-call.js: Added.
600         (Foo.prototype.async.foo):
601         (Foo):
602         * test262/test/language/statements/class/definition/methods-async-super-call-body.js: Added.
603         (A.prototype.async.method):
604         (A):
605         (B.prototype.async.method):
606         (B):
607         * test262/test/language/statements/class/definition/methods-async-super-call-param.js: Added.
608         (A.prototype.async.method):
609         (A):
610         (B.prototype.async.method):
611         (B):
612         * test262/test/language/statements/class/definition/params-trailing-comma-arguments.js: Added.
613         (C.prototype.f1):
614         (C.prototype.f2):
615         (C):
616         * test262/test/language/statements/class/definition/params-trailing-comma-length.js: Added.
617         (C.prototype.one):
618         (C.prototype.two):
619         (C):
620         * test262/test/language/statements/class/definition/params-trailing-comma-rest.js: Added.
621         (C.prototype.m):
622         (C):
623         * test262/test/language/statements/class/definition/params-trailing-comma.js: Added.
624         (C.prototype.one):
625         (C.prototype.two):
626         (C):
627         * test262/test/language/statements/function/arguments-with-arguments-fn.js: Added.
628         (f):
629         * test262/test/language/statements/function/arguments-with-arguments-lex.js: Added.
630         (f):
631         * test262/test/language/statements/function/params-trailing-comma-arguments.js: Added.
632         (f1):
633         (f2):
634         * test262/test/language/statements/function/params-trailing-comma-length.js: Added.
635         (one):
636         (two):
637         * test262/test/language/statements/function/params-trailing-comma.js: Added.
638         (one):
639         (two):
640         * test262/test/language/statements/generators/arguments-with-arguments-fn.js: Added.
641         (g):
642         * test262/test/language/statements/generators/arguments-with-arguments-lex.js: Added.
643         (g):
644         * test262/test/language/statements/generators/params-trailing-comma-length.js: Added.
645         (one):
646         (two):
647         * test262/test/language/statements/generators/params-trailing-comma.js: Added.
648         (one):
649         (two):
650         * test262/test262-Revision.txt:
651
652 2016-08-23  Benjamin Poulain  <bpoulain@apple.com>
653
654         [JSC] Make Math.cos() and Math.sin() work with any argument type
655         https://bugs.webkit.org/show_bug.cgi?id=161069
656
657         Reviewed by Geoffrey Garen.
658
659         * stress/arith-cos-on-various-types.js: Added.
660         * stress/arith-sin-on-various-types.js: Added.
661
662 2016-08-23  Yusuke Suzuki  <utatane.tea@gmail.com>
663
664         [ES6] Module namespace object's Symbol.iterator method should only accept module namespace objects
665         https://bugs.webkit.org/show_bug.cgi?id=161097
666
667         Reviewed by Keith Miller.
668
669         * test262.yaml:
670
671 2016-08-22  Yusuke Suzuki  <utatane.tea@gmail.com>
672
673         [ES6] Modules' `export default function/class` should be declaration
674         https://bugs.webkit.org/show_bug.cgi?id=160499
675
676         Reviewed by Saam Barati.
677
678         Add several module tests. And flip the failed tests flags in test262.
679
680         * modules/export-default-function-name-in-assignment-expression.js: Added.
681         (export.default):
682         * modules/export-default-function-name-in-class-declaration.js: Added.
683         * modules/export-default-function-name-in-function-declaration.js: Added.
684         (export.default):
685         * modules/export-default-function-name-in-generator-declaration.js: Added.
686         (export.default):
687         * stress/method-name.js: Added.
688         (testSyntax):
689         (testSyntaxError):
690         (testSyntaxError.Hello.prototype.hello.hello):
691         (testSyntaxError.Hello):
692         (SyntaxError.Unexpected.identifier.string_appeared_here.Expected.an.opening.string_appeared_here.before.a.method.testSyntaxError.let.obj.hello.hello):
693         (testSyntaxError.Hello.prototype.get hello):
694         (testSyntaxError.Hello.prototype.set hello):
695         * test262.yaml:
696
697 2016-08-22  Yusuke Suzuki  <utatane.tea@gmail.com>
698
699         [ES6] Module should not allow HTML comments
700         https://bugs.webkit.org/show_bug.cgi?id=161041
701
702         Reviewed by Saam Barati.
703
704         * modules/html-comments.js: Added.
705         (shouldThrow):
706         * test262.yaml:
707
708 2016-08-21  Yusuke Suzuki  <utatane.tea@gmail.com>
709
710         [DFG] Should not fixup AnyIntUse in 32_64
711         https://bugs.webkit.org/show_bug.cgi?id=161029
712
713         Reviewed by Saam Barati.
714
715         * typeProfiler/int52-dfg.js: Added.
716         (test):
717
718 2016-08-21  Yusuke Suzuki  <utatane.tea@gmail.com>
719
720         Unreviewed, rolling out r204697
721         https://bugs.webkit.org/show_bug.cgi?id=161029
722
723         * typeProfiler/int52-dfg.js: Removed.
724         (test): Deleted.
725         * typeProfiler/number-filter-dfg.js: Removed.
726         (test): Deleted.
727
728 2016-08-21  Yusuke Suzuki  <utatane.tea@gmail.com>
729
730         [DFG] Should not fixup AnyIntUse in 32_64
731         https://bugs.webkit.org/show_bug.cgi?id=161029
732
733         Reviewed by Saam Barati.
734
735         * typeProfiler/int52-dfg.js: Added.
736         (test):
737         * typeProfiler/number-filter-dfg.js: Added.
738         (test):
739
740 2016-08-19  Benjamin Poulain  <bpoulain@apple.com>
741
742         [JSC] ArithSqrt should work with any argument type
743         https://bugs.webkit.org/show_bug.cgi?id=160954
744
745         Reviewed by Saam Barati.
746
747         * stress/arith-sqrt-on-various-types.js: Added.
748         (let.validInputTypedTestCases.validInputTestCases.map):
749         (isIdentical):
750         (opaqueAllTypesSqrt):
751         (testAllTypesCall):
752         (testSingleTypeCall):
753         (opaqueSqrtForSideEffects):
754         (testSideEffect.let.testObject.valueOf):
755         (testSideEffect):
756         (opaqueSqrtForCSE):
757         (testCSE.let.testObject.valueOf):
758         (testCSE):
759         (testException.opaqueSqrtWithException):
760         (testException):
761
762 2016-08-19  Joseph Pecoraro  <pecoraro@apple.com>
763
764         Make custom Error properties (line, column, sourceURL) configurable and writable
765         https://bugs.webkit.org/show_bug.cgi?id=160984
766         <rdar://problem/27905979>
767
768         Reviewed by Saam Barati.
769
770         * stress/native-error-properties.js: Added.
771         (assert):
772         (shouldNotThrow):
773
774         (checkEmptyErrorPropertiesDescriptors):
775         (checkNonEmptyErrorPropertiesDescriptors):
776         The spec only describes the "message" property, so
777         ensure it has the right descriptor attributes.
778
779         (checkErrorPropertiesWritable):
780         Ensure common error property names are writable.
781         In strict mode this would have thrown an exception
782         if they were readonly.
783
784 2016-08-18  Mark Lam  <mark.lam@apple.com>
785
786         ScopedArguments is using the wrong owner object for a write barrier.
787         https://bugs.webkit.org/show_bug.cgi?id=160976
788         <rdar://problem/27328506>
789
790         Reviewed by Keith Miller.
791
792         * stress/scoped-arguments-write-barrier-should-be-on-scope-object.js: Added.
793
794 2016-08-17  JF Bastien  <jfbastien@apple.com>
795
796         We allow assignments to const variables when in a for-in/for-of loop
797         https://bugs.webkit.org/show_bug.cgi?id=156673
798
799         Reviewed by Filip Pizlo.
800
801         * stress/for-in-of-const.js: Added.
802         (expect_nothrow):
803         (expect_throw):
804         (capture):
805
806 2016-08-17  Mark Lam  <mark.lam@apple.com>
807
808         Remove an invalid assertion in the DFG backend's GetById emitter.
809         https://bugs.webkit.org/show_bug.cgi?id=160925
810         <rdar://problem/27248961>
811
812         Reviewed by Filip Pizlo.
813
814         * stress/dfg-get-by-id-should-not-assert-non-null-prediction.js: Added.
815
816 2016-08-16  Ryan Haddad  <ryanhaddad@apple.com>
817
818         Unreviewed, rolling out r204464.
819
820         This is no longer needed after r204495.
821
822         Reverted changeset:
823
824         "Skip failing test mozilla/ecma/LexicalConventions/7.7.3.js"
825         https://bugs.webkit.org/show_bug.cgi?id=160662
826         http://trac.webkit.org/changeset/204464
827
828 2016-08-15  Ryan Haddad  <ryanhaddad@apple.com>
829
830         Skip failing test mozilla/ecma/LexicalConventions/7.7.3.js
831         https://bugs.webkit.org/show_bug.cgi?id=160662
832
833         Unreviewed test gardening.
834
835         * mozilla/ecma/LexicalConventions/7.7.3.js:
836
837 2016-08-14  Skachkov Oleksandr  <gskachkov@gmail.com>
838
839         [2016] Set correct status for test262 after implementation of Object.values&Object.entries
840         https://bugs.webkit.org/show_bug.cgi?id=160844
841
842         Reviewed by Saam Barati.
843
844         Patch contains fix statuses of specs in the test262 test collection after implementation of 
845         Object.values and Object.entries functions. Also patch contains small fixes in tests of the 
846         tests for Object.values/entries functions.
847
848         * stress/object-entries.js:
849         (Object.getOwnPropertyDescriptor):
850         * stress/object-values.js:
851         (Object.getOwnPropertyDescriptor):
852         * test262.yaml:
853
854 2016-08-12  Saam Barati  <sbarati@apple.com>
855
856         Inline store loop for CopyRest in DFG and FTL for certain array modes
857         https://bugs.webkit.org/show_bug.cgi?id=159612
858
859         Reviewed by Filip Pizlo.
860
861         * stress/rest-parameter-having-a-bad-time.js: Added.
862         * stress/rest-parameter-many-arguments.js: Added.
863         * stress/rest-parameter-various-types.js: Added.
864
865 2016-08-12  Skachkov Oleksandr  <gskachkov@gmail.com>
866
867         [ES2016] Implement Object.entries
868         https://bugs.webkit.org/show_bug.cgi?id=160412
869
870         Reviewed by Saam Barati.
871
872         Patch contains tests for Object.entries function and 
873         fix of wrong tests for Object.values function.
874
875         * stress/object-entries.js: 
876         (compare):
877         (string_appeared_here.forEach):
878         (const.getInvokedFunctions.):
879         (const.getInvokedFunctions):
880         (Array.prototype.push):
881         * stress/object-values.js:
882
883 2016-08-11  Mark Lam  <mark.lam@apple.com>
884
885         OverridesHasInstance should not branch across register allocations.
886         https://bugs.webkit.org/show_bug.cgi?id=160792
887         <rdar://problem/27361778>
888
889         Reviewed by Benjamin Poulain.
890
891         * stress/OverrideHasInstance-should-not-branch-across-register-allocations.js: Added.
892
893 2016-08-11  Mark Lam  <mark.lam@apple.com>
894
895         The jsc shell's Element host constructor should throw if it fails to construct an object.
896         https://bugs.webkit.org/show_bug.cgi?id=160773
897         <rdar://problem/27328608>
898
899         Reviewed by Saam Barati.
900
901         * stress/generational-opaque-roots.js:
902
903 2016-08-11  Mark Lam  <mark.lam@apple.com>
904
905         Disallow synchronous sweeping for eden GCs.
906         https://bugs.webkit.org/show_bug.cgi?id=160716
907
908         Reviewed by Geoffrey Garen.
909
910         * stress/eden-gc-with-retired-blocks.js: Added.
911         - This test is just in case we add back support for eden GCs with synchronous
912           sweeping in the future.
913
914 2016-08-10  Michael Saboff  <msaboff@apple.com>
915
916         Baseline GetByVal and PutByVal for cache ID stubs need to handle exceptions
917         https://bugs.webkit.org/show_bug.cgi?id=160749
918
919         Reviewed by Filip Pizlo.
920
921         New test that causes baseline GetByValWithCachedId and PutByValWithCachedId
922         stubs to be generated and then throws exceptions for those stub to handle
923         to verify that they are properly handled.
924
925         * stress/regress-160749.js: Added.
926         (testCachedGetByVal.):
927         (testCachedGetByVal.get for):
928         (testCachedGetByVal):
929         (testCachedPutByVal.):
930         (testCachedPutByVal.set for):
931         (testCachedPutByVal):
932
933 2016-08-10  Mark Lam  <mark.lam@apple.com>
934
935         DFG's flushForTerminal() needs to add PhantomLocals for bytecode live locals.
936         https://bugs.webkit.org/show_bug.cgi?id=160755
937         <rdar://problem/27488507>
938
939         Reviewed by Filip Pizlo.
940
941         * stress/need-bytecode-liveness-for-unreachable-blocks-at-dfg-time.js: Added.
942
943 2016-08-09  Skachkov Oleksandr  <gskachkov@gmail.com>
944
945         [ES2016] Implement Object.values
946         https://bugs.webkit.org/show_bug.cgi?id=160410
947
948         Reviewed by Saam Barati, Yusuke Suzuki.
949
950         * stress/object-values.js: Added.
951         (compare):
952         (string_appeared_here.forEach):
953         (const.getInvokedFunctions.):
954         (const.getInvokedFunctions):
955         (Array.prototype.push):
956
957 2016-08-09  Saam Barati  <sbarati@apple.com>
958
959         JSBoundFunction should lazily generate its name string
960         https://bugs.webkit.org/show_bug.cgi?id=160678
961         <rdar://problem/27043194>
962
963         Reviewed by Mark Lam.
964
965         * stress/bound-function-lazy-name-generation.js: Added.
966         (assert):
967         (test.let.f):
968         (test.f):
969         (test):
970
971 2016-08-08  Mark Lam  <mark.lam@apple.com>
972
973         ASSERTION FAILED: hasInlineStorage() in JSFinalObject::visitChildren().
974         https://bugs.webkit.org/show_bug.cgi?id=160666
975
976         Reviewed by Keith Miller.
977
978         * stress/object-constructor-should-be-new-target-aware.js:
979
980 2016-08-07  Yusuke Suzuki  <utatane.tea@gmail.com>
981
982         [ES6] Module namespace object should not allow unset IC
983         https://bugs.webkit.org/show_bug.cgi?id=160553
984
985         Reviewed by Saam Barati.
986
987         * modules/namespace-object-get-property.js: Added.
988         (import.as.ns.from.string_appeared_here.shouldThrow):
989         * modules/namespace-object-has-property.js: Added.
990         * modules/namespace-object-inline-caching.js: Added.
991         (import.as.A.from.string_appeared_here.import.as.B.from.string_appeared_here.lookup):
992         (shouldBe.lookup.lookup):
993         (shouldBe.lookup):
994         * modules/namespace-object-inline-caching/a.js: Added.
995         * modules/namespace-object-inline-caching/b.js: Added.
996         * modules/namespace-object-try-get.js: Added.
997         (import.as.ns.from.string_appeared_here.tryGetByIdText):
998         (tryGetByIdTextStrict):
999         * modules/namespace-object-typed-array-fast-path.js: Added.
1000         * test262.yaml:
1001
1002 2016-08-05  Saam Barati  <sbarati@apple.com>
1003
1004         various math operations don't properly check for an exception after calling toNumber() on the lhs
1005         https://bugs.webkit.org/show_bug.cgi?id=160154
1006
1007         Reviewed by Mark Lam.
1008
1009         * stress/to-number-throws-correct-exception.js: Added.
1010         (test.let.test.runTest.):
1011         (test.let.test.runTest.get f):
1012         (test.let.test.runTest):
1013         (test.let.test):
1014         (test):
1015         (test2.runTest.):
1016         (test2.runTest.get f):
1017         (test2.runTest):
1018         (test2):
1019
1020 2016-08-05  Saam Barati  <sbarati@apple.com>
1021
1022         Assertion failure when accessing TDZ variable in catch through eval
1023         https://bugs.webkit.org/show_bug.cgi?id=160554
1024
1025         Reviewed by Mark Lam and Keith Miller.
1026
1027         * stress/catch-variables-under-tdz.js: Added.
1028         (test):
1029
1030 2016-08-04  Yusuke Suzuki  <utatane.tea@gmail.com>
1031
1032         [ES6] JSModuleNamespaceObject's Symbol.iterator function should have name
1033         https://bugs.webkit.org/show_bug.cgi?id=160549
1034
1035         Reviewed by Saam Barati.
1036
1037         * modules/namespace-object-symbol-iterator-name.js: Added.
1038         * test262.yaml:
1039
1040 2016-08-04  Keith Miller  <keith_miller@apple.com>
1041
1042         ASSERTION FAILED: !hasInstanceValueNode->isCellConstant() || defaultHasInstanceFunction == hasInstanceValueNode->asCell()
1043         https://bugs.webkit.org/show_bug.cgi?id=160562
1044
1045         Reviewed by Mark Lam.
1046
1047         * stress/instanceof-late-constant-folding.js: Added.
1048         (Constructor):
1049         (value):
1050         (body):
1051
1052 2016-08-04  Caitlin Potter  <caitp@igalia.com>
1053
1054         [JSC] fix generator-syntax.js JSTest again after yield grammar fix
1055         https://bugs.webkit.org/show_bug.cgi?id=160550
1056
1057         Reviewed by Yusuke Suzuki.
1058
1059         * stress/generator-syntax.js:
1060         (testYieldBindingIdentifier):
1061
1062 2016-08-03  Caitlin Potter  <caitp@igalia.com>
1063
1064         Clarify SyntaxErrors around yield and unskip tests
1065         https://bugs.webkit.org/show_bug.cgi?id=158460
1066
1067         Reviewed by Saam Barati.
1068
1069         Fix and unskip tests which erroneously asserted that `yield` is not a
1070         valid BindingIdentifier, and improve error message for YieldExpressions
1071         occuring in Arrow formal parameters.
1072
1073         * stress/generator-syntax.js:
1074         * stress/yield-out-of-generator.js:
1075
1076 2016-08-03  Filip Pizlo  <fpizlo@apple.com>
1077
1078         REGRESSION(r203368): broke some test262 tests
1079         https://bugs.webkit.org/show_bug.cgi?id=160479
1080
1081         Reviewed by Mark Lam.
1082         
1083         Added a stress test for this case, since we don't always run test262.
1084
1085         * stress/freeze-setter.js: Added.
1086         (let.o.set foo):
1087
1088 2016-08-03  Saam Barati  <sbarati@apple.com>
1089
1090         Implement nested rest destructuring w.r.t the ES7 spec
1091         https://bugs.webkit.org/show_bug.cgi?id=160423
1092
1093         Reviewed by Filip Pizlo.
1094
1095         * stress/destructuring-rest-element.js: Added.
1096         (assert):
1097         (test):
1098         (arr):
1099         (eq):
1100         (gen):
1101         (fakeGen.return.Symbol.iterator):
1102         (fakeGen):
1103         * stress/rest-elements.js:
1104         (testSyntaxError.String.raw):
1105         * stress/rest-parameter-is-destructuring.js: Added.
1106         (assert):
1107         (test):
1108         (foo):
1109         (bar):
1110         * test262.yaml:
1111
1112 2016-08-02  Saam Barati  <sbarati@apple.com>
1113
1114         Rename Changelog to ChangeLog
1115
1116         Rubber stamped by Keith Miller.
1117
1118         * Changelog: Removed.
1119
1120 2016-08-02  Saam Barati  <sbarati@apple.com>
1121
1122         update a class extending null w.r.t the ES7 spec
1123         https://bugs.webkit.org/show_bug.cgi?id=160417
1124
1125         Reviewed by Keith Miller.
1126
1127         * Changelog:
1128         * stress/class-derived-from-null.js: Added.
1129         (assert):
1130         (test):
1131         (test1.C):
1132         (test1):
1133         (jsNull):
1134         (test2.C):
1135         (test2):
1136         (test3.C):
1137         (test3.D):
1138         (test3.E):
1139         (test3):
1140         (test4.E):
1141         (test4):
1142         (test5.E):
1143         (test5):
1144         (test6.Base):
1145         (test6.D):
1146         (test6.E):
1147         (test6.F):
1148         (test6.G):
1149         (test6):
1150         * test262.yaml:
1151
1152 2016-08-01  Filip Pizlo  <fpizlo@apple.com>
1153
1154         Rationalize varargs stack overflow checks
1155         https://bugs.webkit.org/show_bug.cgi?id=160425
1156
1157         Reviewed by Michael Saboff.
1158
1159         * stress/arity-check-ftl-throw-more-args.js: Added.
1160         (catch):
1161
1162 2016-08-01  Keith Miller  <keith_miller@apple.com>
1163
1164         We should not keep the JavaScript tests inside the Source/JavaScriptCore/ directory.
1165         https://bugs.webkit.org/show_bug.cgi?id=160372
1166
1167         Rubber stamped by Geoffrey Garen.
1168
1169         This patch moves all the JavaScript tests from Source/JavaScriptCore/tests to
1170         a new top level directory, JSTests. Having the tests in the Source directory
1171         was both confusing an inconvenient for people that just want to checkout the
1172         source code of WebKit. Since there is no other obvious place to put all the
1173         JavaScript tests a new top level directory seemed the most sensible.
1174
1175         * tests/: Deleted.