1 2016-08-24 Filip Pizlo <fpizlo@apple.com>
3 Unreviewed, roll out r204901, r204897, r204866, r204856, r204854.
5 * stress/array-storage-array-unshift.js: Removed.
6 * stress/contiguous-array-unshift.js: Removed.
7 * stress/double-array-unshift.js: Removed.
8 * stress/int32-array-unshift.js: Removed.
10 2016-08-24 Skachkov Oleksandr <gskachkov@gmail.com>
12 [ES2016] Allow assignment in for-in head in not-strict mode
13 https://bugs.webkit.org/show_bug.cgi?id=160955
15 Reviewed by Saam Barati.
17 * stress/for-in-tests.js:
22 2016-08-23 Benjamin Poulain <benjamin@webkit.org>
24 [JSC] Make ArithLog works with any type
25 https://bugs.webkit.org/show_bug.cgi?id=161110
27 Reviewed by Geoffrey Garen.
29 * stress/arith-log-on-various-types.js: Added.
31 2016-08-23 Saam Barati <sbarati@apple.com>
33 JSC should have a "microbenchmarks" directory instead of "regress" directory
34 https://bugs.webkit.org/show_bug.cgi?id=161096
36 Rubber stamped by Mark Lam.
38 * microbenchmarks: Copied from LayoutTests/js/regress/script-tests.
40 2016-08-23 Keith Miller <keith_miller@apple.com>
42 %TypedArray%.prototype.slice needs to check that the source and destination have not been detached.
43 https://bugs.webkit.org/show_bug.cgi?id=161031
44 <rdar://problem/27937019>
46 Reviewed by Geoffrey Garen.
48 * stress/typedarray-slice.js:
51 (testSpeciesWithTransferring):
53 2016-08-22 Filip Pizlo <fpizlo@apple.com>
55 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
56 https://bugs.webkit.org/show_bug.cgi?id=160125
58 Reviewed by Geoffrey Garen.
60 Most of the things I did properly covered by existing tests, but I found some simple cases of
61 unshifting that had sketchy coverage.
63 * stress/array-storage-array-unshift.js: Added.
64 * stress/contiguous-array-unshift.js: Added.
65 * stress/double-array-unshift.js: Added.
66 * stress/int32-array-unshift.js: Added.
68 2016-08-23 Keith Miller <keith_miller@apple.com>
70 Update/add new test262 tests
71 https://bugs.webkit.org/show_bug.cgi?id=161098
73 Reviewed by Saam Barati.
76 * test262/test/annexB/language/statements/for-in/bare-initializer.js: Added.
77 * test262/test/annexB/language/statements/for-in/const-initializer.js: Added.
78 * test262/test/annexB/language/statements/for-in/let-initializer.js: Added.
79 * test262/test/annexB/language/statements/for-in/nonstrict-initializer.js: Added.
81 * test262/test/annenxB/language/statements/for-in/strict-initializer.js: Added.
82 * test262/test/annexB/language/statements/for-in/var-arraybindingpattern-initializer.js: Added.
83 * test262/test/annexB/language/statements/for-in/var-objectbindingpattern-initializer.js: Added.
84 * test262/test/built-ins/AsyncFunction/AsyncFunction-construct.js: Added.
85 (AsyncFunction.async.foo):
86 * test262/test/built-ins/AsyncFunction/AsyncFunction-is-extensible.js: Added.
87 (AsyncFunction.async):
88 * test262/test/built-ins/AsyncFunction/AsyncFunction-is-subclass.js: Added.
90 * test262/test/built-ins/AsyncFunction/AsyncFunction-length.js: Added.
91 (AsyncFunction.async.foo):
92 * test262/test/built-ins/AsyncFunction/AsyncFunction-name.js: Added.
93 (AsyncFunction.async.foo):
94 * test262/test/built-ins/AsyncFunction/AsyncFunction-prototype.js: Added.
95 (AsyncFunction.async.foo):
96 * test262/test/built-ins/AsyncFunction/AsyncFunction.js: Added.
97 (AsyncFunction.async.foo):
98 * test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-is-extensible.js: Added.
99 (AsyncFunction.async.foo):
100 * test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-prototype.js: Added.
101 (AsyncFunction.async.foo):
102 * test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-to-string.js: Added.
103 (AsyncFunction.async.foo):
104 * test262/test/built-ins/AsyncFunction/instance-construct.js: Added.
106 * test262/test/built-ins/AsyncFunction/instance-has-name.js: Added.
108 * test262/test/built-ins/AsyncFunction/instance-length.js: Added.
112 * test262/test/built-ins/AsyncFunction/instance-prototype-property.js: Added.
114 * test262/test/built-ins/AsyncFunction/is-not-a-global.js: Added.
115 * 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.
116 * test262/test/built-ins/DataView/prototype/getFloat32/detached-buffer-before-outofrange-byteoffset.js:
117 * 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.
118 * test262/test/built-ins/DataView/prototype/getFloat64/detached-buffer-before-outofrange-byteoffset.js:
119 * 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.
120 * test262/test/built-ins/DataView/prototype/getInt16/detached-buffer-before-outofrange-byteoffset.js:
121 * 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.
122 * test262/test/built-ins/DataView/prototype/getInt32/detached-buffer-before-outofrange-byteoffset.js:
123 * 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.
124 * test262/test/built-ins/DataView/prototype/getInt8/detached-buffer-before-outofrange-byteoffset.js:
125 * 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.
126 * test262/test/built-ins/DataView/prototype/getUint16/detached-buffer-before-outofrange-byteoffset.js:
127 * 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.
128 * test262/test/built-ins/DataView/prototype/getUint32/detached-buffer-before-outofrange-byteoffset.js:
129 * 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.
130 * test262/test/built-ins/DataView/prototype/getUint8/detached-buffer-before-outofrange-byteoffset.js:
131 * 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.
132 * test262/test/built-ins/DataView/prototype/setFloat32/detached-buffer-before-outofrange-byteoffset.js:
133 * test262/test/built-ins/DataView/prototype/setFloat32/index-check-before-value-conversion.js:
134 * test262/test/built-ins/DataView/prototype/setFloat32/range-check-after-value-conversion.js:
135 * 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.
136 * test262/test/built-ins/DataView/prototype/setFloat64/detached-buffer-before-outofrange-byteoffset.js:
137 * test262/test/built-ins/DataView/prototype/setFloat64/index-check-before-value-conversion.js:
138 * test262/test/built-ins/DataView/prototype/setFloat64/range-check-after-value-conversion.js:
139 * 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.
140 * test262/test/built-ins/DataView/prototype/setInt16/detached-buffer-before-outofrange-byteoffset.js:
141 * test262/test/built-ins/DataView/prototype/setInt16/index-check-before-value-conversion.js:
142 * test262/test/built-ins/DataView/prototype/setInt16/range-check-after-value-conversion.js:
143 * 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.
144 * test262/test/built-ins/DataView/prototype/setInt32/detached-buffer-before-outofrange-byteoffset.js:
145 * test262/test/built-ins/DataView/prototype/setInt32/index-check-before-value-conversion.js:
146 * test262/test/built-ins/DataView/prototype/setInt32/range-check-after-value-conversion.js:
147 * 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.
148 * test262/test/built-ins/DataView/prototype/setInt8/detached-buffer-before-outofrange-byteoffset.js:
149 * test262/test/built-ins/DataView/prototype/setInt8/index-check-before-value-conversion.js:
150 * test262/test/built-ins/DataView/prototype/setInt8/range-check-after-value-conversion.js:
151 * 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.
152 * test262/test/built-ins/DataView/prototype/setUint16/detached-buffer-before-outofrange-byteoffset.js:
153 * test262/test/built-ins/DataView/prototype/setUint16/index-check-before-value-conversion.js:
154 * test262/test/built-ins/DataView/prototype/setUint16/range-check-after-value-conversion.js:
155 * 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.
156 * test262/test/built-ins/DataView/prototype/setUint32/detached-buffer-before-outofrange-byteoffset.js:
157 * test262/test/built-ins/DataView/prototype/setUint32/index-check-before-value-conversion.js:
158 * test262/test/built-ins/DataView/prototype/setUint32/range-check-after-value-conversion.js:
159 * 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.
160 * test262/test/built-ins/DataView/prototype/setUint8/detached-buffer-before-outofrange-byteoffset.js:
161 * test262/test/built-ins/DataView/prototype/setUint8/index-check-before-value-conversion.js:
162 * test262/test/built-ins/DataView/prototype/setUint8/range-check-after-value-conversion.js:
163 * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget-bound.js: Added.
165 * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget.js: Added.
167 * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-self-new.js: Added.
169 * test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-self-reflect.js: Added.
171 * test262/test/built-ins/Function/prototype/toString/AsyncFunction.js: Added.
173 * test262/test/built-ins/Function/prototype/toString/async-function-declaration.js: Added.
175 * test262/test/built-ins/Function/prototype/toString/async-function-expression.js: Added.
177 * test262/test/built-ins/Function/prototype/toString/async-method.js: Added.
179 (let.g.async.string_appeared_here):
180 * test262/test/built-ins/JSON/parse/reviver-array-define-prop-err.js: Added.
182 * test262/test/built-ins/JSON/parse/reviver-array-delete-err.js: Added.
184 * test262/test/built-ins/JSON/parse/reviver-array-length-coerce-err.js: Added.
185 (uncoercible.valueOf):
187 * test262/test/built-ins/JSON/parse/reviver-array-length-get-err.js: Added.
189 * test262/test/built-ins/JSON/parse/reviver-call-err.js: Added.
190 * test262/test/built-ins/JSON/parse/reviver-get-name-err.js: Added.
192 * test262/test/built-ins/JSON/parse/reviver-object-define-prop-err.js: Added.
194 * test262/test/built-ins/JSON/parse/reviver-object-delete-err.js: Added.
196 * test262/test/built-ins/JSON/parse/reviver-object-own-keys-err.js: Added.
198 * test262/test/built-ins/Number/prototype/toExponential/infinity.js: Added.
199 * test262/test/built-ins/Number/prototype/toExponential/nan.js: Added.
200 * test262/test/built-ins/Number/prototype/toExponential/prop-desc.js: Added.
201 * test262/test/built-ins/Number/prototype/toExponential/return-abrupt-tointeger-fractiondigits-symbol.js: Added.
202 * test262/test/built-ins/Number/prototype/toExponential/return-abrupt-tointeger-fractiondigits.js: Added.
205 * test262/test/built-ins/Number/prototype/toExponential/return-values.js: Added.
206 * test262/test/built-ins/Number/prototype/toExponential/this-is-0-fractiondigits-is-0.js: Added.
207 * test262/test/built-ins/Number/prototype/toExponential/this-is-0-fractiondigits-is-not-0.js: Added.
208 * test262/test/built-ins/Number/prototype/toExponential/this-type-not-number-or-number-object.js: Added.
209 * test262/test/built-ins/Number/prototype/toExponential/tointeger-fractiondigits.js: Added.
210 * test262/test/built-ins/Number/prototype/toExponential/undefined-fractiondigits.js: Added.
211 * test262/test/built-ins/Object/getOwnPropertyDescriptors/duplicate-keys.js:
212 * test262/test/built-ins/Object/getOwnPropertyDescriptors/proxy-undefined-descriptor.js: Added.
213 (badProxyHandlers.allowProxyTraps.getOwnPropertyDescriptor):
214 (badProxyHandlers.allowProxyTraps.ownKeys):
215 * test262/test/built-ins/Proxy/setPrototypeOf/boolean-trap-result-extensible-target.js: Removed.
216 (setPrototypeOf): Deleted.
217 * test262/test/built-ins/Proxy/setPrototypeOf/internals-call-order.js: Added.
218 (target.new.Proxy.Object.create.isExtensible):
219 (target.new.Proxy.Object.create.getPrototypeOf):
220 (target.new.Proxy.Object.create):
222 * test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-target-not-same-target-prototype.js:
224 * test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-target-same-target-prototype.js:
226 * test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-trap-is-false-return-false.js: Removed.
227 (setPrototypeOf): Deleted.
228 * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-get-trap.js: Added.
229 * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-isextensible-target.js: Added.
232 * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-target-getprototypeof.js: Added.
235 * test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-trap.js: Renamed from JSTests/test262/test/built-ins/Proxy/setPrototypeOf/return-is-abrupt.js.
237 * test262/test/built-ins/Proxy/setPrototypeOf/return-is-abrupt.js:
238 (setPrototypeOf): Deleted.
239 * test262/test/built-ins/Proxy/setPrototypeOf/toboolean-trap-result-false.js: Added.
242 * test262/test/built-ins/Proxy/setPrototypeOf/toboolean-trap-result-true-target-is-extensible.js: Added.
246 * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-not-callable.js:
247 * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-undefined-or-null.js: Added.
249 * test262/test/built-ins/Proxy/setPrototypeOf/trap-is-undefined.js: Removed.
250 * test262/test/built-ins/RegExp/lastIndex.js: Added.
251 * test262/test/built-ins/RegExp/prototype/global/15.10.7.2-1.js: Removed.
252 * test262/test/built-ins/RegExp/prototype/global/this-val-invalid-obj.js: Added.
254 * test262/test/built-ins/RegExp/prototype/global/this-val-non-obj.js: Added.
256 * test262/test/built-ins/RegExp/prototype/global/this-val-regexp-prototype.js: Added.
257 * test262/test/built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1.js: Removed.
258 * test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-invalid-obj.js: Added.
260 * test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-non-obj.js: Added.
262 * test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-regexp-prototype.js: Added.
263 * test262/test/built-ins/RegExp/prototype/lastIndex/15.10.7.5-1.js: Removed.
264 * test262/test/built-ins/RegExp/prototype/lastIndex/15.10.7.5-2.js: Removed.
265 * test262/test/built-ins/RegExp/prototype/lastIndex/S15.10.7.5_A8.js: Removed.
266 (__re.hasOwnProperty): Deleted.
267 (__re.propertyIsEnumerable): Deleted.
269 * test262/test/built-ins/RegExp/prototype/lastIndex/S15.10.7.5_A9.js: Removed.
270 (__re.hasOwnProperty): Deleted.
272 * test262/test/built-ins/RegExp/prototype/multiline/15.10.7.4-1.js: Removed.
273 * test262/test/built-ins/RegExp/prototype/multiline/this-val-invalid-obj.js: Added.
275 * test262/test/built-ins/RegExp/prototype/multiline/this-val-non-obj.js: Added.
277 * test262/test/built-ins/RegExp/prototype/multiline/this-val-regexp-prototype.js: Added.
278 * test262/test/built-ins/RegExp/prototype/no-regexp-matcher.js: Added.
279 * test262/test/built-ins/RegExp/prototype/source/15.10.7.1-1.js: Removed.
280 * test262/test/built-ins/RegExp/prototype/source/this-val-invalid-obj.js: Added.
282 * test262/test/built-ins/RegExp/prototype/source/this-val-non-obj.js: Added.
284 * test262/test/built-ins/RegExp/prototype/source/this-val-regexp-prototype.js: Added.
285 * test262/test/built-ins/RegExp/prototype/source/value-empty.js: Added.
286 * test262/test/built-ins/RegExp/prototype/source/value-line-terminator.js: Added.
287 * test262/test/built-ins/RegExp/prototype/source/value-u.js: Added.
288 * test262/test/built-ins/RegExp/prototype/source/value.js: Added.
289 * 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.
290 * 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.
291 * test262/test/built-ins/RegExp/prototype/sticky/this-val-regexp-prototype.js: Added.
292 * test262/test/built-ins/RegExp/prototype/sticky/this-val-regexp.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/sticky/this-regexp.js.
293 * 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.
294 * 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.
295 * test262/test/built-ins/RegExp/prototype/unicode/this-val-regexp-prototype.js: Added.
296 * test262/test/built-ins/RegExp/prototype/unicode/this-val-regexp.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/unicode/this-regexp.js.
297 * test262/test/built-ins/String/numeric-properties.js: Added.
298 * test262/test/intl402/DateTimeFormat/prototype/formatToParts/date-is-infinity-throws.js: Added.
299 * test262/test/intl402/DateTimeFormat/prototype/formatToParts/date-is-nan-throws.js: Added.
300 * test262/test/intl402/DateTimeFormat/prototype/formatToParts/formatToParts.js: Added.
301 * test262/test/intl402/DateTimeFormat/prototype/formatToParts/length.js: Added.
302 * test262/test/intl402/DateTimeFormat/prototype/formatToParts/main.js: Added.
304 (compareFTPtoFormat):
305 * test262/test/intl402/DateTimeFormat/prototype/formatToParts/name.js: Added.
306 * test262/test/intl402/DateTimeFormat/prototype/formatToParts/return-abrupt-tonumber-date.js: Added.
309 * test262/test/intl402/DateTimeFormat/prototype/formatToParts/this-has-not-internal-throws.js: Added.
310 * test262/test/intl402/DateTimeFormat/prototype/formatToParts/this-is-not-object-throws.js: Added.
311 * test262/test/intl402/NumberFormat/prototype/formatToParts/formatToParts.js: Added.
312 * test262/test/intl402/NumberFormat/prototype/formatToParts/length.js: Added.
313 * test262/test/intl402/NumberFormat/prototype/formatToParts/main.js: Added.
315 (compareFTPtoFormat):
316 * test262/test/intl402/NumberFormat/prototype/formatToParts/name.js: Added.
317 * test262/test/intl402/NumberFormat/prototype/formatToParts/return-abrupt-tonumber.js: Added.
320 * test262/test/intl402/NumberFormat/prototype/formatToParts/this-has-not-internal-throws.js: Added.
321 * test262/test/intl402/NumberFormat/prototype/formatToParts/this-is-not-object-throws.js: Added.
322 * test262/test/language/arguments-object/10.6-10-c-ii-2-s.js:
324 * test262/test/language/arguments-object/unmapped/via-params-dflt.js: Added.
326 * test262/test/language/arguments-object/unmapped/via-params-dstr.js: Added.
328 * test262/test/language/arguments-object/unmapped/via-params-rest.js: Added.
330 * 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.
332 * test262/test/language/block-scope/syntax/redeclaration-global/allowed-to-redeclare-function-declaration-with-function-declaration.js:
334 * test262/test/language/eval-code/direct/super-call-arrow.js: Added.
336 * test262/test/language/eval-code/direct/super-call-fn.js: Added.
338 * test262/test/language/eval-code/direct/super-call.js: Added.
340 * test262/test/language/eval-code/direct/super-prop-arrow.js: Added.
342 * test262/test/language/eval-code/direct/super-prop-method.js: Added.
344 * test262/test/language/eval-code/direct/super-prop.js: Added.
346 * test262/test/language/eval-code/indirect/super-call.js: Added.
349 * test262/test/language/eval-code/indirect/super-prop.js: Added.
352 * test262/test/language/expressions/arrow-function/params-trailing-comma-length.js: Added.
354 * test262/test/language/expressions/arrow-function/params-trailing-comma.js: Added.
355 * test262/test/language/expressions/async-arrow-function/arrow-returns-promise.js: Added.
357 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-NSPL-with-USD.js: Added.
359 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-arguments-in-formal-parameters.js: Added.
361 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-await-in-formals-default.js: Added.
363 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-await-in-formals.js: Added.
365 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-body-contains-super-call.js: Added.
367 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-body-contains-super-property.js: Added.
369 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-duplicate-parameters.js: Added.
371 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-eval-in-formal-parameters.js: Added.
373 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-body-duplicate.js: Added.
375 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-contains-super-call.js: Added.
377 * test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-contains-super-property.js: Added.
379 * test262/test/language/expressions/async-function/early-errors-expression-NSPL-with-USD.js: Added.
381 * test262/test/language/expressions/async-function/early-errors-expression-binding-identifier-arguments.js: Added.
383 * test262/test/language/expressions/async-function/early-errors-expression-binding-identifier-eval.js: Added.
385 * test262/test/language/expressions/async-function/early-errors-expression-body-contains-super-call.js: Added.
387 * test262/test/language/expressions/async-function/early-errors-expression-body-contains-super-property.js: Added.
389 * test262/test/language/expressions/async-function/early-errors-expression-eval-in-formal-parameters.js: Added.
391 * test262/test/language/expressions/async-function/early-errors-expression-formals-body-duplicate.js: Added.
393 * test262/test/language/expressions/async-function/early-errors-expression-formals-contains-super-call.js: Added.
395 * test262/test/language/expressions/async-function/early-errors-expression-formals-contains-super-property.js: Added.
397 * test262/test/language/expressions/async-function/early-errors-expression-not-simple-assignment-target.js: Added.
399 * test262/test/language/expressions/async-function/expression-returns-promise.js: Added.
401 * test262/test/language/expressions/async-function/syntax-expression-is-PrimaryExpression.js: Added.
403 * test262/test/language/expressions/await/await-BindingIdentifier-in-global.js: Added.
405 * test262/test/language/expressions/await/await-BindingIdentifier-nested.js: Added.
408 * test262/test/language/expressions/await/await-awaits-thenable-not-callable.js: Added.
410 * test262/test/language/expressions/await/await-awaits-thenables-that-throw.js: Added.
413 * test262/test/language/expressions/await/await-awaits-thenables.js: Added.
416 * test262/test/language/expressions/await/await-in-function.js: Added.
418 * test262/test/language/expressions/await/await-in-generator.js: Added.
420 * test262/test/language/expressions/await/await-in-global.js: Added.
421 * test262/test/language/expressions/await/await-in-nested-function.js: Added.
424 * test262/test/language/expressions/await/await-in-nested-generator.js: Added.
427 * test262/test/language/expressions/await/await-throws-rejections.js: Added.
429 * test262/test/language/expressions/await/early-errors-await-not-simple-assignment-target.js: Added.
431 * test262/test/language/expressions/await/no-operand.js: Added.
433 * test262/test/language/expressions/await/syntax-await-has-UnaryExpression-with-MultiplicativeExpression.js: Added.
435 * test262/test/language/expressions/await/syntax-await-has-UnaryExpression.js: Added.
437 * test262/test/language/expressions/call/trailing-comma.js: Added.
439 * test262/test/language/expressions/function/arguments-with-arguments-fn.js: Added.
441 * test262/test/language/expressions/function/arguments-with-arguments-lex.js: Added.
443 * test262/test/language/expressions/function/params-trailing-comma-arguments.js: Added.
446 * test262/test/language/expressions/function/params-trailing-comma-length.js: Added.
448 * test262/test/language/expressions/function/params-trailing-comma.js: Added.
449 * test262/test/language/expressions/generators/arguments-with-arguments-fn.js: Added.
451 * test262/test/language/expressions/generators/arguments-with-arguments-lex.js: Added.
453 * test262/test/language/expressions/generators/params-trailing-comma-arguments.js: Added.
456 * test262/test/language/expressions/generators/params-trailing-comma-length.js: Added.
458 * test262/test/language/expressions/generators/params-trailing-comma.js: Added.
459 * test262/test/language/expressions/object/computed-property-evaluation-order.js: Added.
460 * test262/test/language/expressions/object/method-definition/async-super-call-body.js: Added.
462 (child.async.method):
463 * test262/test/language/expressions/object/method-definition/async-super-call-param.js: Added.
465 (child.async.method.x.super.method):
466 * test262/test/language/expressions/object/method-definition/early-errors-object-method-NSPL-with-USD.js: Added.
468 * test262/test/language/expressions/object/method-definition/early-errors-object-method-arguments-in-formal-parameters.js: Added.
470 * test262/test/language/expressions/object/method-definition/early-errors-object-method-await-in-formals-default.js: Added.
472 * test262/test/language/expressions/object/method-definition/early-errors-object-method-await-in-formals.js: Added.
474 * test262/test/language/expressions/object/method-definition/early-errors-object-method-body-contains-super-call.js: Added.
476 * test262/test/language/expressions/object/method-definition/early-errors-object-method-duplicate-parameters.js: Added.
478 * test262/test/language/expressions/object/method-definition/early-errors-object-method-eval-in-formal-parameters.js: Added.
480 * test262/test/language/expressions/object/method-definition/early-errors-object-method-formals-body-duplicate.js: Added.
482 * test262/test/language/expressions/object/method-definition/early-errors-object-method-formals-contains-super-call.js: Added.
483 (async.foo.foo.super):
484 * test262/test/language/expressions/object/method-definition/object-method-returns-promise.js: Added.
486 * test262/test/language/expressions/object/method-definition/params-trailing-comma-arguments.js: Added.
489 * test262/test/language/expressions/object/method-definition/params-trailing-comma-length.js: Added.
492 * test262/test/language/expressions/object/method-definition/params-trailing-comma-rest.js: Added.
494 * test262/test/language/expressions/object/method-definition/params-trailing-comma.js: Added.
497 * 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.
499 * test262/test/language/global-code/decl-func.js: Added.
501 * test262/test/language/global-code/decl-lex-configurable-global.js: Added.
502 * test262/test/language/global-code/decl-lex-deletion.js: Added.
504 * test262/test/language/global-code/decl-lex-restricted-global.js: Added.
505 * test262/test/language/global-code/decl-lex.js: Added.
507 * test262/test/language/global-code/decl-var.js: Added.
508 * test262/test/language/global-code/return.js: Added.
509 * test262/test/language/global-code/script-decl-func-dups.js: Added.
510 * test262/test/language/global-code/script-decl-func-err-non-configurable.js: Added.
511 * test262/test/language/global-code/script-decl-func-err-non-extensible.js: Added.
512 * test262/test/language/global-code/script-decl-func.js: Added.
513 * test262/test/language/global-code/script-decl-lex-deletion.js: Added.
514 * test262/test/language/global-code/script-decl-lex-lex.js: Added.
516 * test262/test/language/global-code/script-decl-lex-restricted-global.js: Added.
517 * test262/test/language/global-code/script-decl-lex-var.js: Added.
519 * test262/test/language/global-code/script-decl-lex.js: Added.
520 * test262/test/language/global-code/script-decl-var-collision.js: Added.
522 * test262/test/language/global-code/script-decl-var-err.js: Added.
523 * test262/test/language/global-code/script-decl-var.js: Added.
524 * test262/test/language/global-code/super-call-arrow.js: Added.
525 * test262/test/language/global-code/super-call.js: Added.
526 * test262/test/language/global-code/super-prop-arrow.js: Added.
527 * test262/test/language/global-code/super-prop.js: Added.
528 * test262/test/language/global-code/yield-non-strict.js: Added.
530 * test262/test/language/global-code/yield-strict.js: Added.
531 * test262/test/language/literals/regexp/lastIndex.js: Added.
532 * test262/test/language/literals/regexp/u-unicode-esc-bounds.js:
533 * test262/test/language/literals/regexp/y-assertion-start.js: Added.
534 * test262/test/language/module-code/instn-star-err-not-found-faulty_FIXTURE.js:
535 * test262/test/language/module-code/instn-star-err-not-found.js:
536 * test262/test/language/module-code/namespace/internals/get-own-property-str-found-init.js:
537 * test262/test/language/module-code/parse-err-return.js: Added.
538 * test262/test/language/module-code/parse-err-yield.js: Added.
539 * test262/test/language/rest-parameters/params-trailing-comma-rest.js: Added.
540 * test262/test/language/statements/async-function/declaration-returns-promise.js: Added.
542 * test262/test/language/statements/async-function/early-errors-declaration-NSPL-with-USD.js: Added.
544 * test262/test/language/statements/async-function/early-errors-declaration-arguments-in-formal-parameters.js: Added.
546 * test262/test/language/statements/async-function/early-errors-declaration-await-in-formals-default.js: Added.
548 * test262/test/language/statements/async-function/early-errors-declaration-await-in-formals.js: Added.
550 * test262/test/language/statements/async-function/early-errors-declaration-binding-identifier-arguments.js: Added.
552 * test262/test/language/statements/async-function/early-errors-declaration-binding-identifier-eval.js: Added.
554 * test262/test/language/statements/async-function/early-errors-declaration-body-contains-super-call.js: Added.
556 * test262/test/language/statements/async-function/early-errors-declaration-body-contains-super-property.js: Added.
558 * test262/test/language/statements/async-function/early-errors-declaration-duplicate-parameters.js: Added.
560 * test262/test/language/statements/async-function/early-errors-declaration-eval-in-formal-parameters.js: Added.
562 * test262/test/language/statements/async-function/early-errors-declaration-formals-body-duplicate.js: Added.
564 * test262/test/language/statements/async-function/early-errors-declaration-formals-contains-super-call.js: Added.
566 * test262/test/language/statements/async-function/early-errors-declaration-formals-contains-super-property.js: Added.
568 * test262/test/language/statements/async-function/early-errors-no-async-generator.js: Added.
570 * test262/test/language/statements/async-function/evaluation-body-that-returns-after-await.js: Added.
573 * test262/test/language/statements/async-function/evaluation-body-that-returns.js: Added.
576 * test262/test/language/statements/async-function/evaluation-body-that-throws-after-await.js: Added.
579 * test262/test/language/statements/async-function/evaluation-body-that-throws.js: Added.
582 * test262/test/language/statements/async-function/evaluation-body.js: Added.
584 * test262/test/language/statements/async-function/evaluation-default-that-throws.js: Added.
587 * test262/test/language/statements/async-function/evaluation-mapped-arguments.js: Added.
589 * test262/test/language/statements/async-function/evaluation-this-value-global.js: Added.
591 * test262/test/language/statements/async-function/evaluation-this-value-passed.js: Added.
593 * test262/test/language/statements/async-function/evaluation-unmapped-arguments.js: Added.
595 * test262/test/language/statements/async-function/syntax-declaration-line-terminators-allowed.js: Added.
597 * test262/test/language/statements/async-function/syntax-declaration-no-line-terminator.js: Added.
599 * test262/test/language/statements/async-function/syntax-declaration.js: Added.
602 * test262/test/language/statements/class/definition/class-method-returns-promise.js: Added.
603 (Foo.prototype.async.method):
605 * test262/test/language/statements/class/definition/early-errors-class-method-NSPL-with-USD.js: Added.
606 (Foo.prototype.async.bar):
608 * test262/test/language/statements/class/definition/early-errors-class-method-arguments-in-formal-parameters.js: Added.
609 (Foo.prototype.async.foo):
611 * test262/test/language/statements/class/definition/early-errors-class-method-await-in-formals-default.js: Added.
612 (Foo.prototype.async.foo):
614 * test262/test/language/statements/class/definition/early-errors-class-method-await-in-formals.js: Added.
615 (Foo.prototype.async.foo):
617 * test262/test/language/statements/class/definition/early-errors-class-method-body-contains-super-call.js: Added.
618 (Foo.prototype.async.foo):
620 * test262/test/language/statements/class/definition/early-errors-class-method-duplicate-parameters.js: Added.
621 (Foo.prototype.async.foo):
623 * test262/test/language/statements/class/definition/early-errors-class-method-eval-in-formal-parameters.js: Added.
624 (Foo.prototype.async.foo):
626 * test262/test/language/statements/class/definition/early-errors-class-method-formals-body-duplicate.js: Added.
629 * test262/test/language/statements/class/definition/early-errors-class-method-formals-contains-super-call.js: Added.
630 (Foo.prototype.async.foo):
632 * test262/test/language/statements/class/definition/methods-async-super-call-body.js: Added.
633 (A.prototype.async.method):
635 (B.prototype.async.method):
637 * test262/test/language/statements/class/definition/methods-async-super-call-param.js: Added.
638 (A.prototype.async.method):
640 (B.prototype.async.method):
642 * test262/test/language/statements/class/definition/params-trailing-comma-arguments.js: Added.
646 * test262/test/language/statements/class/definition/params-trailing-comma-length.js: Added.
650 * test262/test/language/statements/class/definition/params-trailing-comma-rest.js: Added.
653 * test262/test/language/statements/class/definition/params-trailing-comma.js: Added.
657 * test262/test/language/statements/function/arguments-with-arguments-fn.js: Added.
659 * test262/test/language/statements/function/arguments-with-arguments-lex.js: Added.
661 * test262/test/language/statements/function/params-trailing-comma-arguments.js: Added.
664 * test262/test/language/statements/function/params-trailing-comma-length.js: Added.
667 * test262/test/language/statements/function/params-trailing-comma.js: Added.
670 * test262/test/language/statements/generators/arguments-with-arguments-fn.js: Added.
672 * test262/test/language/statements/generators/arguments-with-arguments-lex.js: Added.
674 * test262/test/language/statements/generators/params-trailing-comma-length.js: Added.
677 * test262/test/language/statements/generators/params-trailing-comma.js: Added.
680 * test262/test262-Revision.txt:
682 2016-08-23 Benjamin Poulain <bpoulain@apple.com>
684 [JSC] Make Math.cos() and Math.sin() work with any argument type
685 https://bugs.webkit.org/show_bug.cgi?id=161069
687 Reviewed by Geoffrey Garen.
689 * stress/arith-cos-on-various-types.js: Added.
690 * stress/arith-sin-on-various-types.js: Added.
692 2016-08-23 Yusuke Suzuki <utatane.tea@gmail.com>
694 [ES6] Module namespace object's Symbol.iterator method should only accept module namespace objects
695 https://bugs.webkit.org/show_bug.cgi?id=161097
697 Reviewed by Keith Miller.
701 2016-08-22 Yusuke Suzuki <utatane.tea@gmail.com>
703 [ES6] Modules' `export default function/class` should be declaration
704 https://bugs.webkit.org/show_bug.cgi?id=160499
706 Reviewed by Saam Barati.
708 Add several module tests. And flip the failed tests flags in test262.
710 * modules/export-default-function-name-in-assignment-expression.js: Added.
712 * modules/export-default-function-name-in-class-declaration.js: Added.
713 * modules/export-default-function-name-in-function-declaration.js: Added.
715 * modules/export-default-function-name-in-generator-declaration.js: Added.
717 * stress/method-name.js: Added.
720 (testSyntaxError.Hello.prototype.hello.hello):
721 (testSyntaxError.Hello):
722 (SyntaxError.Unexpected.identifier.string_appeared_here.Expected.an.opening.string_appeared_here.before.a.method.testSyntaxError.let.obj.hello.hello):
723 (testSyntaxError.Hello.prototype.get hello):
724 (testSyntaxError.Hello.prototype.set hello):
727 2016-08-22 Yusuke Suzuki <utatane.tea@gmail.com>
729 [ES6] Module should not allow HTML comments
730 https://bugs.webkit.org/show_bug.cgi?id=161041
732 Reviewed by Saam Barati.
734 * modules/html-comments.js: Added.
738 2016-08-21 Yusuke Suzuki <utatane.tea@gmail.com>
740 [DFG] Should not fixup AnyIntUse in 32_64
741 https://bugs.webkit.org/show_bug.cgi?id=161029
743 Reviewed by Saam Barati.
745 * typeProfiler/int52-dfg.js: Added.
748 2016-08-21 Yusuke Suzuki <utatane.tea@gmail.com>
750 Unreviewed, rolling out r204697
751 https://bugs.webkit.org/show_bug.cgi?id=161029
753 * typeProfiler/int52-dfg.js: Removed.
755 * typeProfiler/number-filter-dfg.js: Removed.
758 2016-08-21 Yusuke Suzuki <utatane.tea@gmail.com>
760 [DFG] Should not fixup AnyIntUse in 32_64
761 https://bugs.webkit.org/show_bug.cgi?id=161029
763 Reviewed by Saam Barati.
765 * typeProfiler/int52-dfg.js: Added.
767 * typeProfiler/number-filter-dfg.js: Added.
770 2016-08-19 Benjamin Poulain <bpoulain@apple.com>
772 [JSC] ArithSqrt should work with any argument type
773 https://bugs.webkit.org/show_bug.cgi?id=160954
775 Reviewed by Saam Barati.
777 * stress/arith-sqrt-on-various-types.js: Added.
778 (let.validInputTypedTestCases.validInputTestCases.map):
780 (opaqueAllTypesSqrt):
782 (testSingleTypeCall):
783 (opaqueSqrtForSideEffects):
784 (testSideEffect.let.testObject.valueOf):
787 (testCSE.let.testObject.valueOf):
789 (testException.opaqueSqrtWithException):
792 2016-08-19 Joseph Pecoraro <pecoraro@apple.com>
794 Make custom Error properties (line, column, sourceURL) configurable and writable
795 https://bugs.webkit.org/show_bug.cgi?id=160984
796 <rdar://problem/27905979>
798 Reviewed by Saam Barati.
800 * stress/native-error-properties.js: Added.
804 (checkEmptyErrorPropertiesDescriptors):
805 (checkNonEmptyErrorPropertiesDescriptors):
806 The spec only describes the "message" property, so
807 ensure it has the right descriptor attributes.
809 (checkErrorPropertiesWritable):
810 Ensure common error property names are writable.
811 In strict mode this would have thrown an exception
812 if they were readonly.
814 2016-08-18 Mark Lam <mark.lam@apple.com>
816 ScopedArguments is using the wrong owner object for a write barrier.
817 https://bugs.webkit.org/show_bug.cgi?id=160976
818 <rdar://problem/27328506>
820 Reviewed by Keith Miller.
822 * stress/scoped-arguments-write-barrier-should-be-on-scope-object.js: Added.
824 2016-08-17 JF Bastien <jfbastien@apple.com>
826 We allow assignments to const variables when in a for-in/for-of loop
827 https://bugs.webkit.org/show_bug.cgi?id=156673
829 Reviewed by Filip Pizlo.
831 * stress/for-in-of-const.js: Added.
836 2016-08-17 Mark Lam <mark.lam@apple.com>
838 Remove an invalid assertion in the DFG backend's GetById emitter.
839 https://bugs.webkit.org/show_bug.cgi?id=160925
840 <rdar://problem/27248961>
842 Reviewed by Filip Pizlo.
844 * stress/dfg-get-by-id-should-not-assert-non-null-prediction.js: Added.
846 2016-08-16 Ryan Haddad <ryanhaddad@apple.com>
848 Unreviewed, rolling out r204464.
850 This is no longer needed after r204495.
854 "Skip failing test mozilla/ecma/LexicalConventions/7.7.3.js"
855 https://bugs.webkit.org/show_bug.cgi?id=160662
856 http://trac.webkit.org/changeset/204464
858 2016-08-15 Ryan Haddad <ryanhaddad@apple.com>
860 Skip failing test mozilla/ecma/LexicalConventions/7.7.3.js
861 https://bugs.webkit.org/show_bug.cgi?id=160662
863 Unreviewed test gardening.
865 * mozilla/ecma/LexicalConventions/7.7.3.js:
867 2016-08-14 Skachkov Oleksandr <gskachkov@gmail.com>
869 [2016] Set correct status for test262 after implementation of Object.values&Object.entries
870 https://bugs.webkit.org/show_bug.cgi?id=160844
872 Reviewed by Saam Barati.
874 Patch contains fix statuses of specs in the test262 test collection after implementation of
875 Object.values and Object.entries functions. Also patch contains small fixes in tests of the
876 tests for Object.values/entries functions.
878 * stress/object-entries.js:
879 (Object.getOwnPropertyDescriptor):
880 * stress/object-values.js:
881 (Object.getOwnPropertyDescriptor):
884 2016-08-12 Saam Barati <sbarati@apple.com>
886 Inline store loop for CopyRest in DFG and FTL for certain array modes
887 https://bugs.webkit.org/show_bug.cgi?id=159612
889 Reviewed by Filip Pizlo.
891 * stress/rest-parameter-having-a-bad-time.js: Added.
892 * stress/rest-parameter-many-arguments.js: Added.
893 * stress/rest-parameter-various-types.js: Added.
895 2016-08-12 Skachkov Oleksandr <gskachkov@gmail.com>
897 [ES2016] Implement Object.entries
898 https://bugs.webkit.org/show_bug.cgi?id=160412
900 Reviewed by Saam Barati.
902 Patch contains tests for Object.entries function and
903 fix of wrong tests for Object.values function.
905 * stress/object-entries.js:
907 (string_appeared_here.forEach):
908 (const.getInvokedFunctions.):
909 (const.getInvokedFunctions):
910 (Array.prototype.push):
911 * stress/object-values.js:
913 2016-08-11 Mark Lam <mark.lam@apple.com>
915 OverridesHasInstance should not branch across register allocations.
916 https://bugs.webkit.org/show_bug.cgi?id=160792
917 <rdar://problem/27361778>
919 Reviewed by Benjamin Poulain.
921 * stress/OverrideHasInstance-should-not-branch-across-register-allocations.js: Added.
923 2016-08-11 Mark Lam <mark.lam@apple.com>
925 The jsc shell's Element host constructor should throw if it fails to construct an object.
926 https://bugs.webkit.org/show_bug.cgi?id=160773
927 <rdar://problem/27328608>
929 Reviewed by Saam Barati.
931 * stress/generational-opaque-roots.js:
933 2016-08-11 Mark Lam <mark.lam@apple.com>
935 Disallow synchronous sweeping for eden GCs.
936 https://bugs.webkit.org/show_bug.cgi?id=160716
938 Reviewed by Geoffrey Garen.
940 * stress/eden-gc-with-retired-blocks.js: Added.
941 - This test is just in case we add back support for eden GCs with synchronous
942 sweeping in the future.
944 2016-08-10 Michael Saboff <msaboff@apple.com>
946 Baseline GetByVal and PutByVal for cache ID stubs need to handle exceptions
947 https://bugs.webkit.org/show_bug.cgi?id=160749
949 Reviewed by Filip Pizlo.
951 New test that causes baseline GetByValWithCachedId and PutByValWithCachedId
952 stubs to be generated and then throws exceptions for those stub to handle
953 to verify that they are properly handled.
955 * stress/regress-160749.js: Added.
956 (testCachedGetByVal.):
957 (testCachedGetByVal.get for):
958 (testCachedGetByVal):
959 (testCachedPutByVal.):
960 (testCachedPutByVal.set for):
961 (testCachedPutByVal):
963 2016-08-10 Mark Lam <mark.lam@apple.com>
965 DFG's flushForTerminal() needs to add PhantomLocals for bytecode live locals.
966 https://bugs.webkit.org/show_bug.cgi?id=160755
967 <rdar://problem/27488507>
969 Reviewed by Filip Pizlo.
971 * stress/need-bytecode-liveness-for-unreachable-blocks-at-dfg-time.js: Added.
973 2016-08-09 Skachkov Oleksandr <gskachkov@gmail.com>
975 [ES2016] Implement Object.values
976 https://bugs.webkit.org/show_bug.cgi?id=160410
978 Reviewed by Saam Barati, Yusuke Suzuki.
980 * stress/object-values.js: Added.
982 (string_appeared_here.forEach):
983 (const.getInvokedFunctions.):
984 (const.getInvokedFunctions):
985 (Array.prototype.push):
987 2016-08-09 Saam Barati <sbarati@apple.com>
989 JSBoundFunction should lazily generate its name string
990 https://bugs.webkit.org/show_bug.cgi?id=160678
991 <rdar://problem/27043194>
993 Reviewed by Mark Lam.
995 * stress/bound-function-lazy-name-generation.js: Added.
1001 2016-08-08 Mark Lam <mark.lam@apple.com>
1003 ASSERTION FAILED: hasInlineStorage() in JSFinalObject::visitChildren().
1004 https://bugs.webkit.org/show_bug.cgi?id=160666
1006 Reviewed by Keith Miller.
1008 * stress/object-constructor-should-be-new-target-aware.js:
1010 2016-08-07 Yusuke Suzuki <utatane.tea@gmail.com>
1012 [ES6] Module namespace object should not allow unset IC
1013 https://bugs.webkit.org/show_bug.cgi?id=160553
1015 Reviewed by Saam Barati.
1017 * modules/namespace-object-get-property.js: Added.
1018 (import.as.ns.from.string_appeared_here.shouldThrow):
1019 * modules/namespace-object-has-property.js: Added.
1020 * modules/namespace-object-inline-caching.js: Added.
1021 (import.as.A.from.string_appeared_here.import.as.B.from.string_appeared_here.lookup):
1022 (shouldBe.lookup.lookup):
1024 * modules/namespace-object-inline-caching/a.js: Added.
1025 * modules/namespace-object-inline-caching/b.js: Added.
1026 * modules/namespace-object-try-get.js: Added.
1027 (import.as.ns.from.string_appeared_here.tryGetByIdText):
1028 (tryGetByIdTextStrict):
1029 * modules/namespace-object-typed-array-fast-path.js: Added.
1032 2016-08-05 Saam Barati <sbarati@apple.com>
1034 various math operations don't properly check for an exception after calling toNumber() on the lhs
1035 https://bugs.webkit.org/show_bug.cgi?id=160154
1037 Reviewed by Mark Lam.
1039 * stress/to-number-throws-correct-exception.js: Added.
1040 (test.let.test.runTest.):
1041 (test.let.test.runTest.get f):
1042 (test.let.test.runTest):
1046 (test2.runTest.get f):
1050 2016-08-05 Saam Barati <sbarati@apple.com>
1052 Assertion failure when accessing TDZ variable in catch through eval
1053 https://bugs.webkit.org/show_bug.cgi?id=160554
1055 Reviewed by Mark Lam and Keith Miller.
1057 * stress/catch-variables-under-tdz.js: Added.
1060 2016-08-04 Yusuke Suzuki <utatane.tea@gmail.com>
1062 [ES6] JSModuleNamespaceObject's Symbol.iterator function should have name
1063 https://bugs.webkit.org/show_bug.cgi?id=160549
1065 Reviewed by Saam Barati.
1067 * modules/namespace-object-symbol-iterator-name.js: Added.
1070 2016-08-04 Keith Miller <keith_miller@apple.com>
1072 ASSERTION FAILED: !hasInstanceValueNode->isCellConstant() || defaultHasInstanceFunction == hasInstanceValueNode->asCell()
1073 https://bugs.webkit.org/show_bug.cgi?id=160562
1075 Reviewed by Mark Lam.
1077 * stress/instanceof-late-constant-folding.js: Added.
1082 2016-08-04 Caitlin Potter <caitp@igalia.com>
1084 [JSC] fix generator-syntax.js JSTest again after yield grammar fix
1085 https://bugs.webkit.org/show_bug.cgi?id=160550
1087 Reviewed by Yusuke Suzuki.
1089 * stress/generator-syntax.js:
1090 (testYieldBindingIdentifier):
1092 2016-08-03 Caitlin Potter <caitp@igalia.com>
1094 Clarify SyntaxErrors around yield and unskip tests
1095 https://bugs.webkit.org/show_bug.cgi?id=158460
1097 Reviewed by Saam Barati.
1099 Fix and unskip tests which erroneously asserted that `yield` is not a
1100 valid BindingIdentifier, and improve error message for YieldExpressions
1101 occuring in Arrow formal parameters.
1103 * stress/generator-syntax.js:
1104 * stress/yield-out-of-generator.js:
1106 2016-08-03 Filip Pizlo <fpizlo@apple.com>
1108 REGRESSION(r203368): broke some test262 tests
1109 https://bugs.webkit.org/show_bug.cgi?id=160479
1111 Reviewed by Mark Lam.
1113 Added a stress test for this case, since we don't always run test262.
1115 * stress/freeze-setter.js: Added.
1118 2016-08-03 Saam Barati <sbarati@apple.com>
1120 Implement nested rest destructuring w.r.t the ES7 spec
1121 https://bugs.webkit.org/show_bug.cgi?id=160423
1123 Reviewed by Filip Pizlo.
1125 * stress/destructuring-rest-element.js: Added.
1131 (fakeGen.return.Symbol.iterator):
1133 * stress/rest-elements.js:
1134 (testSyntaxError.String.raw):
1135 * stress/rest-parameter-is-destructuring.js: Added.
1142 2016-08-02 Saam Barati <sbarati@apple.com>
1144 Rename Changelog to ChangeLog
1146 Rubber stamped by Keith Miller.
1148 * Changelog: Removed.
1150 2016-08-02 Saam Barati <sbarati@apple.com>
1152 update a class extending null w.r.t the ES7 spec
1153 https://bugs.webkit.org/show_bug.cgi?id=160417
1155 Reviewed by Keith Miller.
1158 * stress/class-derived-from-null.js: Added.
1182 2016-08-01 Filip Pizlo <fpizlo@apple.com>
1184 Rationalize varargs stack overflow checks
1185 https://bugs.webkit.org/show_bug.cgi?id=160425
1187 Reviewed by Michael Saboff.
1189 * stress/arity-check-ftl-throw-more-args.js: Added.
1192 2016-08-01 Keith Miller <keith_miller@apple.com>
1194 We should not keep the JavaScript tests inside the Source/JavaScriptCore/ directory.
1195 https://bugs.webkit.org/show_bug.cgi?id=160372
1197 Rubber stamped by Geoffrey Garen.
1199 This patch moves all the JavaScript tests from Source/JavaScriptCore/tests to
1200 a new top level directory, JSTests. Having the tests in the Source directory
1201 was both confusing an inconvenient for people that just want to checkout the
1202 source code of WebKit. Since there is no other obvious place to put all the
1203 JavaScript tests a new top level directory seemed the most sensible.