[LFC] Implement margin computation
[WebKit-https.git] / JSTests / ChangeLog
1 2018-05-23  Yusuke Suzuki  <utatane.tea@gmail.com>
2
3         Upgrade test262 to May 24 version
4         https://bugs.webkit.org/show_bug.cgi?id=185937
5
6         Reviewed by Darin Adler.
7
8         * test262/expectations.yaml:
9         * test262/harness/doneprintHandle.js:
10         (DONE):
11         * test262/latest-changes-summary.txt:
12         * test262/test/annexB/language/eval-code/direct/global-block-decl-eval-global-existing-global-init.js:
13         * test262/test/annexB/language/eval-code/direct/global-block-decl-eval-global-existing-non-enumerable-global-init.js: Added.
14         * test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-a-eval-global-existing-global-init.js:
15         * test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-a-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-a-eval-global-existing-global-init.js.
16         * test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-b-eval-global-existing-global-init.js:
17         * test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-b-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-b-eval-global-existing-global-init.js.
18         * test262/test/annexB/language/eval-code/direct/global-if-decl-else-stmt-eval-global-existing-global-init.js:
19         * test262/test/annexB/language/eval-code/direct/global-if-decl-else-stmt-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-decl-else-stmt-eval-global-existing-global-init.js.
20         * test262/test/annexB/language/eval-code/direct/global-if-decl-no-else-eval-global-existing-global-init.js:
21         * test262/test/annexB/language/eval-code/direct/global-if-decl-no-else-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-decl-no-else-eval-global-existing-global-init.js.
22         * test262/test/annexB/language/eval-code/direct/global-if-stmt-else-decl-eval-global-existing-global-init.js:
23         * test262/test/annexB/language/eval-code/direct/global-if-stmt-else-decl-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/direct/global-if-stmt-else-decl-eval-global-existing-global-init.js.
24         * test262/test/annexB/language/eval-code/direct/global-switch-case-eval-global-existing-global-init.js:
25         * test262/test/annexB/language/eval-code/direct/global-switch-case-eval-global-existing-non-enumerable-global-init.js: Added.
26         * test262/test/annexB/language/eval-code/direct/global-switch-dflt-eval-global-existing-global-init.js:
27         * test262/test/annexB/language/eval-code/direct/global-switch-dflt-eval-global-existing-non-enumerable-global-init.js: Added.
28         * test262/test/annexB/language/eval-code/indirect/global-block-decl-eval-global-existing-global-init.js:
29         * test262/test/annexB/language/eval-code/indirect/global-block-decl-eval-global-existing-non-enumerable-global-init.js: Added.
30         * test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-a-eval-global-existing-global-init.js:
31         * test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-a-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-a-eval-global-existing-global-init.js.
32         * test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-b-eval-global-existing-global-init.js:
33         * test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-b-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-b-eval-global-existing-global-init.js.
34         * test262/test/annexB/language/eval-code/indirect/global-if-decl-else-stmt-eval-global-existing-global-init.js:
35         * test262/test/annexB/language/eval-code/indirect/global-if-decl-else-stmt-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-decl-else-stmt-eval-global-existing-global-init.js.
36         * test262/test/annexB/language/eval-code/indirect/global-if-decl-no-else-eval-global-existing-global-init.js:
37         * test262/test/annexB/language/eval-code/indirect/global-if-decl-no-else-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-decl-no-else-eval-global-existing-global-init.js.
38         * test262/test/annexB/language/eval-code/indirect/global-if-stmt-else-decl-eval-global-existing-global-init.js:
39         * test262/test/annexB/language/eval-code/indirect/global-if-stmt-else-decl-eval-global-existing-non-enumerable-global-init.js: Copied from JSTests/test262/test/annexB/language/eval-code/indirect/global-if-stmt-else-decl-eval-global-existing-global-init.js.
40         * test262/test/annexB/language/eval-code/indirect/global-switch-case-eval-global-existing-global-init.js:
41         * test262/test/annexB/language/eval-code/indirect/global-switch-case-eval-global-existing-non-enumerable-global-init.js: Added.
42         * test262/test/annexB/language/eval-code/indirect/global-switch-dflt-eval-global-existing-global-init.js:
43         * test262/test/annexB/language/eval-code/indirect/global-switch-dflt-eval-global-existing-non-enumerable-global-init.js: Added.
44         * test262/test/annexB/language/global-code/block-decl-global-existing-global-init.js: Added.
45         (262.evalScript.f):
46         * test262/test/annexB/language/global-code/block-decl-global-existing-non-enumerable-global-init.js: Added.
47         (262.evalScript.f):
48         * test262/test/annexB/language/global-code/if-decl-else-decl-a-global-existing-global-init.js: Added.
49         (262.evalScript.true.f):
50         (else._f):
51         * test262/test/annexB/language/global-code/if-decl-else-decl-a-global-existing-non-enumerable-global-init.js: Added.
52         (262.evalScript.true.f):
53         (else._f):
54         * test262/test/annexB/language/global-code/if-decl-else-decl-b-global-existing-global-init.js: Added.
55         (262.evalScript.false._f):
56         (else.f):
57         * test262/test/annexB/language/global-code/if-decl-else-decl-b-global-existing-non-enumerable-global-init.js: Added.
58         (262.evalScript.false._f):
59         (else.f):
60         * test262/test/annexB/language/global-code/if-decl-else-stmt-global-existing-global-init.js: Added.
61         (262.evalScript.true.f):
62         * test262/test/annexB/language/global-code/if-decl-else-stmt-global-existing-non-enumerable-global-init.js: Added.
63         (262.evalScript.true.f):
64         * test262/test/annexB/language/global-code/if-decl-no-else-global-existing-global-init.js: Added.
65         (262.evalScript.true.f):
66         * test262/test/annexB/language/global-code/if-decl-no-else-global-existing-non-enumerable-global-init.js: Added.
67         (262.evalScript.true.f):
68         * test262/test/annexB/language/global-code/if-stmt-else-decl-global-existing-global-init.js: Added.
69         (else.f):
70         * test262/test/annexB/language/global-code/if-stmt-else-decl-global-existing-non-enumerable-global-init.js: Added.
71         (else.f):
72         * test262/test/annexB/language/global-code/switch-case-global-existing-global-init.js: Added.
73         (262.evalScript.switch.case.1):
74         (262.evalScript.switch):
75         * test262/test/annexB/language/global-code/switch-case-global-existing-non-enumerable-global-init.js: Added.
76         (262.evalScript.switch.case.1):
77         (262.evalScript.switch):
78         * test262/test/annexB/language/global-code/switch-dflt-global-existing-global-init.js: Added.
79         (262.evalScript.switch.default):
80         (262.evalScript.switch):
81         * test262/test/annexB/language/global-code/switch-dflt-global-existing-non-enumerable-global-init.js: Added.
82         (262.evalScript.switch.default):
83         (262.evalScript.switch):
84         * test262/test/built-ins/Array/prototype/flat/array-like-objects.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/array-like-objects.js.
85         * test262/test/built-ins/Array/prototype/flat/bound-function-call.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/bound-function-call.js.
86         * test262/test/built-ins/Array/prototype/flat/empty-array-elements.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/empty-array-elements.js.
87         * test262/test/built-ins/Array/prototype/flat/empty-object-elements.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/empty-object-elements.js.
88         * test262/test/built-ins/Array/prototype/flat/length.js: Added.
89         * test262/test/built-ins/Array/prototype/flat/name.js: Added.
90         * test262/test/built-ins/Array/prototype/flat/non-numeric-depth-should-not-throw.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/non-numeric-depth-should-not-throw.js.
91         * test262/test/built-ins/Array/prototype/flat/non-object-ctor-throws.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/non-object-ctor-throws.js.
92         * test262/test/built-ins/Array/prototype/flat/null-undefined-elements.js: Added.
93         * test262/test/built-ins/Array/prototype/flat/null-undefined-input-throws.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/null-undefined-input-throws.js.
94         * test262/test/built-ins/Array/prototype/flat/positive-infinity.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/positive-infinity.js.
95         * test262/test/built-ins/Array/prototype/flat/prop-desc.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/prop-desc.js.
96         * test262/test/built-ins/Array/prototype/flat/symbol-object-create-null-depth-throws.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/symbol-object-create-null-depth-throws.js.
97         * test262/test/built-ins/Array/prototype/flatten/length.js: Removed.
98         * test262/test/built-ins/Array/prototype/flatten/name.js: Removed.
99         * test262/test/built-ins/Array/prototype/flatten/null-undefined-elements.js: Removed.
100         * test262/test/built-ins/AsyncGeneratorPrototype/next/name.js:
101         * test262/test/built-ins/AsyncGeneratorPrototype/return/name.js:
102         * test262/test/built-ins/AsyncGeneratorPrototype/throw/name.js:
103         * test262/test/built-ins/Math/acosh/nan-returns.js:
104         * test262/test/built-ins/Math/asinh/asinh-specialVals.js:
105         * test262/test/built-ins/Math/atanh/atanh-specialVals.js:
106         * test262/test/built-ins/Math/cbrt/cbrt-specialValues.js:
107         * test262/test/built-ins/Math/cbrt/prop-desc.js:
108         * test262/test/built-ins/Math/cosh/cosh-specialVals.js:
109         * test262/test/built-ins/Math/expm1/expm1-specialVals.js:
110         * test262/test/built-ins/Math/log10/Log10-specialVals.js:
111         * test262/test/built-ins/Math/log2/log2-basicTests.js:
112         * test262/test/built-ins/Math/sign/sign-specialVals.js:
113         * test262/test/built-ins/Math/sinh/sinh-specialVals.js:
114         * test262/test/built-ins/Math/tanh/tanh-specialVals.js:
115         * test262/test/built-ins/Math/trunc/trunc-sampleTests.js:
116         * test262/test/built-ins/Math/trunc/trunc-specialVals.js:
117         * test262/test/built-ins/Object/internals/DefineOwnProperty/consistent-value-regexp-dollar1.js: Added.
118         * test262/test/built-ins/Object/internals/DefineOwnProperty/consistent-writable-regexp-dollar1.js: Added.
119         * test262/test/intl402/Intl/getCanonicalLocales/descriptor.js:
120         * test262/test/intl402/Intl/getCanonicalLocales/duplicates.js:
121         * test262/test/intl402/Locale/constructor-getter-order.js: Added.
122         (new.Intl.Locale.toString):
123         (get language):
124         (get script):
125         (get region):
126         (get calendar):
127         (get collation):
128         (get hourCycle):
129         (get caseFirst):
130         (get numeric):
131         (get numberingSystem):
132         * test262/test/intl402/Locale/constructor-locale-object.js: Added.
133         * test262/test/intl402/Locale/constructor-non-iana-canon.js: Added.
134         * test262/test/intl402/Locale/constructor-options-casefirst-invalid.js: Added.
135         (valueOf):
136         (const.invalidCaseFirstOption.of.invalidCaseFirstOptions.new.Intl.Locale):
137         * test262/test/intl402/Locale/constructor-options-casefirst-valid.js: Added.
138         (toString):
139         * test262/test/intl402/Locale/constructor-options-collation-invalid.js: Added.
140         (const.invalidCollationOption.of.invalidCollationOptions.new.Intl.Locale):
141         * test262/test/intl402/Locale/constructor-options-collation-valid.js: Added.
142         * test262/test/intl402/Locale/constructor-options-hourcycle-invalid.js: Added.
143         (const.invalidHourCycleOption.of.invalidHourCycleOptions.new.Intl.Locale):
144         * test262/test/intl402/Locale/constructor-options-hourcycle-valid.js: Added.
145         (toString):
146         * test262/test/intl402/Locale/constructor-options-language-grandfathered.js: Added.
147         * test262/test/intl402/Locale/constructor-options-language-valid.js:
148         (toString):
149         * test262/test/intl402/Locale/constructor-options-numberingsystem-invalid.js: Added.
150         (const.invalidNumberingSystemOption.of.invalidNumberingSystemOptions.new.Intl.Locale):
151         * test262/test/intl402/Locale/constructor-options-numberingsystem-valid.js: Added.
152         * test262/test/intl402/Locale/constructor-options-numeric-valid.js: Added.
153         (valueOf):
154         * test262/test/intl402/Locale/constructor-options-region-valid.js:
155         * test262/test/intl402/Locale/constructor-options-script-valid.js:
156         (toString):
157         * test262/test/intl402/Locale/constructor-parse-twice.js: Added.
158         * test262/test/intl402/Locale/constructor-tag-tostring.js: Added.
159         (CustomError):
160         (WrongCustomError):
161         (const.errors.get Symbol):
162         (throw.new.CustomError):
163         (throw.new.CustomError.get toString):
164         (throw.new.CustomError.get valueOf):
165         (throw.new.WrongCustomError.get valueOf):
166         (throw.new.WrongCustomError):
167         * test262/test/intl402/Locale/constructor-unicode-ext-invalid.js: Added.
168         * test262/test/intl402/Locale/constructor-unicode-ext-valid.js: Added.
169         (canonical.of.Object.entries):
170         * test262/test/intl402/Locale/extensions-grandfathered.js: Added.
171         (of.testData.value.of.Object.entries):
172         * test262/test/intl402/Locale/extensions-private.js: Added.
173         * test262/test/intl402/Locale/getters-grandfathered.js: Added.
174         * test262/test/intl402/Locale/getters-missing.js: Added.
175         * test262/test/intl402/Locale/getters-privateuse.js: Added.
176         * test262/test/intl402/Locale/getters.js: Added.
177         * test262/test/intl402/Locale/invalid-tag-throws-symbol.js:
178         * test262/test/intl402/Locale/likely-subtags-grandfathered.js: Added.
179         * test262/test/intl402/Locale/prop-desc.js:
180         * test262/test/intl402/Locale/prototype/baseName/prop-desc.js: Added.
181         * test262/test/intl402/Locale/prototype/calendar/prop-desc.js: Added.
182         * test262/test/intl402/Locale/prototype/caseFirst/prop-desc.js: Added.
183         * test262/test/intl402/Locale/prototype/collation/prop-desc.js: Added.
184         * test262/test/intl402/Locale/prototype/constructor/prop-desc.js: Copied from JSTests/test262/test/intl402/Locale/prototype/constructor.js.
185         * test262/test/intl402/Locale/prototype/hourCycle/prop-desc.js: Added.
186         * test262/test/intl402/Locale/prototype/language/prop-desc.js: Added.
187         * test262/test/intl402/Locale/prototype/maximize/length.js:
188         * test262/test/intl402/Locale/prototype/maximize/prop-desc.js:
189         * test262/test/intl402/Locale/prototype/minimize/length.js: Copied from JSTests/test262/test/intl402/Locale/prototype/maximize/length.js.
190         * test262/test/intl402/Locale/prototype/minimize/name.js: Added.
191         * test262/test/intl402/Locale/prototype/minimize/prop-desc.js: Copied from JSTests/test262/test/intl402/Locale/prototype/constructor.js.
192         * test262/test/intl402/Locale/prototype/numberingSystem/prop-desc.js: Added.
193         * test262/test/intl402/Locale/prototype/numeric/prop-desc.js: Added.
194         * test262/test/intl402/Locale/prototype/region/prop-desc.js: Added.
195         * test262/test/intl402/Locale/prototype/script/prop-desc.js: Added.
196         * test262/test/intl402/Locale/prototype/toString/prop-desc.js: Renamed from JSTests/test262/test/intl402/Locale/prototype/constructor.js.
197         * test262/test/intl402/Locale/prototype/toStringTag/toStringTag.js: Renamed from JSTests/test262/test/intl402/Locale/prototype/toStringTag.js.
198         * test262/test/intl402/Number/prototype/toLocaleString/length.js:
199         * test262/test/intl402/NumberFormat/length.js:
200         * test262/test/intl402/NumberFormat/name.js:
201         * test262/test/intl402/NumberFormat/prop-desc.js:
202         * test262/test/intl402/PluralRules/length.js:
203         * test262/test/intl402/PluralRules/name.js:
204         * test262/test/intl402/PluralRules/prop-desc.js: Copied from JSTests/test262/test/intl402/NumberFormat/prop-desc.js.
205         * test262/test/language/expressions/addition/bigint-and-number.js:
206         * test262/test/language/expressions/addition/bigint-arithmetic.js:
207         (testAdd): Deleted.
208         * test262/test/language/expressions/addition/bigint-errors.js:
209         (Symbol.toPrimitive):
210         (0n.Symbol.toPrimitive):
211         (valueOf):
212         (0n.valueOf):
213         (toString):
214         (0n.toString):
215         * test262/test/language/expressions/addition/bigint-toprimitive.js:
216         * test262/test/language/expressions/addition/bigint-wrapped-values.js:
217         * test262/test/language/expressions/bitwise-and/bigint-and-number.js:
218         * test262/test/language/expressions/bitwise-and/bigint-errors.js:
219         (Symbol.toPrimitive):
220         (0n.Symbol.toPrimitive):
221         (valueOf):
222         (0n.valueOf):
223         (toString):
224         (0n.toString):
225         * test262/test/language/expressions/bitwise-and/bigint-non-primitive.js:
226         (assert.sameValue.Symbol.toPrimitive):
227         (assert.sameValue.0b011n.Symbol.toPrimitive):
228         (assert.sameValue.valueOf):
229         (assert.sameValue.0b011n.valueOf):
230         (assert.sameValue.toString):
231         (assert.sameValue.0b011n.toString):
232         * test262/test/language/expressions/bitwise-and/bigint-toprimitive.js:
233         * test262/test/language/expressions/bitwise-and/bigint-wrapped-values.js:
234         * test262/test/language/expressions/bitwise-not/bigint-non-primitive.js:
235         (assert.sameValue.Symbol.toPrimitive):
236         (assert.sameValue.valueOf):
237         (assert.sameValue.toString):
238         * test262/test/language/expressions/bitwise-or/bigint-and-number.js:
239         * test262/test/language/expressions/bitwise-or/bigint-errors.js:
240         (Symbol.toPrimitive):
241         (0n.Symbol.toPrimitive):
242         (valueOf):
243         (0n.valueOf):
244         (toString):
245         (0n.toString):
246         * test262/test/language/expressions/bitwise-or/bigint-non-primitive.js:
247         (assert.sameValue.Symbol.toPrimitive):
248         (assert.sameValue.0b011n.Symbol.toPrimitive):
249         (assert.sameValue.valueOf):
250         (assert.sameValue.0b011n.valueOf):
251         (assert.sameValue.toString):
252         (assert.sameValue.0b011n.toString):
253         * test262/test/language/expressions/bitwise-or/bigint-toprimitive.js:
254         * test262/test/language/expressions/bitwise-or/bigint-wrapped-values.js:
255         * test262/test/language/expressions/bitwise-xor/bigint-and-number.js:
256         * test262/test/language/expressions/bitwise-xor/bigint-errors.js:
257         (Symbol.toPrimitive):
258         (0n.Symbol.toPrimitive):
259         (valueOf):
260         (0n.valueOf):
261         (toString):
262         (0n.toString):
263         * test262/test/language/expressions/bitwise-xor/bigint-non-primitive.js:
264         (assert.sameValue.Symbol.toPrimitive):
265         (assert.sameValue.0b011n.Symbol.toPrimitive):
266         (assert.sameValue.valueOf):
267         (assert.sameValue.0b011n.valueOf):
268         (assert.sameValue.toString):
269         (assert.sameValue.0b011n.toString):
270         * test262/test/language/expressions/bitwise-xor/bigint-toprimitive.js:
271         * test262/test/language/expressions/bitwise-xor/bigint-wrapped-values.js:
272         * test262/test/language/expressions/division/bigint-and-number.js:
273         * test262/test/language/expressions/division/bigint-arithmetic.js:
274         (testDiv): Deleted.
275         * test262/test/language/expressions/division/bigint-complex-infinity.js:
276         * test262/test/language/expressions/division/bigint-errors.js:
277         (Symbol.toPrimitive):
278         (0n.Symbol.toPrimitive):
279         (valueOf):
280         (0n.valueOf):
281         (toString):
282         (0n.toString):
283         * test262/test/language/expressions/division/bigint-toprimitive.js:
284         * test262/test/language/expressions/division/bigint-wrapped-values.js:
285         * test262/test/language/expressions/does-not-equals/bigint-and-bigint.js:
286         * test262/test/language/expressions/does-not-equals/bigint-and-boolean.js:
287         * test262/test/language/expressions/does-not-equals/bigint-and-incomparable-primitive.js:
288         * test262/test/language/expressions/does-not-equals/bigint-and-non-finite.js:
289         * test262/test/language/expressions/does-not-equals/bigint-and-number-extremes.js:
290         * test262/test/language/expressions/does-not-equals/bigint-and-number.js:
291         * test262/test/language/expressions/does-not-equals/bigint-and-object.js:
292         (assert.sameValue.0n.valueOf):
293         (assert.sameValue.valueOf):
294         (assert.sameValue.0n.toString):
295         (assert.sameValue.toString):
296         (assert.sameValue.900719925474099101n.valueOf):
297         (assert.sameValue.900719925474099101n.toString):
298         * test262/test/language/expressions/does-not-equals/bigint-and-string.js:
299         * test262/test/language/expressions/equals/bigint-and-bigint.js:
300         * test262/test/language/expressions/equals/bigint-and-boolean.js:
301         * test262/test/language/expressions/equals/bigint-and-incomparable-primitive.js:
302         * test262/test/language/expressions/equals/bigint-and-non-finite.js:
303         * test262/test/language/expressions/equals/bigint-and-number-extremes.js:
304         * test262/test/language/expressions/equals/bigint-and-number.js:
305         * test262/test/language/expressions/equals/bigint-and-object.js:
306         (assert.sameValue.0n.valueOf):
307         (assert.sameValue.valueOf):
308         (assert.sameValue.0n.toString):
309         (assert.sameValue.toString):
310         (assert.sameValue.900719925474099101n.valueOf):
311         (assert.sameValue.900719925474099101n.toString):
312         * test262/test/language/expressions/equals/bigint-and-string.js:
313         * test262/test/language/expressions/exponentiation/bigint-and-number.js:
314         * test262/test/language/expressions/exponentiation/bigint-arithmetic.js:
315         (testExpt): Deleted.
316         * test262/test/language/expressions/exponentiation/bigint-errors.js:
317         (Symbol.toPrimitive):
318         (0n.Symbol.toPrimitive):
319         (valueOf):
320         (0n.valueOf):
321         (toString):
322         (0n.toString):
323         * test262/test/language/expressions/exponentiation/bigint-negative-exponent-throws.js: Renamed from JSTests/test262/test/language/expressions/exponentiation/bigint-exp-operator-negative-throws.js.
324         * test262/test/language/expressions/exponentiation/bigint-toprimitive.js:
325         * test262/test/language/expressions/exponentiation/bigint-wrapped-values.js:
326         * test262/test/language/expressions/exponentiation/bigint-zero-base-zero-exponent.js:
327         * test262/test/language/expressions/greater-than-or-equal/bigint-and-bigint.js:
328         * test262/test/language/expressions/greater-than-or-equal/bigint-and-incomparable-string.js:
329         * test262/test/language/expressions/greater-than-or-equal/bigint-and-non-finite.js:
330         * test262/test/language/expressions/greater-than-or-equal/bigint-and-number-extremes.js:
331         * test262/test/language/expressions/greater-than-or-equal/bigint-and-number.js:
332         * test262/test/language/expressions/greater-than-or-equal/bigint-and-string.js:
333         * test262/test/language/expressions/greater-than/11.8.2-1.js:
334         (obj1.valueOf):
335         (obj2.valueOf):
336         * test262/test/language/expressions/greater-than/11.8.2-2.js:
337         (obj1.valueOf):
338         (obj2.toString):
339         * test262/test/language/expressions/greater-than/11.8.2-3.js:
340         (obj1.toString):
341         (obj2.valueOf):
342         * test262/test/language/expressions/greater-than/11.8.2-4.js:
343         (obj1.toString):
344         (obj2.toString):
345         * test262/test/language/expressions/greater-than/bigint-and-bigint.js:
346         * test262/test/language/expressions/greater-than/bigint-and-boolean.js:
347         * test262/test/language/expressions/greater-than/bigint-and-incomparable-string.js:
348         * test262/test/language/expressions/greater-than/bigint-and-non-finite.js:
349         * test262/test/language/expressions/greater-than/bigint-and-number-extremes.js:
350         * test262/test/language/expressions/greater-than/bigint-and-number.js:
351         * test262/test/language/expressions/greater-than/bigint-and-string.js:
352         * test262/test/language/expressions/greater-than/bigint-and-symbol.js: Added.
353         * test262/test/language/expressions/left-shift/bigint-and-number.js:
354         * test262/test/language/expressions/left-shift/bigint-errors.js:
355         (Symbol.toPrimitive):
356         (0n.Symbol.toPrimitive):
357         (valueOf):
358         (0n.valueOf):
359         (toString):
360         (0n.toString):
361         * test262/test/language/expressions/left-shift/bigint-non-primitive.js:
362         (assert.sameValue.Symbol.toPrimitive):
363         (assert.sameValue.valueOf):
364         (assert.sameValue.toString):
365         (assert.sameValue.0b101n.Symbol.toPrimitive):
366         (assert.sameValue.0b101n.valueOf):
367         (assert.sameValue.0b101n.toString):
368         (valueOf):
369         * test262/test/language/expressions/left-shift/bigint-toprimitive.js:
370         * test262/test/language/expressions/left-shift/bigint-wrapped-values.js:
371         * test262/test/language/expressions/less-than-or-equal/11.8.3-1.js:
372         (obj1.valueOf):
373         (obj2.valueOf):
374         * test262/test/language/expressions/less-than-or-equal/11.8.3-2.js:
375         (obj1.valueOf):
376         (obj2.toString):
377         * test262/test/language/expressions/less-than-or-equal/11.8.3-3.js:
378         (obj1.toString):
379         (obj2.valueOf):
380         * test262/test/language/expressions/less-than-or-equal/11.8.3-4.js:
381         (obj1.toString):
382         (obj2.toString):
383         * test262/test/language/expressions/less-than-or-equal/11.8.3-5.js: Removed.
384         * test262/test/language/expressions/less-than-or-equal/bigint-and-bigint.js:
385         * test262/test/language/expressions/less-than-or-equal/bigint-and-incomparable-string.js:
386         * test262/test/language/expressions/less-than-or-equal/bigint-and-non-finite.js:
387         * test262/test/language/expressions/less-than-or-equal/bigint-and-number-extremes.js:
388         * test262/test/language/expressions/less-than-or-equal/bigint-and-number.js:
389         * test262/test/language/expressions/less-than-or-equal/bigint-and-string.js:
390         * test262/test/language/expressions/less-than/bigint-and-bigint.js:
391         * test262/test/language/expressions/less-than/bigint-and-boolean.js:
392         * test262/test/language/expressions/less-than/bigint-and-incomparable-string.js:
393         * test262/test/language/expressions/less-than/bigint-and-non-finite.js:
394         * test262/test/language/expressions/less-than/bigint-and-number-extremes.js:
395         * test262/test/language/expressions/less-than/bigint-and-number.js:
396         * test262/test/language/expressions/less-than/bigint-and-string.js:
397         * test262/test/language/expressions/less-than/bigint-and-symbol.js: Added.
398         * test262/test/language/expressions/modulus/bigint-and-number.js:
399         * test262/test/language/expressions/modulus/bigint-arithmetic.js:
400         (testMod): Deleted.
401         * test262/test/language/expressions/modulus/bigint-errors.js:
402         (Symbol.toPrimitive):
403         (0n.Symbol.toPrimitive):
404         (valueOf):
405         (0n.valueOf):
406         (toString):
407         (0n.toString):
408         * test262/test/language/expressions/modulus/bigint-modulo-zero.js:
409         * test262/test/language/expressions/modulus/bigint-toprimitive.js:
410         * test262/test/language/expressions/modulus/bigint-wrapped-values.js:
411         * test262/test/language/expressions/multiplication/bigint-and-number.js:
412         * test262/test/language/expressions/multiplication/bigint-arithmetic.js:
413         (testMul): Deleted.
414         * test262/test/language/expressions/multiplication/bigint-errors.js:
415         (Symbol.toPrimitive):
416         (0n.Symbol.toPrimitive):
417         (valueOf):
418         (0n.valueOf):
419         (toString):
420         (0n.toString):
421         * test262/test/language/expressions/multiplication/bigint-toprimitive.js:
422         * test262/test/language/expressions/multiplication/bigint-wrapped-values.js:
423         * test262/test/language/expressions/right-shift/bigint-and-number.js:
424         * test262/test/language/expressions/right-shift/bigint-errors.js:
425         (Symbol.toPrimitive):
426         (0n.Symbol.toPrimitive):
427         (valueOf):
428         (0n.valueOf):
429         (toString):
430         (0n.toString):
431         * test262/test/language/expressions/right-shift/bigint-non-primitive.js:
432         (assert.sameValue.Symbol.toPrimitive):
433         (assert.sameValue.valueOf):
434         (assert.sameValue.toString):
435         (assert.sameValue.0b101n.Symbol.toPrimitive):
436         (assert.sameValue.0b101n.valueOf):
437         (assert.sameValue.0b101n.toString):
438         (valueOf):
439         * test262/test/language/expressions/right-shift/bigint-toprimitive.js:
440         * test262/test/language/expressions/right-shift/bigint-wrapped-values.js:
441         * test262/test/language/expressions/strict-does-not-equals/bigint-and-bigint.js:
442         * test262/test/language/expressions/strict-does-not-equals/bigint-and-boolean.js:
443         * test262/test/language/expressions/strict-does-not-equals/bigint-and-incomparable-primitive.js:
444         * test262/test/language/expressions/strict-does-not-equals/bigint-and-non-finite.js:
445         * test262/test/language/expressions/strict-does-not-equals/bigint-and-number-extremes.js:
446         * test262/test/language/expressions/strict-does-not-equals/bigint-and-number.js:
447         * test262/test/language/expressions/strict-does-not-equals/bigint-and-object.js:
448         (assert.sameValue.0n.valueOf):
449         (assert.sameValue.valueOf):
450         (assert.sameValue.0n.toString):
451         (assert.sameValue.toString):
452         (assert.sameValue.900719925474099101n.valueOf):
453         (assert.sameValue.900719925474099101n.toString):
454         * test262/test/language/expressions/strict-does-not-equals/bigint-and-string.js:
455         * test262/test/language/expressions/strict-equals/bigint-and-bigint.js:
456         * test262/test/language/expressions/strict-equals/bigint-and-boolean.js:
457         * test262/test/language/expressions/strict-equals/bigint-and-incomparable-primitive.js:
458         * test262/test/language/expressions/strict-equals/bigint-and-non-finite.js:
459         * test262/test/language/expressions/strict-equals/bigint-and-number-extremes.js:
460         * test262/test/language/expressions/strict-equals/bigint-and-number.js:
461         * test262/test/language/expressions/strict-equals/bigint-and-object.js:
462         (assert.sameValue.0n.valueOf):
463         (assert.sameValue.valueOf):
464         (assert.sameValue.0n.toString):
465         (assert.sameValue.toString):
466         (assert.sameValue.900719925474099101n.valueOf):
467         (assert.sameValue.900719925474099101n.toString):
468         * test262/test/language/expressions/strict-equals/bigint-and-string.js:
469         * test262/test/language/expressions/subtraction/bigint-and-number.js:
470         * test262/test/language/expressions/subtraction/bigint-arithmetic.js:
471         (testSub): Deleted.
472         * test262/test/language/expressions/subtraction/bigint-errors.js:
473         (Symbol.toPrimitive):
474         (0n.Symbol.toPrimitive):
475         (valueOf):
476         (0n.valueOf):
477         (toString):
478         (0n.toString):
479         * test262/test/language/expressions/subtraction/bigint-toprimitive.js:
480         * test262/test/language/expressions/subtraction/bigint-wrapped-values.js:
481         * test262/test/language/expressions/unary-minus/bigint-non-primitive.js:
482         (assert.sameValue.Symbol.toPrimitive):
483         (assert.sameValue.valueOf):
484         (assert.sameValue.toString):
485         * test262/test/language/expressions/unary-plus/bigint-throws.js:
486         * test262/test/language/expressions/unsigned-right-shift/bigint-and-number.js:
487         * test262/test/language/expressions/unsigned-right-shift/bigint-errors.js:
488         (Symbol.toPrimitive):
489         (0n.Symbol.toPrimitive):
490         (valueOf):
491         (0n.valueOf):
492         (toString):
493         (0n.toString):
494         * test262/test/language/expressions/unsigned-right-shift/bigint-non-primitive.js:
495         (Symbol.toPrimitive):
496         (valueOf):
497         (toString):
498         (0b101n.Symbol.toPrimitive):
499         (0b101n.valueOf):
500         (0b101n.toString):
501         (valueOf.valueOf):
502         * test262/test/language/expressions/unsigned-right-shift/bigint-toprimitive.js:
503         * test262/test/language/expressions/unsigned-right-shift/bigint-wrapped-values.js:
504         * test262/test/language/literals/numeric/numeric-followed-by-ident.js: Added.
505         * test262/test/language/literals/string/line-continuation-double.js: Added.
506         * test262/test/language/literals/string/line-continuation-single.js: Added.
507         * test262/test262-Revision.txt:
508
509 2018-05-25  Mark Lam  <mark.lam@apple.com>
510
511         for-in loops should preserve and restore the TDZ stack for each of its internal loops.
512         https://bugs.webkit.org/show_bug.cgi?id=185995
513         <rdar://problem/40173142>
514
515         Reviewed by Saam Barati.
516
517         * stress/regress-185995.js: Added.
518
519 2018-05-23  Keith Miller  <keith_miller@apple.com>
520
521         Define length on CoW array should properly convert to writable
522         https://bugs.webkit.org/show_bug.cgi?id=185927
523
524         Reviewed by Yusuke Suzuki.
525
526         * stress/cow-define-length-as-value.js: Added.
527         (test):
528
529 2018-05-23  Michael Saboff  <msaboff@apple.com>
530
531         Date.parse() doesn't properly handle input outside of ES Spec limits
532         https://bugs.webkit.org/show_bug.cgi?id=185868
533
534         Reviewed by Mark Lam.
535
536         New test.
537
538         * stress/date-parse-ranges.js: Added.
539         (shouldBe):
540         (throw.new.Error):
541         (shouldBeNaN):
542
543 2018-05-23  Rick Waldron  <waldron.rick@gmail.com>
544
545         Conversion misspelled "Convertion" in error message string
546         https://bugs.webkit.org/show_bug.cgi?id=185436
547
548         Reviewed by Saam Barati, Michael Saboff.
549
550         * bigIntTests.yaml:
551
552 2018-05-23  Yusuke Suzuki  <utatane.tea@gmail.com>
553
554         Unreviewed, skip test if memoryLimited is specified
555         https://bugs.webkit.org/show_bug.cgi?id=185888
556
557         * stress/regress-185888.js:
558
559 2018-05-22  Mark Lam  <mark.lam@apple.com>
560
561         BytecodeGeneratorification shouldn't add a ValueProfile if the JIT is disabled.
562         https://bugs.webkit.org/show_bug.cgi?id=185896
563         <rdar://problem/40471403>
564
565         Reviewed by Saam Barati.
566
567         * stress/regress-185896.js: Added.
568
569 2018-05-22  Yusuke Suzuki  <utatane.tea@gmail.com>
570
571         [JSC] Fix CachedCall's argument count if RegExp has named captures
572         https://bugs.webkit.org/show_bug.cgi?id=185587
573
574         Reviewed by Mark Lam.
575
576         * test262/expectations.yaml:
577
578 2018-05-22  Mark Lam  <mark.lam@apple.com>
579
580         StringImpl utf8 conversion should not fail silently.
581         https://bugs.webkit.org/show_bug.cgi?id=185888
582         <rdar://problem/40464506>
583
584         Reviewed by Filip Pizlo.
585
586         * stress/regress-185888.js: Added.
587
588 2018-05-22  Keith Miller  <keith_miller@apple.com>
589
590         We should have a CoW storage for NewArrayBuffer arrays.
591         https://bugs.webkit.org/show_bug.cgi?id=185003
592
593         Reviewed by Filip Pizlo.
594
595         * stress/cow-convert-contiguous-to-array-storage.js: Added.
596         (createBuffer):
597         (shouldBe):
598         (test):
599         * stress/cow-convert-double-to-array-storage.js: Added.
600         (createBuffer):
601         (shouldBe):
602         (test):
603         * stress/cow-convert-double-to-contiguous.js: Added.
604         (createBuffer):
605         (shouldBe):
606         (test):
607         * stress/cow-convert-int32-to-array-storage.js: Added.
608         (createBuffer):
609         (shouldBe):
610         (test):
611         * stress/cow-convert-int32-to-contiguous.js: Added.
612         (createBuffer):
613         (shouldBe):
614         (test):
615         * stress/cow-convert-int32-to-double.js: Added.
616         (createBuffer):
617         (shouldBe):
618         (test):
619         * stress/put-on-cow-prototype.js: Added.
620         (putByVal):
621         (putById):
622
623 2018-05-21  Yusuke Suzuki  <utatane.tea@gmail.com>
624
625         Unreviewed, reland InById cache
626         https://bugs.webkit.org/show_bug.cgi?id=185682
627
628         * stress/in-by-id-accessors.js: Added.
629         (shouldBe):
630         (test):
631         (protoGetter.__proto__.get hello):
632         (protoSetter.__proto__.set hello):
633         (i.shouldBe.test.get hello):
634         (i.shouldBe.test.set hello):
635         * stress/in-by-id-ai.js: Added.
636         (shouldBe):
637         (test):
638         * stress/in-by-id-custom-accessors.js: Added.
639         (shouldBe):
640         (test1):
641         (test2):
642         * stress/in-by-id-custom-values.js: Added.
643         (shouldBe):
644         (test):
645         * stress/in-by-id-operation.js: Added.
646         (shouldBe):
647         (test):
648         (selfCache):
649         * stress/in-by-id-proxy.js: Added.
650         (shouldBe):
651         (test):
652         (handler.has):
653
654 2018-05-21  Commit Queue  <commit-queue@webkit.org>
655
656         Unreviewed, rolling out r231998 and r232017.
657         https://bugs.webkit.org/show_bug.cgi?id=185842
658
659         causes crashes on 32 JSC bot (Requested by realdawei on
660         #webkit).
661
662         Reverted changesets:
663
664         "[JSC] JSC should have consistent InById IC"
665         https://bugs.webkit.org/show_bug.cgi?id=185682
666         https://trac.webkit.org/changeset/231998
667
668         "Unreviewed, fix 32bit and scope release"
669         https://bugs.webkit.org/show_bug.cgi?id=185682
670         https://trac.webkit.org/changeset/232017
671
672 2018-05-19  Yusuke Suzuki  <utatane.tea@gmail.com>
673
674         [JSC] JSC should have consistent InById IC
675         https://bugs.webkit.org/show_bug.cgi?id=185682
676
677         Reviewed by Filip Pizlo.
678
679         * stress/in-by-id-accessors.js: Added.
680         (shouldBe):
681         (test):
682         (protoGetter.__proto__.get hello):
683         (protoSetter.__proto__.set hello):
684         (i.shouldBe.test.get hello):
685         (i.shouldBe.test.set hello):
686         * stress/in-by-id-ai.js: Added.
687         (shouldBe):
688         (test):
689         * stress/in-by-id-custom-accessors.js: Added.
690         (shouldBe):
691         (test1):
692         (test2):
693         * stress/in-by-id-custom-values.js: Added.
694         (shouldBe):
695         (test):
696         * stress/in-by-id-operation.js: Added.
697         (shouldBe):
698         (test):
699         (selfCache):
700         * stress/in-by-id-proxy.js: Added.
701         (shouldBe):
702         (test):
703         (handler.has):
704
705 2018-05-18  Keith Miller  <keith_miller@apple.com>
706
707         op_in should mark if it sees out of bounds accesses
708         https://bugs.webkit.org/show_bug.cgi?id=185792
709
710         Reviewed by Filip Pizlo.
711
712         * stress/has-indexed-property-array-storage-ftl.js:
713         (test2):
714         * stress/has-indexed-property-slow-put-array-storage-ftl.js:
715         (test2):
716
717 2018-05-18  Mark Lam  <mark.lam@apple.com>
718
719         Add missing exception check.
720         https://bugs.webkit.org/show_bug.cgi?id=185786
721         <rdar://problem/35686560>
722
723         Reviewed by Michael Saboff.
724
725         * stress/regress-185786.js: Added.
726
727 2018-05-16  Filip Pizlo  <fpizlo@apple.com>
728
729         JSC should have InstanceOf inline caching
730         https://bugs.webkit.org/show_bug.cgi?id=185652
731
732         Reviewed by Saam Barati.
733
734         * microbenchmarks/instanceof-always-hit-one.js: Added.
735         * microbenchmarks/instanceof-always-hit-two.js: Added.
736         * microbenchmarks/instanceof-dynamic.js: Added.
737         * microbenchmarks/instanceof-sometimes-hit.js: Added.
738         * stress/instanceof-dynamic-proxy-check-structure.js: Added.
739         * stress/instanceof-dynamic-proxy-loop.js: Added.
740         * stress/instanceof-dynamic-proxy.js: Added.
741         * stress/instanceof-hit-one-object-then-another.js: Added.
742         * stress/instanceof-hit-two-objects-then-another.js: Added.
743         * stress/instanceof-prototype-change.js: Added.
744         * stress/instanceof-prototype-change-to-hit.js: Added.
745         * stress/instanceof-prototype-change-to-null.js: Added.
746         * stress/instanceof-prototype-change-watchpointable.js: Added.
747
748 2018-05-17  Michael Saboff  <msaboff@apple.com>
749
750         We don't throw SyntaxErrors for runtime generated regular expressions with errors
751         https://bugs.webkit.org/show_bug.cgi?id=185755
752
753         Reviewed by Keith Miller.
754
755         New regression test.
756
757         * stress/regexp-with-runtime-syntax-errors.js: Added.
758         (testThrowsSyntaxtError):
759         (fromExecWithBadUnicodeEscape):
760         (fromTestWithBadUnicodeProperty):
761         (fromSplitWithBadUnicodeIdentity):
762         (fromMatchWithBadUnicodeBackReference):
763         (fromReplaceWithBadUnicodeEscape):
764         (fromSearchWithBadUnicodeEscape):
765
766 2018-05-16  Caio Lima  <ticaiolima@gmail.com>
767
768         [ESNext][BigInt] Implement support for "/" operation
769         https://bugs.webkit.org/show_bug.cgi?id=183996
770
771         Reviewed by Yusuke Suzuki.
772
773         * bigIntTests.yaml:
774         * stress/big-int-div-jit.js: Added.
775         * stress/big-int-div-memory-stress.js: Added.
776         * stress/big-int-div-to-primitive-precedence.js: Added.
777         * stress/big-int-div-to-primitive.js: Added.
778         * stress/big-int-div-type-error.js: Added.
779         * stress/big-int-div-wrapped-value.js: Added.
780         * stress/big-int-division.js: Added.
781
782 2018-05-16  Saam Barati  <sbarati@apple.com>
783
784         Constant fold CheckTypeInfoFlags on ImplementsDefaultHasInstance
785         https://bugs.webkit.org/show_bug.cgi?id=185670
786
787         Reviewed by Yusuke Suzuki.
788
789         * microbenchmarks/constant-fold-check-type-info-flags.js: Added.
790         * stress/dont-constant-fold-check-type-info-on-bound-function.js: Added.
791
792 2018-05-16  Commit Queue  <commit-queue@webkit.org>
793
794         Unreviewed, rolling out r231845.
795         https://bugs.webkit.org/show_bug.cgi?id=185702
796
797         it is breaking Apple High Sierra 32-bit JSC bot (Requested by
798         caiolima on #webkit).
799
800         Reverted changeset:
801
802         "[ESNext][BigInt] Implement support for "/" operation"
803         https://bugs.webkit.org/show_bug.cgi?id=183996
804         https://trac.webkit.org/changeset/231845
805
806 2018-05-16  Filip Pizlo  <fpizlo@apple.com>
807
808         DFG models InstanceOf incorrectly
809         https://bugs.webkit.org/show_bug.cgi?id=185694
810
811         Reviewed by Keith Miller.
812
813         * stress/instanceof-proxy-check-structure.js: Added.
814         (Foo):
815         (Bar):
816         (doBadThings):
817         (getPrototypeOf):
818         (foo):
819         (i.new.Bar):
820         (new.Bar):
821         * stress/instanceof-proxy-loop.js: Added.
822         (Foo):
823         (Bar):
824         (doBadThings):
825         (getPrototypeOf):
826         (foo):
827         * stress/instanceof-proxy.js: Added.
828         (Foo):
829         (Bar):
830         (doBadThings):
831         (getPrototypeOf):
832         (foo):
833
834 2018-05-16  Caio Lima  <ticaiolima@gmail.com>
835
836         [ESNext][BigInt] Implement support for "/" operation
837         https://bugs.webkit.org/show_bug.cgi?id=183996
838
839         Reviewed by Yusuke Suzuki.
840
841         * bigIntTests.yaml:
842         * stress/big-int-div-jit.js: Added.
843         * stress/big-int-div-memory-stress.js: Added.
844         * stress/big-int-div-to-primitive-precedence.js: Added.
845         * stress/big-int-div-to-primitive.js: Added.
846         * stress/big-int-div-type-error.js: Added.
847         * stress/big-int-div-wrapped-value.js: Added.
848         * stress/big-int-division.js: Added.
849
850 2018-05-14  Leo Balter  <leonardo.balter@gmail.com>
851
852         Fix a legacy CRLF eol from Test262
853         https://bugs.webkit.org/show_bug.cgi?id=185565
854
855         Reviewed by Yusuke Suzuki.
856
857         * test262/config.yaml:
858         * test262/test/built-ins/Math/cbrt/prop-desc.js:
859
860 2018-05-14  Yusuke Suzuki  <utatane.tea@gmail.com>
861
862         [JSC] timeClip(-0) should produce +0
863         https://bugs.webkit.org/show_bug.cgi?id=185589
864
865         Reviewed by Saam Barati.
866
867         Fix several test262 failures.
868
869         * stress/date-negative-zero.js: Added.
870         (shouldBe):
871         * test262/expectations.yaml:
872
873 2018-05-13  Caio Lima  <ticaiolima@gmail.com>
874
875         [BigInt] stress/big-int-spec-to-primitive.js test is failing
876         https://bugs.webkit.org/show_bug.cgi?id=185582
877
878         Reviewed by Yusuke Suzuki.
879
880         This patch is removing the use of ```numberOfDFGCompiles``` from 
881         stress/big-int-spec-to-primitive.js because it makes this est fail
882         sometimes.
883
884         * stress/big-int-spec-to-primitive.js:
885
886 2018-05-13  Andy VanWagoner  <andy@vanwagoner.family>
887
888         [INTL] Improve spec & test262 compliance for Intl APIs
889         https://bugs.webkit.org/show_bug.cgi?id=185578
890
891         Reviewed by Yusuke Suzuki.
892
893         Remove intl402 failures that have been fixed.
894
895         * test262/expectations.yaml:
896         * stress/regress-178385.js: toStringTag is configurable, but not writable.
897
898 2018-05-11  Caio Lima  <ticaiolima@gmail.com>
899
900         [ESNext][BigInt] Implement support for "*" operation
901         https://bugs.webkit.org/show_bug.cgi?id=183721
902
903         Reviewed by Yusuke Suzuki.
904
905         * bigIntTests.yaml:
906         * stress/big-int-mul-jit.js: Added.
907         * stress/big-int-mul-to-primitive-precedence.js: Added.
908         * stress/big-int-mul-to-primitive.js: Added.
909         * stress/big-int-mul-type-error.js: Added.
910         * stress/big-int-mul-wrapped-value.js: Added.
911         * stress/big-int-multiplication.js: Added.
912         * stress/big-int-multiply-memory-stress.js: Added.
913
914 2018-05-11  Michael Saboff  <msaboff@apple.com>
915
916         [DFG] Compiler uses incorrect output register for NumberIsInteger operation
917         https://bugs.webkit.org/show_bug.cgi?id=185328
918
919         Reviewed by Keith Miller.
920
921         New regression test.
922
923         * stress/isInteger-doesnt-overwrite-argument.js: Added.
924         (testIsInteger):
925
926 2018-05-09  Yusuke Suzuki  <utatane.tea@gmail.com>
927
928         [JSC] Object.assign for final objects should be faster
929         https://bugs.webkit.org/show_bug.cgi?id=185348
930
931         Reviewed by Saam Barati.
932
933         * stress/object-assign-fast-path.js: Added.
934         (shouldBe):
935         (checkProperty):
936
937 2018-05-10  Leo Balter  <leonardo.balter@gmail.com>
938
939         Update Test262 tests through the new import script - 20180509
940         https://bugs.webkit.org/show_bug.cgi?id=185482
941
942         Reviewed by Michael Saboff.
943
944         Also update the test262/expecatations.yaml with the recent imported files.
945
946         * test262/expectations.yaml:
947         * test262/harness/compareIterator.js: Added.
948         (assert.compareIterator):
949         * test262/harness/nativeFunctionMatcher.js:
950         (const.assertToStringOrNativeFunction):
951         (const.assertNativeFunction):
952         * test262/harness/regExpUtils.js:
953         * test262/harness/testIntl.js:
954         (getInvalidLanguageTags):
955         * test262/harness/testTypedArray.js:
956         * test262/harness/wellKnownIntrinsicObjects.js: Added.
957         (WellKnownIntrinsicObjects.forEach.wkio.catch):
958         * test262/latest-changes-summary.txt: Added.
959         * test262/test/annexB/language/eval-code/direct/block-decl-nostrict.js: Copied from JSTests/test262/test/language/eval-code/direct/block-decl-strict-caller.js.
960         (catch):
961         * test262/test/annexB/language/eval-code/direct/switch-case-decl-nostrict.js: Copied from JSTests/test262/test/language/eval-code/direct/switch-case-decl-strict-source.js.
962         (catch):
963         * test262/test/annexB/language/eval-code/direct/switch-dflt-decl-nostrict.js: Copied from JSTests/test262/test/language/eval-code/direct/switch-dflt-decl-strict-caller.js.
964         (catch):
965         * test262/test/annexB/language/function-code/block-decl-nested-blocks-with-fun-decl.js: Added.
966         (g.f):
967         (g):
968         * test262/test/annexB/language/function-code/block-decl-nostrict.js: Copied from JSTests/test262/test/language/function-code/block-decl-strict.js.
969         (catch):
970         (f):
971         * test262/test/annexB/language/function-code/switch-case-decl-nostrict.js: Copied from JSTests/test262/test/language/function-code/switch-case-decl-strict.js.
972         (catch):
973         (switch.case.1):
974         (switch):
975         * test262/test/annexB/language/function-code/switch-dflt-decl-nostrict.js: Copied from JSTests/test262/test/language/function-code/switch-dflt-decl-strict.js.
976         (catch):
977         (switch.default):
978         (switch):
979         * test262/test/built-ins/Array/prototype/filter/target-array-with-non-writable-property.js: Added.
980         (a.Symbol.species):
981         (r.a.filter):
982         * test262/test/built-ins/Array/prototype/indexOf/calls-only-has-on-prototype-after-length-zeroed.js: Added.
983         (allowProxyTraps.has):
984         (fromIndex.valueOf):
985         * test262/test/built-ins/Array/prototype/lastIndexOf/calls-only-has-on-prototype-after-length-zeroed.js: Added.
986         (allowProxyTraps.has):
987         (fromIndex.valueOf):
988         * test262/test/built-ins/Array/prototype/map/target-array-with-non-writable-property.js: Added.
989         (a.Symbol.species):
990         (r.a.map):
991         * test262/test/built-ins/Array/prototype/slice/target-array-with-non-writable-property.js: Added.
992         (a.Symbol.species):
993         * test262/test/built-ins/Array/prototype/splice/property-traps-order-with-species.js: Added.
994         (a.Symbol.species):
995         * test262/test/built-ins/Array/prototype/splice/target-array-with-non-writable-property.js: Added.
996         (a.Symbol.species):
997         * test262/test/built-ins/Atomics/Symbol.toStringTag.js:
998         * test262/test/built-ins/Atomics/add/bad-range.js:
999         (testWithTypedArrayConstructors):
1000         * test262/test/built-ins/Atomics/add/good-views.js:
1001         (testWithTypedArrayConstructors):
1002         * test262/test/built-ins/Atomics/add/non-views.js:
1003         * test262/test/built-ins/Atomics/add/nonshared-int-views.js:
1004         (testWithTypedArrayConstructors):
1005         * test262/test/built-ins/Atomics/add/shared-nonint-views.js:
1006         (testWithTypedArrayConstructors):
1007         * test262/test/built-ins/Atomics/and/bad-range.js:
1008         (testWithTypedArrayConstructors):
1009         * test262/test/built-ins/Atomics/and/good-views.js:
1010         (testWithTypedArrayConstructors):
1011         * test262/test/built-ins/Atomics/and/non-views.js:
1012         * test262/test/built-ins/Atomics/and/nonshared-int-views.js:
1013         (testWithTypedArrayConstructors):
1014         * test262/test/built-ins/Atomics/and/shared-nonint-views.js:
1015         (testWithTypedArrayConstructors):
1016         * test262/test/built-ins/Atomics/compareExchange/bad-range.js:
1017         (testWithTypedArrayConstructors):
1018         * test262/test/built-ins/Atomics/compareExchange/good-views.js:
1019         (testWithTypedArrayConstructors):
1020         (view): Deleted.
1021         * test262/test/built-ins/Atomics/compareExchange/non-views.js:
1022         * test262/test/built-ins/Atomics/compareExchange/nonshared-int-views.js:
1023         (testWithTypedArrayConstructors):
1024         * test262/test/built-ins/Atomics/compareExchange/shared-nonint-views.js:
1025         (testWithTypedArrayConstructors):
1026         * test262/test/built-ins/Atomics/exchange/bad-range.js:
1027         (testWithTypedArrayConstructors):
1028         * test262/test/built-ins/Atomics/exchange/good-views.js:
1029         (testWithTypedArrayConstructors):
1030         * test262/test/built-ins/Atomics/exchange/non-views.js:
1031         * test262/test/built-ins/Atomics/exchange/nonshared-int-views.js:
1032         (testWithTypedArrayConstructors):
1033         * test262/test/built-ins/Atomics/exchange/shared-nonint-views.js:
1034         (testWithTypedArrayConstructors):
1035         * test262/test/built-ins/Atomics/isLockFree/corner-cases.js:
1036         (hide):
1037         * test262/test/built-ins/Atomics/isLockFree/value.js:
1038         (testIsLockFree): Deleted.
1039         * test262/test/built-ins/Atomics/load/bad-range.js:
1040         (testWithTypedArrayConstructors):
1041         * test262/test/built-ins/Atomics/load/good-views.js:
1042         (testWithTypedArrayConstructors):
1043         * test262/test/built-ins/Atomics/load/non-views.js:
1044         * test262/test/built-ins/Atomics/load/nonshared-int-views.js:
1045         (testWithTypedArrayConstructors):
1046         * test262/test/built-ins/Atomics/load/shared-nonint-views.js:
1047         (testWithTypedArrayConstructors):
1048         * test262/test/built-ins/Atomics/or/bad-range.js:
1049         (testWithTypedArrayConstructors):
1050         * test262/test/built-ins/Atomics/or/good-views.js:
1051         (testWithTypedArrayConstructors):
1052         * test262/test/built-ins/Atomics/or/non-views.js:
1053         * test262/test/built-ins/Atomics/or/nonshared-int-views.js:
1054         (testWithTypedArrayConstructors):
1055         * test262/test/built-ins/Atomics/or/shared-nonint-views.js:
1056         (testWithTypedArrayConstructors):
1057         * test262/test/built-ins/Atomics/prop-desc.js:
1058         * test262/test/built-ins/Atomics/proto.js:
1059         * test262/test/built-ins/Atomics/store/bad-range.js:
1060         (testWithTypedArrayConstructors):
1061         * test262/test/built-ins/Atomics/store/good-views.js:
1062         (testWithTypedArrayConstructors):
1063         (ToInteger):
1064         * test262/test/built-ins/Atomics/store/non-views.js:
1065         * test262/test/built-ins/Atomics/store/nonshared-int-views.js:
1066         (testWithTypedArrayConstructors):
1067         * test262/test/built-ins/Atomics/store/shared-nonint-views.js:
1068         (testWithTypedArrayConstructors):
1069         * test262/test/built-ins/Atomics/sub/bad-range.js:
1070         (testWithTypedArrayConstructors):
1071         * test262/test/built-ins/Atomics/sub/good-views.js:
1072         (testWithTypedArrayConstructors):
1073         * test262/test/built-ins/Atomics/sub/non-views.js:
1074         * test262/test/built-ins/Atomics/sub/nonshared-int-views.js:
1075         (testWithTypedArrayConstructors):
1076         * test262/test/built-ins/Atomics/sub/shared-nonint-views.js:
1077         (testWithTypedArrayConstructors):
1078         * test262/test/built-ins/Atomics/wait/bad-range.js: Copied from JSTests/test262/test/built-ins/Atomics/wake/bad-range.js.
1079         (testWithTypedArrayConstructors):
1080         * test262/test/built-ins/Atomics/wait/cannot-suspend-throws.js:
1081         * test262/test/built-ins/Atomics/wait/did-timeout.js:
1082         (getReport):
1083         * test262/test/built-ins/Atomics/wait/false-for-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/false-for-timeout.js.
1084         (getReport):
1085         (262.agent.start.valueOf.valueOf):
1086         (toPrimitive.Symbol.toPrimitive):
1087         (262.agent.receiveBroadcast):
1088         * test262/test/built-ins/Atomics/wait/false-for-timeout.js:
1089         (valueOf.valueOf):
1090         (toPrimitive.Symbol.toPrimitive):
1091         (getReport): Deleted.
1092         (262.agent.start.262.agent.receiveBroadcast): Deleted.
1093         * test262/test/built-ins/Atomics/wait/good-views.js:
1094         (r.getReport):
1095         (getReport):
1096         * test262/test/built-ins/Atomics/wait/nan-for-timeout.js:
1097         (getReport):
1098         * test262/test/built-ins/Atomics/wait/negative-index-throws.js:
1099         * test262/test/built-ins/Atomics/wait/negative-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/negative-timeout.js.
1100         (getReport):
1101         (262.agent.start.262.agent.receiveBroadcast):
1102         * test262/test/built-ins/Atomics/wait/negative-timeout.js:
1103         (262.agent.start.262.agent.receiveBroadcast): Deleted.
1104         (getReport): Deleted.
1105         * test262/test/built-ins/Atomics/wait/no-spurious-wakeup.js:
1106         (getReport):
1107         * test262/test/built-ins/Atomics/wait/non-int32-typedarray-throws.js:
1108         * test262/test/built-ins/Atomics/wait/non-shared-bufferdata-throws.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/nonshared-bufferdata-throws.js.
1109         * test262/test/built-ins/Atomics/wait/not-a-typedarray-throws.js:
1110         * test262/test/built-ins/Atomics/wait/not-an-object-throws.js:
1111         * test262/test/built-ins/Atomics/wait/null-bufferdata-throws.js:
1112         * test262/test/built-ins/Atomics/wait/null-for-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/false-for-timeout.js.
1113         (getReport):
1114         (262.agent.start.valueOf.valueOf):
1115         (toPrimitive.Symbol.toPrimitive):
1116         (262.agent.receiveBroadcast):
1117         * test262/test/built-ins/Atomics/wait/null-for-timeout.js:
1118         (valueOf.valueOf):
1119         (toPrimitive.Symbol.toPrimitive):
1120         (getReport): Deleted.
1121         (262.agent.start.262.agent.receiveBroadcast): Deleted.
1122         * test262/test/built-ins/Atomics/wait/object-for-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/false-for-timeout.js.
1123         (getReport):
1124         (262.agent.start.valueOf.valueOf):
1125         (toString.toString):
1126         (toPrimitive.Symbol.toPrimitive):
1127         (262.agent.receiveBroadcast):
1128         * test262/test/built-ins/Atomics/wait/object-for-timeout.js:
1129         (valueOf.valueOf):
1130         (toString.toString):
1131         (toPrimitive.Symbol.toPrimitive):
1132         (getReport): Deleted.
1133         (262.agent.start.262.agent.receiveBroadcast): Deleted.
1134         * test262/test/built-ins/Atomics/wait/out-of-range-index-throws.js:
1135         * test262/test/built-ins/Atomics/wait/poisoned-object-for-timeout-throws-agent.js: Added.
1136         (getReport):
1137         (262.agent.start.poisonedValueOf.valueOf):
1138         (poisonedToPrimitive.Symbol.toPrimitive):
1139         (262.agent.receiveBroadcast):
1140         * test262/test/built-ins/Atomics/wait/poisoned-object-for-timeout-throws.js:
1141         (poisonedValueOf.valueOf):
1142         (poisonedToPrimitive.Symbol.toPrimitive):
1143         (getReport): Deleted.
1144         (262.agent.start.262.agent.receiveBroadcast): Deleted.
1145         * test262/test/built-ins/Atomics/wait/symbol-for-index-throws-agent.js: Added.
1146         (getReport):
1147         (262.agent.start.poisonedValueOf.valueOf):
1148         (poisonedToPrimitive.Symbol.toPrimitive):
1149         (262.agent.receiveBroadcast):
1150         * test262/test/built-ins/Atomics/wait/symbol-for-index-throws.js:
1151         (poisonedToPrimitive.Symbol.toPrimitive):
1152         (poisoned.valueOf): Deleted.
1153         (poisonedWithString.get valueOf): Deleted.
1154         (poisonedToPrimitive.get Symbol): Deleted.
1155         * test262/test/built-ins/Atomics/wait/symbol-for-timeout-throws-agent.js: Added.
1156         (getReport):
1157         (262.agent.start.262.agent.receiveBroadcast):
1158         * test262/test/built-ins/Atomics/wait/symbol-for-timeout-throws.js:
1159         (poisonedValueOf.valueOf):
1160         (poisonedToPrimitive.Symbol.toPrimitive):
1161         (getReport): Deleted.
1162         (262.agent.start.262.agent.receiveBroadcast): Deleted.
1163         * test262/test/built-ins/Atomics/wait/symbol-for-value-throws-agent.js: Added.
1164         (getReport):
1165         (262.agent.start.poisonedValueOf.valueOf):
1166         (poisonedToPrimitive.Symbol.toPrimitive):
1167         (262.agent.receiveBroadcast):
1168         * test262/test/built-ins/Atomics/wait/symbol-for-value-throws.js: Added.
1169         (poisonedValueOf.valueOf):
1170         (poisonedToPrimitive.Symbol.toPrimitive):
1171         * test262/test/built-ins/Atomics/wait/true-for-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/null-for-timeout.js.
1172         (getReport):
1173         (262.agent.start.valueOf.valueOf):
1174         (toPrimitive.Symbol.toPrimitive):
1175         (262.agent.receiveBroadcast):
1176         * test262/test/built-ins/Atomics/wait/true-for-timeout.js:
1177         (valueOf.valueOf):
1178         (toPrimitive.Symbol.toPrimitive):
1179         (getReport): Deleted.
1180         (262.agent.start.262.agent.receiveBroadcast): Deleted.
1181         * test262/test/built-ins/Atomics/wait/undefined-for-timeout.js:
1182         (getReport):
1183         * test262/test/built-ins/Atomics/wait/undefined-index-defaults-to-zero.js:
1184         (262.agent.start.262.agent.receiveBroadcast):
1185         (getReport):
1186         * test262/test/built-ins/Atomics/wait/value-not-equal.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/wait-index-value-not-equal.js.
1187         (getReport):
1188         (262.agent.start.262.agent.receiveBroadcast):
1189         * test262/test/built-ins/Atomics/wait/wait-index-value-not-equal.js:
1190         (262.agent.start.262.agent.receiveBroadcast):
1191         * test262/test/built-ins/Atomics/wait/waiterlist-block-indexedposition-wake.js: Added.
1192         (getReport):
1193         (262.agent.start.262.agent.receiveBroadcast):
1194         * test262/test/built-ins/Atomics/wait/waiterlist-order-of-operations-is-fifo.js: Added.
1195         (getReport):
1196         (262.agent.start.262.agent.receiveBroadcast):
1197         * test262/test/built-ins/Atomics/wait/was-woken-before-timeout.js:
1198         (getReport):
1199         (262.agent.start.262.agent.receiveBroadcast):
1200         * test262/test/built-ins/Atomics/wait/was-woken.js:
1201         (getReport):
1202         (262.agent.start.262.agent.receiveBroadcast):
1203         * test262/test/built-ins/Atomics/wake/bad-range.js:
1204         (testWithTypedArrayConstructors):
1205         * test262/test/built-ins/Atomics/wake/count-boundary-cases.js: Renamed from JSTests/test262/test/built-ins/Atomics/wake/counts.js.
1206         * test262/test/built-ins/Atomics/wake/count-defaults-to-infinity-missing.js: Added.
1207         (getReport):
1208         (262.agent.start.262.agent.receiveBroadcast):
1209         * test262/test/built-ins/Atomics/wake/count-defaults-to-infinity-undefined.js: Added.
1210         (getReport):
1211         (262.agent.start.262.agent.receiveBroadcast):
1212         * test262/test/built-ins/Atomics/wake/count-from-nans.js: Added.
1213         * test262/test/built-ins/Atomics/wake/count-symbol-throws.js: Added.
1214         * test262/test/built-ins/Atomics/wake/count-tointeger-throws-then-wake-throws.js: Added.
1215         (poisoned.valueOf):
1216         * test262/test/built-ins/Atomics/wake/good-views.js:
1217         * test262/test/built-ins/Atomics/wake/negative-count.js: Renamed from JSTests/test262/test/built-ins/Atomics/wake/wake-negative.js.
1218         * test262/test/built-ins/Atomics/wake/negative-index-throws.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/negative-index-throws.js.
1219         (poisoned.valueOf):
1220         * test262/test/built-ins/Atomics/wake/non-int32-typedarray-throws.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/non-int32-typedarray-throws.js.
1221         (poisoned.valueOf):
1222         * test262/test/built-ins/Atomics/wake/non-shared-bufferdata-throws.js: Renamed from JSTests/test262/test/built-ins/Atomics/wait/nonshared-bufferdata-throws.js.
1223         (poisoned.valueOf):
1224         * test262/test/built-ins/Atomics/wake/non-views.js:
1225         * test262/test/built-ins/Atomics/wake/nonshared-int-views.js:
1226         (testWithTypedArrayConstructors):
1227         * test262/test/built-ins/Atomics/wake/not-a-typedarray-throws.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/not-a-typedarray-throws.js.
1228         (poisoned.valueOf):
1229         * test262/test/built-ins/Atomics/wake/not-an-object-throws.js: Added.
1230         (poisoned.valueOf):
1231         * test262/test/built-ins/Atomics/wake/null-bufferdata-throws.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/null-bufferdata-throws.js.
1232         (poisoned.valueOf):
1233         * test262/test/built-ins/Atomics/wake/out-of-range-index-throws.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/out-of-range-index-throws.js.
1234         (poisoned.valueOf):
1235         * test262/test/built-ins/Atomics/wake/shared-nonint-views.js:
1236         (testWithTypedArrayConstructors):
1237         * test262/test/built-ins/Atomics/wake/symbol-for-index-throws.js: Added.
1238         (poisonedValueOf.valueOf):
1239         (poisonedToPrimitive.Symbol.toPrimitive):
1240         * test262/test/built-ins/Atomics/wake/undefined-index-defaults-to-zero.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/undefined-index-defaults-to-zero.js.
1241         (262.agent.start.262.agent.receiveBroadcast):
1242         (getReport):
1243         * test262/test/built-ins/Atomics/wake/wake-all-on-loc.js:
1244         (262.agent.start.262.agent.receiveBroadcast):
1245         (getReport):
1246         (waitUntil):
1247         * test262/test/built-ins/Atomics/wake/wake-all.js:
1248         (262.agent.start.262.agent.receiveBroadcast):
1249         (getReport):
1250         (waitUntil):
1251         * test262/test/built-ins/Atomics/wake/wake-in-order.js:
1252         (getReport):
1253         (waitUntil):
1254         * test262/test/built-ins/Atomics/wake/wake-nan.js:
1255         (getReport):
1256         * test262/test/built-ins/Atomics/wake/wake-one.js:
1257         (getReport):
1258         (waitUntil):
1259         * test262/test/built-ins/Atomics/wake/wake-rewake-noop.js: Added.
1260         (getReport):
1261         (waitUntil):
1262         (262.agent.start.262.agent.receiveBroadcast):
1263         * test262/test/built-ins/Atomics/wake/wake-two.js:
1264         (getReport):
1265         * test262/test/built-ins/Atomics/wake/wake-with-no-agents-waiting.js: Added.
1266         (262.agent.start.262.agent.receiveBroadcast):
1267         (waitUntil):
1268         * test262/test/built-ins/Atomics/wake/wake-with-no-matching-agents-waiting.js: Added.
1269         (262.agent.start.262.agent.receiveBroadcast):
1270         (waitUntil):
1271         * test262/test/built-ins/Atomics/wake/wake-zero.js:
1272         (i.262.agent.start.262.agent.receiveBroadcast):
1273         (getReport):
1274         (waitUntil):
1275         * test262/test/built-ins/Atomics/xor/bad-range.js:
1276         (testWithTypedArrayConstructors):
1277         * test262/test/built-ins/Atomics/xor/good-views.js:
1278         (testWithTypedArrayConstructors):
1279         * test262/test/built-ins/Atomics/xor/non-views.js:
1280         * test262/test/built-ins/Atomics/xor/nonshared-int-views.js:
1281         (testWithTypedArrayConstructors):
1282         * test262/test/built-ins/Atomics/xor/shared-nonint-views.js:
1283         (testWithTypedArrayConstructors):
1284         * test262/test/built-ins/BigInt/asIntN/bigint-tobigint-errors.js:
1285         * test262/test/built-ins/BigInt/asIntN/bigint-tobigint-toprimitive.js:
1286         * test262/test/built-ins/BigInt/asIntN/bigint-tobigint-wrapped-values.js:
1287         * test262/test/built-ins/BigInt/asIntN/bits-toindex-errors.js:
1288         * test262/test/built-ins/BigInt/asIntN/bits-toindex-toprimitive.js:
1289         * test262/test/built-ins/BigInt/asIntN/bits-toindex-wrapped-values.js:
1290         * test262/test/built-ins/BigInt/asUintN/bigint-tobigint-errors.js:
1291         * test262/test/built-ins/BigInt/asUintN/bigint-tobigint-toprimitive.js:
1292         * test262/test/built-ins/BigInt/asUintN/bigint-tobigint-wrapped-values.js:
1293         * test262/test/built-ins/BigInt/asUintN/bits-toindex-errors.js:
1294         * test262/test/built-ins/BigInt/asUintN/bits-toindex-toprimitive.js:
1295         * test262/test/built-ins/BigInt/asUintN/bits-toindex-wrapped-values.js:
1296         * test262/test/built-ins/BigInt/constructor-empty-string.js:
1297         * test262/test/built-ins/BigInt/constructor-from-binary-string.js:
1298         * test262/test/built-ins/BigInt/constructor-from-decimal-string.js:
1299         * test262/test/built-ins/BigInt/constructor-from-hex-string.js:
1300         * test262/test/built-ins/BigInt/constructor-from-octal-string.js:
1301         * test262/test/built-ins/BigInt/constructor-from-string-syntax-errors.js:
1302         * test262/test/built-ins/BigInt/constructor-integer.js: Added.
1303         * test262/test/built-ins/BigInt/constructor-trailing-leading-spaces.js:
1304         * test262/test/built-ins/BigInt/issafeinteger-true.js: Removed.
1305         * test262/test/built-ins/BigInt/out-of-bounds-integer-rangeerror.js: Removed.
1306         * test262/test/built-ins/BigInt/prototype/Symbol.toStringTag.js:
1307         * test262/test/built-ins/BigInt/prototype/toString/default-radix.js: Added.
1308         * test262/test/built-ins/BigInt/prototype/toString/thisbigintvalue-not-valid-throws.js:
1309         * test262/test/built-ins/BigInt/prototype/valueOf/cross-realm.js: Added.
1310         * test262/test/built-ins/BigInt/tostring-throws.js: Copied from JSTests/test262/test/built-ins/BigInt/value-of-throws.js.
1311         * test262/test/built-ins/BigInt/valueof-throws.js: Renamed from JSTests/test262/test/built-ins/BigInt/value-of-throws.js.
1312         (BigInt.valueOf):
1313         * test262/test/built-ins/DataView/prototype/setBigInt64/set-values-return-undefined.js:
1314         (values.forEach):
1315         * test262/test/built-ins/Function/prototype/bind/length-exceeds-int32.js: Added.
1316         (f):
1317         * test262/test/built-ins/Function/prototype/toString/anonymous-intrinsics.js: Removed.
1318         * test262/test/built-ins/Function/prototype/toString/bound-function.js:
1319         (assertNativeFunction):
1320         (let.f): Deleted.
1321         * test262/test/built-ins/Function/prototype/toString/built-in-function-object.js: Added.
1322         * test262/test/built-ins/Function/prototype/toString/intrinsics.js: Removed.
1323         * test262/test/built-ins/Function/prototype/toString/proxy-arrow-function.js: Added.
1324         (assertNativeFunction.new.Proxy):
1325         * test262/test/built-ins/Function/prototype/toString/proxy-async-function.js: Added.
1326         (assertNativeFunction.new.Proxy.async):
1327         * test262/test/built-ins/Function/prototype/toString/proxy-async-generator-function.js: Added.
1328         (assertNativeFunction.new.Proxy.async):
1329         * test262/test/built-ins/Function/prototype/toString/proxy-async-generator-method-definition.js: Added.
1330         (assertNativeFunction.new.Proxy.async.method):
1331         (apply):
1332         * test262/test/built-ins/Function/prototype/toString/proxy-async-method-definition.js: Added.
1333         (assertNativeFunction.new.Proxy.async.method):
1334         (apply):
1335         * test262/test/built-ins/Function/prototype/toString/proxy-bound-function.js: Added.
1336         (assertNativeFunction.new.Proxy):
1337         (bind):
1338         * test262/test/built-ins/Function/prototype/toString/proxy-class.js: Added.
1339         (assertNativeFunction):
1340         * test262/test/built-ins/Function/prototype/toString/proxy-function-expression.js: Added.
1341         (assertNativeFunction.new.Proxy):
1342         * test262/test/built-ins/Function/prototype/toString/proxy-generator-function.js: Added.
1343         (assertNativeFunction.new.Proxy):
1344         * test262/test/built-ins/Function/prototype/toString/proxy-method-definition.js: Added.
1345         (assertNativeFunction.new.Proxy.method):
1346         (apply):
1347         * test262/test/built-ins/Function/prototype/toString/proxy-non-callable-throws.js: Added.
1348         * test262/test/built-ins/Function/prototype/toString/proxy.js: Removed.
1349         * test262/test/built-ins/Function/prototype/toString/well-known-intrinsic-object-functions.js: Added.
1350         (WellKnownIntrinsicObjects.forEach):
1351         * test262/test/built-ins/JSON/prop-desc.js: Added.
1352         * test262/test/built-ins/Math/acosh/nan-returns.js:
1353         * test262/test/built-ins/Math/asinh/asinh-specialVals.js:
1354         * test262/test/built-ins/Math/atanh/atanh-specialVals.js:
1355         * test262/test/built-ins/Math/cbrt/cbrt-specialValues.js:
1356         * test262/test/built-ins/Math/cbrt/prop-desc.js:
1357         * test262/test/built-ins/Math/cosh/cosh-specialVals.js:
1358         * test262/test/built-ins/Math/expm1/expm1-specialVals.js:
1359         * test262/test/built-ins/Math/log10/Log10-specialVals.js:
1360         * test262/test/built-ins/Math/log2/log2-basicTests.js:
1361         * test262/test/built-ins/Math/prop-desc.js:
1362         * test262/test/built-ins/Math/sign/sign-specialVals.js:
1363         * test262/test/built-ins/Math/sinh/sinh-specialVals.js:
1364         * test262/test/built-ins/Math/tanh/tanh-specialVals.js:
1365         * test262/test/built-ins/Math/trunc/trunc-sampleTests.js:
1366         * test262/test/built-ins/Math/trunc/trunc-specialVals.js:
1367         * test262/test/built-ins/Object/assign/strings-and-symbol-order.js: Added.
1368         * test262/test/built-ins/Object/keys/property-traps-order-with-proxied-array.js: Added.
1369         (get t):
1370         * test262/test/built-ins/Reflect/Reflect.js: Removed.
1371         * test262/test/built-ins/Reflect/prop-desc.js: Added.
1372         * test262/test/built-ins/Reflect/properties.js: Removed.
1373         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/internal-regexp-lastindex-not-zero.js: Added.
1374         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/isregexp-internal-regexp-is-false.js: Added.
1375         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/isregexp-internal-regexp-throws.js: Added.
1376         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/isregexp-this-throws.js: Added.
1377         (obj.get Symbol):
1378         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/length.js: Added.
1379         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/name.js: Added.
1380         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/prop-desc.js: Added.
1381         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/regexpcreate-this-throws.js: Added.
1382         (obj.toString):
1383         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-get-constructor-throws.js: Added.
1384         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-get-species-throws.js: Added.
1385         (regexp.get Symbol):
1386         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-is-not-object-throws.js: Added.
1387         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-is-undefined.js: Added.
1388         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-species-is-not-constructor.js: Added.
1389         (callMatchAll):
1390         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-species-is-null-or-undefined.js: Added.
1391         (TestWithConstructor):
1392         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-species-throws.js: Added.
1393         (regexp.Symbol.species):
1394         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor.js: Added.
1395         (regexp.Symbol.species):
1396         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-regexp-get-global-throws.js: Added.
1397         (regexp.Symbol.species):
1398         (get assert):
1399         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-regexp-get-unicode-throws.js: Added.
1400         (regexp.Symbol.species):
1401         (get assert):
1402         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/string-tostring-throws.js: Added.
1403         (obj.valueOf):
1404         (obj.toString):
1405         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/string-tostring.js: Added.
1406         (obj.toString):
1407         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-get-flags-throws.js: Added.
1408         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-get-flags.js: Added.
1409         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-lastindex-cached.js: Added.
1410         (regexp.lastIndex.valueOf):
1411         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-not-object-throws.js: Added.
1412         (callMatchAll):
1413         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-tolength-lastindex-throws.js: Added.
1414         (regexp.lastIndex.valueOf):
1415         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-tostring-flags-throws.js: Added.
1416         (value.valueOf):
1417         (value.toString):
1418         * test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-tostring-flags.js: Added.
1419         (value.toString):
1420         * test262/test/built-ins/RegExpStringIteratorPrototype/Symbol.toStringTag.js: Added.
1421         * test262/test/built-ins/RegExpStringIteratorPrototype/ancestry.js: Added.
1422         * test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-call-throws.js: Added.
1423         (RegExp.prototype.exec):
1424         * test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-get-throws.js: Added.
1425         * test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-match-get-0-throws.js: Added.
1426         (return.get string_appeared_here):
1427         (RegExp.prototype.exec):
1428         * test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-match-get-0-tostring-throws.js: Added.
1429         (return.toString):
1430         (RegExp.prototype.exec):
1431         * test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-match-get-0-tostring.js: Added.
1432         (execResult.get string_appeared_here):
1433         (RegExp.prototype.exec):
1434         * test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-not-callable.js: Added.
1435         (TestWithRegExpExec):
1436         * test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec.js: Added.
1437         (callNextWithExecReturnValue.RegExp.prototype.exec):
1438         (callNextWithExecReturnValue):
1439         * test262/test/built-ins/RegExpStringIteratorPrototype/next/length.js: Added.
1440         * test262/test/built-ins/RegExpStringIteratorPrototype/next/name.js: Added.
1441         * test262/test/built-ins/RegExpStringIteratorPrototype/next/next-iteration-global.js: Added.
1442         * test262/test/built-ins/RegExpStringIteratorPrototype/next/next-iteration.js: Added.
1443         * test262/test/built-ins/RegExpStringIteratorPrototype/next/next-missing-internal-slots.js: Added.
1444         * test262/test/built-ins/RegExpStringIteratorPrototype/next/prop-desc.js: Added.
1445         * test262/test/built-ins/RegExpStringIteratorPrototype/next/regexp-tolength-lastindex-throws.js: Added.
1446         (RegExp.prototype.exec):
1447         * test262/test/built-ins/RegExpStringIteratorPrototype/next/this-is-not-object-throws.js: Added.
1448         (callNext):
1449         * test262/test/built-ins/String/prototype/matchAll/length.js: Added.
1450         * test262/test/built-ins/String/prototype/matchAll/name.js: Added.
1451         * test262/test/built-ins/String/prototype/matchAll/prop-desc.js: Added.
1452         * test262/test/built-ins/String/prototype/matchAll/regexp-get-matchAll-throws.js: Added.
1453         * test262/test/built-ins/String/prototype/matchAll/regexp-is-null.js: Added.
1454         * test262/test/built-ins/String/prototype/matchAll/regexp-is-undefined.js: Added.
1455         * test262/test/built-ins/String/prototype/matchAll/regexp-matchAll-invocation.js: Added.
1456         (obj.Symbol.matchAll):
1457         * test262/test/built-ins/String/prototype/matchAll/regexp-matchAll-throws.js: Added.
1458         (regexp.Symbol.matchAll):
1459         * test262/test/built-ins/String/prototype/matchAll/regexp-prototype-get-matchAll-throws.js: Added.
1460         * test262/test/built-ins/String/prototype/matchAll/regexp-prototype-has-no-matchAll.js: Added.
1461         * test262/test/built-ins/String/prototype/matchAll/regexp-prototype-matchAll-invocation.js: Added.
1462         (RegExp.prototype.Symbol.matchAll):
1463         * test262/test/built-ins/String/prototype/matchAll/regexp-prototype-matchAll-throws.js: Added.
1464         (RegExp.prototype.Symbol.matchAll):
1465         * test262/test/built-ins/String/prototype/matchAll/this-val-non-obj-coercible.js: Added.
1466         * test262/test/built-ins/Symbol/matchAll/cross-realm.js: Added.
1467         * test262/test/built-ins/Symbol/matchAll/prop-desc.js: Added.
1468         * test262/test/harness/testTypedArray.js:
1469         * test262/test/intl402/Array/prototype/toLocaleString/calls-toLocaleString-number-elements.js: Added.
1470         * test262/test/intl402/Intl/getCanonicalLocales/invalid-tags.js:
1471         * test262/test/intl402/Locale/constructor-newtarget-undefined.js: Added.
1472         * test262/test/intl402/Locale/constructor-options-calendar-invalid.js: Added.
1473         (const.invalidCalendarOption.of.invalidCalendarOptions.new.Intl.Locale):
1474         * test262/test/intl402/Locale/constructor-options-calendar-valid.js: Added.
1475         * test262/test/intl402/Locale/constructor-options-language-invalid.js: Added.
1476         (const.invalidLanguageOption.of.invalidLanguageOptions.new.Intl.Locale):
1477         * test262/test/intl402/Locale/constructor-options-language-valid.js: Added.
1478         (toString):
1479         * test262/test/intl402/Locale/constructor-options-region-invalid.js: Added.
1480         (const.invalidRegionOption.of.invalidRegionOptions.new.Intl.Locale):
1481         * test262/test/intl402/Locale/constructor-options-region-valid.js: Added.
1482         * test262/test/intl402/Locale/constructor-options-script-invalid.js: Added.
1483         (const.invalidScriptOption.of.invalidScriptOptions.new.Intl.Locale):
1484         * test262/test/intl402/Locale/constructor-options-script-valid.js: Added.
1485         (toString):
1486         * test262/test/intl402/Locale/function-prototype.js: Added.
1487         * test262/test/intl402/Locale/instance-extensibility.js: Added.
1488         * test262/test/intl402/Locale/instance.js: Added.
1489         * test262/test/intl402/Locale/invalid-tag-throws-boolean.js: Added.
1490         * test262/test/intl402/Locale/invalid-tag-throws-null.js: Added.
1491         * test262/test/intl402/Locale/invalid-tag-throws-number.js: Added.
1492         * test262/test/intl402/Locale/invalid-tag-throws-symbol.js: Added.
1493         * test262/test/intl402/Locale/invalid-tag-throws-undefined.js: Added.
1494         * test262/test/intl402/Locale/invalid-tag-throws.js: Added.
1495         (const.invalidTag.of.getInvalidLanguageTags):
1496         * test262/test/intl402/Locale/length.js: Added.
1497         * test262/test/intl402/Locale/name.js: Added.
1498         * test262/test/intl402/Locale/prop-desc.js: Added.
1499         * test262/test/intl402/Locale/prototype/constructor.js: Added.
1500         * test262/test/intl402/Locale/prototype/maximize/length.js: Added.
1501         * test262/test/intl402/Locale/prototype/maximize/name.js: Added.
1502         * test262/test/intl402/Locale/prototype/maximize/prop-desc.js: Added.
1503         * test262/test/intl402/Locale/prototype/prop-desc.js: Added.
1504         * test262/test/intl402/Locale/prototype/toStringTag.js: Added.
1505         * test262/test/intl402/TypedArray/prototype/toLocaleString/calls-toLocaleString-number-elements.js: Added.
1506         (testWithTypedArrayConstructors):
1507         * test262/test/language/asi/S7.9_A11_T8.js:
1508         (else.x.1): Deleted.
1509         * test262/test/language/asi/S7.9_A4.js:
1510         (catch):
1511         * test262/test/language/asi/S7.9_A5.1_T1.js:
1512         * test262/test/language/asi/S7.9_A5.3_T1.js:
1513         * test262/test/language/block-scope/syntax/redeclaration/function-declaration-attempt-to-redeclare-with-var-declaration-nested-in-function.js: Added.
1514         (g.f):
1515         (g):
1516         * test262/test/language/destructuring/binding/initialization-requires-object-coercible-null.js:
1517         * test262/test/language/destructuring/binding/initialization-requires-object-coercible-undefined.js:
1518         * test262/test/language/destructuring/binding/initialization-returns-normal-completion-for-empty-objects.js:
1519         * test262/test/language/destructuring/binding/syntax/array-elements-with-initializer.js:
1520         * test262/test/language/destructuring/binding/syntax/array-elements-with-object-patterns.js:
1521         * test262/test/language/destructuring/binding/syntax/array-elements-without-initializer.js:
1522         * test262/test/language/destructuring/binding/syntax/array-pattern-with-elisions.js:
1523         * test262/test/language/destructuring/binding/syntax/array-pattern-with-no-elements.js:
1524         * test262/test/language/destructuring/binding/syntax/array-rest-elements.js:
1525         * test262/test/language/destructuring/binding/syntax/object-pattern-with-no-property-list.js:
1526         * test262/test/language/destructuring/binding/syntax/property-list-bindings-elements.js:
1527         * test262/test/language/destructuring/binding/syntax/property-list-followed-by-a-single-comma.js:
1528         * test262/test/language/destructuring/binding/syntax/property-list-single-name-bindings.js:
1529         * test262/test/language/destructuring/binding/syntax/property-list-with-property-list.js:
1530         * test262/test/language/destructuring/binding/syntax/recursive-array-and-object-patterns.js:
1531         * test262/test/language/eval-code/direct/block-decl-eval-source-is-strict-nostrict.js: Copied from JSTests/test262/test/language/eval-code/direct/block-decl-strict-source.js.
1532         * test262/test/language/eval-code/direct/block-decl-eval-source-is-strict-onlystrict.js: Renamed from JSTests/test262/test/language/eval-code/direct/block-decl-strict-source.js.
1533         (catch):
1534         * test262/test/language/eval-code/direct/block-decl-onlystrict.js: Renamed from JSTests/test262/test/language/eval-code/direct/block-decl-strict-caller.js.
1535         * test262/test/language/eval-code/direct/switch-case-decl-eval-source-is-strict-nostrict.js: Renamed from JSTests/test262/test/language/eval-code/direct/switch-case-decl-strict-source.js.
1536         * test262/test/language/eval-code/direct/switch-case-decl-eval-source-is-strict-onlystrict.js: Copied from JSTests/test262/test/language/eval-code/direct/switch-case-decl-strict-caller.js.
1537         (catch):
1538         * test262/test/language/eval-code/direct/switch-case-decl-onlystrict.js: Renamed from JSTests/test262/test/language/eval-code/direct/switch-case-decl-strict-caller.js.
1539         * test262/test/language/eval-code/direct/switch-dflt-decl-eval-source-is-strict-nostrict.js: Renamed from JSTests/test262/test/language/eval-code/direct/switch-dflt-decl-strict-source.js.
1540         * test262/test/language/eval-code/direct/switch-dflt-decl-eval-source-is-strict-onlystrict.js: Copied from JSTests/test262/test/language/eval-code/direct/switch-dflt-decl-strict-caller.js.
1541         (catch):
1542         * test262/test/language/eval-code/direct/switch-dflt-decl-onlystrict.js: Renamed from JSTests/test262/test/language/eval-code/direct/switch-dflt-decl-strict-caller.js.
1543         * test262/test/language/expressions/async-arrow-function/await-as-param-ident-nested-arrow-parameter-position.js: Added.
1544         (async):
1545         * test262/test/language/expressions/async-arrow-function/await-as-param-nested-arrow-body-position.js: Added.
1546         (async):
1547         * test262/test/language/expressions/async-arrow-function/await-as-param-nested-arrow-parameter-position.js: Added.
1548         (async.a):
1549         * test262/test/language/expressions/async-arrow-function/await-as-param-rest-nested-arrow-parameter-position.js: Added.
1550         (async.a):
1551         * test262/test/language/expressions/async-arrow-function/escaped-async-line-terminator.js: Added.
1552         * test262/test/language/expressions/async-generator/generator-created-after-decl-inst.js: Added.
1553         (g.async.a):
1554         * test262/test/language/expressions/class/class-name-ident-await-escaped-module.js: Added.
1555         (C):
1556         * test262/test/language/expressions/class/class-name-ident-await-escaped.js: Added.
1557         (C):
1558         * test262/test/language/expressions/class/class-name-ident-await-module.js: Added.
1559         (C):
1560         * test262/test/language/expressions/class/class-name-ident-await.js: Added.
1561         (C):
1562         * test262/test/language/expressions/class/class-name-ident-let-escaped.js: Added.
1563         (C):
1564         * test262/test/language/expressions/class/class-name-ident-let.js: Added.
1565         (C):
1566         * test262/test/language/expressions/class/class-name-ident-static-escaped.js: Added.
1567         (C):
1568         * test262/test/language/expressions/class/class-name-ident-static.js: Added.
1569         * test262/test/language/expressions/class/class-name-ident-yield-escaped.js: Added.
1570         (C):
1571         * test262/test/language/expressions/class/class-name-ident-yield.js: Added.
1572         (C):
1573         * test262/test/language/expressions/class/constructor-this-tdz-during-initializers.js: Added.
1574         (Base):
1575         (C):
1576         * test262/test/language/expressions/class/fields-run-once-on-double-super.js: Added.
1577         (Base):
1578         (C):
1579         * test262/test/language/expressions/generators/generator-created-after-decl-inst.js: Added.
1580         (g):
1581         * test262/test/language/expressions/greater-than-or-equal/bigint-and-incomparable-string.js: Added.
1582         * test262/test/language/expressions/greater-than-or-equal/bigint-and-string.js: Added.
1583         * test262/test/language/expressions/greater-than/bigint-and-boolean.js: Added.
1584         * test262/test/language/expressions/greater-than/bigint-and-incomparable-string.js: Added.
1585         * test262/test/language/expressions/greater-than/bigint-and-string.js: Added.
1586         * test262/test/language/expressions/less-than-or-equal/bigint-and-incomparable-string.js: Added.
1587         * test262/test/language/expressions/less-than-or-equal/bigint-and-string.js: Added.
1588         * test262/test/language/expressions/less-than/bigint-and-boolean.js: Added.
1589         * test262/test/language/expressions/less-than/bigint-and-incomparable-string.js: Added.
1590         * test262/test/language/expressions/less-than/bigint-and-string.js: Added.
1591         * test262/test/language/expressions/object/method-definition/generator-super-prop-param.js:
1592         * test262/test/language/function-code/block-decl-onlystrict.js: Renamed from JSTests/test262/test/language/function-code/block-decl-strict.js.
1593         * test262/test/language/function-code/switch-case-decl-onlystrict.js: Renamed from JSTests/test262/test/language/function-code/switch-case-decl-strict.js.
1594         * test262/test/language/function-code/switch-dflt-decl-onlystrict.js: Renamed from JSTests/test262/test/language/function-code/switch-dflt-decl-strict.js.
1595         * test262/test/language/line-terminators/S7.3_A2.3.js: Removed.
1596         * test262/test/language/line-terminators/S7.3_A2.4.js: Removed.
1597         * test262/test/language/literals/regexp/invalid-optional-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1598         * test262/test/language/literals/regexp/invalid-optional-negative-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1599         * test262/test/language/literals/regexp/invalid-range-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1600         * test262/test/language/literals/regexp/invalid-range-negative-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1601         * test262/test/language/literals/regexp/u-invalid-optional-lookahead.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1602         * test262/test/language/literals/regexp/u-invalid-optional-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1603         * test262/test/language/literals/regexp/u-invalid-optional-negative-lookahead.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1604         * test262/test/language/literals/regexp/u-invalid-optional-negative-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1605         * test262/test/language/literals/regexp/u-invalid-range-lookahead.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1606         * test262/test/language/literals/regexp/u-invalid-range-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1607         * test262/test/language/literals/regexp/u-invalid-range-negative-lookahead.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1608         * test262/test/language/literals/regexp/u-invalid-range-negative-lookbehind.js: Renamed from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
1609         * test262/test/language/literals/string/line-separator-eval.js: Added.
1610         * test262/test/language/literals/string/line-separator.js: Added.
1611         * test262/test/language/literals/string/paragraph-separator-eval.js: Added.
1612         * test262/test/language/literals/string/paragraph-separator.js: Added.
1613         * test262/test/language/module-code/early-strict-mode.js:
1614         * test262/test/language/statements/async-generator/generator-created-after-decl-inst.js: Added.
1615         (async.g):
1616         * test262/test/language/statements/break/S12.8_A8_T1.js:
1617         (catch):
1618         * test262/test/language/statements/break/S12.8_A8_T2.js:
1619         (catch):
1620         * test262/test/language/statements/class/class-name-ident-await-escaped-module.js: Added.
1621         (aw):
1622         * test262/test/language/statements/class/class-name-ident-await-escaped.js: Added.
1623         (aw):
1624         * test262/test/language/statements/class/class-name-ident-await-module.js: Added.
1625         (await):
1626         * test262/test/language/statements/class/class-name-ident-await.js: Added.
1627         (await):
1628         * test262/test/language/statements/class/class-name-ident-let-escaped.js: Added.
1629         (l):
1630         * test262/test/language/statements/class/class-name-ident-let.js: Added.
1631         (let):
1632         * test262/test/language/statements/class/class-name-ident-static-escaped.js: Added.
1633         (st):
1634         * test262/test/language/statements/class/class-name-ident-static.js: Added.
1635         * test262/test/language/statements/class/class-name-ident-yield-escaped.js: Added.
1636         (yi):
1637         * test262/test/language/statements/class/class-name-ident-yield.js: Added.
1638         (yield):
1639         * test262/test/language/statements/continue/S12.7_A8_T1.js:
1640         (catch):
1641         * test262/test/language/statements/continue/S12.7_A8_T2.js:
1642         (catch):
1643         * test262/test/language/statements/generators/generator-created-after-decl-inst.js: Added.
1644         (g):
1645         * test262/test/language/statements/try/early-catch-duplicates.js:
1646         * test262/test/language/statements/try/early-catch-function.js: Added.
1647         (f.catch.e):
1648         (f):
1649         * test262/test/language/statements/try/early-catch-lex.js:
1650         * test262/test/language/statements/try/early-catch-var.js:
1651         * test262/test262-Revision.txt:
1652
1653 2018-05-09  Caio Lima  <ticaiolima@gmail.com>
1654
1655         [ESNext][BigInt] Implement support for "==" operation
1656         https://bugs.webkit.org/show_bug.cgi?id=184474
1657
1658         Reviewed by Yusuke Suzuki.
1659
1660         * stress/big-int-equals-basic.js: Added.
1661         * stress/big-int-equals-to-primitive-precedence.js: Added.
1662         * stress/big-int-equals-wrapped-value.js: Added.
1663
1664 2018-05-08  Valerie R Young  <valerie@bocoup.com>
1665
1666         test262/Runner.pm: move input files to JSTests/test262
1667         https://bugs.webkit.org/show_bug.cgi?id=185389
1668
1669         Reviewed by Michael Saboff.
1670
1671         * test262/config.yaml: Renamed from Tools/Scripts/test262/config.yaml.
1672         * test262/expectations.yaml: Renamed from Tools/Scripts/test262/expectations.yaml.
1673
1674 2018-05-05  Filip Pizlo  <fpizlo@apple.com>
1675
1676         DFG AI should have O(1) clobbering
1677         https://bugs.webkit.org/show_bug.cgi?id=185287
1678
1679         Reviewed by Saam Barati.
1680
1681         * stress/simple-ai-effect.js: Added.
1682         (bar):
1683         (foo):
1684
1685 2018-05-04  Keith Miller  <keith_miller@apple.com>
1686
1687         isCacheableArrayLength should return true for undecided arrays
1688         https://bugs.webkit.org/show_bug.cgi?id=185309
1689
1690         Reviewed by Michael Saboff.
1691
1692         * stress/get-array-length-undecided.js: Added.
1693         (test):
1694
1695 2018-05-04  Dominik Infuehr  <dinfuehr@igalia.com>
1696
1697         Disable tests on systems with limited memory
1698         https://bugs.webkit.org/show_bug.cgi?id=185296
1699
1700         Reviewed by Saam Barati.
1701
1702         Test doesn't work with a limited amount of memory. I tried to reduce memory usage
1703         but then it was hard to reproduce the failure the test was originally made to test.
1704
1705         * stress/array-reverse-doesnt-clobber.js:
1706
1707 2018-05-03  Saam Barati  <sbarati@apple.com>
1708
1709         Don't prevent CreateThis being folded to NewObject when the structure is poly proto
1710         https://bugs.webkit.org/show_bug.cgi?id=185177
1711
1712         Reviewed by Filip Pizlo.
1713
1714         * microbenchmarks/construct-poly-proto-object.js: Added.
1715         (foo.A):
1716         (foo):
1717         * stress/allocation-sinking-new-object-with-poly-proto.js: Added.
1718         (foo.A):
1719         (foo):
1720         (makePolyProto):
1721         (bar):
1722         (baz):
1723
1724 2018-05-03  Michael Saboff  <msaboff@apple.com>
1725
1726         OSR entry pruning of Program Bytecodes doesn't take into account try/catch
1727         https://bugs.webkit.org/show_bug.cgi?id=185281
1728
1729         Reviewed by Saam Barati.
1730
1731         New regression test.
1732
1733         * stress/baseline-osrentry-catch-is-reachable.js: Added.
1734         (i.j.catch):
1735
1736 2018-05-03  Ryan Haddad  <ryanhaddad@apple.com>
1737
1738         Unreviewed, rolling out r231197.
1739
1740         The test added with this change crashes on the 32-bit JSC bot.
1741
1742         Reverted changeset:
1743
1744         "Correctly detect string overflow when using the 'Function'
1745         constructor"
1746         https://bugs.webkit.org/show_bug.cgi?id=184883
1747         https://trac.webkit.org/changeset/231197
1748
1749 2018-05-02  Filip Pizlo  <fpizlo@apple.com>
1750
1751         JSC should know how to cache custom getter accesses on the prototype chain
1752         https://bugs.webkit.org/show_bug.cgi?id=185213
1753
1754         Reviewed by Keith Miller.
1755
1756         * microbenchmarks/get-custom-getter.js: Added.
1757         (test):
1758
1759 2018-05-02  Robin Morisset  <rmorisset@apple.com>
1760
1761         emitCodeToGetArgumentsArrayLength should not crash on PhantomNewArrayWithSpread
1762         https://bugs.webkit.org/show_bug.cgi?id=183172
1763
1764         Reviewed by Filip Pizlo.
1765
1766         * stress/length-of-new-array-with-spread.js: Added.
1767         (foo):
1768         (bar):
1769         (baz):
1770
1771 2018-05-01  Yusuke Suzuki  <utatane.tea@gmail.com>
1772
1773         [JSC] Add SameValue DFG node
1774         https://bugs.webkit.org/show_bug.cgi?id=185065
1775
1776         Reviewed by Saam Barati.
1777
1778         * microbenchmarks/object-is.js: Added.
1779         (incognito):
1780         (sameValue):
1781         (test1):
1782         (test2):
1783         (test3):
1784         (test4):
1785         (test5):
1786         (test6):
1787         * stress/object-is.js: Added.
1788         (shouldBe):
1789         (is1):
1790         (is2):
1791         (is3):
1792         (is4):
1793         (is5):
1794         (is6):
1795         (is7):
1796         (is8):
1797         (is9):
1798         (is10):
1799         (is11):
1800         (is12):
1801         (is13):
1802         (is14):
1803         (is15):
1804
1805 2018-05-01  Robin Morisset  <rmorisset@apple.com>
1806
1807         Correctly detect string overflow when using the 'Function' constructor
1808         https://bugs.webkit.org/show_bug.cgi?id=184883
1809         <rdar://problem/36320331>
1810
1811         Reviewed by Filip Pizlo.
1812
1813         I put this regression test in the 'slowMicrobenchmarks' directory because it takes nearly 30s to run, and I am not sure where else to put it.
1814
1815         * slowMicrobenchmarks/function-constructor-with-huge-strings.js: Added.
1816         (catch):
1817
1818 2018-05-01  Robin Morisset  <rmorisset@apple.com>
1819
1820         IntlObject.cpp::removeUnicodeLocaleExtension() should not touch locales that end in '-u'
1821         https://bugs.webkit.org/show_bug.cgi?id=185162
1822
1823         Reviewed by Filip Pizlo.
1824
1825         * stress/incomplete-unicode-locale.js: Added.
1826         (catch):
1827
1828 2018-05-01  Dominik Infuehr  <dinfuehr@igalia.com>
1829
1830         Add SetCallee as DFG-Operation
1831         https://bugs.webkit.org/show_bug.cgi?id=184582
1832
1833         Reviewed by Filip Pizlo.
1834
1835         Added test that runs into infinite loop without updating the callee and
1836         therefore emitting SetCallee in DFG for recursive tail calls.
1837
1838         * stress/closure-recursive-tail-call-infinite-loop.js: Added.
1839         (Foo):
1840         (second):
1841         (first):
1842         (return.closure):
1843         (createClosure):
1844
1845 2018-04-30  Saam Barati  <sbarati@apple.com>
1846
1847         ToString constant folds without preserving checks, causing us to break assumptions that the code would OSR exit
1848         https://bugs.webkit.org/show_bug.cgi?id=185149
1849         <rdar://problem/39455917>
1850
1851         Reviewed by Filip Pizlo.
1852
1853         * stress/keep-checks-when-converting-to-lazy-js-constant-in-strength-reduction.js: Added.
1854
1855 2018-04-29  Filip Pizlo  <fpizlo@apple.com>
1856
1857         LICM shouldn't hoist nodes if hoisted nodes exited in that code block
1858         https://bugs.webkit.org/show_bug.cgi?id=185126
1859
1860         Reviewed by Saam Barati.
1861         
1862         I found this bug by accident when I was writing this test for something else.
1863         
1864         This change also speeds up other benchmarks of this case that we already had. They are all called
1865         the licm-dragons tests.
1866
1867         * microbenchmarks/licm-dragons-two-structures.js: Added.
1868         (foo):
1869
1870 2018-04-29  Commit Queue  <commit-queue@webkit.org>
1871
1872         Unreviewed, rolling out r231137.
1873         https://bugs.webkit.org/show_bug.cgi?id=185118
1874
1875         It is breaking Test262 language/expressions/multiplication
1876         /order-of-evaluation.js (Requested by caiolima on #webkit).
1877
1878         Reverted changeset:
1879
1880         "[ESNext][BigInt] Implement support for "*" operation"
1881         https://bugs.webkit.org/show_bug.cgi?id=183721
1882         https://trac.webkit.org/changeset/231137
1883
1884 2018-04-28  Saam Barati  <sbarati@apple.com>
1885
1886         We don't model regexp effects properly
1887         https://bugs.webkit.org/show_bug.cgi?id=185059
1888         <rdar://problem/39736150>
1889
1890         Reviewed by Filip Pizlo.
1891
1892         * stress/regexp-exec-test-effectful-last-index.js: Added.
1893         (assert):
1894         (foo):
1895         (i.regexLastIndex.toString):
1896         (bar):
1897
1898 2018-04-28  Rick Waldron  <waldron.rick@gmail.com>
1899
1900         Token misspelled "tocken" in error message string
1901         https://bugs.webkit.org/show_bug.cgi?id=185030
1902
1903         Reviewed by Saam Barati.
1904
1905         * ChakraCore/test/Basics/IdsWithEscapes.baseline-jsc: Fix typo "tocken" => "token"
1906         * stress/destructuring-assignment-syntax.js: Fix typo "tocken" => "token"
1907         * stress/error-messages-for-in-operator-should-not-crash.js: Fix typo "tocken" => "token"
1908         * stress/reserved-word-with-escape.js: Fix typo "tocken" => "token"
1909         (testSyntaxError.String.raw.v):
1910         (String.raw.SyntaxError.Cannot.use.the.keyword.string_appeared_here.as.a.name):
1911         (testSyntaxError.String.raw.a):
1912
1913 2018-04-28  Caio Lima  <ticaiolima@gmail.com>
1914
1915         [ESNext][BigInt] Implement support for "*" operation
1916         https://bugs.webkit.org/show_bug.cgi?id=183721
1917
1918         Reviewed by Saam Barati.
1919
1920         * bigIntTests.yaml:
1921         * stress/big-int-mul-jit.js: Added.
1922         * stress/big-int-mul-to-primitive-precedence.js: Added.
1923         * stress/big-int-mul-to-primitive.js: Added.
1924         * stress/big-int-mul-type-error.js: Added.
1925         * stress/big-int-mul-wrapped-value.js: Added.
1926         * stress/big-int-multiplication.js: Added.
1927         * stress/big-int-multiply-memory-stress.js: Added.
1928
1929 2018-04-28  Commit Queue  <commit-queue@webkit.org>
1930
1931         Unreviewed, rolling out r231131.
1932         https://bugs.webkit.org/show_bug.cgi?id=185112
1933
1934         It is breaking Debug build due to unchecked exception
1935         (Requested by caiolima on #webkit).
1936
1937         Reverted changeset:
1938
1939         "[ESNext][BigInt] Implement support for "*" operation"
1940         https://bugs.webkit.org/show_bug.cgi?id=183721
1941         https://trac.webkit.org/changeset/231131
1942
1943 2018-04-27  Caio Lima  <ticaiolima@gmail.com>
1944
1945         [ESNext][BigInt] Implement support for "*" operation
1946         https://bugs.webkit.org/show_bug.cgi?id=183721
1947
1948         Reviewed by Saam Barati.
1949
1950         * bigIntTests.yaml:
1951         * stress/big-int-mul-jit.js: Added.
1952         * stress/big-int-mul-to-primitive-precedence.js: Added.
1953         * stress/big-int-mul-to-primitive.js: Added.
1954         * stress/big-int-mul-type-error.js: Added.
1955         * stress/big-int-mul-wrapped-value.js: Added.
1956         * stress/big-int-multiplication.js: Added.
1957         * stress/big-int-multiply-memory-stress.js: Added.
1958
1959 2018-04-27  Ryan Haddad  <ryanhaddad@apple.com>
1960
1961         Unreviewed, rolling out r231086.
1962
1963         Caused JSC test failures due to an unchecked exception.
1964
1965         Reverted changeset:
1966
1967         "[ESNext][BigInt] Implement support for "*" operation"
1968         https://bugs.webkit.org/show_bug.cgi?id=183721
1969         https://trac.webkit.org/changeset/231086
1970
1971 2018-04-27  Ryan Haddad  <ryanhaddad@apple.com>
1972
1973         Unreviewed test gardening, update expectations for test262/intl402/PluralRules tests after r231047.
1974
1975         * test262.yaml: Mark tests as passing.
1976
1977 2018-04-26  Caio Lima  <ticaiolima@gmail.com>
1978
1979         [ESNext][BigInt] Implement support for "*" operation
1980         https://bugs.webkit.org/show_bug.cgi?id=183721
1981
1982         Reviewed by Saam Barati.
1983
1984         * bigIntTests.yaml:
1985         * stress/big-int-mul-jit.js: Added.
1986         * stress/big-int-mul-to-primitive-precedence.js: Added.
1987         * stress/big-int-mul-to-primitive.js: Added.
1988         * stress/big-int-mul-type-error.js: Added.
1989         * stress/big-int-mul-wrapped-value.js: Added.
1990         * stress/big-int-multiplication.js: Added.
1991         * stress/big-int-multiply-memory-stress.js: Added.
1992
1993 2018-04-25  Robin Morisset  <rmorisset@apple.com>
1994
1995         In FTLLowerDFGToB3.cpp::compileCreateRest, always use a contiguous array as the indexing type when under isWatchingHavingABadTimeWatchpoint
1996         https://bugs.webkit.org/show_bug.cgi?id=184773
1997         <rdar://problem/37773612>
1998
1999         Reviewed by Filip Pizlo.
2000
2001         This bug requires a race between the thread doing FTL compilation and the main thread, but it triggers in 100% of cases (before the fix) on my machine
2002         so I decided to add it to the stress tests nonetheless.
2003
2004         * stress/create-rest-while-having-a-bad-time.js: Added.
2005         (f):
2006         (g):
2007         (h):
2008
2009 2018-04-25  Keith Miller  <keith_miller@apple.com>
2010
2011         Add missing scope release to functionProtoFuncToString
2012         https://bugs.webkit.org/show_bug.cgi?id=184995
2013
2014         Reviewed by Saam Barati.
2015
2016         * stress/function-toString-arrow.js: Added.
2017         (async):
2018
2019 2018-04-24  Keith Miller  <keith_miller@apple.com>
2020
2021         fromCharCode is missing some exception checks
2022         https://bugs.webkit.org/show_bug.cgi?id=184952
2023
2024         Reviewed by Saam Barati.
2025
2026         * stress/fromCharCode-exception-check.js: Added.
2027         (get catch):
2028
2029 2018-04-24  Mark Lam  <mark.lam@apple.com>
2030
2031         Gardening: test fix after r230863.
2032         https://bugs.webkit.org/show_bug.cgi?id=184846
2033         <rdar://problem/39390672>
2034
2035         Not reviewed.
2036
2037         * stress/json-stringified-overflow-2.js:
2038         (catch):
2039         * stress/json-stringified-overflow.js:
2040         (catch):
2041
2042 2018-04-20  JF Bastien  <jfbastien@apple.com>
2043
2044         Handle more JSON stringify OOM
2045         https://bugs.webkit.org/show_bug.cgi?id=184846
2046         <rdar://problem/39390672>
2047
2048         Reviewed by Mark Lam.
2049
2050         * stress/json-stringified-overflow-2.js: Added. Same as the one
2051         below, but with a bigger input which will trigger a different code
2052         path.
2053         (catch):
2054         * stress/json-stringified-overflow.js: Modify the test to only
2055         catch OOM on stringification. not on string creation.
2056
2057 2018-04-18  Yusuke Suzuki  <utatane.tea@gmail.com>
2058
2059         [WebAssembly][Modules] Import tables in wasm modules
2060         https://bugs.webkit.org/show_bug.cgi?id=184738
2061
2062         Reviewed by JF Bastien.
2063
2064         * wasm/modules/wasm-imports-js-re-exports-wasm-exports.js:
2065         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm:
2066         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat:
2067         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js:
2068         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm:
2069         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat:
2070         * wasm/modules/wasm-imports-wasm-exports.js:
2071         * wasm/modules/wasm-imports-wasm-exports/imports.wasm:
2072         * wasm/modules/wasm-imports-wasm-exports/imports.wat:
2073         * wasm/modules/wasm-imports-wasm-exports/sum.wasm:
2074         * wasm/modules/wasm-imports-wasm-exports/sum.wat:
2075
2076 2018-04-18  Yusuke Suzuki  <utatane.tea@gmail.com>
2077
2078         [WebAssembly][Modules] Import globals from wasm modules
2079         https://bugs.webkit.org/show_bug.cgi?id=184736
2080
2081         Reviewed by JF Bastien.
2082
2083         * wasm.yaml:
2084         * wasm/modules/wasm-imports-js-re-exports-wasm-exports.js:
2085         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm:
2086         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat:
2087         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js:
2088         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm:
2089         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat:
2090         * wasm/modules/wasm-imports-wasm-exports.js:
2091         * wasm/modules/wasm-imports-wasm-exports/imports.wasm:
2092         * wasm/modules/wasm-imports-wasm-exports/imports.wat:
2093         * wasm/modules/wasm-imports-wasm-exports/sum.wasm:
2094         * wasm/modules/wasm-imports-wasm-exports/sum.wat:
2095
2096 2018-04-18  Yusuke Suzuki  <utatane.tea@gmail.com>
2097
2098         Unreviewed, reland r230697, r230720, and r230724.
2099         https://bugs.webkit.org/show_bug.cgi?id=184600
2100
2101         * wasm.yaml:
2102         * wasm/modules/constant.wasm: Added.
2103         * wasm/modules/constant.wat: Added.
2104         * wasm/modules/default-import-star-error.js: Added.
2105         (then):
2106         * wasm/modules/default-import-star-error/entry.wasm: Added.
2107         * wasm/modules/default-import-star-error/entry.wat: Added.
2108         * wasm/modules/default-import-star-error/t0.js: Added.
2109         * wasm/modules/default-import-star-error/t1.js: Added.
2110         * wasm/modules/default-import-star-error/t2.js: Added.
2111         (export.default.Cocoa):
2112         * wasm/modules/js-wasm-cycle.js: Added.
2113         * wasm/modules/js-wasm-cycle/entry.js: Added.
2114         (from.string_appeared_here.export.return42):
2115         * wasm/modules/js-wasm-cycle/sum.wasm: Added.
2116         * wasm/modules/js-wasm-cycle/sum.wat: Added.
2117         * wasm/modules/js-wasm-function-namespace.js: Added.
2118         (assert.throws):
2119         * wasm/modules/js-wasm-function.js: Added.
2120         (assert.throws):
2121         * wasm/modules/js-wasm-global-namespace.js: Added.
2122         (assert.throws):
2123         * wasm/modules/js-wasm-global.js: Added.
2124         (assert.throws):
2125         * wasm/modules/js-wasm-memory-namespace.js: Added.
2126         (assert.throws):
2127         * wasm/modules/js-wasm-memory.js: Added.
2128         (assert.throws):
2129         * wasm/modules/js-wasm-start.js: Added.
2130         (then):
2131         * wasm/modules/js-wasm-table-namespace.js: Added.
2132         (assert.throws):
2133         * wasm/modules/js-wasm-table.js: Added.
2134         (assert.throws):
2135         * wasm/modules/memory.wasm: Added.
2136         * wasm/modules/memory.wat: Added.
2137         * wasm/modules/run-from-wasm.wasm: Added.
2138         * wasm/modules/run-from-wasm.wat: Added.
2139         * wasm/modules/run-from-wasm/check.js: Added.
2140         (export.check):
2141         * wasm/modules/start.wasm: Added.
2142         * wasm/modules/start.wat: Added.
2143         * wasm/modules/sum.wasm: Added.
2144         * wasm/modules/sum.wat: Added.
2145         * wasm/modules/table.wasm: Added.
2146         * wasm/modules/table.wat: Added.
2147         * wasm/modules/wasm-imports-js-exports.js: Added.
2148         * wasm/modules/wasm-imports-js-exports/imports.wasm: Added.
2149         * wasm/modules/wasm-imports-js-exports/imports.wat: Added.
2150         * wasm/modules/wasm-imports-js-exports/sum.js: Added.
2151         (export.sum):
2152         * wasm/modules/wasm-imports-js-re-exports-wasm-exports.js: Added.
2153         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm: Added.
2154         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat: Added.
2155         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js: Added.
2156         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm: Added.
2157         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat: Added.
2158         * wasm/modules/wasm-imports-wasm-exports.js: Added.
2159         * wasm/modules/wasm-imports-wasm-exports/imports.wasm: Added.
2160         * wasm/modules/wasm-imports-wasm-exports/imports.wat: Added.
2161         * wasm/modules/wasm-imports-wasm-exports/sum.wasm: Added.
2162         * wasm/modules/wasm-imports-wasm-exports/sum.wat: Added.
2163         * wasm/modules/wasm-js-cycle.js: Added.
2164         * wasm/modules/wasm-js-cycle/entry.wasm: Added.
2165         * wasm/modules/wasm-js-cycle/entry.wat: Added.
2166         * wasm/modules/wasm-js-cycle/sum.js: Added.
2167         (from.string_appeared_here.export.sum):
2168         * wasm/modules/wasm-wasm-cycle.js: Added.
2169         * wasm/modules/wasm-wasm-cycle/entry.wasm: Added.
2170         * wasm/modules/wasm-wasm-cycle/entry.wat: Added.
2171         * wasm/modules/wasm-wasm-cycle/sum.wasm: Added.
2172         * wasm/modules/wasm-wasm-cycle/sum.wat: Added.
2173
2174 2018-04-17  Commit Queue  <commit-queue@webkit.org>
2175
2176         Unreviewed, rolling out r230697, r230720, and r230724.
2177         https://bugs.webkit.org/show_bug.cgi?id=184717
2178
2179         These caused multiple failures on the Test262 testers.
2180         (Requested by mlewis13 on #webkit).
2181
2182         Reverted changesets:
2183
2184         "[WebAssembly][Modules] Prototype wasm import"
2185         https://bugs.webkit.org/show_bug.cgi?id=184600
2186         https://trac.webkit.org/changeset/230697
2187
2188         "[WebAssembly][Modules] Implement function import from wasm
2189         modules"
2190         https://bugs.webkit.org/show_bug.cgi?id=184689
2191         https://trac.webkit.org/changeset/230720
2192
2193         "[JSC] Rename runWebAssembly to runWebAssemblySuite"
2194         https://bugs.webkit.org/show_bug.cgi?id=184703
2195         https://trac.webkit.org/changeset/230724
2196
2197 2018-04-17  JF Bastien  <jfbastien@apple.com>
2198
2199         A put is not an ExistingProperty put when we transition a structure because of an attributes change
2200         https://bugs.webkit.org/show_bug.cgi?id=184706
2201         <rdar://problem/38871451>
2202
2203         Reviewed by Saam Barati.
2204
2205         * stress/put-by-id-direct-strict-transition.js: Added.
2206         (const.foo):
2207         (j.const.obj.set hello):
2208         * stress/put-by-id-direct-transition.js: Added.
2209         (const.foo):
2210         (j.const.obj.set hello):
2211         * stress/put-getter-setter-by-id-strict-transition.js: Added.
2212         (const.foo):
2213         (j.const.obj.set hello):
2214         * stress/put-getter-setter-by-id-transition.js: Added.
2215         (const.foo):
2216         (j.const.obj.set hello):
2217
2218 2018-04-16  Filip Pizlo  <fpizlo@apple.com>
2219
2220         PutStackSinkingPhase should know that KillStack means ConflictingFlush
2221         https://bugs.webkit.org/show_bug.cgi?id=184672
2222
2223         Reviewed by Michael Saboff.
2224
2225         * stress/sink-put-stack-over-kill-stack.js: Added.
2226         (avocado_1):
2227         (apricot_0):
2228         (__c_0):
2229         (banana_2):
2230
2231 2018-04-17  Yusuke Suzuki  <utatane.tea@gmail.com>
2232
2233         [JSC] Rename runWebAssembly to runWebAssemblySuite
2234         https://bugs.webkit.org/show_bug.cgi?id=184703
2235
2236         Reviewed by JF Bastien.
2237
2238         And add runWebAssembly as a command to simplely run wasm modules.
2239
2240         * wasm.yaml:
2241
2242 2018-04-17  Yusuke Suzuki  <utatane.tea@gmail.com>
2243
2244         [WebAssembly][Modules] Implement function import from wasm modules
2245         https://bugs.webkit.org/show_bug.cgi?id=184689
2246
2247         Reviewed by JF Bastien.
2248
2249         * wasm.yaml:
2250         * wasm/modules/js-wasm-cycle.js: Added.
2251         * wasm/modules/js-wasm-cycle/entry.js: Added.
2252         (from.string_appeared_here.export.return42):
2253         * wasm/modules/js-wasm-cycle/sum.wasm: Added.
2254         * wasm/modules/js-wasm-cycle/sum.wat: Added.
2255         * wasm/modules/run-from-wasm.wasm: Added.
2256         * wasm/modules/run-from-wasm.wat: Added.
2257         * wasm/modules/run-from-wasm/check.js: Added.
2258         (export.check):
2259         * wasm/modules/wasm-imports-js-exports.js: Added.
2260         * wasm/modules/wasm-imports-js-exports/imports.wasm: Added.
2261         * wasm/modules/wasm-imports-js-exports/imports.wat: Added.
2262         * wasm/modules/wasm-imports-js-exports/sum.js: Added.
2263         (export.sum):
2264         * wasm/modules/wasm-imports-js-re-exports-wasm-exports.js: Added.
2265         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm: Added.
2266         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat: Added.
2267         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js: Added.
2268         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm: Added.
2269         * wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat: Added.
2270         * wasm/modules/wasm-imports-wasm-exports.js: Added.
2271         * wasm/modules/wasm-imports-wasm-exports/imports.wasm: Added.
2272         * wasm/modules/wasm-imports-wasm-exports/imports.wat: Added.
2273         * wasm/modules/wasm-imports-wasm-exports/sum.wasm: Added.
2274         * wasm/modules/wasm-imports-wasm-exports/sum.wat: Added.
2275         * wasm/modules/wasm-js-cycle.js: Added.
2276         * wasm/modules/wasm-js-cycle/entry.wasm: Added.
2277         * wasm/modules/wasm-js-cycle/entry.wat: Added.
2278         * wasm/modules/wasm-js-cycle/sum.js: Added.
2279         (from.string_appeared_here.export.sum):
2280         * wasm/modules/wasm-wasm-cycle.js: Added.
2281         * wasm/modules/wasm-wasm-cycle/entry.wasm: Added.
2282         * wasm/modules/wasm-wasm-cycle/entry.wat: Added.
2283         * wasm/modules/wasm-wasm-cycle/sum.wasm: Added.
2284         * wasm/modules/wasm-wasm-cycle/sum.wat: Added.
2285
2286 2018-04-16  Yusuke Suzuki  <utatane.tea@gmail.com>
2287
2288         [WebAssembly][Modules] Prototype wasm import
2289         https://bugs.webkit.org/show_bug.cgi?id=184600
2290
2291         Reviewed by JF Bastien.
2292
2293         Add wasm and wat files since module loader want to load wasm files from FS.
2294         Currently, importing the other modules from wasm is not supported.
2295
2296         * wasm.yaml:
2297         * wasm/modules/constant.wasm: Added.
2298         * wasm/modules/constant.wat: Added.
2299         * wasm/modules/js-wasm-function-namespace.js: Added.
2300         (assert.throws):
2301         * wasm/modules/js-wasm-function.js: Added.
2302         (assert.throws):
2303         * wasm/modules/js-wasm-global-namespace.js: Added.
2304         (assert.throws):
2305         * wasm/modules/js-wasm-global.js: Added.
2306         (assert.throws):
2307         * wasm/modules/js-wasm-memory-namespace.js: Added.
2308         (assert.throws):
2309         * wasm/modules/js-wasm-memory.js: Added.
2310         (assert.throws):
2311         * wasm/modules/js-wasm-start.js: Added.
2312         (then):
2313         * wasm/modules/js-wasm-table-namespace.js: Added.
2314         (assert.throws):
2315         * wasm/modules/js-wasm-table.js: Added.
2316         (assert.throws):
2317         * wasm/modules/memory.wasm: Added.
2318         * wasm/modules/memory.wat: Added.
2319         * wasm/modules/start.wasm: Added.
2320         * wasm/modules/start.wat: Added.
2321         * wasm/modules/sum.wasm: Added.
2322         * wasm/modules/sum.wat: Added.
2323         * wasm/modules/table.wasm: Added.
2324         * wasm/modules/table.wat: Added.
2325
2326 2018-04-14  Filip Pizlo  <fpizlo@apple.com>
2327
2328         Function.prototype.caller shouldn't return generator bodies
2329         https://bugs.webkit.org/show_bug.cgi?id=184630
2330
2331         Reviewed by Yusuke Suzuki.
2332
2333         * stress/function-caller-async-arrow-function-body.js: Added.
2334         * stress/function-caller-async-function-body.js: Added.
2335         * stress/function-caller-async-generator-body.js: Added.
2336         * stress/function-caller-generator-body.js: Added.
2337         * stress/function-caller-generator-method-body.js: Added.
2338
2339 2018-04-12  Tomas Popela  <tpopela@redhat.com>
2340
2341         Unreviewed, skip JIT tests if it isn't enabled
2342
2343         See https://bugs.webkit.org/show_bug.cgi?id=182730.
2344
2345         * stress/big-int-spec-to-primitive.js:
2346         * stress/big-int-spec-to-this.js:
2347
2348 2018-04-10  Caio Lima  <ticaiolima@gmail.com>
2349
2350         [ESNext][BigInt] Add support for BigInt in SpeculatedType
2351         https://bugs.webkit.org/show_bug.cgi?id=182470
2352
2353         Reviewed by Saam Barati.
2354
2355         * stress/big-int-spec-to-primitive.js: Added.
2356         * stress/big-int-spec-to-this.js: Added.
2357         * stress/big-int-strict-equals-jit.js: Added.
2358         * stress/big-int-strict-spec-to-this.js: Added.
2359         * stress/big-int-type-of-proven-type.js: Added.
2360
2361 2018-04-10  Filip Pizlo  <fpizlo@apple.com>
2362
2363         DFG AI and clobberize should agree with each other
2364         https://bugs.webkit.org/show_bug.cgi?id=184440
2365
2366         Reviewed by Saam Barati.
2367         
2368         Add tests for all of the bugs I fixed.
2369
2370         * stress/direct-arguments-out-of-bounds-change-structure.js: Added.
2371         (foo):
2372         * stress/new-typed-array-cse-effects.js: Added.
2373         (foo):
2374         * stress/scoped-arguments-out-of-bounds-change-structure.js: Added.
2375         (foo.theO):
2376         (foo):
2377         * stress/string-from-char-code-change-structure-not-dead.js: Added.
2378         (foo):
2379         (i.valueOf):
2380         (weirdValue.valueOf):
2381         * stress/string-from-char-code-change-structure.js: Added.
2382         (foo):
2383         (i.valueOf):
2384         (weirdValue.valueOf):
2385
2386 2018-04-09  Leo Balter  <leonardo.balter@gmail.com>
2387
2388         Fix errant Test262 files CRLF to LF for consistency with the original source
2389         https://bugs.webkit.org/show_bug.cgi?id=184425
2390
2391         Reviewed by Yusuke Suzuki.
2392
2393         * test262/test/built-ins/Math/acosh/nan-returns.js:
2394         * test262/test/built-ins/Math/asinh/asinh-specialVals.js:
2395         * test262/test/built-ins/Math/atanh/atanh-specialVals.js:
2396         * test262/test/built-ins/Math/cbrt/cbrt-specialValues.js:
2397         * test262/test/built-ins/Math/cbrt/prop-desc.js:
2398         * test262/test/built-ins/Math/cosh/cosh-specialVals.js:
2399         * test262/test/built-ins/Math/expm1/expm1-specialVals.js:
2400         * test262/test/built-ins/Math/log10/Log10-specialVals.js:
2401         * test262/test/built-ins/Math/log2/log2-basicTests.js:
2402         * test262/test/built-ins/Math/sign/sign-specialVals.js:
2403         * test262/test/built-ins/Math/sinh/sinh-specialVals.js:
2404         * test262/test/built-ins/Math/tanh/tanh-specialVals.js:
2405         * test262/test/built-ins/Math/trunc/trunc-sampleTests.js:
2406         * test262/test/built-ins/Math/trunc/trunc-specialVals.js:
2407
2408 2018-04-08  Yusuke Suzuki  <utatane.tea@gmail.com>
2409
2410         Unreviewed, remove incorrect entry in test262.yaml
2411         https://bugs.webkit.org/show_bug.cgi?id=184266
2412
2413         * test262.yaml:
2414
2415 2018-04-08  Valerie Young  <valerie@bocoup.com>
2416
2417         [JSC] Update Test262 to April 6 version
2418         https://bugs.webkit.org/show_bug.cgi?id=184266
2419
2420         Rubber stamped by Yusuke Suzuki.
2421
2422 2018-04-08  Yusuke Suzuki  <utatane.tea@gmail.com>
2423
2424         [JSC] Introduce op_get_by_id_direct
2425         https://bugs.webkit.org/show_bug.cgi?id=183970
2426
2427         Reviewed by Filip Pizlo.
2428
2429         * stress/generator-prototype-copy.js: Added.
2430         (gen):
2431         (catch):
2432         Adopted JF's tests.
2433
2434         * stress/generator-type-check.js: Added.
2435         (shouldThrow):
2436         (foo2):
2437         (i.shouldThrow):
2438         * stress/get-by-id-direct-getter.js: Added.
2439         (shouldBe):
2440         (shouldThrow):
2441         (obj.get hello):
2442         (builtin.createBuiltin):
2443         (obj2.get length):
2444         * stress/get-by-id-direct.js: Added.
2445         (shouldBe):
2446         (shouldThrow):
2447         (builtin.createBuiltin):
2448         * test262.yaml:
2449         We fixed long-standing spec compatibility issue.
2450         As a result, this patch makes several test262 tests passed!
2451
2452
2453 2018-04-07  Yusuke Suzuki  <utatane.tea@gmail.com>
2454
2455         Unreviewed, annotate test with @skip if $memoryLimited
2456         https://bugs.webkit.org/show_bug.cgi?id=183894
2457
2458         * stress/json-stringified-overflow.js:
2459
2460 2018-04-06  Alexey Proskuryakov  <ap@apple.com>
2461
2462         Add svn:eol-style to line-terminator-normalisation-CR.js
2463         https://bugs.webkit.org/show_bug.cgi?id=184341
2464
2465         * test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js: Added property svn:eol-style.
2466
2467 2018-04-06  Ross Kirsling  <ross.kirsling@sony.com>
2468
2469         Unreviewed, remove errant LF from existing test262 test for CR line endings.
2470
2471         * test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js:
2472
2473 2018-04-05  Ross Kirsling  <ross.kirsling@sony.com>
2474
2475         Unreviewed, rolling out r230320.
2476
2477         Revert fix, as the root cause lies elsewhere.
2478
2479         Reverted changeset:
2480
2481         "[test262] Mark line-terminator-normalisation-CR.js as a
2482         binary file."
2483         https://bugs.webkit.org/show_bug.cgi?id=184341
2484         https://trac.webkit.org/changeset/230320
2485
2486 2018-04-05  Ross Kirsling  <ross.kirsling@sony.com>
2487
2488         [test262] Mark line-terminator-normalisation-CR.js as a binary file.
2489         https://bugs.webkit.org/show_bug.cgi?id=184341
2490
2491         Reviewed by Yusuke Suzuki.
2492
2493         This test is all about CR line endings, but `svn-apply` can't deal with them.
2494         Treating the file as binary ensures that its contents never are never shown in a diff.
2495
2496         * .gitattributes: Added.
2497
2498 2018-04-05  Robin Morisset  <rmorisset@apple.com>
2499
2500         Fix testcase (missing try/catch).
2501         https://bugs.webkit.org/show_bug.cgi?id=183657
2502
2503         Unreviewed.
2504
2505         * stress/large-unshift-splice.js
2506
2507 2018-04-04  Filip Pizlo  <fpizlo@apple.com>
2508
2509         REGRESSION(r222563): removed DoubleReal type check causes tons of crashes because CSE has never known how to handle SaneChain
2510         https://bugs.webkit.org/show_bug.cgi?id=184319
2511
2512         Reviewed by Saam Barati.
2513
2514         * stress/array-push-nan-to-double-array-cse-sane-and-insane-chain.js: Added.
2515         (foo):
2516         (bar):
2517         * stress/array-push-nan-to-double-array.js: Added.
2518         (foo):
2519         (bar):
2520
2521 2018-04-03  Mark Lam  <mark.lam@apple.com>
2522
2523         Test js-fixed-array-out-of-memory.js should be excluded for memory limited devices.
2524         https://bugs.webkit.org/show_bug.cgi?id=184284
2525
2526         Reviewed by Saam Barati.
2527
2528         * stress/js-fixed-array-out-of-memory.js:
2529
2530 2018-03-31  Filip Pizlo  <fpizlo@apple.com>
2531
2532         JSC crash in JIT code with for-of loop and Array/Set iterators
2533         https://bugs.webkit.org/show_bug.cgi?id=183174
2534
2535         Reviewed by Saam Barati.
2536
2537         * microbenchmarks/hoist-get-by-offset-tower-with-inferred-types.js: Added. This test shows that fixing the bug didn't break hoisting of GetByOffset with inferred types. I confirmed that if I did break it, this test slows down by >7x.
2538         (foo):
2539         * stress/hoist-get-by-offset-with-control-dependent-inferred-type.js: Added. This test shows that the bug is fixed.
2540         (f):
2541
2542 2018-03-30  JF Bastien  <jfbastien@apple.com>
2543
2544         WebAssembly: support DataView compilation
2545         https://bugs.webkit.org/show_bug.cgi?id=183342
2546
2547         Reviewed by Mark Lam.
2548
2549         Test WebAssembly compilation using a DataView with offset.
2550
2551         * wasm/regress/183342.js: Added.
2552         (attempt.catch):
2553
2554 2018-03-30  Filip Pizlo  <fpizlo@apple.com>
2555
2556         Bytecode generator should not get_from_scope something that may be a hole into a variable that is already live
2557         https://bugs.webkit.org/show_bug.cgi?id=184189
2558
2559         Reviewed by JF Bastien.
2560
2561         * stress/load-hole-from-scope-into-live-var.js: Added.
2562         (result.eval.try.switch):
2563         (catch):
2564
2565 2018-03-30  Ryan Haddad  <ryanhaddad@apple.com>
2566
2567         Unreviewed, rolling out r230102.
2568
2569         Caused assertion failures on JSC bots.
2570
2571         Reverted changeset:
2572
2573         "A stack overflow in the parsing of a builtin (called by
2574         createExecutable) cause a crash instead of a catchable js
2575         exception"
2576         https://bugs.webkit.org/show_bug.cgi?id=184074
2577         https://trac.webkit.org/changeset/230102
2578
2579 2018-03-30  Robin Morisset  <rmorisset@apple.com>
2580
2581         Inlining of a function that ends in op_unreachable in a non-tail position triggers an ASSERT
2582         https://bugs.webkit.org/show_bug.cgi?id=183812
2583
2584         Reviewed by Keith Miller.
2585
2586         * stress/inlining-unreachable-non-tail.js: Added.
2587         (foo.):
2588         (foo):
2589
2590 2018-03-30  Robin Morisset  <rmorisset@apple.com>
2591
2592         A stack overflow in the parsing of a builtin (called by createExecutable) cause a crash instead of a catchable js exception
2593         https://bugs.webkit.org/show_bug.cgi?id=184074
2594         <rdar://problem/37165897>
2595
2596         Reviewed by Keith Miller.
2597
2598         * stress/stack-overflow-while-parsing-builtin.js: Added.
2599         (f):
2600
2601 2018-03-30  Robin Morisset  <rmorisset@apple.com>
2602
2603         Out-of-bounds accesses due to a missing check for MAX_STORAGE_VECTOR_LENGTH in unshiftCountForAnyIndexingType
2604         https://bugs.webkit.org/show_bug.cgi?id=183657
2605
2606         Reviewed by Keith Miller.
2607
2608         * stress/large-unshift-splice.js: Added.
2609         (make_contig_arr):
2610
2611 2018-03-28  Robin Morisset  <rmorisset@apple.com>
2612
2613         appendQuotedJSONString stops on arithmetic overflow instead of propagating it upwards
2614         https://bugs.webkit.org/show_bug.cgi?id=183894
2615
2616         Reviewed by Saam Barati.
2617
2618         * stress/json-stringified-overflow.js: Added.
2619         (catch):
2620
2621 2018-03-26  Filip Pizlo  <fpizlo@apple.com>
2622
2623         DFG should know that CreateThis can be effectful
2624         https://bugs.webkit.org/show_bug.cgi?id=184013
2625
2626         Reviewed by Saam Barati.
2627
2628         * stress/create-this-property-change.js: Added.
2629         (Foo):
2630         (RealBar):
2631         (get if):
2632         * stress/create-this-structure-change-without-cse.js: Added.
2633         (Foo):
2634         (RealBar):
2635         (get if):
2636         * stress/create-this-structure-change.js: Added.
2637         (Foo):
2638         (RealBar):
2639         (get if):
2640
2641 2018-03-22  Yusuke Suzuki  <utatane.tea@gmail.com>
2642
2643         [DFG] Introduces fused compare and jump
2644         https://bugs.webkit.org/show_bug.cgi?id=177100
2645
2646         Reviewed by Mark Lam.
2647
2648         * stress/fused-jeq-slow.js: Added.
2649         (shouldBe):
2650         (testJEQ):
2651         (testJNEQB):
2652         (testJEQB):
2653         (testJNEQF):
2654         (testJEQF):
2655         * stress/fused-jeq.js: Added.
2656         (shouldBe):
2657         (testJEQ):
2658         (testJNEQB):
2659         (testJEQB):
2660         (testJNEQF):
2661         (testJEQF):
2662         * stress/fused-jstricteq-slow.js: Added.
2663         (shouldBe):
2664         (testJSTRICTEQ):
2665         (testJNSTRICTEQB):
2666         (testJSTRICTEQB):
2667         (testJNSTRICTEQF):
2668         (testJSTRICTEQF):
2669         * stress/fused-jstricteq.js: Added.
2670         (shouldBe):
2671         (testJSTRICTEQ):
2672         (testJNSTRICTEQB):
2673         (testJSTRICTEQB):
2674         (testJNSTRICTEQF):
2675         (testJSTRICTEQF):
2676
2677 2018-03-22  Yusuke Suzuki  <utatane.tea@gmail.com>
2678
2679         [JSC] Clear MustGenerate for ToString(Number) converted from NumberToStringWithRadix
2680         https://bugs.webkit.org/show_bug.cgi?id=183559
2681
2682         Reviewed by Mark Lam.
2683
2684         * stress/double-to-string-in-loop-removed.js: Added.
2685         (test):
2686         * stress/int32-to-string-in-loop-removed.js: Added.
2687         (test):
2688         * stress/int52-to-string-in-loop-removed.js: Added.
2689         (test):
2690
2691 2018-03-22  Michael Saboff  <msaboff@apple.com>
2692
2693         Race Condition in arrayProtoFuncReverse() causes wrong results or crash
2694         https://bugs.webkit.org/show_bug.cgi?id=183901
2695
2696         Reviewed by Keith Miller.
2697
2698         New test.
2699
2700         * stress/array-reverse-doesnt-clobber.js: Added.
2701         (testArrayReverse):
2702         (createArrayOfArrays):
2703         (createArrayStorage):
2704
2705 2018-03-21  Filip Pizlo  <fpizlo@apple.com>
2706
2707         ScopedArguments should do poisoning and index masking
2708         https://bugs.webkit.org/show_bug.cgi?id=183863
2709
2710         Reviewed by Mark Lam.
2711         
2712         Adds another stress test of scoped arguments.
2713
2714         * stress/scoped-arguments-test.js: Added.
2715         (foo):
2716
2717 2018-03-20  Saam Barati  <sbarati@apple.com>
2718
2719         We need to do proper bookkeeping of exitOK when inserting constants when sinking NewArrayBuffer
2720         https://bugs.webkit.org/show_bug.cgi?id=183795
2721         <rdar://problem/38298694>
2722
2723         Reviewed by JF Bastien.
2724
2725         * stress/sink-phantom-new-array-buffer-exit-ok.js: Added.
2726         (foo):
2727         (bar):
2728
2729 2018-03-16  Yusuke Suzuki  <utatane.tea@gmail.com>
2730
2731         [DFG][FTL] Add vectorLengthHint for NewArray
2732         https://bugs.webkit.org/show_bug.cgi?id=183694
2733
2734         Reviewed by Saam Barati.
2735
2736         * stress/vector-length-hint-array-constructor.js: Added.
2737         (shouldBe):
2738         (test):
2739         * stress/vector-length-hint-new-array.js: Added.
2740         (shouldBe):
2741         (test):
2742
2743 2018-03-13  Yusuke Suzuki  <utatane.tea@gmail.com>
2744
2745         [DFG][FTL] Make ArraySlice(0) code tight
2746         https://bugs.webkit.org/show_bug.cgi?id=183590
2747
2748         Reviewed by Saam Barati.
2749
2750         * stress/array-slice-with-zero.js: Added.
2751         (shouldBe):
2752         (test):
2753         (test2):
2754         * stress/array-slice-zero-args.js: Added.
2755         (shouldBe):
2756         (test):
2757
2758 2018-03-14  Caitlin Potter  <caitp@igalia.com>
2759
2760         [JSC] fix order of evaluation for ClassDefinitionEvaluation
2761         https://bugs.webkit.org/show_bug.cgi?id=183523
2762
2763         Reviewed by Keith Miller.
2764
2765         Computed property names need to be evaluated in source order during class
2766         definition evaluation, as it's observable (and specified to work this way).
2767
2768         This change improves compatibility with Chromium.
2769
2770         * stress/class_elements.js: Added.
2771         (test):
2772         (test.C.prototype.effect):
2773         (test.C.effect):
2774         (test.C.prototype.get effect):
2775         (test.C.prototype.set effect):
2776         (test.C):
2777
2778 2018-03-11  Yusuke Suzuki  <utatane.tea@gmail.com>
2779
2780         [DFG] AI should convert CreateThis to NewObject if the prototype object is proved
2781         https://bugs.webkit.org/show_bug.cgi?id=183310
2782
2783         Reviewed by Filip Pizlo.
2784
2785         * stress/ai-create-this-to-new-object-fire.js: Added.
2786         (assert):
2787         (test):
2788         (func):
2789         (check):
2790         (test.body.A):
2791         (test.body.B):
2792         (test.body):
2793         * stress/ai-create-this-to-new-object.js: Added.
2794         (assert):
2795         (test):
2796         (func):
2797         (check):
2798         (test.body.A):
2799         (test.body.B):
2800         (test.body):
2801
2802 2018-03-10  Yusuke Suzuki  <utatane.tea@gmail.com>
2803
2804         [FTL] Drop NewRegexp for String.prototype.match with RegExp + global flag
2805         https://bugs.webkit.org/show_bug.cgi?id=181848
2806
2807         Reviewed by Sam Weinig.
2808
2809         * microbenchmarks/regexp-u-global-es5.js: Added.
2810         (fn):
2811         * microbenchmarks/regexp-u-global-es6.js: Added.
2812         (fn):
2813         * stress/materialized-regexp-has-correct-last-index-set-by-match-at-osr-exit.js: Added.
2814         (shouldBe):
2815         (test):
2816         (i.switch):
2817         * stress/materialized-regexp-has-correct-last-index-set-by-match.js: Added.
2818         (shouldBe):
2819         (test):
2820
2821 2018-03-07  Dominik Infuehr  <dinfuehr@igalia.com>
2822
2823         Disable test stress/var-injection-cache-invalidation.js on systems with limited memory
2824         https://bugs.webkit.org/show_bug.cgi?id=183334
2825
2826         Reviewed by Žan Doberšek.
2827
2828         * stress/var-injection-cache-invalidation.js:
2829
2830 2018-03-06  Dominik Infuehr  <dinfuehr@igalia.com>
2831
2832         [ARM] Disable tests that run out of memory
2833         https://bugs.webkit.org/show_bug.cgi?id=182699
2834
2835         Reviewed by Žan Doberšek.
2836
2837         Skip tests that run of of memory. Do not run
2838         modules/module-jit-reachability.js without LLInt to prevent
2839         running out of executable memory.
2840
2841         * modules.yaml:
2842         * modules/module-jit-reachability.js:
2843         * stress/has-own-property-name-cache-string-keys.js:
2844         * stress/has-own-property-name-cache-symbol-keys.js:
2845
2846 2018-03-01  Yusuke Suzuki  <utatane.tea@gmail.com>
2847
2848         ASSERTION FAILED: matchContextualKeyword(m_vm->propertyNames->async)
2849         https://bugs.webkit.org/show_bug.cgi?id=183173
2850
2851         Reviewed by Saam Barati.
2852
2853         * stress/async-arrow-function-in-class-heritage.js: Added.
2854         (testSyntax):
2855         (testSyntaxError):
2856         (SyntaxError):
2857
2858 2018-03-01  Saam Barati  <sbarati@apple.com>
2859
2860         We need to clear cached structures when having a bad time
2861         https://bugs.webkit.org/show_bug.cgi?id=183256
2862         <rdar://problem/36245022>
2863
2864         Reviewed by Mark Lam.
2865
2866         * stress/having-a-bad-time-with-derived-arrays.js: Added.
2867         (assert):
2868         (defineSetter):
2869         (iterate):
2870         (doSlice):
2871
2872 2018-02-28  Yusuke Suzuki  <utatane.tea@gmail.com>
2873
2874         JSC crash with `import("")`
2875         https://bugs.webkit.org/show_bug.cgi?id=183175
2876
2877         Reviewed by Saam Barati.
2878
2879         * stress/import-with-empty-string.js: Added.
2880
2881 2018-02-27  Yusuke Suzuki  <utatane.tea@gmail.com>
2882
2883         Unreviewed, skip FTL tests if FTL is disabled
2884         https://bugs.webkit.org/show_bug.cgi?id=183071
2885
2886         * stress/has-indexed-property-array-storage-ftl.js:
2887         * stress/has-indexed-property-slow-put-array-storage-ftl.js:
2888
2889 2018-02-25  Yusuke Suzuki  <utatane.tea@gmail.com>
2890
2891         [FTL] Support PutByVal(ArrayStorage/SlowPutArrayStorage)
2892         https://bugs.webkit.org/show_bug.cgi?id=182965
2893
2894         Reviewed by Saam Barati.
2895
2896         * stress/put-by-val-array-storage.js: Added.
2897         (shouldBe):
2898         (testArrayStorageInBounds):
2899         * stress/put-by-val-direct-out-of-bounds-setter.js: Added.
2900         (shouldBe):
2901         (testInt32.createBuiltin):
2902         (set for):
2903         * stress/put-by-val-slow-put-array-storage.js: Added.
2904         (shouldBe):
2905         (testArrayStorageInBounds):
2906
2907 2018-02-26  Saam Barati  <sbarati@apple.com>
2908
2909         validateStackAccess should not validate if the offset is within the stack bounds
2910         https://bugs.webkit.org/show_bug.cgi?id=183067
2911         <rdar://problem/37749988>
2912
2913         Reviewed by Mark Lam.
2914
2915         * stress/dont-validate-stack-offset-in-b3-because-it-might-be-guarded-by-control-flow.js: Added.
2916         (assert):
2917         (test.a):
2918         (test.b):
2919         (test):
2920
2921 2018-02-26  Yusuke Suzuki  <utatane.tea@gmail.com>
2922
2923         Unreviewed, skip FTL tests if FTL is disabled
2924         https://bugs.webkit.org/show_bug.cgi?id=183071
2925
2926         * stress/has-indexed-property-array-storage-ftl.js:
2927         * stress/has-indexed-property-slow-put-array-storage-ftl.js:
2928
2929 2018-02-23  Saam Barati  <sbarati@apple.com>
2930
2931         Make Number.isInteger an intrinsic
2932         https://bugs.webkit.org/show_bug.cgi?id=183088
2933
2934         Reviewed by JF Bastien.
2935
2936         * stress/number-is-integer-intrinsic.js: Added.
2937
2938 2018-02-23  Oleksandr Skachkov  <gskachkov@gmail.com>
2939
2940         WebAssembly: cache memory address / size on instance
2941         https://bugs.webkit.org/show_bug.cgi?id=177305
2942
2943         Reviewed by JF Bastien.
2944
2945         * wasm/function-tests/memory-reuse.js: Added.
2946         (createWasmInstance):
2947         (doCheckTrap):
2948         (doMemoryGrow):
2949         (doCheck):
2950         (checkWasmInstancesWithSharedMemory):
2951
2952 2018-02-23  Yusuke Suzuki  <utatane.tea@gmail.com>
2953
2954         [JSC] Implement $vm.ftlTrue function for FTL testing
2955         https://bugs.webkit.org/show_bug.cgi?id=183071
2956
2957         Reviewed by Mark Lam.
2958
2959         * stress/dead-fiat-value-to-int52-then-exit-not-double.js:
2960         (foo):
2961         * stress/dead-fiat-value-to-int52-then-exit-not-int52.js:
2962         (foo):
2963         * stress/dead-fiat-value-to-int52.js:
2964         (foo):
2965         * stress/dead-osr-entry-value.js:
2966         (foo):
2967         * stress/fiat-value-to-int52-then-exit-not-double.js:
2968         (foo):
2969         * stress/fiat-value-to-int52-then-exit-not-int52.js:
2970         (foo):
2971         * stress/fiat-value-to-int52-then-fail-to-fold.js:
2972         (foo):
2973         * stress/fiat-value-to-int52-then-fold.js:
2974         (foo):
2975         * stress/fiat-value-to-int52.js:
2976         (foo):
2977         * stress/fold-based-on-int32-proof-mul-branch.js:
2978         (foo):
2979         * stress/fold-profiled-call-to-call.js:
2980         (foo):
2981         * stress/fold-to-double-constant-then-exit.js:
2982         (foo):
2983         * stress/fold-to-int52-constant-then-exit.js:
2984         (foo):
2985         * stress/fold-to-primitive-in-cfa.js:
2986         (foo):
2987         * stress/fold-to-primitive-to-identity-in-cfa.js:
2988         (foo):
2989         * stress/has-indexed-property-array-storage-ftl.js: Added.
2990         (shouldBe):
2991         (test1):
2992         (test2):
2993         * stress/has-indexed-property-slow-put-array-storage-ftl.js: Added.
2994         (shouldBe):
2995         (test1):
2996         (test2):
2997         * stress/int52-ai-add-then-filter-int32.js:
2998         (foo):
2999         * stress/int52-ai-mul-and-clean-neg-zero-then-filter-int32.js:
3000         (foo):
3001         * stress/int52-ai-mul-then-filter-int32.js:
3002         (foo):
3003         * stress/int52-ai-neg-then-filter-int32.js:
3004         (foo):
3005         * stress/int52-ai-sub-then-filter-int32.js:
3006         (foo):
3007         * stress/licm-pre-header-cannot-exit-nested.js:
3008         (foo):
3009         * stress/licm-pre-header-cannot-exit.js:
3010         (foo):
3011         * stress/sparse-array-entry-update-144067.js:
3012         (useMemoryToTriggerGCs):
3013         * stress/test-spec-misc.js:
3014         (foo):
3015         * stress/tricky-array-bounds-checks.js:
3016         (foo):
3017
3018 2018-02-22  Yusuke Suzuki  <utatane.tea@gmail.com>
3019
3020         [FTL] Support HasIndexedProperty for ArrayStorage and SlowPutArrayStorage
3021         https://bugs.webkit.org/show_bug.cgi?id=182792
3022
3023         Reviewed by Mark Lam.
3024
3025         * stress/has-indexed-property-array-storage.js: Added.
3026         (shouldBe):
3027         (test1):
3028         (test2):
3029         * stress/has-indexed-property-slow-put-array-storage.js: Added.
3030         (shouldBe):
3031         (test1):
3032         (test2):
3033
3034 2018-02-20  Saam Barati  <sbarati@apple.com>
3035
3036         DFG::VarargsForwardingPhase should eliminate getting argument length
3037         https://bugs.webkit.org/show_bug.cgi?id=182959
3038
3039         Reviewed by Keith Miller.
3040
3041         * microbenchmarks/forward-arguments-dont-escape-on-arguments-length.js: Added.
3042
3043 2018-02-14  Yusuke Suzuki  <utatane.tea@gmail.com>
3044
3045         [FTL] Support ArrayPush for ArrayStorage
3046         https://bugs.webkit.org/show_bug.cgi?id=182782
3047
3048         Reviewed by Saam Barati.
3049
3050         Existing array-push-multiple-storage.js covers ArrayPush(ArrayStorage) multiple arguments case.
3051
3052         * stress/array-push-array-storage-beyond-int32.js: Added.
3053         (shouldBe):
3054         (test):
3055         * stress/array-push-array-storage.js: Added.
3056         (shouldBe):
3057         (test):
3058         * stress/array-push-multiple-array-storage-beyond-int32.js: Added.
3059         (shouldBe):
3060         (test):
3061         * stress/array-push-multiple-storage-continuous.js: Added.
3062         (shouldBe):
3063         (test):
3064
3065 2018-02-14  Yusuke Suzuki  <utatane.tea@gmail.com>
3066
3067         [FTL] Support ArrayPop for ArrayStorage
3068         https://bugs.webkit.org/show_bug.cgi?id=182783
3069
3070         Reviewed by Saam Barati.
3071
3072         * stress/array-pop-array-storage.js: Added.
3073         (shouldBe):
3074         (test):
3075
3076 2018-02-14  Yusuke Suzuki  <utatane.tea@gmail.com>
3077
3078         [FTL] Add Arrayify for ArrayStorage and SlowPutArrayStorage
3079         https://bugs.webkit.org/show_bug.cgi?id=182731
3080
3081         Reviewed by Saam Barati.
3082
3083         * stress/arrayify-array-storage-array.js: Added.
3084         (shouldBe):
3085         (testArrayStorage):
3086         * stress/arrayify-array-storage-non-array.js: Added.
3087         (shouldBe):
3088         (testArrayStorage):
3089         * stress/arrayify-array-storage.js: Added.
3090         (shouldBe):
3091         (testArrayStorage):
3092         * stress/arrayify-slow-put-array-storage-pass-array-storage.js: Added.
3093         (shouldBe):
3094         (testArrayStorage):
3095         * stress/arrayify-slow-put-array-storage.js: Added.
3096         (shouldBe):
3097         (testArrayStorage):
3098
3099 2018-02-19  Saam Barati  <sbarati@apple.com>
3100
3101         Don't use JSFunction's allocation profile when getting the prototype can be effectful
3102         https://bugs.webkit.org/show_bug.cgi?id=182942
3103         <rdar://problem/37584764>
3104
3105         Reviewed by Mark Lam.
3106
3107         * stress/get-prototype-create-this-effectful.js: Added.
3108
3109 2018-02-16  Saam Barati  <sbarati@apple.com>
3110
3111         Fix bugs from r228411
3112         https://bugs.webkit.org/show_bug.cgi?id=182851
3113         <rdar://problem/37577732>
3114
3115         Reviewed by JF Bastien.
3116
3117         * stress/constant-folding-phase-insert-check-handle-varargs.js: Added.
3118
3119 2018-02-15  Filip Pizlo  <fpizlo@apple.com>
3120
3121         Unreviewed, roll out r228366 since it did not progress anything.
3122
3123         * stress/gc-error-stack.js: Removed.
3124         * stress/no-gc-error-stack.js: Removed.
3125
3126 2018-02-15  Tomas Popela  <tpopela@redhat.com>
3127
3128         Many stress tests fail with JIT disabled
3129         https://bugs.webkit.org/show_bug.cgi?id=182730
3130
3131         Reviewed by Saam Barati.
3132
3133         These tests are broken by design if the JIT is disabled - they test
3134         the return value of numberOfDFGCompiles(), which is always set to
3135         1000000.0 in TestRunnerUtils.cpp and makes the tests to fail.
3136
3137         * stress/arith-abs-on-various-types.js:
3138         * stress/arith-abs-to-arith-negate-range-optimizaton.js:
3139         * stress/arith-acos-on-various-types.js:
3140         * stress/arith-acosh-on-various-types.js:
3141         * stress/arith-asin-on-various-types.js:
3142         * stress/arith-asinh-on-various-types.js:
3143         * stress/arith-atan-on-various-types.js:
3144         * stress/arith-atanh-on-various-types.js:
3145         * stress/arith-cbrt-on-various-types.js:
3146         * stress/arith-ceil-on-various-types.js:
3147         * stress/arith-clz32-on-various-types.js:
3148         * stress/arith-cos-on-various-types.js:
3149         * stress/arith-cosh-on-various-types.js:
3150         * stress/arith-expm1-on-various-types.js:
3151         * stress/arith-floor-on-various-types.js:
3152         * stress/arith-fround-on-various-types.js:
3153         * stress/arith-log-on-various-types.js:
3154         * stress/arith-log10-on-various-types.js:
3155         * stress/arith-log2-on-various-types.js:
3156         * stress/arith-negate-on-various-types.js:
3157         * stress/arith-round-on-various-types.js:
3158         * stress/arith-sin-on-various-types.js:
3159         * stress/arith-sinh-on-various-types.js:
3160         * stress/arith-sqrt-on-various-types.js:
3161         * stress/arith-tan-on-various-types.js:
3162         * stress/arith-tanh-on-various-types.js:
3163         * stress/arith-trunc-on-various-types.js:
3164         * stress/compare-strict-eq-on-various-types.js:
3165
3166 2018-02-14  Ryan Haddad  <ryanhaddad@apple.com>
3167
3168         Skip stress/new-largeish-contiguous-array-with-size.js on arm.
3169
3170         Unreviewed test gardening.
3171
3172         * stress/new-largeish-contiguous-array-with-size.js:
3173
3174 2018-02-14  Saam Barati  <sbarati@apple.com>
3175
3176         Setting a VMTrap shouldn't look at topCallFrame since that may imply we're in C code and holding the malloc lock
3177         https://bugs.webkit.org/show_bug.cgi?id=182801
3178
3179         Reviewed by Keith Miller.
3180
3181         * stress/watchdog-dont-malloc-when-in-c-code.js: Added.
3182
3183 2018-02-14  Ryan Haddad  <ryanhaddad@apple.com>
3184
3185         Skip JSC test stress/activation-sink-default-value-tdz-error.js on debug.
3186         https://bugs.webkit.org/show_bug.cgi?id=182526
3187
3188         Unreviewed test gardening.
3189
3190         * stress/activation-sink-default-value-tdz-error.js:
3191
3192 2018-02-13  Saam Barati  <sbarati@apple.com>
3193
3194         putDirectIndexSlowOrBeyondVectorLength needs to convert to dictionary indexing mode always if attributes are present
3195         https://bugs.webkit.org/show_bug.cgi?id=182755
3196         <rdar://problem/37080864>
3197
3198         Reviewed by Keith Miller.
3199
3200         * stress/always-enter-dictionary-indexing-mode-with-getter.js: Added.
3201         (test1.o.get 10005):
3202         (test1):
3203         (test2.o.get 1000):
3204         (test2):
3205
3206 2018-02-13  Caitlin Potter  <caitp@igalia.com>
3207
3208         [JSC] cache TaggedTemplate arrays by callsite rather than by contents
3209         https://bugs.webkit.org/show_bug.cgi?id=182717
3210
3211         Reviewed by Yusuke Suzuki.
3212
3213         https://github.com/tc39/ecma262/pull/890 imposes a change to template
3214         literals, to allow template callsite arrays to be collected when the
3215         code containing the tagged template call is collected. This spec change
3216         has received concensus and been ratified.
3217
3218         This change eliminates the eternal map associating template contents
3219         with arrays.
3220
3221         * stress/tagged-template-object-collect.js: Renamed from JSTests/stress/tagged-template-registry-key-collect.js.
3222         * stress/tagged-template-object.js: Renamed from JSTests/stress/tagged-template-registry-key.js.
3223         * stress/tagged-templates-identity.js:
3224         * stress/template-string-tags-eval.js:
3225         * test262.yaml:
3226
3227 2018-02-13  Yusuke Suzuki  <utatane.tea@gmail.com>
3228
3229         Support GetArrayLength on ArrayStorage in the FTL
3230         https://bugs.webkit.org/show_bug.cgi?id=182625
3231
3232         Reviewed by Saam Barati.
3233
3234         * stress/array-storage-length.js: Added.
3235         (shouldBe):
3236         (testInBound):
3237         (testUncountable):
3238         (testSlowPutInBound):
3239         (testSlowPutUncountable):
3240         * stress/undecided-length.js: Added.
3241         (shouldBe):
3242         (test2):
3243
3244 2018-02-12  Saam Barati  <sbarati@apple.com>
3245
3246         DFG::emitCodeToGetArgumentsArrayLength needs to handle NewArrayBuffer/PhantomNewArrayBuffer
3247         https://bugs.webkit.org/show_bug.cgi?id=182706
3248         <rdar://problem/36833681>
3249
3250         Reviewed by Filip Pizlo.
3251
3252         * stress/get-array-length-phantom-new-array-buffer.js: Added.
3253         (effects):
3254         (foo):
3255
3256 2018-02-09  Filip Pizlo  <fpizlo@apple.com>
3257
3258         Don't waste memory for error.stack
3259         https://bugs.webkit.org/show_bug.cgi?id=182656
3260
3261         Reviewed by Saam Barati.
3262         
3263         Tests the policy.
3264
3265         * stress/gc-error-stack.js: Added. Shows that the GC forgets frames now.
3266         * stress/no-gc-error-stack.js: Added. Shows that the GC won't forget things if you ask for the stack.
3267
3268 2018-02-08  Yusuke Suzuki  <utatane.tea@gmail.com>
3269
3270         [JSC] Update Test262 to Feb 9 version
3271         https://bugs.webkit.org/show_bug.cgi?id=182468
3272
3273         Reviewed by Saam Barati.
3274
3275 2018-02-08  Yusuke Suzuki  <utatane.tea@gmail.com>
3276
3277         Unreviewed, fix invalid line terminator in old test262 file part 2
3278         https://bugs.webkit.org/show_bug.cgi?id=182468
3279
3280         * test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js:
3281
3282 2018-02-08  Yusuke Suzuki  <utatane.tea@gmail.com>
3283
3284         Unreviewed, fix invalid line terminator in old test262 file
3285         https://bugs.webkit.org/show_bug.cgi?id=182468
3286
3287         * test262/test/language/literals/regexp/7.8.5-1.js:
3288
3289 2018-02-06  Yusuke Suzuki  <utatane.tea@gmail.com>
3290
3291         [JSC] Implement Array.prototype.flatMap and Array.prototype.flatten
3292         https://bugs.webkit.org/show_bug.cgi?id=182440
3293
3294         Reviewed by Darin Adler.
3295
3296         * stress/array-flatmap.js: Added.
3297         (shouldBe):
3298         (shouldBeArray):
3299         (shouldThrow):
3300         (var):
3301         * stress/array-flatten.js: Added.
3302         (shouldBe):
3303         (shouldBeArray):
3304         * test262.yaml:
3305         * test262/test/built-ins/Array/prototype/flatMap/depth-always-one.js:
3306         (3.flatMap):
3307         Pick test262 82c6148980332febe92a544a1fb653718e9fdb57 change.
3308
3309 2018-02-06  Keith Miller  <keith_miller@apple.com>
3310
3311         put_to_scope/get_from_scope should not cache lexical scopes when expecting a global object
3312         https://bugs.webkit.org/show_bug.cgi?id=182549
3313         <rdar://problem/36189995>
3314
3315         Reviewed by Saam Barati.
3316
3317         * stress/var-injection-cache-invalidation.js: Added.
3318         (allocateLotsOfThings):
3319         (test):
3320
3321 2018-02-03  Yusuke Suzuki  <utatane.tea@gmail.com>
3322
3323         Unreviewed, follow up for test262 update
3324         https://bugs.webkit.org/show_bug.cgi?id=182288
3325
3326         * test262.yaml:
3327
3328 2018-02-02  Ryan Haddad  <ryanhaddad@apple.com>
3329
3330         Update test262 to Jan 30 version
3331         https://bugs.webkit.org/show_bug.cgi?id=182288
3332
3333         Unreviewed test gardening.
3334
3335         * test262.yaml: Remove entry for missing test language/expressions/assignment/white-space.js
3336
3337 2018-02-02  Saam Barati  <sbarati@apple.com>
3338
3339         When BytecodeParser inserts Unreachable after ForceOSRExit it needs to update ArgumentPositions for Flushes it inserts
3340         https://bugs.webkit.org/show_bug.cgi?id=182368
3341         <rdar://problem/36932466>
3342
3343         Reviewed by Mark Lam.
3344
3345         * stress/flush-after-force-exit-in-bytecodeparser-needs-to-update-argument-positions.js: Added.
3346         (runNearStackLimit.t):
3347         (runNearStackLimit):
3348         (try.runNearStackLimit):
3349         (catch):
3350
3351 2018-02-02  Yusuke Suzuki  <utatane.tea@gmail.com>
3352
3353         Update test262 to Jan 30 version
3354         https://bugs.webkit.org/show_bug.cgi?id=182288
3355
3356         Rubber stamped by Saam Barati.
3357
3358         This patch updates test262 to the latest one, Jan 30 version.
3359         Since added and changed files are too many, we cannot create ChangeLog.
3360         The following files are changed.
3361
3362         Several files are intentionally omitted due to merge failures. We should investigate how to merge files
3363         including some special line terminators (like u2028, u2029).
3364
3365         * test262.yaml:
3366         * test262/test262-Revision.txt:
3367         * test262/*:
3368
3369 2018-02-02  Guillaume Emont  <guijemont@igalia.com>
3370
3371         JSTests: Skip mozilla/js1_5/Array/regress-157652.js on all memory limited platforms
3372         https://bugs.webkit.org/show_bug.cgi?id=182411
3373
3374         Reviewed by Carlos Alberto Lopez Perez.
3375
3376         This is skipped only on arm memory limited platforms. Until recently
3377         it was not a problem on MIPS as the butterfly was not initialized. But
3378         since r227435, the butterfly is initialized in that test and therefore
3379         memory is allocated, and the test typically takes around 512M, which
3380         means it generally gets OOM-killed on the MIPS buildbot.
3381
3382         * mozilla/mozilla-tests.yaml:
3383
3384 2018-02-01  Mark Lam  <mark.lam@apple.com>
3385
3386         Fix broken bounds check in FTL's compileGetMyArgumentByVal().
3387         https://bugs.webkit.org/show_bug.cgi?id=182419
3388         <rdar://problem/37044945>
3389
3390         Reviewed by Saam Barati.
3391
3392         * stress/regress-182419.js: Added.
3393
3394 2018-02-01  Keith Miller  <keith_miller@apple.com>
3395
3396         Fix crashes due to mishandling custom sections.
3397         https://bugs.webkit.org/show_bug.cgi?id=182404
3398         <rdar://problem/36935863>
3399
3400         Reviewed by Saam Barati.
3401
3402         * wasm/Builder.js:
3403         (export.default.Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.case.string_appeared_here.this.section):
3404         * wasm/js-api/validate.js:
3405         (assert.truthy):
3406
3407 2018-01-31  Saam Barati  <sbarati@apple.com>
3408
3409         JSC incorrectly interpreting script, sets Global Property instead of Global Lexical variable (LiteralParser / JSONP path)
3410         https://bugs.webkit.org/show_bug.cgi?id=182074
3411         <rdar://problem/36846261>
3412
3413         Reviewed by Mark Lam.
3414
3415         * stress/jsonp-program-evaluate-path-must-consider-global-lexical-environment.js: Added.
3416         (assert):
3417         (let.func):
3418         (let.o.foo):
3419         (varFunc):
3420
3421 2018-01-30  Yusuke Suzuki  <utatane.tea@gmail.com>
3422
3423         Unreviewed, update test262 expects
3424         https://bugs.webkit.org/show_bug.cgi?id=182232
3425
3426         * test262.yaml:
3427
3428 2018-01-29  Yusuke Suzuki  <utatane.tea@gmail.com>
3429
3430         [JSC] Implement trimStart and trimEnd
3431         https://bugs.webkit.org/show_bug.cgi?id=182233
3432
3433         Reviewed by Mark Lam.
3434
3435         * stress/trim.js: Added.
3436         (shouldBe):
3437         (startTest):
3438         (endTest):
3439         (trimTest):
3440
3441 2018-01-29  Yusuke Suzuki  <utatane.tea@gmail.com>
3442
3443         [JSC] Relax line terminators in String to make JSON subset of JS
3444         https://bugs.webkit.org/show_bug.cgi?id=182232
3445
3446         Reviewed by Keith Miller.
3447
3448         * ChakraCore/test/es5/Lex_u3.baseline-jsc:
3449         * stress/relaxed-line-terminators-in-string.js: Added.
3450         (shouldBe):
3451
3452 2018-01-29  Michael Saboff  <msaboff@apple.com>
3453
3454         REGRESSION (r227341): DFG_ASSERT failure at JSC::DFG::AtTailAbstractState::forNode()
3455         https://bugs.webkit.org/show_bug.cgi?id=182249
3456
3457         Reviewed by Keith Miller.
3458
3459         New regression test.
3460
3461         * stress/compare-clobber-untypeduse.js: Added.
3462
3463 2018-01-29  Matt Lewis  <jlewis3@apple.com>
3464
3465         Unreviewed, rolling out r227725.
3466
3467         This caused internal failures.
3468
3469         Reverted changeset:
3470
3471         "JSC Sampling Profiler: Detect tester and testee when sampling
3472         in RegExp JIT"
3473         https://bugs.webkit.org/show_bug.cgi?id=152729
3474         https://trac.webkit.org/changeset/227725
3475
3476 2018-01-29  Yusuke Suzuki  <utatane.tea@gmail.com>
3477
3478         JSC Sampling Profiler: Detect tester and testee when sampling in RegExp JIT
3479         https://bugs.webkit.org/show_bug.cgi?id=152729
3480
3481         Reviewed by Saam Barati.
3482
3483         * stress/sampling-profiler-regexp.js: Added.
3484         (platformSupportsSamplingProfiler.test):
3485         (platformSupportsSamplingProfiler.baz):
3486         (platformSupportsSamplingProfiler):
3487
3488 2018-01-29  Yusuke Suzuki  <utatane.tea@gmail.com>
3489
3490         [DFG][FTL] WeakMap#set should have DFG node
3491         https://bugs.webkit.org/show_bug.cgi?id=180015
3492
3493         Reviewed by Saam Barati.
3494
3495         * stress/weakmap-set-change-get.js: Added.
3496         (shouldBe):
3497         (test):
3498         * stress/weakmap-set-cse.js: Added.
3499         (shouldBe):
3500         (test):
3501         * stress/weakset-add-change-get.js: Added.
3502         (shouldBe):
3503         * stress/weakset-add-cse.js: Added.
3504         (shouldBe):
3505
3506 2018-01-27  Yusuke Suzuki  <utatane.tea@gmail.com>
3507
3508         DFG strength reduction fails to convert NumberToStringWithValidRadixConstant for 0 to constant '0'
3509         https://bugs.webkit.org/show_bug.cgi?id=182213
3510
3511         Reviewed by Mark Lam.
3512
3513         * stress/int32-min-to-string.js: Added.
3514         (shouldBe):
3515         (test2):
3516         (test4):
3517         (test8):
3518         (test16):
3519         (test32):
3520         * stress/zero-to-string.js: Added.
3521         (shouldBe):
3522         (test2):
3523         (test4):
3524         (test8):
3525         (test16):
3526         (test32):
3527
3528 2018-01-23  Yusuke Suzuki  <utatane.tea@gmail.com>
3529
3530         Add more module scope related tests with code evaluation by string
3531         https://bugs.webkit.org/show_bug.cgi?id=181983
3532
3533         Reviewed by Sam Weinig.
3534
3535         Add more module scope related tests. When the original tests are landed,
3536         we do not have browser integration. This patch adds more module scope tests
3537         with dynamically created script evaluation. We add tests with Function
3538         constructor, direct eval, indirect eval, setTimeout, setInterval, and event handlers.
3539
3540         * modules/scopes-eval.js: Added.
3541         (shouldBe):
3542         * modules/scopes.js:
3543         (shouldBe):
3544
3545 2018-01-23  Filip Pizlo  <fpizlo@apple.com>
3546
3547         Unreviewed, retire some microbenchmarks that are proportionately very slow. Benchmark running time should be proportional to their value. Microbenchmarks have little value, so they should be very fast.
3548
3549         * microbenchmarks/array-push-3.js: Removed.
3550         * microbenchmarks/bigswitch-indirect-symbol-or-undefined.js: Removed.
3551         * microbenchmarks/double-to-int32.js: Removed.
3552         * microbenchmarks/fake-iterators-that-throw-when-finished.js: Removed.
3553         * microbenchmarks/ftl-polymorphic-bitand.js: Removed.
3554         * microbenchmarks/ftl-polymorphic-bitor.js: Removed.
3555         * microbenchmarks/ftl-polymorphic-bitxor.js: Removed.
3556         * microbenchmarks/ftl-polymorphic-lshift.js: Removed.
3557         * microbenchmarks/ftl-polymorphic-rshift.js: Removed.
3558         * microbenchmarks/ftl-polymorphic-sub.js: Removed.
3559         * microbenchmarks/ftl-polymorphic-urshift.js: Removed.
3560         * microbenchmarks/map-constant-key.js: Removed.
3561         * microbenchmarks/nested-function-parsing.js: Removed.
3562         * microbenchmarks/rest-parameter-allocation-elimination.js: Removed.
3563         * microbenchmarks/spread-large-array.js: Removed.
3564         * microbenchmarks/string-add-constant-folding.js: Removed.
3565         * microbenchmarks/to-lower-case.js: Removed.
3566         * microbenchmarks/undefined-property-access.js: Removed.
3567         * slowMicrobenchmarks/array-push-3.js: Copied from JSTests/microbenchmarks/array-push-3.js.
3568         * slowMicrobenchmarks/bigswitch-indirect-symbol-or-undefined.js: Copied from JSTests/microbenchmarks/bigswitch-indirect-symbol-or-undefined.js.
3569         * slowMicrobenchmarks/double-to-int32.js: Copied from JSTests/microbenchmarks/double-to-int32.js.
3570         * slowMicrobenchmarks/fake-iterators-that-throw-when-finished.js: Copied from JSTests/microbenchmarks/fake-iterators-that-throw-when-finished.js.
3571         * slowMicrobenchmarks/ftl-polymorphic-bitand.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-bitand.js.
3572         * slowMicrobenchmarks/ftl-polymorphic-bitor.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-bitor.js.
3573         * slowMicrobenchmarks/ftl-polymorphic-bitxor.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-bitxor.js.
3574         * slowMicrobenchmarks/ftl-polymorphic-lshift.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-lshift.js.