mirror of
https://github.com/tc39/test262.git
synced 2025-05-02 22:10:34 +02:00
23392 lines
849 KiB
Plaintext
23392 lines
849 KiB
Plaintext
2018-09-10 Michael Saboff <msaboff@apple.com>
|
||
|
||
Test262 failure with Named Capture Groups - using a reference before the group is defined
|
||
https://bugs.webkit.org/show_bug.cgi?id=189407
|
||
|
||
Reviewed by Alex Christensen.
|
||
|
||
Re-enabled previously failing test.
|
||
|
||
* test262.yaml:
|
||
* test262/expectations.yaml:
|
||
|
||
2018-09-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Remove loadModule function in jsc.cpp
|
||
https://bugs.webkit.org/show_bug.cgi?id=184808
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
Use `import` expression instead.
|
||
|
||
* modules/different-view.js:
|
||
(from.string_appeared_here.shouldThrow): Deleted.
|
||
* modules/fallback-ambiguous.js:
|
||
(from.string_appeared_here.shouldThrow): Deleted.
|
||
* modules/import-error.js:
|
||
(from.string_appeared_here.shouldThrow): Deleted.
|
||
(shouldThrow): Deleted.
|
||
* modules/indirect-export-error.js:
|
||
(from.string_appeared_here.shouldThrow): Deleted.
|
||
(shouldThrow): Deleted.
|
||
* modules/namespace-error.js:
|
||
(from.string_appeared_here.shouldThrow): Deleted.
|
||
|
||
2018-09-07 Mark Lam <mark.lam@apple.com>
|
||
|
||
Ensure that handleIntrinsicCall() is only applied on op_call shaped instructions.
|
||
https://bugs.webkit.org/show_bug.cgi?id=189317
|
||
<rdar://problem/44152198>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-189317.js: Added.
|
||
(testGetter):
|
||
(testSetter):
|
||
|
||
2018-09-06 Yusuke Suzuki <yusukesuzuki@slowstart.org>
|
||
|
||
[DFG] DFG should handle String#toString
|
||
https://bugs.webkit.org/show_bug.cgi?id=189151
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
The error message in String#toString and String#valueOf is poor, which will be
|
||
handled in a separate bug[1].
|
||
|
||
[1]: https://bugs.webkit.org/show_bug.cgi?id=189357
|
||
|
||
* microbenchmarks/string-object-to-string.js: Added.
|
||
(test):
|
||
* microbenchmarks/string-object-value-of.js: Added.
|
||
(test):
|
||
* stress/string-to-string-error.js: Added.
|
||
(shouldThrow):
|
||
(test):
|
||
* stress/string-to-string.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
* stress/string-value-of-error.js: Added.
|
||
(shouldThrow):
|
||
(test):
|
||
* stress/string-value-of.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
|
||
2018-09-06 Michael Saboff <msaboff@apple.com>
|
||
|
||
Improper speculation type for Math.pow(NaN, 0) in Abstract Interpreter
|
||
https://bugs.webkit.org/show_bug.cgi?id=189380
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
New test.
|
||
|
||
* stress/math-pow-nan-to-zero-spec-type.js: Added.
|
||
(func):
|
||
(test):
|
||
|
||
2018-09-06 Mark Lam <mark.lam@apple.com>
|
||
|
||
Gardening: Move regress-189185.js under JSTests/wasm.
|
||
https://bugs.webkit.org/show_bug.cgi?id=189347
|
||
|
||
Unreviewed.
|
||
|
||
* stress/regress-189185.js: Removed.
|
||
* wasm/regress/regress-189185.js: Copied from JSTests/stress/regress-189185.js.
|
||
|
||
2018-09-05 Mark Lam <mark.lam@apple.com>
|
||
|
||
JSPropertyNameEnumerator::visitChildren() needs to visit its m_cachedStructureID.
|
||
https://bugs.webkit.org/show_bug.cgi?id=189124
|
||
<rdar://problem/43863605>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-189124.js: Added.
|
||
|
||
2018-09-05 Ross Kirsling <ross.kirsling@sony.com>
|
||
|
||
[ESNext] Symbol.prototype.description
|
||
https://bugs.webkit.org/show_bug.cgi?id=186686
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/symbol-description.js:
|
||
Add tests for empty and null symbol cases.
|
||
|
||
* test262/config.yaml:
|
||
Enable Symbol.prototype.description tests.
|
||
|
||
2018-09-05 David Fenton <david_fenton@apple.com>
|
||
|
||
[32-bit JSC tests] Exception: ReferenceError: Can't find variable: WebAssembly.
|
||
https://bugs.webkit.org/show_bug.cgi?id=189312.
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/regress-189185.js:
|
||
|
||
2018-09-05 Mark Lam <mark.lam@apple.com>
|
||
|
||
isAsyncGeneratorMethodParseMode() should check for SourceParseMode::AsyncGeneratorWrapperMethodMode.
|
||
https://bugs.webkit.org/show_bug.cgi?id=189292
|
||
<rdar://problem/38907433>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-189292.js: Added.
|
||
|
||
2018-09-04 David Fenton <david_fenton@apple.com>
|
||
|
||
Skip Test on 32-bit platforms.
|
||
https://bugs.webkit.org/show_bug.cgi?id=189185.
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/regress-189185.js:
|
||
|
||
2018-09-03 Mark Lam <mark.lam@apple.com>
|
||
|
||
The watchdog sometimes fails to terminate a script.
|
||
https://bugs.webkit.org/show_bug.cgi?id=189227
|
||
<rdar://problem/39932857>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-189227-watchdog-on-infinite-loop.js: Added.
|
||
|
||
2018-09-02 Yusuke Suzuki <yusukesuzuki@slowstart.org>
|
||
|
||
Implement Object.fromEntries
|
||
https://bugs.webkit.org/show_bug.cgi?id=188481
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/object-from-entries.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(shouldBe.JSON.stringify.Object.getOwnPropertyDescriptor):
|
||
(shouldBe.set get shouldThrow):
|
||
|
||
2018-08-24 Yusuke Suzuki <yusukesuzuki@slowstart.org>
|
||
|
||
Function object should convert params to string before throw a parsing error
|
||
https://bugs.webkit.org/show_bug.cgi?id=188874
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/function-body-to-string-before-parameter-syntax-check.js: Added.
|
||
(shouldThrow):
|
||
|
||
2018-08-31 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix exception check accounting in constructJSWebAssemblyCompileError().
|
||
https://bugs.webkit.org/show_bug.cgi?id=189185
|
||
<rdar://problem/39786007>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/regress-189185.js: Added.
|
||
(new.WebAssembly.CompileError.valueOf):
|
||
|
||
2018-08-31 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix exception check accounting in JSDataView::defineOwnProperty().
|
||
https://bugs.webkit.org/show_bug.cgi?id=189186
|
||
<rdar://problem/39786049>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/regress-189186.js: Added.
|
||
|
||
2018-08-31 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add missing exception check in arrayProtoFuncLastIndexOf().
|
||
https://bugs.webkit.org/show_bug.cgi?id=189184
|
||
<rdar://problem/39785959>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/regress-189184.js: Added.
|
||
|
||
2018-08-31 Saam barati <sbarati@apple.com>
|
||
|
||
convertToRegExpMatchFastGlobal must use KnownString as the child use kind
|
||
https://bugs.webkit.org/show_bug.cgi?id=189173
|
||
<rdar://problem/43501645>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/may-exit-should-be-false-regexp-constant-folding.js: Added.
|
||
(foo):
|
||
(bar):
|
||
|
||
2018-08-30 Saam barati <sbarati@apple.com>
|
||
|
||
CSE DataViewGet* DFG nodes
|
||
https://bugs.webkit.org/show_bug.cgi?id=188768
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* microbenchmarks/dataview-cse.js: Added.
|
||
(assert):
|
||
(test):
|
||
* stress/dataview-get-cse.js: Added.
|
||
(assert):
|
||
(test1.foo):
|
||
(test1):
|
||
(test2.foo):
|
||
(test2):
|
||
(test3.foo):
|
||
(test3):
|
||
(test4.foo):
|
||
(test4):
|
||
(test5.foo):
|
||
(test5):
|
||
(test6.foo):
|
||
(test6):
|
||
|
||
2018-08-30 Yusuke Suzuki <yusukesuzuki@slowstart.org>
|
||
|
||
output of toString() of Generator is wrong
|
||
https://bugs.webkit.org/show_bug.cgi?id=188952
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/function-to-string.js: Added.
|
||
(shouldBe):
|
||
(shouldBe.test):
|
||
(test):
|
||
(shouldBe.async.test):
|
||
(async.test):
|
||
(shouldBe.async):
|
||
(async):
|
||
* test262/expectations.yaml:
|
||
|
||
2018-08-29 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add some missing exception checks in JSRopeString::resolveRopeToAtomicString().
|
||
https://bugs.webkit.org/show_bug.cgi?id=189132
|
||
<rdar://problem/42513068>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-189132.js: Added.
|
||
|
||
2018-08-27 Yusuke Suzuki <yusukesuzuki@slowstart.org>
|
||
|
||
[WebAssembly] Parse wasm modules in a streaming fashion
|
||
https://bugs.webkit.org/show_bug.cgi?id=188943
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Wasm parsing error should not report the total byte size since streaming parsing does not
|
||
want to load all the bytes.
|
||
Add a simple test wasm/stress/streaming-basic.js for initial streaming parsing implementation.
|
||
|
||
* wasm/function-tests/invalid-duplicate-export.js:
|
||
* wasm/function-tests/memory-alignment.js:
|
||
(const.op.of.WASM.opcodes):
|
||
* wasm/function-tests/memory-section-and-import.js:
|
||
* wasm/function-tests/void-argument-type-should-be-a-validation-error.js:
|
||
* wasm/js-api/Module-compile.js:
|
||
(async.testPromiseAPI):
|
||
* wasm/js-api/element.js:
|
||
(assert.throws.new.WebAssembly.Module.builder.WebAssembly):
|
||
(assert.throws):
|
||
* wasm/js-api/global-error.js:
|
||
(assert.throws.new.WebAssembly.Module.bin):
|
||
(assert.throws):
|
||
* wasm/js-api/table.js:
|
||
(new.WebAssembly.Module):
|
||
(assert.throws):
|
||
(assertBadTableImport):
|
||
* wasm/js-api/test_Data.js:
|
||
(DataSectionWithoutMemory):
|
||
* wasm/js-api/test_Start.js:
|
||
(InvalidStartFunctionIndex):
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
* wasm/js-api/version.js:
|
||
* wasm/stress/nameSection.wasm: Added.
|
||
* wasm/stress/streaming-basic.js: Added.
|
||
(check):
|
||
|
||
2018-08-27 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix exception throwing code so that topCallFrame and topEntryFrame stay true to their names.
|
||
https://bugs.webkit.org/show_bug.cgi?id=188577
|
||
<rdar://problem/42985684>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-188577.js: Added.
|
||
|
||
2018-08-24 Yusuke Suzuki <yusukesuzuki@slowstart.org>
|
||
|
||
[JSC] Array.prototype.reverse modifies JSImmutableButterfly
|
||
https://bugs.webkit.org/show_bug.cgi?id=188794
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/reverse-with-immutable-butterfly.js: Added.
|
||
(shouldBe):
|
||
(reverseInt):
|
||
(reverseDouble):
|
||
(reverseContiguous):
|
||
|
||
2018-08-22 Saam barati <sbarati@apple.com>
|
||
|
||
Make data-view-access.js run less time to prevent timeouts on 32-bit
|
||
|
||
* microbenchmarks/data-view-accesses.js:
|
||
|
||
2018-08-22 Mark Lam <mark.lam@apple.com>
|
||
|
||
The DFG CFGSimplification phase shouldn’t jettison a block when it’s the target of both branch directions.
|
||
https://bugs.webkit.org/show_bug.cgi?id=188298
|
||
<rdar://problem/42888427>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/bug-188298.js: Added.
|
||
|
||
2018-08-20 Saam barati <sbarati@apple.com>
|
||
|
||
Inline DataView accesses into DFG/FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=188573
|
||
<rdar://problem/43286746>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* microbenchmarks/data-view-accesses-2.js: Added.
|
||
(assert):
|
||
(let.p.of.Object.keys.let.str):
|
||
(let.p.of.Object.keys):
|
||
(test):
|
||
* microbenchmarks/data-view-accesses.js: Added.
|
||
(assert):
|
||
(let.p.of.Object.keys.let.str):
|
||
(let.p.of.Object.keys):
|
||
* stress/dataview-jit-bounds-checks.js: Added.
|
||
(assert):
|
||
(let.p.of.Object.keys.let.str):
|
||
(let.p.of.Object.keys):
|
||
* stress/dataview-jit-get.js: Added.
|
||
(assert):
|
||
(test1.bigEndian):
|
||
(test1.littleEndian):
|
||
(test1.biEndian):
|
||
(test1):
|
||
(test2.bigEndian):
|
||
(test2.littleEndian):
|
||
(test2.biEndian):
|
||
(test2):
|
||
(test3.bigEndian):
|
||
(test3.littleEndian):
|
||
(test3.biEndian):
|
||
(test3):
|
||
(test4.bigEndian):
|
||
(test4.littleEndian):
|
||
(test4.biEndian):
|
||
(test4):
|
||
(test5.bigEndian):
|
||
(test5.littleEndian):
|
||
(test5.biEndian):
|
||
(test5):
|
||
(test6.bigEndian):
|
||
(test6.littleEndian):
|
||
(test6.biEndian):
|
||
(test6):
|
||
(test7.load):
|
||
(test7):
|
||
(test8.load):
|
||
(test8):
|
||
* stress/dataview-jit-neuter.js: Added.
|
||
(assert):
|
||
(test.load):
|
||
(test):
|
||
(test2.load):
|
||
(test2):
|
||
* stress/dataview-jit-set.js: Added.
|
||
(assert):
|
||
(isLittleEndian):
|
||
(readByte):
|
||
(readHex):
|
||
(test.storeLittleEndian):
|
||
(test.storeBigEndian):
|
||
(test.store):
|
||
(test):
|
||
(test2.storeLittleEndian):
|
||
(test2.storeBigEndian):
|
||
(test2.store):
|
||
(test2):
|
||
(test3.storeLittleEndian):
|
||
(test3.storeBigEndian):
|
||
(test3.store):
|
||
(test3):
|
||
(test4.storeLittleEndian):
|
||
(test4.storeBigEndian):
|
||
(test4.store):
|
||
(test4):
|
||
(test5.storeLittleEndian):
|
||
(test5.storeBigEndian):
|
||
(test5.store):
|
||
(test5):
|
||
(test6.storeLittleEndian):
|
||
(test6.storeBigEndian):
|
||
(test6.store):
|
||
(test6):
|
||
(test7.store):
|
||
(test7):
|
||
(test8.store):
|
||
(test8):
|
||
* stress/dataview-jit-unaligned-accesses.js: Added.
|
||
(assert):
|
||
(let.p.of.Object.keys.let.str):
|
||
(let.p.of.Object.keys):
|
||
|
||
2018-08-20 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[YARR] Extend size of fixed characters bulk matching in 64bit platform
|
||
https://bugs.webkit.org/show_bug.cgi?id=181989
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/characters-regexp-ignore-case.js: Added.
|
||
(shouldBe):
|
||
(testH):
|
||
(testHe):
|
||
(testHel):
|
||
(testHell):
|
||
(testHello):
|
||
(testHelloW):
|
||
(testHelloWo):
|
||
(testHelloWor):
|
||
(testHelloWorl):
|
||
(testHelloWorld):
|
||
* stress/characters-regexp.js: Added.
|
||
(shouldBe):
|
||
(testH):
|
||
(testHe):
|
||
(testHel):
|
||
(testHell):
|
||
(testHello):
|
||
(testHelloW):
|
||
(testHelloWo):
|
||
(testHelloWor):
|
||
(testHelloWorl):
|
||
(testHelloWorld):
|
||
|
||
2018-08-17 Saam barati <sbarati@apple.com>
|
||
|
||
intersectionOfPastValuesAtHead must filter values after they've observed an invalidation point
|
||
https://bugs.webkit.org/show_bug.cgi?id=188707
|
||
<rdar://problem/43015442>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/cfa-expected-values-must-set-clobbered-to-false.js: Added.
|
||
(foo):
|
||
(let.comp.valueOf):
|
||
(result):
|
||
|
||
2018-08-10 Keith Miller <keith_miller@apple.com>
|
||
|
||
Slicing an ArrayBuffer with a long number returns an ArrayBuffer with byteLength zero
|
||
https://bugs.webkit.org/show_bug.cgi?id=185127
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Rebaseline the expectations.
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-08-10 Yusuke Suzuki <yusukesuzuki@slowstart.org>
|
||
|
||
Date.UTC should not return NaN with only Year param
|
||
https://bugs.webkit.org/show_bug.cgi?id=188378
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* ChakraCore.yaml:
|
||
* ChakraCore/test/Date/dateutc.baseline-jsc: Added.
|
||
* stress/date-utc-optional.js: Added.
|
||
(shouldBe):
|
||
* test262/expectations.yaml:
|
||
|
||
2018-08-08 Keith Miller <keith_miller@apple.com>
|
||
|
||
Array.prototype.sort should call @toLength instead of ">>> 0"
|
||
https://bugs.webkit.org/show_bug.cgi?id=188430
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-08-08 Keith Miller <keith_miller@apple.com>
|
||
|
||
Array.prototype.sort should throw TypeError if param is a not callable object
|
||
https://bugs.webkit.org/show_bug.cgi?id=188382
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-08-01 Andy VanWagoner <andy@vanwagoner.family>
|
||
|
||
[INTL] Implement hourCycle in DateTimeFormat
|
||
https://bugs.webkit.org/show_bug.cgi?id=188006
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
Removed fixed hourCycle expectations.
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-07-25 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Record CoW status in ArrayProfile correctly
|
||
https://bugs.webkit.org/show_bug.cgi?id=187949
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-profile-should-record-copy-on-write.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
|
||
2018-07-26 Mark Lam <mark.lam@apple.com>
|
||
|
||
arrayProtoPrivateFuncConcatMemcpy() should handle copying from an Undecided type array.
|
||
https://bugs.webkit.org/show_bug.cgi?id=188065
|
||
<rdar://problem/42515726>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-188065.js: Added.
|
||
|
||
2018-07-25 Andy VanWagoner <andy@vanwagoner.family>
|
||
|
||
[INTL] Call Typed Array elements toLocaleString with locale and options
|
||
https://bugs.webkit.org/show_bug.cgi?id=185796
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Remove now passing TypedArray toLocaleString expectation.
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-07-25 Andy VanWagoner <andy@vanwagoner.family>
|
||
|
||
[INTL] Intl constructor lengths should be configurable
|
||
https://bugs.webkit.org/show_bug.cgi?id=187960
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Removed fixed length expectations, and updated Intl.Locale expectations
|
||
that error differently since r234127.
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-07-24 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r234183.
|
||
https://bugs.webkit.org/show_bug.cgi?id=187983
|
||
|
||
cause regression in Kraken gaussian blur and desaturate
|
||
(Requested by yusukesuzuki on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"[JSC] Record CoW status in ArrayProfile"
|
||
https://bugs.webkit.org/show_bug.cgi?id=187949
|
||
https://trac.webkit.org/changeset/234183
|
||
|
||
2018-07-24 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Record CoW status in ArrayProfile
|
||
https://bugs.webkit.org/show_bug.cgi?id=187949
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-profile-should-record-copy-on-write.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
|
||
2018-07-23 Saam Barati <sbarati@apple.com>
|
||
|
||
need to didFoldClobberWorld when we constant fold GetByVal
|
||
https://bugs.webkit.org/show_bug.cgi?id=187917
|
||
<rdar://problem/42505095>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/get-by-val-fold-did-clobber-world.js: Added.
|
||
(__f_443):
|
||
|
||
2018-07-23 Andy VanWagoner <andy@vanwagoner.family>
|
||
|
||
[INTL] Language tags are not canonicalized
|
||
https://bugs.webkit.org/show_bug.cgi?id=185836
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Remove expected failures that have been fixed.
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-07-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] GetByIdVariant and InByIdVariant do not need slot base if they are not "hit" variants
|
||
https://bugs.webkit.org/show_bug.cgi?id=187891
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/in-miss-variant-merge.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/miss-variant-merge.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2018-07-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Fold GetByVal if the indexed value is non configurable and non writable
|
||
https://bugs.webkit.org/show_bug.cgi?id=186462
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/folding-get-by-val-with-read-only-dont-delete-object.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
* stress/folding-get-by-val-with-read-only-dont-delete-runtime-array.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
(test5):
|
||
* stress/folding-get-by-val-with-read-only-dont-delete.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
|
||
2018-06-02 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
We should support CreateThis in the FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=164904
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* microbenchmarks/polyvariant-get-by-id-shorter-tower.js: Added.
|
||
(polyvariant):
|
||
(Foo.prototype.func):
|
||
(Foo):
|
||
(foo):
|
||
(Bar.prototype.func):
|
||
(Bar):
|
||
(bar):
|
||
* microbenchmarks/polyvariant-get-by-id-tower.js: Added.
|
||
(polyvariant):
|
||
(Foo.prototype.func):
|
||
(Foo):
|
||
(foo):
|
||
(Bar.prototype.func):
|
||
(Bar):
|
||
(bar):
|
||
(Baz.prototype.func):
|
||
(Baz):
|
||
(baz):
|
||
|
||
2018-07-20 Michael Saboff <msaboff@apple.com>
|
||
|
||
DFG AbstractInterpreter: CheckArray filters array modes for DirectArguments/ScopedArguments using only NonArray
|
||
https://bugs.webkit.org/show_bug.cgi?id=187827
|
||
rdar://problem/42146858
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
New regression tests.
|
||
|
||
* stress/direct-arguments-check-array.js: Added.
|
||
(setup.f2):
|
||
(setup):
|
||
(forOfArray):
|
||
(forOfArgs):
|
||
(callEveryOnArgs):
|
||
* stress/scoped-arguments-check-array.js: Added.
|
||
(setup.foo):
|
||
(setup.f2):
|
||
(setup):
|
||
(forOfArray):
|
||
(forOfArgs):
|
||
(callEveryOnArgs):
|
||
|
||
2018-07-20 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Fold GetByVal if Array is CoW
|
||
https://bugs.webkit.org/show_bug.cgi?id=186459
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/folding-get-by-val-with-immutable-butterfly-out-of-bounds-foldable.js: Added.
|
||
(shouldBe):
|
||
(test0):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
* stress/folding-get-by-val-with-immutable-butterfly-out-of-bounds.js: Added.
|
||
(shouldBe):
|
||
(test0):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
* stress/folding-get-by-val-with-immutable-butterfly-with-types.js: Added.
|
||
(shouldBe):
|
||
(test0):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
* stress/folding-get-by-val-with-immutable-butterfly.js: Added.
|
||
(shouldBe):
|
||
(checking):
|
||
(test):
|
||
|
||
2018-07-20 Saam Barati <sbarati@apple.com>
|
||
|
||
CompareEq should be using KnownOtherUse instead of OtherUse
|
||
https://bugs.webkit.org/show_bug.cgi?id=186814
|
||
<rdar://problem/39720030>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/compare-eq-should-use-known-other-use.js: Added.
|
||
(bar):
|
||
(i.func):
|
||
|
||
2018-07-20 David Fenton <david_fenton@apple.com>
|
||
|
||
stress/spread-forward-varargs-stack-overflow.js is timing out in 32 bit JSC tests.
|
||
https://bugs.webkit.org/show_bug.cgi?id=187698
|
||
|
||
Unreviewed test gardening, skipped test in 32 Bit JSC.
|
||
|
||
* stress/spread-forward-varargs-stack-overflow.js:
|
||
|
||
2018-07-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
JSON.stringify should emit non own properties if second array argument includes
|
||
https://bugs.webkit.org/show_bug.cgi?id=187724
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/json-stringify-getter-call.js: Added.
|
||
(shouldBe):
|
||
(A.prototype.get cocoa):
|
||
(A.prototype.get cappuccino):
|
||
(A):
|
||
(shouldBe.JSON.stringify):
|
||
|
||
2018-07-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] JSON.stringify's replacer should use `isArray` instead of JSArray checks
|
||
https://bugs.webkit.org/show_bug.cgi?id=187755
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/json-stringify-gap-calculation-should-be-after-replacer-check.js: Added.
|
||
(shouldThrow):
|
||
(shouldThrow.string.toString):
|
||
* test262/expectations.yaml:
|
||
|
||
2018-07-12 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Generator and AsyncGeneratorMethod's prototype is incorrect
|
||
https://bugs.webkit.org/show_bug.cgi?id=187585
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/default-proto-for-async-generator.js: Added.
|
||
(shouldBe):
|
||
(async.asyncGenerator):
|
||
* stress/default-proto-for-generator.js: Added.
|
||
(shouldBe):
|
||
(generator):
|
||
* stress/prototype-for-async-generator.js: Added.
|
||
(shouldBe):
|
||
(async.asyncGenerator):
|
||
(A.prototype.async.asyncGenerator):
|
||
(A):
|
||
* test262/expectations.yaml:
|
||
|
||
2018-07-11 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip JSC test stress/keep-checks-when-converting-to-lazy-js-constant-in-strength-reduction.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=187559
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/keep-checks-when-converting-to-lazy-js-constant-in-strength-reduction.js:
|
||
|
||
2018-07-11 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Iterator of Array.keys() returns object in wrong order
|
||
https://bugs.webkit.org/show_bug.cgi?id=185197
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
We align the shape of our iterator result to the spec: {value,done} instead of {done,value}.
|
||
|
||
* stress/iterator-field-order.js: Added.
|
||
(shouldBe):
|
||
(shouldBe.JSON.stringify.array.values.next):
|
||
(shouldBe.JSON.stringify.array.keys.next):
|
||
(shouldBe.JSON.stringify.array.entries.next):
|
||
(async.asyncIterator):
|
||
(iterator.next.then):
|
||
(generator):
|
||
(shouldBe.JSON.stringify.generator.next):
|
||
(shouldBe.JSON.stringify.map.keys.next):
|
||
(shouldBe.JSON.stringify.map.values.next):
|
||
(shouldBe.JSON.stringify.map.entries.next):
|
||
(set new):
|
||
|
||
2018-07-11 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, clean up test262 expectations
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-07-10 Mark Lam <mark.lam@apple.com>
|
||
|
||
constructArray() should always allocate the requested length.
|
||
https://bugs.webkit.org/show_bug.cgi?id=187543
|
||
<rdar://problem/41947884>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-187543-2.js: Added.
|
||
* stress/regress-187543-3.js: Added.
|
||
* stress/regress-187543.js: Added.
|
||
|
||
2018-07-10 Keith Miller <keith_miller@apple.com>
|
||
|
||
hasOwnProperty returns true for out of bounds property index on TypedArray
|
||
https://bugs.webkit.org/show_bug.cgi?id=187520
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
getOwnPropertySlot returns true on out of bounds indicies for
|
||
TypedArrays, which is incorrect.
|
||
|
||
* stress/typedarray-hasOwnProperty-out-of-bounds.js: Added.
|
||
(test):
|
||
|
||
2018-07-10 Michael Saboff <msaboff@apple.com>
|
||
|
||
DFG JIT: compileMathIC produces incorrect machine code
|
||
https://bugs.webkit.org/show_bug.cgi?id=187537
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Added new test case.
|
||
|
||
* stress/arith-mul-with-constants.js:
|
||
(testArithMulWithTypeConfusedConstant.testMult):
|
||
(testArithMulWithTypeConfusedConstant):
|
||
|
||
2018-07-10 Michael Saboff <msaboff@apple.com>
|
||
|
||
YARR: . doesn't match non-BMP Unicode characters in some cases
|
||
https://bugs.webkit.org/show_bug.cgi?id=187248
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
New regression test.
|
||
|
||
* stress/regexp-with-nonBMP-any.js: Added.
|
||
|
||
2018-07-09 Michael Saboff <msaboff@apple.com>
|
||
|
||
REGRESSION (ICU-62100.0.1): JSC test mozilla-tests.yaml/ecma/String/15.5.4.12-3.js is failing
|
||
https://bugs.webkit.org/show_bug.cgi?id=187495
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Commented out the Georgian section of this toUpper() test since Unicode 11 added new upper case characters for
|
||
most of this range.
|
||
|
||
* mozilla/ecma/String/15.5.4.12-3.js:
|
||
(getTestCases):
|
||
(DecimalToHexString):
|
||
|
||
2018-07-02 Sukolsak Sakshuwong <sukolsak@gmail.com>
|
||
|
||
RegExp.exec returns wrong value with a long integer quantifier
|
||
https://bugs.webkit.org/show_bug.cgi?id=187042
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regexp-large-quantifier.js: Added.
|
||
(testRegExp):
|
||
* stress/regress-159744.js:
|
||
|
||
2018-07-02 Ryosuke Niwa <rniwa@webkit.org>
|
||
|
||
Repository fix after r233427 and r233443.
|
||
Added back the test which got erroneously deleted in r233443.
|
||
|
||
* stress/instanceof-non-object-prototype.js:
|
||
|
||
2018-07-02 Keith Miller <keith_miller@apple.com>
|
||
|
||
InstanceOf IC should do generic if the prototype is not an object.
|
||
https://bugs.webkit.org/show_bug.cgi?id=187250
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/instanceof-non-object-prototype.js: Added.
|
||
(let):
|
||
(test):
|
||
(i.catch):
|
||
|
||
2018-06-30 Mark Lam <mark.lam@apple.com>
|
||
|
||
Builtins and host functions should get their own structures.
|
||
https://bugs.webkit.org/show_bug.cgi?id=187211
|
||
<rdar://problem/41646336>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-187211.js: Added.
|
||
|
||
2018-06-29 Saam Barati <sbarati@apple.com>
|
||
|
||
We shouldn't recurse into the parser when gathering metadata about various function offsets
|
||
https://bugs.webkit.org/show_bug.cgi?id=184074
|
||
<rdar://problem/37165897>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* microbenchmarks/try-get-by-id-basic.js:
|
||
(const.bench.f.const.fooPlusBar.createBuiltin):
|
||
* microbenchmarks/try-get-by-id-polymorphic.js:
|
||
(fooPlusBar.createBuiltin):
|
||
* stress/array-push-with-force-exit.js:
|
||
* stress/dont-crash-on-stack-overflow-when-parsing-builtin.js: Added.
|
||
(f):
|
||
* stress/dont-crash-on-stack-overflow-when-parsing-default-constructor.js: Added.
|
||
(foo):
|
||
(prototype.runNearStackLimit):
|
||
* stress/is-constructor.js:
|
||
* stress/tailCallForwardArguments.js:
|
||
(putFuncToPrivateName.createBuiltin):
|
||
|
||
2018-06-27 Mark Lam <mark.lam@apple.com>
|
||
|
||
DFG's compileReallocatePropertyStorage() and compileAllocatePropertyStorage() slow paths should also clear unused properties.
|
||
https://bugs.webkit.org/show_bug.cgi?id=187091
|
||
<rdar://problem/41395624>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/regress-187091.js: Added.
|
||
|
||
2018-06-27 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] ArrayPatternNode::emitDirectBinding does not return assignment target value if dst is nullptr
|
||
https://bugs.webkit.org/show_bug.cgi?id=185943
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/direct-binding-return-result.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2018-06-26 Mark Lam <mark.lam@apple.com>
|
||
|
||
eval() is wrong about the LiteralParser never throwing any exceptions.
|
||
https://bugs.webkit.org/show_bug.cgi?id=187074
|
||
<rdar://problem/41461099>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-187074.js: Added.
|
||
|
||
2018-06-26 Mark Lam <mark.lam@apple.com>
|
||
|
||
ASSERTION FAILED: length > butterfly->vectorLength() in JSObject::ensureLengthSlow().
|
||
https://bugs.webkit.org/show_bug.cgi?id=187060
|
||
<rdar://problem/41452767>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/regress-187060.js: Added.
|
||
|
||
2018-06-25 Mark Lam <mark.lam@apple.com>
|
||
|
||
constructArray() should set m_numValuesInVector to the specified length.
|
||
https://bugs.webkit.org/show_bug.cgi?id=187010
|
||
<rdar://problem/41392167>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-187010.js: Added.
|
||
|
||
2018-06-25 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add missing exception check in RegExpObjectInlines.h's collectMatches.
|
||
https://bugs.webkit.org/show_bug.cgi?id=187006
|
||
<rdar://problem/41418412>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/regress-187006.js: Added.
|
||
|
||
2018-06-22 Keith Miller <keith_miller@apple.com>
|
||
|
||
unshift should zero unused property storage
|
||
https://bugs.webkit.org/show_bug.cgi?id=186960
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-unshift-zero-property-storage.js: Added.
|
||
(run):
|
||
(test):
|
||
|
||
2018-06-22 Mark Lam <mark.lam@apple.com>
|
||
|
||
PropertyCondition::isValidValueForAttributes() should also consider deleted values.
|
||
https://bugs.webkit.org/show_bug.cgi?id=186943
|
||
<rdar://problem/41370337>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-186943.js: Added.
|
||
|
||
2018-06-22 Keith Miller <keith_miller@apple.com>
|
||
|
||
performProxyCall should toThis the value passed to its handler
|
||
https://bugs.webkit.org/show_bug.cgi?id=186951
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/proxy-call-apply-handler-to-this.js: Added.
|
||
(applyHandler):
|
||
(let.f.new.Proxy):
|
||
(withScope):
|
||
(lexicalScope):
|
||
(strictEvalScope):
|
||
(BigInt):
|
||
|
||
2018-06-20 Keith Miller <keith_miller@apple.com>
|
||
|
||
flattenDictionaryStruture needs to zero inline storage.
|
||
https://bugs.webkit.org/show_bug.cgi?id=186869
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/flatten-object-zero-unused-inline-properties.js: Added.
|
||
|
||
2018-06-19 Saam Barati <sbarati@apple.com>
|
||
|
||
DirectArguments::create needs to initialize to undefined instead of the empty value
|
||
https://bugs.webkit.org/show_bug.cgi?id=186818
|
||
<rdar://problem/38415177>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/create-direct-arguments-in-osr-should-initialize-to-undefined.js: Added.
|
||
(foo):
|
||
(bar):
|
||
|
||
2018-06-19 Tadeu Zagallo <tzagallo@apple.com>
|
||
|
||
ShadowChicken crashes with stack overflow in the LLInt
|
||
https://bugs.webkit.org/show_bug.cgi?id=186540
|
||
<rdar://problem/39682133>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Add test that stack overflows and crashes on ShadowChicken when JIT is
|
||
disabled and forceDebuggerBytecodeGeneration is enabled.
|
||
|
||
* stress/llint-stack-overflow-debugging-opcodes.js: Added.
|
||
(foo):
|
||
(catch):
|
||
|
||
2018-06-19 Leo Balter <leonardo.balter@gmail.com>
|
||
|
||
[test262-runner] More updates to the skip list
|
||
https://bugs.webkit.org/show_bug.cgi?id=186786
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* test262/config.yaml:
|
||
* test262/expectations.yaml:
|
||
|
||
2018-06-19 Saam Barati <sbarati@apple.com>
|
||
|
||
Wasm: Any function argument of type Void should be a validation error
|
||
https://bugs.webkit.org/show_bug.cgi?id=186794
|
||
<rdar://problem/41140257>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/Builder.js:
|
||
(const._normalizeFunctionSignature):
|
||
* wasm/function-tests/void-argument-type-should-be-a-validation-error.js: Added.
|
||
(getBinary):
|
||
* wasm/self-test/test_BuilderJSON.js:
|
||
|
||
2018-06-18 Keith Miller <keith_miller@apple.com>
|
||
|
||
Properly zero unused property storage offsets
|
||
https://bugs.webkit.org/show_bug.cgi?id=186692
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/butterfly-zero-unused-butterfly-properties.js: Added.
|
||
|
||
2018-06-18 Michael Saboff <msaboff@apple.com>
|
||
|
||
Support Unicode 11 in RegExp
|
||
https://bugs.webkit.org/show_bug.cgi?id=186685
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* test262/config.yaml: Removed from skip list Unicode 11 property tests as they
|
||
are now supported. Added new bug reference for still failing
|
||
test/built-ins/RegExp/property-escapes/character-class.js test.
|
||
|
||
* test262/test/built-ins/RegExp/property-escapes/unsupported-binary-properties.js:
|
||
Removed "Extended_Pictographic" from unsupported properties since Unicode 11 now supports them.
|
||
|
||
2018-06-16 Leo Balter <leonardo.balter@gmail.com>
|
||
|
||
Update Test262 2018-06-15
|
||
https://bugs.webkit.org/show_bug.cgi?id=186695
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
Also update the skip list - in the config file - with new failures
|
||
* test262/config.yaml:
|
||
* test262/expectations.yaml:
|
||
* test262/harness/testIntl.js:
|
||
(getInvalidLanguageTags):
|
||
* test262/latest-changes-summary.txt:
|
||
* test262/test/built-ins/Date/parse/time-value-maximum-range.js: Added.
|
||
* test262/test/built-ins/Date/parse/zero.js: Added.
|
||
* test262/test/built-ins/JSON/stringify/bigint-cross-realm.js: Added.
|
||
(other.BigInt.prototype.toJSON):
|
||
* test262/test/built-ins/Object/prototype/toString/symbol-tag-non-str-bigint.js: Added.
|
||
* test262/test/built-ins/Object/prototype/toString/symbol-tag-override-bigint.js: Added.
|
||
* test262/test/built-ins/Reflect/ownKeys/return-on-corresponding-order-large-index.js: Added.
|
||
* test262/test/built-ins/RegExp/property-escapes/character-class.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/ASCII.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/ASCII_Hex_Digit.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Alphabetic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Any.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Assigned.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Bidi_Control.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Bidi_Mirrored.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Case_Ignorable.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Cased.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Changes_When_Casefolded.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Changes_When_Casemapped.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Changes_When_Lowercased.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Changes_When_NFKC_Casefolded.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Changes_When_Titlecased.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Changes_When_Uppercased.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Dash.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Default_Ignorable_Code_Point.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Deprecated.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Diacritic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Emoji.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Emoji_Component.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Emoji_Modifier.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Emoji_Modifier_Base.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Emoji_Presentation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Extended_Pictographic.js: Added.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Extender.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Cased_Letter.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Close_Punctuation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Connector_Punctuation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Control.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Currency_Symbol.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Dash_Punctuation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Decimal_Number.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Enclosing_Mark.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Final_Punctuation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Format.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Initial_Punctuation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Letter.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Letter_Number.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Line_Separator.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Lowercase_Letter.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Mark.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Math_Symbol.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Modifier_Letter.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Modifier_Symbol.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Nonspacing_Mark.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Number.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Open_Punctuation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Other.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Other_Letter.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Other_Number.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Other_Punctuation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Other_Symbol.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Paragraph_Separator.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Private_Use.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Punctuation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Separator.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Space_Separator.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Spacing_Mark.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Surrogate.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Symbol.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Titlecase_Letter.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Unassigned.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/General_Category_-_Uppercase_Letter.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Grapheme_Base.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Grapheme_Extend.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Hex_Digit.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/IDS_Binary_Operator.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/IDS_Trinary_Operator.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/ID_Continue.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/ID_Start.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Ideographic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Join_Control.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Logical_Order_Exception.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Lowercase.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Math.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Noncharacter_Code_Point.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Pattern_Syntax.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Pattern_White_Space.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Quotation_Mark.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Radical.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Regional_Indicator.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Adlam.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Ahom.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Anatolian_Hieroglyphs.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Arabic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Armenian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Avestan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Balinese.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Bamum.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Bassa_Vah.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Batak.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Bengali.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Bhaiksuki.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Bopomofo.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Brahmi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Braille.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Buginese.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Buhid.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Canadian_Aboriginal.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Carian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Caucasian_Albanian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Chakma.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Cham.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Cherokee.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Common.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Coptic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Cuneiform.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Cypriot.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Cyrillic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Deseret.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Devanagari.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Dogra.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Kaithi.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Duployan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Egyptian_Hieroglyphs.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Elbasan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Ethiopic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Georgian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Glagolitic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Gothic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Grantha.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Greek.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Gujarati.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Gunjala_Gondi.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Chakma.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Gurmukhi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Han.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Hangul.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Hanifi_Rohingya.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Ahom.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Hanunoo.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Hatran.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Hebrew.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Hiragana.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Imperial_Aramaic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Inherited.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Inscriptional_Pahlavi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Inscriptional_Parthian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Javanese.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Kaithi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Kannada.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Katakana.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Kayah_Li.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Kharoshthi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Khmer.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Khojki.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Khudawadi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Lao.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Latin.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Lepcha.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Limbu.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Linear_A.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Linear_B.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Lisu.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Lycian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Lydian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Mahajani.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Makasar.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Lycian.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Malayalam.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Mandaic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Manichaean.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Marchen.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Masaram_Gondi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Medefaidrin.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Carian.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Meetei_Mayek.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Mende_Kikakui.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Meroitic_Cursive.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Meroitic_Hieroglyphs.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Miao.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Modi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Mongolian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Mro.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Multani.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Myanmar.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Nabataean.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_New_Tai_Lue.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Newa.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Nko.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Nushu.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Ogham.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Ol_Chiki.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Old_Hungarian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Old_Italic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Old_North_Arabian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Old_Permic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Old_Persian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Old_Sogdian.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Gothic.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Old_South_Arabian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Old_Turkic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Oriya.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Osage.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Osmanya.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Pahawh_Hmong.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Palmyrene.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Pau_Cin_Hau.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Phags_Pa.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Phoenician.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Psalter_Pahlavi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Rejang.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Runic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Samaritan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Saurashtra.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Sharada.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Shavian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Siddham.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_SignWriting.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Sinhala.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Sogdian.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Lycian.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Sora_Sompeng.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Soyombo.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Sundanese.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Syloti_Nagri.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Syriac.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tagalog.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tagbanwa.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tai_Le.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tai_Tham.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tai_Viet.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Takri.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tamil.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tangut.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Telugu.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Thaana.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Thai.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tibetan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tifinagh.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Tirhuta.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Ugaritic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Vai.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Warang_Citi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Yi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Zanabazar_Square.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Adlam.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Ahom.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Anatolian_Hieroglyphs.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Arabic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Armenian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Avestan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Balinese.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Bamum.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Bassa_Vah.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Batak.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Bengali.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Bhaiksuki.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Bopomofo.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Brahmi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Braille.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Buginese.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Buhid.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Canadian_Aboriginal.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Carian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Caucasian_Albanian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Chakma.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Cham.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Cherokee.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Common.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Coptic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Cuneiform.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Cypriot.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Cyrillic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Deseret.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Devanagari.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Dogra.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Mahajani.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Duployan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Egyptian_Hieroglyphs.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Elbasan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Ethiopic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Georgian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Glagolitic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Gothic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Grantha.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Greek.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Gujarati.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Gunjala_Gondi.js: Added.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Gurmukhi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Han.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Hangul.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Hanifi_Rohingya.js: Added.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Hanunoo.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Hatran.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Hebrew.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Hiragana.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Imperial_Aramaic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Inherited.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Inscriptional_Pahlavi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Inscriptional_Parthian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Javanese.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Kaithi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Kannada.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Katakana.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Kayah_Li.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Kharoshthi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Khmer.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Khojki.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Khudawadi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Lao.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Latin.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Lepcha.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Limbu.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Linear_A.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Linear_B.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Lisu.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Lycian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Lydian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Mahajani.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Makasar.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Adlam.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Malayalam.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Mandaic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Manichaean.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Marchen.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Masaram_Gondi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Medefaidrin.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Avestan.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Meetei_Mayek.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Mende_Kikakui.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Meroitic_Cursive.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Meroitic_Hieroglyphs.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Miao.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Modi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Mongolian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Mro.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Multani.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Myanmar.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Nabataean.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_New_Tai_Lue.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Newa.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Nko.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Nushu.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Ogham.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Ol_Chiki.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_Hungarian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_Italic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_North_Arabian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_Permic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_Persian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_Sogdian.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_-_Khojki.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_South_Arabian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Old_Turkic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Oriya.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Osage.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Osmanya.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Pahawh_Hmong.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Palmyrene.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Pau_Cin_Hau.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Phags_Pa.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Phoenician.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Psalter_Pahlavi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Rejang.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Runic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Samaritan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Saurashtra.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Sharada.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Shavian.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Siddham.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_SignWriting.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Sinhala.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Sogdian.js: Copied from JSTests/test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Manichaean.js.
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Sora_Sompeng.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Soyombo.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Sundanese.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Syloti_Nagri.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Syriac.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tagalog.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tagbanwa.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tai_Le.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tai_Tham.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tai_Viet.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Takri.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tamil.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tangut.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Telugu.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Thaana.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Thai.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tibetan.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tifinagh.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Tirhuta.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Ugaritic.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Vai.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Warang_Citi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Yi.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Script_Extensions_-_Zanabazar_Square.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Sentence_Terminal.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Soft_Dotted.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Terminal_Punctuation.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Unified_Ideograph.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Uppercase.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/Variation_Selector.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/White_Space.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/XID_Continue.js:
|
||
* test262/test/built-ins/RegExp/property-escapes/generated/XID_Start.js:
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/internal-regexp-lastindex-not-zero.js: Removed.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/isregexp-called-once.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/Symbol.matchAll/isregexp-internal-regexp-is-false.js.
|
||
(o.get Symbol):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/isregexp-internal-regexp-throws.js: Removed.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/regexpcreate-this-throws.js:
|
||
* test262/test/built-ins/Symbol/matchAll/prop-desc.js:
|
||
* test262/test/built-ins/Symbol/prototype/description/description-symboldescriptivestring.js: Added.
|
||
* test262/test/built-ins/Symbol/prototype/description/descriptor.js: Added.
|
||
* test262/test/built-ins/Symbol/prototype/description/get.js: Added.
|
||
* test262/test/built-ins/Symbol/prototype/description/is-not-own-property.js: Added.
|
||
* test262/test/built-ins/Symbol/prototype/description/this-val-non-symbol.js: Added.
|
||
* test262/test/built-ins/Symbol/prototype/description/this-val-symbol.js: Added.
|
||
* test262/test/built-ins/Symbol/prototype/description/wrapper.js: Added.
|
||
* test262/test/intl402/Intl/getCanonicalLocales/Locale-object.js: Added.
|
||
* test262/test/intl402/Locale/constructor-options-collation-invalid.js:
|
||
* test262/test/intl402/Locale/constructor-options-collation-valid.js:
|
||
* test262/test/intl402/Locale/constructor-options-hourcycle-valid.js:
|
||
* test262/test/intl402/Locale/constructor-options-language-invalid.js:
|
||
* test262/test/intl402/Locale/constructor-options-numberingsystem-invalid.js:
|
||
* test262/test/intl402/Locale/constructor-options-numberingsystem-valid.js:
|
||
* test262/test/intl402/Locale/constructor-tag.js: Added.
|
||
(canonical.of.Object.entries):
|
||
* test262/test/intl402/Locale/likely-subtags.js: Added.
|
||
(maximal.of.Object.entries):
|
||
(minimal.of.Object.entries):
|
||
* test262/test/intl402/Locale/prototype/baseName/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/baseName/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/baseName/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/calendar/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/calendar/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/calendar/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/caseFirst/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/caseFirst/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/caseFirst/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/collation/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/collation/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/collation/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/hourCycle/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/hourCycle/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/hourCycle/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/language/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/language/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/language/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/maximize/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/minimize/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/numberingSystem/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/numberingSystem/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/numberingSystem/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/numeric/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/numeric/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/numeric/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/region/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/region/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/region/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/script/branding.js: Added.
|
||
* test262/test/intl402/Locale/prototype/script/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/script/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/toString/branding.js: Added.
|
||
* test262/test/intl402/NumberFormat/length.js:
|
||
* test262/test/intl402/PluralRules/prototype/resolvedOptions/pluralCategories.js: Added.
|
||
* test262/test/language/expressions/tagged-template/template-object-template-map.js: Added.
|
||
(tag):
|
||
* test262/test/language/expressions/tagged-template/template-object.js:
|
||
(templateObject.tag):
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-bil-bd-nsl-bd-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-bil-nsl-bd-dunder-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-bil-nsl-bd-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dd-nsl-dds-dunder-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dd-nsl-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dds-nsl-dds-dunder-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dds-nsl-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dil-dot-dds-nsl-ep-dd-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dil-dot-nsl-ep-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dil-dot-nsl-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dot-dds-nsl-ep-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dot-nsl-ep-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-dot-nsl-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-hil-hd-nsl-hd-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-hil-nsl-hd-dunder-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-hil-nsl-hd-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-nzd-nsl-dds-dunder-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-nzd-nsl-dds-leading-zero-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-oil-nsl-od-dunder-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-oil-nsl-od-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-oil-od-nsl-od-err.js:
|
||
* test262/test/language/literals/numeric/numeric-separator-literal-unicode-err.js:
|
||
* test262/test262-Revision.txt:
|
||
|
||
2018-06-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Reduce OSRExit for Kraken/crypto-aes due to CoW array
|
||
https://bugs.webkit.org/show_bug.cgi?id=186721
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/array-slice-cow.js: Added.
|
||
(shouldBe):
|
||
(testInt32):
|
||
(testDouble):
|
||
(testContiguous):
|
||
|
||
2018-06-15 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Spread onto PhantomNewArrayBuffer assumes JSFixedArray, but JSImmutableButterfly is returned
|
||
https://bugs.webkit.org/show_bug.cgi?id=186460
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/spread-escapes-but-new-array-buffer-does-not-double.js: Added.
|
||
(assert):
|
||
(getProperties):
|
||
(theFunc):
|
||
(let.obj.valueOf):
|
||
|
||
2018-06-14 Leo Balter <leonardo.balter@gmail.com>
|
||
|
||
Test262-Runner: Update config list with some failing tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=185628
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
The config list is updated to match some slow / hanging tests that are currenctly failing
|
||
due to the length used in Array or Array like objects.
|
||
|
||
This also adds matching bugs for known features that are still in progress and not enabled
|
||
yet.
|
||
* test262/config.yaml:
|
||
|
||
2018-06-12 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Update test262 for Array#sort
|
||
https://bugs.webkit.org/show_bug.cgi?id=186458
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-06-10 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Array.prototype.sort should rejects null comparator
|
||
https://bugs.webkit.org/show_bug.cgi?id=186458
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* ChakraCore/test/Array/array_sort.baseline-jsc:
|
||
* stress/array-sort-bad-comparator.js:
|
||
(test):
|
||
* stress/sort-null-comparator.js: Removed.
|
||
* test262/expectations.yaml:
|
||
|
||
2018-06-07 Saam Barati <sbarati@apple.com>
|
||
|
||
Make DFG to FTL OSR entry code more sane by removing bad RELEASE_ASSERTS and making it trigger compiles in outer loops before inner ones
|
||
https://bugs.webkit.org/show_bug.cgi?id=186218
|
||
<rdar://problem/38449540>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/dont-crash-ftl-osr-entry.js: Added.
|
||
|
||
2018-06-06 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Compare operations do not respect negative zeros
|
||
https://bugs.webkit.org/show_bug.cgi?id=183729
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/comparison-ignore-negative-zero.js: Added.
|
||
(shouldBe):
|
||
(zero):
|
||
(negativeZero):
|
||
(object.valueOf):
|
||
(test):
|
||
|
||
2018-06-06 Saam Barati <sbarati@apple.com>
|
||
|
||
generateConditionsForInstanceOf needs to see if the object has a poly proto structure before assuming it has a constant prototype
|
||
https://bugs.webkit.org/show_bug.cgi?id=186363
|
||
|
||
Rubber-stamped by Filip Pizlo.
|
||
|
||
* stress/instance-of-on-poly-proto-opc-should-not-crash.js: Added.
|
||
|
||
2018-06-05 David Fenton <david_fenton@apple.com>
|
||
|
||
Temporarily Skip JSC stress test failures that are consistently occurring.
|
||
https://bugs.webkit.org/show_bug.cgi?id=186283
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* executableAllocationFuzz.yaml:
|
||
* slowMicrobenchmarks/default-derived-constructor.js:
|
||
* stress/put-direct-index-broken-2.js:
|
||
* stress/splay-flash-access.js:
|
||
* stress/spread-forward-call-varargs-stack-overflow.js:
|
||
|
||
2018-06-04 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add test for CoW conversions in the DFG/FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=186295
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arrayprofile-should-not-convert-get-by-val-cow.js: Added.
|
||
(assertEq):
|
||
(withArrayArgInt32):
|
||
(withArrayLiteralInt32):
|
||
(withArrayArgDouble):
|
||
(withArrayLiteralDouble):
|
||
(withArrayArgContiguous):
|
||
(withArrayLiteralContiguous):
|
||
(test):
|
||
|
||
2018-06-02 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for addition operations
|
||
https://bugs.webkit.org/show_bug.cgi?id=179002
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/addition-order-evaluation.js: Added.
|
||
* stress/big-int-add-wrapped-value.js: Added.
|
||
* stress/big-int-addition-basic.js: Added.
|
||
* stress/big-int-addition-jit.js: Added.
|
||
* stress/big-int-addition-memory-stress.js: Added.
|
||
* stress/big-int-addition-string-coercion.js: Added.
|
||
* stress/big-int-addition-to-primitive-precedence.js: Added.
|
||
* stress/big-int-addition-to-primitive.js: Added.
|
||
* stress/big-int-addition-type-error.js: Added.
|
||
* stress/big-int-no-conversion-to-number.js:
|
||
* stress/big-int-sub-wrapped-value.js: Added.
|
||
* stress/big-int-subtraction-basic.js: Added.
|
||
* stress/big-int-subtraction-jit.js: Added.
|
||
* stress/big-int-subtraction-type-error.js: Added.
|
||
* stress/sub-order-evaluation.js: Added.
|
||
|
||
2018-06-02 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r232439.
|
||
https://bugs.webkit.org/show_bug.cgi?id=186238
|
||
|
||
It breaks gtk-linux-32-release (Requested by caiolima on
|
||
#webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"[ESNext][BigInt] Implement support for addition operations"
|
||
https://bugs.webkit.org/show_bug.cgi?id=179002
|
||
https://trac.webkit.org/changeset/232439
|
||
|
||
2018-06-01 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Baseline op_jtrue emits an insane amount of code
|
||
https://bugs.webkit.org/show_bug.cgi?id=185708
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/logical-not-masquerades-as-undefined.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/logical-not.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2018-06-02 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Remove WeakReferenceHarvester
|
||
https://bugs.webkit.org/show_bug.cgi?id=186102
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/create-many-weak-map.js: Added.
|
||
|
||
2018-06-02 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Object.create should have intrinsic
|
||
https://bugs.webkit.org/show_bug.cgi?id=186200
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/object-create-null.js: Added.
|
||
(test):
|
||
* microbenchmarks/object-create-unknown-object-prototype.js: Added.
|
||
(test):
|
||
* microbenchmarks/object-create-untyped-prototype.js: Added.
|
||
(test):
|
||
* stress/get-by-pname-only-prototype-properties.js: Added.
|
||
(foo):
|
||
* stress/object-create-define.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-create-null-external.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-create-null.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-create-prototype.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-create-undefined.js: Added.
|
||
(shouldThrow):
|
||
(i.shouldThrow):
|
||
|
||
2018-06-02 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for addition operations
|
||
https://bugs.webkit.org/show_bug.cgi?id=179002
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/addition-order-evaluation.js: Added.
|
||
* stress/big-int-add-wrapped-value.js: Added.
|
||
* stress/big-int-addition-basic.js: Added.
|
||
* stress/big-int-addition-jit.js: Added.
|
||
* stress/big-int-addition-memory-stress.js: Added.
|
||
* stress/big-int-addition-string-coercion.js: Added.
|
||
* stress/big-int-addition-to-primitive-precedence.js: Added.
|
||
* stress/big-int-addition-to-primitive.js: Added.
|
||
* stress/big-int-addition-type-error.js: Added.
|
||
* stress/big-int-no-conversion-to-number.js:
|
||
* stress/big-int-sub-wrapped-value.js: Added.
|
||
* stress/big-int-subtraction-basic.js: Added.
|
||
* stress/big-int-subtraction-jit.js: Added.
|
||
* stress/big-int-subtraction-type-error.js: Added.
|
||
* stress/sub-order-evaluation.js: Added.
|
||
|
||
2018-05-29 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Add Symbol.prototype.description getter
|
||
https://bugs.webkit.org/show_bug.cgi?id=186053
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/symbol-description.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
|
||
2018-05-30 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] InById should be converted to MatchStructure
|
||
https://bugs.webkit.org/show_bug.cgi?id=185803
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* microbenchmarks/in-by-id-match.js: Added.
|
||
(test):
|
||
* microbenchmarks/in-by-id-removed.js: Added.
|
||
(test):
|
||
* stress/in-by-id-constant.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
* stress/in-by-id-match-invalid.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
* stress/in-by-id-match.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
|
||
2018-05-31 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "=<" and ">=" relational operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=185929
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-greater-than-or-equal-jit.js: Added.
|
||
* stress/big-int-greater-than-or-equal-order-of-evaluation.js: Added.
|
||
* stress/big-int-greater-than-or-equal-wrapped-values.js: Added.
|
||
* stress/big-int-greater-than-or-equal.js: Added.
|
||
* stress/big-int-less-than-or-equal-general.js: Added.
|
||
* stress/big-int-less-than-or-equal-jit.js: Added.
|
||
* stress/big-int-less-than-or-equal-order-of-evaluation.js: Added.
|
||
* stress/big-int-less-than-or-equal-wrapped-values.js: Added.
|
||
|
||
2018-05-31 Saam Barati <sbarati@apple.com>
|
||
|
||
Cache toString results for CoW arrays
|
||
https://bugs.webkit.org/show_bug.cgi?id=186160
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* microbenchmarks/to-string-on-cow-array.js: Added.
|
||
(foo):
|
||
|
||
2018-05-31 Keith Miller <keith_miller@apple.com>
|
||
|
||
Rebaseline test for change in Error.stack behavior.
|
||
|
||
* stress/error-stack-trace-limit.js:
|
||
(numberOfFrames):
|
||
|
||
2018-05-30 Saam Barati <sbarati@apple.com>
|
||
|
||
DFG combined liveness needs to say that the machine CodeBlock's arguments are live
|
||
https://bugs.webkit.org/show_bug.cgi?id=186121
|
||
<rdar://problem/39377796>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/combined-liveness-needs-to-say-arguments-are-live.js: Added.
|
||
(baz):
|
||
(foo):
|
||
|
||
2018-05-30 Keith Miller <keith_miller@apple.com>
|
||
|
||
Unreviewed, uncomment erroneously commented test code.
|
||
|
||
* stress/error-stack-trace-limit.js:
|
||
|
||
2018-05-30 Keith Miller <keith_miller@apple.com>
|
||
|
||
LLInt get_by_id prototype caching doesn't properly handle changes
|
||
https://bugs.webkit.org/show_bug.cgi?id=186112
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/llint-proto-get-by-id-cache-change-prototype.js: Added.
|
||
(foo):
|
||
* stress/llint-proto-get-by-id-cache-intercept-value.js: Added.
|
||
(foo):
|
||
|
||
2018-05-30 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "%" operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=184327
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-mod-memory-stress.js: Added.
|
||
* stress/big-int-mod-to-primitive-precedence.js: Added.
|
||
* stress/big-int-mod-to-primitive.js: Added.
|
||
* stress/big-int-mod-type-error.js: Added.
|
||
* stress/big-int-mod-wrapped-value.js: Added.
|
||
* stress/big-int-mod.js: Added.
|
||
|
||
2018-05-29 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSTests] update test262 expectations after r232261
|
||
https://bugs.webkit.org/show_bug.cgi?id=184267
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-05-29 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "<" and ">" relational operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=185379
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/big-int-greater-than-general.js: Added.
|
||
* stress/big-int-greater-than-jit.js: Added.
|
||
* stress/big-int-greater-than-order-of-evaluation.js: Added.
|
||
* stress/big-int-greater-than-wrapped-values.js: Added.
|
||
* stress/big-int-less-than-general.js: Added.
|
||
* stress/big-int-less-than-jit.js: Added.
|
||
* stress/big-int-less-than-order-of-evaluation.js: Added.
|
||
* stress/big-int-less-than-wrapped-values.js: Added.
|
||
|
||
2018-05-29 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] Fix Array.prototype.concat fast case when single argument is Proxy
|
||
https://bugs.webkit.org/show_bug.cgi?id=184267
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-concat-fast-spread-proxy.js: Copied from JSTests/stress/array-concat-spread-proxy.js.
|
||
(arrayEq):
|
||
(catch):
|
||
* stress/array-concat-spread-proxy.js:
|
||
|
||
2018-05-27 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement "+" and "-" unary operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=182214
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/big-int-negate-basic.js: Added.
|
||
* stress/big-int-negate-jit.js: Added.
|
||
* stress/big-int-unary-plus.js: Added.
|
||
|
||
2018-05-26 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Rename Array#flatten to flat
|
||
https://bugs.webkit.org/show_bug.cgi?id=186012
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-flatten.js:
|
||
(shouldThrow):
|
||
* test262/expectations.yaml:
|
||
|
||
2018-05-23 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Upgrade test262 to May 24 version
|
||
https://bugs.webkit.org/show_bug.cgi?id=185937
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* test262/expectations.yaml:
|
||
* test262/harness/doneprintHandle.js:
|
||
(DONE):
|
||
* test262/latest-changes-summary.txt:
|
||
* test262/test/annexB/language/eval-code/direct/global-block-decl-eval-global-existing-global-init.js:
|
||
* test262/test/annexB/language/eval-code/direct/global-block-decl-eval-global-existing-non-enumerable-global-init.js: Added.
|
||
* test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-a-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/direct/global-if-decl-else-decl-b-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/direct/global-if-decl-else-stmt-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/direct/global-if-decl-no-else-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/direct/global-if-stmt-else-decl-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/direct/global-switch-case-eval-global-existing-global-init.js:
|
||
* test262/test/annexB/language/eval-code/direct/global-switch-case-eval-global-existing-non-enumerable-global-init.js: Added.
|
||
* test262/test/annexB/language/eval-code/direct/global-switch-dflt-eval-global-existing-global-init.js:
|
||
* test262/test/annexB/language/eval-code/direct/global-switch-dflt-eval-global-existing-non-enumerable-global-init.js: Added.
|
||
* test262/test/annexB/language/eval-code/indirect/global-block-decl-eval-global-existing-global-init.js:
|
||
* test262/test/annexB/language/eval-code/indirect/global-block-decl-eval-global-existing-non-enumerable-global-init.js: Added.
|
||
* test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-a-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/indirect/global-if-decl-else-decl-b-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/indirect/global-if-decl-else-stmt-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/indirect/global-if-decl-no-else-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/indirect/global-if-stmt-else-decl-eval-global-existing-global-init.js:
|
||
* 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.
|
||
* test262/test/annexB/language/eval-code/indirect/global-switch-case-eval-global-existing-global-init.js:
|
||
* test262/test/annexB/language/eval-code/indirect/global-switch-case-eval-global-existing-non-enumerable-global-init.js: Added.
|
||
* test262/test/annexB/language/eval-code/indirect/global-switch-dflt-eval-global-existing-global-init.js:
|
||
* test262/test/annexB/language/eval-code/indirect/global-switch-dflt-eval-global-existing-non-enumerable-global-init.js: Added.
|
||
* test262/test/annexB/language/global-code/block-decl-global-existing-global-init.js: Added.
|
||
(262.evalScript.f):
|
||
* test262/test/annexB/language/global-code/block-decl-global-existing-non-enumerable-global-init.js: Added.
|
||
(262.evalScript.f):
|
||
* test262/test/annexB/language/global-code/if-decl-else-decl-a-global-existing-global-init.js: Added.
|
||
(262.evalScript.true.f):
|
||
(else._f):
|
||
* test262/test/annexB/language/global-code/if-decl-else-decl-a-global-existing-non-enumerable-global-init.js: Added.
|
||
(262.evalScript.true.f):
|
||
(else._f):
|
||
* test262/test/annexB/language/global-code/if-decl-else-decl-b-global-existing-global-init.js: Added.
|
||
(262.evalScript.false._f):
|
||
(else.f):
|
||
* test262/test/annexB/language/global-code/if-decl-else-decl-b-global-existing-non-enumerable-global-init.js: Added.
|
||
(262.evalScript.false._f):
|
||
(else.f):
|
||
* test262/test/annexB/language/global-code/if-decl-else-stmt-global-existing-global-init.js: Added.
|
||
(262.evalScript.true.f):
|
||
* test262/test/annexB/language/global-code/if-decl-else-stmt-global-existing-non-enumerable-global-init.js: Added.
|
||
(262.evalScript.true.f):
|
||
* test262/test/annexB/language/global-code/if-decl-no-else-global-existing-global-init.js: Added.
|
||
(262.evalScript.true.f):
|
||
* test262/test/annexB/language/global-code/if-decl-no-else-global-existing-non-enumerable-global-init.js: Added.
|
||
(262.evalScript.true.f):
|
||
* test262/test/annexB/language/global-code/if-stmt-else-decl-global-existing-global-init.js: Added.
|
||
(else.f):
|
||
* test262/test/annexB/language/global-code/if-stmt-else-decl-global-existing-non-enumerable-global-init.js: Added.
|
||
(else.f):
|
||
* test262/test/annexB/language/global-code/switch-case-global-existing-global-init.js: Added.
|
||
(262.evalScript.switch.case.1):
|
||
(262.evalScript.switch):
|
||
* test262/test/annexB/language/global-code/switch-case-global-existing-non-enumerable-global-init.js: Added.
|
||
(262.evalScript.switch.case.1):
|
||
(262.evalScript.switch):
|
||
* test262/test/annexB/language/global-code/switch-dflt-global-existing-global-init.js: Added.
|
||
(262.evalScript.switch.default):
|
||
(262.evalScript.switch):
|
||
* test262/test/annexB/language/global-code/switch-dflt-global-existing-non-enumerable-global-init.js: Added.
|
||
(262.evalScript.switch.default):
|
||
(262.evalScript.switch):
|
||
* 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.
|
||
* 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.
|
||
* 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.
|
||
* 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.
|
||
* test262/test/built-ins/Array/prototype/flat/length.js: Added.
|
||
* test262/test/built-ins/Array/prototype/flat/name.js: Added.
|
||
* 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.
|
||
* 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.
|
||
* test262/test/built-ins/Array/prototype/flat/null-undefined-elements.js: Added.
|
||
* 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.
|
||
* test262/test/built-ins/Array/prototype/flat/positive-infinity.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/positive-infinity.js.
|
||
* test262/test/built-ins/Array/prototype/flat/prop-desc.js: Renamed from JSTests/test262/test/built-ins/Array/prototype/flatten/prop-desc.js.
|
||
* 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.
|
||
* test262/test/built-ins/Array/prototype/flatten/length.js: Removed.
|
||
* test262/test/built-ins/Array/prototype/flatten/name.js: Removed.
|
||
* test262/test/built-ins/Array/prototype/flatten/null-undefined-elements.js: Removed.
|
||
* test262/test/built-ins/AsyncGeneratorPrototype/next/name.js:
|
||
* test262/test/built-ins/AsyncGeneratorPrototype/return/name.js:
|
||
* test262/test/built-ins/AsyncGeneratorPrototype/throw/name.js:
|
||
* test262/test/built-ins/Math/acosh/nan-returns.js:
|
||
* test262/test/built-ins/Math/asinh/asinh-specialVals.js:
|
||
* test262/test/built-ins/Math/atanh/atanh-specialVals.js:
|
||
* test262/test/built-ins/Math/cbrt/cbrt-specialValues.js:
|
||
* test262/test/built-ins/Math/cbrt/prop-desc.js:
|
||
* test262/test/built-ins/Math/cosh/cosh-specialVals.js:
|
||
* test262/test/built-ins/Math/expm1/expm1-specialVals.js:
|
||
* test262/test/built-ins/Math/log10/Log10-specialVals.js:
|
||
* test262/test/built-ins/Math/log2/log2-basicTests.js:
|
||
* test262/test/built-ins/Math/sign/sign-specialVals.js:
|
||
* test262/test/built-ins/Math/sinh/sinh-specialVals.js:
|
||
* test262/test/built-ins/Math/tanh/tanh-specialVals.js:
|
||
* test262/test/built-ins/Math/trunc/trunc-sampleTests.js:
|
||
* test262/test/built-ins/Math/trunc/trunc-specialVals.js:
|
||
* test262/test/built-ins/Object/internals/DefineOwnProperty/consistent-value-regexp-dollar1.js: Added.
|
||
* test262/test/built-ins/Object/internals/DefineOwnProperty/consistent-writable-regexp-dollar1.js: Added.
|
||
* test262/test/intl402/Intl/getCanonicalLocales/descriptor.js:
|
||
* test262/test/intl402/Intl/getCanonicalLocales/duplicates.js:
|
||
* test262/test/intl402/Locale/constructor-getter-order.js: Added.
|
||
(new.Intl.Locale.toString):
|
||
(get language):
|
||
(get script):
|
||
(get region):
|
||
(get calendar):
|
||
(get collation):
|
||
(get hourCycle):
|
||
(get caseFirst):
|
||
(get numeric):
|
||
(get numberingSystem):
|
||
* test262/test/intl402/Locale/constructor-locale-object.js: Added.
|
||
* test262/test/intl402/Locale/constructor-non-iana-canon.js: Added.
|
||
* test262/test/intl402/Locale/constructor-options-casefirst-invalid.js: Added.
|
||
(valueOf):
|
||
(const.invalidCaseFirstOption.of.invalidCaseFirstOptions.new.Intl.Locale):
|
||
* test262/test/intl402/Locale/constructor-options-casefirst-valid.js: Added.
|
||
(toString):
|
||
* test262/test/intl402/Locale/constructor-options-collation-invalid.js: Added.
|
||
(const.invalidCollationOption.of.invalidCollationOptions.new.Intl.Locale):
|
||
* test262/test/intl402/Locale/constructor-options-collation-valid.js: Added.
|
||
* test262/test/intl402/Locale/constructor-options-hourcycle-invalid.js: Added.
|
||
(const.invalidHourCycleOption.of.invalidHourCycleOptions.new.Intl.Locale):
|
||
* test262/test/intl402/Locale/constructor-options-hourcycle-valid.js: Added.
|
||
(toString):
|
||
* test262/test/intl402/Locale/constructor-options-language-grandfathered.js: Added.
|
||
* test262/test/intl402/Locale/constructor-options-language-valid.js:
|
||
(toString):
|
||
* test262/test/intl402/Locale/constructor-options-numberingsystem-invalid.js: Added.
|
||
(const.invalidNumberingSystemOption.of.invalidNumberingSystemOptions.new.Intl.Locale):
|
||
* test262/test/intl402/Locale/constructor-options-numberingsystem-valid.js: Added.
|
||
* test262/test/intl402/Locale/constructor-options-numeric-valid.js: Added.
|
||
(valueOf):
|
||
* test262/test/intl402/Locale/constructor-options-region-valid.js:
|
||
* test262/test/intl402/Locale/constructor-options-script-valid.js:
|
||
(toString):
|
||
* test262/test/intl402/Locale/constructor-parse-twice.js: Added.
|
||
* test262/test/intl402/Locale/constructor-tag-tostring.js: Added.
|
||
(CustomError):
|
||
(WrongCustomError):
|
||
(const.errors.get Symbol):
|
||
(throw.new.CustomError):
|
||
(throw.new.CustomError.get toString):
|
||
(throw.new.CustomError.get valueOf):
|
||
(throw.new.WrongCustomError.get valueOf):
|
||
(throw.new.WrongCustomError):
|
||
* test262/test/intl402/Locale/constructor-unicode-ext-invalid.js: Added.
|
||
* test262/test/intl402/Locale/constructor-unicode-ext-valid.js: Added.
|
||
(canonical.of.Object.entries):
|
||
* test262/test/intl402/Locale/extensions-grandfathered.js: Added.
|
||
(of.testData.value.of.Object.entries):
|
||
* test262/test/intl402/Locale/extensions-private.js: Added.
|
||
* test262/test/intl402/Locale/getters-grandfathered.js: Added.
|
||
* test262/test/intl402/Locale/getters-missing.js: Added.
|
||
* test262/test/intl402/Locale/getters-privateuse.js: Added.
|
||
* test262/test/intl402/Locale/getters.js: Added.
|
||
* test262/test/intl402/Locale/invalid-tag-throws-symbol.js:
|
||
* test262/test/intl402/Locale/likely-subtags-grandfathered.js: Added.
|
||
* test262/test/intl402/Locale/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/baseName/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/calendar/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/caseFirst/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/collation/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/constructor/prop-desc.js: Copied from JSTests/test262/test/intl402/Locale/prototype/constructor.js.
|
||
* test262/test/intl402/Locale/prototype/hourCycle/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/language/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/maximize/length.js:
|
||
* test262/test/intl402/Locale/prototype/maximize/prop-desc.js:
|
||
* test262/test/intl402/Locale/prototype/minimize/length.js: Copied from JSTests/test262/test/intl402/Locale/prototype/maximize/length.js.
|
||
* test262/test/intl402/Locale/prototype/minimize/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/minimize/prop-desc.js: Copied from JSTests/test262/test/intl402/Locale/prototype/constructor.js.
|
||
* test262/test/intl402/Locale/prototype/numberingSystem/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/numeric/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/region/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/script/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/toString/prop-desc.js: Renamed from JSTests/test262/test/intl402/Locale/prototype/constructor.js.
|
||
* test262/test/intl402/Locale/prototype/toStringTag/toStringTag.js: Renamed from JSTests/test262/test/intl402/Locale/prototype/toStringTag.js.
|
||
* test262/test/intl402/Number/prototype/toLocaleString/length.js:
|
||
* test262/test/intl402/NumberFormat/length.js:
|
||
* test262/test/intl402/NumberFormat/name.js:
|
||
* test262/test/intl402/NumberFormat/prop-desc.js:
|
||
* test262/test/intl402/PluralRules/length.js:
|
||
* test262/test/intl402/PluralRules/name.js:
|
||
* test262/test/intl402/PluralRules/prop-desc.js: Copied from JSTests/test262/test/intl402/NumberFormat/prop-desc.js.
|
||
* test262/test/language/expressions/addition/bigint-and-number.js:
|
||
* test262/test/language/expressions/addition/bigint-arithmetic.js:
|
||
(testAdd): Deleted.
|
||
* test262/test/language/expressions/addition/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/addition/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/addition/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/bitwise-and/bigint-and-number.js:
|
||
* test262/test/language/expressions/bitwise-and/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/bitwise-and/bigint-non-primitive.js:
|
||
(assert.sameValue.Symbol.toPrimitive):
|
||
(assert.sameValue.0b011n.Symbol.toPrimitive):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.0b011n.valueOf):
|
||
(assert.sameValue.toString):
|
||
(assert.sameValue.0b011n.toString):
|
||
* test262/test/language/expressions/bitwise-and/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/bitwise-and/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/bitwise-not/bigint-non-primitive.js:
|
||
(assert.sameValue.Symbol.toPrimitive):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.toString):
|
||
* test262/test/language/expressions/bitwise-or/bigint-and-number.js:
|
||
* test262/test/language/expressions/bitwise-or/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/bitwise-or/bigint-non-primitive.js:
|
||
(assert.sameValue.Symbol.toPrimitive):
|
||
(assert.sameValue.0b011n.Symbol.toPrimitive):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.0b011n.valueOf):
|
||
(assert.sameValue.toString):
|
||
(assert.sameValue.0b011n.toString):
|
||
* test262/test/language/expressions/bitwise-or/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/bitwise-or/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/bitwise-xor/bigint-and-number.js:
|
||
* test262/test/language/expressions/bitwise-xor/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/bitwise-xor/bigint-non-primitive.js:
|
||
(assert.sameValue.Symbol.toPrimitive):
|
||
(assert.sameValue.0b011n.Symbol.toPrimitive):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.0b011n.valueOf):
|
||
(assert.sameValue.toString):
|
||
(assert.sameValue.0b011n.toString):
|
||
* test262/test/language/expressions/bitwise-xor/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/bitwise-xor/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/division/bigint-and-number.js:
|
||
* test262/test/language/expressions/division/bigint-arithmetic.js:
|
||
(testDiv): Deleted.
|
||
* test262/test/language/expressions/division/bigint-complex-infinity.js:
|
||
* test262/test/language/expressions/division/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/division/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/division/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/does-not-equals/bigint-and-bigint.js:
|
||
* test262/test/language/expressions/does-not-equals/bigint-and-boolean.js:
|
||
* test262/test/language/expressions/does-not-equals/bigint-and-incomparable-primitive.js:
|
||
* test262/test/language/expressions/does-not-equals/bigint-and-non-finite.js:
|
||
* test262/test/language/expressions/does-not-equals/bigint-and-number-extremes.js:
|
||
* test262/test/language/expressions/does-not-equals/bigint-and-number.js:
|
||
* test262/test/language/expressions/does-not-equals/bigint-and-object.js:
|
||
(assert.sameValue.0n.valueOf):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.0n.toString):
|
||
(assert.sameValue.toString):
|
||
(assert.sameValue.900719925474099101n.valueOf):
|
||
(assert.sameValue.900719925474099101n.toString):
|
||
* test262/test/language/expressions/does-not-equals/bigint-and-string.js:
|
||
* test262/test/language/expressions/equals/bigint-and-bigint.js:
|
||
* test262/test/language/expressions/equals/bigint-and-boolean.js:
|
||
* test262/test/language/expressions/equals/bigint-and-incomparable-primitive.js:
|
||
* test262/test/language/expressions/equals/bigint-and-non-finite.js:
|
||
* test262/test/language/expressions/equals/bigint-and-number-extremes.js:
|
||
* test262/test/language/expressions/equals/bigint-and-number.js:
|
||
* test262/test/language/expressions/equals/bigint-and-object.js:
|
||
(assert.sameValue.0n.valueOf):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.0n.toString):
|
||
(assert.sameValue.toString):
|
||
(assert.sameValue.900719925474099101n.valueOf):
|
||
(assert.sameValue.900719925474099101n.toString):
|
||
* test262/test/language/expressions/equals/bigint-and-string.js:
|
||
* test262/test/language/expressions/exponentiation/bigint-and-number.js:
|
||
* test262/test/language/expressions/exponentiation/bigint-arithmetic.js:
|
||
(testExpt): Deleted.
|
||
* test262/test/language/expressions/exponentiation/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/exponentiation/bigint-negative-exponent-throws.js: Renamed from JSTests/test262/test/language/expressions/exponentiation/bigint-exp-operator-negative-throws.js.
|
||
* test262/test/language/expressions/exponentiation/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/exponentiation/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/exponentiation/bigint-zero-base-zero-exponent.js:
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-bigint.js:
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-incomparable-string.js:
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-non-finite.js:
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-number-extremes.js:
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-number.js:
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-string.js:
|
||
* test262/test/language/expressions/greater-than/11.8.2-1.js:
|
||
(obj1.valueOf):
|
||
(obj2.valueOf):
|
||
* test262/test/language/expressions/greater-than/11.8.2-2.js:
|
||
(obj1.valueOf):
|
||
(obj2.toString):
|
||
* test262/test/language/expressions/greater-than/11.8.2-3.js:
|
||
(obj1.toString):
|
||
(obj2.valueOf):
|
||
* test262/test/language/expressions/greater-than/11.8.2-4.js:
|
||
(obj1.toString):
|
||
(obj2.toString):
|
||
* test262/test/language/expressions/greater-than/bigint-and-bigint.js:
|
||
* test262/test/language/expressions/greater-than/bigint-and-boolean.js:
|
||
* test262/test/language/expressions/greater-than/bigint-and-incomparable-string.js:
|
||
* test262/test/language/expressions/greater-than/bigint-and-non-finite.js:
|
||
* test262/test/language/expressions/greater-than/bigint-and-number-extremes.js:
|
||
* test262/test/language/expressions/greater-than/bigint-and-number.js:
|
||
* test262/test/language/expressions/greater-than/bigint-and-string.js:
|
||
* test262/test/language/expressions/greater-than/bigint-and-symbol.js: Added.
|
||
* test262/test/language/expressions/left-shift/bigint-and-number.js:
|
||
* test262/test/language/expressions/left-shift/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/left-shift/bigint-non-primitive.js:
|
||
(assert.sameValue.Symbol.toPrimitive):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.toString):
|
||
(assert.sameValue.0b101n.Symbol.toPrimitive):
|
||
(assert.sameValue.0b101n.valueOf):
|
||
(assert.sameValue.0b101n.toString):
|
||
(valueOf):
|
||
* test262/test/language/expressions/left-shift/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/left-shift/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/less-than-or-equal/11.8.3-1.js:
|
||
(obj1.valueOf):
|
||
(obj2.valueOf):
|
||
* test262/test/language/expressions/less-than-or-equal/11.8.3-2.js:
|
||
(obj1.valueOf):
|
||
(obj2.toString):
|
||
* test262/test/language/expressions/less-than-or-equal/11.8.3-3.js:
|
||
(obj1.toString):
|
||
(obj2.valueOf):
|
||
* test262/test/language/expressions/less-than-or-equal/11.8.3-4.js:
|
||
(obj1.toString):
|
||
(obj2.toString):
|
||
* test262/test/language/expressions/less-than-or-equal/11.8.3-5.js: Removed.
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-bigint.js:
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-incomparable-string.js:
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-non-finite.js:
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-number-extremes.js:
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-number.js:
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-string.js:
|
||
* test262/test/language/expressions/less-than/bigint-and-bigint.js:
|
||
* test262/test/language/expressions/less-than/bigint-and-boolean.js:
|
||
* test262/test/language/expressions/less-than/bigint-and-incomparable-string.js:
|
||
* test262/test/language/expressions/less-than/bigint-and-non-finite.js:
|
||
* test262/test/language/expressions/less-than/bigint-and-number-extremes.js:
|
||
* test262/test/language/expressions/less-than/bigint-and-number.js:
|
||
* test262/test/language/expressions/less-than/bigint-and-string.js:
|
||
* test262/test/language/expressions/less-than/bigint-and-symbol.js: Added.
|
||
* test262/test/language/expressions/modulus/bigint-and-number.js:
|
||
* test262/test/language/expressions/modulus/bigint-arithmetic.js:
|
||
(testMod): Deleted.
|
||
* test262/test/language/expressions/modulus/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/modulus/bigint-modulo-zero.js:
|
||
* test262/test/language/expressions/modulus/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/modulus/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/multiplication/bigint-and-number.js:
|
||
* test262/test/language/expressions/multiplication/bigint-arithmetic.js:
|
||
(testMul): Deleted.
|
||
* test262/test/language/expressions/multiplication/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/multiplication/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/multiplication/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/right-shift/bigint-and-number.js:
|
||
* test262/test/language/expressions/right-shift/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/right-shift/bigint-non-primitive.js:
|
||
(assert.sameValue.Symbol.toPrimitive):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.toString):
|
||
(assert.sameValue.0b101n.Symbol.toPrimitive):
|
||
(assert.sameValue.0b101n.valueOf):
|
||
(assert.sameValue.0b101n.toString):
|
||
(valueOf):
|
||
* test262/test/language/expressions/right-shift/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/right-shift/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/strict-does-not-equals/bigint-and-bigint.js:
|
||
* test262/test/language/expressions/strict-does-not-equals/bigint-and-boolean.js:
|
||
* test262/test/language/expressions/strict-does-not-equals/bigint-and-incomparable-primitive.js:
|
||
* test262/test/language/expressions/strict-does-not-equals/bigint-and-non-finite.js:
|
||
* test262/test/language/expressions/strict-does-not-equals/bigint-and-number-extremes.js:
|
||
* test262/test/language/expressions/strict-does-not-equals/bigint-and-number.js:
|
||
* test262/test/language/expressions/strict-does-not-equals/bigint-and-object.js:
|
||
(assert.sameValue.0n.valueOf):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.0n.toString):
|
||
(assert.sameValue.toString):
|
||
(assert.sameValue.900719925474099101n.valueOf):
|
||
(assert.sameValue.900719925474099101n.toString):
|
||
* test262/test/language/expressions/strict-does-not-equals/bigint-and-string.js:
|
||
* test262/test/language/expressions/strict-equals/bigint-and-bigint.js:
|
||
* test262/test/language/expressions/strict-equals/bigint-and-boolean.js:
|
||
* test262/test/language/expressions/strict-equals/bigint-and-incomparable-primitive.js:
|
||
* test262/test/language/expressions/strict-equals/bigint-and-non-finite.js:
|
||
* test262/test/language/expressions/strict-equals/bigint-and-number-extremes.js:
|
||
* test262/test/language/expressions/strict-equals/bigint-and-number.js:
|
||
* test262/test/language/expressions/strict-equals/bigint-and-object.js:
|
||
(assert.sameValue.0n.valueOf):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.0n.toString):
|
||
(assert.sameValue.toString):
|
||
(assert.sameValue.900719925474099101n.valueOf):
|
||
(assert.sameValue.900719925474099101n.toString):
|
||
* test262/test/language/expressions/strict-equals/bigint-and-string.js:
|
||
* test262/test/language/expressions/subtraction/bigint-and-number.js:
|
||
* test262/test/language/expressions/subtraction/bigint-arithmetic.js:
|
||
(testSub): Deleted.
|
||
* test262/test/language/expressions/subtraction/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/subtraction/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/subtraction/bigint-wrapped-values.js:
|
||
* test262/test/language/expressions/unary-minus/bigint-non-primitive.js:
|
||
(assert.sameValue.Symbol.toPrimitive):
|
||
(assert.sameValue.valueOf):
|
||
(assert.sameValue.toString):
|
||
* test262/test/language/expressions/unary-plus/bigint-throws.js:
|
||
* test262/test/language/expressions/unsigned-right-shift/bigint-and-number.js:
|
||
* test262/test/language/expressions/unsigned-right-shift/bigint-errors.js:
|
||
(Symbol.toPrimitive):
|
||
(0n.Symbol.toPrimitive):
|
||
(valueOf):
|
||
(0n.valueOf):
|
||
(toString):
|
||
(0n.toString):
|
||
* test262/test/language/expressions/unsigned-right-shift/bigint-non-primitive.js:
|
||
(Symbol.toPrimitive):
|
||
(valueOf):
|
||
(toString):
|
||
(0b101n.Symbol.toPrimitive):
|
||
(0b101n.valueOf):
|
||
(0b101n.toString):
|
||
(valueOf.valueOf):
|
||
* test262/test/language/expressions/unsigned-right-shift/bigint-toprimitive.js:
|
||
* test262/test/language/expressions/unsigned-right-shift/bigint-wrapped-values.js:
|
||
* test262/test/language/literals/numeric/numeric-followed-by-ident.js: Added.
|
||
* test262/test/language/literals/string/line-continuation-double.js: Added.
|
||
* test262/test/language/literals/string/line-continuation-single.js: Added.
|
||
* test262/test262-Revision.txt:
|
||
|
||
2018-05-25 Mark Lam <mark.lam@apple.com>
|
||
|
||
for-in loops should preserve and restore the TDZ stack for each of its internal loops.
|
||
https://bugs.webkit.org/show_bug.cgi?id=185995
|
||
<rdar://problem/40173142>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-185995.js: Added.
|
||
|
||
2018-05-23 Keith Miller <keith_miller@apple.com>
|
||
|
||
Define length on CoW array should properly convert to writable
|
||
https://bugs.webkit.org/show_bug.cgi?id=185927
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/cow-define-length-as-value.js: Added.
|
||
(test):
|
||
|
||
2018-05-23 Michael Saboff <msaboff@apple.com>
|
||
|
||
Date.parse() doesn't properly handle input outside of ES Spec limits
|
||
https://bugs.webkit.org/show_bug.cgi?id=185868
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
New test.
|
||
|
||
* stress/date-parse-ranges.js: Added.
|
||
(shouldBe):
|
||
(throw.new.Error):
|
||
(shouldBeNaN):
|
||
|
||
2018-05-23 Rick Waldron <waldron.rick@gmail.com>
|
||
|
||
Conversion misspelled "Convertion" in error message string
|
||
https://bugs.webkit.org/show_bug.cgi?id=185436
|
||
|
||
Reviewed by Saam Barati, Michael Saboff.
|
||
|
||
* bigIntTests.yaml:
|
||
|
||
2018-05-23 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, skip test if memoryLimited is specified
|
||
https://bugs.webkit.org/show_bug.cgi?id=185888
|
||
|
||
* stress/regress-185888.js:
|
||
|
||
2018-05-22 Mark Lam <mark.lam@apple.com>
|
||
|
||
BytecodeGeneratorification shouldn't add a ValueProfile if the JIT is disabled.
|
||
https://bugs.webkit.org/show_bug.cgi?id=185896
|
||
<rdar://problem/40471403>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-185896.js: Added.
|
||
|
||
2018-05-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Fix CachedCall's argument count if RegExp has named captures
|
||
https://bugs.webkit.org/show_bug.cgi?id=185587
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* test262/expectations.yaml:
|
||
|
||
2018-05-22 Mark Lam <mark.lam@apple.com>
|
||
|
||
StringImpl utf8 conversion should not fail silently.
|
||
https://bugs.webkit.org/show_bug.cgi?id=185888
|
||
<rdar://problem/40464506>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-185888.js: Added.
|
||
|
||
2018-05-22 Keith Miller <keith_miller@apple.com>
|
||
|
||
We should have a CoW storage for NewArrayBuffer arrays.
|
||
https://bugs.webkit.org/show_bug.cgi?id=185003
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/cow-convert-contiguous-to-array-storage.js: Added.
|
||
(createBuffer):
|
||
(shouldBe):
|
||
(test):
|
||
* stress/cow-convert-double-to-array-storage.js: Added.
|
||
(createBuffer):
|
||
(shouldBe):
|
||
(test):
|
||
* stress/cow-convert-double-to-contiguous.js: Added.
|
||
(createBuffer):
|
||
(shouldBe):
|
||
(test):
|
||
* stress/cow-convert-int32-to-array-storage.js: Added.
|
||
(createBuffer):
|
||
(shouldBe):
|
||
(test):
|
||
* stress/cow-convert-int32-to-contiguous.js: Added.
|
||
(createBuffer):
|
||
(shouldBe):
|
||
(test):
|
||
* stress/cow-convert-int32-to-double.js: Added.
|
||
(createBuffer):
|
||
(shouldBe):
|
||
(test):
|
||
* stress/put-on-cow-prototype.js: Added.
|
||
(putByVal):
|
||
(putById):
|
||
|
||
2018-05-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, reland InById cache
|
||
https://bugs.webkit.org/show_bug.cgi?id=185682
|
||
|
||
* stress/in-by-id-accessors.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(protoGetter.__proto__.get hello):
|
||
(protoSetter.__proto__.set hello):
|
||
(i.shouldBe.test.get hello):
|
||
(i.shouldBe.test.set hello):
|
||
* stress/in-by-id-ai.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/in-by-id-custom-accessors.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
* stress/in-by-id-custom-values.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/in-by-id-operation.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(selfCache):
|
||
* stress/in-by-id-proxy.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(handler.has):
|
||
|
||
2018-05-21 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r231998 and r232017.
|
||
https://bugs.webkit.org/show_bug.cgi?id=185842
|
||
|
||
causes crashes on 32 JSC bot (Requested by realdawei on
|
||
#webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"[JSC] JSC should have consistent InById IC"
|
||
https://bugs.webkit.org/show_bug.cgi?id=185682
|
||
https://trac.webkit.org/changeset/231998
|
||
|
||
"Unreviewed, fix 32bit and scope release"
|
||
https://bugs.webkit.org/show_bug.cgi?id=185682
|
||
https://trac.webkit.org/changeset/232017
|
||
|
||
2018-05-19 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] JSC should have consistent InById IC
|
||
https://bugs.webkit.org/show_bug.cgi?id=185682
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/in-by-id-accessors.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(protoGetter.__proto__.get hello):
|
||
(protoSetter.__proto__.set hello):
|
||
(i.shouldBe.test.get hello):
|
||
(i.shouldBe.test.set hello):
|
||
* stress/in-by-id-ai.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/in-by-id-custom-accessors.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
* stress/in-by-id-custom-values.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/in-by-id-operation.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(selfCache):
|
||
* stress/in-by-id-proxy.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(handler.has):
|
||
|
||
2018-05-18 Keith Miller <keith_miller@apple.com>
|
||
|
||
op_in should mark if it sees out of bounds accesses
|
||
https://bugs.webkit.org/show_bug.cgi?id=185792
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/has-indexed-property-array-storage-ftl.js:
|
||
(test2):
|
||
* stress/has-indexed-property-slow-put-array-storage-ftl.js:
|
||
(test2):
|
||
|
||
2018-05-18 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add missing exception check.
|
||
https://bugs.webkit.org/show_bug.cgi?id=185786
|
||
<rdar://problem/35686560>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/regress-185786.js: Added.
|
||
|
||
2018-05-16 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
JSC should have InstanceOf inline caching
|
||
https://bugs.webkit.org/show_bug.cgi?id=185652
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/instanceof-always-hit-one.js: Added.
|
||
* microbenchmarks/instanceof-always-hit-two.js: Added.
|
||
* microbenchmarks/instanceof-dynamic.js: Added.
|
||
* microbenchmarks/instanceof-sometimes-hit.js: Added.
|
||
* stress/instanceof-dynamic-proxy-check-structure.js: Added.
|
||
* stress/instanceof-dynamic-proxy-loop.js: Added.
|
||
* stress/instanceof-dynamic-proxy.js: Added.
|
||
* stress/instanceof-hit-one-object-then-another.js: Added.
|
||
* stress/instanceof-hit-two-objects-then-another.js: Added.
|
||
* stress/instanceof-prototype-change.js: Added.
|
||
* stress/instanceof-prototype-change-to-hit.js: Added.
|
||
* stress/instanceof-prototype-change-to-null.js: Added.
|
||
* stress/instanceof-prototype-change-watchpointable.js: Added.
|
||
|
||
2018-05-17 Michael Saboff <msaboff@apple.com>
|
||
|
||
We don't throw SyntaxErrors for runtime generated regular expressions with errors
|
||
https://bugs.webkit.org/show_bug.cgi?id=185755
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
New regression test.
|
||
|
||
* stress/regexp-with-runtime-syntax-errors.js: Added.
|
||
(testThrowsSyntaxtError):
|
||
(fromExecWithBadUnicodeEscape):
|
||
(fromTestWithBadUnicodeProperty):
|
||
(fromSplitWithBadUnicodeIdentity):
|
||
(fromMatchWithBadUnicodeBackReference):
|
||
(fromReplaceWithBadUnicodeEscape):
|
||
(fromSearchWithBadUnicodeEscape):
|
||
|
||
2018-05-16 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "/" operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=183996
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-div-jit.js: Added.
|
||
* stress/big-int-div-memory-stress.js: Added.
|
||
* stress/big-int-div-to-primitive-precedence.js: Added.
|
||
* stress/big-int-div-to-primitive.js: Added.
|
||
* stress/big-int-div-type-error.js: Added.
|
||
* stress/big-int-div-wrapped-value.js: Added.
|
||
* stress/big-int-division.js: Added.
|
||
|
||
2018-05-16 Saam Barati <sbarati@apple.com>
|
||
|
||
Constant fold CheckTypeInfoFlags on ImplementsDefaultHasInstance
|
||
https://bugs.webkit.org/show_bug.cgi?id=185670
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* microbenchmarks/constant-fold-check-type-info-flags.js: Added.
|
||
* stress/dont-constant-fold-check-type-info-on-bound-function.js: Added.
|
||
|
||
2018-05-16 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r231845.
|
||
https://bugs.webkit.org/show_bug.cgi?id=185702
|
||
|
||
it is breaking Apple High Sierra 32-bit JSC bot (Requested by
|
||
caiolima on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"[ESNext][BigInt] Implement support for "/" operation"
|
||
https://bugs.webkit.org/show_bug.cgi?id=183996
|
||
https://trac.webkit.org/changeset/231845
|
||
|
||
2018-05-16 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DFG models InstanceOf incorrectly
|
||
https://bugs.webkit.org/show_bug.cgi?id=185694
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/instanceof-proxy-check-structure.js: Added.
|
||
(Foo):
|
||
(Bar):
|
||
(doBadThings):
|
||
(getPrototypeOf):
|
||
(foo):
|
||
(i.new.Bar):
|
||
(new.Bar):
|
||
* stress/instanceof-proxy-loop.js: Added.
|
||
(Foo):
|
||
(Bar):
|
||
(doBadThings):
|
||
(getPrototypeOf):
|
||
(foo):
|
||
* stress/instanceof-proxy.js: Added.
|
||
(Foo):
|
||
(Bar):
|
||
(doBadThings):
|
||
(getPrototypeOf):
|
||
(foo):
|
||
|
||
2018-05-16 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "/" operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=183996
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-div-jit.js: Added.
|
||
* stress/big-int-div-memory-stress.js: Added.
|
||
* stress/big-int-div-to-primitive-precedence.js: Added.
|
||
* stress/big-int-div-to-primitive.js: Added.
|
||
* stress/big-int-div-type-error.js: Added.
|
||
* stress/big-int-div-wrapped-value.js: Added.
|
||
* stress/big-int-division.js: Added.
|
||
|
||
2018-05-14 Leo Balter <leonardo.balter@gmail.com>
|
||
|
||
Fix a legacy CRLF eol from Test262
|
||
https://bugs.webkit.org/show_bug.cgi?id=185565
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* test262/config.yaml:
|
||
* test262/test/built-ins/Math/cbrt/prop-desc.js:
|
||
|
||
2018-05-14 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] timeClip(-0) should produce +0
|
||
https://bugs.webkit.org/show_bug.cgi?id=185589
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Fix several test262 failures.
|
||
|
||
* stress/date-negative-zero.js: Added.
|
||
(shouldBe):
|
||
* test262/expectations.yaml:
|
||
|
||
2018-05-13 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[BigInt] stress/big-int-spec-to-primitive.js test is failing
|
||
https://bugs.webkit.org/show_bug.cgi?id=185582
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
This patch is removing the use of ```numberOfDFGCompiles``` from
|
||
stress/big-int-spec-to-primitive.js because it makes this est fail
|
||
sometimes.
|
||
|
||
* stress/big-int-spec-to-primitive.js:
|
||
|
||
2018-05-13 Andy VanWagoner <andy@vanwagoner.family>
|
||
|
||
[INTL] Improve spec & test262 compliance for Intl APIs
|
||
https://bugs.webkit.org/show_bug.cgi?id=185578
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
Remove intl402 failures that have been fixed.
|
||
|
||
* test262/expectations.yaml:
|
||
* stress/regress-178385.js: toStringTag is configurable, but not writable.
|
||
|
||
2018-05-11 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "*" operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=183721
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-mul-jit.js: Added.
|
||
* stress/big-int-mul-to-primitive-precedence.js: Added.
|
||
* stress/big-int-mul-to-primitive.js: Added.
|
||
* stress/big-int-mul-type-error.js: Added.
|
||
* stress/big-int-mul-wrapped-value.js: Added.
|
||
* stress/big-int-multiplication.js: Added.
|
||
* stress/big-int-multiply-memory-stress.js: Added.
|
||
|
||
2018-05-11 Michael Saboff <msaboff@apple.com>
|
||
|
||
[DFG] Compiler uses incorrect output register for NumberIsInteger operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=185328
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
New regression test.
|
||
|
||
* stress/isInteger-doesnt-overwrite-argument.js: Added.
|
||
(testIsInteger):
|
||
|
||
2018-05-09 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Object.assign for final objects should be faster
|
||
https://bugs.webkit.org/show_bug.cgi?id=185348
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/object-assign-fast-path.js: Added.
|
||
(shouldBe):
|
||
(checkProperty):
|
||
|
||
2018-05-10 Leo Balter <leonardo.balter@gmail.com>
|
||
|
||
Update Test262 tests through the new import script - 20180509
|
||
https://bugs.webkit.org/show_bug.cgi?id=185482
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
Also update the test262/expecatations.yaml with the recent imported files.
|
||
|
||
* test262/expectations.yaml:
|
||
* test262/harness/compareIterator.js: Added.
|
||
(assert.compareIterator):
|
||
* test262/harness/nativeFunctionMatcher.js:
|
||
(const.assertToStringOrNativeFunction):
|
||
(const.assertNativeFunction):
|
||
* test262/harness/regExpUtils.js:
|
||
* test262/harness/testIntl.js:
|
||
(getInvalidLanguageTags):
|
||
* test262/harness/testTypedArray.js:
|
||
* test262/harness/wellKnownIntrinsicObjects.js: Added.
|
||
(WellKnownIntrinsicObjects.forEach.wkio.catch):
|
||
* test262/latest-changes-summary.txt: Added.
|
||
* 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.
|
||
(catch):
|
||
* 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.
|
||
(catch):
|
||
* 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.
|
||
(catch):
|
||
* test262/test/annexB/language/function-code/block-decl-nested-blocks-with-fun-decl.js: Added.
|
||
(g.f):
|
||
(g):
|
||
* test262/test/annexB/language/function-code/block-decl-nostrict.js: Copied from JSTests/test262/test/language/function-code/block-decl-strict.js.
|
||
(catch):
|
||
(f):
|
||
* test262/test/annexB/language/function-code/switch-case-decl-nostrict.js: Copied from JSTests/test262/test/language/function-code/switch-case-decl-strict.js.
|
||
(catch):
|
||
(switch.case.1):
|
||
(switch):
|
||
* test262/test/annexB/language/function-code/switch-dflt-decl-nostrict.js: Copied from JSTests/test262/test/language/function-code/switch-dflt-decl-strict.js.
|
||
(catch):
|
||
(switch.default):
|
||
(switch):
|
||
* test262/test/built-ins/Array/prototype/filter/target-array-with-non-writable-property.js: Added.
|
||
(a.Symbol.species):
|
||
(r.a.filter):
|
||
* test262/test/built-ins/Array/prototype/indexOf/calls-only-has-on-prototype-after-length-zeroed.js: Added.
|
||
(allowProxyTraps.has):
|
||
(fromIndex.valueOf):
|
||
* test262/test/built-ins/Array/prototype/lastIndexOf/calls-only-has-on-prototype-after-length-zeroed.js: Added.
|
||
(allowProxyTraps.has):
|
||
(fromIndex.valueOf):
|
||
* test262/test/built-ins/Array/prototype/map/target-array-with-non-writable-property.js: Added.
|
||
(a.Symbol.species):
|
||
(r.a.map):
|
||
* test262/test/built-ins/Array/prototype/slice/target-array-with-non-writable-property.js: Added.
|
||
(a.Symbol.species):
|
||
* test262/test/built-ins/Array/prototype/splice/property-traps-order-with-species.js: Added.
|
||
(a.Symbol.species):
|
||
* test262/test/built-ins/Array/prototype/splice/target-array-with-non-writable-property.js: Added.
|
||
(a.Symbol.species):
|
||
* test262/test/built-ins/Atomics/Symbol.toStringTag.js:
|
||
* test262/test/built-ins/Atomics/add/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/add/good-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/add/non-views.js:
|
||
* test262/test/built-ins/Atomics/add/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/add/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/and/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/and/good-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/and/non-views.js:
|
||
* test262/test/built-ins/Atomics/and/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/and/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/compareExchange/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/compareExchange/good-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
(view): Deleted.
|
||
* test262/test/built-ins/Atomics/compareExchange/non-views.js:
|
||
* test262/test/built-ins/Atomics/compareExchange/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/compareExchange/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/exchange/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/exchange/good-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/exchange/non-views.js:
|
||
* test262/test/built-ins/Atomics/exchange/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/exchange/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/isLockFree/corner-cases.js:
|
||
(hide):
|
||
* test262/test/built-ins/Atomics/isLockFree/value.js:
|
||
(testIsLockFree): Deleted.
|
||
* test262/test/built-ins/Atomics/load/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/load/good-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/load/non-views.js:
|
||
* test262/test/built-ins/Atomics/load/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/load/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/or/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/or/good-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/or/non-views.js:
|
||
* test262/test/built-ins/Atomics/or/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/or/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/prop-desc.js:
|
||
* test262/test/built-ins/Atomics/proto.js:
|
||
* test262/test/built-ins/Atomics/store/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/store/good-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
(ToInteger):
|
||
* test262/test/built-ins/Atomics/store/non-views.js:
|
||
* test262/test/built-ins/Atomics/store/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/store/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/sub/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/sub/good-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/sub/non-views.js:
|
||
* test262/test/built-ins/Atomics/sub/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/sub/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/wait/bad-range.js: Copied from JSTests/test262/test/built-ins/Atomics/wake/bad-range.js.
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/wait/cannot-suspend-throws.js:
|
||
* test262/test/built-ins/Atomics/wait/did-timeout.js:
|
||
(getReport):
|
||
* test262/test/built-ins/Atomics/wait/false-for-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/false-for-timeout.js.
|
||
(getReport):
|
||
(262.agent.start.valueOf.valueOf):
|
||
(toPrimitive.Symbol.toPrimitive):
|
||
(262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/false-for-timeout.js:
|
||
(valueOf.valueOf):
|
||
(toPrimitive.Symbol.toPrimitive):
|
||
(getReport): Deleted.
|
||
(262.agent.start.262.agent.receiveBroadcast): Deleted.
|
||
* test262/test/built-ins/Atomics/wait/good-views.js:
|
||
(r.getReport):
|
||
(getReport):
|
||
* test262/test/built-ins/Atomics/wait/nan-for-timeout.js:
|
||
(getReport):
|
||
* test262/test/built-ins/Atomics/wait/negative-index-throws.js:
|
||
* test262/test/built-ins/Atomics/wait/negative-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/negative-timeout.js.
|
||
(getReport):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/negative-timeout.js:
|
||
(262.agent.start.262.agent.receiveBroadcast): Deleted.
|
||
(getReport): Deleted.
|
||
* test262/test/built-ins/Atomics/wait/no-spurious-wakeup.js:
|
||
(getReport):
|
||
* test262/test/built-ins/Atomics/wait/non-int32-typedarray-throws.js:
|
||
* test262/test/built-ins/Atomics/wait/non-shared-bufferdata-throws.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/nonshared-bufferdata-throws.js.
|
||
* test262/test/built-ins/Atomics/wait/not-a-typedarray-throws.js:
|
||
* test262/test/built-ins/Atomics/wait/not-an-object-throws.js:
|
||
* test262/test/built-ins/Atomics/wait/null-bufferdata-throws.js:
|
||
* test262/test/built-ins/Atomics/wait/null-for-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/false-for-timeout.js.
|
||
(getReport):
|
||
(262.agent.start.valueOf.valueOf):
|
||
(toPrimitive.Symbol.toPrimitive):
|
||
(262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/null-for-timeout.js:
|
||
(valueOf.valueOf):
|
||
(toPrimitive.Symbol.toPrimitive):
|
||
(getReport): Deleted.
|
||
(262.agent.start.262.agent.receiveBroadcast): Deleted.
|
||
* test262/test/built-ins/Atomics/wait/object-for-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/false-for-timeout.js.
|
||
(getReport):
|
||
(262.agent.start.valueOf.valueOf):
|
||
(toString.toString):
|
||
(toPrimitive.Symbol.toPrimitive):
|
||
(262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/object-for-timeout.js:
|
||
(valueOf.valueOf):
|
||
(toString.toString):
|
||
(toPrimitive.Symbol.toPrimitive):
|
||
(getReport): Deleted.
|
||
(262.agent.start.262.agent.receiveBroadcast): Deleted.
|
||
* test262/test/built-ins/Atomics/wait/out-of-range-index-throws.js:
|
||
* test262/test/built-ins/Atomics/wait/poisoned-object-for-timeout-throws-agent.js: Added.
|
||
(getReport):
|
||
(262.agent.start.poisonedValueOf.valueOf):
|
||
(poisonedToPrimitive.Symbol.toPrimitive):
|
||
(262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/poisoned-object-for-timeout-throws.js:
|
||
(poisonedValueOf.valueOf):
|
||
(poisonedToPrimitive.Symbol.toPrimitive):
|
||
(getReport): Deleted.
|
||
(262.agent.start.262.agent.receiveBroadcast): Deleted.
|
||
* test262/test/built-ins/Atomics/wait/symbol-for-index-throws-agent.js: Added.
|
||
(getReport):
|
||
(262.agent.start.poisonedValueOf.valueOf):
|
||
(poisonedToPrimitive.Symbol.toPrimitive):
|
||
(262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/symbol-for-index-throws.js:
|
||
(poisonedToPrimitive.Symbol.toPrimitive):
|
||
(poisoned.valueOf): Deleted.
|
||
(poisonedWithString.get valueOf): Deleted.
|
||
(poisonedToPrimitive.get Symbol): Deleted.
|
||
* test262/test/built-ins/Atomics/wait/symbol-for-timeout-throws-agent.js: Added.
|
||
(getReport):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/symbol-for-timeout-throws.js:
|
||
(poisonedValueOf.valueOf):
|
||
(poisonedToPrimitive.Symbol.toPrimitive):
|
||
(getReport): Deleted.
|
||
(262.agent.start.262.agent.receiveBroadcast): Deleted.
|
||
* test262/test/built-ins/Atomics/wait/symbol-for-value-throws-agent.js: Added.
|
||
(getReport):
|
||
(262.agent.start.poisonedValueOf.valueOf):
|
||
(poisonedToPrimitive.Symbol.toPrimitive):
|
||
(262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/symbol-for-value-throws.js: Added.
|
||
(poisonedValueOf.valueOf):
|
||
(poisonedToPrimitive.Symbol.toPrimitive):
|
||
* test262/test/built-ins/Atomics/wait/true-for-timeout-agent.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/null-for-timeout.js.
|
||
(getReport):
|
||
(262.agent.start.valueOf.valueOf):
|
||
(toPrimitive.Symbol.toPrimitive):
|
||
(262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/true-for-timeout.js:
|
||
(valueOf.valueOf):
|
||
(toPrimitive.Symbol.toPrimitive):
|
||
(getReport): Deleted.
|
||
(262.agent.start.262.agent.receiveBroadcast): Deleted.
|
||
* test262/test/built-ins/Atomics/wait/undefined-for-timeout.js:
|
||
(getReport):
|
||
* test262/test/built-ins/Atomics/wait/undefined-index-defaults-to-zero.js:
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
(getReport):
|
||
* 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.
|
||
(getReport):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/wait-index-value-not-equal.js:
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/waiterlist-block-indexedposition-wake.js: Added.
|
||
(getReport):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/waiterlist-order-of-operations-is-fifo.js: Added.
|
||
(getReport):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/was-woken-before-timeout.js:
|
||
(getReport):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wait/was-woken.js:
|
||
(getReport):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wake/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/wake/count-boundary-cases.js: Renamed from JSTests/test262/test/built-ins/Atomics/wake/counts.js.
|
||
* test262/test/built-ins/Atomics/wake/count-defaults-to-infinity-missing.js: Added.
|
||
(getReport):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wake/count-defaults-to-infinity-undefined.js: Added.
|
||
(getReport):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wake/count-from-nans.js: Added.
|
||
* test262/test/built-ins/Atomics/wake/count-symbol-throws.js: Added.
|
||
* test262/test/built-ins/Atomics/wake/count-tointeger-throws-then-wake-throws.js: Added.
|
||
(poisoned.valueOf):
|
||
* test262/test/built-ins/Atomics/wake/good-views.js:
|
||
* test262/test/built-ins/Atomics/wake/negative-count.js: Renamed from JSTests/test262/test/built-ins/Atomics/wake/wake-negative.js.
|
||
* test262/test/built-ins/Atomics/wake/negative-index-throws.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/negative-index-throws.js.
|
||
(poisoned.valueOf):
|
||
* 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.
|
||
(poisoned.valueOf):
|
||
* test262/test/built-ins/Atomics/wake/non-shared-bufferdata-throws.js: Renamed from JSTests/test262/test/built-ins/Atomics/wait/nonshared-bufferdata-throws.js.
|
||
(poisoned.valueOf):
|
||
* test262/test/built-ins/Atomics/wake/non-views.js:
|
||
* test262/test/built-ins/Atomics/wake/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* 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.
|
||
(poisoned.valueOf):
|
||
* test262/test/built-ins/Atomics/wake/not-an-object-throws.js: Added.
|
||
(poisoned.valueOf):
|
||
* test262/test/built-ins/Atomics/wake/null-bufferdata-throws.js: Copied from JSTests/test262/test/built-ins/Atomics/wait/null-bufferdata-throws.js.
|
||
(poisoned.valueOf):
|
||
* 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.
|
||
(poisoned.valueOf):
|
||
* test262/test/built-ins/Atomics/wake/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/wake/symbol-for-index-throws.js: Added.
|
||
(poisonedValueOf.valueOf):
|
||
(poisonedToPrimitive.Symbol.toPrimitive):
|
||
* 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.
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
(getReport):
|
||
* test262/test/built-ins/Atomics/wake/wake-all-on-loc.js:
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
(getReport):
|
||
(waitUntil):
|
||
* test262/test/built-ins/Atomics/wake/wake-all.js:
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
(getReport):
|
||
(waitUntil):
|
||
* test262/test/built-ins/Atomics/wake/wake-in-order.js:
|
||
(getReport):
|
||
(waitUntil):
|
||
* test262/test/built-ins/Atomics/wake/wake-nan.js:
|
||
(getReport):
|
||
* test262/test/built-ins/Atomics/wake/wake-one.js:
|
||
(getReport):
|
||
(waitUntil):
|
||
* test262/test/built-ins/Atomics/wake/wake-rewake-noop.js: Added.
|
||
(getReport):
|
||
(waitUntil):
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
* test262/test/built-ins/Atomics/wake/wake-two.js:
|
||
(getReport):
|
||
* test262/test/built-ins/Atomics/wake/wake-with-no-agents-waiting.js: Added.
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
(waitUntil):
|
||
* test262/test/built-ins/Atomics/wake/wake-with-no-matching-agents-waiting.js: Added.
|
||
(262.agent.start.262.agent.receiveBroadcast):
|
||
(waitUntil):
|
||
* test262/test/built-ins/Atomics/wake/wake-zero.js:
|
||
(i.262.agent.start.262.agent.receiveBroadcast):
|
||
(getReport):
|
||
(waitUntil):
|
||
* test262/test/built-ins/Atomics/xor/bad-range.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/xor/good-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/xor/non-views.js:
|
||
* test262/test/built-ins/Atomics/xor/nonshared-int-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/Atomics/xor/shared-nonint-views.js:
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/built-ins/BigInt/asIntN/bigint-tobigint-errors.js:
|
||
* test262/test/built-ins/BigInt/asIntN/bigint-tobigint-toprimitive.js:
|
||
* test262/test/built-ins/BigInt/asIntN/bigint-tobigint-wrapped-values.js:
|
||
* test262/test/built-ins/BigInt/asIntN/bits-toindex-errors.js:
|
||
* test262/test/built-ins/BigInt/asIntN/bits-toindex-toprimitive.js:
|
||
* test262/test/built-ins/BigInt/asIntN/bits-toindex-wrapped-values.js:
|
||
* test262/test/built-ins/BigInt/asUintN/bigint-tobigint-errors.js:
|
||
* test262/test/built-ins/BigInt/asUintN/bigint-tobigint-toprimitive.js:
|
||
* test262/test/built-ins/BigInt/asUintN/bigint-tobigint-wrapped-values.js:
|
||
* test262/test/built-ins/BigInt/asUintN/bits-toindex-errors.js:
|
||
* test262/test/built-ins/BigInt/asUintN/bits-toindex-toprimitive.js:
|
||
* test262/test/built-ins/BigInt/asUintN/bits-toindex-wrapped-values.js:
|
||
* test262/test/built-ins/BigInt/constructor-empty-string.js:
|
||
* test262/test/built-ins/BigInt/constructor-from-binary-string.js:
|
||
* test262/test/built-ins/BigInt/constructor-from-decimal-string.js:
|
||
* test262/test/built-ins/BigInt/constructor-from-hex-string.js:
|
||
* test262/test/built-ins/BigInt/constructor-from-octal-string.js:
|
||
* test262/test/built-ins/BigInt/constructor-from-string-syntax-errors.js:
|
||
* test262/test/built-ins/BigInt/constructor-integer.js: Added.
|
||
* test262/test/built-ins/BigInt/constructor-trailing-leading-spaces.js:
|
||
* test262/test/built-ins/BigInt/issafeinteger-true.js: Removed.
|
||
* test262/test/built-ins/BigInt/out-of-bounds-integer-rangeerror.js: Removed.
|
||
* test262/test/built-ins/BigInt/prototype/Symbol.toStringTag.js:
|
||
* test262/test/built-ins/BigInt/prototype/toString/default-radix.js: Added.
|
||
* test262/test/built-ins/BigInt/prototype/toString/thisbigintvalue-not-valid-throws.js:
|
||
* test262/test/built-ins/BigInt/prototype/valueOf/cross-realm.js: Added.
|
||
* test262/test/built-ins/BigInt/tostring-throws.js: Copied from JSTests/test262/test/built-ins/BigInt/value-of-throws.js.
|
||
* test262/test/built-ins/BigInt/valueof-throws.js: Renamed from JSTests/test262/test/built-ins/BigInt/value-of-throws.js.
|
||
(BigInt.valueOf):
|
||
* test262/test/built-ins/DataView/prototype/setBigInt64/set-values-return-undefined.js:
|
||
(values.forEach):
|
||
* test262/test/built-ins/Function/prototype/bind/length-exceeds-int32.js: Added.
|
||
(f):
|
||
* test262/test/built-ins/Function/prototype/toString/anonymous-intrinsics.js: Removed.
|
||
* test262/test/built-ins/Function/prototype/toString/bound-function.js:
|
||
(assertNativeFunction):
|
||
(let.f): Deleted.
|
||
* test262/test/built-ins/Function/prototype/toString/built-in-function-object.js: Added.
|
||
* test262/test/built-ins/Function/prototype/toString/intrinsics.js: Removed.
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-arrow-function.js: Added.
|
||
(assertNativeFunction.new.Proxy):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-async-function.js: Added.
|
||
(assertNativeFunction.new.Proxy.async):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-async-generator-function.js: Added.
|
||
(assertNativeFunction.new.Proxy.async):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-async-generator-method-definition.js: Added.
|
||
(assertNativeFunction.new.Proxy.async.method):
|
||
(apply):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-async-method-definition.js: Added.
|
||
(assertNativeFunction.new.Proxy.async.method):
|
||
(apply):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-bound-function.js: Added.
|
||
(assertNativeFunction.new.Proxy):
|
||
(bind):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-class.js: Added.
|
||
(assertNativeFunction):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-function-expression.js: Added.
|
||
(assertNativeFunction.new.Proxy):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-generator-function.js: Added.
|
||
(assertNativeFunction.new.Proxy):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-method-definition.js: Added.
|
||
(assertNativeFunction.new.Proxy.method):
|
||
(apply):
|
||
* test262/test/built-ins/Function/prototype/toString/proxy-non-callable-throws.js: Added.
|
||
* test262/test/built-ins/Function/prototype/toString/proxy.js: Removed.
|
||
* test262/test/built-ins/Function/prototype/toString/well-known-intrinsic-object-functions.js: Added.
|
||
(WellKnownIntrinsicObjects.forEach):
|
||
* test262/test/built-ins/JSON/prop-desc.js: Added.
|
||
* test262/test/built-ins/Math/acosh/nan-returns.js:
|
||
* test262/test/built-ins/Math/asinh/asinh-specialVals.js:
|
||
* test262/test/built-ins/Math/atanh/atanh-specialVals.js:
|
||
* test262/test/built-ins/Math/cbrt/cbrt-specialValues.js:
|
||
* test262/test/built-ins/Math/cbrt/prop-desc.js:
|
||
* test262/test/built-ins/Math/cosh/cosh-specialVals.js:
|
||
* test262/test/built-ins/Math/expm1/expm1-specialVals.js:
|
||
* test262/test/built-ins/Math/log10/Log10-specialVals.js:
|
||
* test262/test/built-ins/Math/log2/log2-basicTests.js:
|
||
* test262/test/built-ins/Math/prop-desc.js:
|
||
* test262/test/built-ins/Math/sign/sign-specialVals.js:
|
||
* test262/test/built-ins/Math/sinh/sinh-specialVals.js:
|
||
* test262/test/built-ins/Math/tanh/tanh-specialVals.js:
|
||
* test262/test/built-ins/Math/trunc/trunc-sampleTests.js:
|
||
* test262/test/built-ins/Math/trunc/trunc-specialVals.js:
|
||
* test262/test/built-ins/Object/assign/strings-and-symbol-order.js: Added.
|
||
* test262/test/built-ins/Object/keys/property-traps-order-with-proxied-array.js: Added.
|
||
(get t):
|
||
* test262/test/built-ins/Reflect/Reflect.js: Removed.
|
||
* test262/test/built-ins/Reflect/prop-desc.js: Added.
|
||
* test262/test/built-ins/Reflect/properties.js: Removed.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/internal-regexp-lastindex-not-zero.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/isregexp-internal-regexp-is-false.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/isregexp-internal-regexp-throws.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/isregexp-this-throws.js: Added.
|
||
(obj.get Symbol):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/length.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/name.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/prop-desc.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/regexpcreate-this-throws.js: Added.
|
||
(obj.toString):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-get-constructor-throws.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-get-species-throws.js: Added.
|
||
(regexp.get Symbol):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-is-not-object-throws.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-is-undefined.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-species-is-not-constructor.js: Added.
|
||
(callMatchAll):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-species-is-null-or-undefined.js: Added.
|
||
(TestWithConstructor):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor-species-throws.js: Added.
|
||
(regexp.Symbol.species):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-constructor.js: Added.
|
||
(regexp.Symbol.species):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-regexp-get-global-throws.js: Added.
|
||
(regexp.Symbol.species):
|
||
(get assert):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/species-regexp-get-unicode-throws.js: Added.
|
||
(regexp.Symbol.species):
|
||
(get assert):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/string-tostring-throws.js: Added.
|
||
(obj.valueOf):
|
||
(obj.toString):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/string-tostring.js: Added.
|
||
(obj.toString):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-get-flags-throws.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-get-flags.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-lastindex-cached.js: Added.
|
||
(regexp.lastIndex.valueOf):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-not-object-throws.js: Added.
|
||
(callMatchAll):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-tolength-lastindex-throws.js: Added.
|
||
(regexp.lastIndex.valueOf):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-tostring-flags-throws.js: Added.
|
||
(value.valueOf):
|
||
(value.toString):
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.matchAll/this-tostring-flags.js: Added.
|
||
(value.toString):
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/Symbol.toStringTag.js: Added.
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/ancestry.js: Added.
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-call-throws.js: Added.
|
||
(RegExp.prototype.exec):
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-get-throws.js: Added.
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-match-get-0-throws.js: Added.
|
||
(return.get string_appeared_here):
|
||
(RegExp.prototype.exec):
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-match-get-0-tostring-throws.js: Added.
|
||
(return.toString):
|
||
(RegExp.prototype.exec):
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-match-get-0-tostring.js: Added.
|
||
(execResult.get string_appeared_here):
|
||
(RegExp.prototype.exec):
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec-not-callable.js: Added.
|
||
(TestWithRegExpExec):
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/custom-regexpexec.js: Added.
|
||
(callNextWithExecReturnValue.RegExp.prototype.exec):
|
||
(callNextWithExecReturnValue):
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/length.js: Added.
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/name.js: Added.
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/next-iteration-global.js: Added.
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/next-iteration.js: Added.
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/next-missing-internal-slots.js: Added.
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/prop-desc.js: Added.
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/regexp-tolength-lastindex-throws.js: Added.
|
||
(RegExp.prototype.exec):
|
||
* test262/test/built-ins/RegExpStringIteratorPrototype/next/this-is-not-object-throws.js: Added.
|
||
(callNext):
|
||
* test262/test/built-ins/String/prototype/matchAll/length.js: Added.
|
||
* test262/test/built-ins/String/prototype/matchAll/name.js: Added.
|
||
* test262/test/built-ins/String/prototype/matchAll/prop-desc.js: Added.
|
||
* test262/test/built-ins/String/prototype/matchAll/regexp-get-matchAll-throws.js: Added.
|
||
* test262/test/built-ins/String/prototype/matchAll/regexp-is-null.js: Added.
|
||
* test262/test/built-ins/String/prototype/matchAll/regexp-is-undefined.js: Added.
|
||
* test262/test/built-ins/String/prototype/matchAll/regexp-matchAll-invocation.js: Added.
|
||
(obj.Symbol.matchAll):
|
||
* test262/test/built-ins/String/prototype/matchAll/regexp-matchAll-throws.js: Added.
|
||
(regexp.Symbol.matchAll):
|
||
* test262/test/built-ins/String/prototype/matchAll/regexp-prototype-get-matchAll-throws.js: Added.
|
||
* test262/test/built-ins/String/prototype/matchAll/regexp-prototype-has-no-matchAll.js: Added.
|
||
* test262/test/built-ins/String/prototype/matchAll/regexp-prototype-matchAll-invocation.js: Added.
|
||
(RegExp.prototype.Symbol.matchAll):
|
||
* test262/test/built-ins/String/prototype/matchAll/regexp-prototype-matchAll-throws.js: Added.
|
||
(RegExp.prototype.Symbol.matchAll):
|
||
* test262/test/built-ins/String/prototype/matchAll/this-val-non-obj-coercible.js: Added.
|
||
* test262/test/built-ins/Symbol/matchAll/cross-realm.js: Added.
|
||
* test262/test/built-ins/Symbol/matchAll/prop-desc.js: Added.
|
||
* test262/test/harness/testTypedArray.js:
|
||
* test262/test/intl402/Array/prototype/toLocaleString/calls-toLocaleString-number-elements.js: Added.
|
||
* test262/test/intl402/Intl/getCanonicalLocales/invalid-tags.js:
|
||
* test262/test/intl402/Locale/constructor-newtarget-undefined.js: Added.
|
||
* test262/test/intl402/Locale/constructor-options-calendar-invalid.js: Added.
|
||
(const.invalidCalendarOption.of.invalidCalendarOptions.new.Intl.Locale):
|
||
* test262/test/intl402/Locale/constructor-options-calendar-valid.js: Added.
|
||
* test262/test/intl402/Locale/constructor-options-language-invalid.js: Added.
|
||
(const.invalidLanguageOption.of.invalidLanguageOptions.new.Intl.Locale):
|
||
* test262/test/intl402/Locale/constructor-options-language-valid.js: Added.
|
||
(toString):
|
||
* test262/test/intl402/Locale/constructor-options-region-invalid.js: Added.
|
||
(const.invalidRegionOption.of.invalidRegionOptions.new.Intl.Locale):
|
||
* test262/test/intl402/Locale/constructor-options-region-valid.js: Added.
|
||
* test262/test/intl402/Locale/constructor-options-script-invalid.js: Added.
|
||
(const.invalidScriptOption.of.invalidScriptOptions.new.Intl.Locale):
|
||
* test262/test/intl402/Locale/constructor-options-script-valid.js: Added.
|
||
(toString):
|
||
* test262/test/intl402/Locale/function-prototype.js: Added.
|
||
* test262/test/intl402/Locale/instance-extensibility.js: Added.
|
||
* test262/test/intl402/Locale/instance.js: Added.
|
||
* test262/test/intl402/Locale/invalid-tag-throws-boolean.js: Added.
|
||
* test262/test/intl402/Locale/invalid-tag-throws-null.js: Added.
|
||
* test262/test/intl402/Locale/invalid-tag-throws-number.js: Added.
|
||
* test262/test/intl402/Locale/invalid-tag-throws-symbol.js: Added.
|
||
* test262/test/intl402/Locale/invalid-tag-throws-undefined.js: Added.
|
||
* test262/test/intl402/Locale/invalid-tag-throws.js: Added.
|
||
(const.invalidTag.of.getInvalidLanguageTags):
|
||
* test262/test/intl402/Locale/length.js: Added.
|
||
* test262/test/intl402/Locale/name.js: Added.
|
||
* test262/test/intl402/Locale/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/constructor.js: Added.
|
||
* test262/test/intl402/Locale/prototype/maximize/length.js: Added.
|
||
* test262/test/intl402/Locale/prototype/maximize/name.js: Added.
|
||
* test262/test/intl402/Locale/prototype/maximize/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/prop-desc.js: Added.
|
||
* test262/test/intl402/Locale/prototype/toStringTag.js: Added.
|
||
* test262/test/intl402/TypedArray/prototype/toLocaleString/calls-toLocaleString-number-elements.js: Added.
|
||
(testWithTypedArrayConstructors):
|
||
* test262/test/language/asi/S7.9_A11_T8.js:
|
||
(else.x.1): Deleted.
|
||
* test262/test/language/asi/S7.9_A4.js:
|
||
(catch):
|
||
* test262/test/language/asi/S7.9_A5.1_T1.js:
|
||
* test262/test/language/asi/S7.9_A5.3_T1.js:
|
||
* test262/test/language/block-scope/syntax/redeclaration/function-declaration-attempt-to-redeclare-with-var-declaration-nested-in-function.js: Added.
|
||
(g.f):
|
||
(g):
|
||
* test262/test/language/destructuring/binding/initialization-requires-object-coercible-null.js:
|
||
* test262/test/language/destructuring/binding/initialization-requires-object-coercible-undefined.js:
|
||
* test262/test/language/destructuring/binding/initialization-returns-normal-completion-for-empty-objects.js:
|
||
* test262/test/language/destructuring/binding/syntax/array-elements-with-initializer.js:
|
||
* test262/test/language/destructuring/binding/syntax/array-elements-with-object-patterns.js:
|
||
* test262/test/language/destructuring/binding/syntax/array-elements-without-initializer.js:
|
||
* test262/test/language/destructuring/binding/syntax/array-pattern-with-elisions.js:
|
||
* test262/test/language/destructuring/binding/syntax/array-pattern-with-no-elements.js:
|
||
* test262/test/language/destructuring/binding/syntax/array-rest-elements.js:
|
||
* test262/test/language/destructuring/binding/syntax/object-pattern-with-no-property-list.js:
|
||
* test262/test/language/destructuring/binding/syntax/property-list-bindings-elements.js:
|
||
* test262/test/language/destructuring/binding/syntax/property-list-followed-by-a-single-comma.js:
|
||
* test262/test/language/destructuring/binding/syntax/property-list-single-name-bindings.js:
|
||
* test262/test/language/destructuring/binding/syntax/property-list-with-property-list.js:
|
||
* test262/test/language/destructuring/binding/syntax/recursive-array-and-object-patterns.js:
|
||
* 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.
|
||
* 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.
|
||
(catch):
|
||
* test262/test/language/eval-code/direct/block-decl-onlystrict.js: Renamed from JSTests/test262/test/language/eval-code/direct/block-decl-strict-caller.js.
|
||
* 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.
|
||
* 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.
|
||
(catch):
|
||
* 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.
|
||
* 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.
|
||
* 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.
|
||
(catch):
|
||
* 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.
|
||
* test262/test/language/expressions/async-arrow-function/await-as-param-ident-nested-arrow-parameter-position.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/await-as-param-nested-arrow-body-position.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/await-as-param-nested-arrow-parameter-position.js: Added.
|
||
(async.a):
|
||
* test262/test/language/expressions/async-arrow-function/await-as-param-rest-nested-arrow-parameter-position.js: Added.
|
||
(async.a):
|
||
* test262/test/language/expressions/async-arrow-function/escaped-async-line-terminator.js: Added.
|
||
* test262/test/language/expressions/async-generator/generator-created-after-decl-inst.js: Added.
|
||
(g.async.a):
|
||
* test262/test/language/expressions/class/class-name-ident-await-escaped-module.js: Added.
|
||
(C):
|
||
* test262/test/language/expressions/class/class-name-ident-await-escaped.js: Added.
|
||
(C):
|
||
* test262/test/language/expressions/class/class-name-ident-await-module.js: Added.
|
||
(C):
|
||
* test262/test/language/expressions/class/class-name-ident-await.js: Added.
|
||
(C):
|
||
* test262/test/language/expressions/class/class-name-ident-let-escaped.js: Added.
|
||
(C):
|
||
* test262/test/language/expressions/class/class-name-ident-let.js: Added.
|
||
(C):
|
||
* test262/test/language/expressions/class/class-name-ident-static-escaped.js: Added.
|
||
(C):
|
||
* test262/test/language/expressions/class/class-name-ident-static.js: Added.
|
||
* test262/test/language/expressions/class/class-name-ident-yield-escaped.js: Added.
|
||
(C):
|
||
* test262/test/language/expressions/class/class-name-ident-yield.js: Added.
|
||
(C):
|
||
* test262/test/language/expressions/class/constructor-this-tdz-during-initializers.js: Added.
|
||
(Base):
|
||
(C):
|
||
* test262/test/language/expressions/class/fields-run-once-on-double-super.js: Added.
|
||
(Base):
|
||
(C):
|
||
* test262/test/language/expressions/generators/generator-created-after-decl-inst.js: Added.
|
||
(g):
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-incomparable-string.js: Added.
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-string.js: Added.
|
||
* test262/test/language/expressions/greater-than/bigint-and-boolean.js: Added.
|
||
* test262/test/language/expressions/greater-than/bigint-and-incomparable-string.js: Added.
|
||
* test262/test/language/expressions/greater-than/bigint-and-string.js: Added.
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-incomparable-string.js: Added.
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-string.js: Added.
|
||
* test262/test/language/expressions/less-than/bigint-and-boolean.js: Added.
|
||
* test262/test/language/expressions/less-than/bigint-and-incomparable-string.js: Added.
|
||
* test262/test/language/expressions/less-than/bigint-and-string.js: Added.
|
||
* test262/test/language/expressions/object/method-definition/generator-super-prop-param.js:
|
||
* test262/test/language/function-code/block-decl-onlystrict.js: Renamed from JSTests/test262/test/language/function-code/block-decl-strict.js.
|
||
* test262/test/language/function-code/switch-case-decl-onlystrict.js: Renamed from JSTests/test262/test/language/function-code/switch-case-decl-strict.js.
|
||
* test262/test/language/function-code/switch-dflt-decl-onlystrict.js: Renamed from JSTests/test262/test/language/function-code/switch-dflt-decl-strict.js.
|
||
* test262/test/language/line-terminators/S7.3_A2.3.js: Removed.
|
||
* test262/test/language/line-terminators/S7.3_A2.4.js: Removed.
|
||
* test262/test/language/literals/regexp/invalid-optional-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/invalid-optional-negative-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/invalid-range-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/invalid-range-negative-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/u-invalid-optional-lookahead.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/u-invalid-optional-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/u-invalid-optional-negative-lookahead.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/u-invalid-optional-negative-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/u-invalid-range-lookahead.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/u-invalid-range-lookbehind.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/u-invalid-range-negative-lookahead.js: Copied from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/regexp/u-invalid-range-negative-lookbehind.js: Renamed from JSTests/test262/test/language/literals/regexp/u-invalid-quantifiable-assertion.js.
|
||
* test262/test/language/literals/string/line-separator-eval.js: Added.
|
||
* test262/test/language/literals/string/line-separator.js: Added.
|
||
* test262/test/language/literals/string/paragraph-separator-eval.js: Added.
|
||
* test262/test/language/literals/string/paragraph-separator.js: Added.
|
||
* test262/test/language/module-code/early-strict-mode.js:
|
||
* test262/test/language/statements/async-generator/generator-created-after-decl-inst.js: Added.
|
||
(async.g):
|
||
* test262/test/language/statements/break/S12.8_A8_T1.js:
|
||
(catch):
|
||
* test262/test/language/statements/break/S12.8_A8_T2.js:
|
||
(catch):
|
||
* test262/test/language/statements/class/class-name-ident-await-escaped-module.js: Added.
|
||
(aw):
|
||
* test262/test/language/statements/class/class-name-ident-await-escaped.js: Added.
|
||
(aw):
|
||
* test262/test/language/statements/class/class-name-ident-await-module.js: Added.
|
||
(await):
|
||
* test262/test/language/statements/class/class-name-ident-await.js: Added.
|
||
(await):
|
||
* test262/test/language/statements/class/class-name-ident-let-escaped.js: Added.
|
||
(l):
|
||
* test262/test/language/statements/class/class-name-ident-let.js: Added.
|
||
(let):
|
||
* test262/test/language/statements/class/class-name-ident-static-escaped.js: Added.
|
||
(st):
|
||
* test262/test/language/statements/class/class-name-ident-static.js: Added.
|
||
* test262/test/language/statements/class/class-name-ident-yield-escaped.js: Added.
|
||
(yi):
|
||
* test262/test/language/statements/class/class-name-ident-yield.js: Added.
|
||
(yield):
|
||
* test262/test/language/statements/continue/S12.7_A8_T1.js:
|
||
(catch):
|
||
* test262/test/language/statements/continue/S12.7_A8_T2.js:
|
||
(catch):
|
||
* test262/test/language/statements/generators/generator-created-after-decl-inst.js: Added.
|
||
(g):
|
||
* test262/test/language/statements/try/early-catch-duplicates.js:
|
||
* test262/test/language/statements/try/early-catch-function.js: Added.
|
||
(f.catch.e):
|
||
(f):
|
||
* test262/test/language/statements/try/early-catch-lex.js:
|
||
* test262/test/language/statements/try/early-catch-var.js:
|
||
* test262/test262-Revision.txt:
|
||
|
||
2018-05-09 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "==" operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=184474
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/big-int-equals-basic.js: Added.
|
||
* stress/big-int-equals-to-primitive-precedence.js: Added.
|
||
* stress/big-int-equals-wrapped-value.js: Added.
|
||
|
||
2018-05-08 Valerie R Young <valerie@bocoup.com>
|
||
|
||
test262/Runner.pm: move input files to JSTests/test262
|
||
https://bugs.webkit.org/show_bug.cgi?id=185389
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* test262/config.yaml: Renamed from Tools/Scripts/test262/config.yaml.
|
||
* test262/expectations.yaml: Renamed from Tools/Scripts/test262/expectations.yaml.
|
||
|
||
2018-05-05 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DFG AI should have O(1) clobbering
|
||
https://bugs.webkit.org/show_bug.cgi?id=185287
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/simple-ai-effect.js: Added.
|
||
(bar):
|
||
(foo):
|
||
|
||
2018-05-04 Keith Miller <keith_miller@apple.com>
|
||
|
||
isCacheableArrayLength should return true for undecided arrays
|
||
https://bugs.webkit.org/show_bug.cgi?id=185309
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/get-array-length-undecided.js: Added.
|
||
(test):
|
||
|
||
2018-05-04 Dominik Infuehr <dinfuehr@igalia.com>
|
||
|
||
Disable tests on systems with limited memory
|
||
https://bugs.webkit.org/show_bug.cgi?id=185296
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Test doesn't work with a limited amount of memory. I tried to reduce memory usage
|
||
but then it was hard to reproduce the failure the test was originally made to test.
|
||
|
||
* stress/array-reverse-doesnt-clobber.js:
|
||
|
||
2018-05-03 Saam Barati <sbarati@apple.com>
|
||
|
||
Don't prevent CreateThis being folded to NewObject when the structure is poly proto
|
||
https://bugs.webkit.org/show_bug.cgi?id=185177
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/construct-poly-proto-object.js: Added.
|
||
(foo.A):
|
||
(foo):
|
||
* stress/allocation-sinking-new-object-with-poly-proto.js: Added.
|
||
(foo.A):
|
||
(foo):
|
||
(makePolyProto):
|
||
(bar):
|
||
(baz):
|
||
|
||
2018-05-03 Michael Saboff <msaboff@apple.com>
|
||
|
||
OSR entry pruning of Program Bytecodes doesn't take into account try/catch
|
||
https://bugs.webkit.org/show_bug.cgi?id=185281
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
New regression test.
|
||
|
||
* stress/baseline-osrentry-catch-is-reachable.js: Added.
|
||
(i.j.catch):
|
||
|
||
2018-05-03 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r231197.
|
||
|
||
The test added with this change crashes on the 32-bit JSC bot.
|
||
|
||
Reverted changeset:
|
||
|
||
"Correctly detect string overflow when using the 'Function'
|
||
constructor"
|
||
https://bugs.webkit.org/show_bug.cgi?id=184883
|
||
https://trac.webkit.org/changeset/231197
|
||
|
||
2018-05-02 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
JSC should know how to cache custom getter accesses on the prototype chain
|
||
https://bugs.webkit.org/show_bug.cgi?id=185213
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* microbenchmarks/get-custom-getter.js: Added.
|
||
(test):
|
||
|
||
2018-05-02 Robin Morisset <rmorisset@apple.com>
|
||
|
||
emitCodeToGetArgumentsArrayLength should not crash on PhantomNewArrayWithSpread
|
||
https://bugs.webkit.org/show_bug.cgi?id=183172
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/length-of-new-array-with-spread.js: Added.
|
||
(foo):
|
||
(bar):
|
||
(baz):
|
||
|
||
2018-05-01 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Add SameValue DFG node
|
||
https://bugs.webkit.org/show_bug.cgi?id=185065
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/object-is.js: Added.
|
||
(incognito):
|
||
(sameValue):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
(test6):
|
||
* stress/object-is.js: Added.
|
||
(shouldBe):
|
||
(is1):
|
||
(is2):
|
||
(is3):
|
||
(is4):
|
||
(is5):
|
||
(is6):
|
||
(is7):
|
||
(is8):
|
||
(is9):
|
||
(is10):
|
||
(is11):
|
||
(is12):
|
||
(is13):
|
||
(is14):
|
||
(is15):
|
||
|
||
2018-05-01 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Correctly detect string overflow when using the 'Function' constructor
|
||
https://bugs.webkit.org/show_bug.cgi?id=184883
|
||
<rdar://problem/36320331>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
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.
|
||
|
||
* slowMicrobenchmarks/function-constructor-with-huge-strings.js: Added.
|
||
(catch):
|
||
|
||
2018-05-01 Robin Morisset <rmorisset@apple.com>
|
||
|
||
IntlObject.cpp::removeUnicodeLocaleExtension() should not touch locales that end in '-u'
|
||
https://bugs.webkit.org/show_bug.cgi?id=185162
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/incomplete-unicode-locale.js: Added.
|
||
(catch):
|
||
|
||
2018-05-01 Dominik Infuehr <dinfuehr@igalia.com>
|
||
|
||
Add SetCallee as DFG-Operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=184582
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
Added test that runs into infinite loop without updating the callee and
|
||
therefore emitting SetCallee in DFG for recursive tail calls.
|
||
|
||
* stress/closure-recursive-tail-call-infinite-loop.js: Added.
|
||
(Foo):
|
||
(second):
|
||
(first):
|
||
(return.closure):
|
||
(createClosure):
|
||
|
||
2018-04-30 Saam Barati <sbarati@apple.com>
|
||
|
||
ToString constant folds without preserving checks, causing us to break assumptions that the code would OSR exit
|
||
https://bugs.webkit.org/show_bug.cgi?id=185149
|
||
<rdar://problem/39455917>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/keep-checks-when-converting-to-lazy-js-constant-in-strength-reduction.js: Added.
|
||
|
||
2018-04-29 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
LICM shouldn't hoist nodes if hoisted nodes exited in that code block
|
||
https://bugs.webkit.org/show_bug.cgi?id=185126
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
I found this bug by accident when I was writing this test for something else.
|
||
|
||
This change also speeds up other benchmarks of this case that we already had. They are all called
|
||
the licm-dragons tests.
|
||
|
||
* microbenchmarks/licm-dragons-two-structures.js: Added.
|
||
(foo):
|
||
|
||
2018-04-29 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r231137.
|
||
https://bugs.webkit.org/show_bug.cgi?id=185118
|
||
|
||
It is breaking Test262 language/expressions/multiplication
|
||
/order-of-evaluation.js (Requested by caiolima on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"[ESNext][BigInt] Implement support for "*" operation"
|
||
https://bugs.webkit.org/show_bug.cgi?id=183721
|
||
https://trac.webkit.org/changeset/231137
|
||
|
||
2018-04-28 Saam Barati <sbarati@apple.com>
|
||
|
||
We don't model regexp effects properly
|
||
https://bugs.webkit.org/show_bug.cgi?id=185059
|
||
<rdar://problem/39736150>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regexp-exec-test-effectful-last-index.js: Added.
|
||
(assert):
|
||
(foo):
|
||
(i.regexLastIndex.toString):
|
||
(bar):
|
||
|
||
2018-04-28 Rick Waldron <waldron.rick@gmail.com>
|
||
|
||
Token misspelled "tocken" in error message string
|
||
https://bugs.webkit.org/show_bug.cgi?id=185030
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* ChakraCore/test/Basics/IdsWithEscapes.baseline-jsc: Fix typo "tocken" => "token"
|
||
* stress/destructuring-assignment-syntax.js: Fix typo "tocken" => "token"
|
||
* stress/error-messages-for-in-operator-should-not-crash.js: Fix typo "tocken" => "token"
|
||
* stress/reserved-word-with-escape.js: Fix typo "tocken" => "token"
|
||
(testSyntaxError.String.raw.v):
|
||
(String.raw.SyntaxError.Cannot.use.the.keyword.string_appeared_here.as.a.name):
|
||
(testSyntaxError.String.raw.a):
|
||
|
||
2018-04-28 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "*" operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=183721
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-mul-jit.js: Added.
|
||
* stress/big-int-mul-to-primitive-precedence.js: Added.
|
||
* stress/big-int-mul-to-primitive.js: Added.
|
||
* stress/big-int-mul-type-error.js: Added.
|
||
* stress/big-int-mul-wrapped-value.js: Added.
|
||
* stress/big-int-multiplication.js: Added.
|
||
* stress/big-int-multiply-memory-stress.js: Added.
|
||
|
||
2018-04-28 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r231131.
|
||
https://bugs.webkit.org/show_bug.cgi?id=185112
|
||
|
||
It is breaking Debug build due to unchecked exception
|
||
(Requested by caiolima on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"[ESNext][BigInt] Implement support for "*" operation"
|
||
https://bugs.webkit.org/show_bug.cgi?id=183721
|
||
https://trac.webkit.org/changeset/231131
|
||
|
||
2018-04-27 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "*" operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=183721
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-mul-jit.js: Added.
|
||
* stress/big-int-mul-to-primitive-precedence.js: Added.
|
||
* stress/big-int-mul-to-primitive.js: Added.
|
||
* stress/big-int-mul-type-error.js: Added.
|
||
* stress/big-int-mul-wrapped-value.js: Added.
|
||
* stress/big-int-multiplication.js: Added.
|
||
* stress/big-int-multiply-memory-stress.js: Added.
|
||
|
||
2018-04-27 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r231086.
|
||
|
||
Caused JSC test failures due to an unchecked exception.
|
||
|
||
Reverted changeset:
|
||
|
||
"[ESNext][BigInt] Implement support for "*" operation"
|
||
https://bugs.webkit.org/show_bug.cgi?id=183721
|
||
https://trac.webkit.org/changeset/231086
|
||
|
||
2018-04-27 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed test gardening, update expectations for test262/intl402/PluralRules tests after r231047.
|
||
|
||
* test262.yaml: Mark tests as passing.
|
||
|
||
2018-04-26 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement support for "*" operation
|
||
https://bugs.webkit.org/show_bug.cgi?id=183721
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-mul-jit.js: Added.
|
||
* stress/big-int-mul-to-primitive-precedence.js: Added.
|
||
* stress/big-int-mul-to-primitive.js: Added.
|
||
* stress/big-int-mul-type-error.js: Added.
|
||
* stress/big-int-mul-wrapped-value.js: Added.
|
||
* stress/big-int-multiplication.js: Added.
|
||
* stress/big-int-multiply-memory-stress.js: Added.
|
||
|
||
2018-04-25 Robin Morisset <rmorisset@apple.com>
|
||
|
||
In FTLLowerDFGToB3.cpp::compileCreateRest, always use a contiguous array as the indexing type when under isWatchingHavingABadTimeWatchpoint
|
||
https://bugs.webkit.org/show_bug.cgi?id=184773
|
||
<rdar://problem/37773612>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
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
|
||
so I decided to add it to the stress tests nonetheless.
|
||
|
||
* stress/create-rest-while-having-a-bad-time.js: Added.
|
||
(f):
|
||
(g):
|
||
(h):
|
||
|
||
2018-04-25 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add missing scope release to functionProtoFuncToString
|
||
https://bugs.webkit.org/show_bug.cgi?id=184995
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/function-toString-arrow.js: Added.
|
||
(async):
|
||
|
||
2018-04-24 Keith Miller <keith_miller@apple.com>
|
||
|
||
fromCharCode is missing some exception checks
|
||
https://bugs.webkit.org/show_bug.cgi?id=184952
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/fromCharCode-exception-check.js: Added.
|
||
(get catch):
|
||
|
||
2018-04-24 Mark Lam <mark.lam@apple.com>
|
||
|
||
Gardening: test fix after r230863.
|
||
https://bugs.webkit.org/show_bug.cgi?id=184846
|
||
<rdar://problem/39390672>
|
||
|
||
Not reviewed.
|
||
|
||
* stress/json-stringified-overflow-2.js:
|
||
(catch):
|
||
* stress/json-stringified-overflow.js:
|
||
(catch):
|
||
|
||
2018-04-20 JF Bastien <jfbastien@apple.com>
|
||
|
||
Handle more JSON stringify OOM
|
||
https://bugs.webkit.org/show_bug.cgi?id=184846
|
||
<rdar://problem/39390672>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/json-stringified-overflow-2.js: Added. Same as the one
|
||
below, but with a bigger input which will trigger a different code
|
||
path.
|
||
(catch):
|
||
* stress/json-stringified-overflow.js: Modify the test to only
|
||
catch OOM on stringification. not on string creation.
|
||
|
||
2018-04-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[WebAssembly][Modules] Import tables in wasm modules
|
||
https://bugs.webkit.org/show_bug.cgi?id=184738
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports.js:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat:
|
||
* wasm/modules/wasm-imports-wasm-exports.js:
|
||
* wasm/modules/wasm-imports-wasm-exports/imports.wasm:
|
||
* wasm/modules/wasm-imports-wasm-exports/imports.wat:
|
||
* wasm/modules/wasm-imports-wasm-exports/sum.wasm:
|
||
* wasm/modules/wasm-imports-wasm-exports/sum.wat:
|
||
|
||
2018-04-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[WebAssembly][Modules] Import globals from wasm modules
|
||
https://bugs.webkit.org/show_bug.cgi?id=184736
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* wasm.yaml:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports.js:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm:
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat:
|
||
* wasm/modules/wasm-imports-wasm-exports.js:
|
||
* wasm/modules/wasm-imports-wasm-exports/imports.wasm:
|
||
* wasm/modules/wasm-imports-wasm-exports/imports.wat:
|
||
* wasm/modules/wasm-imports-wasm-exports/sum.wasm:
|
||
* wasm/modules/wasm-imports-wasm-exports/sum.wat:
|
||
|
||
2018-04-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, reland r230697, r230720, and r230724.
|
||
https://bugs.webkit.org/show_bug.cgi?id=184600
|
||
|
||
* wasm.yaml:
|
||
* wasm/modules/constant.wasm: Added.
|
||
* wasm/modules/constant.wat: Added.
|
||
* wasm/modules/default-import-star-error.js: Added.
|
||
(then):
|
||
* wasm/modules/default-import-star-error/entry.wasm: Added.
|
||
* wasm/modules/default-import-star-error/entry.wat: Added.
|
||
* wasm/modules/default-import-star-error/t0.js: Added.
|
||
* wasm/modules/default-import-star-error/t1.js: Added.
|
||
* wasm/modules/default-import-star-error/t2.js: Added.
|
||
(export.default.Cocoa):
|
||
* wasm/modules/js-wasm-cycle.js: Added.
|
||
* wasm/modules/js-wasm-cycle/entry.js: Added.
|
||
(from.string_appeared_here.export.return42):
|
||
* wasm/modules/js-wasm-cycle/sum.wasm: Added.
|
||
* wasm/modules/js-wasm-cycle/sum.wat: Added.
|
||
* wasm/modules/js-wasm-function-namespace.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-function.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-global-namespace.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-global.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-memory-namespace.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-memory.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-start.js: Added.
|
||
(then):
|
||
* wasm/modules/js-wasm-table-namespace.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-table.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/memory.wasm: Added.
|
||
* wasm/modules/memory.wat: Added.
|
||
* wasm/modules/run-from-wasm.wasm: Added.
|
||
* wasm/modules/run-from-wasm.wat: Added.
|
||
* wasm/modules/run-from-wasm/check.js: Added.
|
||
(export.check):
|
||
* wasm/modules/start.wasm: Added.
|
||
* wasm/modules/start.wat: Added.
|
||
* wasm/modules/sum.wasm: Added.
|
||
* wasm/modules/sum.wat: Added.
|
||
* wasm/modules/table.wasm: Added.
|
||
* wasm/modules/table.wat: Added.
|
||
* wasm/modules/wasm-imports-js-exports.js: Added.
|
||
* wasm/modules/wasm-imports-js-exports/imports.wasm: Added.
|
||
* wasm/modules/wasm-imports-js-exports/imports.wat: Added.
|
||
* wasm/modules/wasm-imports-js-exports/sum.js: Added.
|
||
(export.sum):
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports.js: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports.js: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports/imports.wasm: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports/imports.wat: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports/sum.wasm: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports/sum.wat: Added.
|
||
* wasm/modules/wasm-js-cycle.js: Added.
|
||
* wasm/modules/wasm-js-cycle/entry.wasm: Added.
|
||
* wasm/modules/wasm-js-cycle/entry.wat: Added.
|
||
* wasm/modules/wasm-js-cycle/sum.js: Added.
|
||
(from.string_appeared_here.export.sum):
|
||
* wasm/modules/wasm-wasm-cycle.js: Added.
|
||
* wasm/modules/wasm-wasm-cycle/entry.wasm: Added.
|
||
* wasm/modules/wasm-wasm-cycle/entry.wat: Added.
|
||
* wasm/modules/wasm-wasm-cycle/sum.wasm: Added.
|
||
* wasm/modules/wasm-wasm-cycle/sum.wat: Added.
|
||
|
||
2018-04-17 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r230697, r230720, and r230724.
|
||
https://bugs.webkit.org/show_bug.cgi?id=184717
|
||
|
||
These caused multiple failures on the Test262 testers.
|
||
(Requested by mlewis13 on #webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"[WebAssembly][Modules] Prototype wasm import"
|
||
https://bugs.webkit.org/show_bug.cgi?id=184600
|
||
https://trac.webkit.org/changeset/230697
|
||
|
||
"[WebAssembly][Modules] Implement function import from wasm
|
||
modules"
|
||
https://bugs.webkit.org/show_bug.cgi?id=184689
|
||
https://trac.webkit.org/changeset/230720
|
||
|
||
"[JSC] Rename runWebAssembly to runWebAssemblySuite"
|
||
https://bugs.webkit.org/show_bug.cgi?id=184703
|
||
https://trac.webkit.org/changeset/230724
|
||
|
||
2018-04-17 JF Bastien <jfbastien@apple.com>
|
||
|
||
A put is not an ExistingProperty put when we transition a structure because of an attributes change
|
||
https://bugs.webkit.org/show_bug.cgi?id=184706
|
||
<rdar://problem/38871451>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/put-by-id-direct-strict-transition.js: Added.
|
||
(const.foo):
|
||
(j.const.obj.set hello):
|
||
* stress/put-by-id-direct-transition.js: Added.
|
||
(const.foo):
|
||
(j.const.obj.set hello):
|
||
* stress/put-getter-setter-by-id-strict-transition.js: Added.
|
||
(const.foo):
|
||
(j.const.obj.set hello):
|
||
* stress/put-getter-setter-by-id-transition.js: Added.
|
||
(const.foo):
|
||
(j.const.obj.set hello):
|
||
|
||
2018-04-16 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
PutStackSinkingPhase should know that KillStack means ConflictingFlush
|
||
https://bugs.webkit.org/show_bug.cgi?id=184672
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/sink-put-stack-over-kill-stack.js: Added.
|
||
(avocado_1):
|
||
(apricot_0):
|
||
(__c_0):
|
||
(banana_2):
|
||
|
||
2018-04-17 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Rename runWebAssembly to runWebAssemblySuite
|
||
https://bugs.webkit.org/show_bug.cgi?id=184703
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
And add runWebAssembly as a command to simplely run wasm modules.
|
||
|
||
* wasm.yaml:
|
||
|
||
2018-04-17 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[WebAssembly][Modules] Implement function import from wasm modules
|
||
https://bugs.webkit.org/show_bug.cgi?id=184689
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* wasm.yaml:
|
||
* wasm/modules/js-wasm-cycle.js: Added.
|
||
* wasm/modules/js-wasm-cycle/entry.js: Added.
|
||
(from.string_appeared_here.export.return42):
|
||
* wasm/modules/js-wasm-cycle/sum.wasm: Added.
|
||
* wasm/modules/js-wasm-cycle/sum.wat: Added.
|
||
* wasm/modules/run-from-wasm.wasm: Added.
|
||
* wasm/modules/run-from-wasm.wat: Added.
|
||
* wasm/modules/run-from-wasm/check.js: Added.
|
||
(export.check):
|
||
* wasm/modules/wasm-imports-js-exports.js: Added.
|
||
* wasm/modules/wasm-imports-js-exports/imports.wasm: Added.
|
||
* wasm/modules/wasm-imports-js-exports/imports.wat: Added.
|
||
* wasm/modules/wasm-imports-js-exports/sum.js: Added.
|
||
(export.sum):
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports.js: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wasm: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/imports.wat: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/re-export.js: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wasm: Added.
|
||
* wasm/modules/wasm-imports-js-re-exports-wasm-exports/sum.wat: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports.js: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports/imports.wasm: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports/imports.wat: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports/sum.wasm: Added.
|
||
* wasm/modules/wasm-imports-wasm-exports/sum.wat: Added.
|
||
* wasm/modules/wasm-js-cycle.js: Added.
|
||
* wasm/modules/wasm-js-cycle/entry.wasm: Added.
|
||
* wasm/modules/wasm-js-cycle/entry.wat: Added.
|
||
* wasm/modules/wasm-js-cycle/sum.js: Added.
|
||
(from.string_appeared_here.export.sum):
|
||
* wasm/modules/wasm-wasm-cycle.js: Added.
|
||
* wasm/modules/wasm-wasm-cycle/entry.wasm: Added.
|
||
* wasm/modules/wasm-wasm-cycle/entry.wat: Added.
|
||
* wasm/modules/wasm-wasm-cycle/sum.wasm: Added.
|
||
* wasm/modules/wasm-wasm-cycle/sum.wat: Added.
|
||
|
||
2018-04-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[WebAssembly][Modules] Prototype wasm import
|
||
https://bugs.webkit.org/show_bug.cgi?id=184600
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
Add wasm and wat files since module loader want to load wasm files from FS.
|
||
Currently, importing the other modules from wasm is not supported.
|
||
|
||
* wasm.yaml:
|
||
* wasm/modules/constant.wasm: Added.
|
||
* wasm/modules/constant.wat: Added.
|
||
* wasm/modules/js-wasm-function-namespace.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-function.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-global-namespace.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-global.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-memory-namespace.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-memory.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-start.js: Added.
|
||
(then):
|
||
* wasm/modules/js-wasm-table-namespace.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/js-wasm-table.js: Added.
|
||
(assert.throws):
|
||
* wasm/modules/memory.wasm: Added.
|
||
* wasm/modules/memory.wat: Added.
|
||
* wasm/modules/start.wasm: Added.
|
||
* wasm/modules/start.wat: Added.
|
||
* wasm/modules/sum.wasm: Added.
|
||
* wasm/modules/sum.wat: Added.
|
||
* wasm/modules/table.wasm: Added.
|
||
* wasm/modules/table.wat: Added.
|
||
|
||
2018-04-14 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Function.prototype.caller shouldn't return generator bodies
|
||
https://bugs.webkit.org/show_bug.cgi?id=184630
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/function-caller-async-arrow-function-body.js: Added.
|
||
* stress/function-caller-async-function-body.js: Added.
|
||
* stress/function-caller-async-generator-body.js: Added.
|
||
* stress/function-caller-generator-body.js: Added.
|
||
* stress/function-caller-generator-method-body.js: Added.
|
||
|
||
2018-04-12 Tomas Popela <tpopela@redhat.com>
|
||
|
||
Unreviewed, skip JIT tests if it isn't enabled
|
||
|
||
See https://bugs.webkit.org/show_bug.cgi?id=182730.
|
||
|
||
* stress/big-int-spec-to-primitive.js:
|
||
* stress/big-int-spec-to-this.js:
|
||
|
||
2018-04-10 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Add support for BigInt in SpeculatedType
|
||
https://bugs.webkit.org/show_bug.cgi?id=182470
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/big-int-spec-to-primitive.js: Added.
|
||
* stress/big-int-spec-to-this.js: Added.
|
||
* stress/big-int-strict-equals-jit.js: Added.
|
||
* stress/big-int-strict-spec-to-this.js: Added.
|
||
* stress/big-int-type-of-proven-type.js: Added.
|
||
|
||
2018-04-10 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DFG AI and clobberize should agree with each other
|
||
https://bugs.webkit.org/show_bug.cgi?id=184440
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Add tests for all of the bugs I fixed.
|
||
|
||
* stress/direct-arguments-out-of-bounds-change-structure.js: Added.
|
||
(foo):
|
||
* stress/new-typed-array-cse-effects.js: Added.
|
||
(foo):
|
||
* stress/scoped-arguments-out-of-bounds-change-structure.js: Added.
|
||
(foo.theO):
|
||
(foo):
|
||
* stress/string-from-char-code-change-structure-not-dead.js: Added.
|
||
(foo):
|
||
(i.valueOf):
|
||
(weirdValue.valueOf):
|
||
* stress/string-from-char-code-change-structure.js: Added.
|
||
(foo):
|
||
(i.valueOf):
|
||
(weirdValue.valueOf):
|
||
|
||
2018-04-09 Leo Balter <leonardo.balter@gmail.com>
|
||
|
||
Fix errant Test262 files CRLF to LF for consistency with the original source
|
||
https://bugs.webkit.org/show_bug.cgi?id=184425
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* test262/test/built-ins/Math/acosh/nan-returns.js:
|
||
* test262/test/built-ins/Math/asinh/asinh-specialVals.js:
|
||
* test262/test/built-ins/Math/atanh/atanh-specialVals.js:
|
||
* test262/test/built-ins/Math/cbrt/cbrt-specialValues.js:
|
||
* test262/test/built-ins/Math/cbrt/prop-desc.js:
|
||
* test262/test/built-ins/Math/cosh/cosh-specialVals.js:
|
||
* test262/test/built-ins/Math/expm1/expm1-specialVals.js:
|
||
* test262/test/built-ins/Math/log10/Log10-specialVals.js:
|
||
* test262/test/built-ins/Math/log2/log2-basicTests.js:
|
||
* test262/test/built-ins/Math/sign/sign-specialVals.js:
|
||
* test262/test/built-ins/Math/sinh/sinh-specialVals.js:
|
||
* test262/test/built-ins/Math/tanh/tanh-specialVals.js:
|
||
* test262/test/built-ins/Math/trunc/trunc-sampleTests.js:
|
||
* test262/test/built-ins/Math/trunc/trunc-specialVals.js:
|
||
|
||
2018-04-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, remove incorrect entry in test262.yaml
|
||
https://bugs.webkit.org/show_bug.cgi?id=184266
|
||
|
||
* test262.yaml:
|
||
|
||
2018-04-08 Valerie Young <valerie@bocoup.com>
|
||
|
||
[JSC] Update Test262 to April 6 version
|
||
https://bugs.webkit.org/show_bug.cgi?id=184266
|
||
|
||
Rubber stamped by Yusuke Suzuki.
|
||
|
||
2018-04-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Introduce op_get_by_id_direct
|
||
https://bugs.webkit.org/show_bug.cgi?id=183970
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/generator-prototype-copy.js: Added.
|
||
(gen):
|
||
(catch):
|
||
Adopted JF's tests.
|
||
|
||
* stress/generator-type-check.js: Added.
|
||
(shouldThrow):
|
||
(foo2):
|
||
(i.shouldThrow):
|
||
* stress/get-by-id-direct-getter.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(obj.get hello):
|
||
(builtin.createBuiltin):
|
||
(obj2.get length):
|
||
* stress/get-by-id-direct.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(builtin.createBuiltin):
|
||
* test262.yaml:
|
||
We fixed long-standing spec compatibility issue.
|
||
As a result, this patch makes several test262 tests passed!
|
||
|
||
|
||
2018-04-07 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, annotate test with @skip if $memoryLimited
|
||
https://bugs.webkit.org/show_bug.cgi?id=183894
|
||
|
||
* stress/json-stringified-overflow.js:
|
||
|
||
2018-04-06 Alexey Proskuryakov <ap@apple.com>
|
||
|
||
Add svn:eol-style to line-terminator-normalisation-CR.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=184341
|
||
|
||
* test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js: Added property svn:eol-style.
|
||
|
||
2018-04-06 Ross Kirsling <ross.kirsling@sony.com>
|
||
|
||
Unreviewed, remove errant LF from existing test262 test for CR line endings.
|
||
|
||
* test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js:
|
||
|
||
2018-04-05 Ross Kirsling <ross.kirsling@sony.com>
|
||
|
||
Unreviewed, rolling out r230320.
|
||
|
||
Revert fix, as the root cause lies elsewhere.
|
||
|
||
Reverted changeset:
|
||
|
||
"[test262] Mark line-terminator-normalisation-CR.js as a
|
||
binary file."
|
||
https://bugs.webkit.org/show_bug.cgi?id=184341
|
||
https://trac.webkit.org/changeset/230320
|
||
|
||
2018-04-05 Ross Kirsling <ross.kirsling@sony.com>
|
||
|
||
[test262] Mark line-terminator-normalisation-CR.js as a binary file.
|
||
https://bugs.webkit.org/show_bug.cgi?id=184341
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
This test is all about CR line endings, but `svn-apply` can't deal with them.
|
||
Treating the file as binary ensures that its contents never are never shown in a diff.
|
||
|
||
* .gitattributes: Added.
|
||
|
||
2018-04-05 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Fix testcase (missing try/catch).
|
||
https://bugs.webkit.org/show_bug.cgi?id=183657
|
||
|
||
Unreviewed.
|
||
|
||
* stress/large-unshift-splice.js
|
||
|
||
2018-04-04 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
REGRESSION(r222563): removed DoubleReal type check causes tons of crashes because CSE has never known how to handle SaneChain
|
||
https://bugs.webkit.org/show_bug.cgi?id=184319
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-push-nan-to-double-array-cse-sane-and-insane-chain.js: Added.
|
||
(foo):
|
||
(bar):
|
||
* stress/array-push-nan-to-double-array.js: Added.
|
||
(foo):
|
||
(bar):
|
||
|
||
2018-04-03 Mark Lam <mark.lam@apple.com>
|
||
|
||
Test js-fixed-array-out-of-memory.js should be excluded for memory limited devices.
|
||
https://bugs.webkit.org/show_bug.cgi?id=184284
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/js-fixed-array-out-of-memory.js:
|
||
|
||
2018-03-31 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
JSC crash in JIT code with for-of loop and Array/Set iterators
|
||
https://bugs.webkit.org/show_bug.cgi?id=183174
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* 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.
|
||
(foo):
|
||
* stress/hoist-get-by-offset-with-control-dependent-inferred-type.js: Added. This test shows that the bug is fixed.
|
||
(f):
|
||
|
||
2018-03-30 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: support DataView compilation
|
||
https://bugs.webkit.org/show_bug.cgi?id=183342
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Test WebAssembly compilation using a DataView with offset.
|
||
|
||
* wasm/regress/183342.js: Added.
|
||
(attempt.catch):
|
||
|
||
2018-03-30 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Bytecode generator should not get_from_scope something that may be a hole into a variable that is already live
|
||
https://bugs.webkit.org/show_bug.cgi?id=184189
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/load-hole-from-scope-into-live-var.js: Added.
|
||
(result.eval.try.switch):
|
||
(catch):
|
||
|
||
2018-03-30 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r230102.
|
||
|
||
Caused assertion failures on JSC bots.
|
||
|
||
Reverted changeset:
|
||
|
||
"A stack overflow in the parsing of a builtin (called by
|
||
createExecutable) cause a crash instead of a catchable js
|
||
exception"
|
||
https://bugs.webkit.org/show_bug.cgi?id=184074
|
||
https://trac.webkit.org/changeset/230102
|
||
|
||
2018-03-30 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Inlining of a function that ends in op_unreachable in a non-tail position triggers an ASSERT
|
||
https://bugs.webkit.org/show_bug.cgi?id=183812
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/inlining-unreachable-non-tail.js: Added.
|
||
(foo.):
|
||
(foo):
|
||
|
||
2018-03-30 Robin Morisset <rmorisset@apple.com>
|
||
|
||
A stack overflow in the parsing of a builtin (called by createExecutable) cause a crash instead of a catchable js exception
|
||
https://bugs.webkit.org/show_bug.cgi?id=184074
|
||
<rdar://problem/37165897>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/stack-overflow-while-parsing-builtin.js: Added.
|
||
(f):
|
||
|
||
2018-03-30 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Out-of-bounds accesses due to a missing check for MAX_STORAGE_VECTOR_LENGTH in unshiftCountForAnyIndexingType
|
||
https://bugs.webkit.org/show_bug.cgi?id=183657
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/large-unshift-splice.js: Added.
|
||
(make_contig_arr):
|
||
|
||
2018-03-28 Robin Morisset <rmorisset@apple.com>
|
||
|
||
appendQuotedJSONString stops on arithmetic overflow instead of propagating it upwards
|
||
https://bugs.webkit.org/show_bug.cgi?id=183894
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/json-stringified-overflow.js: Added.
|
||
(catch):
|
||
|
||
2018-03-26 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DFG should know that CreateThis can be effectful
|
||
https://bugs.webkit.org/show_bug.cgi?id=184013
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/create-this-property-change.js: Added.
|
||
(Foo):
|
||
(RealBar):
|
||
(get if):
|
||
* stress/create-this-structure-change-without-cse.js: Added.
|
||
(Foo):
|
||
(RealBar):
|
||
(get if):
|
||
* stress/create-this-structure-change.js: Added.
|
||
(Foo):
|
||
(RealBar):
|
||
(get if):
|
||
|
||
2018-03-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Introduces fused compare and jump
|
||
https://bugs.webkit.org/show_bug.cgi?id=177100
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/fused-jeq-slow.js: Added.
|
||
(shouldBe):
|
||
(testJEQ):
|
||
(testJNEQB):
|
||
(testJEQB):
|
||
(testJNEQF):
|
||
(testJEQF):
|
||
* stress/fused-jeq.js: Added.
|
||
(shouldBe):
|
||
(testJEQ):
|
||
(testJNEQB):
|
||
(testJEQB):
|
||
(testJNEQF):
|
||
(testJEQF):
|
||
* stress/fused-jstricteq-slow.js: Added.
|
||
(shouldBe):
|
||
(testJSTRICTEQ):
|
||
(testJNSTRICTEQB):
|
||
(testJSTRICTEQB):
|
||
(testJNSTRICTEQF):
|
||
(testJSTRICTEQF):
|
||
* stress/fused-jstricteq.js: Added.
|
||
(shouldBe):
|
||
(testJSTRICTEQ):
|
||
(testJNSTRICTEQB):
|
||
(testJSTRICTEQB):
|
||
(testJNSTRICTEQF):
|
||
(testJSTRICTEQF):
|
||
|
||
2018-03-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Clear MustGenerate for ToString(Number) converted from NumberToStringWithRadix
|
||
https://bugs.webkit.org/show_bug.cgi?id=183559
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/double-to-string-in-loop-removed.js: Added.
|
||
(test):
|
||
* stress/int32-to-string-in-loop-removed.js: Added.
|
||
(test):
|
||
* stress/int52-to-string-in-loop-removed.js: Added.
|
||
(test):
|
||
|
||
2018-03-22 Michael Saboff <msaboff@apple.com>
|
||
|
||
Race Condition in arrayProtoFuncReverse() causes wrong results or crash
|
||
https://bugs.webkit.org/show_bug.cgi?id=183901
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
New test.
|
||
|
||
* stress/array-reverse-doesnt-clobber.js: Added.
|
||
(testArrayReverse):
|
||
(createArrayOfArrays):
|
||
(createArrayStorage):
|
||
|
||
2018-03-21 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
ScopedArguments should do poisoning and index masking
|
||
https://bugs.webkit.org/show_bug.cgi?id=183863
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Adds another stress test of scoped arguments.
|
||
|
||
* stress/scoped-arguments-test.js: Added.
|
||
(foo):
|
||
|
||
2018-03-20 Saam Barati <sbarati@apple.com>
|
||
|
||
We need to do proper bookkeeping of exitOK when inserting constants when sinking NewArrayBuffer
|
||
https://bugs.webkit.org/show_bug.cgi?id=183795
|
||
<rdar://problem/38298694>
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/sink-phantom-new-array-buffer-exit-ok.js: Added.
|
||
(foo):
|
||
(bar):
|
||
|
||
2018-03-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Add vectorLengthHint for NewArray
|
||
https://bugs.webkit.org/show_bug.cgi?id=183694
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/vector-length-hint-array-constructor.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/vector-length-hint-new-array.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2018-03-13 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Make ArraySlice(0) code tight
|
||
https://bugs.webkit.org/show_bug.cgi?id=183590
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-slice-with-zero.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(test2):
|
||
* stress/array-slice-zero-args.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2018-03-14 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] fix order of evaluation for ClassDefinitionEvaluation
|
||
https://bugs.webkit.org/show_bug.cgi?id=183523
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Computed property names need to be evaluated in source order during class
|
||
definition evaluation, as it's observable (and specified to work this way).
|
||
|
||
This change improves compatibility with Chromium.
|
||
|
||
* stress/class_elements.js: Added.
|
||
(test):
|
||
(test.C.prototype.effect):
|
||
(test.C.effect):
|
||
(test.C.prototype.get effect):
|
||
(test.C.prototype.set effect):
|
||
(test.C):
|
||
|
||
2018-03-11 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] AI should convert CreateThis to NewObject if the prototype object is proved
|
||
https://bugs.webkit.org/show_bug.cgi?id=183310
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/ai-create-this-to-new-object-fire.js: Added.
|
||
(assert):
|
||
(test):
|
||
(func):
|
||
(check):
|
||
(test.body.A):
|
||
(test.body.B):
|
||
(test.body):
|
||
* stress/ai-create-this-to-new-object.js: Added.
|
||
(assert):
|
||
(test):
|
||
(func):
|
||
(check):
|
||
(test.body.A):
|
||
(test.body.B):
|
||
(test.body):
|
||
|
||
2018-03-10 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Drop NewRegexp for String.prototype.match with RegExp + global flag
|
||
https://bugs.webkit.org/show_bug.cgi?id=181848
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* microbenchmarks/regexp-u-global-es5.js: Added.
|
||
(fn):
|
||
* microbenchmarks/regexp-u-global-es6.js: Added.
|
||
(fn):
|
||
* stress/materialized-regexp-has-correct-last-index-set-by-match-at-osr-exit.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(i.switch):
|
||
* stress/materialized-regexp-has-correct-last-index-set-by-match.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2018-03-07 Dominik Infuehr <dinfuehr@igalia.com>
|
||
|
||
Disable test stress/var-injection-cache-invalidation.js on systems with limited memory
|
||
https://bugs.webkit.org/show_bug.cgi?id=183334
|
||
|
||
Reviewed by Žan Doberšek.
|
||
|
||
* stress/var-injection-cache-invalidation.js:
|
||
|
||
2018-03-06 Dominik Infuehr <dinfuehr@igalia.com>
|
||
|
||
[ARM] Disable tests that run out of memory
|
||
https://bugs.webkit.org/show_bug.cgi?id=182699
|
||
|
||
Reviewed by Žan Doberšek.
|
||
|
||
Skip tests that run of of memory. Do not run
|
||
modules/module-jit-reachability.js without LLInt to prevent
|
||
running out of executable memory.
|
||
|
||
* modules.yaml:
|
||
* modules/module-jit-reachability.js:
|
||
* stress/has-own-property-name-cache-string-keys.js:
|
||
* stress/has-own-property-name-cache-symbol-keys.js:
|
||
|
||
2018-03-01 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
ASSERTION FAILED: matchContextualKeyword(m_vm->propertyNames->async)
|
||
https://bugs.webkit.org/show_bug.cgi?id=183173
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-arrow-function-in-class-heritage.js: Added.
|
||
(testSyntax):
|
||
(testSyntaxError):
|
||
(SyntaxError):
|
||
|
||
2018-03-01 Saam Barati <sbarati@apple.com>
|
||
|
||
We need to clear cached structures when having a bad time
|
||
https://bugs.webkit.org/show_bug.cgi?id=183256
|
||
<rdar://problem/36245022>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/having-a-bad-time-with-derived-arrays.js: Added.
|
||
(assert):
|
||
(defineSetter):
|
||
(iterate):
|
||
(doSlice):
|
||
|
||
2018-02-28 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
JSC crash with `import("")`
|
||
https://bugs.webkit.org/show_bug.cgi?id=183175
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/import-with-empty-string.js: Added.
|
||
|
||
2018-02-27 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, skip FTL tests if FTL is disabled
|
||
https://bugs.webkit.org/show_bug.cgi?id=183071
|
||
|
||
* stress/has-indexed-property-array-storage-ftl.js:
|
||
* stress/has-indexed-property-slow-put-array-storage-ftl.js:
|
||
|
||
2018-02-25 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Support PutByVal(ArrayStorage/SlowPutArrayStorage)
|
||
https://bugs.webkit.org/show_bug.cgi?id=182965
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/put-by-val-array-storage.js: Added.
|
||
(shouldBe):
|
||
(testArrayStorageInBounds):
|
||
* stress/put-by-val-direct-out-of-bounds-setter.js: Added.
|
||
(shouldBe):
|
||
(testInt32.createBuiltin):
|
||
(set for):
|
||
* stress/put-by-val-slow-put-array-storage.js: Added.
|
||
(shouldBe):
|
||
(testArrayStorageInBounds):
|
||
|
||
2018-02-26 Saam Barati <sbarati@apple.com>
|
||
|
||
validateStackAccess should not validate if the offset is within the stack bounds
|
||
https://bugs.webkit.org/show_bug.cgi?id=183067
|
||
<rdar://problem/37749988>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/dont-validate-stack-offset-in-b3-because-it-might-be-guarded-by-control-flow.js: Added.
|
||
(assert):
|
||
(test.a):
|
||
(test.b):
|
||
(test):
|
||
|
||
2018-02-26 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, skip FTL tests if FTL is disabled
|
||
https://bugs.webkit.org/show_bug.cgi?id=183071
|
||
|
||
* stress/has-indexed-property-array-storage-ftl.js:
|
||
* stress/has-indexed-property-slow-put-array-storage-ftl.js:
|
||
|
||
2018-02-23 Saam Barati <sbarati@apple.com>
|
||
|
||
Make Number.isInteger an intrinsic
|
||
https://bugs.webkit.org/show_bug.cgi?id=183088
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/number-is-integer-intrinsic.js: Added.
|
||
|
||
2018-02-23 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
WebAssembly: cache memory address / size on instance
|
||
https://bugs.webkit.org/show_bug.cgi?id=177305
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* wasm/function-tests/memory-reuse.js: Added.
|
||
(createWasmInstance):
|
||
(doCheckTrap):
|
||
(doMemoryGrow):
|
||
(doCheck):
|
||
(checkWasmInstancesWithSharedMemory):
|
||
|
||
2018-02-23 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Implement $vm.ftlTrue function for FTL testing
|
||
https://bugs.webkit.org/show_bug.cgi?id=183071
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/dead-fiat-value-to-int52-then-exit-not-double.js:
|
||
(foo):
|
||
* stress/dead-fiat-value-to-int52-then-exit-not-int52.js:
|
||
(foo):
|
||
* stress/dead-fiat-value-to-int52.js:
|
||
(foo):
|
||
* stress/dead-osr-entry-value.js:
|
||
(foo):
|
||
* stress/fiat-value-to-int52-then-exit-not-double.js:
|
||
(foo):
|
||
* stress/fiat-value-to-int52-then-exit-not-int52.js:
|
||
(foo):
|
||
* stress/fiat-value-to-int52-then-fail-to-fold.js:
|
||
(foo):
|
||
* stress/fiat-value-to-int52-then-fold.js:
|
||
(foo):
|
||
* stress/fiat-value-to-int52.js:
|
||
(foo):
|
||
* stress/fold-based-on-int32-proof-mul-branch.js:
|
||
(foo):
|
||
* stress/fold-profiled-call-to-call.js:
|
||
(foo):
|
||
* stress/fold-to-double-constant-then-exit.js:
|
||
(foo):
|
||
* stress/fold-to-int52-constant-then-exit.js:
|
||
(foo):
|
||
* stress/fold-to-primitive-in-cfa.js:
|
||
(foo):
|
||
* stress/fold-to-primitive-to-identity-in-cfa.js:
|
||
(foo):
|
||
* stress/has-indexed-property-array-storage-ftl.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
* stress/has-indexed-property-slow-put-array-storage-ftl.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
* stress/int52-ai-add-then-filter-int32.js:
|
||
(foo):
|
||
* stress/int52-ai-mul-and-clean-neg-zero-then-filter-int32.js:
|
||
(foo):
|
||
* stress/int52-ai-mul-then-filter-int32.js:
|
||
(foo):
|
||
* stress/int52-ai-neg-then-filter-int32.js:
|
||
(foo):
|
||
* stress/int52-ai-sub-then-filter-int32.js:
|
||
(foo):
|
||
* stress/licm-pre-header-cannot-exit-nested.js:
|
||
(foo):
|
||
* stress/licm-pre-header-cannot-exit.js:
|
||
(foo):
|
||
* stress/sparse-array-entry-update-144067.js:
|
||
(useMemoryToTriggerGCs):
|
||
* stress/test-spec-misc.js:
|
||
(foo):
|
||
* stress/tricky-array-bounds-checks.js:
|
||
(foo):
|
||
|
||
2018-02-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Support HasIndexedProperty for ArrayStorage and SlowPutArrayStorage
|
||
https://bugs.webkit.org/show_bug.cgi?id=182792
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/has-indexed-property-array-storage.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
* stress/has-indexed-property-slow-put-array-storage.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
|
||
2018-02-20 Saam Barati <sbarati@apple.com>
|
||
|
||
DFG::VarargsForwardingPhase should eliminate getting argument length
|
||
https://bugs.webkit.org/show_bug.cgi?id=182959
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* microbenchmarks/forward-arguments-dont-escape-on-arguments-length.js: Added.
|
||
|
||
2018-02-14 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Support ArrayPush for ArrayStorage
|
||
https://bugs.webkit.org/show_bug.cgi?id=182782
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Existing array-push-multiple-storage.js covers ArrayPush(ArrayStorage) multiple arguments case.
|
||
|
||
* stress/array-push-array-storage-beyond-int32.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-array-storage.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-array-storage-beyond-int32.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-storage-continuous.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2018-02-14 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Support ArrayPop for ArrayStorage
|
||
https://bugs.webkit.org/show_bug.cgi?id=182783
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-pop-array-storage.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2018-02-14 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Add Arrayify for ArrayStorage and SlowPutArrayStorage
|
||
https://bugs.webkit.org/show_bug.cgi?id=182731
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arrayify-array-storage-array.js: Added.
|
||
(shouldBe):
|
||
(testArrayStorage):
|
||
* stress/arrayify-array-storage-non-array.js: Added.
|
||
(shouldBe):
|
||
(testArrayStorage):
|
||
* stress/arrayify-array-storage.js: Added.
|
||
(shouldBe):
|
||
(testArrayStorage):
|
||
* stress/arrayify-slow-put-array-storage-pass-array-storage.js: Added.
|
||
(shouldBe):
|
||
(testArrayStorage):
|
||
* stress/arrayify-slow-put-array-storage.js: Added.
|
||
(shouldBe):
|
||
(testArrayStorage):
|
||
|
||
2018-02-19 Saam Barati <sbarati@apple.com>
|
||
|
||
Don't use JSFunction's allocation profile when getting the prototype can be effectful
|
||
https://bugs.webkit.org/show_bug.cgi?id=182942
|
||
<rdar://problem/37584764>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/get-prototype-create-this-effectful.js: Added.
|
||
|
||
2018-02-16 Saam Barati <sbarati@apple.com>
|
||
|
||
Fix bugs from r228411
|
||
https://bugs.webkit.org/show_bug.cgi?id=182851
|
||
<rdar://problem/37577732>
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/constant-folding-phase-insert-check-handle-varargs.js: Added.
|
||
|
||
2018-02-15 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Unreviewed, roll out r228366 since it did not progress anything.
|
||
|
||
* stress/gc-error-stack.js: Removed.
|
||
* stress/no-gc-error-stack.js: Removed.
|
||
|
||
2018-02-15 Tomas Popela <tpopela@redhat.com>
|
||
|
||
Many stress tests fail with JIT disabled
|
||
https://bugs.webkit.org/show_bug.cgi?id=182730
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
These tests are broken by design if the JIT is disabled - they test
|
||
the return value of numberOfDFGCompiles(), which is always set to
|
||
1000000.0 in TestRunnerUtils.cpp and makes the tests to fail.
|
||
|
||
* stress/arith-abs-on-various-types.js:
|
||
* stress/arith-abs-to-arith-negate-range-optimizaton.js:
|
||
* stress/arith-acos-on-various-types.js:
|
||
* stress/arith-acosh-on-various-types.js:
|
||
* stress/arith-asin-on-various-types.js:
|
||
* stress/arith-asinh-on-various-types.js:
|
||
* stress/arith-atan-on-various-types.js:
|
||
* stress/arith-atanh-on-various-types.js:
|
||
* stress/arith-cbrt-on-various-types.js:
|
||
* stress/arith-ceil-on-various-types.js:
|
||
* stress/arith-clz32-on-various-types.js:
|
||
* stress/arith-cos-on-various-types.js:
|
||
* stress/arith-cosh-on-various-types.js:
|
||
* stress/arith-expm1-on-various-types.js:
|
||
* stress/arith-floor-on-various-types.js:
|
||
* stress/arith-fround-on-various-types.js:
|
||
* stress/arith-log-on-various-types.js:
|
||
* stress/arith-log10-on-various-types.js:
|
||
* stress/arith-log2-on-various-types.js:
|
||
* stress/arith-negate-on-various-types.js:
|
||
* stress/arith-round-on-various-types.js:
|
||
* stress/arith-sin-on-various-types.js:
|
||
* stress/arith-sinh-on-various-types.js:
|
||
* stress/arith-sqrt-on-various-types.js:
|
||
* stress/arith-tan-on-various-types.js:
|
||
* stress/arith-tanh-on-various-types.js:
|
||
* stress/arith-trunc-on-various-types.js:
|
||
* stress/compare-strict-eq-on-various-types.js:
|
||
|
||
2018-02-14 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip stress/new-largeish-contiguous-array-with-size.js on arm.
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/new-largeish-contiguous-array-with-size.js:
|
||
|
||
2018-02-14 Saam Barati <sbarati@apple.com>
|
||
|
||
Setting a VMTrap shouldn't look at topCallFrame since that may imply we're in C code and holding the malloc lock
|
||
https://bugs.webkit.org/show_bug.cgi?id=182801
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/watchdog-dont-malloc-when-in-c-code.js: Added.
|
||
|
||
2018-02-14 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip JSC test stress/activation-sink-default-value-tdz-error.js on debug.
|
||
https://bugs.webkit.org/show_bug.cgi?id=182526
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/activation-sink-default-value-tdz-error.js:
|
||
|
||
2018-02-13 Saam Barati <sbarati@apple.com>
|
||
|
||
putDirectIndexSlowOrBeyondVectorLength needs to convert to dictionary indexing mode always if attributes are present
|
||
https://bugs.webkit.org/show_bug.cgi?id=182755
|
||
<rdar://problem/37080864>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/always-enter-dictionary-indexing-mode-with-getter.js: Added.
|
||
(test1.o.get 10005):
|
||
(test1):
|
||
(test2.o.get 1000):
|
||
(test2):
|
||
|
||
2018-02-13 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] cache TaggedTemplate arrays by callsite rather than by contents
|
||
https://bugs.webkit.org/show_bug.cgi?id=182717
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
https://github.com/tc39/ecma262/pull/890 imposes a change to template
|
||
literals, to allow template callsite arrays to be collected when the
|
||
code containing the tagged template call is collected. This spec change
|
||
has received concensus and been ratified.
|
||
|
||
This change eliminates the eternal map associating template contents
|
||
with arrays.
|
||
|
||
* stress/tagged-template-object-collect.js: Renamed from JSTests/stress/tagged-template-registry-key-collect.js.
|
||
* stress/tagged-template-object.js: Renamed from JSTests/stress/tagged-template-registry-key.js.
|
||
* stress/tagged-templates-identity.js:
|
||
* stress/template-string-tags-eval.js:
|
||
* test262.yaml:
|
||
|
||
2018-02-13 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Support GetArrayLength on ArrayStorage in the FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=182625
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-storage-length.js: Added.
|
||
(shouldBe):
|
||
(testInBound):
|
||
(testUncountable):
|
||
(testSlowPutInBound):
|
||
(testSlowPutUncountable):
|
||
* stress/undecided-length.js: Added.
|
||
(shouldBe):
|
||
(test2):
|
||
|
||
2018-02-12 Saam Barati <sbarati@apple.com>
|
||
|
||
DFG::emitCodeToGetArgumentsArrayLength needs to handle NewArrayBuffer/PhantomNewArrayBuffer
|
||
https://bugs.webkit.org/show_bug.cgi?id=182706
|
||
<rdar://problem/36833681>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/get-array-length-phantom-new-array-buffer.js: Added.
|
||
(effects):
|
||
(foo):
|
||
|
||
2018-02-09 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Don't waste memory for error.stack
|
||
https://bugs.webkit.org/show_bug.cgi?id=182656
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Tests the policy.
|
||
|
||
* stress/gc-error-stack.js: Added. Shows that the GC forgets frames now.
|
||
* stress/no-gc-error-stack.js: Added. Shows that the GC won't forget things if you ask for the stack.
|
||
|
||
2018-02-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Update Test262 to Feb 9 version
|
||
https://bugs.webkit.org/show_bug.cgi?id=182468
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
2018-02-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, fix invalid line terminator in old test262 file part 2
|
||
https://bugs.webkit.org/show_bug.cgi?id=182468
|
||
|
||
* test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js:
|
||
|
||
2018-02-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, fix invalid line terminator in old test262 file
|
||
https://bugs.webkit.org/show_bug.cgi?id=182468
|
||
|
||
* test262/test/language/literals/regexp/7.8.5-1.js:
|
||
|
||
2018-02-06 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Implement Array.prototype.flatMap and Array.prototype.flatten
|
||
https://bugs.webkit.org/show_bug.cgi?id=182440
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/array-flatmap.js: Added.
|
||
(shouldBe):
|
||
(shouldBeArray):
|
||
(shouldThrow):
|
||
(var):
|
||
* stress/array-flatten.js: Added.
|
||
(shouldBe):
|
||
(shouldBeArray):
|
||
* test262.yaml:
|
||
* test262/test/built-ins/Array/prototype/flatMap/depth-always-one.js:
|
||
(3.flatMap):
|
||
Pick test262 82c6148980332febe92a544a1fb653718e9fdb57 change.
|
||
|
||
2018-02-06 Keith Miller <keith_miller@apple.com>
|
||
|
||
put_to_scope/get_from_scope should not cache lexical scopes when expecting a global object
|
||
https://bugs.webkit.org/show_bug.cgi?id=182549
|
||
<rdar://problem/36189995>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/var-injection-cache-invalidation.js: Added.
|
||
(allocateLotsOfThings):
|
||
(test):
|
||
|
||
2018-02-03 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, follow up for test262 update
|
||
https://bugs.webkit.org/show_bug.cgi?id=182288
|
||
|
||
* test262.yaml:
|
||
|
||
2018-02-02 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Update test262 to Jan 30 version
|
||
https://bugs.webkit.org/show_bug.cgi?id=182288
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml: Remove entry for missing test language/expressions/assignment/white-space.js
|
||
|
||
2018-02-02 Saam Barati <sbarati@apple.com>
|
||
|
||
When BytecodeParser inserts Unreachable after ForceOSRExit it needs to update ArgumentPositions for Flushes it inserts
|
||
https://bugs.webkit.org/show_bug.cgi?id=182368
|
||
<rdar://problem/36932466>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/flush-after-force-exit-in-bytecodeparser-needs-to-update-argument-positions.js: Added.
|
||
(runNearStackLimit.t):
|
||
(runNearStackLimit):
|
||
(try.runNearStackLimit):
|
||
(catch):
|
||
|
||
2018-02-02 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Update test262 to Jan 30 version
|
||
https://bugs.webkit.org/show_bug.cgi?id=182288
|
||
|
||
Rubber stamped by Saam Barati.
|
||
|
||
This patch updates test262 to the latest one, Jan 30 version.
|
||
Since added and changed files are too many, we cannot create ChangeLog.
|
||
The following files are changed.
|
||
|
||
Several files are intentionally omitted due to merge failures. We should investigate how to merge files
|
||
including some special line terminators (like u2028, u2029).
|
||
|
||
* test262.yaml:
|
||
* test262/test262-Revision.txt:
|
||
* test262/*:
|
||
|
||
2018-02-02 Guillaume Emont <guijemont@igalia.com>
|
||
|
||
JSTests: Skip mozilla/js1_5/Array/regress-157652.js on all memory limited platforms
|
||
https://bugs.webkit.org/show_bug.cgi?id=182411
|
||
|
||
Reviewed by Carlos Alberto Lopez Perez.
|
||
|
||
This is skipped only on arm memory limited platforms. Until recently
|
||
it was not a problem on MIPS as the butterfly was not initialized. But
|
||
since r227435, the butterfly is initialized in that test and therefore
|
||
memory is allocated, and the test typically takes around 512M, which
|
||
means it generally gets OOM-killed on the MIPS buildbot.
|
||
|
||
* mozilla/mozilla-tests.yaml:
|
||
|
||
2018-02-01 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix broken bounds check in FTL's compileGetMyArgumentByVal().
|
||
https://bugs.webkit.org/show_bug.cgi?id=182419
|
||
<rdar://problem/37044945>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-182419.js: Added.
|
||
|
||
2018-02-01 Keith Miller <keith_miller@apple.com>
|
||
|
||
Fix crashes due to mishandling custom sections.
|
||
https://bugs.webkit.org/show_bug.cgi?id=182404
|
||
<rdar://problem/36935863>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/Builder.js:
|
||
(export.default.Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.case.string_appeared_here.this.section):
|
||
* wasm/js-api/validate.js:
|
||
(assert.truthy):
|
||
|
||
2018-01-31 Saam Barati <sbarati@apple.com>
|
||
|
||
JSC incorrectly interpreting script, sets Global Property instead of Global Lexical variable (LiteralParser / JSONP path)
|
||
https://bugs.webkit.org/show_bug.cgi?id=182074
|
||
<rdar://problem/36846261>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/jsonp-program-evaluate-path-must-consider-global-lexical-environment.js: Added.
|
||
(assert):
|
||
(let.func):
|
||
(let.o.foo):
|
||
(varFunc):
|
||
|
||
2018-01-30 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, update test262 expects
|
||
https://bugs.webkit.org/show_bug.cgi?id=182232
|
||
|
||
* test262.yaml:
|
||
|
||
2018-01-29 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Implement trimStart and trimEnd
|
||
https://bugs.webkit.org/show_bug.cgi?id=182233
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/trim.js: Added.
|
||
(shouldBe):
|
||
(startTest):
|
||
(endTest):
|
||
(trimTest):
|
||
|
||
2018-01-29 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Relax line terminators in String to make JSON subset of JS
|
||
https://bugs.webkit.org/show_bug.cgi?id=182232
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* ChakraCore/test/es5/Lex_u3.baseline-jsc:
|
||
* stress/relaxed-line-terminators-in-string.js: Added.
|
||
(shouldBe):
|
||
|
||
2018-01-29 Michael Saboff <msaboff@apple.com>
|
||
|
||
REGRESSION (r227341): DFG_ASSERT failure at JSC::DFG::AtTailAbstractState::forNode()
|
||
https://bugs.webkit.org/show_bug.cgi?id=182249
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
New regression test.
|
||
|
||
* stress/compare-clobber-untypeduse.js: Added.
|
||
|
||
2018-01-29 Matt Lewis <jlewis3@apple.com>
|
||
|
||
Unreviewed, rolling out r227725.
|
||
|
||
This caused internal failures.
|
||
|
||
Reverted changeset:
|
||
|
||
"JSC Sampling Profiler: Detect tester and testee when sampling
|
||
in RegExp JIT"
|
||
https://bugs.webkit.org/show_bug.cgi?id=152729
|
||
https://trac.webkit.org/changeset/227725
|
||
|
||
2018-01-29 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
JSC Sampling Profiler: Detect tester and testee when sampling in RegExp JIT
|
||
https://bugs.webkit.org/show_bug.cgi?id=152729
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/sampling-profiler-regexp.js: Added.
|
||
(platformSupportsSamplingProfiler.test):
|
||
(platformSupportsSamplingProfiler.baz):
|
||
(platformSupportsSamplingProfiler):
|
||
|
||
2018-01-29 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] WeakMap#set should have DFG node
|
||
https://bugs.webkit.org/show_bug.cgi?id=180015
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/weakmap-set-change-get.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/weakmap-set-cse.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/weakset-add-change-get.js: Added.
|
||
(shouldBe):
|
||
* stress/weakset-add-cse.js: Added.
|
||
(shouldBe):
|
||
|
||
2018-01-27 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
DFG strength reduction fails to convert NumberToStringWithValidRadixConstant for 0 to constant '0'
|
||
https://bugs.webkit.org/show_bug.cgi?id=182213
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/int32-min-to-string.js: Added.
|
||
(shouldBe):
|
||
(test2):
|
||
(test4):
|
||
(test8):
|
||
(test16):
|
||
(test32):
|
||
* stress/zero-to-string.js: Added.
|
||
(shouldBe):
|
||
(test2):
|
||
(test4):
|
||
(test8):
|
||
(test16):
|
||
(test32):
|
||
|
||
2018-01-23 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Add more module scope related tests with code evaluation by string
|
||
https://bugs.webkit.org/show_bug.cgi?id=181983
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
Add more module scope related tests. When the original tests are landed,
|
||
we do not have browser integration. This patch adds more module scope tests
|
||
with dynamically created script evaluation. We add tests with Function
|
||
constructor, direct eval, indirect eval, setTimeout, setInterval, and event handlers.
|
||
|
||
* modules/scopes-eval.js: Added.
|
||
(shouldBe):
|
||
* modules/scopes.js:
|
||
(shouldBe):
|
||
|
||
2018-01-23 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
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.
|
||
|
||
* microbenchmarks/array-push-3.js: Removed.
|
||
* microbenchmarks/bigswitch-indirect-symbol-or-undefined.js: Removed.
|
||
* microbenchmarks/double-to-int32.js: Removed.
|
||
* microbenchmarks/fake-iterators-that-throw-when-finished.js: Removed.
|
||
* microbenchmarks/ftl-polymorphic-bitand.js: Removed.
|
||
* microbenchmarks/ftl-polymorphic-bitor.js: Removed.
|
||
* microbenchmarks/ftl-polymorphic-bitxor.js: Removed.
|
||
* microbenchmarks/ftl-polymorphic-lshift.js: Removed.
|
||
* microbenchmarks/ftl-polymorphic-rshift.js: Removed.
|
||
* microbenchmarks/ftl-polymorphic-sub.js: Removed.
|
||
* microbenchmarks/ftl-polymorphic-urshift.js: Removed.
|
||
* microbenchmarks/map-constant-key.js: Removed.
|
||
* microbenchmarks/nested-function-parsing.js: Removed.
|
||
* microbenchmarks/rest-parameter-allocation-elimination.js: Removed.
|
||
* microbenchmarks/spread-large-array.js: Removed.
|
||
* microbenchmarks/string-add-constant-folding.js: Removed.
|
||
* microbenchmarks/to-lower-case.js: Removed.
|
||
* microbenchmarks/undefined-property-access.js: Removed.
|
||
* slowMicrobenchmarks/array-push-3.js: Copied from JSTests/microbenchmarks/array-push-3.js.
|
||
* slowMicrobenchmarks/bigswitch-indirect-symbol-or-undefined.js: Copied from JSTests/microbenchmarks/bigswitch-indirect-symbol-or-undefined.js.
|
||
* slowMicrobenchmarks/double-to-int32.js: Copied from JSTests/microbenchmarks/double-to-int32.js.
|
||
* slowMicrobenchmarks/fake-iterators-that-throw-when-finished.js: Copied from JSTests/microbenchmarks/fake-iterators-that-throw-when-finished.js.
|
||
* slowMicrobenchmarks/ftl-polymorphic-bitand.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-bitand.js.
|
||
* slowMicrobenchmarks/ftl-polymorphic-bitor.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-bitor.js.
|
||
* slowMicrobenchmarks/ftl-polymorphic-bitxor.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-bitxor.js.
|
||
* slowMicrobenchmarks/ftl-polymorphic-lshift.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-lshift.js.
|
||
* slowMicrobenchmarks/ftl-polymorphic-rshift.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-rshift.js.
|
||
* slowMicrobenchmarks/ftl-polymorphic-sub.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-sub.js.
|
||
* slowMicrobenchmarks/ftl-polymorphic-urshift.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-urshift.js.
|
||
* slowMicrobenchmarks/map-constant-key.js: Copied from JSTests/microbenchmarks/map-constant-key.js.
|
||
* slowMicrobenchmarks/nested-function-parsing.js: Copied from JSTests/microbenchmarks/nested-function-parsing.js.
|
||
* slowMicrobenchmarks/rest-parameter-allocation-elimination.js: Copied from JSTests/microbenchmarks/rest-parameter-allocation-elimination.js.
|
||
* slowMicrobenchmarks/spread-large-array.js: Copied from JSTests/microbenchmarks/spread-large-array.js.
|
||
* slowMicrobenchmarks/string-add-constant-folding.js: Copied from JSTests/microbenchmarks/string-add-constant-folding.js.
|
||
* slowMicrobenchmarks/to-lower-case.js: Copied from JSTests/microbenchmarks/to-lower-case.js.
|
||
* slowMicrobenchmarks/undefined-property-access.js: Copied from JSTests/microbenchmarks/undefined-property-access.js.
|
||
|
||
2018-01-23 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Update the argument count in DFGByteCodeParser::handleRecursiveCall
|
||
https://bugs.webkit.org/show_bug.cgi?id=181739
|
||
<rdar://problem/36627662>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/recursive-tail-call-with-different-argument-count.js: Added.
|
||
(foo):
|
||
(bar):
|
||
|
||
2018-01-22 Michael Saboff <msaboff@apple.com>
|
||
|
||
DFG abstract interpreter needs to properly model effects of some Math ops
|
||
https://bugs.webkit.org/show_bug.cgi?id=181886
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
New regression test.
|
||
|
||
* stress/arith-nodes-abstract-interpreter-untypeduse.js: Added.
|
||
(test):
|
||
|
||
2018-01-20 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[JSC] NumberPrototype::extractRadixFromArgs incorrectly cast double to int32_t
|
||
https://bugs.webkit.org/show_bug.cgi?id=181182
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/big-int-prototype-to-string-cast-overflow.js: Added.
|
||
* stress/big-int-prototype-to-string-exception.js: Added.
|
||
* stress/big-int-prototype-to-string-wrong-values.js: Added.
|
||
* stress/number-prototype-to-string-cast-overflow.js: Added.
|
||
* stress/number-prototype-to-string-exception.js: Added.
|
||
* stress/number-prototype-to-string-wrong-values.js: Added.
|
||
|
||
2018-01-19 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Disable Atomics when SharedArrayBuffer isn’t enabled
|
||
https://bugs.webkit.org/show_bug.cgi?id=181572
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml: Skip tests that fail after this change.
|
||
|
||
2018-01-19 Saam Barati <sbarati@apple.com>
|
||
|
||
Kill ArithNegate's ArithProfile assert inside BytecodeParser
|
||
https://bugs.webkit.org/show_bug.cgi?id=181877
|
||
<rdar://problem/36630552>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/arith-profile-for-negate-can-see-non-number-due-to-dfg-osr-exit-profiling.js: Added.
|
||
(runNearStackLimit):
|
||
(f1):
|
||
(f2):
|
||
(f3):
|
||
(i.catch):
|
||
(i.try.runNearStackLimit):
|
||
(catch):
|
||
|
||
2018-01-19 Saam Barati <sbarati@apple.com>
|
||
|
||
Spread's effects are modeled incorrectly both in AI and in Clobberize
|
||
https://bugs.webkit.org/show_bug.cgi?id=181867
|
||
<rdar://problem/36290415>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/ai-needs-to-model-spreads-effects.js: Added.
|
||
(try.p.Symbol.iterator):
|
||
(try.go):
|
||
(catch):
|
||
* stress/clobberize-needs-to-model-spread-effects.js: Added.
|
||
(assert):
|
||
(foo):
|
||
(a.Symbol.iterator):
|
||
|
||
2018-01-19 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, reduce count of iteration to fix timing out debug JSC test
|
||
https://bugs.webkit.org/show_bug.cgi?id=181535
|
||
|
||
* stress/inserted-recovery-with-set-last-index.js:
|
||
|
||
2018-01-17 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Introduce PhantomNewRegexp and RegExpExecNonGlobalOrSticky
|
||
https://bugs.webkit.org/show_bug.cgi?id=181535
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/inserted-recovery-with-set-last-index.js: Added.
|
||
(shouldBe):
|
||
(foo):
|
||
* stress/materialize-regexp-at-osr-exit.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/materialize-regexp-cyclic-regexp-at-osr-exit.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/materialize-regexp-cyclic-regexp.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(i.switch):
|
||
* stress/materialize-regexp-cyclic.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(i.switch):
|
||
* stress/materialize-regexp-referenced-from-phantom-regexp-cyclic.js: Added.
|
||
(bar):
|
||
(foo):
|
||
(test):
|
||
* stress/materialize-regexp-referenced-from-phantom-regexp.js: Added.
|
||
(bar):
|
||
(foo):
|
||
(test):
|
||
* stress/materialize-regexp.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/phantom-regexp-regexp-exec.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/phantom-regexp-string-match.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/regexp-last-index-sinking.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2018-01-17 Saam Barati <sbarati@apple.com>
|
||
|
||
Disable Atomics when SharedArrayBuffer isn’t enabled
|
||
https://bugs.webkit.org/show_bug.cgi?id=181572
|
||
<rdar://problem/36553206>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/isLockFree.js:
|
||
|
||
2018-01-17 Saam Barati <sbarati@apple.com>
|
||
|
||
DFG::Node::convertToConstant needs to clear the varargs flags
|
||
https://bugs.webkit.org/show_bug.cgi?id=181697
|
||
<rdar://problem/36497332>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/dfg-node-convert-to-constant-must-clear-varargs-flags.js: Added.
|
||
(doIndexOf):
|
||
(bar):
|
||
(i.bar):
|
||
|
||
2018-01-16 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r226937.
|
||
|
||
Tests added with this change are failing due to a missing
|
||
exception check.
|
||
|
||
Reverted changeset:
|
||
|
||
"[JSC] NumberPrototype::extractRadixFromArgs incorrectly cast
|
||
double to int32_t"
|
||
https://bugs.webkit.org/show_bug.cgi?id=181182
|
||
https://trac.webkit.org/changeset/226937
|
||
|
||
2018-01-13 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[JSC] NumberPrototype::extractRadixFromArgs incorrectly cast double to int32_t
|
||
https://bugs.webkit.org/show_bug.cgi?id=181182
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-constructor.js:
|
||
* stress/big-int-prototype-to-string-cast-overflow.js: Added.
|
||
(assert):
|
||
(assertThrowRangeError):
|
||
* stress/number-prototype-to-string-cast-overflow.js: Added.
|
||
(assert):
|
||
(assertThrowRangeError):
|
||
|
||
2018-01-12 Saam Barati <sbarati@apple.com>
|
||
|
||
CheckStructure can be incorrectly subsumed by CheckStructureOrEmpty
|
||
https://bugs.webkit.org/show_bug.cgi?id=181177
|
||
<rdar://problem/36205704>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/check-structure-ir-ensures-empty-does-not-flow-through.js: Added.
|
||
(runNearStackLimit.t):
|
||
(runNearStackLimit):
|
||
(test.f):
|
||
(test):
|
||
|
||
2018-01-12 Saam Barati <sbarati@apple.com>
|
||
|
||
Each variant of a polymorphic inlined call should be exitOK at the top of the block
|
||
https://bugs.webkit.org/show_bug.cgi?id=181562
|
||
<rdar://problem/36445624>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/each-block-at-top-of-polymorphic-call-inlining-should-be-exitOK.js: Added.
|
||
(f):
|
||
(foo):
|
||
|
||
2018-01-11 Saam Barati <sbarati@apple.com>
|
||
|
||
When inserting Unreachable in byte code parser we need to flush all the right things
|
||
https://bugs.webkit.org/show_bug.cgi?id=181509
|
||
<rdar://problem/36423110>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/proper-flushing-when-we-insert-unreachable-after-force-exit-in-bytecode-parser.js: Added.
|
||
|
||
2018-01-11 Saam Barati <sbarati@apple.com>
|
||
|
||
JITMathIC code in the FTL is wrong when code gets duplicated
|
||
https://bugs.webkit.org/show_bug.cgi?id=181525
|
||
<rdar://problem/36351993>
|
||
|
||
Reviewed by Michael Saboff and Keith Miller.
|
||
|
||
* stress/allow-math-ic-b3-code-duplication.js: Added.
|
||
|
||
2018-01-11 Saam Barati <sbarati@apple.com>
|
||
|
||
Our for-in caching is wrong when we add indexed properties on things in the prototype chain
|
||
https://bugs.webkit.org/show_bug.cgi?id=181508
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/for-in-prototype-with-indexed-properties-should-prevent-caching.js: Added.
|
||
(assert):
|
||
(test1.foo):
|
||
(test1):
|
||
(test2.foo):
|
||
(test2):
|
||
|
||
2018-01-09 Mark Lam <mark.lam@apple.com>
|
||
|
||
ASSERTION FAILED: pair.second->m_type & PropertyNode::Getter
|
||
https://bugs.webkit.org/show_bug.cgi?id=181388
|
||
<rdar://problem/36349351>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-181388.js: Added.
|
||
|
||
2018-01-08 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: mask indexed accesses to Table
|
||
https://bugs.webkit.org/show_bug.cgi?id=181412
|
||
<rdar://problem/36363236>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Update error messages.
|
||
|
||
* wasm/js-api/table.js:
|
||
(assert.throws.WebAssembly.Table.prototype.grow):
|
||
|
||
2018-01-08 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Disable SharedArrayBuffer tests missed in r226386.
|
||
https://bugs.webkit.org/show_bug.cgi?id=181266
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml:
|
||
|
||
2018-01-06 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Object.getOwnPropertyNames includes "arguments" and "caller" for bound functions
|
||
https://bugs.webkit.org/show_bug.cgi?id=181321
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/bound-function-does-not-have-caller-and-arguments.js: Added.
|
||
(shouldBe):
|
||
(testFunction):
|
||
* test262.yaml:
|
||
|
||
2018-01-05 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, attempt to fix test262 after r226386.
|
||
|
||
* test262.yaml:
|
||
|
||
2018-01-04 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Define defs for MapSet/SetAdd to participate in CSE
|
||
https://bugs.webkit.org/show_bug.cgi?id=179911
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
In addition to these tests, map-set-cse.js and set-add-cse.js work.
|
||
|
||
* stress/map-set-change-get.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/map-set-create-bucket.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/set-add-create-bucket.js: Added.
|
||
(shouldBe):
|
||
|
||
2018-01-03 Michael Saboff <msaboff@apple.com>
|
||
|
||
Disable SharedArrayBuffers from Web API
|
||
https://bugs.webkit.org/show_bug.cgi?id=181266
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Disabled SharedArrayBuffer tests.
|
||
|
||
* stress/SharedArrayBuffer-opt.js:
|
||
* stress/SharedArrayBuffer.js:
|
||
* stress/array-buffer-byte-length.js:
|
||
* stress/atomics-add-uint32.js:
|
||
* stress/atomics-known-int-use.js:
|
||
* stress/atomics-neg-zero.js:
|
||
* stress/atomics-store-return.js:
|
||
* stress/lars-sab-workers.js:
|
||
* stress/regress-159779-1.js:
|
||
* stress/regress-159779-2.js:
|
||
* stress/regress-170473.js:
|
||
* test262.yaml:
|
||
|
||
2018-01-03 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Failing test stress/big-int-constructor-oom.js into MIPS
|
||
https://bugs.webkit.org/show_bug.cgi?id=181258
|
||
|
||
Reviewed by Antonio Gomes.
|
||
|
||
* stress/big-int-constructor-gc.js:
|
||
* stress/big-int-constructor-oom.js:
|
||
|
||
2018-01-03 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Inlining of a function that ends in op_unreachable crashes
|
||
https://bugs.webkit.org/show_bug.cgi?id=181027
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/inlining-unreachable.js: Added.
|
||
(bar):
|
||
(baz):
|
||
(i.catch):
|
||
|
||
2018-01-02 Saam Barati <sbarati@apple.com>
|
||
|
||
Incorrect assertion inside AccessCase
|
||
https://bugs.webkit.org/show_bug.cgi?id=181200
|
||
<rdar://problem/35494754>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/setter-same-base-and-rhs-invalid-assertion-inside-access-case.js: Added.
|
||
(ctor):
|
||
(theFunc):
|
||
(run):
|
||
|
||
2018-01-02 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement BigIntConstructor and BigIntPrototype
|
||
https://bugs.webkit.org/show_bug.cgi?id=175359
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* bigIntTests.yaml:
|
||
* stress/big-int-as-key.js: Added.
|
||
* stress/big-int-constructor-gc.js: Added.
|
||
* stress/big-int-constructor-oom.js: Added.
|
||
* stress/big-int-constructor-properties.js: Added.
|
||
* stress/big-int-constructor-prototype-prop-descriptor.js: Added.
|
||
* stress/big-int-constructor-prototype.js: Added.
|
||
* stress/big-int-constructor.js: Added.
|
||
* stress/big-int-function-apply.js:
|
||
* stress/big-int-length.js: Added.
|
||
* stress/big-int-prop-descriptor.js: Added.
|
||
* stress/big-int-proto-constructor.js: Added.
|
||
* stress/big-int-proto-name.js: Added.
|
||
* stress/big-int-prototype-properties.js: Added.
|
||
* stress/big-int-prototype-proto.js: Added.
|
||
* stress/big-int-prototype-value-of.js: Added.
|
||
* stress/big-int-prototype-symbol-to-string-tag.js: Added.
|
||
* stress/big-int-prototype-to-string-apply.js: Added.
|
||
* stress/big-int-to-object.js: Added.
|
||
* stress/big-int-to-string.js: Added.
|
||
|
||
2017-12-28 Saam Barati <sbarati@apple.com>
|
||
|
||
Assertion used to determine if something is an async generator is wrong
|
||
https://bugs.webkit.org/show_bug.cgi?id=181168
|
||
<rdar://problem/35640560>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/async-generator-assertion.js: Added.
|
||
|
||
2017-12-21 Guillaume Emont <guijemont@igalia.com>
|
||
|
||
Skip stress/splay-flash-access tests on memory limited platforms
|
||
https://bugs.webkit.org/show_bug.cgi?id=181086
|
||
|
||
Reviewed by Carlos Alberto Lopez Perez.
|
||
|
||
These tests use about 185M of memory, and occasionally get OOM-killed
|
||
on memory limited platforms.
|
||
|
||
* stress/splay-flash-access-1ms.js:
|
||
* stress/splay-flash-access.js:
|
||
|
||
2017-12-21 Guillaume Emont <guijemont@igalia.com>
|
||
|
||
Skip slow jsc tests on embedded platforms
|
||
https://bugs.webkit.org/show_bug.cgi?id=180937
|
||
|
||
Reviewed by Carlos Alberto Lopez Perez.
|
||
|
||
The tests typeProfiler/deltablue-for-of.js and
|
||
typeProfiler/getter-richards.js take a very long time in the
|
||
ftl-no-cjit-type-profiler-force-poly-proto on embedded platform, and
|
||
thus always timeout. They should be skipped on these platforms.
|
||
|
||
* typeProfiler/deltablue-for-of.js: Skip on arm*/mips.
|
||
* typeProfiler/getter-richards.js: Skip on arm*/mips.
|
||
|
||
2017-12-19 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Do not check isValid() in op_new_regexp
|
||
https://bugs.webkit.org/show_bug.cgi?id=180970
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regexp-syntax-error-invalid-flags.js: Added.
|
||
(shouldThrow):
|
||
|
||
2017-12-18 Guillaume Emont <guijemont@igalia.com>
|
||
|
||
Skip stress/call-apply-exponential-bytecode-size.js unless x86-64 or arm64
|
||
https://bugs.webkit.org/show_bug.cgi?id=180712
|
||
|
||
Reviewed by Michael Catanzaro.
|
||
|
||
stress/call-apply-exponential-bytecode-size.js crashes if the
|
||
ExecutableAllocator's fixedExecutableMemoryPoolSize is less than 64
|
||
MB. Currently it is 64 MB or more only on x86-64 and arm64, so we
|
||
should skip the test on other platforms.
|
||
|
||
* stress/call-apply-exponential-bytecode-size.js:
|
||
|
||
2017-12-17 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] NewArrayBuffer should be sinked if it is only used for spreading
|
||
https://bugs.webkit.org/show_bug.cgi?id=179762
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/call-varargs-double-new-array-buffer.js: Added.
|
||
(assert):
|
||
(bar):
|
||
(foo):
|
||
* stress/call-varargs-spread-new-array-buffer.js: Added.
|
||
(assert):
|
||
(bar):
|
||
(foo):
|
||
* stress/call-varargs-spread-new-array-buffer2.js: Added.
|
||
(assert):
|
||
(bar):
|
||
(foo):
|
||
* stress/forward-varargs-double-new-array-buffer.js: Added.
|
||
(assert):
|
||
(test.baz):
|
||
(test.bar):
|
||
(test.foo):
|
||
(test):
|
||
* stress/new-array-buffer-sinking-osrexit.js: Added.
|
||
(target):
|
||
(test):
|
||
* stress/new-array-with-spread-double-new-array-buffer.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/new-array-with-spread-with-phantom-new-array-buffer.js: Added.
|
||
(shouldBe):
|
||
(target):
|
||
(test):
|
||
* stress/phantom-new-array-buffer-forward-varargs.js: Added.
|
||
(assert):
|
||
(test1.bar):
|
||
(test1.foo):
|
||
(test1):
|
||
(test2.bar):
|
||
(test2.foo):
|
||
(test3.baz):
|
||
(test3.bar):
|
||
(test3.foo):
|
||
(test4.baz):
|
||
(test4.bar):
|
||
(test4.foo):
|
||
* stress/phantom-new-array-buffer-forward-varargs2.js: Added.
|
||
(assert):
|
||
(test.baz):
|
||
(test.bar):
|
||
(test.foo):
|
||
(test):
|
||
* stress/phantom-new-array-buffer-osr-exit.js: Added.
|
||
(assert):
|
||
(baz):
|
||
(bar):
|
||
(effects):
|
||
(foo):
|
||
|
||
2017-12-14 Saam Barati <sbarati@apple.com>
|
||
|
||
The CleanUp after LICM is erroneously removing a Check
|
||
https://bugs.webkit.org/show_bug.cgi?id=180852
|
||
<rdar://problem/36063494>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/dont-run-cleanup-after-licm.js: Added.
|
||
|
||
2017-12-14 Michael Saboff <msaboff@apple.com>
|
||
|
||
REGRESSION (r225695): Repro crash on yahoo login page
|
||
https://bugs.webkit.org/show_bug.cgi?id=180761
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
New regression test.
|
||
|
||
* stress/regress-180761.js: Added.
|
||
|
||
2017-12-13 Keith Miller <keith_miller@apple.com>
|
||
|
||
JSObjects should have a mask for loading indexed properties
|
||
https://bugs.webkit.org/show_bug.cgi?id=180768
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/int16-put-by-val-in-and-out-of-bounds.js:
|
||
(test):
|
||
|
||
2017-12-13 Saam Barati <sbarati@apple.com>
|
||
|
||
Arrow functions need their own structure because they have different properties than sloppy functions
|
||
https://bugs.webkit.org/show_bug.cgi?id=180779
|
||
<rdar://problem/35814591>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/arrow-function-needs-its-own-structure.js: Added.
|
||
(assert):
|
||
(readPrototype):
|
||
(noInline.let.f1):
|
||
(noInline):
|
||
|
||
2017-12-13 Saam Barati <sbarati@apple.com>
|
||
|
||
Fix how JSFunction handles "caller" and "arguments" for functions that don't have those properties
|
||
https://bugs.webkit.org/show_bug.cgi?id=163579
|
||
<rdar://problem/35455798>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/caller-and-arguments-properties-for-functions-that-dont-have-them.js: Added.
|
||
(assert):
|
||
(test1):
|
||
(i.test1):
|
||
(i.test1.C):
|
||
(i.test1.async.foo):
|
||
(i.test1.foo):
|
||
(test2):
|
||
|
||
2017-12-13 Saam Barati <sbarati@apple.com>
|
||
|
||
TypeCheckHoistingPhase needs to emit a CheckStructureOrEmpty if it's doing it for |this|
|
||
https://bugs.webkit.org/show_bug.cgi?id=180734
|
||
<rdar://problem/35640547>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/type-check-hoisting-phase-hoist-check-structure-on-tdz-this-value.js: Added.
|
||
(__isPropertyOfType):
|
||
(__getProperties):
|
||
(__getObjects):
|
||
(__getRandomObject):
|
||
(theClass.):
|
||
(theClass):
|
||
(childClass):
|
||
(counter.catch):
|
||
|
||
2017-12-12 Saam Barati <sbarati@apple.com>
|
||
|
||
We need to model effects of Spread(@PhantomCreateRest) in Clobberize/PreciseLocalClobberize
|
||
https://bugs.webkit.org/show_bug.cgi?id=180725
|
||
<rdar://problem/35970511>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/model-effects-properly-of-spread-over-phantom-create-rest.js: Added.
|
||
(f1):
|
||
(f2):
|
||
(let.o2.valueOf):
|
||
|
||
2017-12-12 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Implement optimized WeakMap and WeakSet
|
||
https://bugs.webkit.org/show_bug.cgi?id=179929
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/weak-map-key.js:
|
||
* microbenchmarks/weak-set-key.js: Copied from JSTests/microbenchmarks/weak-map-key.js.
|
||
(assert):
|
||
(objectKey):
|
||
(let.start.Date.now):
|
||
* stress/basic-weakmap.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/basic-weakset.js: Added.
|
||
(shouldBe):
|
||
(test.set new):
|
||
* stress/weakmap-cse-set-break.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/weakmap-cse.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/weakmap-gc.js: Added.
|
||
(test):
|
||
* stress/weakset-cse-add-break.js: Added.
|
||
(shouldBe):
|
||
(test.set new):
|
||
* stress/weakset-cse.js: Added.
|
||
(shouldBe):
|
||
(test.set new):
|
||
* stress/weakset-gc.js: Added.
|
||
(test.set add):
|
||
(test.set new):
|
||
(test):
|
||
|
||
2017-12-12 Saam Barati <sbarati@apple.com>
|
||
|
||
ConstantFoldingPhase rule for GetMyArgumentByVal must check for negative indices
|
||
https://bugs.webkit.org/show_bug.cgi?id=180723
|
||
<rdar://problem/35859726>
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/get-my-argument-by-val-constant-folding.js: Added.
|
||
(test):
|
||
(catch):
|
||
|
||
2017-12-12 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESNext][BigInt] Implement BigInt literals and JSBigInt
|
||
https://bugs.webkit.org/show_bug.cgi?id=179000
|
||
|
||
Reviewed by Darin Adler and Yusuke Suzuki.
|
||
|
||
* bigIntTests.yaml: Added.
|
||
* stress/big-int-literal-line-terminator.js: Added.
|
||
* stress/big-int-literals.js: Added.
|
||
* stress/big-int-operations-error.js: Added.
|
||
* stress/big-int-type-of.js: Added.
|
||
* stress/big-int-white-space-trailing-leading.js: Added.
|
||
* stress/big-int-function-apply.js: Added.
|
||
|
||
2017-12-11 Saam Barati <sbarati@apple.com>
|
||
|
||
We need to disableCaching() in ErrorInstance when we materialize properties
|
||
https://bugs.webkit.org/show_bug.cgi?id=180343
|
||
<rdar://problem/35833002>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/disable-caching-when-lazy-materializing-error-property-on-put.js: Added.
|
||
(assert):
|
||
(makeError):
|
||
(storeToStack):
|
||
(storeToStackAlreadyMaterialized):
|
||
|
||
2017-12-05 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: don't eagerly checksum
|
||
https://bugs.webkit.org/show_bug.cgi?id=180441
|
||
<rdar://problem/35156628>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Checksum is now disabled, so tests only have <?> as the module
|
||
name.
|
||
|
||
* wasm/function-tests/nameSection.js:
|
||
* wasm/function-tests/stack-overflow.js:
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.assertOverflows):
|
||
(assertOverflows.assertThrows):
|
||
(assertOverflows):
|
||
* wasm/function-tests/stack-trace.js:
|
||
|
||
2017-12-04 JF Bastien <jfbastien@apple.com>
|
||
|
||
Proxy all functions, except the $ objects
|
||
https://bugs.webkit.org/show_bug.cgi?id=180375
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
It looks like this test may have broken some executions because I
|
||
call some internal objects. Explicitly ignore objects whose name
|
||
starts with "$" because it's a bad idea anyways.
|
||
|
||
* stress/proxy-all-the-parameters.js:
|
||
(generateObjects):
|
||
(get throw):
|
||
|
||
2017-12-04 Saam Barati <sbarati@apple.com>
|
||
|
||
We need to leave room on the top of the stack for the FTL TailCall slow path so it doesn't overwrite things we want to retrieve when doing a stack walk when throwing an exception
|
||
https://bugs.webkit.org/show_bug.cgi?id=180366
|
||
<rdar://problem/35685877>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/ftl-tail-call-throw-exception-from-slow-path-recover-stack-values.js: Added.
|
||
(theParent):
|
||
(test1.base.getParentStaticValue):
|
||
(test1.base):
|
||
(test1.__v_24888.prototype.set prop):
|
||
(test1.__v_24888):
|
||
(test2.base.getParentStaticValue):
|
||
(test2.base):
|
||
(test2.__v_24888.prototype.set prop):
|
||
(test2.__v_24888):
|
||
(test2):
|
||
|
||
2017-12-01 JF Bastien <jfbastien@apple.com>
|
||
|
||
Try proxying all function arguments
|
||
https://bugs.webkit.org/show_bug.cgi?id=180306
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/proxy-all-the-parameters.js: Added.
|
||
(isPropertyOfType):
|
||
(getProperties):
|
||
(generateObjects):
|
||
(getObjects):
|
||
(getFunctions):
|
||
(get throw):
|
||
(let.o.of.getObjects.let.f.of.getFunctions.catch):
|
||
|
||
2017-12-01 JF Bastien <jfbastien@apple.com>
|
||
|
||
JavaScriptCore: missing exception checks in Math functions that take more than one argument
|
||
https://bugs.webkit.org/show_bug.cgi?id=180297
|
||
<rdar://problem/35745556>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/math-exceptions.js: Added.
|
||
(get try):
|
||
(catch):
|
||
|
||
2017-12-01 JF Bastien <jfbastien@apple.com>
|
||
|
||
JavaScriptCore: add test for weird class static getters
|
||
https://bugs.webkit.org/show_bug.cgi?id=180281
|
||
<rdar://problem/35592139>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
I fixed a bug for it in r224927 and didn't add a test. Do so.
|
||
|
||
* stress/class-static-get-weird.js: Added.
|
||
(c.prototype.get name):
|
||
(c):
|
||
(c.prototype.get arguments):
|
||
(c.prototype.get caller):
|
||
(c.prototype.get length):
|
||
|
||
2017-12-01 Saam Barati <sbarati@apple.com>
|
||
|
||
Having a bad time needs to handle ArrayClass indexing type as well
|
||
https://bugs.webkit.org/show_bug.cgi?id=180274
|
||
<rdar://problem/35667869>
|
||
|
||
Reviewed by Keith Miller and Mark Lam.
|
||
|
||
* stress/array-prototype-slow-put-having-a-bad-time-2.js: Added.
|
||
(assert):
|
||
* stress/array-prototype-slow-put-having-a-bad-time.js: Added.
|
||
(assert):
|
||
|
||
2017-12-01 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: restore cached stack limit after out-call
|
||
https://bugs.webkit.org/show_bug.cgi?id=179106
|
||
<rdar://problem/35337525>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/function-tests/double-instance.js: Added.
|
||
(const.imp.boom):
|
||
(const.imp.get callAnother):
|
||
|
||
2017-11-30 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: improve stack trace
|
||
https://bugs.webkit.org/show_bug.cgi?id=179343
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Update the tests to follow the new format. Notably, SHA1 module
|
||
hash is now included in traces, and stubs are properly identified.
|
||
|
||
* wasm/assert.js: Add an assertion which matches regular expressions.
|
||
* wasm/function-tests/nameSection.js:
|
||
* wasm/function-tests/stack-overflow.js:
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.assertOverflows):
|
||
(assertOverflows.assertThrows.wasm.1):
|
||
(assertOverflows.assertThrows.wasm.0):
|
||
(assertOverflows.assertThrows):
|
||
(assertOverflows):
|
||
* wasm/function-tests/stack-trace.js:
|
||
(import.Builder.from.string_appeared_here.assert): Deleted.
|
||
* wasm/function-tests/trap-after-cross-instance-call.js:
|
||
(wasmFrameCountFromError):
|
||
* wasm/function-tests/trap-load-2.js:
|
||
(wasmFrameCountFromError):
|
||
* wasm/function-tests/trap-load.js:
|
||
(wasmFrameCountFromError):
|
||
|
||
2017-11-30 Mark Lam <mark.lam@apple.com>
|
||
|
||
jsc shell's flashHeapAccess() should not do JS work after releasing access to the heap.
|
||
https://bugs.webkit.org/show_bug.cgi?id=180219
|
||
<rdar://problem/35696536>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-180219.js: Added.
|
||
|
||
2017-11-30 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] operationHasIndexedProperty does not consider negative int32_t
|
||
https://bugs.webkit.org/show_bug.cgi?id=180190
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/operation-in-may-have-negative-int32-array-storage.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
* stress/operation-in-may-have-negative-int32-contiguous-array.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
* stress/operation-in-may-have-negative-int32-double-array.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
* stress/operation-in-may-have-negative-int32-generic-array.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
* stress/operation-in-may-have-negative-int32-int32-array.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
* stress/operation-in-may-have-negative-int32.js: Added.
|
||
(shouldBe):
|
||
(test2):
|
||
* stress/operation-in-negative-int32-cast.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
|
||
2017-11-28 JF Bastien <jfbastien@apple.com>
|
||
|
||
Strict and sloppy functions shouldn't share structure
|
||
https://bugs.webkit.org/show_bug.cgi?id=180103
|
||
<rdar://problem/35667847>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/get-by-id-strict-arguments.js: Added. Used to not throw
|
||
because the IC was wrong.
|
||
(foo):
|
||
(bar):
|
||
(baz):
|
||
(catch):
|
||
* stress/get-by-id-strict-callee.js: Added. Not strictly necessary
|
||
in this patch, but may as well test odd strict mode corner cases.
|
||
(bar):
|
||
(baz):
|
||
(catch):
|
||
* stress/get-by-id-strict-caller.js: Added. Also IC'd wrong.
|
||
(foo):
|
||
(bar):
|
||
(baz):
|
||
(catch):
|
||
* stress/get-by-id-strict-nested-arguments-2.js: Added. Same as
|
||
next file, but with invalidation of the FunctionExecutable's
|
||
singletonFunction() to hit SpeculativeJIT::compileNewFunction's
|
||
slower path.
|
||
(foo):
|
||
(bar.const.x):
|
||
(bar.const.y):
|
||
(bar):
|
||
(catch):
|
||
* stress/get-by-id-strict-nested-arguments.js: Added. Make sure
|
||
strict nesting works correctly.
|
||
(foo):
|
||
(bar.baz):
|
||
(bar):
|
||
* stress/strict-function-structure.js: Added. The test used to
|
||
assert in objectProtoFuncHasOwnProperty.
|
||
(foo):
|
||
(bar):
|
||
(baz):
|
||
* stress/strict-nested-function-structure.js: Added. Nesting.
|
||
(foo):
|
||
(bar):
|
||
(baz.boo):
|
||
(baz):
|
||
|
||
2017-11-29 Robin Morisset <rmorisset@apple.com>
|
||
|
||
The recursive tail call optimisation is wrong on closures
|
||
https://bugs.webkit.org/show_bug.cgi?id=179835
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/closure-recursive-tail-call.js: Added.
|
||
(makeClosure):
|
||
|
||
2017-11-27 JF Bastien <jfbastien@apple.com>
|
||
|
||
JavaScript rest function parameter with negative index leads to bad DFG abstract interpretation
|
||
https://bugs.webkit.org/show_bug.cgi?id=180051
|
||
<rdar://problem/35614371>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/rest-parameter-negative.js: Added.
|
||
(__f_5484):
|
||
(catch):
|
||
(__f_5485):
|
||
(__v_22598.catch):
|
||
|
||
2017-11-27 Saam Barati <sbarati@apple.com>
|
||
|
||
Spread can escape when CreateRest does not
|
||
https://bugs.webkit.org/show_bug.cgi?id=180057
|
||
<rdar://problem/35676119>
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/spread-escapes-but-create-rest-does-not.js: Added.
|
||
(assert):
|
||
(getProperties):
|
||
(theFunc):
|
||
(let.obj.valueOf):
|
||
|
||
2017-11-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Add NormalizeMapKey DFG IR
|
||
https://bugs.webkit.org/show_bug.cgi?id=179912
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/map-untyped-normalize-cse.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/map-untyped-normalize.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/set-untyped-normalize-cse.js: Added.
|
||
(shouldBe):
|
||
(set return.set has.set has):
|
||
* stress/set-untyped-normalize.js: Added.
|
||
(shouldBe):
|
||
(set return.set has):
|
||
|
||
2017-11-26 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Support DeleteById and DeleteByVal
|
||
https://bugs.webkit.org/show_bug.cgi?id=180022
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/delete-by-id.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
* stress/delete-by-val-ftl.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test2):
|
||
|
||
2017-11-26 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Introduce {Set,Map,WeakMap}Fields
|
||
https://bugs.webkit.org/show_bug.cgi?id=179925
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/map-set-clobber-map-get.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/map-set-does-not-clobber-set-has.js: Added.
|
||
(shouldBe):
|
||
* stress/map-set-does-not-clobber-weak-map-get.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/set-add-clobber-set-has.js: Added.
|
||
(shouldBe):
|
||
* stress/set-add-does-not-clobber-map-get.js: Added.
|
||
(shouldBe):
|
||
|
||
2017-11-24 Mark Lam <mark.lam@apple.com>
|
||
|
||
Move unsafe jsc shell test functions to the $vm object.
|
||
https://bugs.webkit.org/show_bug.cgi?id=179980
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* controlFlowProfiler/driver/driver.js:
|
||
* controlFlowProfiler/execution-count.js:
|
||
* controlFlowProfiler/if-statement.js:
|
||
* controlFlowProfiler/loop-statements.js:
|
||
* controlFlowProfiler/switch-statements.js:
|
||
* controlFlowProfiler/test-jit.js:
|
||
* exceptionFuzz/3d-cube.js:
|
||
* exceptionFuzz/date-format-xparb.js:
|
||
* exceptionFuzz/earley-boyer.js:
|
||
* heapProfiler/basic-edges.js:
|
||
* heapProfiler/property-edge-types.js:
|
||
* microbenchmarks/try-get-by-id-basic.js:
|
||
* microbenchmarks/try-get-by-id-polymorphic.js:
|
||
* modules/namespace-object-try-get.js:
|
||
* stress/argument-count-bytecode.js:
|
||
* stress/argument-intrinsic-basic.js:
|
||
* stress/argument-intrinsic-inlining-use-caller-arg.js:
|
||
* stress/argument-intrinsic-inlining-with-result-escape.js:
|
||
* stress/argument-intrinsic-inlining-with-vararg-with-enough-arguments.js:
|
||
* stress/argument-intrinsic-inlining-with-vararg.js:
|
||
* stress/argument-intrinsic-nested-inlining.js:
|
||
* stress/argument-intrinsic-not-convert-to-get-argument.js:
|
||
* stress/argument-intrinsic-with-stack-write.js:
|
||
* stress/arity-mismatch-get-argument.js:
|
||
* stress/array-message-passing.js:
|
||
* stress/array-push-with-force-exit.js:
|
||
* stress/check-dom-with-signature.js:
|
||
* stress/check-sub-class.js:
|
||
* stress/compare-eq-incomplete-profile.js:
|
||
* stress/custom-get-set-inline-caching-one-level-up-proto-chain.js:
|
||
* stress/do-eval-virtual-call-correctly.js:
|
||
* stress/dom-jit-with-poly-proto.js:
|
||
* stress/domjit-exception-ic.js:
|
||
* stress/domjit-exception.js:
|
||
* stress/domjit-getter-complex-with-incorrect-object.js:
|
||
* stress/domjit-getter-complex.js:
|
||
* stress/domjit-getter-poly.js:
|
||
* stress/domjit-getter-proto.js:
|
||
* stress/domjit-getter-super-poly.js:
|
||
* stress/domjit-getter-try-catch-getter-as-get-by-id-register-restoration.js:
|
||
* stress/domjit-getter-type-check.js:
|
||
* stress/domjit-getter.js:
|
||
* stress/exit-during-inlined-arity-fixup-recover-proper-frame.js:
|
||
* stress/for-in-proxy-target-changed-structure.js:
|
||
* stress/for-in-proxy.js:
|
||
* stress/generational-opaque-roots.js:
|
||
* stress/global-const-redeclaration-setting-2.js:
|
||
* stress/global-const-redeclaration-setting-3.js:
|
||
* stress/global-const-redeclaration-setting-4.js:
|
||
* stress/global-const-redeclaration-setting-5.js:
|
||
* stress/global-const-redeclaration-setting.js:
|
||
* stress/import-basic.js:
|
||
* stress/import-from-eval.js:
|
||
* stress/import-reject-with-exception.js:
|
||
* stress/import-syntax.js:
|
||
* stress/impure-get-own-property-slot-inline-cache.js:
|
||
* stress/is-constructor.js:
|
||
* stress/istypedarrayview-intrinsic.js:
|
||
* stress/jsc-setImpureGetterDelegate-on-bad-type.js:
|
||
* stress/jsc-test-functions-should-be-more-robust.js:
|
||
* stress/object-toString-with-proxy.js:
|
||
* stress/poly-proto-custom-value-and-accessor.js:
|
||
* stress/proxy-inline-cache.js:
|
||
* stress/re-execute-error-module.js:
|
||
* stress/regress-150532.js:
|
||
* stress/regress-156992.js:
|
||
* stress/regress-179619.js:
|
||
* stress/resources/shadow-chicken-support.js:
|
||
* stress/runtime-array.js:
|
||
* stress/sampling-profiler-microtasks.js:
|
||
* stress/shadow-chicken-enabled.js:
|
||
* stress/spread-correct-global-object-on-exception.js:
|
||
* stress/super-get-by-id.js:
|
||
* stress/tailCallForwardArguments.js:
|
||
* stress/to-object-intrinsic-boolean-edge.js:
|
||
* stress/to-object-intrinsic-null-or-undefined-edge.js:
|
||
* stress/to-object-intrinsic-number-edge.js:
|
||
* stress/to-object-intrinsic-object-edge.js:
|
||
* stress/to-object-intrinsic-string-edge.js:
|
||
* stress/to-object-intrinsic-symbol-edge.js:
|
||
* stress/to-object-intrinsic.js:
|
||
* stress/try-catch-custom-getter-as-get-by-id.js:
|
||
* stress/try-get-by-id-poly-proto.js:
|
||
* stress/try-get-by-id-should-spill-registers-dfg.js:
|
||
* stress/try-get-by-id.js:
|
||
* typeProfiler/arrow-functions.js:
|
||
* typeProfiler/basic.js:
|
||
* typeProfiler/captured.js:
|
||
* typeProfiler/classes.js:
|
||
* typeProfiler/dfg-jit-optimizations.js:
|
||
* typeProfiler/dictionary-mode.js:
|
||
* typeProfiler/es6-block-scoping.js:
|
||
* typeProfiler/es6-classes.js:
|
||
* typeProfiler/inheritance.js:
|
||
* typeProfiler/int52-dfg.js:
|
||
* typeProfiler/loop.js:
|
||
* typeProfiler/optional-fields.js:
|
||
* typeProfiler/overflow.js:
|
||
* typeProfiler/return.js:
|
||
* typeProfiler/symbol.js:
|
||
* typeProfiler/weird-prototype-chain.js:
|
||
|
||
2017-11-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Support MapSet / SetAdd intrinsics
|
||
https://bugs.webkit.org/show_bug.cgi?id=179858
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/map-has-and-set.js: Added.
|
||
(test):
|
||
* stress/map-set-check-failure.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
* stress/map-set-cse.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/set-add-check-failure.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(set shouldThrow):
|
||
* stress/set-add-cse.js: Added.
|
||
(shouldBe):
|
||
|
||
2017-11-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Allow poly proto for intrinsic getters
|
||
https://bugs.webkit.org/show_bug.cgi?id=179550
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
This change is also tested by existing tests.
|
||
|
||
1. stress/intrinsic-getter-with-poly-proto.js
|
||
2. stress/poly-proto-intrinsic-getter-correctness.js
|
||
|
||
* stress/intrinsic-getter-with-poly-proto-getter-change.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/intrinsic-getter-with-poly-proto-proto-change.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
|
||
2017-11-20 Guillaume Emont <guijemont@igalia.com>
|
||
|
||
Skip stress/unshiftCountSlowCase-correct-postCapacity.js on embedded Linux
|
||
https://bugs.webkit.org/show_bug.cgi?id=179744
|
||
|
||
Reviewed by Michael Catanzaro.
|
||
|
||
This test uses too much memory for our buildbots on these platforms
|
||
and gets OOM-killed.
|
||
|
||
* stress/unshiftCountSlowCase-correct-postCapacity.js:
|
||
Skip if $memoryLimited and linux.
|
||
|
||
2017-11-17 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: throw when a promise can't be created
|
||
https://bugs.webkit.org/show_bug.cgi?id=179826
|
||
<rdar://problem/35455813>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Test WebAssembly.{compile,instantiate} where promise creation
|
||
fails because of a stack overflow.
|
||
|
||
* wasm/js-api/promise-stack-overflow.js: Added.
|
||
(const.runNearStackLimit.f.const.t):
|
||
(async.testCompile):
|
||
(async.testInstantiate):
|
||
|
||
2017-11-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, mark regress-178385.js as memory exhausting
|
||
|
||
* stress/regress-178385.js:
|
||
|
||
2017-11-16 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Mark test262/test/language/statements/class/definition/fn-name-static-precedence.js as passing after r224927.
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-11-16 Robin Morisset <rmorisset@apple.com>
|
||
|
||
REGRESSION (r224592): oss-fuzz: jsc: Null-dereference READ in JSC::JSCell::isObject (4216)
|
||
https://bugs.webkit.org/show_bug.cgi?id=179763
|
||
<rdar://problem/35550513>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Just adding a slightly cleaned-up version of the original fuzzer-found test.
|
||
|
||
* stress/tdz-this-in-try-catch.js: Added.
|
||
(__v_6388):
|
||
(__v_6392):
|
||
|
||
2017-11-14 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Support Array::DirectArguments with OutOfBounds
|
||
https://bugs.webkit.org/show_bug.cgi?id=179594
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/direct-arguments-in-bounds-to-out-of-bounds.js: Added.
|
||
(shouldBe):
|
||
(args):
|
||
* stress/direct-arguments-out-of-bounds-watchpoint.js: Added.
|
||
(shouldBe):
|
||
(args):
|
||
|
||
2017-11-14 Saam Barati <sbarati@apple.com>
|
||
|
||
We need to set topCallFrame when calling Wasm::Memory::grow from the JIT
|
||
https://bugs.webkit.org/show_bug.cgi?id=179639
|
||
<rdar://problem/35513018>
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* wasm/function-tests/grow-memory-cause-gc.js: Added.
|
||
(escape):
|
||
(i.func):
|
||
|
||
2017-11-13 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add more overflow check book-keeping for MarkedArgumentBuffer.
|
||
https://bugs.webkit.org/show_bug.cgi?id=179634
|
||
<rdar://problem/35492517>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-179634.js: Added.
|
||
|
||
2017-11-13 Mark Lam <mark.lam@apple.com>
|
||
|
||
Make the jsc shell loadGetterFromGetterSetter() function more robust.
|
||
https://bugs.webkit.org/show_bug.cgi?id=179619
|
||
<rdar://problem/35492518>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-179619.js: Added.
|
||
|
||
2017-11-12 Mark Lam <mark.lam@apple.com>
|
||
|
||
We should ensure that operationStrCat2 and operationStrCat3 are never passed Symbols as arguments.
|
||
https://bugs.webkit.org/show_bug.cgi?id=179562
|
||
<rdar://problem/35467022>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* regress-179562.js: Added.
|
||
|
||
2017-11-08 Saam Barati <sbarati@apple.com>
|
||
|
||
A JSFunction's ObjectAllocationProfile should watch the poly prototype watchpoint so it can clear its object allocation profile
|
||
https://bugs.webkit.org/show_bug.cgi?id=177792
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* microbenchmarks/poly-proto-clear-js-function-allocation-profile.js: Added.
|
||
(assert):
|
||
(foo.Foo.prototype.ensureX):
|
||
(foo.Foo):
|
||
(foo):
|
||
(access):
|
||
|
||
2017-11-08 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Mark test262.yaml/test262/test/language/statements/try/tco-catch.js as passing.
|
||
https://bugs.webkit.org/show_bug.cgi?id=178592
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-11-08 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Turn recursive tail calls into loops
|
||
https://bugs.webkit.org/show_bug.cgi?id=176601
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Relanding after https://bugs.webkit.org/show_bug.cgi?id=178834.
|
||
|
||
Add some simple test that computes factorial in several ways, and other trivial computations.
|
||
They all tests the case where foo calls bar (in an inlineable way) that then does a tail call.
|
||
Depending on the nature of both calls, it is possible or not to turn the tail call into a loop.
|
||
I have no clear way of checking that the call was indeed transformed, but I can check that the code computes the right result
|
||
(which it doesn't if that tail call is transformed into a loop in the unsound cases).
|
||
|
||
* stress/inline-call-to-recursive-tail-call.js: Added.
|
||
(factorial.aux):
|
||
(factorial):
|
||
(factorial2.aux2):
|
||
(factorial2.id):
|
||
(factorial2):
|
||
(factorial3.aux3):
|
||
(factorial3):
|
||
(aux4):
|
||
(factorial4):
|
||
(foo):
|
||
(auxBar):
|
||
(bar):
|
||
(test):
|
||
|
||
2017-11-07 Mark Lam <mark.lam@apple.com>
|
||
|
||
AccessCase::generateImpl() should exclude the result register when restoring registers after a call.
|
||
https://bugs.webkit.org/show_bug.cgi?id=179355
|
||
<rdar://problem/35263053>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-179355.js: Added.
|
||
|
||
2017-11-05 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
JIT call inline caches should cache calls to objects with getCallData/getConstructData traps
|
||
https://bugs.webkit.org/show_bug.cgi?id=144458
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/dfg-internal-function-call.js: Added.
|
||
(target):
|
||
* microbenchmarks/dfg-internal-function-construct.js: Added.
|
||
(target):
|
||
* microbenchmarks/dfg-internal-function-not-handled-call.js: Added.
|
||
(target):
|
||
* microbenchmarks/dfg-internal-function-not-handled-construct.js: Added.
|
||
(target):
|
||
* stress/dfg-internal-function-call.js: Added.
|
||
(shouldBe):
|
||
(target):
|
||
* stress/dfg-internal-function-construct.js: Added.
|
||
(shouldBe):
|
||
(target):
|
||
* stress/internal-function-call.js: Added.
|
||
(shouldBe):
|
||
* stress/internal-function-construct.js: Added.
|
||
(shouldBe):
|
||
|
||
2017-11-05 Per Arne Vollan <pvollan@apple.com>
|
||
|
||
[Win] Skip stress/regress-178385.js.
|
||
https://bugs.webkit.org/show_bug.cgi?id=179298
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/regress-178385.js:
|
||
|
||
2017-11-03 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add test for ic with side effects
|
||
https://bugs.webkit.org/show_bug.cgi?id=179268
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/put-inline-cache-side-effects.js: Added.
|
||
(let.i.of.objs.keys):
|
||
(f):
|
||
|
||
2017-11-03 Mark Lam <mark.lam@apple.com>
|
||
|
||
CachedCall (and its clients) needs overflow checks.
|
||
https://bugs.webkit.org/show_bug.cgi?id=179185
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/regress-179185.js: Added.
|
||
|
||
2017-11-02 Michael Saboff <msaboff@apple.com>
|
||
|
||
DFG needs to handle code motion of code in for..in loop bodies
|
||
https://bugs.webkit.org/show_bug.cgi?id=179212
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
New regression test.
|
||
|
||
* stress/for-in-side-effects.js: Added.
|
||
(getPrototypeOf):
|
||
(reset):
|
||
(testWithoutFTL.f):
|
||
(testWithoutFTL):
|
||
(testWithFTL.f):
|
||
(testWithFTL):
|
||
|
||
2017-11-02 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
AI does not correctly model the clobber case of ArithClz32
|
||
https://bugs.webkit.org/show_bug.cgi?id=179188
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/arith-clz32-effects.js: Added.
|
||
(foo):
|
||
(valueOf):
|
||
|
||
2017-11-01 Michael Saboff <msaboff@apple.com>
|
||
|
||
Integer overflow in code generated by LoadVarargs processing in DFG and FTL.
|
||
https://bugs.webkit.org/show_bug.cgi?id=179140
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
New regression test.
|
||
|
||
* stress/regress-179140.js: Added.
|
||
(testWithoutFTL):
|
||
(testWithFTL):
|
||
|
||
2017-11-01 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Introduce @toObject
|
||
https://bugs.webkit.org/show_bug.cgi?id=178726
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-copywithin.js:
|
||
(shouldThrow):
|
||
* stress/object-constructor-boolean-edge.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-constructor-global.js: Added.
|
||
(shouldBe):
|
||
* stress/object-constructor-null-edge.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-constructor-number-edge.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-constructor-object-edge.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(i.arg):
|
||
* stress/object-constructor-string-edge.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-constructor-symbol-edge.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-constructor-undefined-edge.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/symbol-array-from.js: Added.
|
||
(shouldBe):
|
||
* stress/to-object-intrinsic-boolean-edge.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
* stress/to-object-intrinsic-null-or-undefined-edge.js: Added.
|
||
(shouldThrow):
|
||
* stress/to-object-intrinsic-number-edge.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
* stress/to-object-intrinsic-object-edge.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
(i.arg):
|
||
* stress/to-object-intrinsic-string-edge.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
* stress/to-object-intrinsic-symbol-edge.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
* stress/to-object-intrinsic.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(builtin.createBuiltin):
|
||
|
||
2017-10-27 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Introduce StringSlice
|
||
https://bugs.webkit.org/show_bug.cgi?id=178934
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/string-slice-empty.js: Added.
|
||
(slice):
|
||
* microbenchmarks/string-slice-one-char.js: Added.
|
||
(slice):
|
||
* microbenchmarks/string-slice.js: Added.
|
||
(slice):
|
||
|
||
2017-10-26 Michael Saboff <msaboff@apple.com>
|
||
|
||
REGRESSION(r222601): We fail to properly backtrack into a sub pattern of a parenthesis with non-zero minimum
|
||
https://bugs.webkit.org/show_bug.cgi?id=178890
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
New regression test.
|
||
|
||
* stress/regress-178890.js: Added.
|
||
|
||
2017-10-26 Mark Lam <mark.lam@apple.com>
|
||
|
||
JSRopeString::RopeBuilder::append() should check for overflows.
|
||
https://bugs.webkit.org/show_bug.cgi?id=178385
|
||
<rdar://problem/35027468>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-178385.js: Added.
|
||
|
||
2017-10-26 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r223961.
|
||
|
||
The change that required this has been rolled out.
|
||
|
||
Reverted changeset:
|
||
|
||
"Mark test262.yaml/test262/test/language/statements/try/tco-
|
||
catch.js as passing."
|
||
https://bugs.webkit.org/show_bug.cgi?id=178592
|
||
https://trac.webkit.org/changeset/223961
|
||
|
||
2017-10-25 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r223691 and r223729.
|
||
https://bugs.webkit.org/show_bug.cgi?id=178834
|
||
|
||
Broke Speedometer 2 React-Redux-TodoMVC test case (Requested
|
||
by rniwa on #webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"Turn recursive tail calls into loops"
|
||
https://bugs.webkit.org/show_bug.cgi?id=176601
|
||
https://trac.webkit.org/changeset/223691
|
||
|
||
"REGRESSION(r223691): DFGByteCodeParser.cpp:1483:83: warning:
|
||
comparison is always false due to limited range of data type
|
||
[-Wtype-limits]"
|
||
https://bugs.webkit.org/show_bug.cgi?id=178543
|
||
https://trac.webkit.org/changeset/223729
|
||
|
||
2017-10-25 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Mark test262.yaml/test262/test/language/statements/try/tco-catch.js as passing.
|
||
https://bugs.webkit.org/show_bug.cgi?id=178592
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-10-24 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Support NewStringObject
|
||
https://bugs.webkit.org/show_bug.cgi?id=178737
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/new-string-object.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2017-10-15 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] modules can be visited more than once when resolving bindings through "star" exports as long as the exportName is different each time
|
||
https://bugs.webkit.org/show_bug.cgi?id=178308
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-10-23 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Use fastJoin in Array#toString
|
||
https://bugs.webkit.org/show_bug.cgi?id=178062
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* microbenchmarks/contiguous-array-to-string.js: Added.
|
||
(target):
|
||
* microbenchmarks/double-array-to-string.js: Added.
|
||
(target):
|
||
* microbenchmarks/int32-array-to-string.js: Added.
|
||
(target):
|
||
|
||
2017-10-22 Zan Dobersek <zdobersek@igalia.com>
|
||
|
||
stress/check-string-ident.js is improperly skipped
|
||
https://bugs.webkit.org/show_bug.cgi?id=178642
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/check-string-ident.js: Drop the defaultNoEagerRun directive
|
||
since it enforces the run-jsc-stress-tests script to still set up the
|
||
test to run, despite the skip directive that's used before.
|
||
|
||
2017-10-20 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add a test case for r214334.
|
||
https://bugs.webkit.org/show_bug.cgi?id=169941
|
||
<rdar://problem/31221258>
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/regress-169941.js: Added.
|
||
|
||
2017-10-19 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: no VM / JS version of everything but Instance
|
||
https://bugs.webkit.org/show_bug.cgi?id=177473
|
||
|
||
Reviewed by Filip Pizlo, Saam Barati.
|
||
|
||
- Exceeding max on memory growth now returns a range error as per
|
||
spec. This is a (very minor) breaking change: it used to throw OOM
|
||
error. Update the corresponding test.
|
||
|
||
* wasm/js-api/memory-grow.js:
|
||
(assertEq):
|
||
* wasm/js-api/table.js:
|
||
(assert.throws):
|
||
|
||
2017-10-19 Mark Lam <mark.lam@apple.com>
|
||
|
||
Stringifier::appendStringifiedValue() is missing an exception check.
|
||
https://bugs.webkit.org/show_bug.cgi?id=178386
|
||
<rdar://problem/35027610>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-178386.js: Added.
|
||
|
||
2017-10-19 Michael Saboff <msaboff@apple.com>
|
||
|
||
Test262: RegExp/property-escapes/generated/Emoji_Component.js fails with current RegExp Unicode Properties implementation
|
||
https://bugs.webkit.org/show_bug.cgi?id=178521
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* test262.yaml: Enabled test262/test/built-ins/RegExp/property-escapes/generated/Emoji_Component.js as it
|
||
now passes with the current version (5.0) of the Emoji spec.
|
||
|
||
2017-10-19 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Turn recursive tail calls into loops
|
||
https://bugs.webkit.org/show_bug.cgi?id=176601
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Add some simple test that computes factorial in several ways, and other trivial computations.
|
||
They all tests the case where foo calls bar (in an inlineable way) that then does a tail call.
|
||
Depending on the nature of both calls, it is possible or not to turn the tail call into a loop.
|
||
I have no clear way of checking that the call was indeed transformed, but I can check that the code computes the right result
|
||
(which it doesn't if that tail call is transformed into a loop in the unsound cases).
|
||
|
||
* stress/inline-call-to-recursive-tail-call.js: Added.
|
||
(factorial.aux):
|
||
(factorial):
|
||
(factorial2.aux):
|
||
(factorial2.id):
|
||
(factorial2):
|
||
(factorial3.aux):
|
||
(factorial3):
|
||
(aux):
|
||
(factorial4):
|
||
(test):
|
||
|
||
2017-10-18 Mark Lam <mark.lam@apple.com>
|
||
|
||
RegExpObject::defineOwnProperty() does not need to compare values if no descriptor value is specified.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177600
|
||
<rdar://problem/34710985>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-177600.js: Added.
|
||
|
||
2017-10-18 Mark Lam <mark.lam@apple.com>
|
||
|
||
The compiler should always register a structure when it adds its transitionWatchPointSet.
|
||
https://bugs.webkit.org/show_bug.cgi?id=178420
|
||
<rdar://problem/34814024>
|
||
|
||
Reviewed by Saam Barati and Filip Pizlo.
|
||
|
||
* stress/regress-178420.js: Added.
|
||
(new.Array.10000.map):
|
||
|
||
2017-10-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] __proto__ getter should be fast
|
||
https://bugs.webkit.org/show_bug.cgi?id=178067
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/dfg-object-proto-accessor.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
* stress/dfg-object-proto-getter.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
* stress/dfg-object-prototype-of.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
* stress/dfg-reflect-get-prototype-of.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
* stress/intrinsic-getter-with-poly-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-get-prototype-of-filtered.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
(i.Cocoa):
|
||
* stress/object-get-prototype-of-mono-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-get-prototype-of-poly-mono-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-get-prototype-of-poly-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-proto-getter-filtered.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
(i.Cocoa):
|
||
* stress/object-proto-getter-poly-mono-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-proto-getter-poly-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-prototype-proto-accessors-should-throw-on-undefined-this.js:
|
||
* stress/string-proto.js: Added.
|
||
(shouldBe):
|
||
(target):
|
||
|
||
2017-10-17 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r223523.
|
||
|
||
A test for this change is failing on debug JSC bots.
|
||
|
||
Reverted changeset:
|
||
|
||
"[JSC] __proto__ getter should be fast"
|
||
https://bugs.webkit.org/show_bug.cgi?id=178067
|
||
https://trac.webkit.org/changeset/223523
|
||
|
||
2017-10-10 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] __proto__ getter should be fast
|
||
https://bugs.webkit.org/show_bug.cgi?id=178067
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/dfg-object-proto-accessor.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
* stress/dfg-object-proto-getter.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
* stress/dfg-object-prototype-of.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
* stress/dfg-reflect-get-prototype-of.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
* stress/object-get-prototype-of-filtered.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
(i.Cocoa):
|
||
* stress/object-get-prototype-of-mono-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-get-prototype-of-poly-mono-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-get-prototype-of-poly-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-proto-getter-filtered.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(target):
|
||
(i.Cocoa):
|
||
* stress/object-proto-getter-poly-mono-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-proto-getter-poly-proto.js: Added.
|
||
(shouldBe):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(target):
|
||
* stress/object-prototype-proto-accessors-should-throw-on-undefined-this.js:
|
||
* stress/string-proto.js: Added.
|
||
(shouldBe):
|
||
(target):
|
||
|
||
2017-10-14 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Reland "Add Above/Below comparisons for UInt32 patterns"
|
||
https://bugs.webkit.org/show_bug.cgi?id=177281
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/uint32-comparison-jump.js: Added.
|
||
(shouldBe):
|
||
(above):
|
||
(aboveOrEqual):
|
||
(below):
|
||
(belowOrEqual):
|
||
(notAbove):
|
||
(notAboveOrEqual):
|
||
(notBelow):
|
||
(notBelowOrEqual):
|
||
* stress/uint32-comparison.js: Added.
|
||
(shouldBe):
|
||
(above):
|
||
(aboveOrEqual):
|
||
(below):
|
||
(belowOrEqual):
|
||
(aboveTest):
|
||
(aboveOrEqualTest):
|
||
(belowTest):
|
||
(belowOrEqualTest):
|
||
|
||
2017-10-12 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
WebAssembly: Wasm functions should have either JSFunctionType or TypeOfShouldCallGetCallData
|
||
https://bugs.webkit.org/show_bug.cgi?id=178210
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/function-tests/trap-from-start-async.js:
|
||
(async.StartTrapsAsync):
|
||
* wasm/function-tests/trap-from-start.js:
|
||
(StartTraps):
|
||
* wasm/js-api/web-assembly-function.js:
|
||
(assert.eq.Object.getPrototypeOf):
|
||
* wasm/js-api/wrapper-function.js:
|
||
(return.new.WebAssembly.Module):
|
||
(assert.throws.makeInstance): Deleted.
|
||
(assert.throws.Bar): Deleted.
|
||
(assert.throws): Deleted.
|
||
|
||
2017-09-29 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Enable gigacage on iOS
|
||
https://bugs.webkit.org/show_bug.cgi?id=177586
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
Add tests for when Gigacage gets runtime disabled.
|
||
|
||
* stress/disable-gigacage-arrays.js: Added.
|
||
(foo):
|
||
* stress/disable-gigacage-strings.js: Added.
|
||
(foo):
|
||
* stress/disable-gigacage-typed-arrays.js: Added.
|
||
(foo):
|
||
|
||
2017-10-11 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
import.meta should not be assignable
|
||
https://bugs.webkit.org/show_bug.cgi?id=178202
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/import-meta-assignment.js: Added.
|
||
(shouldThrow):
|
||
(SyntaxError.import.meta.can.shouldThrow):
|
||
|
||
2017-10-11 Saam Barati <sbarati@apple.com>
|
||
|
||
Unreviewed. Actually skip certain type profiler tests in debug.
|
||
|
||
* typeProfiler.yaml:
|
||
* typeProfiler/deltablue-for-of.js:
|
||
* typeProfiler/getter-richards.js:
|
||
|
||
2017-10-11 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r223113 and r223121.
|
||
https://bugs.webkit.org/show_bug.cgi?id=178182
|
||
|
||
Reintroduced 20% regression on Kraken (Requested by rniwa on
|
||
#webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"Enable gigacage on iOS"
|
||
https://bugs.webkit.org/show_bug.cgi?id=177586
|
||
https://trac.webkit.org/changeset/223113
|
||
|
||
"Use one virtual allocation for all gigacages and their
|
||
runways"
|
||
https://bugs.webkit.org/show_bug.cgi?id=178050
|
||
https://trac.webkit.org/changeset/223121
|
||
|
||
2017-10-11 Michael Saboff <msaboff@apple.com>
|
||
|
||
Disable test262 named capture group tests with direct unicode names and with references before definitions
|
||
https://bugs.webkit.org/show_bug.cgi?id=178177
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Bugs to track fixing these test are:
|
||
https://bugs.webkit.org/show_bug.cgi?id=178174 -
|
||
"Add support in named capture group identifiers for direct surrogate pairs"
|
||
https://bugs.webkit.org/show_bug.cgi?id=178175 -
|
||
"Test262 failure with Named Capture Groups - using a reference before the group is defined"
|
||
|
||
* test262.yaml:
|
||
|
||
2017-10-11 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
Object properties are undefined in super.call() but not in this.call()
|
||
https://bugs.webkit.org/show_bug.cgi?id=177230
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/super-call-function-subclass.js: Added.
|
||
(assert):
|
||
(A.prototype.t):
|
||
(A):
|
||
* stress/super-dot-call-and-apply.js: Added.
|
||
(assert):
|
||
(A):
|
||
(A.prototype.call):
|
||
(A.prototype.apply):
|
||
(B.prototype.testSuper):
|
||
(B):
|
||
(const.obj.new.B.string_appeared_here.obj.testSuper.C):
|
||
(D.prototype.testSuper):
|
||
(D):
|
||
|
||
2017-10-10 Saam Barati <sbarati@apple.com>
|
||
|
||
The prototype cache should be aware of the Executable it generates a Structure for
|
||
https://bugs.webkit.org/show_bug.cgi?id=177907
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/dont-confuse-structures-from-different-executable-as-poly-proto.js: Added.
|
||
(assert):
|
||
(foo.C):
|
||
(foo):
|
||
(bar.C):
|
||
(bar):
|
||
(access):
|
||
(makeLongChain):
|
||
(accessY):
|
||
|
||
2017-10-09 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
`async` should be able to be used as an imported binding name
|
||
https://bugs.webkit.org/show_bug.cgi?id=176573
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/import-default-async.js: Added.
|
||
* modules/import-named-async-as.js: Added.
|
||
* modules/import-named-async.js: Added.
|
||
* modules/import-named-async/target.js: Added.
|
||
* modules/import-namespace-async.js: Added.
|
||
* test262.yaml:
|
||
|
||
2017-09-29 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Enable gigacage on iOS
|
||
https://bugs.webkit.org/show_bug.cgi?id=177586
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
Add tests for when Gigacage gets runtime disabled.
|
||
|
||
* stress/disable-gigacage-arrays.js: Added.
|
||
(foo):
|
||
* stress/disable-gigacage-strings.js: Added.
|
||
(foo):
|
||
* stress/disable-gigacage-typed-arrays.js: Added.
|
||
(foo):
|
||
|
||
2017-10-09 Michael Saboff <msaboff@apple.com>
|
||
|
||
Implement RegExp Unicode property escapes
|
||
https://bugs.webkit.org/show_bug.cgi?id=172069
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
Enabled Unicode Property tests.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-10-09 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r223015 and r223025.
|
||
https://bugs.webkit.org/show_bug.cgi?id=178093
|
||
|
||
Regressed Kraken on iOS by 20% (Requested by keith_mi_ on
|
||
#webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"Enable gigacage on iOS"
|
||
https://bugs.webkit.org/show_bug.cgi?id=177586
|
||
http://trac.webkit.org/changeset/223015
|
||
|
||
"Unreviewed, disable Gigacage on ARM64 Linux"
|
||
https://bugs.webkit.org/show_bug.cgi?id=177586
|
||
http://trac.webkit.org/changeset/223025
|
||
|
||
2017-10-09 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Update expectations for test262 tests that pass after r223043.
|
||
https://bugs.webkit.org/show_bug.cgi?id=176685
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-10-09 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r223022.
|
||
|
||
This change introduced 18 test262 failures.
|
||
|
||
Reverted changeset:
|
||
|
||
"`async` should be able to be used as an imported binding
|
||
name"
|
||
https://bugs.webkit.org/show_bug.cgi?id=176573
|
||
http://trac.webkit.org/changeset/223022
|
||
|
||
2017-10-09 Saam Barati <sbarati@apple.com>
|
||
|
||
3 poly-proto JSC tests timing out on debug after r222827
|
||
https://bugs.webkit.org/show_bug.cgi?id=177880
|
||
<rdar://problem/34817122>
|
||
|
||
Unreviewed.
|
||
|
||
I'm skipping these type profiler tests on debug since they are long running.
|
||
|
||
* typeProfiler/deltablue-for-of.js:
|
||
* typeProfiler/getter-richards.js:
|
||
|
||
2017-10-09 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
Safari 10 /11 problem with if (!await get(something)).
|
||
https://bugs.webkit.org/show_bug.cgi?id=176685
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-await-basic.js:
|
||
(awaitEpression.async):
|
||
* stress/async-await-syntax.js:
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntax):
|
||
(prototype.testTopLevelAsyncAwaitSyntaxStrictMode):
|
||
|
||
2017-10-08 Saam Barati <sbarati@apple.com>
|
||
|
||
Unreviewed. Make some type profiler tests run for less time to avoid debug timeouts.
|
||
|
||
* typeProfiler/deltablue-for-of.js:
|
||
* typeProfiler/getter-richards.js:
|
||
|
||
2017-10-07 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
`async` should be able to be used as an imported binding name
|
||
https://bugs.webkit.org/show_bug.cgi?id=176573
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* modules/import-default-async.js: Added.
|
||
* modules/import-named-async-as.js: Added.
|
||
* modules/import-named-async.js: Added.
|
||
* modules/import-named-async/target.js: Added.
|
||
* modules/import-namespace-async.js: Added.
|
||
|
||
2017-09-29 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Enable gigacage on iOS
|
||
https://bugs.webkit.org/show_bug.cgi?id=177586
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
Add tests for when Gigacage gets runtime disabled.
|
||
|
||
* stress/disable-gigacage-arrays.js: Added.
|
||
(foo):
|
||
* stress/disable-gigacage-strings.js: Added.
|
||
(foo):
|
||
* stress/disable-gigacage-typed-arrays.js: Added.
|
||
(foo):
|
||
|
||
2017-10-06 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r222791 and r222873.
|
||
https://bugs.webkit.org/show_bug.cgi?id=178031
|
||
|
||
Caused crashes with workers/wasm LayoutTests (Requested by
|
||
ryanhaddad on #webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"WebAssembly: no VM / JS version of everything but Instance"
|
||
https://bugs.webkit.org/show_bug.cgi?id=177473
|
||
http://trac.webkit.org/changeset/222791
|
||
|
||
"WebAssembly: address no VM / JS follow-ups"
|
||
https://bugs.webkit.org/show_bug.cgi?id=177887
|
||
http://trac.webkit.org/changeset/222873
|
||
|
||
2017-10-05 Saam Barati <sbarati@apple.com>
|
||
|
||
Make sure all prototypes under poly proto get added into the VM's prototype map
|
||
https://bugs.webkit.org/show_bug.cgi?id=177909
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/poly-proto-prototype-map-having-a-bad-time.js: Added.
|
||
(assert):
|
||
(foo.C):
|
||
(foo):
|
||
(set x):
|
||
|
||
2017-09-30 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Introduce import.meta
|
||
https://bugs.webkit.org/show_bug.cgi?id=177703
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* modules/import-meta-syntax.js: Added.
|
||
(shouldThrow):
|
||
(shouldNotThrow):
|
||
* modules/import-meta.js: Added.
|
||
* modules/import-meta/cocoa.js: Added.
|
||
* modules/resources/assert.js:
|
||
(export.shouldNotThrow):
|
||
* stress/import-syntax.js:
|
||
|
||
2017-10-04 Saam Barati <sbarati@apple.com>
|
||
|
||
Make pertinent AccessCases watch the poly proto watchpoint
|
||
https://bugs.webkit.org/show_bug.cgi?id=177765
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* microbenchmarks/poly-proto-and-non-poly-proto-same-ic.js: Added.
|
||
(assert):
|
||
(foo.C):
|
||
(foo):
|
||
(validate):
|
||
* stress/poly-proto-clear-stub.js: Added.
|
||
(assert):
|
||
(foo.C):
|
||
(foo):
|
||
|
||
2017-10-04 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Remove failure expectation for async-func-decl-dstr-obj-id-put-unresolvable-no-strict.js.
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-10-04 Saam Barati <sbarati@apple.com>
|
||
|
||
3 poly-proto JSC tests timing out on debug after r222827
|
||
https://bugs.webkit.org/show_bug.cgi?id=177880
|
||
|
||
Rubber stamped by Mark Lam.
|
||
|
||
* microbenchmarks/poly-proto-access.js:
|
||
* typeProfiler/deltablue-for-of.js:
|
||
* typeProfiler/getter-richards.js:
|
||
|
||
2017-10-04 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Unreviewed, marking tco-catch.js as a failure after test262 update
|
||
https://bugs.webkit.org/show_bug.cgi?id=177859
|
||
|
||
* test262.yaml:
|
||
|
||
2017-10-04 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, marking one async iterator test262 test failed
|
||
https://bugs.webkit.org/show_bug.cgi?id=177859
|
||
|
||
* test262.yaml:
|
||
|
||
2017-10-04 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[Test262] Update Test262 to Oct 4 version
|
||
https://bugs.webkit.org/show_bug.cgi?id=177859
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
Let's rebaseline test262. Since it includes the latest changes to ArrayIterator::next,
|
||
we no longer need to mark it skip/fail. Also this update includes bunch of BigInt tests.
|
||
|
||
* test262.yaml:
|
||
* test262/harness/promiseHelper.js: Renamed from JSTests/test262/harness/PromiseHelper.js.
|
||
(checkSequence):
|
||
* test262/harness/typeCoercion.js:
|
||
(testCoercibleToIndexZero):
|
||
(testCoercibleToIndexOne):
|
||
(testCoercibleToIndexFromIndex):
|
||
(testNotCoercibleToIndex.testPrimitiveValue):
|
||
(testNotCoercibleToInteger):
|
||
(testCoercibleToBigIntZero.testPrimitiveValue):
|
||
(testCoercibleToBigIntZero):
|
||
(testCoercibleToBigIntOne.testPrimitiveValue):
|
||
(testCoercibleToBigIntOne):
|
||
(testPrimitiveValue):
|
||
(testCoercibleToBigIntFromBigInt):
|
||
(testNotCoercibleToBigInt.testPrimitiveValue):
|
||
(testNotCoercibleToBigInt.testStringValue):
|
||
(testNotCoercibleToBigInt):
|
||
* test262/test/built-ins/Array/from/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Array/length/define-own-prop-length-overflow-realm.js:
|
||
* test262/test/built-ins/Array/of/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Array/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Array/prototype/concat/create-proto-from-ctor-realm-array.js:
|
||
* test262/test/built-ins/Array/prototype/concat/create-proto-from-ctor-realm-non-array.js:
|
||
* test262/test/built-ins/Array/prototype/filter/create-proto-from-ctor-realm-array.js:
|
||
* test262/test/built-ins/Array/prototype/filter/create-proto-from-ctor-realm-non-array.js:
|
||
* test262/test/built-ins/Array/prototype/map/create-proto-from-ctor-realm-array.js:
|
||
* test262/test/built-ins/Array/prototype/map/create-proto-from-ctor-realm-non-array.js:
|
||
* test262/test/built-ins/Array/prototype/slice/create-proto-from-ctor-realm-array.js:
|
||
* test262/test/built-ins/Array/prototype/slice/create-proto-from-ctor-realm-non-array.js:
|
||
* test262/test/built-ins/Array/prototype/splice/create-proto-from-ctor-realm-array.js:
|
||
* test262/test/built-ins/Array/prototype/splice/create-proto-from-ctor-realm-non-array.js:
|
||
* test262/test/built-ins/ArrayBuffer/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/BigInt/asIntN/bigint-tobigint.js:
|
||
(testCoercibleToBigIntZero):
|
||
(testCoercibleToBigIntOne):
|
||
(testNotCoercibleToBigInt):
|
||
(MyError): Deleted.
|
||
(valueOf): Deleted.
|
||
(toString): Deleted.
|
||
(Symbol.toPrimitive): Deleted.
|
||
* test262/test/built-ins/BigInt/asIntN/bits-toindex.js:
|
||
(testCoercibleToIndexZero):
|
||
(testCoercibleToIndexOne):
|
||
(testNotCoercibleToIndex):
|
||
(MyError): Deleted.
|
||
(assert.sameValue.BigInt.asIntN.valueOf): Deleted.
|
||
(assert.sameValue.BigInt.asIntN.toString): Deleted.
|
||
(BigInt.asIntN.Symbol.toPrimitive): Deleted.
|
||
(BigInt.asIntN.valueOf): Deleted.
|
||
(BigInt.asIntN.toString): Deleted.
|
||
* test262/test/built-ins/BigInt/asUintN/arithmetic.js: Added.
|
||
* test262/test/built-ins/BigInt/asUintN/asUintN.js: Added.
|
||
* test262/test/built-ins/BigInt/asUintN/bigint-tobigint.js: Added.
|
||
(testCoercibleToBigIntZero):
|
||
(testCoercibleToBigIntOne):
|
||
(testNotCoercibleToBigInt):
|
||
* test262/test/built-ins/BigInt/asUintN/bits-toindex.js: Added.
|
||
(testCoercibleToIndexZero):
|
||
(testCoercibleToIndexOne):
|
||
(testNotCoercibleToIndex):
|
||
* test262/test/built-ins/BigInt/asUintN/length.js: Added.
|
||
* test262/test/built-ins/BigInt/asUintN/name.js: Added.
|
||
* test262/test/built-ins/BigInt/asUintN/order-of-steps.js: Added.
|
||
(bits.valueOf):
|
||
(bigint.valueOf):
|
||
* test262/test/built-ins/BigInt/prototype/valueOf/length.js: Added.
|
||
* test262/test/built-ins/BigInt/prototype/valueOf/name.js: Added.
|
||
* test262/test/built-ins/BigInt/prototype/valueOf/prop-desc.js: Added.
|
||
* test262/test/built-ins/BigInt/prototype/valueOf/return.js: Added.
|
||
* test262/test/built-ins/BigInt/prototype/valueOf/this-value-invalid-object-throws.js: Added.
|
||
* test262/test/built-ins/BigInt/prototype/valueOf/this-value-invalid-primitive-throws.js: Added.
|
||
* test262/test/built-ins/Boolean/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/DataView/proto-from-ctor-realm-sab.js:
|
||
* test262/test/built-ins/DataView/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Date/proto-from-ctor-realm-one.js:
|
||
* test262/test/built-ins/Date/proto-from-ctor-realm-two.js:
|
||
* test262/test/built-ins/Date/proto-from-ctor-realm-zero.js:
|
||
* test262/test/built-ins/Error/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Function/call-bind-this-realm-undef.js:
|
||
* test262/test/built-ins/Function/call-bind-this-realm-value.js:
|
||
* test262/test/built-ins/Function/internals/Call/class-ctor-realm.js:
|
||
* test262/test/built-ins/Function/internals/Construct/base-ctor-revoked-proxy-realm.js:
|
||
* test262/test/built-ins/Function/internals/Construct/derived-return-val-realm.js:
|
||
* test262/test/built-ins/Function/internals/Construct/derived-this-uninitialized-realm.js:
|
||
* test262/test/built-ins/Function/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Function/prototype/bind/get-fn-realm.js:
|
||
* test262/test/built-ins/Function/prototype/bind/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/GeneratorFunction/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/JSON/stringify/bigint-order.js: Added.
|
||
(replacer):
|
||
(BigInt.prototype.toJSON):
|
||
* test262/test/built-ins/JSON/stringify/bigint-replacer.js: Added.
|
||
(replacer):
|
||
* test262/test/built-ins/JSON/stringify/bigint-tojson.js: Added.
|
||
(BigInt.prototype.toJSON):
|
||
* test262/test/built-ins/JSON/stringify/bigint.js:
|
||
* test262/test/built-ins/Map/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Number/S9.3.1_A2_U180E.js:
|
||
* test262/test/built-ins/Number/S9.3.1_A3_T1_U180E.js:
|
||
* test262/test/built-ins/Number/S9.3.1_A3_T2_U180E.js:
|
||
* test262/test/built-ins/Number/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Object/proto-from-ctor.js:
|
||
* test262/test/built-ins/Promise/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Proxy/apply/arguments-realm.js:
|
||
* test262/test/built-ins/Proxy/apply/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/construct/arguments-realm.js:
|
||
* test262/test/built-ins/Proxy/construct/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/construct/trap-is-undefined-proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/Proxy/defineProperty/desc-realm.js:
|
||
* test262/test/built-ins/Proxy/defineProperty/null-handler-realm.js:
|
||
* test262/test/built-ins/Proxy/defineProperty/targetdesc-configurable-desc-not-configurable-realm.js:
|
||
* test262/test/built-ins/Proxy/defineProperty/targetdesc-not-compatible-descriptor-not-configurable-target-realm.js:
|
||
* test262/test/built-ins/Proxy/defineProperty/targetdesc-not-compatible-descriptor-realm.js:
|
||
* test262/test/built-ins/Proxy/defineProperty/targetdesc-undefined-not-configurable-descriptor-realm.js:
|
||
* test262/test/built-ins/Proxy/defineProperty/targetdesc-undefined-target-is-not-extensible-realm.js:
|
||
* test262/test/built-ins/Proxy/defineProperty/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/deleteProperty/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/get-fn-realm.js:
|
||
* test262/test/built-ins/Proxy/get/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/getOwnPropertyDescriptor/result-type-is-not-object-nor-undefined-realm.js:
|
||
* test262/test/built-ins/Proxy/getOwnPropertyDescriptor/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/getPrototypeOf/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/has/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/isExtensible/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/ownKeys/return-not-list-object-throws-realm.js:
|
||
* test262/test/built-ins/Proxy/ownKeys/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/preventExtensions/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/set/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/trap-is-not-callable-realm.js:
|
||
* test262/test/built-ins/RegExp/S15.10.2.12_A1_T1.js:
|
||
(i6.replace):
|
||
(i6b.replace):
|
||
* test262/test/built-ins/RegExp/dotall/with-dotall-unicode.js:
|
||
* test262/test/built-ins/RegExp/dotall/with-dotall.js:
|
||
* test262/test/built-ins/RegExp/dotall/without-dotall-unicode.js:
|
||
* test262/test/built-ins/RegExp/dotall/without-dotall.js:
|
||
* test262/test/built-ins/RegExp/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/RegExp/prototype/Symbol.split/splitter-proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/RegExp/u180e.js: Added.
|
||
* test262/test/built-ins/Set/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/SharedArrayBuffer/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/String/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Fail_2.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_2.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_3.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/String.prototype.endsWith_Success_4.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/coerced-values-of-position.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/endsWith.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/length.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/name.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-position-as-symbol.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-position.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-as-symbol.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring-regexp-test.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-searchstring.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-this-as-symbol.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/return-abrupt-from-this.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/return-false-if-search-start-is-less-than-zero.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/return-true-if-searchstring-is-empty.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/searchstring-found-with-position.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/searchstring-found-without-position.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/searchstring-is-regexp-throws.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/searchstring-not-found-with-position.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/searchstring-not-found-without-position.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/this-is-null-throws.js:
|
||
* test262/test/built-ins/String/prototype/endsWith/this-is-undefined-throws.js:
|
||
* test262/test/built-ins/String/prototype/includes/String.prototype.includes_FailBadLocation.js:
|
||
* test262/test/built-ins/String/prototype/includes/String.prototype.includes_FailLocation.js:
|
||
* test262/test/built-ins/String/prototype/includes/String.prototype.includes_FailMissingLetter.js:
|
||
* test262/test/built-ins/String/prototype/includes/String.prototype.includes_Success.js:
|
||
* test262/test/built-ins/String/prototype/includes/String.prototype.includes_SuccessNoLocation.js:
|
||
* test262/test/built-ins/String/prototype/includes/String.prototype.includes_lengthProp.js:
|
||
* test262/test/built-ins/String/prototype/includes/coerced-values-of-position.js:
|
||
* test262/test/built-ins/String/prototype/includes/includes.js:
|
||
* test262/test/built-ins/String/prototype/includes/length.js:
|
||
* test262/test/built-ins/String/prototype/includes/name.js:
|
||
* test262/test/built-ins/String/prototype/includes/return-abrupt-from-position-as-symbol.js:
|
||
* test262/test/built-ins/String/prototype/includes/return-abrupt-from-position.js:
|
||
* test262/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-as-symbol.js:
|
||
* test262/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring-regexp-test.js:
|
||
* test262/test/built-ins/String/prototype/includes/return-abrupt-from-searchstring.js:
|
||
* test262/test/built-ins/String/prototype/includes/return-abrupt-from-this-as-symbol.js:
|
||
* test262/test/built-ins/String/prototype/includes/return-abrupt-from-this.js:
|
||
* test262/test/built-ins/String/prototype/includes/return-false-with-out-of-bounds-position.js:
|
||
* test262/test/built-ins/String/prototype/includes/return-true-if-searchstring-is-empty.js:
|
||
* test262/test/built-ins/String/prototype/includes/searchstring-found-with-position.js:
|
||
* test262/test/built-ins/String/prototype/includes/searchstring-found-without-position.js:
|
||
* test262/test/built-ins/String/prototype/includes/searchstring-is-regexp-throws.js:
|
||
* test262/test/built-ins/String/prototype/includes/searchstring-not-found-with-position.js:
|
||
* test262/test/built-ins/String/prototype/includes/searchstring-not-found-without-position.js:
|
||
* test262/test/built-ins/String/prototype/includes/this-is-null-throws.js:
|
||
* test262/test/built-ins/String/prototype/includes/this-is-undefined-throws.js:
|
||
* test262/test/built-ins/String/prototype/toLocaleLowerCase/Final_Sigma_U180E.js:
|
||
* test262/test/built-ins/String/prototype/toLowerCase/Final_Sigma_U180E.js:
|
||
* test262/test/built-ins/String/prototype/trim/u180e.js:
|
||
* test262/test/built-ins/Symbol/for/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/hasInstance/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/isConcatSpreadable/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/iterator/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/keyFor/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/match/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/replace/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/search/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/species/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/split/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/toPrimitive/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/toStringTag/cross-realm.js:
|
||
* test262/test/built-ins/Symbol/unscopables/cross-realm.js:
|
||
* test262/test/built-ins/ThrowTypeError/distinct-cross-realm.js:
|
||
* test262/test/built-ins/TypedArrays/buffer-arg-proto-from-ctor-realm-sab.js:
|
||
* test262/test/built-ins/TypedArrays/buffer-arg-proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/TypedArrays/internals/DefineOwnProperty/detached-buffer-realm.js:
|
||
* test262/test/built-ins/TypedArrays/internals/Get/detached-buffer-realm.js:
|
||
* test262/test/built-ins/TypedArrays/internals/GetOwnProperty/detached-buffer-realm.js:
|
||
* test262/test/built-ins/TypedArrays/internals/HasProperty/detached-buffer-realm.js:
|
||
* test262/test/built-ins/TypedArrays/internals/Set/detached-buffer-realm.js:
|
||
* test262/test/built-ins/TypedArrays/length-arg-proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/TypedArrays/no-args-proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/TypedArrays/object-arg-proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/TypedArrays/typedarray-arg-other-ctor-buffer-ctor-custom-species-proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/TypedArrays/typedarray-arg-proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/TypedArrays/typedarray-arg-same-ctor-buffer-ctor-species-custom-proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/WeakMap/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/WeakSet/proto-from-ctor-realm.js:
|
||
* test262/test/built-ins/parseFloat/S15.1.2.3_A2_T10_U180E.js:
|
||
* test262/test/built-ins/parseInt/S15.1.2.2_A2_T10_U180E.js:
|
||
* test262/test/intl402/NumberFormat/prototype/formatToParts/length.js:
|
||
* test262/test/language/comments/mongolian-vowel-separator-multi.js:
|
||
* test262/test/language/comments/mongolian-vowel-separator-single-eval.js:
|
||
* test262/test/language/comments/mongolian-vowel-separator-single.js:
|
||
* test262/test/language/eval-code/indirect/realm.js:
|
||
* test262/test/language/expressions/assignment/dstr-obj-rest-order.js: Added.
|
||
(o.get z):
|
||
(o.get a):
|
||
* test262/test/language/expressions/call/eval-realm-indirect.js:
|
||
* test262/test/language/expressions/generators/eval-body-proto-realm.js:
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-bigint.js: Added.
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-non-finite.js: Added.
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-number-extremes.js: Added.
|
||
* test262/test/language/expressions/greater-than-or-equal/bigint-and-number.js:
|
||
* test262/test/language/expressions/greater-than/bigint-and-bigint.js: Added.
|
||
* test262/test/language/expressions/greater-than/bigint-and-non-finite.js: Added.
|
||
* test262/test/language/expressions/greater-than/bigint-and-number-extremes.js: Added.
|
||
* test262/test/language/expressions/greater-than/bigint-and-number.js:
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-bigint.js: Added.
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-non-finite.js: Added.
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-number-extremes.js: Added.
|
||
* test262/test/language/expressions/less-than-or-equal/bigint-and-number.js:
|
||
* test262/test/language/expressions/less-than/bigint-and-bigint.js: Added.
|
||
* test262/test/language/expressions/less-than/bigint-and-non-finite.js: Added.
|
||
* test262/test/language/expressions/less-than/bigint-and-number-extremes.js: Added.
|
||
* test262/test/language/expressions/less-than/bigint-and-number.js:
|
||
* test262/test/language/expressions/new/non-ctor-err-realm.js:
|
||
* test262/test/language/expressions/super/realm.js:
|
||
* test262/test/language/expressions/tagged-template/cache-realm.js:
|
||
* test262/test/language/expressions/template-literal/mongolian-vowel-separator-eval.js:
|
||
* test262/test/language/expressions/template-literal/mongolian-vowel-separator.js:
|
||
* test262/test/language/literals/regexp/mongolian-vowel-separator-eval.js:
|
||
* test262/test/language/literals/regexp/mongolian-vowel-separator.js:
|
||
* test262/test/language/literals/string/mongolian-vowel-separator-eval.js:
|
||
* test262/test/language/literals/string/mongolian-vowel-separator.js:
|
||
* test262/test/language/statements/for-of/dstr-obj-rest-order.js: Added.
|
||
(o.get z):
|
||
(o.get a):
|
||
* test262/test/language/statements/for-of/iterator-next-reference.js:
|
||
(next):
|
||
(iterator.next): Deleted.
|
||
(x.of.iterable.): Deleted.
|
||
(x.of.iterable.get return): Deleted.
|
||
(x.of.iterable.iterator.next): Deleted.
|
||
* test262/test/language/types/reference/get-value-prop-base-primitive-realm.js:
|
||
* test262/test/language/types/reference/put-value-prop-base-primitive-realm.js:
|
||
* test262/test/language/white-space/mongolian-vowel-separator-eval.js:
|
||
* test262/test/language/white-space/mongolian-vowel-separator.js:
|
||
* test262/test262-Revision.txt:
|
||
|
||
2017-10-03 Saam Barati <sbarati@apple.com>
|
||
|
||
Implement polymorphic prototypes
|
||
https://bugs.webkit.org/show_bug.cgi?id=176391
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/poly-proto-access.js: Added.
|
||
(assert):
|
||
(foo.C):
|
||
(foo.C.prototype.get bar):
|
||
(foo):
|
||
(bar):
|
||
* microbenchmarks/poly-proto-put-transition-speed.js: Added.
|
||
(assert):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(performSet):
|
||
* microbenchmarks/poly-proto-setter-speed.js: Added.
|
||
(assert):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo.C.prototype.set p):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(performSet):
|
||
* stress/constructor-with-return.js:
|
||
(i.tests.forEach.Constructor):
|
||
(i.tests.forEach):
|
||
(tests.forEach.Constructor): Deleted.
|
||
(tests.forEach): Deleted.
|
||
* stress/dom-jit-with-poly-proto.js: Added.
|
||
(assert):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(validate):
|
||
* stress/poly-proto-custom-value-and-accessor.js: Added.
|
||
(assert):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(items.forEach):
|
||
(set get for):
|
||
* stress/poly-proto-intrinsic-getter-correctness.js: Added.
|
||
(assert):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(foo):
|
||
* stress/poly-proto-miss.js: Added.
|
||
(makePolyProtoInstanceWithNullPrototype.foo.C):
|
||
(makePolyProtoInstanceWithNullPrototype.foo):
|
||
(makePolyProtoInstanceWithNullPrototype):
|
||
(assert):
|
||
(validate):
|
||
* stress/poly-proto-op-in-caching.js: Added.
|
||
(assert):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(validate):
|
||
(validate2):
|
||
* stress/poly-proto-put-transition.js: Added.
|
||
(assert):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(performSet):
|
||
(i.obj.__proto__.set p):
|
||
* stress/poly-proto-set-prototype.js: Added.
|
||
(assert):
|
||
(let.alternateProto.get x):
|
||
(let.alternateProto2.get y):
|
||
(let.alternateProto2.get x):
|
||
(foo.C):
|
||
(foo):
|
||
(validate):
|
||
* stress/poly-proto-setter.js: Added.
|
||
(assert):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo.C.prototype.set p):
|
||
(makePolyProtoObject.foo.C.prototype.get p):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(performSet):
|
||
* stress/poly-proto-using-inheritance.js: Added.
|
||
(assert):
|
||
(foo.C):
|
||
(foo.C.prototype.get baz):
|
||
(foo):
|
||
(bar.C):
|
||
(bar):
|
||
(validate):
|
||
* stress/primitive-poly-proto.js: Added.
|
||
(makePolyProtoInstance.foo.C):
|
||
(makePolyProtoInstance.foo):
|
||
(makePolyProtoInstance):
|
||
(assert):
|
||
(validate):
|
||
* stress/prototype-is-not-js-object.js: Added.
|
||
(foo.bar):
|
||
(foo):
|
||
(assert):
|
||
(validate):
|
||
* stress/try-get-by-id-poly-proto.js: Added.
|
||
(assert):
|
||
(makePolyProtoObject.foo.C):
|
||
(makePolyProtoObject.foo):
|
||
(makePolyProtoObject):
|
||
(tryGetByIdText):
|
||
(x.__proto__.get bar):
|
||
(validate):
|
||
* typeProfiler/overflow.js:
|
||
|
||
2017-10-03 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: no VM / JS version of everything but Instance
|
||
https://bugs.webkit.org/show_bug.cgi?id=177473
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
- Exceeding max on memory growth now returns a range error as per
|
||
spec. This is a (very minor) breaking change: it used to throw OOM
|
||
error. Update the corresponding test.
|
||
|
||
* wasm/js-api/memory-grow.js:
|
||
(assertEq):
|
||
* wasm/js-api/table.js:
|
||
(assert.throws):
|
||
|
||
2017-10-03 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip JSC test stress/regress-159779-2.js on debug.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177204
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/regress-159779-2.js:
|
||
|
||
2017-10-02 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
ChakraCore/test/Function/apply3.js is resulting wrong result in x86_64
|
||
https://bugs.webkit.org/show_bug.cgi?id=175642
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* ChakraCore/test/Function/apply3.baseline-jsc:
|
||
|
||
2017-10-01 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r222564.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177720
|
||
|
||
"It regressed JetStream by 2% on iOS caused by a 50%
|
||
regression on the bigfib subtest" (Requested by saamyjoon on
|
||
#webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"Add Above/Below comparisons for UInt32 patterns"
|
||
https://bugs.webkit.org/show_bug.cgi?id=177281
|
||
http://trac.webkit.org/changeset/222564
|
||
|
||
2017-09-29 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Support ArrayPush with multiple args
|
||
https://bugs.webkit.org/show_bug.cgi?id=175823
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/array-push-0.js: Added.
|
||
(arrayPush0):
|
||
* microbenchmarks/array-push-1.js: Added.
|
||
(arrayPush1):
|
||
* microbenchmarks/array-push-2.js: Added.
|
||
(arrayPush2):
|
||
* microbenchmarks/array-push-3.js: Added.
|
||
(arrayPush3):
|
||
* stress/array-push-multiple-contiguous.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-double-nan.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-double.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-int32.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-many-contiguous.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-many-double.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-many-int32.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-many-storage.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-storage.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-with-force-exit.js: Added.
|
||
(target.createBuiltin):
|
||
|
||
2017-09-29 Saam Barati <sbarati@apple.com>
|
||
|
||
Custom GetterSetterAccessCase does not use the correct slotBase when making call
|
||
https://bugs.webkit.org/show_bug.cgi?id=177639
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/custom-get-set-inline-caching-one-level-up-proto-chain.js: Added.
|
||
(assert):
|
||
(Class):
|
||
(items.forEach):
|
||
(set get for):
|
||
|
||
2017-09-29 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r222563, r222565, and r222581.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177675
|
||
|
||
"It causes a crash when playing youtube videos" (Requested by
|
||
saamyjoon on #webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"[DFG] Support ArrayPush with multiple args"
|
||
https://bugs.webkit.org/show_bug.cgi?id=175823
|
||
http://trac.webkit.org/changeset/222563
|
||
|
||
"Unreviewed, build fix after r222563"
|
||
https://bugs.webkit.org/show_bug.cgi?id=175823
|
||
http://trac.webkit.org/changeset/222565
|
||
|
||
"Unreviewed, fix x86 breaking due to exhausted registers"
|
||
https://bugs.webkit.org/show_bug.cgi?id=175823
|
||
http://trac.webkit.org/changeset/222581
|
||
|
||
2017-09-28 Mark Lam <mark.lam@apple.com>
|
||
|
||
test262: Unexpected passes after r222617 and r222618.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177622
|
||
<rdar://problem/34725960>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Update test262.yaml for tests that are now passing.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-09-27 Michael Saboff <msaboff@apple.com>
|
||
|
||
REGRESSION(210837): RegExp containing failed non-zero minimum greedy groups incorrectly match
|
||
https://bugs.webkit.org/show_bug.cgi?id=177570
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
New regression test.
|
||
|
||
* stress/regress-177570.js: Added.
|
||
|
||
2017-09-28 Michael Saboff <msaboff@apple.com>
|
||
|
||
Heap out of bounds read in JSC::Yarr::Parser<JSC::Yarr::SyntaxChecker, unsigned char>::peek()
|
||
https://bugs.webkit.org/show_bug.cgi?id=177423
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Updated regression test.
|
||
|
||
* stress/regress-177423.js:
|
||
(catch):
|
||
|
||
2017-09-27 Mark Lam <mark.lam@apple.com>
|
||
|
||
JSArray::canFastCopy() should fail if the source and destination arrays are the same.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177584
|
||
<rdar://problem/34463903>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-177584.js: Added.
|
||
(assertEqual):
|
||
(Array.prototype.Symbol.species):
|
||
|
||
2017-09-27 Saam Barati <sbarati@apple.com>
|
||
|
||
Propagate hasBeenFlattenedBefore in Structure's transition constructor and fix our for-in caching to fail when the prototype chain has an object with a dictionary structure
|
||
https://bugs.webkit.org/show_bug.cgi?id=177523
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/prototype-chain-has-dictionary-structure-for-in-caching.js: Added.
|
||
(assert):
|
||
(Test):
|
||
(addMethods.Test.prototype.string_appeared_here.i.methodNumber):
|
||
(addMethods):
|
||
(i.Test.prototype.propName):
|
||
|
||
2017-09-27 Mark Lam <mark.lam@apple.com>
|
||
|
||
Yarr::Parser::tryConsumeGroupName() should check for the end of the pattern.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177423
|
||
<rdar://problem/34621320>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/regress-177423.js: Added.
|
||
|
||
2017-09-27 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Add Above/Below comparisons for UInt32 patterns
|
||
https://bugs.webkit.org/show_bug.cgi?id=177281
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/uint32-comparison-jump.js: Added.
|
||
(shouldBe):
|
||
(above):
|
||
(aboveOrEqual):
|
||
(below):
|
||
(belowOrEqual):
|
||
(notAbove):
|
||
(notAboveOrEqual):
|
||
(notBelow):
|
||
(notBelowOrEqual):
|
||
* stress/uint32-comparison.js: Added.
|
||
(shouldBe):
|
||
(above):
|
||
(aboveOrEqual):
|
||
(below):
|
||
(belowOrEqual):
|
||
(aboveTest):
|
||
(aboveOrEqualTest):
|
||
(belowTest):
|
||
(belowOrEqualTest):
|
||
|
||
2017-09-25 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Support ArrayPush with multiple args
|
||
https://bugs.webkit.org/show_bug.cgi?id=175823
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/array-push-0.js: Added.
|
||
(arrayPush0):
|
||
* microbenchmarks/array-push-1.js: Added.
|
||
(arrayPush1):
|
||
* microbenchmarks/array-push-2.js: Added.
|
||
(arrayPush2):
|
||
* microbenchmarks/array-push-3.js: Added.
|
||
(arrayPush3):
|
||
* stress/array-push-multiple-contiguous.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-double-nan.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-double.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-int32.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-many-contiguous.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-many-double.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-many-int32.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-many-storage.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/array-push-multiple-storage.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2017-09-26 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r222518.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177507
|
||
|
||
Break the High Sierra build (Requested by yusukesuzuki on
|
||
#webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"Add Above/Below comparisons for UInt32 patterns"
|
||
https://bugs.webkit.org/show_bug.cgi?id=177281
|
||
http://trac.webkit.org/changeset/222518
|
||
|
||
2017-09-26 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Add Above/Below comparisons for UInt32 patterns
|
||
https://bugs.webkit.org/show_bug.cgi?id=177281
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/uint32-comparison-jump.js: Added.
|
||
(shouldBe):
|
||
(above):
|
||
(aboveOrEqual):
|
||
(below):
|
||
(belowOrEqual):
|
||
(notAbove):
|
||
(notAboveOrEqual):
|
||
(notBelow):
|
||
(notBelowOrEqual):
|
||
* stress/uint32-comparison.js: Added.
|
||
(shouldBe):
|
||
(above):
|
||
(aboveOrEqual):
|
||
(below):
|
||
(belowOrEqual):
|
||
(aboveTest):
|
||
(aboveOrEqualTest):
|
||
(belowTest):
|
||
(belowOrEqualTest):
|
||
|
||
2017-09-23 Keith Miller <keith_miller@apple.com>
|
||
|
||
Fix infinite looping test262 test
|
||
https://bugs.webkit.org/show_bug.cgi?id=177412
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
This test was poorly designed since failing it would cause the vm
|
||
to inifinite loop. I've fixed it locally and will fix it on github pending
|
||
the results of next weeks tc39 meeting.
|
||
|
||
* test262.yaml:
|
||
* test262/test/language/statements/for-of/iterator-next-reference.js:
|
||
|
||
2017-09-23 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: $.agent became $262.agent in test262 update
|
||
https://bugs.webkit.org/show_bug.cgi?id=177407
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* test262.yaml:
|
||
~320 tests pass now that we correctly make $262 available.
|
||
|
||
2017-09-22 Keith Miller <keith_miller@apple.com>
|
||
|
||
Speculatively change iteration protocall to use the same next function
|
||
https://bugs.webkit.org/show_bug.cgi?id=175653
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Change test to match the new iteration behavior.
|
||
|
||
* stress/spread-optimized-properly.js:
|
||
|
||
2017-09-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Profile array vector length for array allocation
|
||
https://bugs.webkit.org/show_bug.cgi?id=177051
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/new-array-buffer-vector-profile.js: Added.
|
||
(target):
|
||
|
||
2017-09-22 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r222380.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177352
|
||
|
||
Octane/box2d shows 8% regression (Requested by yusukesuzuki on
|
||
#webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"[DFG][FTL] Profile array vector length for array allocation"
|
||
https://bugs.webkit.org/show_bug.cgi?id=177051
|
||
http://trac.webkit.org/changeset/222380
|
||
|
||
2017-09-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Profile array vector length for array allocation
|
||
https://bugs.webkit.org/show_bug.cgi?id=177051
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/new-array-buffer-vector-profile.js: Added.
|
||
(target):
|
||
|
||
2017-09-21 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Skip new hanging test262 tests.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177326
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-09-21 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Mark 6 test262 tests as passing.
|
||
https://bugs.webkit.org/show_bug.cgi?id=177307
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-09-20 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Unreviewed follow-up to r222311.
|
||
|
||
* test262/harness/sta.js:
|
||
* test262/test/built-ins/Array/from/calling-from-valid-1-noStrict.js:
|
||
* test262/test/built-ins/Array/from/calling-from-valid-1-onlyStrict.js:
|
||
* test262/test/built-ins/Array/from/calling-from-valid-2.js:
|
||
* test262/test/built-ins/Array/from/elements-added-after.js:
|
||
* test262/test/built-ins/Array/from/elements-deleted-after.js:
|
||
* test262/test/built-ins/Array/from/elements-updated-after.js:
|
||
* test262/test/built-ins/Array/from/from-array.js:
|
||
* test262/test/built-ins/Array/from/mapfn-is-not-callable-typeerror.js:
|
||
* test262/test/built-ins/Array/from/mapfn-throws-exception.js:
|
||
* test262/test/built-ins/Array/from/source-array-boundary.js:
|
||
* test262/test/built-ins/Array/from/source-object-constructor.js:
|
||
* test262/test/built-ins/Array/from/source-object-iterator-1.js:
|
||
* test262/test/built-ins/Array/from/source-object-iterator-2.js:
|
||
* test262/test/built-ins/Array/from/source-object-length.js:
|
||
* test262/test/built-ins/Array/from/source-object-missing.js:
|
||
* test262/test/built-ins/Array/from/source-object-without.js:
|
||
* test262/test/built-ins/Array/from/this-null.js:
|
||
* test262/test/built-ins/Function/prototype/toString/line-terminator-normalisation-CR.js:
|
||
* test262/test/language/line-terminators/S7.3_A3.2_T1.js:
|
||
* test262/test/language/literals/numeric/7.8.3-1gs.js:
|
||
* test262/test/language/literals/numeric/7.8.3-2gs.js:
|
||
* test262/test/language/literals/numeric/7.8.3-3gs.js:
|
||
* test262/test/language/literals/regexp/7.8.5-1gs.js:
|
||
* test262/test/language/literals/string/7.8.4-1gs.js:
|
||
Fix some files that I failed to update when I applied my patch.
|
||
|
||
2017-09-20 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Update test262 tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=177220
|
||
|
||
Reviewed by Saam Barati and Yusuke Suzuki.
|
||
|
||
* test262.yaml:
|
||
* test262/test262-Revision.txt:
|
||
New rebaselined expectations for all tests.
|
||
|
||
* test262/*:
|
||
Updated.
|
||
|
||
2017-09-17 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Remove ToThis more aggressively
|
||
https://bugs.webkit.org/show_bug.cgi?id=177056
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/generator-with-this-strict.js: Added.
|
||
(shouldBe):
|
||
(generator):
|
||
(target):
|
||
* stress/generator-with-this.js: Added.
|
||
(shouldBe):
|
||
(generator):
|
||
(target):
|
||
|
||
2017-09-17 Michael Saboff <msaboff@apple.com>
|
||
|
||
https://bugs.webkit.org/show_bug.cgi?id=177038
|
||
Add an option to run-jsc-stress-tests to limit tests variations to a basic set
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/unshiftCountSlowCase-correct-postCapacity.js: Disabled this test on ARM64 iOS devices
|
||
as it dies using too much memory.
|
||
|
||
2017-09-15 Saam Barati <sbarati@apple.com>
|
||
|
||
Arity fixup during inlining should do a 2 phase commit so it properly recovers the frame in case of exit
|
||
https://bugs.webkit.org/show_bug.cgi?id=176981
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/exit-during-inlined-arity-fixup-recover-proper-frame.js: Added.
|
||
(assert):
|
||
(verify):
|
||
(func):
|
||
(const.bar.createBuiltin):
|
||
|
||
2017-09-14 Saam Barati <sbarati@apple.com>
|
||
|
||
It should be valid to exit before each set when doing arity fixup when inlining
|
||
https://bugs.webkit.org/show_bug.cgi?id=176948
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/arity-fixup-inlining-dont-generate-invalid-use.js: Added.
|
||
(baz):
|
||
(bar):
|
||
(foo):
|
||
|
||
2017-09-14 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Add PrivateSymbolMode::{Include,Exclude} for PropertyNameArray
|
||
https://bugs.webkit.org/show_bug.cgi?id=176867
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* microbenchmarks/object-get-own-property-symbols.js: Added.
|
||
(test):
|
||
|
||
2017-09-13 Mark Lam <mark.lam@apple.com>
|
||
|
||
Rolling out r221832: Regresses Speedometer by ~4% and Dromaeo CSS YUI by ~20%.
|
||
https://bugs.webkit.org/show_bug.cgi?id=176888
|
||
<rdar://problem/34381832>
|
||
|
||
Not reviewed.
|
||
|
||
* stress/op_mod-ConstVar.js:
|
||
* stress/op_mod-VarConst.js:
|
||
* stress/op_mod-VarVar.js:
|
||
|
||
2017-09-13 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip 3 op_mod tests on Debug JSC bots.
|
||
https://bugs.webkit.org/show_bug.cgi?id=176630
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/op_mod-ConstVar.js:
|
||
* stress/op_mod-VarConst.js:
|
||
* stress/op_mod-VarVar.js:
|
||
|
||
2017-09-13 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Fix Array allocation in Object.keys
|
||
https://bugs.webkit.org/show_bug.cgi?id=176826
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/object-own-property-keys.js: Added.
|
||
(shouldBe):
|
||
|
||
2017-09-12 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Optimize WeakMap::get by adding intrinsic and fixup
|
||
https://bugs.webkit.org/show_bug.cgi?id=176010
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/weak-map-key.js: Added.
|
||
(assert):
|
||
(objectKey):
|
||
(let.start.Date.now):
|
||
|
||
2017-09-12 Mark Lam <mark.lam@apple.com>
|
||
|
||
REGRESSION: 3 stress/op_mod (and op_div) tests timing out on Debug JSC bots.
|
||
https://bugs.webkit.org/show_bug.cgi?id=176630
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
Debug builds are just slow, and these tests do a lot. They pass when I run them
|
||
locally on my MacBook Pro. So, I'm bumping their timing multiplier to 2.0x as
|
||
a speculative fix for the bots that are seeing these fail.
|
||
|
||
I also undid the skipping of the op_mod tests for debug builds.
|
||
|
||
* stress/op_div-ConstVar.js:
|
||
* stress/op_div-VarConst.js:
|
||
* stress/op_div-VarVar.js:
|
||
* stress/op_mod-ConstVar.js:
|
||
* stress/op_mod-VarConst.js:
|
||
* stress/op_mod-VarVar.js:
|
||
|
||
2017-09-12 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip stress/value-to-boolean.js on Debug bots.
|
||
https://bugs.webkit.org/show_bug.cgi?id=176787
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/value-to-boolean.js:
|
||
|
||
2017-09-11 Mark Lam <mark.lam@apple.com>
|
||
|
||
Change test expectation for test262/test/language/statements/try/tco-catch.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=176749
|
||
|
||
Rubber stamped by Keith Miller.
|
||
|
||
It's been failing since at least r221821. I'm changing the test expectation to
|
||
fail to green the bots while I investigate some more.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-09-11 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r221854.
|
||
|
||
The test added with this change fails on 32-bit JSC bots.
|
||
|
||
Reverted changeset:
|
||
|
||
"[DFG] Optimize WeakMap::get by adding intrinsic and fixup"
|
||
https://bugs.webkit.org/show_bug.cgi?id=176010
|
||
http://trac.webkit.org/changeset/221854
|
||
|
||
2017-09-03 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Optimize WeakMap::get by adding intrinsic and fixup
|
||
https://bugs.webkit.org/show_bug.cgi?id=176010
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/weak-map-key.js: Added.
|
||
(assert):
|
||
(objectKey):
|
||
(let.start.Date.now):
|
||
|
||
2017-09-09 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Optimize Object.keys by using careful array allocation
|
||
https://bugs.webkit.org/show_bug.cgi?id=176654
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* microbenchmarks/object-keys.js: Added.
|
||
(test):
|
||
|
||
2017-09-09 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Error should compute .stack and friends lazily
|
||
https://bugs.webkit.org/show_bug.cgi?id=176645
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* ChakraCore.yaml: Skip test that was testing non-standard behavior of these fields.
|
||
* microbenchmarks/new-error.js: Added.
|
||
* microbenchmarks/throw.js: Added.
|
||
|
||
2017-09-09 Mark Lam <mark.lam@apple.com>
|
||
|
||
[Re-landing] Use JIT probes for DFG OSR exit.
|
||
https://bugs.webkit.org/show_bug.cgi?id=175144
|
||
<rdar://problem/33437050>
|
||
|
||
Not reviewed. Original patch reviewed by Saam Barati.
|
||
|
||
Disable these tests for debug builds because they run too slow with the new OSR exit.
|
||
|
||
* stress/op_mod-ConstVar.js:
|
||
* stress/op_mod-VarConst.js:
|
||
* stress/op_mod-VarVar.js:
|
||
|
||
2017-09-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] NewArrayWithSize(size)'s size does not care negative zero
|
||
https://bugs.webkit.org/show_bug.cgi?id=176300
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/new-array-with-size-div.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(i.i):
|
||
|
||
2017-09-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] PutByVal with Array::Generic is too generic
|
||
https://bugs.webkit.org/show_bug.cgi?id=176345
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/object-assign-symbols.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-assign.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(i.shouldBe.JSON.stringify.test):
|
||
|
||
2017-09-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] GetByVal(ObjectUse with Array::Generic, StringUse/SymbolUse) should be supported
|
||
https://bugs.webkit.org/show_bug.cgi?id=176590
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/object-iterate-symbols.js: Added.
|
||
(test):
|
||
* microbenchmarks/object-iterate.js: Added.
|
||
(test):
|
||
* stress/object-iterate-symbols.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/object-iterate.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2017-09-07 Per Arne Vollan <pvollan@apple.com>
|
||
|
||
[Win32] 10 JSC stress tests are failing.
|
||
https://bugs.webkit.org/show_bug.cgi?id=176538
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Skip tests on Windows to make the bots green.
|
||
|
||
* ChakraCore.yaml:
|
||
* stress/date-relaxed.js:
|
||
|
||
2017-09-06 Mark Lam <mark.lam@apple.com>
|
||
|
||
constructGenericTypedArrayViewWithArguments() is missing an exception check.
|
||
https://bugs.webkit.org/show_bug.cgi?id=176485
|
||
<rdar://problem/33898874>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/regress-176485.js: Added.
|
||
|
||
2017-09-05 Saam Barati <sbarati@apple.com>
|
||
|
||
isNotCellSpeculation is wrong with respect to SpecEmpty
|
||
https://bugs.webkit.org/show_bug.cgi?id=176429
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* microbenchmarks/is-not-cell-speculation-for-empty-value.js: Added.
|
||
(Foo):
|
||
|
||
2017-09-05 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: Completion values for control flow do not match the spec
|
||
https://bugs.webkit.org/show_bug.cgi?id=171265
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/completion-value.js:
|
||
Condensed test for completion values in top level statements.
|
||
|
||
* stress/super-get-by-id.js:
|
||
ClassDeclaration when evaled no longer produce values. Convert
|
||
these to ClassExpressions so they produce the class value.
|
||
|
||
* ChakraCore/test/GlobalFunctions/evalreturns3.baseline-jsc:
|
||
This is a progression for currect spec behavior.
|
||
|
||
* mozilla/mozilla-tests.yaml:
|
||
This test is now outdated, so mark it as failing for that reason.
|
||
|
||
* test262.yaml:
|
||
Passing all "cptn" completion value tests.
|
||
|
||
2017-09-04 Saam Barati <sbarati@apple.com>
|
||
|
||
typeCheckHoistingPhase may emit a CheckStructure on the empty value which leads to a dereference of zero on 64 bit platforms
|
||
https://bugs.webkit.org/show_bug.cgi?id=176317
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/dont-crash-when-hoist-check-structure-on-tdz.js: Added.
|
||
(Foo):
|
||
|
||
2017-09-03 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Efficiently execute number#toString()
|
||
https://bugs.webkit.org/show_bug.cgi?id=170007
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* microbenchmarks/number-to-string-strength-reduction.js: Added.
|
||
(test):
|
||
* microbenchmarks/number-to-string-with-radix-10.js: Added.
|
||
(test):
|
||
* microbenchmarks/number-to-string-with-radix-cse.js: Added.
|
||
(test):
|
||
* microbenchmarks/number-to-string-with-radix.js: Added.
|
||
(test):
|
||
* stress/number-to-string-strength-reduction.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/number-to-string-with-radix-10.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/number-to-string-with-radix-cse.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/number-to-string-with-radix-invalid.js: Added.
|
||
(shouldThrow):
|
||
* stress/number-to-string-with-radix-watchpoint.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
(i.i.1e3.Number.prototype.toString):
|
||
* stress/number-to-string-with-radix.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
|
||
2017-09-02 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Relax arity requirement
|
||
https://bugs.webkit.org/show_bug.cgi?id=175523
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arity-mismatch-arguments-length.js: Added.
|
||
(shouldBe):
|
||
(test1):
|
||
(test):
|
||
* stress/arity-mismatch-get-argument.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
(test):
|
||
* stress/arity-mismatch-inlining-extra-slots.js: Added.
|
||
(shouldBe):
|
||
(inlineTarget):
|
||
(test):
|
||
* stress/arity-mismatch-inlining.js: Added.
|
||
(shouldBe):
|
||
(inlineTarget):
|
||
(test):
|
||
* stress/arity-mismatch-rest.js: Added.
|
||
(shouldBe):
|
||
(test2):
|
||
(test1):
|
||
(test):
|
||
|
||
2017-08-31 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Fix "name" and "length" of Proxy revoke function
|
||
https://bugs.webkit.org/show_bug.cgi?id=176155
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-08-31 Saam Barati <sbarati@apple.com>
|
||
|
||
Graph::methodOfGettingAValueProfileFor compares NodeOrigin instead of the semantic CodeOrigin
|
||
https://bugs.webkit.org/show_bug.cgi?id=176206
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/compare-semantic-origin-op-negate-method-of-getting-a-value-profile.js: Added.
|
||
(a):
|
||
(b):
|
||
(foo):
|
||
|
||
2017-08-31 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip two slow JSC tests after r221422.
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/regexp-prototype-match-on-too-long-rope.js:
|
||
* stress/regexp-prototype-test-on-too-long-rope.js:
|
||
|
||
2017-08-31 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Unreviewed, skipping slow tests.
|
||
|
||
These tests are now timing out. They would have always been slow. The timeouts are probably because OOMs
|
||
work differently now.
|
||
|
||
* stress/regexp-prototype-exec-on-too-long-rope.js:
|
||
* stress/string-prototype-charCodeAt-on-too-long-rope.js:
|
||
|
||
2017-08-31 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Use reifying system for "name" property of builtin JSFunction
|
||
https://bugs.webkit.org/show_bug.cgi?id=175260
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/accessors-get-set-prefix.js:
|
||
* stress/builtin-function-name.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(shouldBe.JSON.stringify.Object.getOwnPropertyDescriptor):
|
||
(shouldBe.JSON.stringify.Object.getOwnPropertyNames.Array.prototype.filter.sort):
|
||
* stress/private-name-as-anonymous-builtin.js: Added.
|
||
(shouldBe):
|
||
(NotPromise):
|
||
|
||
2017-08-30 Saam Barati <sbarati@apple.com>
|
||
|
||
Unreviewed. Make test stop printing.
|
||
|
||
* microbenchmarks/fake-iterators-that-throw-when-finished.js:
|
||
|
||
2017-08-30 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r221327.
|
||
|
||
This change caused test262 failures.
|
||
|
||
Reverted changeset:
|
||
|
||
"[JSC] Use reifying system for "name" property of builtin
|
||
JSFunction"
|
||
https://bugs.webkit.org/show_bug.cgi?id=175260
|
||
http://trac.webkit.org/changeset/221327
|
||
|
||
2017-08-30 Saam Barati <sbarati@apple.com>
|
||
|
||
semicolon is being interpreted as an = in the LiteralParser
|
||
https://bugs.webkit.org/show_bug.cgi?id=176114
|
||
|
||
Reviewed by Oliver Hunt.
|
||
|
||
* stress/jsonp-literal-parser-semicolon-is-not-assignment.js: Added.
|
||
* stress/resources/literal-parser-test-case.js: Added.
|
||
|
||
2017-08-30 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
[ESNext] Async iteration - Implement async iteration statement: for-await-of
|
||
https://bugs.webkit.org/show_bug.cgi?id=166698
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/async-iteration-for-await-of-syntax.js: Added.
|
||
(assert):
|
||
(checkSyntax):
|
||
(checkSyntaxError):
|
||
(checkSimpleAsyncGeneratorSloppyMode):
|
||
(checkSimpleAsyncGeneratorStrictMode):
|
||
(checkNestedAsyncGenerators):
|
||
(checkSimpleAsyncGeneratorSyntaxErrorInStrictMode):
|
||
* stress/async-iteration-for-await-of.js: Added.
|
||
(assert):
|
||
(async.foo):
|
||
(async.boo):
|
||
(const.boo.async):
|
||
|
||
2017-08-29 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Use reifying system for "name" property of builtin JSFunction
|
||
https://bugs.webkit.org/show_bug.cgi?id=175260
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/accessors-get-set-prefix.js:
|
||
* stress/builtin-function-name.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(shouldBe.JSON.stringify.Object.getOwnPropertyDescriptor):
|
||
(shouldBe.JSON.stringify.Object.getOwnPropertyNames.Array.prototype.filter.sort):
|
||
|
||
2017-08-25 Saam Barati <sbarati@apple.com>
|
||
|
||
Support compiling catch in the DFG
|
||
https://bugs.webkit.org/show_bug.cgi?id=174590
|
||
<rdar://problem/34047845>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/delta-blue-try-catch.js: Added.
|
||
(exception):
|
||
(value):
|
||
(OrderedCollection):
|
||
(OrderedCollection.prototype.add):
|
||
(OrderedCollection.prototype.at):
|
||
(OrderedCollection.prototype.size):
|
||
(OrderedCollection.prototype.removeFirst):
|
||
(OrderedCollection.prototype.remove):
|
||
(Strength):
|
||
(Strength.stronger):
|
||
(Strength.weaker):
|
||
(Strength.weakestOf):
|
||
(Strength.strongest):
|
||
(Strength.prototype.nextWeaker):
|
||
(Constraint):
|
||
(Constraint.prototype.addConstraint):
|
||
(Constraint.prototype.satisfy):
|
||
(Constraint.prototype.destroyConstraint):
|
||
(Constraint.prototype.isInput):
|
||
(UnaryConstraint):
|
||
(UnaryConstraint.prototype.addToGraph):
|
||
(UnaryConstraint.prototype.chooseMethod):
|
||
(UnaryConstraint.prototype.isSatisfied):
|
||
(UnaryConstraint.prototype.markInputs):
|
||
(UnaryConstraint.prototype.output):
|
||
(UnaryConstraint.prototype.recalculate):
|
||
(UnaryConstraint.prototype.markUnsatisfied):
|
||
(UnaryConstraint.prototype.inputsKnown):
|
||
(UnaryConstraint.prototype.removeFromGraph):
|
||
(StayConstraint):
|
||
(StayConstraint.prototype.execute):
|
||
(EditConstraint.prototype.isInput):
|
||
(EditConstraint.prototype.execute):
|
||
(BinaryConstraint):
|
||
(BinaryConstraint.prototype.chooseMethod):
|
||
(BinaryConstraint.prototype.addToGraph):
|
||
(BinaryConstraint.prototype.isSatisfied):
|
||
(BinaryConstraint.prototype.markInputs):
|
||
(BinaryConstraint.prototype.input):
|
||
(BinaryConstraint.prototype.output):
|
||
(BinaryConstraint.prototype.recalculate):
|
||
(BinaryConstraint.prototype.markUnsatisfied):
|
||
(BinaryConstraint.prototype.inputsKnown):
|
||
(BinaryConstraint.prototype.removeFromGraph):
|
||
(ScaleConstraint):
|
||
(ScaleConstraint.prototype.addToGraph):
|
||
(ScaleConstraint.prototype.removeFromGraph):
|
||
(ScaleConstraint.prototype.markInputs):
|
||
(ScaleConstraint.prototype.execute):
|
||
(ScaleConstraint.prototype.recalculate):
|
||
(EqualityConstraint):
|
||
(EqualityConstraint.prototype.execute):
|
||
(Variable):
|
||
(Variable.prototype.addConstraint):
|
||
(Variable.prototype.removeConstraint):
|
||
(Planner):
|
||
(Planner.prototype.incrementalAdd):
|
||
(Planner.prototype.incrementalRemove):
|
||
(Planner.prototype.newMark):
|
||
(Planner.prototype.makePlan):
|
||
(Planner.prototype.extractPlanFromConstraints):
|
||
(Planner.prototype.addPropagate):
|
||
(Planner.prototype.removePropagateFrom):
|
||
(Planner.prototype.addConstraintsConsumingTo):
|
||
(Plan):
|
||
(Plan.prototype.addConstraint):
|
||
(Plan.prototype.size):
|
||
(Plan.prototype.constraintAt):
|
||
(Plan.prototype.execute):
|
||
(chainTest):
|
||
(projectionTest):
|
||
(change):
|
||
(deltaBlue):
|
||
* microbenchmarks/fake-iterators-that-throw-when-finished.js: Added.
|
||
(assert):
|
||
(Numbers):
|
||
(Numbers.prototype.next):
|
||
(return.Transpose):
|
||
(return.Transpose.prototype.next):
|
||
(transpose):
|
||
(verifyEven):
|
||
(verifyString):
|
||
(foo):
|
||
(runIterators):
|
||
* microbenchmarks/try-catch-word-count.js: Added.
|
||
(let.assert):
|
||
(EOF):
|
||
(let.texts):
|
||
(let.o.apply):
|
||
(foo):
|
||
(bar):
|
||
(f):
|
||
(run):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(fn):
|
||
(A):
|
||
(B):
|
||
(A.prototype.getValue):
|
||
(B.prototype.getParentValue):
|
||
(strlen):
|
||
(sum.0):
|
||
(test):
|
||
(result.test.o):
|
||
(set add.set add):
|
||
(set forEach):
|
||
(stringHash):
|
||
(set if):
|
||
(testFunction):
|
||
(set delete.set has.set add):
|
||
* stress/catch-set-argument-speculation-failure.js: Added.
|
||
(o):
|
||
(e):
|
||
(e2):
|
||
(escape):
|
||
(baz):
|
||
(noInline.run):
|
||
(noInline):
|
||
* stress/osr-enter-to-catch-with-set-local-type-check-failure.js: Added.
|
||
(foo):
|
||
(e):
|
||
(baz):
|
||
(bar):
|
||
|
||
2017-08-24 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r221119, r221124, and r221143.
|
||
https://bugs.webkit.org/show_bug.cgi?id=175973
|
||
|
||
"I think it regressed JSBench by 20%" (Requested by saamyjoon
|
||
on #webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"Support compiling catch in the DFG"
|
||
https://bugs.webkit.org/show_bug.cgi?id=174590
|
||
http://trac.webkit.org/changeset/221119
|
||
|
||
"Unreviewed, build fix in GTK port"
|
||
https://bugs.webkit.org/show_bug.cgi?id=174590
|
||
http://trac.webkit.org/changeset/221124
|
||
|
||
"DFG::JITCode::osrEntry should get sorted since we perform a
|
||
binary search on it"
|
||
https://bugs.webkit.org/show_bug.cgi?id=175893
|
||
http://trac.webkit.org/changeset/221143
|
||
|
||
2017-08-24 Michael Saboff <msaboff@apple.com>
|
||
|
||
Add support for RegExp "dotAll" flag
|
||
https://bugs.webkit.org/show_bug.cgi?id=175924
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Updated tests for new dotAll ('s' flag) changes.
|
||
|
||
* es6/Proxy_internal_get_calls_RegExp.prototype.flags.js:
|
||
* stress/static-getter-in-names.js:
|
||
|
||
2017-08-24 Mark Lam <mark.lam@apple.com>
|
||
|
||
Land regression test for https://bugs.webkit.org/show_bug.cgi?id=164081.
|
||
https://bugs.webkit.org/show_bug.cgi?id=175940
|
||
<rdar://problem/29003921>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-164081.js: Added.
|
||
(shouldEqual):
|
||
(testcase):
|
||
|
||
2017-08-24 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip flaky JSC test stress/test-finally.js.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160283
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/test-finally.js:
|
||
|
||
2017-08-23 Saam Barati <sbarati@apple.com>
|
||
|
||
Support compiling catch in the DFG
|
||
https://bugs.webkit.org/show_bug.cgi?id=174590
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/delta-blue-try-catch.js: Added.
|
||
(exception):
|
||
(value):
|
||
(OrderedCollection):
|
||
(OrderedCollection.prototype.add):
|
||
(OrderedCollection.prototype.at):
|
||
(OrderedCollection.prototype.size):
|
||
(OrderedCollection.prototype.removeFirst):
|
||
(OrderedCollection.prototype.remove):
|
||
(Strength):
|
||
(Strength.stronger):
|
||
(Strength.weaker):
|
||
(Strength.weakestOf):
|
||
(Strength.strongest):
|
||
(Strength.prototype.nextWeaker):
|
||
(Constraint):
|
||
(Constraint.prototype.addConstraint):
|
||
(Constraint.prototype.satisfy):
|
||
(Constraint.prototype.destroyConstraint):
|
||
(Constraint.prototype.isInput):
|
||
(UnaryConstraint):
|
||
(UnaryConstraint.prototype.addToGraph):
|
||
(UnaryConstraint.prototype.chooseMethod):
|
||
(UnaryConstraint.prototype.isSatisfied):
|
||
(UnaryConstraint.prototype.markInputs):
|
||
(UnaryConstraint.prototype.output):
|
||
(UnaryConstraint.prototype.recalculate):
|
||
(UnaryConstraint.prototype.markUnsatisfied):
|
||
(UnaryConstraint.prototype.inputsKnown):
|
||
(UnaryConstraint.prototype.removeFromGraph):
|
||
(StayConstraint):
|
||
(StayConstraint.prototype.execute):
|
||
(EditConstraint.prototype.isInput):
|
||
(EditConstraint.prototype.execute):
|
||
(BinaryConstraint):
|
||
(BinaryConstraint.prototype.chooseMethod):
|
||
(BinaryConstraint.prototype.addToGraph):
|
||
(BinaryConstraint.prototype.isSatisfied):
|
||
(BinaryConstraint.prototype.markInputs):
|
||
(BinaryConstraint.prototype.input):
|
||
(BinaryConstraint.prototype.output):
|
||
(BinaryConstraint.prototype.recalculate):
|
||
(BinaryConstraint.prototype.markUnsatisfied):
|
||
(BinaryConstraint.prototype.inputsKnown):
|
||
(BinaryConstraint.prototype.removeFromGraph):
|
||
(ScaleConstraint):
|
||
(ScaleConstraint.prototype.addToGraph):
|
||
(ScaleConstraint.prototype.removeFromGraph):
|
||
(ScaleConstraint.prototype.markInputs):
|
||
(ScaleConstraint.prototype.execute):
|
||
(ScaleConstraint.prototype.recalculate):
|
||
(EqualityConstraint):
|
||
(EqualityConstraint.prototype.execute):
|
||
(Variable):
|
||
(Variable.prototype.addConstraint):
|
||
(Variable.prototype.removeConstraint):
|
||
(Planner):
|
||
(Planner.prototype.incrementalAdd):
|
||
(Planner.prototype.incrementalRemove):
|
||
(Planner.prototype.newMark):
|
||
(Planner.prototype.makePlan):
|
||
(Planner.prototype.extractPlanFromConstraints):
|
||
(Planner.prototype.addPropagate):
|
||
(Planner.prototype.removePropagateFrom):
|
||
(Planner.prototype.addConstraintsConsumingTo):
|
||
(Plan):
|
||
(Plan.prototype.addConstraint):
|
||
(Plan.prototype.size):
|
||
(Plan.prototype.constraintAt):
|
||
(Plan.prototype.execute):
|
||
(chainTest):
|
||
(projectionTest):
|
||
(change):
|
||
(deltaBlue):
|
||
* microbenchmarks/fake-iterators-that-throw-when-finished.js: Added.
|
||
(assert):
|
||
(Numbers):
|
||
(Numbers.prototype.next):
|
||
(return.Transpose):
|
||
(return.Transpose.prototype.next):
|
||
(transpose):
|
||
(verifyEven):
|
||
(verifyString):
|
||
(foo):
|
||
(runIterators):
|
||
* microbenchmarks/try-catch-word-count.js: Added.
|
||
(let.assert):
|
||
(EOF):
|
||
(let.texts):
|
||
(let.o.apply):
|
||
(foo):
|
||
(bar):
|
||
(f):
|
||
(run):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(fn):
|
||
(A):
|
||
(B):
|
||
(A.prototype.getValue):
|
||
(B.prototype.getParentValue):
|
||
(strlen):
|
||
(sum.0):
|
||
(test):
|
||
(result.test.o):
|
||
(set add.set add):
|
||
(set forEach):
|
||
(stringHash):
|
||
(set if):
|
||
(testFunction):
|
||
(set delete.set has.set add):
|
||
* stress/catch-set-argument-speculation-failure.js: Added.
|
||
(o):
|
||
(e):
|
||
(e2):
|
||
(escape):
|
||
(baz):
|
||
(noInline.run):
|
||
(noInline):
|
||
* stress/osr-enter-to-catch-with-set-local-type-check-failure.js: Added.
|
||
(foo):
|
||
(e):
|
||
(baz):
|
||
(bar):
|
||
|
||
2017-08-23 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Optimize Map iteration with intrinsic
|
||
https://bugs.webkit.org/show_bug.cgi?id=174355
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/map-iterator-result-should-have-expected-shape.js: Added.
|
||
(shouldBe):
|
||
(throw.new.Error):
|
||
* stress/set-iterator-result-should-have-expected-shape.js: Added.
|
||
(shouldBe):
|
||
(throw.new.Error.let.iterator.set Symbol):
|
||
(throw.new.Error.set add):
|
||
(let.iterator.set Symbol):
|
||
|
||
2017-08-23 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Add a micro-benchmark for checking that accessing a variable within a 'with'
|
||
block does not automatically prevent type prediction.
|
||
https://bugs.webkit.org/show_bug.cgi?id=175738
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/with_and_arith.js: Added.
|
||
(with):
|
||
|
||
2017-08-23 Skachkov Oleksandr <gskachkov@gmail.com>
|
||
|
||
[ESNext] Async iteration - Implement Async Generator - runtime
|
||
https://bugs.webkit.org/show_bug.cgi?id=175240
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/async-iteration-async-from-sync.js: Added.
|
||
(assert):
|
||
(const.Logger):
|
||
(this.fullfilled):
|
||
(this.fullfilledDone):
|
||
(this.rejected):
|
||
(this.catched):
|
||
(this.isFinal):
|
||
(_assertLogger):
|
||
(const.assertLogger):
|
||
(const.getPromise.promiseHolder.return.new.Promise):
|
||
(foo):
|
||
(async.boo):
|
||
(bar):
|
||
(async.baz):
|
||
(async.goo):
|
||
* stress/async-iteration-basic.js: Added.
|
||
(assert):
|
||
(const.Logger):
|
||
(this.fullfilled):
|
||
(this.fullfilledDone):
|
||
(this.rejected):
|
||
(this.catched):
|
||
(this.isFinal):
|
||
(_assertLogger):
|
||
(const.assertLogger):
|
||
(const.getPromise.promiseHolder.return.new.Promise):
|
||
(async.generator):
|
||
(iterator.next.then):
|
||
(async.baz):
|
||
(async.boo):
|
||
(async.foo):
|
||
(async.goo):
|
||
(A.prototype.async.foo):
|
||
(A.prototype.async.boo):
|
||
(A):
|
||
(asyncGenExp.async):
|
||
(async.joo):
|
||
(j.next.then):
|
||
(then):
|
||
(async.koo):
|
||
(async.loo):
|
||
(async.moo):
|
||
(async.noo):
|
||
(async.ooo):
|
||
(async.roo):
|
||
(async.poo):
|
||
(async.soo):
|
||
(async.too):
|
||
* stress/async-iteration-evaluation.js: Added.
|
||
(assert):
|
||
(async.foo):
|
||
(catch):
|
||
* stress/async-iteration-syntax.js:
|
||
* stress/async-iteration-yield-promise.js: Added.
|
||
(assert):
|
||
(const.Logger):
|
||
(this.fullfilled):
|
||
(this.fullfilledDone):
|
||
(this.rejected):
|
||
(this.catched):
|
||
(this.isFinal):
|
||
(_assertLogger):
|
||
(const.assertLogger):
|
||
(const.getPromise.promiseHolder.return.new.Promise):
|
||
(async.foo):
|
||
(async.boo):
|
||
(async.bar):
|
||
* stress/async-iteration-yield-star-interface.js: Added.
|
||
(assert):
|
||
(const.getPromise.promiseHolder.return.new.Promise):
|
||
(const.Logger):
|
||
(this.fullfilled):
|
||
(this.fullfilledDone):
|
||
(this.rejected):
|
||
(this.catched):
|
||
(this.custom):
|
||
(this.isFinal):
|
||
(_assertLogger):
|
||
(const.assertLogger):
|
||
(let.asyncIter.Symbol.asyncIterator):
|
||
(let.asyncIter.next):
|
||
(let.asyncIter.throw):
|
||
(let.asyncIter.return):
|
||
(async.foo):
|
||
(asyncIter.Symbol.asyncIterator):
|
||
(asyncIter.next):
|
||
(async.boo):
|
||
(asyncIter.return):
|
||
(async.bar):
|
||
(async.baz):
|
||
(async.foobar):
|
||
* stress/async-iteration-yield-star.js: Added.
|
||
(assert):
|
||
(const.Logger):
|
||
(this.fullfilled):
|
||
(this.fullfilledDone):
|
||
(this.rejected):
|
||
(this.catched):
|
||
(this.custom):
|
||
(this.isFinal):
|
||
(_assertLogger):
|
||
(const.assertLogger):
|
||
(const.getPromise.promiseHolder.return.new.Promise):
|
||
(async.foo):
|
||
(async.boo):
|
||
(async.bar):
|
||
(async.baz):
|
||
(async.joo):
|
||
(async.goo):
|
||
(async.koo):
|
||
(async.loo):
|
||
(let.asyncIter.Symbol.asyncIterator):
|
||
(let.asyncIter.next):
|
||
(let.asyncIter.throw):
|
||
(let.asyncIter.return):
|
||
(async.moo):
|
||
(async.noo):
|
||
* test262.yaml:
|
||
|
||
2017-08-23 JF Bastien <jfbastien@apple.com>
|
||
|
||
Fix printing in test
|
||
|
||
Unreviewed: fixing verbosity, shouldn't have been there.
|
||
|
||
* wasm/regress/175693.js:
|
||
(else.else):
|
||
(catch):
|
||
|
||
2017-08-18 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip flaky JSC test microbenchmarks/generator-with-several-types.js.
|
||
https://bugs.webkit.org/show_bug.cgi?id=172543
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* microbenchmarks/generator-with-several-types.js:
|
||
|
||
2017-08-17 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: const in unreachable code decoded incorrectly, erroneously rejects binary as invalid
|
||
https://bugs.webkit.org/show_bug.cgi?id=175693
|
||
<rdar://problem/33952443>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Add a regression directory for WebAssembly tests.
|
||
|
||
* wasm.yaml:
|
||
* wasm/regress/175693.js: Added.
|
||
(else.else):
|
||
(instance.new.WebAssembly.Instance.new.WebAssembly.Module):
|
||
(catch):
|
||
* wasm/regress/175693.wasm: Added.
|
||
|
||
2017-08-15 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Support the 'with' keyword in FTL.
|
||
https://bugs.webkit.org/show_bug.cgi?id=175585
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Also improve the JSTest/stress/with.js file to test
|
||
what happens when non-objects are passed to with.
|
||
|
||
* stress/with.js:
|
||
(foo):
|
||
(i.catch):
|
||
(i.with): Deleted.
|
||
|
||
2017-08-14 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add testing tool to lie to the DFG about profiles
|
||
https://bugs.webkit.org/show_bug.cgi?id=175487
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/compare-eq-incomplete-profile.js: Added.
|
||
(const.test.createBuiltin):
|
||
|
||
2017-08-14 Robin Morisset <rmorisset@apple.com>
|
||
|
||
Support the with keyword in DFG
|
||
https://bugs.webkit.org/show_bug.cgi?id=175470
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Added a new stress-test for the 'with' keyword, that caught a bug in a
|
||
previous version of this code.
|
||
|
||
* stress/with.js: Added.
|
||
(i.with):
|
||
|
||
2017-08-14 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip flaky JSC test test/fieldopts/objtypespec-newobj-invalidation.1.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=175544
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* ChakraCore.yaml:
|
||
|
||
2017-08-09 Caitlin Potter <caitp@igalia.com>
|
||
|
||
Early error on ANY operator before new.target
|
||
https://bugs.webkit.org/show_bug.cgi?id=157970
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Instead of throwing if any unary operator precedes new.target, only
|
||
throw if the unary operator updates the reference.
|
||
|
||
The following become legal in JSC:
|
||
|
||
```
|
||
!new.target
|
||
~new.target
|
||
typeof new.target
|
||
delete new.target
|
||
void new.target
|
||
```
|
||
|
||
All of which are legal in v8 and SpiderMonkey in strict and sloppy mode
|
||
|
||
* stress/new-target-syntax-errors.js:
|
||
* stress/new-target.js:
|
||
|
||
2017-08-09 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip failing JSC tests stress/regress-169783.js and wasm.yaml/wasm/stress/oom.js.
|
||
https://bugs.webkit.org/show_bug.cgi?id=175255
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/regress-169783.js:
|
||
* wasm/stress/oom.js:
|
||
|
||
2017-08-09 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
REGRESSION: 2 test262/test/language/statements/async-function failures
|
||
https://bugs.webkit.org/show_bug.cgi?id=175334
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
Add @skip parameters to tests, and remove test for async iterator from
|
||
async await syntax test because it is already covered by async-iterator-syntax.js
|
||
|
||
* stress/async-await-syntax.js:
|
||
* stress/async-iteration-syntax.js:
|
||
|
||
2017-08-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, gardening test262 for Promise resolve / reject function length
|
||
https://bugs.webkit.org/show_bug.cgi?id=175333
|
||
|
||
* test262.yaml:
|
||
|
||
2017-08-07 Robin Morisset <rmorisset@apple.com>
|
||
|
||
GetOwnProperty of TypedArray indexed fields is wrongly configurable
|
||
https://bugs.webkit.org/show_bug.cgi?id=175307
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/typedarray-getownproperty-not-configurable.js: Added.
|
||
(assert):
|
||
(foo):
|
||
|
||
2017-08-06 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Promise resolve and reject function should have length = 1
|
||
https://bugs.webkit.org/show_bug.cgi?id=175242
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/builtin-function-length.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(shouldBe.JSON.stringify.Object.getOwnPropertyDescriptor):
|
||
(shouldBe.JSON.stringify.Object.getOwnPropertyNames.Array.prototype.filter.sort):
|
||
|
||
2017-08-06 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
[ESNext] Async iteration - Implement Async Generator - parser
|
||
https://bugs.webkit.org/show_bug.cgi?id=175210
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/async-await-syntax.js:
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntax):
|
||
* stress/async-iteration-syntax.js: Added.
|
||
(assert):
|
||
(checkSyntax):
|
||
(checkSyntaxError):
|
||
(checkSimpleAsyncGeneratorSloppyMode):
|
||
(checkSimpleAsyncGeneratorStrictMode):
|
||
(checkNestedAsyncGenerators):
|
||
(checkSimpleAsyncGeneratorSyntaxErrorInStrictMode):
|
||
* stress/generator-class-methods-syntax.js:
|
||
|
||
2017-08-03 Carlos Alberto Lopez Perez <clopez@igalia.com>
|
||
|
||
JSC test wasm/js-api/test_memory_constructor.js should be skipped on memoryLimited
|
||
https://bugs.webkit.org/show_bug.cgi?id=175150
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* wasm/js-api/test_memory_constructor.js:
|
||
|
||
2017-08-02 Carlos Alberto Lopez Perez <clopez@igalia.com>
|
||
|
||
[Linux] JSTests/wasm/stress/oom.js should not run on Linux
|
||
https://bugs.webkit.org/show_bug.cgi?id=175100
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
The JSC test JSTests/wasm/stress/oom.js tries to use all the
|
||
available memory until an out of memory exception happens.
|
||
|
||
The Linux kernel is more tuned for server workloads than for GUI
|
||
responsiveness. When a process tries to use a lot of memory, Linux
|
||
will do its best to serve the request. This usually translates to
|
||
free physical RAM by writing to disk dirty pages and/or moving out
|
||
less recently used pages to swap (disk storage).
|
||
Meanwhile it does this, the system will become unresponsive and this
|
||
leads to freezes that can last even some minutes on the worst cases.
|
||
|
||
Therefore, let's skip this test on Linux as it will cause more harm
|
||
than good on the Linux bots or on the machines of Linux developers.
|
||
|
||
* wasm/stress/oom.js:
|
||
|
||
2017-08-01 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
[JSC] Remove unnecessary print from stress\promise-finally.js test
|
||
https://bugs.webkit.org/show_bug.cgi?id=175015
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/promise-finally.js:
|
||
(p.finally):
|
||
(then):
|
||
|
||
2017-07-31 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, update test262 results for optional catch binding
|
||
|
||
* test262.yaml:
|
||
|
||
2017-07-31 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Support optional catch binding
|
||
https://bugs.webkit.org/show_bug.cgi?id=174981
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/optional-catch-binding-syntax.js: Added.
|
||
(testSyntax):
|
||
(testSyntaxError):
|
||
(catch.catch):
|
||
* stress/optional-catch-binding.js: Added.
|
||
(shouldBe):
|
||
(throwException):
|
||
|
||
2017-07-28 Mark Lam <mark.lam@apple.com>
|
||
|
||
ObjectToStringAdaptiveStructureWatchpoint should not fire if it's dying imminently.
|
||
https://bugs.webkit.org/show_bug.cgi?id=174948
|
||
<rdar://problem/33495680>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-174948.js: Added.
|
||
|
||
2017-07-28 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
ASSERTION FAILED: candidate->op() == PhantomCreateRest || candidate->op() == PhantomDirectArguments || candidate->op() == PhantomClonedArguments || candidate->op() == PhantomSpread || candidate->op() == PhantomNewArrayWithSpread
|
||
https://bugs.webkit.org/show_bug.cgi?id=174900
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arguments-elimination-candidate-listings-should-respect-pseudo-terminals.js: Added.
|
||
(sideEffect):
|
||
(args):
|
||
(test):
|
||
|
||
2017-07-27 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Hoist DOM binding attribute getter prologue into JavaScriptCore taking advantage of DOMJIT / CheckSubClass
|
||
https://bugs.webkit.org/show_bug.cgi?id=171637
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/domjit-getter-complex-with-incorrect-object.js:
|
||
(i.shouldThrow):
|
||
* stress/domjit-getter-type-check.js: Copied from JSTests/stress/domjit-getter-complex-with-incorrect-object.js.
|
||
(shouldBe):
|
||
(i.shouldThrow):
|
||
|
||
2017-07-26 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: test throwing out of the start function
|
||
https://bugs.webkit.org/show_bug.cgi?id=165714
|
||
<rdar://problem/29760251>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/assert.js:
|
||
* wasm/function-tests/trap-from-start.js: Added.
|
||
(StartTraps):
|
||
* wasm/function-tests/trap-from-start-async.js: Added.
|
||
(async.StartTrapsAsync):
|
||
|
||
2017-07-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Arguments elimination is suppressed by unreachable blocks
|
||
https://bugs.webkit.org/show_bug.cgi?id=174352
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/arguments-elimination-force-exit.js: Added.
|
||
(shouldBe):
|
||
(strict):
|
||
(sloppy):
|
||
* stress/arguments-elimination-throw.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(sloppy):
|
||
(isArguments):
|
||
|
||
2017-07-13 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add some additional test cases for bug 170896.
|
||
https://bugs.webkit.org/show_bug.cgi?id=174491
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-170896-with-contiguous-shape-profile.js: Copied from JSTests/stress/regress-170896.js.
|
||
* stress/regress-170896-with-double-shape-profile.js: Added.
|
||
(test):
|
||
* stress/regress-170896-with-int32-shape-profile.js: Added.
|
||
(test):
|
||
* stress/regress-170896.js: Removed.
|
||
|
||
2017-07-13 Saam Barati <sbarati@apple.com>
|
||
|
||
Missing exception check in JSObject::hasInstance
|
||
https://bugs.webkit.org/show_bug.cgi?id=174455
|
||
<rdar://problem/31384608>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/has-instance-exception-check.js: Added.
|
||
(assert):
|
||
(let.getter.Object.getOwnPropertyDescriptor.get foo):
|
||
|
||
2017-07-13 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESnext] Implement Object Spread
|
||
https://bugs.webkit.org/show_bug.cgi?id=167963
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/obj-rest-destructuring-order.js: Added.
|
||
(assert):
|
||
(o.get z):
|
||
(o.get a):
|
||
* stress/obj-spread-order.js: Added.
|
||
(assert):
|
||
(o.get z):
|
||
(o.get a):
|
||
* stress/object-spread.js: Added.
|
||
(let.assert):
|
||
(assert.sameValue):
|
||
(let.o.get a):
|
||
(let.obj.get c):
|
||
(cthulhu.get x):
|
||
(let.obj.set c):
|
||
(calls.o.get z):
|
||
(calls.o.get a):
|
||
(try.let.obj.get foo):
|
||
(get calls):
|
||
|
||
2017-07-12 Saam Barati <sbarati@apple.com>
|
||
|
||
GenericArguments consults the wrong state when tracking modified argument descriptors and mapped arguments
|
||
https://bugs.webkit.org/show_bug.cgi?id=174411
|
||
<rdar://problem/31696186>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/generic-arguments-correct-delete-behavior.js: Added.
|
||
(assert):
|
||
(makeTest):
|
||
|
||
2017-07-07 Mark Lam <mark.lam@apple.com>
|
||
|
||
\n\r is not the same as \r\n.
|
||
https://bugs.webkit.org/show_bug.cgi?id=173053
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/regress-173053.js: Added.
|
||
* stress/template-literal-line-terminators.js:
|
||
|
||
2017-07-06 Saam Barati <sbarati@apple.com>
|
||
|
||
We are missing places where we invalidate the for-in context
|
||
https://bugs.webkit.org/show_bug.cgi?id=174184
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/for-in-invalidate-context-weird-assignments.js: Added.
|
||
(assert):
|
||
(test):
|
||
|
||
2017-07-05 Saam Barati <sbarati@apple.com>
|
||
|
||
NewArray in FTLLowerDFGToB3 does not handle speculating on doubles when having a bad time
|
||
https://bugs.webkit.org/show_bug.cgi?id=174188
|
||
<rdar://problem/30581423>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/new-array-having-a-bad-time-double.js: Added.
|
||
(assert):
|
||
(foo):
|
||
|
||
2017-07-05 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
WTF::StringImpl::copyChars segfaults when built with GCC 7
|
||
https://bugs.webkit.org/show_bug.cgi?id=173407
|
||
|
||
Reviewed by Andreas Kling.
|
||
|
||
* stress/string-repeat-copy-chars-crash.js: Added.
|
||
(shouldBe):
|
||
|
||
2017-07-03 Saam Barati <sbarati@apple.com>
|
||
|
||
Skip unshiftCountSlowCase-correct-postCapacity.js on debug builds since it takes a long time to run.
|
||
|
||
* stress/unshiftCountSlowCase-correct-postCapacity.js:
|
||
|
||
2017-07-03 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, annotate dont--reserve-huge-capacity-lexer.js with $memoryLimited
|
||
|
||
It requires too much memory.
|
||
|
||
* stress/dont-reserve-huge-capacity-lexer.js:
|
||
|
||
2017-06-30 Michael Saboff <msaboff@apple.com>
|
||
|
||
Skip a test on ARM64 platform since we run out of address space.
|
||
|
||
Rubber stamped by Saam Barati.
|
||
|
||
* stress/dont-reserve-huge-capacity-lexer.js:
|
||
|
||
2017-06-30 Michael Saboff <msaboff@apple.com>
|
||
|
||
RegExp's anchored with .* with \g flag can return wrong match start for strings with multiple matches
|
||
https://bugs.webkit.org/show_bug.cgi?id=174044
|
||
|
||
Reviewed by Oliver Hunt.
|
||
|
||
New regression test.
|
||
|
||
* stress/regress-174044.js: Added.
|
||
(test1):
|
||
(test2):
|
||
|
||
2017-06-30 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
RegExpCachedResult::setInput should reify left and right contexts
|
||
https://bugs.webkit.org/show_bug.cgi?id=173818
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/right-left-context-invalidated-by-input.js: Added.
|
||
(test.validateContexts):
|
||
(test):
|
||
|
||
2017-06-29 Saam Barati <sbarati@apple.com>
|
||
|
||
Calculating postCapacity in unshiftCountSlowCase is wrong
|
||
https://bugs.webkit.org/show_bug.cgi?id=173992
|
||
<rdar://problem/32283199>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/unshiftCountSlowCase-correct-postCapacity.js: Added.
|
||
(temp):
|
||
|
||
2017-06-29 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r218512.
|
||
https://bugs.webkit.org/show_bug.cgi?id=173981
|
||
|
||
"It changes the behavior of the JS API's JSEvaluateScript
|
||
which breaks TurboTax" (Requested by saamyjoon on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"test262: Completion values for control flow do not match the
|
||
spec"
|
||
https://bugs.webkit.org/show_bug.cgi?id=171265
|
||
http://trac.webkit.org/changeset/218512
|
||
|
||
2017-06-27 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: running out of executable memory should throw OoM
|
||
https://bugs.webkit.org/show_bug.cgi?id=171537
|
||
<rdar://problem/32963338>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm.yaml:
|
||
* wasm/lowExecutableMemory/executable-memory-oom.js: Added.
|
||
(const.invoke):
|
||
(failCount.0.catch):
|
||
(failCount.0.module.undefined.catch):
|
||
* wasm/lowExecutableMemory/exports-oom.js: Added.
|
||
(const.type):
|
||
(const.params):
|
||
(const.randomProgram):
|
||
(failCount.0.catch):
|
||
(failCount.0.module.undefined.catch):
|
||
* wasm/lowExecutableMemory/imports-oom.js: Added.
|
||
(const.type):
|
||
(const.params):
|
||
(const.randomProgram):
|
||
(f.imports.push):
|
||
(failCount.0.catch):
|
||
(failCount.0.module.undefined.catch):
|
||
|
||
2017-06-27 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESnext] Implement Object Rest - Implementing Object Rest Destructuring
|
||
https://bugs.webkit.org/show_bug.cgi?id=167962
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/object-rest-deconstruct.js: Added.
|
||
(let.assert):
|
||
(let.assertPropDescriptor):
|
||
(catch):
|
||
(get 3):
|
||
(foo):
|
||
(let.src.get y):
|
||
(let.src.set y):
|
||
(let.gen):
|
||
|
||
2017-06-27 Saam Barati <sbarati@apple.com>
|
||
|
||
Function constructor needs to follow the spec and validate parameters and body independently
|
||
https://bugs.webkit.org/show_bug.cgi?id=173303
|
||
<rdar://problem/32732526>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* ChakraCore/test/Function/FuncBodyES5.baseline-jsc:
|
||
* stress/function-constructor-semantics.js: Added.
|
||
(assert):
|
||
(hasSyntaxError):
|
||
(foo):
|
||
(async.foo):
|
||
(testError):
|
||
(testOK.toString):
|
||
(toString):
|
||
|
||
2017-06-26 Saam Barati <sbarati@apple.com>
|
||
|
||
RegExpPrototype.js builtin uses for-of iteration which is almost certainly incorrect
|
||
https://bugs.webkit.org/show_bug.cgi?id=173740
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/regexp-prototype-replace-builtin-should-not-use-for-of.js: Added.
|
||
(Array.prototype.Symbol.iterator):
|
||
|
||
2017-06-26 Saam Barati <sbarati@apple.com>
|
||
|
||
Skip a test on 32-bit platforms since we run out of address space.
|
||
|
||
Rubber stamped by Mark Lam.
|
||
|
||
* stress/dont-reserve-huge-capacity-lexer.js:
|
||
|
||
2017-06-26 Saam Barati <sbarati@apple.com>
|
||
|
||
Crash in JSC::Lexer<unsigned char>::setCode
|
||
https://bugs.webkit.org/show_bug.cgi?id=172754
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/dont-reserve-huge-capacity-lexer.js: Added.
|
||
(catch):
|
||
|
||
2017-06-24 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Clean up Object.entries implementation
|
||
https://bugs.webkit.org/show_bug.cgi?id=173759
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* microbenchmarks/object-entries.js: Added.
|
||
(test):
|
||
|
||
2017-06-24 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Remove Reflect.enumerate
|
||
https://bugs.webkit.org/show_bug.cgi?id=173806
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* ChakraCore.yaml:
|
||
* es6.yaml:
|
||
These tests now fail because they use Reflect.enumerate.
|
||
|
||
* test262.yaml:
|
||
This test now passes, it checked that Reflect.enumerate is undefined!
|
||
|
||
* stress/property-name-enumerator-should-not-look-into-indexed-values-when-it-is-a-dictionary.js:
|
||
Convert to for..in which presented the original issue. See bug <https://webkit.org/b/149811>
|
||
|
||
* stress/reflect-enumerate.js: Removed.
|
||
Remove a test solely for Reflect.enumerate.
|
||
|
||
2017-06-22 Saam Barati <sbarati@apple.com>
|
||
|
||
ValueRep(DoubleRep(@v)) can not simply convert to @v
|
||
https://bugs.webkit.org/show_bug.cgi?id=173687
|
||
<rdar://problem/32855563>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/dont-strength-reduce-valuerep-of-doublerep.js: Added.
|
||
(i.catch):
|
||
|
||
2017-06-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Object.values should be implemented in C++
|
||
https://bugs.webkit.org/show_bug.cgi?id=173703
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* microbenchmarks/object-keys-map-values.js: Added.
|
||
(test):
|
||
* microbenchmarks/object-values.js: Added.
|
||
(test):
|
||
* stress/object-values-changing-properties.js: Added.
|
||
(shouldBe):
|
||
(throw.new.Error.let.source.get x):
|
||
(throw.new.Error):
|
||
(shouldBe.let.handler.get order):
|
||
(get let):
|
||
(shouldBe.let.handler.get return):
|
||
(let.handler.get order):
|
||
|
||
2017-06-21 Saam Barati <sbarati@apple.com>
|
||
|
||
eval virtual call is incorrect in the baseline JIT
|
||
https://bugs.webkit.org/show_bug.cgi?id=173587
|
||
<rdar://problem/32867897>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/do-eval-virtual-call-correctly.js: Added.
|
||
(assert):
|
||
(f):
|
||
(i.test):
|
||
(catch):
|
||
|
||
2017-06-20 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Update test262 test expectations after r218581.
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-06-20 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
Revert changes in bug#160417 about extending `null` not being a derived class
|
||
https://bugs.webkit.org/show_bug.cgi?id=169293
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/class-derived-from-null.js:
|
||
(assertThrow):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
(test6):
|
||
|
||
2017-06-13 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] More ArrayIndexOf fixups for various types
|
||
https://bugs.webkit.org/show_bug.cgi?id=173176
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-indexof-arraystorage.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32Other):
|
||
(indexOfInt32Cell):
|
||
(indexOfInt32Boolean):
|
||
(indexOfDoubleOther):
|
||
(indexOfDoubleCell):
|
||
(indexOfDoubleBoolean):
|
||
(indexOfInt32):
|
||
(indexOfDouble):
|
||
* stress/array-indexof-constant-folding.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32Other):
|
||
(indexOfInt32Cell):
|
||
(indexOfInt32Boolean):
|
||
(indexOfDoubleOther):
|
||
(indexOfDoubleCell):
|
||
(indexOfDoubleBoolean):
|
||
* stress/array-indexof-hole-and-other.js: Added.
|
||
(shouldBe):
|
||
(indexOf):
|
||
* stress/array-indexof-other.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32):
|
||
(indexOfDouble):
|
||
(indexOfString):
|
||
(indexOfObject):
|
||
* stress/array-indexof-symbol.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32):
|
||
(indexOfDouble):
|
||
(indexOfString):
|
||
(indexOfObject):
|
||
|
||
2017-06-19 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: Completion values for control flow do not match the spec
|
||
https://bugs.webkit.org/show_bug.cgi?id=171265
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/completion-value.js:
|
||
Condensed test for completion values in top level statements.
|
||
|
||
* stress/super-get-by-id.js:
|
||
ClassDeclaration when evaled no longer produce values. Convert
|
||
these to ClassExpressions so they produce the class value.
|
||
|
||
* ChakraCore/test/GlobalFunctions/evalreturns3.baseline-jsc:
|
||
This is a progression for currect spec behavior.
|
||
|
||
* mozilla/mozilla-tests.yaml:
|
||
This test is now outdated, so mark it as failing for that reason.
|
||
|
||
* test262.yaml:
|
||
Passing all "cptn" completion value tests.
|
||
|
||
2017-06-17 Keith Miller <keith_miller@apple.com>
|
||
|
||
ArrayBuffer constructor needs to create subclass structures before its buffer
|
||
https://bugs.webkit.org/show_bug.cgi?id=173510
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-06-17 Keith Miller <keith_miller@apple.com>
|
||
|
||
ArrayPrototype methods should use JSValue::toLength for non-Arrays.
|
||
https://bugs.webkit.org/show_bug.cgi?id=173506
|
||
|
||
Reviewed by Ryosuke Niwa.
|
||
|
||
Re-baseline tests.
|
||
|
||
* ChakraCore/test/Function/apply3.baseline-jsc:
|
||
* test262.yaml:
|
||
|
||
2017-06-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Add fast path for Object.assign
|
||
https://bugs.webkit.org/show_bug.cgi?id=173416
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/object-assign-changing-properties.js: Added.
|
||
(shouldBe):
|
||
(throw.new.Error.let.source.get x):
|
||
(throw.new.Error):
|
||
(shouldBe.let.source.get x):
|
||
(shouldBe.let.target.set x):
|
||
(shouldBe.let.target.get x):
|
||
* stress/object-assign-proxy.js: Added.
|
||
(shouldBe):
|
||
(throw.new.Error.let.handler.get order):
|
||
|
||
2017-06-15 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Implement Object.assign in C++
|
||
https://bugs.webkit.org/show_bug.cgi?id=173414
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/object-assign-string-first.js: Added.
|
||
(shouldBe):
|
||
(source.get Symbol):
|
||
(source.get 1):
|
||
(source.get cocoa):
|
||
|
||
2017-06-14 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: remove empty test files
|
||
https://bugs.webkit.org/show_bug.cgi?id=173382
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
The following files:
|
||
JSTests/wasm/function-tests/call-indirect-params.js
|
||
JSTests/wasm/function-tests/call-indirect.js
|
||
JSTests/wasm/js-api/call-indirect-results.js
|
||
Were changed to empty files in https://trac.webkit.org/changeset/209771
|
||
|
||
They were testing call_indirect with the wrong semantics, before
|
||
we implemented tables. That change implemented tables and
|
||
therefore removed the erroneous tests.
|
||
|
||
We have a few tests for call_indirect which already do the right thing:
|
||
JSTests/wasm/function-tests/context-switch.js
|
||
JSTests/wasm/function-tests/exceptions.js
|
||
JSTests/wasm/function-tests/grow-memory-2.js
|
||
JSTests/wasm/function-tests/stack-overflow.js
|
||
JSTests/wasm/function-tests/table-basic-2.js
|
||
JSTests/wasm/function-tests/table-basic.js
|
||
JSTests/wasm/js-api/call-indirect.js
|
||
JSTests/wasm/js-api/table.js
|
||
JSTests/wasm/js-api/unique-signature.js
|
||
JSTests/wasm/js-api/wrapper-function.js
|
||
|
||
I also just imported the updated spec tests which, among other
|
||
things, test call_indirect:
|
||
core/br.wast
|
||
core/br_table.wast
|
||
core/call_indirect.wast
|
||
core/func.wast
|
||
core/func_ptrs.wast
|
||
core/imports.wast
|
||
core/left-to-right.wast
|
||
core/linking.wast
|
||
core/nop.wast
|
||
core/return.wast
|
||
core/typecheck.wast
|
||
core/unreachable.wast
|
||
|
||
So I think it's OK to just delete the tests which should just have
|
||
been deleted back when tables were added.
|
||
|
||
* wasm/function-tests/call-indirect-params.js: Removed.
|
||
* wasm/function-tests/call-indirect.js: Removed.
|
||
* wasm/js-api/call-indirect-results.js: Removed.
|
||
|
||
2017-06-13 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: import updated spec tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=173287
|
||
<rdar://problem/32725975>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Import spec tests as of 31c641cc15f2aedbec2fa45a5185f68416df578b,
|
||
with a few modifications so things work.
|
||
|
||
Fix a bunch of bugs found through this process, and punt a few tests (which I
|
||
marked as blocked by this bug).
|
||
|
||
Fixes:
|
||
|
||
Fix load / store alignment: r216908 erroneously implemented it as bit alignment
|
||
instead of byte alignment. It was also missing memory-alignment.js despite it
|
||
being in the ChangeLog, so add it too. This allows spec-test/align.wast.js to
|
||
pass.
|
||
|
||
Tables can be imported or in a section. There can be only one, but sections can
|
||
be empty. An Elements section can exist if there's no Table, as long as it is
|
||
also empty.
|
||
|
||
Memories can be imported or in a section. There can be only one, but sections
|
||
can be empty. A Data section can exist if there's no Memory, as long as it is
|
||
also empty.
|
||
|
||
Prototypes: stringify without .prototype. in the string.
|
||
|
||
WebAssembly.Table.prototype.grow was plain wrong: it takes a delta parameter,
|
||
not a final size, and throws a RangeError on failure, not a TypeError.
|
||
|
||
Fix compile / instantiate so the reject the promise if given an argument of the
|
||
wrong type (instead of failing instantly).
|
||
|
||
Fix async on neuter test.
|
||
|
||
Element section shouldn't affect any Table if any of the elements are out of
|
||
bounds. We need to process it in two passes.
|
||
|
||
Segment section shouldn't affect any Data if any of the segments are out of
|
||
bounds. We need to process it in two passes.
|
||
|
||
Empty data segments are valid, but only when there is no memory. Their index
|
||
still gets validated, and has to be zero.
|
||
|
||
Punts:
|
||
|
||
Error messages with context, the test seems overly restrictive but this is
|
||
minor.
|
||
|
||
compile/instantiate/validate property descriptors.
|
||
|
||
UTF-8 bugs.
|
||
|
||
Temporarily disable NaN tests. We need to go back and implement the following
|
||
semantics: https://github.com/WebAssembly/spec/pull/414 This doesn't matter as
|
||
much as getting all the other tests passing.
|
||
|
||
Worth noting for NaNs: f64.no_fold_mul_one (also a NaN test) as well as
|
||
no_fold_promote_demote (an interesting corner case which we get wrong). mul by
|
||
one is (assert_return (invoke \"f64.no_fold_mul_one\" (i64.const
|
||
0x7ff4000000000000)) (i64.const 0x7ff8000000000000)) which means converting sNaN
|
||
to qNaN, and promote/demote is (assert_return (invoke \"no_fold_promote_demote\"
|
||
(i32.const 0x7fa00000)) (i32.const 0x7fc00000)) which is the same. I'm not sure
|
||
why they're not allowed.
|
||
|
||
* wasm.yaml:
|
||
* wasm/function-tests/i32-load8-s.js:
|
||
* wasm/function-tests/memory-access-past-4gib.js:
|
||
(const.op.of.WASM.opcodes):
|
||
* wasm/function-tests/memory-alignment.js: Added.
|
||
(const.op.of.WASM.opcodes):
|
||
* wasm/function-tests/memory-section-and-import.js:
|
||
* wasm/js-api/Module-compile.js:
|
||
(async.testPromiseAPI):
|
||
* wasm/js-api/dont-mmap-zero-byte-memory.js:
|
||
(testMems):
|
||
* wasm/js-api/element.js:
|
||
(assert.throws.new.WebAssembly.Module.builder.WebAssembly):
|
||
* wasm/js-api/neutered-inputs.js:
|
||
(const.testFunction): Deleted.
|
||
(const.testConstructor): Deleted.
|
||
* wasm/js-api/table.js:
|
||
(assert.throws.new.WebAssembly.Module.builder.WebAssembly):
|
||
(new.WebAssembly.Module):
|
||
(assert.throws):
|
||
(assertBadTableImport):
|
||
(assert.throws.WebAssembly.Table.prototype.grow):
|
||
(assertBadTableInstance): Deleted.
|
||
* wasm/js-api/test_Data.js:
|
||
(DataSectionWithoutMemory):
|
||
* wasm/spec-harness/index.js:
|
||
(module):
|
||
(uniqueTest): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(register): Deleted.
|
||
(call): Deleted.
|
||
(get instance): Deleted.
|
||
(exports): Deleted.
|
||
(run): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(try.f): Deleted.
|
||
(catch): Deleted.
|
||
(assert_exhaustion): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-harness/testharness.css: Removed.
|
||
* wasm/spec-harness/testharness.js: Removed.
|
||
* wasm/spec-harness/testharnessreport.js: Removed.
|
||
* wasm/spec-harness/wasm-constants.js:
|
||
(assertTraps):
|
||
(assertWasmThrows):
|
||
* wasm/spec-harness/wasm-module-builder.js:
|
||
(Binary.prototype.emit_section):
|
||
(Binary):
|
||
(WasmFunctionBuilder.prototype.addBody):
|
||
(WasmFunctionBuilder.prototype.end):
|
||
(WasmFunctionBuilder):
|
||
(WasmModuleBuilder.prototype.stringToBytes):
|
||
(WasmModuleBuilder.prototype.addCustomSection):
|
||
(WasmModuleBuilder.prototype.addFunctionTableInit):
|
||
(WasmModuleBuilder.prototype.appendToTable):
|
||
(WasmModuleBuilder.prototype.toArray):
|
||
(WasmModuleBuilder.prototype.toBuffer):
|
||
(WasmModuleBuilder.prototype.instantiate):
|
||
(WasmModuleBuilder):
|
||
* wasm/spec-tests/address.wast.js:
|
||
* wasm/spec-tests/align.wast.js: Added.
|
||
* wasm/spec-tests/binary.wast.js:
|
||
* wasm/spec-tests/block.wast.js:
|
||
* wasm/spec-tests/br.wast.js:
|
||
* wasm/spec-tests/br_if.wast.js:
|
||
* wasm/spec-tests/br_table.wast.js:
|
||
* wasm/spec-tests/call.wast.js:
|
||
* wasm/spec-tests/call_indirect.wast.js:
|
||
* wasm/spec-tests/comments.wast.js:
|
||
* wasm/spec-tests/const.wast.js: Added.
|
||
* wasm/spec-tests/conversions.wast.js: Added.
|
||
* wasm/spec-tests/custom_section.wast.js:
|
||
* wasm/spec-tests/exports.wast.js:
|
||
* wasm/spec-tests/f32.wast.js: Added.
|
||
* wasm/spec-tests/f64.wast.js: Added.
|
||
* wasm/spec-tests/fac.wast.js:
|
||
* wasm/spec-tests/float_exprs.wast.js: Added.
|
||
* wasm/spec-tests/float_misc.wast.js: Added.
|
||
* wasm/spec-tests/func.wast.js:
|
||
* wasm/spec-tests/globals.wast.js:
|
||
* wasm/spec-tests/if.wast.js:
|
||
* wasm/spec-tests/imports.wast.js:
|
||
* wasm/spec-tests/inline-module.wast.js: Added.
|
||
* wasm/spec-tests/jsapi.js:
|
||
(testJSAPI.test):
|
||
(testJSAPI):
|
||
* wasm/spec-tests/labels.wast.js:
|
||
* wasm/spec-tests/loop.wast.js:
|
||
* wasm/spec-tests/memory.wast.js:
|
||
* wasm/spec-tests/memory_trap.wast.js: Added.
|
||
* wasm/spec-tests/names.wast.js:
|
||
* wasm/spec-tests/nop.wast.js:
|
||
* wasm/spec-tests/return.wast.js:
|
||
* wasm/spec-tests/stack.wast.js:
|
||
* wasm/spec-tests/token.wast.js: Added.
|
||
* wasm/spec-tests/type.wast.js: Added.
|
||
* wasm/spec-tests/typecheck.wast.js:
|
||
* wasm/spec-tests/unreachable.wast.js:
|
||
* wasm/spec-tests/unreached-invalid.wast.js:
|
||
* wasm/spec-tests/unwind.wast.js:
|
||
* wasm/spec-tests/utf8-custom-section-id.wast.js: Added.
|
||
* wasm/spec-tests/utf8-import-field.wast.js: Added.
|
||
* wasm/spec-tests/utf8-import-module.wast.js: Added.
|
||
|
||
2017-06-13 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed JSC test gardening.
|
||
|
||
* stress/check-string-ident.js:
|
||
* stress/new-largeish-contiguous-array-with-size.js:
|
||
|
||
2017-06-13 Michael Saboff <msaboff@apple.com>
|
||
|
||
DFG doesn't properly handle a property that is change to read only in a prototype
|
||
https://bugs.webkit.org/show_bug.cgi?id=173321
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* ChakraCore.yaml: Renabled fieldopts/objtypespec-newobj-invalidation.1.js.
|
||
* stress/regress-173321.js: Added new regression test.
|
||
(shouldBe):
|
||
(SimpleObject):
|
||
(test):
|
||
|
||
2017-06-12 Saam Barati <sbarati@apple.com>
|
||
|
||
Update test262 test expectation since r218082 makes new tests pass.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-06-12 Saam Barati <sbarati@apple.com>
|
||
|
||
We should not claim that SpecEmpty is filtered out of cell checks on 64 bit platforms
|
||
https://bugs.webkit.org/show_bug.cgi?id=172957
|
||
<rdar://problem/32602704>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/spec-empty-flows-through-cell-checks.js: Added.
|
||
(A):
|
||
(B):
|
||
(i.catch):
|
||
|
||
2017-06-12 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
We incorrectly allow escaped characters in keyword tokens
|
||
https://bugs.webkit.org/show_bug.cgi?id=171310
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/destructuring-assignment-syntax.js:
|
||
* stress/error-messages-for-in-operator-should-not-crash.js:
|
||
(catch):
|
||
* stress/reserved-word-with-escape.js:
|
||
(testSyntaxError.String.raw.v):
|
||
(String.raw.SyntaxError.Cannot.use.the.keyword.string_appeared_here.as.a.name):
|
||
(testSyntaxError.String.raw.a):
|
||
* JSTests/ChakraCore/test/Basics/IdsWithEscapes.baseline-jsc:
|
||
|
||
2017-06-09 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Add ArrayIndexOf intrinsic
|
||
https://bugs.webkit.org/show_bug.cgi?id=172421
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-indexof-array-prototype-change.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32):
|
||
* stress/array-indexof-have-a-bad-time-getter.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32):
|
||
* stress/array-indexof-have-a-bad-time.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32):
|
||
* stress/array-indexof-hole-with-prototype.js: Added.
|
||
(shouldBe):
|
||
(indexOf):
|
||
* stress/array-indexof-hole.js: Added.
|
||
(shouldBe):
|
||
(indexOf):
|
||
* stress/array-indexof-index.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32):
|
||
(indexOfDouble):
|
||
(indexOfString):
|
||
(indexOfObject):
|
||
(indexOfValue):
|
||
* stress/array-indexof-negative-index.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32):
|
||
(indexOfDouble):
|
||
(indexOfString):
|
||
(indexOfObject):
|
||
(indexOfValue):
|
||
* stress/array-indexof-non-int32-start-index.js: Added.
|
||
(shouldBe):
|
||
(indexOf):
|
||
(object.valueOf):
|
||
* stress/array-indexof-object-prototype-change.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32):
|
||
* stress/array-indexof-object.js: Added.
|
||
(shouldBe):
|
||
(indexOf):
|
||
* stress/array-indexof-original-array.js: Added.
|
||
(shouldBe):
|
||
(indexOfInt32):
|
||
* stress/array-indexof-string.js: Added.
|
||
(shouldBe):
|
||
(indexOf):
|
||
* stress/array-indexof-structure-change-convert.js: Added.
|
||
(shouldBe):
|
||
(indexOf):
|
||
* stress/array-indexof-structure-change.js: Added.
|
||
(shouldBe):
|
||
(indexOf):
|
||
* stress/array-indexof.js: Added.
|
||
(shouldBe):
|
||
(indexOf):
|
||
|
||
2017-06-11 Keith Miller <keith_miller@apple.com>
|
||
|
||
TypedArray constructor with string shouldn't throw
|
||
https://bugs.webkit.org/show_bug.cgi?id=173181
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
We should be coercing primitive arguments to numbers in the various
|
||
TypedArray constructors.
|
||
|
||
* stress/typedarray-constructor.js:
|
||
|
||
2017-06-11 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, update test results part 3
|
||
https://bugs.webkit.org/show_bug.cgi?id=173227
|
||
|
||
* microbenchmarks/regexp-prototype-search-observable-side-effects.js:
|
||
|
||
2017-06-10 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, update test results part 2
|
||
https://bugs.webkit.org/show_bug.cgi?id=173227
|
||
|
||
* test262.yaml:
|
||
|
||
2017-06-10 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, update test results
|
||
https://bugs.webkit.org/show_bug.cgi?id=173227
|
||
|
||
* microbenchmarks/string-prototype-search-observable-side-effects.js:
|
||
* test262.yaml:
|
||
|
||
2017-06-10 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Update RegExp.prototype.[@@search]] implementation according to the latest spec
|
||
https://bugs.webkit.org/show_bug.cgi?id=173227
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Update the test.
|
||
|
||
* es6/Proxy_internal_get_calls_RegExp.prototype[Symbol.search].js:
|
||
|
||
2017-06-08 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: We should only create wrappers for functions that can be exported
|
||
https://bugs.webkit.org/show_bug.cgi?id=173088
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Remove a bunch of old tests that are actually duplicates of the spec-tests and rely
|
||
on the old testWasmModuleFunctions api, which has been removed.
|
||
|
||
* wasm/function-tests/copysign.js: Removed.
|
||
* wasm/function-tests/ctz.js: Removed.
|
||
* wasm/function-tests/drop.js: Removed.
|
||
* wasm/function-tests/dumb-eq-if-then-else.js: Removed.
|
||
* wasm/function-tests/dumb-less-than-fallthrough.js: Removed.
|
||
* wasm/function-tests/dumb-less-than-ite.js: Removed.
|
||
* wasm/function-tests/eqz.js: Removed.
|
||
* wasm/function-tests/i32-trunc-s-f32.js: Removed.
|
||
* wasm/function-tests/i32-trunc-s-f64.js: Removed.
|
||
* wasm/function-tests/i32-trunc-u-f32.js: Removed.
|
||
* wasm/function-tests/i32-trunc-u-f64.js: Removed.
|
||
* wasm/function-tests/i64-trunc-s-f32.js: Removed.
|
||
* wasm/function-tests/i64-trunc-s-f64.js: Removed.
|
||
* wasm/function-tests/i64-trunc-u-f32.js: Removed.
|
||
* wasm/function-tests/i64-trunc-u-f64.js: Removed.
|
||
* wasm/function-tests/if-then-else-fallthrough.js: Removed.
|
||
* wasm/function-tests/if-then-fallthrough.js: Removed.
|
||
* wasm/function-tests/int-to-floating-point.js: Removed.
|
||
* wasm/function-tests/loop-mult.js:
|
||
* wasm/function-tests/loop-sum.js:
|
||
* wasm/function-tests/max.js: Removed.
|
||
* wasm/function-tests/min.js: Removed.
|
||
* wasm/function-tests/nearest.js: Removed.
|
||
* wasm/function-tests/nop.js: Removed.
|
||
* wasm/function-tests/popcnt.js: Removed.
|
||
* wasm/function-tests/ret5.js:
|
||
* wasm/function-tests/select.js: Removed.
|
||
* wasm/function-tests/tee-local.js: Removed.
|
||
* wasm/function-tests/trunc.js: Removed.
|
||
|
||
2017-06-07 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: test imports and exports with 16-bit characters
|
||
https://bugs.webkit.org/show_bug.cgi?id=165977
|
||
<rdar://problem/29760130>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
The output for import failure was improved, so many tests need to
|
||
be updated here. Only one has new tests as noted below.
|
||
|
||
* wasm/function-tests/memory-import-and-grow.js:
|
||
* wasm/js-api/Instance.imports.exports.unicode.js: Added. Main new test.
|
||
(idxModule):
|
||
* wasm/js-api/global-error.js:
|
||
(new.Number):
|
||
(assert.throws):
|
||
* wasm/js-api/table.js:
|
||
(assert.throws):
|
||
(new.WebAssembly.Table):
|
||
* wasm/js-api/test_memory.js:
|
||
(test):
|
||
* wasm/js-api/wasm-to-wasm-bad-signature.js:
|
||
(BadSignatureDropStartParams.):
|
||
(BadSignatureDropStartParams):
|
||
(BadSignatureDropEndParams.):
|
||
(BadSignatureSwapParam.):
|
||
(BadSignatureRet.):
|
||
* wasm/js-api/web-assembly-instantiate.js:
|
||
(assert.asyncTest.async.test):
|
||
(assert.asyncTest):
|
||
* wasm/js-api/wrapper-function.js:
|
||
(return.new.WebAssembly.Module):
|
||
|
||
2017-06-07 Mark Lam <mark.lam@apple.com>
|
||
|
||
Restrict the regress-173035.js test to only run on Darwin x86-64.
|
||
https://bugs.webkit.org/show_bug.cgi?id=173075
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
This is because the 32-bit x86 build will fail to mmap the 0x3f900000 bytes that
|
||
this test will require to succeed. Here's an example of this failure:
|
||
https://build.webkit.org/builders/Apple%20Sierra%2032-bit%20JSC%20%28BuildAndTest%29/builds/866/steps/webkit-32bit-jsc-test/logs/stdio
|
||
|
||
Since the issue is due to allocation of a very large amount of memory, the test
|
||
will probably fail on iOS and other platforms as well. Hence, we should just
|
||
skip this test for any platforms that is not Darwin x86-64.
|
||
|
||
* stress/regress-173035.js:
|
||
|
||
2017-06-07 Mark Lam <mark.lam@apple.com>
|
||
|
||
ASSERTION failure: !masqueradesAsUndefinedWatchpointIsStillValid() || !isKnownCell(operand.node())
|
||
https://bugs.webkit.org/show_bug.cgi?id=168587
|
||
|
||
Not reviewed.
|
||
|
||
Unskipping the test because the issue has been fixed in https://bugs.webkit.org/show_bug.cgi?id=172673.
|
||
|
||
* stress/test-finally.js:
|
||
|
||
2017-06-06 Mark Lam <mark.lam@apple.com>
|
||
|
||
Contiguous storage butterfly length should not exceed MAX_STORAGE_VECTOR_LENGTH.
|
||
https://bugs.webkit.org/show_bug.cgi?id=173035
|
||
<rdar://problem/32554593>
|
||
|
||
Reviewed by Geoffrey Garen and Filip Pizlo.
|
||
|
||
* stress/regress-173035.js: Added.
|
||
|
||
2017-06-06 Saam Barati <sbarati@apple.com>
|
||
|
||
Make sure we restore SP when doing calls that could be to JS
|
||
https://bugs.webkit.org/show_bug.cgi?id=172946
|
||
<rdar://problem/32579026>
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* wasm/function-tests/many-args-tail-call-sp-restored.js: Added.
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.f1):
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.end):
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.f2):
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.let.instance.new.WebAssembly.Instance.new.WebAssembly.Module.builder.WebAssembly):
|
||
|
||
2017-06-06 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Unreviewed rollout r217807. Caused a test to crash.
|
||
|
||
* heapProfiler/class-names.js: Removed.
|
||
* heapProfiler/driver/driver.js:
|
||
(CheapHeapSnapshotNode):
|
||
(CheapHeapSnapshot):
|
||
(createCheapHeapSnapshot):
|
||
(HeapSnapshot):
|
||
(createHeapSnapshot):
|
||
* typeProfiler/inheritance.js:
|
||
(wrapper.A):
|
||
(wrapper.B):
|
||
(wrapper.C):
|
||
(wrapper):
|
||
|
||
2017-06-06 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
index out of bound in bytecodebasicblock
|
||
https://bugs.webkit.org/show_bug.cgi?id=172963
|
||
|
||
Reviewed by Saam Barati and Mark Lam.
|
||
|
||
* stress/dfg-call-class-constructor.js: Added.
|
||
(Foo):
|
||
(i.catch):
|
||
|
||
2017-06-05 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Web Inspector: Improve ES6 Class instances in Heap Snapshot instances view
|
||
https://bugs.webkit.org/show_bug.cgi?id=172848
|
||
<rdar://problem/25709212>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* typeProfiler/inheritance.js:
|
||
Rewrite the test slightly for clarity. The hoisting was confusing.
|
||
|
||
* heapProfiler/class-names.js: Added.
|
||
(MyES5Class):
|
||
(MyES6Class):
|
||
(MyES6Subclass):
|
||
Test object types and improved class names.
|
||
|
||
* heapProfiler/driver/driver.js:
|
||
(CheapHeapSnapshotNode):
|
||
(CheapHeapSnapshot):
|
||
(createCheapHeapSnapshot):
|
||
(HeapSnapshot):
|
||
(createHeapSnapshot):
|
||
Update snapshot parsing from version 1 to version 2.
|
||
|
||
2017-06-02 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
ASSERTION FAILED: "We should only declare a function as a lexically scoped variable in scopes where var declarations aren't allowed. ..." for function redeclaration with async function module export
|
||
https://bugs.webkit.org/show_bug.cgi?id=168844
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/async-function-export.js: Added.
|
||
(f):
|
||
(export.async.f):
|
||
|
||
2017-06-02 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
ES2015 modules - Export default function hoisting
|
||
https://bugs.webkit.org/show_bug.cgi?id=170174
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
This issue itself is solved by fixing function declaration hoisting rules.
|
||
This patch just adds the specific test to modules tests to ensure the bug
|
||
is fixed.
|
||
|
||
* modules/export-default-function-hoisting.js: Added.
|
||
* modules/export-default-function-hoisting/cappuccino.js: Added.
|
||
(import.drinkCocoa.from.string_appeared_here.export.default.drinkCappuccino):
|
||
* modules/export-default-function-hoisting/cocoa.js: Added.
|
||
(export.default.drinkCocoa):
|
||
|
||
2017-06-01 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
Class Proxy can't be extended
|
||
https://bugs.webkit.org/show_bug.cgi?id=169040
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Adding tests that check correctness of Proxy to ES6 `class`
|
||
Bug is already fixed in https://bugs.webkit.org/show_bug.cgi?id=164849
|
||
|
||
* stress/proxy-class.js: Added.
|
||
(assert):
|
||
(throw.new.Error.SuperClass):
|
||
(throw.new.Error.A):
|
||
(throw.new.Error):
|
||
|
||
2017-05-31 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Implement String.prototype.concat in JS builtins
|
||
https://bugs.webkit.org/show_bug.cgi?id=172798
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* microbenchmarks/string-concat-convert.js: Added.
|
||
(test):
|
||
* microbenchmarks/string-concat-long-convert.js: Added.
|
||
(test):
|
||
* microbenchmarks/string-concat-long.js: Added.
|
||
(test):
|
||
* microbenchmarks/string-concat.js: Added.
|
||
(test):
|
||
|
||
2017-05-31 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
Rolling out: Prevent async methods named 'function'
|
||
https://bugs.webkit.org/show_bug.cgi?id=172776
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/async-await-syntax.js:
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntax):
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode):
|
||
(prototype.testTopLevelAsyncAwaitSyntaxStrictMode.testSyntax):
|
||
(prototype.testTopLevelAsyncAwaitSyntaxStrictMode):
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntaxError):
|
||
|
||
2017-05-31 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip flaky JSC test stress/test-finally.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=168587
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/test-finally.js:
|
||
|
||
2017-05-30 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
Prevent async methods named 'function' in Object literal
|
||
https://bugs.webkit.org/show_bug.cgi?id=172660
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-await-syntax.js:
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntaxError):
|
||
|
||
2017-05-30 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
ASSERTION FAILED: generator.isConstructor() || generator.derivedContextType() == DerivedContextType::DerivedConstructorContext
|
||
https://bugs.webkit.org/show_bug.cgi?id=171274
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-arrow-functions-lexical-binding-in-class.js:
|
||
(shouldBeAsync):
|
||
(shouldBeAsyncAndStoreBind):
|
||
(promise.new.Promise):
|
||
(ChildClass4):
|
||
(ChildClass4.prototype.classValue):
|
||
(ChildClass4.prototype.get classProperty):
|
||
* stress/async-arrow-functions-lexical-super-binding.js:
|
||
(A):
|
||
(const.childA1.new.prototype.var.f.async):
|
||
(const.childA1.new.var):
|
||
(const.childA1.new):
|
||
(const.childA2.new.prototype.var.f.async):
|
||
(const.childA2.new.var):
|
||
(const.childA2.new):
|
||
(const.childA3.new.prototype.var.f.async):
|
||
(const.childA3.new.var):
|
||
(const.childA3.new):
|
||
(try.childA4.new.prototype.var.f.async):
|
||
(try.childA4.new.var):
|
||
(try.childA4.new):
|
||
(catch):
|
||
(const.childA5.new.prototype.var.f.async):
|
||
(const.childA5.new.var):
|
||
(const.childA5.new):
|
||
(checkClass):
|
||
(checkClass.new.prototype.var.f.async):
|
||
(checkClass.new.var):
|
||
(checkClass.new):
|
||
(checkClass.new.prototype.method):
|
||
(checkClass.new.prototype.prop):
|
||
|
||
2017-05-27 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Map and Set constructors should have fast path for cloning
|
||
https://bugs.webkit.org/show_bug.cgi?id=172413
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/map-clone-instance-iterator-change.js: Added.
|
||
(shouldBe):
|
||
(map.Symbol.iterator):
|
||
* stress/map-clone-iterator-change.js: Added.
|
||
(shouldBe):
|
||
(Map.prototype.Symbol.iterator):
|
||
* stress/map-clone-next-change.js: Added.
|
||
(shouldBe):
|
||
(map.Symbol.iterator.__proto__.next):
|
||
* stress/map-clone.js: Added.
|
||
(shouldBe):
|
||
(Map.prototype):
|
||
* stress/map-inherit-set.js: Added.
|
||
(shouldBe):
|
||
(DerivedMap):
|
||
(set for):
|
||
* stress/set-clone-instance-iterator-change.js: Added.
|
||
(shouldBe):
|
||
(set Symbol.iterator):
|
||
* stress/set-clone-iterator-change.js: Added.
|
||
(shouldBe):
|
||
(set Set.prototype.Symbol.iterator):
|
||
* stress/set-clone-next-change.js: Added.
|
||
(shouldBe):
|
||
(set Symbol.iterator.__proto__.next):
|
||
* stress/set-clone.js: Added.
|
||
(shouldBe):
|
||
(set Set.prototype.add):
|
||
* stress/set-inherit-add.js: Added.
|
||
(shouldBe):
|
||
(DerivedSet.set add):
|
||
|
||
2017-05-26 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r217458.
|
||
|
||
This change caused 55 JSC test failures.
|
||
|
||
Reverted changeset:
|
||
|
||
"Date should use historical data if it's available."
|
||
https://bugs.webkit.org/show_bug.cgi?id=172592
|
||
http://trac.webkit.org/changeset/217458
|
||
|
||
2017-05-26 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Give ModuleProgram the same treatment that we did for ProgramCode in bug#167725
|
||
https://bugs.webkit.org/show_bug.cgi?id=167805
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/module-jit-reachability.js: Added.
|
||
|
||
2017-05-26 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
Prevent async methods named 'function'
|
||
https://bugs.webkit.org/show_bug.cgi?id=172598
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/async-await-syntax.js:
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntax):
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode):
|
||
(prototype.testTopLevelAsyncAwaitSyntaxStrictMode.testSyntax):
|
||
(prototype.testTopLevelAsyncAwaitSyntaxStrictMode):
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntaxError):
|
||
|
||
2017-05-25 Keith Miller <keith_miller@apple.com>
|
||
|
||
Date should use historical data if it's available.
|
||
https://bugs.webkit.org/show_bug.cgi?id=172592
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Remove parts of the date tests that rely on the absence of
|
||
historical data in Date.
|
||
|
||
* mozilla/ecma/Date/15.9.5.31-1.js:
|
||
(getTestCases):
|
||
* mozilla/ecma/Date/15.9.5.35-1.js:
|
||
(getTestCases):
|
||
|
||
2017-05-25 Saam Barati <sbarati@apple.com>
|
||
|
||
Our for-in optimization in the bytecode generator does its static analysis incorrectly
|
||
https://bugs.webkit.org/show_bug.cgi?id=172532
|
||
<rdar://problem/32369452>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/for-in-invalidation-for-any-write.js: Added.
|
||
(assert):
|
||
(test):
|
||
(test.i):
|
||
|
||
2017-05-25 Mark Lam <mark.lam@apple.com>
|
||
|
||
ObjectToStringAdaptiveInferredPropertyValueWatchpoint should not reinstall itself nor handleFire if it's dying shortly.
|
||
https://bugs.webkit.org/show_bug.cgi?id=172548
|
||
<rdar://problem/31458393>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-172548.patch: Added.
|
||
|
||
2017-05-23 Saam Barati <sbarati@apple.com>
|
||
|
||
We should not mmap zero bytes for a memory in Wasm
|
||
https://bugs.webkit.org/show_bug.cgi?id=172528
|
||
<rdar://problem/32257076>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* wasm/js-api/dont-mmap-zero-byte-memory.js: Added.
|
||
(testMems):
|
||
|
||
2017-05-23 Saam Barati <sbarati@apple.com>
|
||
|
||
CFGSimplificationPhase should not merge a block with itself
|
||
https://bugs.webkit.org/show_bug.cgi?id=172508
|
||
<rdar://problem/28424006>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/dont-crash-in-cfg-simplification.js: Added.
|
||
(bar):
|
||
(baz):
|
||
(foo):
|
||
|
||
2017-05-20 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[FTL] Support GetByVal with ArrayStorage and SlowPutArrayStorage
|
||
https://bugs.webkit.org/show_bug.cgi?id=172216
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-storage-get-by-val.js: Added.
|
||
(shouldBe):
|
||
(testOutOfBound):
|
||
(testInBound):
|
||
(testSlowPutOutOfBound):
|
||
(testSlowPutInBound):
|
||
|
||
2017-05-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, fix commented out tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=172225
|
||
|
||
* stress/get-by-val-string.js:
|
||
(object.43):
|
||
(Hello):
|
||
(Hello.prototype.get 42):
|
||
(Hello.prototype.43):
|
||
(Derived):
|
||
(shouldBe):
|
||
(throw.new.Error): Deleted.
|
||
|
||
2017-05-21 Saam Barati <sbarati@apple.com>
|
||
|
||
We incorrectly throw a syntax error when declaring a top level for-loop iteration variable the same as a parameter
|
||
https://bugs.webkit.org/show_bug.cgi?id=171041
|
||
<rdar://problem/32082516>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/lexical-scoping-for-loop.js: Added.
|
||
(assert):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
(test6):
|
||
(let.test7):
|
||
(let.test8):
|
||
(let.test9):
|
||
(let.test10):
|
||
(let.test11):
|
||
(let.test12):
|
||
|
||
2017-05-19 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Make get_by_val & string "499" to number 499
|
||
https://bugs.webkit.org/show_bug.cgi?id=172225
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/get-by-val-string.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(object.43):
|
||
(Hello):
|
||
(Hello.prototype.get 42):
|
||
(Hello.prototype.43):
|
||
(Derived):
|
||
|
||
2017-05-19 Mark Lam <mark.lam@apple.com>
|
||
|
||
[Re-landing] DFG::SpeculativeJIT::pickCanTrample() is wrongly ignoring result registers.
|
||
https://bugs.webkit.org/show_bug.cgi?id=172383
|
||
<rdar://problem/31418651>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-172383.js: Added.
|
||
|
||
2017-05-19 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r217156.
|
||
|
||
This change broke the iOS build.
|
||
|
||
Reverted changeset:
|
||
|
||
"DFG::SpeculativeJIT::pickCanTrample() is wrongly ignoring
|
||
result registers."
|
||
https://bugs.webkit.org/show_bug.cgi?id=172383
|
||
http://trac.webkit.org/changeset/217156
|
||
|
||
2017-05-19 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add missing exception check.
|
||
https://bugs.webkit.org/show_bug.cgi?id=172346
|
||
<rdar://problem/32289640>
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/regress-172346.js: Added.
|
||
|
||
2017-05-19 Mark Lam <mark.lam@apple.com>
|
||
|
||
DFG::SpeculativeJIT::pickCanTrample() is wrongly ignoring result registers.
|
||
https://bugs.webkit.org/show_bug.cgi?id=172383
|
||
<rdar://problem/31418651>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-172383.js: Added.
|
||
|
||
2017-05-19 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
arrayProtoPrivateFuncConcatMemcpy needs to be down with firstArray being undecided
|
||
https://bugs.webkit.org/show_bug.cgi?id=172369
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/undecided-concat.js: Added.
|
||
|
||
2017-05-19 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC][DFG][DOMJIT] Extend CheckDOM to CheckSubClass
|
||
https://bugs.webkit.org/show_bug.cgi?id=172098
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/check-sub-class.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(calling):
|
||
(array.forEach):
|
||
(i.array.forEach):
|
||
|
||
2017-05-18 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: exports is a getter
|
||
https://bugs.webkit.org/show_bug.cgi?id=172129
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Update test to reflect new semantics.
|
||
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
|
||
2017-05-18 Saam Barati <sbarati@apple.com>
|
||
|
||
Proxy's [[Get]] passes incorrect receiver
|
||
https://bugs.webkit.org/show_bug.cgi?id=164849
|
||
<rdar://problem/31767058>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/proxy-get-set-correct-receiver.js: Added.
|
||
(assert):
|
||
(test):
|
||
(test.let.target.set prop):
|
||
(test.let.target.get prop):
|
||
(test.get let):
|
||
* stress/proxy-set.js:
|
||
(let.target.get x):
|
||
* stress/reflect-set-proxy-set.js:
|
||
(let.target.get x):
|
||
* stress/reflect-set-receiver-proxy-set.js:
|
||
(let.target.get x):
|
||
|
||
2017-05-18 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Constructor calls set this too early
|
||
https://bugs.webkit.org/show_bug.cgi?id=172302
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
This tests all three kinds of constructs in BytecodeGenerator. All three were previously
|
||
wrong.
|
||
|
||
* stress/construct-overwritten-variable.js: Added.
|
||
(new.x.x):
|
||
* stress/construct-spread-overwritten-variable-2.js: Added.
|
||
(new.x.x):
|
||
* stress/construct-spread-overwritten-variable.js: Added.
|
||
(new.x.x):
|
||
|
||
2017-05-18 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: perform stack checks
|
||
https://bugs.webkit.org/show_bug.cgi?id=165546
|
||
<rdar://problem/29760307>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* wasm.yaml:
|
||
* wasm/function-tests/factorial.js:
|
||
* wasm/function-tests/float-sub.js:
|
||
* wasm/function-tests/stack-overflow.js: Added.
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.makeInstance):
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.assertOverflows):
|
||
(assertOverflows.makeInstance):
|
||
(assertOverflows.makeInstance2):
|
||
(assertOverflows.assertThrows):
|
||
(assertOverflows):
|
||
(assertThrows.test.makeSignature):
|
||
(assertThrows.test.makeInstance):
|
||
(assertThrows.test):
|
||
(assertThrows):
|
||
|
||
2017-05-18 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly API: test with neutered inputs
|
||
https://bugs.webkit.org/show_bug.cgi?id=163899
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* wasm/js-api/neutered-inputs.js: Added.
|
||
(const.testFunction):
|
||
(const.testConstructor):
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
|
||
2017-05-18 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DFG inlining should be hardened for the no-result case
|
||
https://bugs.webkit.org/show_bug.cgi?id=172290
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-constructor-no-result.js: Added.
|
||
(foo):
|
||
* stress/pow-no-result.js: Added.
|
||
(foo):
|
||
|
||
2017-05-18 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r217031, r217032, and r217037.
|
||
https://bugs.webkit.org/show_bug.cgi?id=172293
|
||
|
||
cause linking errors in Windows (Requested by yusukesuzuki on
|
||
#webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"[JSC][DFG][DOMJIT] Extend CheckDOM to CheckSubClass"
|
||
https://bugs.webkit.org/show_bug.cgi?id=172098
|
||
http://trac.webkit.org/changeset/217031
|
||
|
||
"Unreviewed, rebaseline for newly added ClassInfo"
|
||
https://bugs.webkit.org/show_bug.cgi?id=172098
|
||
http://trac.webkit.org/changeset/217032
|
||
|
||
"Unreviewed, fix debug and non-JIT build"
|
||
https://bugs.webkit.org/show_bug.cgi?id=172098
|
||
http://trac.webkit.org/changeset/217037
|
||
|
||
2017-05-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC][DFG][DOMJIT] Extend CheckDOM to CheckSubClass
|
||
https://bugs.webkit.org/show_bug.cgi?id=172098
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/check-sub-class.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(calling):
|
||
(array.forEach):
|
||
(i.array.forEach):
|
||
|
||
2017-05-17 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Unreviewed, address mlam's review feedback.
|
||
|
||
* stress/arguments-elimination-varargs-too-many-args-arg-count.js:
|
||
|
||
2017-05-17 Saam Barati <sbarati@apple.com>
|
||
|
||
We don't do context switches for Wasm->Wasm call indirect
|
||
https://bugs.webkit.org/show_bug.cgi?id=172188
|
||
<rdar://problem/32231828>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/function-tests/context-switch.js: Added.
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.makeInstance):
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.makeInstance2):
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.const.i2.makeInstance2):
|
||
(makeInstance):
|
||
(makeInstance2):
|
||
(assert.eq.makeInstance):
|
||
(assert.eq.makeInstance2):
|
||
(assert.eq):
|
||
|
||
2017-05-17 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
JSC: Incorrect LoadVarargs handling in ArgumentsEliminationPhase::transform
|
||
https://bugs.webkit.org/show_bug.cgi?id=172208
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arguments-elimination-varargs-too-many-args-arg-count.js: Added.
|
||
(foo):
|
||
(bar):
|
||
(baz):
|
||
|
||
2017-05-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Constant Folding Phase should convert MakeRope("", String) => Identity(String)
|
||
https://bugs.webkit.org/show_bug.cgi?id=172115
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/constant-folding-should-fold-make-rope-with-empty-strings.js: Added.
|
||
(shouldBe):
|
||
(unknown):
|
||
(readWord1):
|
||
(readWord2):
|
||
(readWord3):
|
||
(readWord4):
|
||
|
||
2017-05-16 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: add memory fuzzer
|
||
https://bugs.webkit.org/show_bug.cgi?id=169976
|
||
<rdar://problem/31965328>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/fuzz/memory.js: Added.
|
||
(const.insert):
|
||
(const.action.string_appeared_here):
|
||
(const.performAction):
|
||
(catch):
|
||
|
||
2017-05-16 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: validate load / store alignment
|
||
https://bugs.webkit.org/show_bug.cgi?id=168836
|
||
<rdar://problem/31965349>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/WASM.js: fix regular expression greed
|
||
* wasm/function-tests/memory-alignment.js: Added.
|
||
(const.op.of.WASM.opcodes):
|
||
* wasm/wasm.json: fix formatting
|
||
|
||
2017-05-15 Mark Lam <mark.lam@apple.com>
|
||
|
||
Rolling out r214038 and r213697: Crashes when using computed properties with rest destructuring and object spread.
|
||
https://bugs.webkit.org/show_bug.cgi?id=172147
|
||
|
||
Rubber-stamped by Saam Barati.
|
||
|
||
* stress/object-rest-deconstruct.js: Removed.
|
||
* stress/object-spread.js: Removed.
|
||
|
||
2017-05-11 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: stop supporting 0xD
|
||
https://bugs.webkit.org/show_bug.cgi?id=168788
|
||
<rdar://problem/31880922>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Test that only version 1 is supported.
|
||
|
||
* wasm/js-api/version.js: Added.
|
||
|
||
2017-05-10 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssemby: builder doesn't do Memory section maximum correctly
|
||
https://bugs.webkit.org/show_bug.cgi?id=171931
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/Builder.js:
|
||
(export.default.Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.case.string_appeared_here.this.section):
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.emitters.Memory):
|
||
* wasm/function-tests/memory-grow-invalid.js: Added.
|
||
|
||
2017-05-10 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: support name section
|
||
https://bugs.webkit.org/show_bug.cgi?id=171263
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/function-tests/nameSection.js: Added.
|
||
(const.compile):
|
||
* wasm/function-tests/nameSection.wasm: Added.
|
||
* wasm/function-tests/stack-trace.js: Update format
|
||
|
||
2017-05-10 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Null pointer dereference in WTF::RefPtr<WTF::StringImpl>::operator!() under slow_path_get_direct_pname
|
||
https://bugs.webkit.org/show_bug.cgi?id=171801
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
These tests used to crash. The prefix and postfix tests cover different paths, except
|
||
postfix-ignored goes down the same path as prefix due to an optimization.
|
||
|
||
* stress/for-in-postfix-ignored-index.js: Added.
|
||
(foo):
|
||
* stress/for-in-postfix-index.js: Added.
|
||
(foo):
|
||
* stress/for-in-prefix-index.js: Added.
|
||
(foo):
|
||
|
||
2017-05-08 Mark Lam <mark.lam@apple.com>
|
||
|
||
op_throw_static_error's use of its first operand should be reflected in DFG BytecodeUseDef as well.
|
||
https://bugs.webkit.org/show_bug.cgi?id=171786
|
||
<rdar://problem/32051023>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/bug-171786.js: Added.
|
||
|
||
2017-05-06 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
[ES6] Arrow function. Issue in access to this after eval('super()') within constructor
|
||
https://bugs.webkit.org/show_bug.cgi?id=171543
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arrowfunction-lexical-bind-supercall-4.js:
|
||
(J):
|
||
(K):
|
||
|
||
2017-05-05 Saam Barati <sbarati@apple.com>
|
||
|
||
putDirectIndex does not properly do defineOwnProperty
|
||
https://bugs.webkit.org/show_bug.cgi?id=171591
|
||
<rdar://problem/31735695>
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/array-prototype-splice-making-typed-array.js:
|
||
(test):
|
||
* stress/array-species-config-array-constructor.js:
|
||
(shouldThrow):
|
||
(test):
|
||
* stress/put-direct-index-broken-2.js: Added.
|
||
(assert):
|
||
(test):
|
||
(makeLengthWritable):
|
||
(set get restoreOldDesc):
|
||
* stress/put-direct-index-broken.js: Added.
|
||
(whatToTest):
|
||
(tryRunning):
|
||
(tryItOut):
|
||
* stress/put-indexed-getter-setter.js: Added.
|
||
(foo.X.prototype.set 7):
|
||
(foo.X.prototype.get 7):
|
||
(foo.X):
|
||
(foo):
|
||
|
||
2017-05-04 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Math unary functions should be handled by DFG
|
||
https://bugs.webkit.org/show_bug.cgi?id=171269
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arith-acos-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueACosNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesACos):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueACosForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueACosForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueACosForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueACosWithException):
|
||
(testException):
|
||
* stress/arith-acosh-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueACoshNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesACosh):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueACoshForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueACoshForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueACoshForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueACoshWithException):
|
||
(testException):
|
||
* stress/arith-asin-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueASinNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesASin):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueASinForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueASinForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueASinForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueASinWithException):
|
||
(testException):
|
||
* stress/arith-asinh-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueASinhNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesASinh):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueASinhForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueASinhForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueASinhForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueASinhWithException):
|
||
(testException):
|
||
* stress/arith-atan-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueATanNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesATan):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueATanForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueATanForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueATanForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueATanWithException):
|
||
(testException):
|
||
* stress/arith-atanh-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueATanhNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesATanh):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueATanhForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueATanhForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueATanhForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueATanhWithException):
|
||
(testException):
|
||
* stress/arith-cbrt-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueCbrtNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesCbrt):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueCbrtForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueCbrtForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueCbrtForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueCbrtWithException):
|
||
(testException):
|
||
* stress/arith-cosh-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueCoshNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesCosh):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueCoshForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueCoshForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueCoshForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueCoshWithException):
|
||
(testException):
|
||
* stress/arith-expm1-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueExpm1NoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesExpm1):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueExpm1ForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueExpm1ForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueExpm1ForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueExpm1WithException):
|
||
(testException):
|
||
* stress/arith-log10-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueLog10NoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesLog10):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueLog10ForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueLog10ForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueLog10ForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueLog10WithException):
|
||
(testException):
|
||
* stress/arith-log2-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueLog2NoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesLog2):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueLog2ForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueLog2ForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueLog2ForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueLog2WithException):
|
||
(testException):
|
||
* stress/arith-sinh-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueSinhNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesSinh):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueSinhForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueSinhForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueSinhForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueSinhWithException):
|
||
(testException):
|
||
* stress/arith-tan-on-various-types.js:
|
||
(isIdentical):
|
||
* stress/arith-tanh-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueTanhNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesTanh):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(testConstant):
|
||
(opaqueTanhForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueTanhForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueTanhForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueTanhWithException):
|
||
(testException):
|
||
|
||
2017-05-03 Keith Miller <keith_miller@apple.com>
|
||
|
||
Array.prototype.sort should also allow a null comparator
|
||
https://bugs.webkit.org/show_bug.cgi?id=171621
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
Add test to make it less likely we revert to the incompatable behavior.
|
||
Also, fix now incorrect tests.
|
||
|
||
* ChakraCore/test/Array/array_sort.baseline-jsc:
|
||
* stress/array-sort-bad-comparator.js:
|
||
(test):
|
||
* stress/sort-null-comparator.js: Added.
|
||
(assertEq):
|
||
|
||
2017-05-03 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] remove unneeded asyncFunctionTests.yaml
|
||
https://bugs.webkit.org/show_bug.cgi?id=171611
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
Async functions have shipped, and those tests are run as part of
|
||
JSTests/stress and JSTests/test262.yaml. The file is no longer needed.
|
||
|
||
* asyncFunctionTests.yaml: Removed.
|
||
* stress/async-await-long-loop.js:
|
||
* stress/async-await-throw-loop.js:
|
||
|
||
2017-05-03 Keith Miller <keith_miller@apple.com>
|
||
|
||
Different behaviour with the .sort(callback) method (unlike Firefox & Chrome)
|
||
https://bugs.webkit.org/show_bug.cgi?id=47825
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/sorting-boolean-result-comparator.js: Added.
|
||
(checkArray):
|
||
|
||
2017-05-02 David Kilzer <ddkilzer@apple.com>
|
||
|
||
check-webkit-style should keep JavaScript test functions in sync
|
||
<https://webkit.org/b/171424>
|
||
|
||
Reviewed by Joseph Pecoraro.
|
||
|
||
This change makes shouldBe(), shouldNotBe(), shouldNotThrow()
|
||
and shouldThrow() in sync with other copies of these methods.
|
||
|
||
* stress/resources/standalone-pre.js:
|
||
(shouldBe): Fix whitespace. Prefix 'exception' and 'quiet'
|
||
variables with underscore.
|
||
(shouldThrow): Fix whitespace.
|
||
|
||
2017-04-30 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
We initialize functions too early in an eval
|
||
https://bugs.webkit.org/show_bug.cgi?id=161099
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/eval-func-decl-with-let-const-class.js: Added.
|
||
|
||
2017-04-30 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
[ES6]. Implement Annex B.3.3 function hoisting rules for eval
|
||
https://bugs.webkit.org/show_bug.cgi?id=163208
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/eval-func-decl-block-scoping-reassign.js: Added.
|
||
(assert):
|
||
(throw.new.Error.f):
|
||
(throw.new.Error):
|
||
* stress/eval-func-decl-block-with-remove.js: Added.
|
||
(assert):
|
||
(foo.boo):
|
||
(foo):
|
||
* stress/eval-func-decl-block-with-var-and-remove.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(joo):
|
||
(koo):
|
||
* stress/eval-func-decl-block-with-var-sinthesize.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(hoo):
|
||
(joo):
|
||
(koo):
|
||
* stress/eval-func-decl-in-block-scope-and-bind-to-top-eval-scope.js: Added.
|
||
* stress/eval-func-decl-in-eval-within-block-with-let.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(goo):
|
||
* stress/eval-func-decl-in-eval-within-with-scope.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(boo.let.val2):
|
||
(boo.let.val3):
|
||
* stress/eval-func-decl-in-frozen-global.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(throw.new.Error):
|
||
(Object.freeze):
|
||
* stress/eval-func-decl-in-global-of-eval.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(bar):
|
||
(baz):
|
||
(foobar):
|
||
* stress/eval-func-decl-in-global.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
* stress/eval-func-decl-in-if.js: Added.
|
||
(assert):
|
||
* stress/eval-func-decl-within-eval-with-reassign-to-var.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(foobar):
|
||
(hoo):
|
||
(joo):
|
||
(koo):
|
||
(loo):
|
||
* stress/eval-func-decl-within-eval-without-reassign-to-let.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(goo):
|
||
* stress/variable-under-tdz-eval-tricky.js:
|
||
(assert):
|
||
* test262.yaml:
|
||
|
||
2017-04-27 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix some RELEASE_ASSERT failures caused by OutOfMemoryErrors.
|
||
https://bugs.webkit.org/show_bug.cgi?id=171404
|
||
<rdar://problem/31876178>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/js-fixed-array-out-of-memory.js: Added.
|
||
|
||
2017-04-27 David Kilzer <ddkilzer@apple.com>
|
||
|
||
Enhance shouldBe()/shouldNotBe() to accept anonymous function arguments
|
||
<https://webkit.org/b/171362>
|
||
<rdar://problem/31867686>
|
||
|
||
Reviewed by Joseph Pecoraro.
|
||
|
||
* stress/resources/standalone-pre.js:
|
||
(shouldBe):
|
||
(shouldNotThrow):
|
||
(shouldThrow):
|
||
- Update shouldBe() to accept anonymous function arguments.
|
||
(The shouldNotBe() function was never copied over.)
|
||
- Also fix shouldThrow()/shouldNotThrow() to accept anonymous
|
||
function arguments (which were missed in r202609 for Bug
|
||
159232).
|
||
|
||
2017-04-27 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Handle PhantomSpread in LoadVarargs as the same to the others
|
||
https://bugs.webkit.org/show_bug.cgi?id=171262
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/spread-outer-create-rest.js: Added.
|
||
(assert):
|
||
(foo):
|
||
(bar):
|
||
(baz):
|
||
|
||
2017-04-26 Saam Barati <sbarati@apple.com>
|
||
|
||
Print Wasm function index in stack trace
|
||
https://bugs.webkit.org/show_bug.cgi?id=171349
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* wasm/function-tests/stack-trace.js: Added.
|
||
(import.Builder.from.string_appeared_here.assert):
|
||
(let.imp):
|
||
* wasm/function-tests/trap-after-cross-instance-call.js:
|
||
(wasmFrameCountFromError):
|
||
* wasm/function-tests/trap-load-2.js:
|
||
(wasmFrameCountFromError):
|
||
* wasm/function-tests/trap-load.js:
|
||
(wasmFrameCountFromError):
|
||
|
||
2017-04-26 Saam Barati <sbarati@apple.com>
|
||
|
||
ASSERTION FAILED: inIndex != notFound in JSC::invalidParameterInSourceAppender()
|
||
https://bugs.webkit.org/show_bug.cgi?id=170924
|
||
<rdar://problem/31721052>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/error-message-for-function-base-not-found.js: Added.
|
||
(assert):
|
||
(throw.new.Error):
|
||
* stress/error-messages-for-in-operator-should-not-crash.js: Added.
|
||
(catch):
|
||
|
||
2017-04-26 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: Implement tier up
|
||
https://bugs.webkit.org/show_bug.cgi?id=170134
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* wasm/function-tests/trap-after-cross-instance-call.js:
|
||
* wasm/tier-up/js-to-wasm.js: Added.
|
||
(async.test):
|
||
* wasm/tier-up/wasm-to-wasm.js: Added.
|
||
(async.test):
|
||
|
||
2017-04-26 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] Object.keys() must discard property names with no PropertyDescriptor
|
||
https://bugs.webkit.org/show_bug.cgi?id=171291
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* es6/Proxy_ownKeys_duplicates.js:
|
||
* stress/proxy-own-keys.js:
|
||
(let.handler.getOwnPropertyDescriptor):
|
||
(let.handler.ownKeys):
|
||
|
||
2017-04-25 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r215476.
|
||
https://bugs.webkit.org/show_bug.cgi?id=171304
|
||
|
||
"It broke JSBench" (Requested by saamyjoon on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"[ES6]. Implement Annex B.3.3 function hoisting rules for
|
||
eval"
|
||
https://bugs.webkit.org/show_bug.cgi?id=163208
|
||
http://trac.webkit.org/changeset/215476
|
||
|
||
2017-04-25 Saam Barati <sbarati@apple.com>
|
||
|
||
JSArray::isArrayPrototypeIteratorProtocolFastAndNonObservable is wrong because it does not do the necessary checks on the base object
|
||
https://bugs.webkit.org/show_bug.cgi?id=171150
|
||
<rdar://problem/31771880>
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* stress/spread-optimized-properly.js: Added.
|
||
(assert):
|
||
(test):
|
||
(shallowEq):
|
||
(makeArrayIterator):
|
||
(test.bar):
|
||
(test.callback):
|
||
(test.arr.__proto__.Symbol.iterator):
|
||
(test.arr.Symbol.iterator):
|
||
(test.get bar):
|
||
(test.hackedNext):
|
||
(test.test):
|
||
(test.):
|
||
|
||
2017-04-25 Mark Lam <mark.lam@apple.com>
|
||
|
||
[Follow up] Array.prototype.slice() should ensure that end >= begin.
|
||
https://bugs.webkit.org/show_bug.cgi?id=170989
|
||
<rdar://problem/31705652>
|
||
|
||
Not reviewed.
|
||
|
||
Follow up to rename a test file that was accidentally named wrongly.
|
||
|
||
* stress/regress-170989.js: Copied from JSTests/stress/regress-170989.patch.
|
||
* stress/regress-170989.patch: Removed.
|
||
|
||
2017-04-25 Mark Lam <mark.lam@apple.com>
|
||
|
||
Array.prototype.slice() should ensure that end >= begin.
|
||
https://bugs.webkit.org/show_bug.cgi?id=170989
|
||
<rdar://problem/31705652>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-170989.patch: Added.
|
||
|
||
2017-04-25 Mark Lam <mark.lam@apple.com>
|
||
|
||
Local CSE wrongly CSEs array accesses with different result types.
|
||
https://bugs.webkit.org/show_bug.cgi?id=170990
|
||
<rdar://problem/31705945>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-170990.js: Added.
|
||
|
||
2017-04-25 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
WebAssembly: exporting a property with a name that's a number doesn't work
|
||
https://bugs.webkit.org/show_bug.cgi?id=168857
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
r213453 allows Wasm instances to expose indexed properties. We activate the tests.
|
||
|
||
* wasm/js-api/test_Instance.js:
|
||
(ExportedNumber):
|
||
|
||
2017-04-24 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/language/expressions/object/method-definition/early-errors-object-method-duplicate-parameters.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=171190
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-await-syntax.js:
|
||
* test262.yaml:
|
||
|
||
2017-04-24 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Use JSFixedArray directly when using call_varargs
|
||
https://bugs.webkit.org/show_bug.cgi?id=171057
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/spread-capture-rest.js: Added.
|
||
(shouldBe):
|
||
(capture):
|
||
(a):
|
||
(b):
|
||
* stress/spread-multi-layers.js: Added.
|
||
(shouldBe):
|
||
(a):
|
||
(b):
|
||
(c):
|
||
(d):
|
||
* stress/spread-non-varargs.js: Added.
|
||
(shouldBe):
|
||
(a):
|
||
(b):
|
||
|
||
2017-04-24 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/language/computed-property-names/class/static/getter-prototype.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170897
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-24 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Address some FIXMEs in JavaScript tests for bugs that have been fixed
|
||
https://bugs.webkit.org/show_bug.cgi?id=171191
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/proxy-is-extensible.js:
|
||
|
||
2017-04-24 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/language/statements/for-of/dstr-array-elem-init-fn-name-arrow.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=171160
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
* stress/inferred-names.js:
|
||
* test262.yaml:
|
||
|
||
2017-04-24 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/language/expressions/generators/yield-as-label.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170979
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-await-module-reserved-word.js:
|
||
* stress/async-await-reserved-word.js:
|
||
Converge on "Cannot" instead of "Can't".
|
||
|
||
* catch-parameter-syntax.js:
|
||
* yield-named-variable-generator.js:
|
||
* yield-named-variable.js:
|
||
* stress/yield-label-generator.js:
|
||
* stress/yield-label.js:
|
||
* stress/yield-reserved-word.js: Added.
|
||
More complete list of when 'yield' is allowed.
|
||
|
||
* ChakraCore/test/strict/23.reservedWords_sm.baseline-jsc:
|
||
* test262.yaml:
|
||
|
||
2017-04-23 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r215674.
|
||
https://bugs.webkit.org/show_bug.cgi?id=171212
|
||
|
||
Possible unintended commit. This patch was on the wrong bug.
|
||
(Requested by JoePeck on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"test262: test262/test/language/expressions/generators/yield-
|
||
as-label.js"
|
||
https://bugs.webkit.org/show_bug.cgi?id=170979
|
||
http://trac.webkit.org/changeset/215674
|
||
|
||
2017-04-23 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/built-ins/Number/prototype/toPrecision/nan.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=171197
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-23 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/language/expressions/generators/yield-as-label.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170979
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-await-module-reserved-word.js:
|
||
* stress/async-await-reserved-word.js:
|
||
Converge on "Cannot" instead of "Can't".
|
||
|
||
* catch-parameter-syntax.js:
|
||
* yield-named-variable-generator.js:
|
||
* yield-named-variable.js:
|
||
* stress/yield-label-generator.js:
|
||
* stress/yield-label.js:
|
||
* stress/yield-reserved-word.js: Added.
|
||
More complete list of when 'yield' is allowed.
|
||
|
||
* ChakraCore/test/strict/23.reservedWords_sm.baseline-jsc:
|
||
* test262.yaml:
|
||
|
||
2017-04-23 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/built-ins/Number/parseFloat.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=171193
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-22 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: Module.exports, Module.imports, Module.customSections are wrong
|
||
https://bugs.webkit.org/show_bug.cgi?id=171078
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
They're static properties of Module, not instance properties of a module.
|
||
https://github.com/WebAssembly/design/blob/master/JS.md#webassemblymoduleexports
|
||
|
||
* wasm/js-api/Module.customSection.js:
|
||
(assert.throws.WebAssembly.Module.customSections):
|
||
(assert.eq):
|
||
(assert.throws.WebAssembly.Module.prototype.customSections): Deleted.
|
||
* wasm/js-api/Module.exports.js:
|
||
(assert.throws.WebAssembly.Module.exports):
|
||
(assert.truthy):
|
||
(assert.throws.WebAssembly.Module.prototype.exports): Deleted.
|
||
* wasm/js-api/Module.imports.js:
|
||
(assert.throws.WebAssembly.Module.imports):
|
||
(assert.truthy):
|
||
(assert.throws.WebAssembly.Module.prototype.imports): Deleted.
|
||
|
||
2017-04-21 JF Bastien <jfbastien@apple.com>
|
||
|
||
Silence noisy test
|
||
|
||
Unreviewed, Fil / Michael and I talked about it in the corridor. I
|
||
just forgot to set verbose to false before commit.
|
||
|
||
* wasm/stress/oom.js:
|
||
|
||
2017-04-20 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC][FTL] FTL should support Arrayify
|
||
https://bugs.webkit.org/show_bug.cgi?id=169596
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arrayify.js: Added.
|
||
(arrayifyInt32):
|
||
(arrayifyDouble):
|
||
(arrayifyContiguous):
|
||
|
||
2017-04-20 Mark Lam <mark.lam@apple.com>
|
||
|
||
virtualThunkFor() needs to materialize its of tagMaskRegister for tail calls.
|
||
https://bugs.webkit.org/show_bug.cgi?id=171079
|
||
<rdar://problem/31684756>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-171079.js: Added.
|
||
|
||
2017-04-15 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Optimize SharedArrayBuffer in the DFG+FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=164108
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Added a fairly comprehensive test of the intrinsics. This creates a function for each possible
|
||
combination of type and operation, and then first uses it nicely and then tries a bunch of
|
||
erroneous conditions like OOB.
|
||
|
||
* stress/SharedArrayBuffer-opt.js: Added.
|
||
(string_appeared_here.switch):
|
||
(string_appeared_here.str):
|
||
(runAtomic):
|
||
(shouldFail):
|
||
(Symbol):
|
||
(string_appeared_here.a.of.arrays.m.of.atomics):
|
||
* stress/SharedArrayBuffer.js:
|
||
|
||
2017-04-19 Mark Lam <mark.lam@apple.com>
|
||
|
||
B3StackmapSpecial should handle when stackmap values are not recoverable from a Def'ed arg.
|
||
https://bugs.webkit.org/show_bug.cgi?id=170973
|
||
<rdar://problem/30318657>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-170973.js: Added.
|
||
|
||
2017-04-19 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: limit slow memories
|
||
https://bugs.webkit.org/show_bug.cgi?id=170825
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm.yaml:
|
||
* wasm/stress/oom.js: Added.
|
||
(try.true.WebAssemblyMemoryMode):
|
||
(catch):
|
||
|
||
2017-04-19 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: don't expose any WebAssembly JS object if JIT is off
|
||
https://bugs.webkit.org/show_bug.cgi?id=170782
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm.yaml:
|
||
* wasm/noJIT/noJIT.js: Added.
|
||
|
||
2017-04-18 Mark Lam <mark.lam@apple.com>
|
||
|
||
r211670 broke double to int conversion.
|
||
https://bugs.webkit.org/show_bug.cgi?id=170961
|
||
<rdar://problem/31687696>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* microbenchmarks/double-to-int32.js: Added.
|
||
* stress/to-int32-sensible2.js: Added.
|
||
|
||
2017-04-18 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
[ES6]. Implement Annex B.3.3 function hoisting rules for eval
|
||
https://bugs.webkit.org/show_bug.cgi?id=163208
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/eval-func-decl-block-scoping-reassign.js: Added.
|
||
(assert):
|
||
(throw.new.Error.f):
|
||
(throw.new.Error):
|
||
* stress/eval-func-decl-block-with-remove.js: Added.
|
||
(assert):
|
||
(foo.boo):
|
||
(foo):
|
||
* stress/eval-func-decl-block-with-var-and-remove.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(joo):
|
||
(koo):
|
||
* stress/eval-func-decl-block-with-var-sinthesize.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(hoo):
|
||
(joo):
|
||
(koo):
|
||
* stress/eval-func-decl-in-block-scope-and-bind-to-top-eval-scope.js: Added.
|
||
* stress/eval-func-decl-in-eval-within-block-with-let.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(goo):
|
||
* stress/eval-func-decl-in-eval-within-with-scope.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(boo.let.val2):
|
||
(boo.let.val3):
|
||
* stress/eval-func-decl-in-frozen-global.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(throw.new.Error):
|
||
(Object.freeze):
|
||
* stress/eval-func-decl-in-global-of-eval.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(bar):
|
||
(baz):
|
||
(foobar):
|
||
* stress/eval-func-decl-in-global.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
* stress/eval-func-decl-in-if.js: Added.
|
||
(assert):
|
||
* stress/eval-func-decl-within-eval-with-reassign-to-var.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(foobar):
|
||
(hoo):
|
||
(joo):
|
||
(koo):
|
||
(loo):
|
||
* stress/eval-func-decl-within-eval-without-reassign-to-let.js: Added.
|
||
(assert):
|
||
(assertThrow):
|
||
(foo):
|
||
(boo):
|
||
(goo):
|
||
* stress/variable-under-tdz-eval-tricky.js:
|
||
(assert):
|
||
* test262.yaml:
|
||
|
||
2017-04-18 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
wasm/function-tests/memory-multiagent times out sometimes
|
||
https://bugs.webkit.org/show_bug.cgi?id=170958
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Add the ability to skip tests easily. Skip the test.
|
||
|
||
* wasm.yaml:
|
||
* wasm/function-tests/memory-multiagent.js:
|
||
|
||
2017-04-18 Saam Barati <sbarati@apple.com>
|
||
|
||
Follow up to debug build stack overflow in test after r215453
|
||
|
||
Rubber stamped by Mark Lam.
|
||
|
||
* stress/call-apply-exponential-bytecode-size.js: Decrease the call
|
||
size to prevent stack overflow errors on debug builds.
|
||
|
||
2017-04-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Convert ValueAdd(Int32, String) => MakeRope(ToString(Int32), String)
|
||
https://bugs.webkit.org/show_bug.cgi?id=170943
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* microbenchmarks/number-to-string-with-add-empty.js: Added.
|
||
(toStringLeft):
|
||
(toStringRight):
|
||
* microbenchmarks/number-to-string-with-add-in-loop.js: Added.
|
||
(toStringLeft):
|
||
(toStringRight):
|
||
* microbenchmarks/number-to-string-with-add.js: Added.
|
||
(toStringLeft):
|
||
(toStringRight):
|
||
* stress/number-to-string-with-add.js: Added.
|
||
(shouldBe):
|
||
(toStringRight):
|
||
(toStringLeftEmpty):
|
||
(toStringRightEmpty):
|
||
|
||
2017-04-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Drop unknown use of CheckCell's child2 to work ObjectAllocationSinking for Array iterator object
|
||
https://bugs.webkit.org/show_bug.cgi?id=170940
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/for-of-array.js: Added.
|
||
(fn):
|
||
|
||
2017-04-17 Saam Barati <sbarati@apple.com>
|
||
|
||
BytecodeGenerator ".call" and ".apply" is exponential in nesting depth
|
||
https://bugs.webkit.org/show_bug.cgi?id=139847
|
||
<rdar://problem/19321122>
|
||
|
||
Reviewed by Oliver Hunt.
|
||
|
||
* stress/call-apply-exponential-bytecode-size.js: Added.
|
||
(assert):
|
||
(const.inc):
|
||
(const.inc2):
|
||
(bar):
|
||
(randomApplyOrCall):
|
||
(baz):
|
||
(jaz):
|
||
(haz):
|
||
(foo):
|
||
|
||
2017-04-17 Mark Lam <mark.lam@apple.com>
|
||
|
||
JSArray::appendMemcpy() needs to handle copying from Undecided indexing type too.
|
||
https://bugs.webkit.org/show_bug.cgi?id=170896
|
||
<rdar://problem/31651319>
|
||
|
||
Reviewed by JF Bastien and Keith Miller.
|
||
|
||
* stress/regress-170896.js: Added.
|
||
|
||
2017-04-16 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/built-ins/Object/prototype/toLocaleString/primitive_this_value.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170882
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-16 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/built-ins/isNaN/toprimitive-not-callable-throws.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170888
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/computed-accessor.js:
|
||
* stress/eval-in-arrow-function.js:
|
||
* stress/rest-elements.js:
|
||
* stress/string-object-define-own-property.js:
|
||
Remove unused shouldThrow.
|
||
|
||
* stress/symbol-toprimitive-errors.js: Added.
|
||
Check for ToPrimitive TypeErrors.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-16 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/language/expressions/tagged-template/template-object.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170878
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-length-not-writable.js: Added.
|
||
(assert):
|
||
* test262.yaml:
|
||
|
||
2017-04-16 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/built-ins/Object/getOwnPropertyNames/15.2.3.4-4-44.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170879
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* ChakraCore/test/es5/enumerable.baseline-jsc:
|
||
* test262.yaml:
|
||
|
||
2017-04-16 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/built-ins/Date/prototype/Symbol.toPrimitive/name.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170884
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-15 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/language/global-code/new.target-arrow.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170872
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-arrow-functions-lexical-new.target-binding.js:
|
||
(shouldThrowAsync): Deleted.
|
||
(shouldThrowAsync.async): Deleted.
|
||
This code should have thrown a SyntaxError. Instead it was throwing
|
||
a ReferenceError for the internal @newTargetLocal variable.
|
||
|
||
* stress/new-target-syntax-errors.js:
|
||
Cover the arrow function in global code cases.
|
||
|
||
* ChakraCore.yaml:
|
||
* ChakraCore/test/es6/globalLambdaNewTargetSyntaxError.baseline-jsc:
|
||
We now pass with an expected SyntaxError. Our error message is different.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-14 Saam Barati <sbarati@apple.com>
|
||
|
||
ParseInt intrinsic in DFG backend doesn't properly flush its operands
|
||
https://bugs.webkit.org/show_bug.cgi?id=170865
|
||
|
||
Reviewed by Mark Lam and Geoffrey Garen.
|
||
|
||
* stress/parse-int-intrinsic-dfg-backend-flush.js: Added.
|
||
(assert):
|
||
(foo):
|
||
|
||
2017-04-14 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] use ExpressionErrorClassifier for AwaitExpression operand
|
||
https://bugs.webkit.org/show_bug.cgi?id=170844
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-170732.js: Added.
|
||
|
||
2017-04-14 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
Safari 10.1 JSON.parse returns incorrect object for numeric keys with decimal values
|
||
https://bugs.webkit.org/show_bug.cgi?id=170442
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/object-number-properties.js:
|
||
|
||
2017-04-13 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Date.parse should accept wider range of representation
|
||
https://bugs.webkit.org/show_bug.cgi?id=170720
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/date-relaxed.js: Added.
|
||
(shouldBe):
|
||
(throw.new.Error):
|
||
|
||
2017-04-13 Mark Lam <mark.lam@apple.com>
|
||
|
||
Should use flushDirect() when flushing the scopeRegister due to needsScopeRegister().
|
||
https://bugs.webkit.org/show_bug.cgi?id=170661
|
||
<rdar://problem/31579046>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-170661.js: Added.
|
||
|
||
2017-04-13 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: manage memory better
|
||
https://bugs.webkit.org/show_bug.cgi?id=170628
|
||
|
||
Reviewed by Keith Miller, Michael Saboff.
|
||
|
||
* wasm/Builder.js: move a helper out so tests can use it
|
||
(export.default.Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.case.string_appeared_here.this.section):
|
||
* wasm/WASM.js: add utilities to classify opcodes
|
||
(export.opcodes):
|
||
(export.const.memoryAccessInfo.op.const.sign):
|
||
* wasm/function-tests/memory-access-past-4gib.js: Added. This test
|
||
fails before this patch.
|
||
(const.op.of.WASM.opcodes):
|
||
* wasm/function-tests/memory-many.js: Added. This simple tests
|
||
just shouldn't crash. In verbose mode it's useful at determining
|
||
if the GC falls behind or not.
|
||
* wasm/function-tests/memory-multiagent.js: Added. Emulate postMessage.
|
||
(const.startAgents.numAgentsToStart.a.agent.receiveBroadcast):
|
||
(const.startAgents.numAgentsToStart.a.write.const.idx.Math.random):
|
||
(const.broadcastToAgents):
|
||
* wasm/js-api/extension-MemoryMode.js: verbose logging.
|
||
(testMemoryNoMax):
|
||
(testMemory):
|
||
(testInstanceNoMemory):
|
||
(testInstanceNoMax):
|
||
(testInstance):
|
||
* wasm/utilities.js: move a utility here.
|
||
|
||
2017-04-12 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/built-ins/NativeErrors/EvalError/proto.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170668
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* ChakraCore.yaml:
|
||
* ChakraCore/test/Lib/error.baseline-jsc: Added.
|
||
This test does not match the spec.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-12 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/language/literals/regexp/u-dec-esc.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170687
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-11 Michael Saboff <msaboff@apple.com>
|
||
|
||
Implement Object.isFrozen() and Object.isSealed() per ECMA spec
|
||
https://bugs.webkit.org/show_bug.cgi?id=170753
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Added JSC baseline and enabled defineIndexProperty test.
|
||
|
||
Note that JSC differs from Chakra in that a JSC doesn't use indexed
|
||
properties placed on the Array prototype when sorting the indexed
|
||
properties of an Object. This is behavior is considered undefined
|
||
in the standard.
|
||
|
||
* ChakraCore.yaml:
|
||
* ChakraCore/test/es5/defineIndexProperty.baseline-jsc: Added.
|
||
|
||
2017-04-11 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/annexB/language/comments/multi-line-html-close.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170648
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-11 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/built-ins/Array/S15.4.3_A2.2.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170652
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/native-constructors-length.js: Added.
|
||
(assertLengthDescriptorAttributes):
|
||
Add a quick test for the length properties of all native constructors.
|
||
|
||
* ChakraCore/test/es5/enumerable.baseline-jsc:
|
||
Rebaseline expectations for this test.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-10 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: Update spec tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=170683
|
||
|
||
Rubber-stamped by JF Bastien.
|
||
|
||
* wasm.yaml:
|
||
* wasm/spec-tests/br_table.wast.js:
|
||
* wasm/spec-tests/conversions.wast.js: Removed.
|
||
* wasm/spec-tests/f32_bitwise.wast.js: Added.
|
||
* wasm/spec-tests/f32_cmp.wast.js:
|
||
* wasm/spec-tests/f64_bitwise.wast.js: Added.
|
||
* wasm/spec-tests/f64_cmp.wast.js:
|
||
* wasm/spec-tests/i32.wast.js:
|
||
* wasm/spec-tests/i64.wast.js:
|
||
* wasm/spec-tests/int_exprs.wast.js:
|
||
* wasm/spec-tests/memory.wast.js:
|
||
|
||
2017-04-09 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/annexB/language/expressions/object/__proto__-fn-name.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170650
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/inferred-names.js:
|
||
* test262.yaml:
|
||
|
||
2017-04-09 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: test262/test/annexB/language/literals/regexp/identity-escape.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=170651
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262.yaml:
|
||
|
||
2017-04-07 Michael Saboff <msaboff@apple.com>
|
||
|
||
Fix and enable ChakraCore/test/es6/ES6Function_bugs.js after r215072
|
||
https://bugs.webkit.org/show_bug.cgi?id=170580
|
||
|
||
Reviewed by JF Bastien.
|
||
|
||
Commented out subtest that expects defineProperty("length") to a getter on a
|
||
sealed function shouldn't throw.
|
||
|
||
* ChakraCore.yaml:
|
||
* ChakraCore/test/es6/ES6Function_bugs.js:
|
||
|
||
2017-04-06 Michael Saboff <msaboff@apple.com>
|
||
|
||
Cannot Object.seal() or Object.freeze() global "this"
|
||
https://bugs.webkit.org/show_bug.cgi?id=170549
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Enabled failing tests fixed by the corresponding code change:
|
||
ChakraCore/test/LetConst/delete.js
|
||
ChakraCore/test/LetConst/dop.js
|
||
ChakraCore/test/LetConst/dop1.js
|
||
|
||
* ChakraCore.yaml:
|
||
* ChakraCore/test/LetConst/dop.baseline-jsc: Added JSC specific expected output.
|
||
* ChakraCore/test/LetConst/dop1.baseline-jsc: Added JSC specific expected output.
|
||
|
||
2017-04-05 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: ES2017 test progressions need updated expectations (arguments.caller removed)
|
||
https://bugs.webkit.org/show_bug.cgi?id=170536
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* test262.yaml:
|
||
After r208867 the tests are out of date and are now expected to fail.
|
||
|
||
2017-04-05 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: Final rebaseline of existing tests, a few tests have started failing
|
||
https://bugs.webkit.org/show_bug.cgi?id=170538
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* test262.yaml:
|
||
These tests started failing a while ago. Mark them as legitmate failures.
|
||
|
||
2017-04-05 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: Rebaseline expectations for now passing tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=170532
|
||
|
||
Reviewed by Ryosuke Niwa.
|
||
|
||
* test262.yaml:
|
||
Update expectations for tests we are now passing.
|
||
|
||
2017-04-05 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: module test progressions need updated expectations (@@iterator changes)
|
||
https://bugs.webkit.org/show_bug.cgi?id=170535
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262.yaml:
|
||
After r212430 the tests are out of date and are now expected to fail.
|
||
|
||
2017-04-05 Michael Saboff <msaboff@apple.com>
|
||
|
||
Unreviewed rollout of r214642 as the test still intermittently fails.
|
||
|
||
Disabled ChakraCore/test/fieldopts/objtypespec-newobj-invalidation.1.js.
|
||
|
||
* ChakraCore.yaml:
|
||
|
||
2017-04-05 Michael Saboff <msaboff@apple.com>
|
||
|
||
REGRESSION (Safari 10.1): Inserting elements into arrays fails when array contains very large numbers
|
||
https://bugs.webkit.org/show_bug.cgi?id=170264
|
||
<rdar://problem/31375593>
|
||
|
||
Rubber-stamped by Saam Barati.
|
||
|
||
The original bug was fixed in: https://trac.webkit.org/changeset/214714
|
||
I'm just adding another test for good measure.
|
||
|
||
* stress/double-array-to-array-storage.js: Added.
|
||
(assert):
|
||
|
||
2017-04-05 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: We shouldn't need to pin size registers if we have a fast memory.
|
||
https://bugs.webkit.org/show_bug.cgi?id=170504
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* wasm/function-tests/trap-after-cross-instance-call.js: Added.
|
||
(b.new.WebAssembly.Memory):
|
||
(importObject.foo.bar):
|
||
(wasmFrameCountFromError):
|
||
|
||
2017-03-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Generate TemplateObjects at linking time
|
||
https://bugs.webkit.org/show_bug.cgi?id=169743
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/template-string-tags-eval.js: Added.
|
||
(shouldBe):
|
||
(tag):
|
||
|
||
2017-04-04 Mark Lam <mark.lam@apple.com>
|
||
|
||
On ARM64, DFG::SpeculativeJIT::compileArithMod() failed to ensure result is of DataFormatInt32.
|
||
https://bugs.webkit.org/show_bug.cgi?id=170473
|
||
<rdar://problem/29912391>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-170473.js: Added.
|
||
|
||
2017-04-03 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix incorrect capacity delta calculation reported in SparseArrayValueMap::add().
|
||
https://bugs.webkit.org/show_bug.cgi?id=170412
|
||
<rdar://problem/29697336>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/regress-170412.js: Added.
|
||
|
||
2017-04-03 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: Update spec tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=170361
|
||
|
||
Rubber-stamped by Saam Barati.
|
||
|
||
Update the spec tests to run tests generated by the newer spec
|
||
test builder wasm-spec/test/builder.py. This patch also adds the
|
||
necessary harness code in spec-harness.js so we can run the tests.
|
||
|
||
* wasm.yaml:
|
||
* wasm/import-spec-tests.rb:
|
||
* wasm/spec-harness.js: Added.
|
||
(import.string_appeared_here.then):
|
||
(test):
|
||
(promise_test):
|
||
(let.assert_unreached):
|
||
* wasm/spec-harness/index.js: Added.
|
||
(let.testNum):
|
||
(assertThrows):
|
||
(_assert):
|
||
(ValueResult):
|
||
(ErrorResult):
|
||
(Result.prototype.isError):
|
||
(binary):
|
||
(module):
|
||
(uniqueTest):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(register):
|
||
(call):
|
||
(get instance):
|
||
(exports):
|
||
(run):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(try.f):
|
||
(catch):
|
||
(assert_exhaustion):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-harness/testharness.css: Added.
|
||
(html):
|
||
(#log .warning,):
|
||
(#log .error,):
|
||
(section#summary):
|
||
(table#results):
|
||
(table#results th:first-child,):
|
||
(table#results th:last-child,):
|
||
(table#results.assertions th:last-child,):
|
||
(table#results th):
|
||
(table#results td):
|
||
(tr.pass > td:first-child):
|
||
(tr.fail > td:first-child):
|
||
(tr.timeout > td:first-child):
|
||
(tr.notrun > td:first-child):
|
||
(.pass > td:first-child, .fail > td:first-child, .timeout > td:first-child, .notrun > td:first-child):
|
||
(table#results span):
|
||
(table#results span.expected):
|
||
(table#results span.actual):
|
||
(span.ok):
|
||
(tr.error):
|
||
(span.timeout):
|
||
(span.ok, span.timeout, span.error):
|
||
* wasm/spec-harness/testharness.js: Added.
|
||
(WindowTestEnvironment):
|
||
(WindowTestEnvironment.prototype._dispatch):
|
||
(WindowTestEnvironment.prototype._forEach_windows):
|
||
(WindowTestEnvironment.prototype.on_tests_ready):
|
||
(WindowTestEnvironment.prototype.setup_messages):
|
||
(WindowTestEnvironment.prototype.next_default_test_name):
|
||
(WindowTestEnvironment.prototype.on_new_harness_properties):
|
||
(WindowTestEnvironment.prototype.add_on_loaded_callback):
|
||
(WindowTestEnvironment.prototype.test_timeout):
|
||
(WindowTestEnvironment.prototype.global_scope):
|
||
(WorkerTestEnvironment):
|
||
(WorkerTestEnvironment.prototype._dispatch):
|
||
(WorkerTestEnvironment.prototype._add_message_port):
|
||
(WorkerTestEnvironment.prototype.next_default_test_name):
|
||
(WorkerTestEnvironment.prototype.on_new_harness_properties):
|
||
(WorkerTestEnvironment.prototype.on_tests_ready):
|
||
(WorkerTestEnvironment.prototype.add_on_loaded_callback):
|
||
(WorkerTestEnvironment.prototype.test_timeout):
|
||
(WorkerTestEnvironment.prototype.global_scope):
|
||
(DedicatedWorkerTestEnvironment):
|
||
(DedicatedWorkerTestEnvironment.prototype.on_tests_ready):
|
||
(SharedWorkerTestEnvironment):
|
||
(SharedWorkerTestEnvironment.prototype.on_tests_ready):
|
||
(ServiceWorkerTestEnvironment):
|
||
(ServiceWorkerTestEnvironment.prototype.add_on_loaded_callback):
|
||
(create_test_environment):
|
||
(is_shared_worker):
|
||
(is_service_worker):
|
||
(test):
|
||
(async_test):
|
||
(promise_test):
|
||
(this.wait_for):
|
||
(EventWatcher):
|
||
(setup):
|
||
(done):
|
||
(generate_tests):
|
||
(step_timeout):
|
||
(truncate):
|
||
(is_node):
|
||
(format_value):
|
||
* wasm/spec-harness/testharnessreport.js: Added.
|
||
* wasm/spec-harness/wasm-constants.js: Added.
|
||
(bytes):
|
||
(bytesWithHeader):
|
||
(makeSig):
|
||
(makeSig_v_x):
|
||
(makeSig_v_xx):
|
||
(makeSig_r_v):
|
||
(makeSig_r_x):
|
||
(makeSig_r_xx):
|
||
(assertTraps):
|
||
(assertWasmThrows):
|
||
* wasm/spec-harness/wasm-module-builder.js: Added.
|
||
(Binary.prototype.emit_u8):
|
||
(Binary.prototype.emit_u16):
|
||
(Binary.prototype.emit_u32):
|
||
(Binary.prototype.emit_u32v):
|
||
(Binary.prototype.emit_bytes):
|
||
(Binary.prototype.emit_string):
|
||
(Binary.prototype.emit_header):
|
||
(Binary.prototype.emit_section):
|
||
(Binary):
|
||
(WasmFunctionBuilder):
|
||
(WasmFunctionBuilder.prototype.exportAs):
|
||
(WasmFunctionBuilder.prototype.exportFunc):
|
||
(WasmFunctionBuilder.prototype.addBody):
|
||
(WasmFunctionBuilder.prototype.addLocals):
|
||
(WasmFunctionBuilder.prototype.end):
|
||
(WasmGlobalBuilder):
|
||
(WasmGlobalBuilder.prototype.exportAs):
|
||
(WasmModuleBuilder):
|
||
(WasmModuleBuilder.prototype.addStart):
|
||
(WasmModuleBuilder.prototype.addMemory):
|
||
(WasmModuleBuilder.prototype.addExplicitSection):
|
||
(WasmModuleBuilder.prototype.addType):
|
||
(WasmModuleBuilder.prototype.addGlobal):
|
||
(WasmModuleBuilder.prototype.addFunction):
|
||
(WasmModuleBuilder.prototype.addImport):
|
||
(WasmModuleBuilder.prototype.addImportedGlobal):
|
||
(WasmModuleBuilder.prototype.addImportedMemory):
|
||
(WasmModuleBuilder.prototype.addImportedTable):
|
||
(WasmModuleBuilder.prototype.addExport):
|
||
(WasmModuleBuilder.prototype.addExportOfKind):
|
||
(WasmModuleBuilder.prototype.addDataSegment):
|
||
(WasmModuleBuilder.prototype.exportMemoryAs):
|
||
(WasmModuleBuilder.prototype.addFunctionTableInit):
|
||
(WasmModuleBuilder.prototype.appendToTable):
|
||
(WasmModuleBuilder.prototype.setFunctionTableLength):
|
||
(WasmModuleBuilder.prototype.toArray):
|
||
(WasmModuleBuilder.prototype.toBuffer):
|
||
(WasmModuleBuilder.prototype.instantiate):
|
||
* wasm/spec-harness/wast.js: Added.
|
||
(normalize):
|
||
(require.else._registry.name):
|
||
(require):
|
||
(add_hex_char):
|
||
(add_char):
|
||
(string_with):
|
||
(list_of_opt):
|
||
(break_bytes.f):
|
||
(break_bytes):
|
||
(f):
|
||
(decls):
|
||
(func_type):
|
||
(limits):
|
||
(global_type):
|
||
(testop):
|
||
(relop):
|
||
(unop):
|
||
(binop):
|
||
(cvtop):
|
||
(oper):
|
||
(mem_size):
|
||
(extension):
|
||
(memop):
|
||
(storeop):
|
||
(var):
|
||
(constop):
|
||
(instr.else.switch.case.0.f):
|
||
(instr.else.switch.case.1.f.1):
|
||
(instr.else.switch.case.2.f.2):
|
||
(instr):
|
||
(func_with_name):
|
||
(func):
|
||
(start):
|
||
(table):
|
||
(memory):
|
||
(segment):
|
||
(elems):
|
||
(data):
|
||
(typedef):
|
||
(import_kind):
|
||
(import):
|
||
(export_kind):
|
||
(export):
|
||
(var_opt):
|
||
(is_func_import):
|
||
(is_table_import):
|
||
(is_memory_import):
|
||
(is_global_import):
|
||
(f.1):
|
||
(f.2):
|
||
(f.3):
|
||
(module_with_var_opt):
|
||
(module_):
|
||
(literal):
|
||
(definition):
|
||
(access):
|
||
(action):
|
||
(script):
|
||
(_registry.string_appeared_here):
|
||
(init):
|
||
(make_matrix):
|
||
(copy):
|
||
(append):
|
||
(sub):
|
||
(fill):
|
||
(blit):
|
||
(iter):
|
||
(map):
|
||
(iteri):
|
||
(mapi):
|
||
(to_list):
|
||
(list_length):
|
||
(of_list):
|
||
(fold_left):
|
||
(fold_right):
|
||
(maxson):
|
||
(trickle):
|
||
(bubble):
|
||
(trickleup):
|
||
(sort):
|
||
(merge):
|
||
(isortto):
|
||
(sortto):
|
||
(stable_sort):
|
||
(import_type):
|
||
(export_type):
|
||
(dims.n):
|
||
(dims.d.i):
|
||
(dims):
|
||
(map_file):
|
||
(create):
|
||
(of_array):
|
||
(slice_left):
|
||
(slice_right):
|
||
(slice_left_1):
|
||
(slice_right_1):
|
||
(slice_left_2):
|
||
(slice_right_2):
|
||
(array1_of_genarray):
|
||
(array2_of_genarray):
|
||
(array3_of_genarray):
|
||
(reshape_1):
|
||
(reshape_2):
|
||
(reshape_3):
|
||
(reshape):
|
||
(__):
|
||
(contents):
|
||
(to_bytes):
|
||
(nth):
|
||
(length):
|
||
(clear):
|
||
(reset):
|
||
(resize):
|
||
(add_substring):
|
||
(add_subbytes):
|
||
(add_string):
|
||
(add_bytes):
|
||
(add_buffer):
|
||
(add_channel):
|
||
(output_buffer):
|
||
(closing):
|
||
(advance_to_closing):
|
||
(advance_to_non_alpha):
|
||
(find_ident):
|
||
(add_substitute):
|
||
(make):
|
||
(to_string):
|
||
(of_string):
|
||
(sub_string):
|
||
(extend):
|
||
(blit_string):
|
||
(concat):
|
||
(cat):
|
||
(is_space):
|
||
(trim):
|
||
(escaped):
|
||
(uppercase):
|
||
(lowercase):
|
||
(apply1):
|
||
(capitalize):
|
||
(uncapitalize):
|
||
(index_rec):
|
||
(index):
|
||
(index_from):
|
||
(rindex_rec):
|
||
(rindex):
|
||
(rindex_from):
|
||
(contains_from):
|
||
(contains):
|
||
(rcontains_from):
|
||
(caml_array_sub):
|
||
(len):
|
||
(caml_array_concat):
|
||
(caml_make_vect):
|
||
(caml_array_blit):
|
||
(get if):
|
||
(caml_set_oo_id):
|
||
(get_id):
|
||
(caml_int32_float_of_bits):
|
||
(caml_int32_bits_of_float):
|
||
(caml_classify_float):
|
||
(caml_modf_float):
|
||
(caml_ldexp_float):
|
||
(caml_frexp_float):
|
||
(caml_copysign_float):
|
||
(caml_expm1_float):
|
||
(caml_hypot_float):
|
||
(caml_log10_float):
|
||
(caml_failwith):
|
||
(parse_digit):
|
||
(int_of_string_base):
|
||
(parse_sign_and_base):
|
||
(caml_int_of_string.aux):
|
||
(caml_int_of_string):
|
||
(caml_int64_of_string.aux):
|
||
(caml_int64_of_string):
|
||
(int_of_base):
|
||
(parse_format):
|
||
(finish_formatting):
|
||
(caml_format_int):
|
||
(caml_int64_format):
|
||
(caml_format_float):
|
||
(float_of_string):
|
||
(div):
|
||
(mod_):
|
||
(caml_bswap16):
|
||
(caml_int32_bswap):
|
||
(imul):
|
||
(neg_signed):
|
||
(not):
|
||
(eq):
|
||
(neg):
|
||
(lsl_):
|
||
(lsr_):
|
||
(asr_):
|
||
(is_zero):
|
||
(mul):
|
||
(swap):
|
||
(xor):
|
||
(or_):
|
||
(and_):
|
||
(ge):
|
||
(lt):
|
||
(gt):
|
||
(le):
|
||
(to_float):
|
||
(of_float):
|
||
(div_mod):
|
||
(compare):
|
||
(of_int32):
|
||
(to_int32):
|
||
(to_hex.aux):
|
||
(to_hex):
|
||
(discard_sign):
|
||
(float_of_bits):
|
||
(bits_of_float.to_nat):
|
||
(bits_of_float):
|
||
(get64):
|
||
(erase_rel):
|
||
(concat_fmtty):
|
||
(concat_fmt):
|
||
(create_char_set):
|
||
(add_in_char_set):
|
||
(rev_char_set):
|
||
(is_in_char_set):
|
||
(prec_of_prec_opt):
|
||
(param_format_of_ignored_format):
|
||
(buffer_check_size):
|
||
(buffer_add_char):
|
||
(buffer_add_string):
|
||
(buffer_contents):
|
||
(char_of_iconv):
|
||
(char_of_fconv):
|
||
(char_of_counter):
|
||
(print_char):
|
||
(set while.set var):
|
||
(set while.set else):
|
||
(set var):
|
||
(set else):
|
||
(set print_char):
|
||
(set if):
|
||
(bprint_padty):
|
||
(bprint_ignored_flag):
|
||
(bprint_pad_opt):
|
||
(bprint_padding):
|
||
(bprint_precision):
|
||
(bprint_iconv_flag):
|
||
(bprint_int_fmt):
|
||
(bprint_altint_fmt):
|
||
(bprint_fconv_flag):
|
||
(bprint_float_fmt):
|
||
(string_of_formatting_lit):
|
||
(string_of_formatting_gen):
|
||
(bprint_char_literal):
|
||
(bprint_string_literal):
|
||
(bprint_fmtty):
|
||
(int_of_custom_arity):
|
||
(bprint_fmt):
|
||
(string_of_fmt):
|
||
(symm):
|
||
(fmtty_rel_det):
|
||
(trans):
|
||
(fmtty_of_formatting_gen):
|
||
(fmtty_of_fmt):
|
||
(fmtty_of_custom):
|
||
(fmtty_of_padding_fmtty):
|
||
(fmtty_of_precision_fmtty):
|
||
(type_padding):
|
||
(type_padprec):
|
||
(type_ignored_param_one):
|
||
(type_format_gen):
|
||
(type_ignored_format_substitution):
|
||
(type_format):
|
||
(recast):
|
||
(fix_padding):
|
||
(fix_int_precision):
|
||
(string_to_caml_string):
|
||
(format_of_iconv):
|
||
(format_of_aconv):
|
||
(format_of_fconv):
|
||
(convert_int):
|
||
(convert_int32):
|
||
(convert_nativeint):
|
||
(convert_int64):
|
||
(else.is_valid):
|
||
(convert_float):
|
||
(format_caml_char):
|
||
(string_of_fmtty):
|
||
(else.switch.):
|
||
(else.switch.k.prime):
|
||
(else.switch.else.):
|
||
(else.switch.else.k.prime.1):
|
||
(make_printf):
|
||
(make_from_fmtty):
|
||
(make_invalid_arg):
|
||
(make_string_padding):
|
||
(make_int_padding_precision):
|
||
(make_custom):
|
||
(output_acc):
|
||
(bufput_acc):
|
||
(strput_acc):
|
||
(failwith_message.k):
|
||
(failwith_message):
|
||
(open_box_of_string.else.invalid_box):
|
||
(open_box_of_string.else.parse_spaces):
|
||
(open_box_of_string.else.parse_lword):
|
||
(open_box_of_string.else.parse_int):
|
||
(open_box_of_string):
|
||
(make_padding_fmt_ebb):
|
||
(make_precision_fmt_ebb):
|
||
(make_padprec_fmt_ebb):
|
||
(invalid_format_message):
|
||
(invalid_format_without):
|
||
(expected_character):
|
||
(compute_int_conv):
|
||
(incompatible_flag):
|
||
(parse_positive):
|
||
(parse_conv):
|
||
(parse_after_precision):
|
||
(else.parse_literal):
|
||
(parse_after_padding):
|
||
(parse_literal):
|
||
(parse_after_at):
|
||
(add_literal):
|
||
(parse_spaces):
|
||
(parse_integer):
|
||
(compute_float_conv):
|
||
(search_subformat_end):
|
||
(check_no_0):
|
||
(opt_of_pad):
|
||
(get_prec_opt):
|
||
(else.switch.case.99.char_format):
|
||
(else.switch.scan_format):
|
||
(parse_conversion):
|
||
(set_flag):
|
||
(parse_flags):
|
||
(is_int_base):
|
||
(counter_of_char):
|
||
(add_range):
|
||
(fail_single_percent):
|
||
(parse_char_set_after_char):
|
||
(parse_char_set_content):
|
||
(parse_char_set_start):
|
||
(parse_char_set):
|
||
(check_open_box):
|
||
(parse_tag):
|
||
(fmt_ebb_of_string):
|
||
(format_of_string_fmtty):
|
||
(format_of_string_format):
|
||
(caret):
|
||
(caml_ml_open_descriptor_in):
|
||
(caml_ml_open_descriptor_out):
|
||
(caml_ml_flush):
|
||
(node_std_output):
|
||
(caml_ml_output_char):
|
||
(caml_ml_input):
|
||
(caml_ml_input_char):
|
||
(caml_ml_out_channels_list):
|
||
(fail):
|
||
(caml_lex_array):
|
||
(caml_lex_engine):
|
||
(caml_lex_run_mem):
|
||
(caml_lex_run_tag):
|
||
(caml_new_lex_engine):
|
||
(caml_obj_dup):
|
||
(caml_obj_truncate):
|
||
(caml_lazy_make_forward):
|
||
(caml_update_dummy):
|
||
(caml_int_compare):
|
||
(caml_compare):
|
||
(caml_equal):
|
||
(caml_notequal):
|
||
(caml_greaterequal):
|
||
(caml_lessequal):
|
||
(else.aux):
|
||
(caml_get_public_method):
|
||
(caml_parse_engine):
|
||
(caml_set_parser_trace):
|
||
(js_string_of_char):
|
||
(caml_string_get):
|
||
(caml_create_string):
|
||
(caml_string_compare):
|
||
(caml_fill_string):
|
||
(caml_blit_string):
|
||
(caml_blit_bytes):
|
||
(bytes_of_string):
|
||
(bytes_to_string):
|
||
(caml_string_of_char_array):
|
||
(caml_is_printable):
|
||
(caml_string_get16):
|
||
(caml_string_get32):
|
||
(repeat):
|
||
(chr):
|
||
(app):
|
||
(js):
|
||
(curry_1):
|
||
(_1):
|
||
(js1):
|
||
(__1):
|
||
(curry_2):
|
||
(_2):
|
||
(js2):
|
||
(__2):
|
||
(curry_3):
|
||
(_3):
|
||
(js3):
|
||
(__3):
|
||
(curry_4):
|
||
(_4):
|
||
(js4):
|
||
(__4):
|
||
(curry_5):
|
||
(_5):
|
||
(js5):
|
||
(__5):
|
||
(curry_6):
|
||
(_6):
|
||
(js6):
|
||
(__6):
|
||
(curry_7):
|
||
(_7):
|
||
(js7):
|
||
(__7):
|
||
(curry_8):
|
||
(_8):
|
||
(js8):
|
||
(__8):
|
||
(stream):
|
||
(eos):
|
||
(skip):
|
||
(read):
|
||
(peek):
|
||
(string_of_byte):
|
||
(position):
|
||
(region):
|
||
(error):
|
||
(guard):
|
||
(get 1):
|
||
(get expect):
|
||
(get illegal):
|
||
(at):
|
||
(u32):
|
||
(u64):
|
||
(get require):
|
||
(vuN):
|
||
(get var):
|
||
(vsN):
|
||
(vu32):
|
||
(vs32):
|
||
(vs64):
|
||
(f32):
|
||
(f64):
|
||
(len32):
|
||
(string):
|
||
(opt):
|
||
(vec):
|
||
(sized):
|
||
(value_type):
|
||
(elem_type):
|
||
(stack_type):
|
||
(table_type):
|
||
(memory_type):
|
||
(mutability.get if):
|
||
(mutability):
|
||
(instr.get if):
|
||
(instr_block):
|
||
(const):
|
||
(id):
|
||
(section):
|
||
(type_section):
|
||
(import_kind.get if):
|
||
(import_section):
|
||
(func_section):
|
||
(table_section):
|
||
(memory_section):
|
||
(global):
|
||
(global_section):
|
||
(export_kind.get if):
|
||
(export_section):
|
||
(start_section):
|
||
(local):
|
||
(code):
|
||
(code_section):
|
||
(table_segment):
|
||
(elem_section):
|
||
(memory_segment):
|
||
(data_section):
|
||
(partial_arg.1):
|
||
(custom):
|
||
(custom_section):
|
||
(iterate):
|
||
(decode):
|
||
(patch):
|
||
(encode.u8):
|
||
(encode.u16):
|
||
(encode.u32):
|
||
(encode.vu64):
|
||
(encode.vs64):
|
||
(encode.vu32):
|
||
(encode.len):
|
||
(encode.bool):
|
||
(encode.string):
|
||
(encode.vec):
|
||
(encode.gap32):
|
||
(encode.patch_gap32):
|
||
(encode.value_type):
|
||
(encode.stack_type):
|
||
(encode.func_type):
|
||
(encode.limits):
|
||
(encode.table_type):
|
||
(encode.memory_type):
|
||
(encode.global_type):
|
||
(encode.memop):
|
||
(encode):
|
||
(encode.instr):
|
||
(encode.const):
|
||
(encode.section):
|
||
(encode.type_section):
|
||
(encode.import):
|
||
(encode.import_section):
|
||
(encode.func):
|
||
(encode.func_section):
|
||
(encode.table):
|
||
(encode.table_section):
|
||
(encode.memory):
|
||
(encode.memory_section):
|
||
(encode.global):
|
||
(encode.global_section):
|
||
(encode.export_kind):
|
||
(encode.export):
|
||
(encode.export_section):
|
||
(encode.start_section):
|
||
(encode.combine):
|
||
(encode.compress):
|
||
(encode.local):
|
||
(encode.code):
|
||
(encode.code_section):
|
||
(encode.segment):
|
||
(encode.table_segment):
|
||
(encode.elem_section):
|
||
(encode.memory_segment):
|
||
(encode.module_):
|
||
(Make.warn):
|
||
(Make.error):
|
||
(Make):
|
||
(print_nan_significand_digits):
|
||
(Make.of_bits):
|
||
(Make.to_bits):
|
||
(Make.is_nan):
|
||
(Make.canonicalize_nan):
|
||
(Make.determine_binary_nan):
|
||
(Make.determine_unary_nan):
|
||
(Make.binary):
|
||
(Make.unary):
|
||
(Make.add):
|
||
(Make.sub):
|
||
(Make.mul):
|
||
(Make.div):
|
||
(Make.sqrt):
|
||
(Make.ceil):
|
||
(Make.floor):
|
||
(Make.trunc):
|
||
(Make.nearest):
|
||
(Make.min):
|
||
(Make.max):
|
||
(Make.abs):
|
||
(Make.neg):
|
||
(Make.copysign):
|
||
(Make.eq):
|
||
(Make.ne):
|
||
(Make.lt):
|
||
(Make.gt):
|
||
(Make.le):
|
||
(Make.ge):
|
||
(Make.of_signless_string):
|
||
(Make.of_string):
|
||
(Make.to_string):
|
||
(add_queue):
|
||
(peek_queue):
|
||
(take_queue):
|
||
(pp_enqueue):
|
||
(pp_clear_queue):
|
||
(pp_output_string):
|
||
(break_new_line):
|
||
(break_same_line):
|
||
(pp_force_break_line):
|
||
(switch.add_tab):
|
||
(else.switch.find):
|
||
(format_pp_token):
|
||
(advance_left):
|
||
(enqueue_advance):
|
||
(enqueue_string_as):
|
||
(set_size):
|
||
(scan_push):
|
||
(pp_open_box_gen):
|
||
(pp_close_box):
|
||
(pp_open_tag):
|
||
(pp_close_tag):
|
||
(pp_set_print_tags):
|
||
(pp_set_mark_tags):
|
||
(pp_get_print_tags):
|
||
(pp_get_mark_tags):
|
||
(pp_set_tags):
|
||
(pp_get_formatter_tag_functions):
|
||
(pp_set_formatter_tag_functions):
|
||
(pp_rinit):
|
||
(pp_flush_queue):
|
||
(pp_print_as_size):
|
||
(pp_print_string):
|
||
(pp_print_int):
|
||
(pp_print_float):
|
||
(pp_print_bool):
|
||
(pp_open_hbox):
|
||
(pp_open_vbox):
|
||
(pp_open_hvbox):
|
||
(pp_open_hovbox):
|
||
(pp_open_box):
|
||
(pp_print_newline):
|
||
(pp_print_flush):
|
||
(pp_force_newline):
|
||
(pp_print_if_newline):
|
||
(pp_print_break):
|
||
(pp_print_space):
|
||
(pp_print_cut):
|
||
(pp_open_tbox):
|
||
(pp_close_tbox):
|
||
(pp_print_tbreak):
|
||
(pp_print_tab):
|
||
(pp_set_tab):
|
||
(pp_print_list):
|
||
(flush):
|
||
(pp_print_text):
|
||
(pp_set_max_boxes):
|
||
(pp_get_max_boxes):
|
||
(pp_over_max_boxes):
|
||
(pp_get_ellipsis_text):
|
||
(pp_limit):
|
||
(pp_set_max_indent):
|
||
(pp_get_max_indent):
|
||
(pp_set_margin):
|
||
(pp_get_margin):
|
||
(pp_set_formatter_out_functions):
|
||
(pp_get_formatter_out_functions):
|
||
(pp_set_formatter_output_functions):
|
||
(pp_get_formatter_output_functions):
|
||
(pp_set_all_formatter_output_functions):
|
||
(pp_get_all_formatter_output_functions):
|
||
(display_newline):
|
||
(display_blanks):
|
||
(state.16):
|
||
(state.17):
|
||
(state.18):
|
||
(state.19):
|
||
(pp_set_formatter_out_channel):
|
||
(default_pp_mark_open_tag):
|
||
(default_pp_mark_close_tag):
|
||
(default_pp_print_open_tag):
|
||
(default_pp_print_close_tag):
|
||
(pp_make_formatter):
|
||
(ppf.18):
|
||
(ppf.19):
|
||
(make_formatter):
|
||
(formatter_of_out_channel):
|
||
(formatter_of_buffer):
|
||
(flush_str_formatter):
|
||
(flush_buf_formatter):
|
||
(open_hbox):
|
||
(open_vbox):
|
||
(open_hvbox):
|
||
(open_hovbox):
|
||
(open_box):
|
||
(close_box):
|
||
(open_tag):
|
||
(close_tag):
|
||
(print_as):
|
||
(print_string):
|
||
(print_int):
|
||
(print_float):
|
||
(print_bool):
|
||
(print_cut):
|
||
(print_space):
|
||
(force_newline):
|
||
(print_flush):
|
||
(print_newline):
|
||
(print_if_newline):
|
||
(open_tbox):
|
||
(close_tbox):
|
||
(print_tbreak):
|
||
(set_tab):
|
||
(print_tab):
|
||
(set_margin):
|
||
(get_margin):
|
||
(set_max_indent):
|
||
(get_max_indent):
|
||
(set_max_boxes):
|
||
(get_max_boxes):
|
||
(over_max_boxes):
|
||
(set_ellipsis_text):
|
||
(get_ellipsis_text):
|
||
(set_formatter_out_channel):
|
||
(set_formatter_out_functions):
|
||
(get_formatter_out_functions):
|
||
(set_formatter_output_functions):
|
||
(get_formatter_output_functions):
|
||
(set_all_formatter_output_functions):
|
||
(get_all_formatter_output_functions):
|
||
(set_formatter_tag_functions):
|
||
(get_formatter_tag_functions):
|
||
(set_print_tags):
|
||
(get_print_tags):
|
||
(set_mark_tags):
|
||
(get_mark_tags):
|
||
(set_tags):
|
||
(compute_tag):
|
||
(output_formatting_lit):
|
||
(kfprintf):
|
||
(ikfprintf):
|
||
(fprintf):
|
||
(ifprintf):
|
||
(printf):
|
||
(eprintf):
|
||
(k.prime):
|
||
(ksprintf):
|
||
(sprintf):
|
||
(asprintf.k.prime):
|
||
(asprintf):
|
||
(k):
|
||
(bprintf):
|
||
(succ):
|
||
(pred):
|
||
(abs):
|
||
(lognot):
|
||
(Make.cmp_u):
|
||
(Make.divrem_u):
|
||
(Make.div_s):
|
||
(Make.div_u):
|
||
(Make.rem_s):
|
||
(Make.rem_u):
|
||
(Make.shift):
|
||
(Make.shl):
|
||
(Make.shr_s):
|
||
(Make.shr_u):
|
||
(Make.clamp_rotate_count):
|
||
(Make.rotl):
|
||
(Make.rotr):
|
||
(Make.loop):
|
||
(Make.clz):
|
||
(Make.ctz):
|
||
(Make.popcnt):
|
||
(Make.eqz):
|
||
(Make.lt_u):
|
||
(Make.le_u):
|
||
(Make.gt_u):
|
||
(Make.ge_u):
|
||
(Make.of_int_u):
|
||
(Make.to_string_u):
|
||
(Make.require):
|
||
(Make.dec_digit):
|
||
(Make.hex_digit):
|
||
(Make.parse_int):
|
||
(Make.of_string_s):
|
||
(Make.of_string_u):
|
||
(convert_pos):
|
||
(error_nest):
|
||
(text):
|
||
(intop):
|
||
(floatop):
|
||
(numop):
|
||
(memsz):
|
||
(ext):
|
||
(token.else.switch):
|
||
(token.else.switch.):
|
||
(token):
|
||
(__ocaml_lex_comment_rec):
|
||
(engine):
|
||
(new_engine):
|
||
(from_function):
|
||
(from_channel):
|
||
(from_string):
|
||
(lexeme):
|
||
(sub_lexeme):
|
||
(sub_lexeme_opt):
|
||
(sub_lexeme_char):
|
||
(sub_lexeme_char_opt):
|
||
(lexeme_char):
|
||
(lexeme_start):
|
||
(lexeme_end):
|
||
(lexeme_start_p):
|
||
(lexeme_end_p):
|
||
(new_line):
|
||
(flush_input):
|
||
(take):
|
||
(drop):
|
||
(last):
|
||
(split_last):
|
||
(index_of):
|
||
(index_of_int32):
|
||
(dim):
|
||
(set 1):
|
||
(get 2):
|
||
(log2):
|
||
(is_power_of_two):
|
||
(loop):
|
||
(breakup):
|
||
(hd):
|
||
(tl):
|
||
(rev_append):
|
||
(rev):
|
||
(flatten):
|
||
(rev_map):
|
||
(map2):
|
||
(rev_map2):
|
||
(iter2):
|
||
(fold_left2):
|
||
(fold_right2):
|
||
(for_all):
|
||
(exists):
|
||
(for_all2):
|
||
(exists2):
|
||
(mem):
|
||
(memq):
|
||
(assoc):
|
||
(assq):
|
||
(mem_assoc):
|
||
(mem_assq):
|
||
(remove_assoc):
|
||
(remove_assq):
|
||
(find):
|
||
(find_all):
|
||
(partition):
|
||
(split):
|
||
(combine):
|
||
(chop):
|
||
(rev_sort):
|
||
(sort_uniq):
|
||
(Make.height):
|
||
(Make.create):
|
||
(Make.singleton):
|
||
(Make.bal):
|
||
(Make.is_empty):
|
||
(Make.find):
|
||
(Make.mem):
|
||
(Make.min_binding):
|
||
(Make.max_binding):
|
||
(Make.remove_min_binding):
|
||
(Make.remove):
|
||
(Make.iter):
|
||
(Make.map):
|
||
(Make.mapi):
|
||
(Make.fold):
|
||
(Make.for_all):
|
||
(Make.exists):
|
||
(Make.add_min_binding):
|
||
(Make.add_max_binding):
|
||
(Make.join):
|
||
(Make.concat):
|
||
(Make.concat_or_join):
|
||
(Make.split):
|
||
(Make.merge):
|
||
(Make.filter):
|
||
(Make.partition):
|
||
(Make.cons_enum):
|
||
(Make.compare):
|
||
(Make.equal):
|
||
(Make.cardinal):
|
||
(Make.bindings_aux):
|
||
(Make.bindings):
|
||
(double_field):
|
||
(set_double_field):
|
||
(marshal):
|
||
(unmarshal):
|
||
(extension_slot):
|
||
(extension_name):
|
||
(extension_id):
|
||
(i32_const):
|
||
(i64_const):
|
||
(f32_const):
|
||
(f64_const):
|
||
(block):
|
||
(br):
|
||
(br_if):
|
||
(br_table):
|
||
(if_):
|
||
(call):
|
||
(call_indirect):
|
||
(get_local):
|
||
(set_local):
|
||
(tee_local):
|
||
(get_global):
|
||
(set_global):
|
||
(i32_load):
|
||
(i64_load):
|
||
(f32_load):
|
||
(f64_load):
|
||
(i32_load8_s):
|
||
(i32_load8_u):
|
||
(i32_load16_s):
|
||
(i32_load16_u):
|
||
(i64_load8_s):
|
||
(i64_load8_u):
|
||
(i64_load16_s):
|
||
(i64_load16_u):
|
||
(i64_load32_s):
|
||
(i64_load32_u):
|
||
(i32_store):
|
||
(i64_store):
|
||
(f32_store):
|
||
(f64_store):
|
||
(i32_store8):
|
||
(i32_store16):
|
||
(i64_store8):
|
||
(i64_store16):
|
||
(i64_store32):
|
||
(parse):
|
||
(string_to):
|
||
(string_to_script):
|
||
(string_to_module):
|
||
(parse_error):
|
||
(position_to_pos):
|
||
(positions_to_region):
|
||
(ati):
|
||
(nat):
|
||
(nat32):
|
||
(empty_context):
|
||
(enter_func):
|
||
(type_):
|
||
(lookup):
|
||
(label):
|
||
(anon_type):
|
||
(bind):
|
||
(bind_func):
|
||
(bind_local):
|
||
(bind_global):
|
||
(bind_table):
|
||
(bind_memory):
|
||
(anon):
|
||
(anon_func):
|
||
(anon_locals):
|
||
(anon_global):
|
||
(anon_table):
|
||
(anon_memory):
|
||
(anon_label):
|
||
(explicit_sig):
|
||
(inline_type):
|
||
(yyact):
|
||
(script1):
|
||
(module1):
|
||
(grow_stacks):
|
||
(clear_parser):
|
||
(current_lookahead_fun):
|
||
(catch.else.current_lookahead_fun.0):
|
||
(yyparse):
|
||
(peek_val):
|
||
(symbol_start_pos):
|
||
(symbol_end_pos):
|
||
(rhs_start_pos):
|
||
(rhs_end_pos):
|
||
(symbol_start):
|
||
(symbol_end):
|
||
(rhs_start):
|
||
(rhs_end):
|
||
(is_current_lookahead):
|
||
(failwith):
|
||
(invalid_arg):
|
||
(min):
|
||
(max):
|
||
(lnot):
|
||
(char_of_int):
|
||
(string_of_bool):
|
||
(bool_of_string):
|
||
(string_of_int):
|
||
(valid_float_lexem):
|
||
(string_of_float):
|
||
(open_out_gen):
|
||
(open_out):
|
||
(open_out_bin):
|
||
(flush_all):
|
||
(output_bytes):
|
||
(output_string):
|
||
(output):
|
||
(output_substring):
|
||
(output_value):
|
||
(close_out):
|
||
(close_out_noerr):
|
||
(open_in_gen):
|
||
(open_in):
|
||
(open_in_bin):
|
||
(input):
|
||
(else.r):
|
||
(unsafe_really_input):
|
||
(really_input):
|
||
(really_input_string):
|
||
(input_line.build_result):
|
||
(input_line.n):
|
||
(input_line.scan):
|
||
(input_line):
|
||
(close_in_noerr):
|
||
(print_bytes):
|
||
(print_endline):
|
||
(prerr_char):
|
||
(prerr_string):
|
||
(prerr_bytes):
|
||
(prerr_int):
|
||
(prerr_float):
|
||
(prerr_endline):
|
||
(prerr_newline):
|
||
(read_line):
|
||
(read_int):
|
||
(read_float):
|
||
(string_of_format):
|
||
(at_exit.exit_function.0):
|
||
(at_exit):
|
||
(do_at_exit):
|
||
(exit):
|
||
(output_binary_int):
|
||
(seek_out):
|
||
(pos_out):
|
||
(out_channel_length):
|
||
(set_binary_mode_out):
|
||
(input_binary_int):
|
||
(input_value):
|
||
(seek_in):
|
||
(pos_in):
|
||
(in_channel_length):
|
||
(close_in):
|
||
(set_binary_mode_in):
|
||
(LargeFile_000):
|
||
(LargeFile_001):
|
||
(LargeFile_002):
|
||
(LargeFile_003):
|
||
(LargeFile_004):
|
||
(LargeFile_005):
|
||
(kbprintf):
|
||
(plus):
|
||
(pp):
|
||
(print):
|
||
(string_of_pos):
|
||
(string_of_region):
|
||
(escaped.needs_escape):
|
||
(set_signal):
|
||
(catch_break):
|
||
(size):
|
||
(string_of_value_type):
|
||
(string_of_value_types):
|
||
(string_of_elem_type):
|
||
(string_of_limits):
|
||
(string_of_table_type):
|
||
(string_of_global_type):
|
||
(string_of_stack_type):
|
||
(string_of_func_type):
|
||
(type_of):
|
||
(default_value):
|
||
(value_of_bool):
|
||
(string_of_values):
|
||
(to_value):
|
||
(of_value):
|
||
(g):
|
||
(binary):
|
||
(bytes):
|
||
* wasm/spec-tests/address.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/binary.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/block.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/br.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/br_if.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/br_table.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/break-drop.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/call.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/call_indirect.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/comments.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/conversions.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/custom_section.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/endianness.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/exports.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/f32.wast.js: Removed.
|
||
* wasm/spec-tests/f32_cmp.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/f64.wast.js: Removed.
|
||
* wasm/spec-tests/f64_cmp.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/fac.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/float_exprs.wast.js: Removed.
|
||
* wasm/spec-tests/float_literals.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/float_memory.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/float_misc.wast.js: Removed.
|
||
* wasm/spec-tests/forward.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/func.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/func_ptrs.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/get_local.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/globals.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/i32.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/i64.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/if.wast.js: Added.
|
||
* wasm/spec-tests/imports.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/int_exprs.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/int_literals.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/jsapi.js: Added.
|
||
(testJSAPI.get test):
|
||
(testJSAPI.test):
|
||
(testJSAPI.set test):
|
||
(testJSAPI.assertCompileError):
|
||
(testJSAPI.assertCompileSuccess):
|
||
(testJSAPI):
|
||
* wasm/spec-tests/labels.wast.js: Added.
|
||
* wasm/spec-tests/left-to-right.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/linking.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/loop.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/memory.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/memory_redundancy.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/memory_trap.wast.js: Removed.
|
||
* wasm/spec-tests/names.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/nop.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/resizing.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/return.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/select.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/set_local.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/skip-stack-guard-page.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/stack.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/start.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/store_retval.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/switch.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/tee_local.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/traps.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/typecheck.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/unreachable.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
* wasm/spec-tests/unreached-invalid.wast.js: Added.
|
||
* wasm/spec-tests/unwind.wast.js:
|
||
(register): Deleted.
|
||
(module): Deleted.
|
||
(instance): Deleted.
|
||
(assert_malformed): Deleted.
|
||
(assert_invalid): Deleted.
|
||
(assert_soft_invalid): Deleted.
|
||
(assert_unlinkable): Deleted.
|
||
(assert_uninstantiable): Deleted.
|
||
(assert_trap): Deleted.
|
||
(assert_return): Deleted.
|
||
(assert_return_nan): Deleted.
|
||
|
||
2017-04-01 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
Object with numerical keys with gaps gets filled by NaN values
|
||
https://bugs.webkit.org/show_bug.cgi?id=164412
|
||
|
||
Reviewed by Merk Lam.
|
||
|
||
* stress/object-number-properties.js: Added.
|
||
(assert):
|
||
(boo):
|
||
|
||
2017-03-30 Michael Saboff <msaboff@apple.com>
|
||
|
||
Turning ChakraCore/test/fieldopts/objtypespec-newobj-invalidation.1.js back as it appears to always work
|
||
https://bugs.webkit.org/show_bug.cgi?id=170313
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Enable ChakraCore/test/fieldopts/objtypespec-newobj-invalidation.1.js as it seems solid.
|
||
|
||
* ChakraCore.yaml:
|
||
|
||
2017-03-30 Michael Saboff <msaboff@apple.com>
|
||
|
||
Enable ChakraCore/Function/FuncBody.js test as it now works
|
||
https://bugs.webkit.org/show_bug.cgi?id=170301
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
This test no longer crashes, so enable it and create a JSC specific
|
||
expected file.
|
||
|
||
* ChakraCore.yaml:
|
||
* ChakraCore/test/Function/FuncBodyES5.baseline-jsc: Added.
|
||
|
||
2017-03-30 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: fix misc JS API implementation inconsistencies
|
||
https://bugs.webkit.org/show_bug.cgi?id=170187
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Verify that WebAssembly function are on the object's __proto__.
|
||
|
||
* wasm/js-api/Module-compile.js:
|
||
* wasm/js-api/validate.js:
|
||
* wasm/js-api/web-assembly-instantiate.js:
|
||
|
||
2017-03-29 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: add shell-only Memory mode helper
|
||
https://bugs.webkit.org/show_bug.cgi?id=170227
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* wasm/assert.js: fix a prior debug thing I forgot to remove
|
||
* wasm/function-tests/memory-section-and-import.js: the assert
|
||
issue was hiding a failure in error message here
|
||
* wasm/js-api/element.js: the assert issue was hiding a failure in
|
||
error message here
|
||
(badInstantiation.test):
|
||
(badInstantiation):
|
||
* wasm/js-api/extension-MemoryMode.js: Added.
|
||
(const.validateMode.what.switch):
|
||
(testMemoryNoMax):
|
||
(testMemory):
|
||
(testInstanceNoMemory):
|
||
(testInstanceNoMax):
|
||
(testInstance):
|
||
* wasm/js-api/test_memory.js: the assert issue was hiding a
|
||
failure in error message here
|
||
(test):
|
||
|
||
2017-03-28 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: Make WebAssembly.instantiate/compile truly asynchronous
|
||
https://bugs.webkit.org/show_bug.cgi?id=169187
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/assert.js:
|
||
* wasm/js-api/Module-compile.js:
|
||
(async.testPromiseAPI):
|
||
* wasm/js-api/web-assembly-compile-parallel.js: Added.
|
||
(async.throwExn):
|
||
(async.test):
|
||
* wasm/js-api/web-assembly-instantiate-parallel.js: Added.
|
||
(async.test):
|
||
* wasm/js-api/web-assembly-instantiate.js:
|
||
(assert.eq.async.test):
|
||
(assert.eq):
|
||
(assert.asyncTest.async.test):
|
||
(assert.asyncTest):
|
||
(assert.truthy.async.test): Deleted.
|
||
(assert.truthy): Deleted.
|
||
|
||
2017-03-28 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: implement Module imports/exports
|
||
https://bugs.webkit.org/show_bug.cgi?id=166982
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/js-api/Module.exports.js: Added.
|
||
(assert.throws.WebAssembly.Module.prototype.exports):
|
||
(assert.eq):
|
||
* wasm/js-api/Module.imports.js: Added.
|
||
(assert.throws.WebAssembly.Module.prototype.imports):
|
||
(assert.eq):
|
||
|
||
2017-03-27 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: misc memory testing
|
||
https://bugs.webkit.org/show_bug.cgi?id=170137
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/assert.js: handle newlines in code we print out, avoid regex
|
||
* wasm/function-tests/memory-import-and-grow.js: Added.
|
||
(const.instantiate):
|
||
(const.test):
|
||
* wasm/function-tests/memory-section-and-import.js: Added.
|
||
(const.instantiate):
|
||
|
||
2017-03-23 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Use jsNontrivialString agressively for ToString(Int52)
|
||
https://bugs.webkit.org/show_bug.cgi?id=170002
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* stress/to-string-int52.js: Added.
|
||
(shouldBe):
|
||
(toString10):
|
||
(expected):
|
||
|
||
2017-03-23 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC][DFG] Make addShouldSpeculateAnyInt more conservative to avoid regression caused by Double <-> Int52 conversions
|
||
https://bugs.webkit.org/show_bug.cgi?id=169998
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/int52-back-and-forth.js: Added.
|
||
(shouldBe):
|
||
(num):
|
||
|
||
2017-03-23 Mark Lam <mark.lam@apple.com>
|
||
|
||
Clients of JSArray::tryCreateForInitializationPrivate() should do their own null checks.
|
||
https://bugs.webkit.org/show_bug.cgi?id=169783
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-169783.js: Added.
|
||
|
||
2017-03-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC][DFG] Propagate AnyIntAsDouble information carefully to utilize it in fixup
|
||
https://bugs.webkit.org/show_bug.cgi?id=169914
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/any-int-as-double-add.js: Added.
|
||
(shouldBe):
|
||
(test):
|
||
* stress/to-this-numbers.js: Added.
|
||
(shouldBe):
|
||
(Number.prototype.toThis):
|
||
|
||
2017-03-22 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add support for Error.stackTraceLimit.
|
||
https://bugs.webkit.org/show_bug.cgi?id=169904
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/error-stack-trace-limit.js: Added.
|
||
|
||
2017-03-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Use jsNontrivialString for Number toString operations
|
||
https://bugs.webkit.org/show_bug.cgi?id=169965
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/to-string-int32.js: Added.
|
||
(shouldBe):
|
||
(toString10):
|
||
(expected):
|
||
|
||
2017-03-22 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: test module namespace object for WebAssembly.Instance
|
||
https://bugs.webkit.org/show_bug.cgi?id=169951
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
|
||
2017-03-22 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: constructors without new don't throw
|
||
https://bugs.webkit.org/show_bug.cgi?id=165995
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
|
||
2017-03-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Optimize Number.prototype.toString on Int32 / Int52 / Double
|
||
https://bugs.webkit.org/show_bug.cgi?id=167454
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/number-to-string-abstract-operation.js: Added.
|
||
(shouldBe):
|
||
(int32ToString):
|
||
(shouldBe.int32ToString.new.Number.int52ToString):
|
||
(shouldBe.int32ToString.new.Number):
|
||
(shouldBe.doubleToString):
|
||
* stress/number-to-string-radix.js: Added.
|
||
(shouldBe):
|
||
(int32ToString):
|
||
(shouldBe.int32ToString.new.Number.int52ToString):
|
||
(shouldBe.int32ToString.new.Number):
|
||
(shouldBe.doubleToString):
|
||
* stress/number-to-string.js: Added.
|
||
(shouldBe):
|
||
(int32ToString):
|
||
(shouldBe.int32ToString.new.Number.int52ToString):
|
||
(shouldBe.int32ToString.new.Number):
|
||
(shouldBe.doubleToString):
|
||
|
||
2017-03-19 Chris Dumez <cdumez@apple.com>
|
||
|
||
`const location = "foo"` throws in a worker
|
||
https://bugs.webkit.org/show_bug.cgi?id=169839
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* ChakraCore/test/es6/letconst_global_shadow_builtins_nonconfigurable.baseline-jsc:
|
||
Update expected jsc result now that we throw a SyntaxError when trying to shadow undefined
|
||
with a let variable. We used not to throw because the value is undefined but this was not
|
||
as per EcmaScript. Both Firefox and Chrome throw in this case.
|
||
|
||
* stress/global-lexical-redeclare-variable.js:
|
||
(catch):
|
||
Update test that defines a non-configurable 'zoo' property on the global object and then
|
||
expected shadowing it with a 'let zoo' variable to work because its value was undefined.
|
||
This was not as per EcmaScript spec and both Firefox and Chrome throw in this case.
|
||
|
||
2017-03-19 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
import(arg) crashes when ToString(arg) throws
|
||
https://bugs.webkit.org/show_bug.cgi?id=169778
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/import-reject-with-exception.js: Added.
|
||
(shouldBe):
|
||
(let.x.get toString):
|
||
|
||
2017-03-16 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
FTL should support global and eval code
|
||
https://bugs.webkit.org/show_bug.cgi?id=169656
|
||
|
||
Reviewed by Geoffrey Garen and Saam Barati.
|
||
|
||
Added basic performance tests of global and eval code. These tests will run a lot faster in with
|
||
the FTL because of the object allocation.
|
||
|
||
* microbenchmarks/eval-code-ftl-reentry.js: Added.
|
||
* microbenchmarks/eval-code-ftl.js: Added.
|
||
* microbenchmarks/global-code-ftl.js: Added.
|
||
* stress/arith-log-on-various-types.js: This was a flaky fail with concurrent JIT, so I stopped running it with concurrent JIT. The failure was its assertion about how many times something gets compiled.
|
||
|
||
2017-03-16 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESnext] Implement Object Spread
|
||
https://bugs.webkit.org/show_bug.cgi?id=167963
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/object-spread.js: Added.
|
||
(let.assert):
|
||
(assert.sameValue):
|
||
(let.o.get a):
|
||
(let.obj.get c):
|
||
(cthulhu.get x):
|
||
(let.obj.set c):
|
||
(calls.o.get z):
|
||
(calls.o.get a):
|
||
(try.let.obj.get foo):
|
||
(get calls):
|
||
|
||
2017-03-15 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Default parameter part should be retrieved by op_get_argument opcode instead of changing arity
|
||
https://bugs.webkit.org/show_bug.cgi?id=164582
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/function-with-defaults-inlining.js: Added.
|
||
(shouldBe):
|
||
(ok):
|
||
(a):
|
||
* stress/function-with-defaults-non-inlining.js: Added.
|
||
(shouldBe):
|
||
(ok):
|
||
(a):
|
||
|
||
2017-03-15 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] ToString operation should have fixup for primitives to say this node does not have side effects
|
||
https://bugs.webkit.org/show_bug.cgi?id=169544
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/template-string-array.js: Added.
|
||
(test):
|
||
* stress/to-string-non-cell-use.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
|
||
2017-03-13 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r213856.
|
||
https://bugs.webkit.org/show_bug.cgi?id=169562
|
||
|
||
Breaks JSC stress test stress/super-property-access.js.ftl-
|
||
eager failing (Requested by mlam|g on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"FTL should not flush strict arguments unless it really needs
|
||
to"
|
||
https://bugs.webkit.org/show_bug.cgi?id=169519
|
||
http://trac.webkit.org/changeset/213856
|
||
|
||
2017-03-11 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
FTL should not flush strict arguments unless it really needs to
|
||
https://bugs.webkit.org/show_bug.cgi?id=169519
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
This benchmark runs 3.5x faster thanks to this patch.
|
||
|
||
* microbenchmarks/strict-arguments-no-escape.js: Added.
|
||
(foo):
|
||
(bar):
|
||
(baz):
|
||
|
||
2017-03-13 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[JSC] It should be possible create a label named let when parsing Statement in non strict mode
|
||
https://bugs.webkit.org/show_bug.cgi?id=168684
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* ChakraCore/test/LetConst/DeclOutofBlock.baseline-jsc:
|
||
|
||
2017-03-10 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Make more demos run
|
||
https://bugs.webkit.org/show_bug.cgi?id=165510
|
||
<rdar://problem/29760310>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/Builder.js:
|
||
(export.default.Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.case.string_appeared_here.this.section):
|
||
* wasm/js-api/wrapper-function.js: Added.
|
||
(exportImport):
|
||
(return.new.WebAssembly.Module):
|
||
(assert.throws.makeInstance):
|
||
(assert.throws.Bar):
|
||
(assert.throws):
|
||
|
||
2017-03-10 Mark Lam <mark.lam@apple.com>
|
||
|
||
JSC: BindingNode::bindValue doesn't increase the scope's reference count.
|
||
https://bugs.webkit.org/show_bug.cgi?id=168546
|
||
<rdar://problem/30589551>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-168546.js: Added.
|
||
|
||
2017-03-09 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[ESnext] Implement Object Rest - Implementing Object Rest Destructuring
|
||
https://bugs.webkit.org/show_bug.cgi?id=167962
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/object-rest-deconstruct.js: Added.
|
||
(let.assert):
|
||
(let.assertPropDescriptor):
|
||
(catch):
|
||
(get 3):
|
||
(foo):
|
||
(let.src.get y):
|
||
(let.src.set y):
|
||
(let.gen):
|
||
|
||
2017-03-09 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Make the Unity AngryBots demo run
|
||
https://bugs.webkit.org/show_bug.cgi?id=169268
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/function-tests/many-arguments-to-function.js: Added.
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.I32Const.0.I32Const.1.I32Const.2.I32Const.3.I32Const.4.I32Const.5.I32Const.6.I32Const.7.I32Const.8.I32Const.9.I32Const.10.I32Const.11.I32Const.12.I32Const.13.I32Const.14.I32Const.15.I32Const.16.I32Const.17.Call.0.Return.End.End.foo):
|
||
(i.instance.exports.f0.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.F32Const.Call.Return.End.End.foo):
|
||
(i.instance.exports.f0):
|
||
(instance.exports.f0.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.GetLocal.Call.Return.End.End.foo):
|
||
(instance.exports.f0):
|
||
|
||
2017-03-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[GTK] JSC test stress/arity-check-ftl-throw.js.ftl-no-cjit-validate-sampling-profiler crashing on GTK bot
|
||
https://bugs.webkit.org/show_bug.cgi?id=160124
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/spread-forward-call-varargs-stack-overflow.js:
|
||
|
||
2017-03-06 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Implement the WebAssembly.instantiate API
|
||
https://bugs.webkit.org/show_bug.cgi?id=165982
|
||
<rdar://problem/29760110>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/js-api/web-assembly-instantiate.js: Added.
|
||
(assert.eq.async.test):
|
||
(assert.eq):
|
||
(assert.truthy.async.test):
|
||
(assert.truthy):
|
||
|
||
2017-03-06 Saam Barati <sbarati@apple.com>
|
||
|
||
Unreviewed. Fix test expected error message.
|
||
|
||
* wasm/js-api/element.js:
|
||
(assert.throws):
|
||
|
||
2017-03-06 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
op_get_by_id_with_this should use inline caching
|
||
https://bugs.webkit.org/show_bug.cgi?id=162124
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/super-getter.js: Added.
|
||
(A.prototype.get f):
|
||
(A):
|
||
(B.prototype.get f):
|
||
(B):
|
||
* stress/super-force-ic-fail.js: Added.
|
||
(let.assert):
|
||
(let.aObj.get foo):
|
||
(let.obj.jaz):
|
||
(let.bObj.get foo):
|
||
(let.obj2.foo):
|
||
* stress/super-get-by-id.js: Added.
|
||
(assert):
|
||
(Base):
|
||
(Base.prototype.get name):
|
||
(Base.prototype.set name):
|
||
(Subclass.prototype.get name):
|
||
(Subclass):
|
||
(getterName):
|
||
(getterValue):
|
||
(PolymorphicSubclass.prototype.get value):
|
||
(PolymorphicSubclass):
|
||
(i.let.BaseCode):
|
||
(i.get value):
|
||
(MegamorphicSubclass.prototype.get value):
|
||
(MegamorphicSubclass):
|
||
(let.subObj.get value):
|
||
(i.catch):
|
||
(subObj.get value):
|
||
(BaseException):
|
||
(BaseException.prototype.get name):
|
||
(SubclassException.prototype.get name):
|
||
(SubclassException):
|
||
(prototype.foo):
|
||
(prototype.get name):
|
||
(SubclassExceptionComplex.prototype.get name):
|
||
(SubclassExceptionComplex):
|
||
* stress/super-getter-reset-ic.js: Added.
|
||
(let.assert):
|
||
(let.B.f):
|
||
|
||
2017-03-06 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: implement init_expr for Element
|
||
https://bugs.webkit.org/show_bug.cgi?id=165888
|
||
<rdar://problem/29760199>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.emitters.Element):
|
||
* wasm/assert.js:
|
||
* wasm/js-api/element.js:
|
||
(assert.throws):
|
||
(badInstantiation.makeModule):
|
||
(badInstantiation.test):
|
||
(badInstantiation):
|
||
* wasm/js-api/global-error.js:
|
||
|
||
2017-03-06 Carlos Alberto Lopez Perez <clopez@igalia.com>
|
||
|
||
[JSC] [Linux] Test stress/spread-forward-call-varargs-stack-overflow.js fails
|
||
https://bugs.webkit.org/show_bug.cgi?id=169206
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* stress/spread-forward-call-varargs-stack-overflow.js: Skip on Linux platforms.
|
||
|
||
2017-03-06 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Allow indexed module namespace object fields
|
||
https://bugs.webkit.org/show_bug.cgi?id=168870
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/spec-tests/names.wast.js:
|
||
|
||
2017-03-06 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Null pointer crash when loading module with unresolved import also as a script file
|
||
https://bugs.webkit.org/show_bug.cgi?id=168971
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/re-execute-error-module.js: Added.
|
||
(shouldBe):
|
||
(async):
|
||
* stress/resources/error-module.js: Added.
|
||
|
||
2017-03-02 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssemblyFunction should have Function.prototype as its prototype
|
||
https://bugs.webkit.org/show_bug.cgi?id=169101
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* wasm/js-api/web-assembly-function.js: Added.
|
||
|
||
2017-02-28 Oleksandr Skachkov <gskachkov@gmail.com>
|
||
|
||
Use of arguments in arrow function is slow
|
||
https://bugs.webkit.org/show_bug.cgi?id=168829
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/arrowfunciton-direct-arguments.js: Added.
|
||
(fn):
|
||
* microbenchmarks/arrowfunciton-reference-arguments.js: Added.
|
||
(fn):
|
||
|
||
2017-02-27 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r213019.
|
||
https://bugs.webkit.org/show_bug.cgi?id=168925
|
||
|
||
"It broke 32-bit jsc tests in debug builds" (Requested by
|
||
saamyjoon on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"op_get_by_id_with_this should use inline caching"
|
||
https://bugs.webkit.org/show_bug.cgi?id=162124
|
||
http://trac.webkit.org/changeset/213019
|
||
|
||
2017-02-27 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: miscellaneous spec fixes part deux
|
||
https://bugs.webkit.org/show_bug.cgi?id=168861
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm.yaml: more passing tests
|
||
* wasm/Builder.js: use a Map instead of an Object for the function
|
||
index space, because Number entries such as 0 were colliding with
|
||
string entries such as "0". This in turn requires some hashing of
|
||
objects which are inserted, because Map uses Object's insertion
|
||
order when comparing.
|
||
(export.default.Builder):
|
||
(export.default.Builder.prototype._functionIndexSpaceKeyHash):
|
||
(export.default.Builder.prototype._registerFunctionToIndexSpace):
|
||
(export.default.Builder.prototype._getFunctionFromIndexSpace):
|
||
* wasm/js-api/test_Instance.js: add a FIXME test
|
||
* wasm/spec-tests/memory.wast.js:
|
||
(assert_unlinkable):
|
||
* wasm/spec-tests/names.wast.js:
|
||
|
||
2017-02-26 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
op_get_by_id_with_this should use inline caching
|
||
https://bugs.webkit.org/show_bug.cgi?id=162124
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/super-getter.js: Added.
|
||
(A.prototype.get f):
|
||
(A):
|
||
(B.prototype.get f):
|
||
(B):
|
||
* stress/super-force-ic-fail.js: Added.
|
||
(let.assert):
|
||
(let.aObj.get foo):
|
||
(let.obj.jaz):
|
||
(let.bObj.get foo):
|
||
(let.obj2.foo):
|
||
* stress/super-get-by-id.js: Added.
|
||
(assert):
|
||
(Base):
|
||
(Base.prototype.get name):
|
||
(Base.prototype.set name):
|
||
(Subclass.prototype.get name):
|
||
(Subclass):
|
||
(getterName):
|
||
(getterValue):
|
||
(PolymorphicSubclass.prototype.get value):
|
||
(PolymorphicSubclass):
|
||
(i.let.BaseCode):
|
||
(i.get value):
|
||
(MegamorphicSubclass.prototype.get value):
|
||
(MegamorphicSubclass):
|
||
(let.subObj.get value):
|
||
(i.catch):
|
||
(subObj.get value):
|
||
(BaseException):
|
||
(BaseException.prototype.get name):
|
||
(SubclassException.prototype.get name):
|
||
(SubclassException):
|
||
(prototype.foo):
|
||
(prototype.get name):
|
||
(SubclassExceptionComplex.prototype.get name):
|
||
(SubclassExceptionComplex):
|
||
* stress/super-getter-reset-ic.js: Added.
|
||
(let.assert):
|
||
(let.B.f):
|
||
|
||
2017-02-24 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: miscellaneous spec fixes
|
||
https://bugs.webkit.org/show_bug.cgi?id=168822
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm.yaml: mark some skip tests as normal, now that they pass
|
||
* wasm/Builder.js: error message was wrong, causing extra error if hit
|
||
* wasm/js-api/global-error.js: new tests
|
||
(assert.throws):
|
||
* wasm/spec-tests/call.wast.js: comment out stack check tests
|
||
* wasm/spec-tests/call_indirect.wast.js: comment out stack check tests
|
||
* wasm/spec-tests/fac.wast.js: comment out stack check tests
|
||
* wasm/spec-tests/float_exprs.wast.js: wabt is wrong, bug reported, we should update
|
||
* wasm/spec-tests/imports.wast.js: bug in old wabt, fixed in recent wabt
|
||
(assert_unlinkable):
|
||
|
||
2017-02-23 Saam Barati <sbarati@apple.com>
|
||
|
||
Intrinsicify parseInt
|
||
https://bugs.webkit.org/show_bug.cgi?id=168627
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/parse-int-intrinsic.js: Added.
|
||
(assert):
|
||
(testIntrinsic.let.s):
|
||
(testIntrinsic):
|
||
(testIntrinsic2.baz):
|
||
(testIntrinsic2):
|
||
(testIntrinsic3.foo):
|
||
(testIntrinsic3):
|
||
(testIntrinsic4.foo):
|
||
(testIntrinsic4):
|
||
(testIntrinsic5.foo):
|
||
(testIntrinsic5):
|
||
(testIntrinsic6.foo):
|
||
(testIntrinsic6):
|
||
(testIntrinsic7.foo):
|
||
(testIntrinsic7):
|
||
|
||
2017-02-23 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: support 0x1 version
|
||
https://bugs.webkit.org/show_bug.cgi?id=168672
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Update the version number for all the tests. Note that the spec
|
||
tests are only updated with a new version number because spec+wabt
|
||
aren't ready for 0x1 yet. This is tracked by bug #168784.
|
||
|
||
* wasm/import-spec-tests.rb: use the new spec repository layout
|
||
* wasm/js-api/test_basic_api.js:
|
||
* wasm/self-test/test_BuilderWebAssembly.js:
|
||
(EmptyModule):
|
||
(CustomSection):
|
||
* wasm/spec-tests/address.wast.js:
|
||
* wasm/spec-tests/binary.wast.js:
|
||
* wasm/spec-tests/block.wast.js:
|
||
* wasm/spec-tests/br.wast.js:
|
||
* wasm/spec-tests/br_if.wast.js:
|
||
* wasm/spec-tests/br_table.wast.js:
|
||
* wasm/spec-tests/break-drop.wast.js:
|
||
* wasm/spec-tests/call.wast.js:
|
||
* wasm/spec-tests/call_indirect.wast.js:
|
||
* wasm/spec-tests/comments.wast.js:
|
||
* wasm/spec-tests/conversions.wast.js:
|
||
* wasm/spec-tests/custom_section.wast.js:
|
||
* wasm/spec-tests/endianness.wast.js:
|
||
* wasm/spec-tests/exports.wast.js:
|
||
* wasm/spec-tests/f32.wast.js:
|
||
* wasm/spec-tests/f32_cmp.wast.js:
|
||
* wasm/spec-tests/f64.wast.js:
|
||
* wasm/spec-tests/f64_cmp.wast.js:
|
||
* wasm/spec-tests/fac.wast.js:
|
||
* wasm/spec-tests/float_exprs.wast.js:
|
||
* wasm/spec-tests/float_literals.wast.js:
|
||
* wasm/spec-tests/float_memory.wast.js:
|
||
* wasm/spec-tests/float_misc.wast.js:
|
||
* wasm/spec-tests/forward.wast.js:
|
||
* wasm/spec-tests/func.wast.js:
|
||
* wasm/spec-tests/func_ptrs.wast.js:
|
||
* wasm/spec-tests/get_local.wast.js:
|
||
* wasm/spec-tests/globals.wast.js:
|
||
* wasm/spec-tests/i32.wast.js:
|
||
* wasm/spec-tests/i64.wast.js:
|
||
* wasm/spec-tests/imports.wast.js:
|
||
* wasm/spec-tests/int_exprs.wast.js:
|
||
* wasm/spec-tests/int_literals.wast.js:
|
||
* wasm/spec-tests/left-to-right.wast.js:
|
||
* wasm/spec-tests/linking.wast.js:
|
||
* wasm/spec-tests/loop.wast.js:
|
||
* wasm/spec-tests/memory.wast.js:
|
||
* wasm/spec-tests/memory_redundancy.wast.js:
|
||
* wasm/spec-tests/memory_trap.wast.js:
|
||
* wasm/spec-tests/names.wast.js:
|
||
* wasm/spec-tests/nop.wast.js:
|
||
* wasm/spec-tests/resizing.wast.js:
|
||
* wasm/spec-tests/return.wast.js:
|
||
* wasm/spec-tests/select.wast.js:
|
||
* wasm/spec-tests/set_local.wast.js:
|
||
* wasm/spec-tests/skip-stack-guard-page.wast.js:
|
||
* wasm/spec-tests/stack.wast.js:
|
||
* wasm/spec-tests/start.wast.js:
|
||
* wasm/spec-tests/store_retval.wast.js:
|
||
* wasm/spec-tests/switch.wast.js:
|
||
* wasm/spec-tests/tee_local.wast.js:
|
||
* wasm/spec-tests/traps.wast.js:
|
||
* wasm/spec-tests/typecheck.wast.js:
|
||
* wasm/spec-tests/unreachable.wast.js:
|
||
* wasm/spec-tests/unwind.wast.js:
|
||
* wasm/wasm.json:
|
||
|
||
2017-02-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
JSModuleNamespace object should have IC
|
||
https://bugs.webkit.org/show_bug.cgi?id=160590
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/module-assert-access-binding.js: Added.
|
||
* modules/module-assert-access-namespace.js: Added.
|
||
* modules/namespace-empty.js: Added.
|
||
(from.string_appeared_here.access):
|
||
(i.shouldThrow):
|
||
* stress/module-namespace-access-change.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
(import.string_appeared_here.then):
|
||
* stress/module-namespace-access-non-constant.js: Added.
|
||
(shouldBe):
|
||
(import.string_appeared_here.then):
|
||
* stress/module-namespace-access-poly.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
(import.string_appeared_here.then):
|
||
* stress/module-namespace-access-transitive-exports.js: Added.
|
||
(shouldBe):
|
||
(import.string_appeared_here.then):
|
||
* stress/module-namespace-access.js: Added.
|
||
(shouldBe):
|
||
(import.string_appeared_here.then):
|
||
* stress/resources/module-namespace-access-transitive-exports-2.js: Added.
|
||
(export.cocoa):
|
||
(export.change):
|
||
* stress/resources/module-namespace-access-transitive-exports.js: Added.
|
||
* stress/resources/module-namespace-access.js: Added.
|
||
(export.cocoa):
|
||
(export.change):
|
||
|
||
2017-02-20 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
The collector thread should only start when the mutator doesn't have heap access
|
||
https://bugs.webkit.org/show_bug.cgi?id=167737
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Add versions of splay that flash heap access, to simulate what might happen if a third-party app
|
||
was running concurrent GC. In this case, we might actually start the collector thread.
|
||
|
||
* stress/splay-flash-access-1ms.js: Added.
|
||
(performance.now):
|
||
(this.Setup.setup.setup):
|
||
(this.TearDown.tearDown.tearDown):
|
||
(Benchmark):
|
||
(BenchmarkResult):
|
||
(BenchmarkResult.prototype.valueOf):
|
||
(BenchmarkSuite):
|
||
(alert):
|
||
(Math.random):
|
||
(BenchmarkSuite.ResetRNG):
|
||
(RunStep):
|
||
(BenchmarkSuite.RunSuites):
|
||
(BenchmarkSuite.CountBenchmarks):
|
||
(BenchmarkSuite.GeometricMean):
|
||
(BenchmarkSuite.GeometricMeanTime):
|
||
(BenchmarkSuite.AverageAbovePercentile):
|
||
(BenchmarkSuite.GeometricMeanLatency):
|
||
(BenchmarkSuite.FormatScore):
|
||
(BenchmarkSuite.prototype.NotifyStep):
|
||
(BenchmarkSuite.prototype.NotifyResult):
|
||
(BenchmarkSuite.prototype.NotifyError):
|
||
(BenchmarkSuite.prototype.RunSingleBenchmark):
|
||
(RunNextSetup):
|
||
(RunNextBenchmark):
|
||
(RunNextTearDown):
|
||
(BenchmarkSuite.prototype.RunStep):
|
||
(GeneratePayloadTree):
|
||
(GenerateKey):
|
||
(SplayUpdateStats):
|
||
(InsertNewNode):
|
||
(SplaySetup):
|
||
(SplayTearDown):
|
||
(SplayRun):
|
||
(SplayTree):
|
||
(SplayTree.prototype.isEmpty):
|
||
(SplayTree.prototype.insert):
|
||
(SplayTree.prototype.remove):
|
||
(SplayTree.prototype.find):
|
||
(SplayTree.prototype.findMax):
|
||
(SplayTree.prototype.findGreatestLessThan):
|
||
(SplayTree.prototype.exportKeys):
|
||
(SplayTree.prototype.splay_):
|
||
(SplayTree.Node):
|
||
(SplayTree.Node.prototype.traverse_):
|
||
(jscSetUp):
|
||
(jscTearDown):
|
||
(jscRun):
|
||
(averageAbovePercentile):
|
||
(printPercentile):
|
||
* stress/splay-flash-access.js: Added.
|
||
(performance.now):
|
||
(this.Setup.setup.setup):
|
||
(this.TearDown.tearDown.tearDown):
|
||
(Benchmark):
|
||
(BenchmarkResult):
|
||
(BenchmarkResult.prototype.valueOf):
|
||
(BenchmarkSuite):
|
||
(alert):
|
||
(Math.random):
|
||
(BenchmarkSuite.ResetRNG):
|
||
(RunStep):
|
||
(BenchmarkSuite.RunSuites):
|
||
(BenchmarkSuite.CountBenchmarks):
|
||
(BenchmarkSuite.GeometricMean):
|
||
(BenchmarkSuite.GeometricMeanTime):
|
||
(BenchmarkSuite.AverageAbovePercentile):
|
||
(BenchmarkSuite.GeometricMeanLatency):
|
||
(BenchmarkSuite.FormatScore):
|
||
(BenchmarkSuite.prototype.NotifyStep):
|
||
(BenchmarkSuite.prototype.NotifyResult):
|
||
(BenchmarkSuite.prototype.NotifyError):
|
||
(BenchmarkSuite.prototype.RunSingleBenchmark):
|
||
(RunNextSetup):
|
||
(RunNextBenchmark):
|
||
(RunNextTearDown):
|
||
(BenchmarkSuite.prototype.RunStep):
|
||
(GeneratePayloadTree):
|
||
(GenerateKey):
|
||
(SplayUpdateStats):
|
||
(InsertNewNode):
|
||
(SplaySetup):
|
||
(SplayTearDown):
|
||
(SplayRun):
|
||
(SplayTree):
|
||
(SplayTree.prototype.isEmpty):
|
||
(SplayTree.prototype.insert):
|
||
(SplayTree.prototype.remove):
|
||
(SplayTree.prototype.find):
|
||
(SplayTree.prototype.findMax):
|
||
(SplayTree.prototype.findGreatestLessThan):
|
||
(SplayTree.prototype.exportKeys):
|
||
(SplayTree.prototype.splay_):
|
||
(SplayTree.Node):
|
||
(SplayTree.Node.prototype.traverse_):
|
||
(jscSetUp):
|
||
(jscTearDown):
|
||
(jscRun):
|
||
(averageAbovePercentile):
|
||
(printPercentile):
|
||
|
||
2017-02-21 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r212712.
|
||
|
||
This change broke the CLoop build.
|
||
|
||
Reverted changeset:
|
||
|
||
"JSModuleNamespace object should have IC"
|
||
https://bugs.webkit.org/show_bug.cgi?id=160590
|
||
http://trac.webkit.org/changeset/212712
|
||
|
||
2017-02-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
JSModuleNamespace object should have IC
|
||
https://bugs.webkit.org/show_bug.cgi?id=160590
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/module-assert-access-binding.js: Added.
|
||
* modules/module-assert-access-namespace.js: Added.
|
||
* modules/namespace-empty.js: Added.
|
||
(from.string_appeared_here.access):
|
||
(i.shouldThrow):
|
||
* stress/module-namespace-access-change.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
(import.string_appeared_here.then):
|
||
* stress/module-namespace-access-non-constant.js: Added.
|
||
(shouldBe):
|
||
(import.string_appeared_here.then):
|
||
* stress/module-namespace-access-poly.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
(import.string_appeared_here.then):
|
||
* stress/module-namespace-access-transitive-exports.js: Added.
|
||
(shouldBe):
|
||
(import.string_appeared_here.then):
|
||
* stress/module-namespace-access.js: Added.
|
||
(shouldBe):
|
||
(import.string_appeared_here.then):
|
||
* stress/resources/module-namespace-access-transitive-exports-2.js: Added.
|
||
(export.cocoa):
|
||
(export.change):
|
||
* stress/resources/module-namespace-access-transitive-exports.js: Added.
|
||
* stress/resources/module-namespace-access.js: Added.
|
||
(export.cocoa):
|
||
(export.change):
|
||
|
||
2017-02-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
ASSERTION FAILED: "!scope.exception()" with Object.isSealed/isFrozen and uninitialized module bindings
|
||
https://bugs.webkit.org/show_bug.cgi?id=168605
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/module-namespace-is-frozen.js: Added.
|
||
(from.string_appeared_here.shouldThrow):
|
||
(export.b):
|
||
* modules/module-namespace-is-sealed.js: Added.
|
||
(from.string_appeared_here.shouldThrow):
|
||
(export.b):
|
||
|
||
2017-02-19 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r212466.
|
||
https://bugs.webkit.org/show_bug.cgi?id=168577
|
||
|
||
causes crashes on AArch64 on linux, maybe it's causing crashes
|
||
on iOS too (Requested by pizlo on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"The collector thread should only start when the mutator
|
||
doesn't have heap access"
|
||
https://bugs.webkit.org/show_bug.cgi?id=167737
|
||
http://trac.webkit.org/changeset/212466
|
||
|
||
2017-02-10 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
The collector thread should only start when the mutator doesn't have heap access
|
||
https://bugs.webkit.org/show_bug.cgi?id=167737
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Add versions of splay that flash heap access, to simulate what might happen if a third-party app
|
||
was running concurrent GC. In this case, we might actually start the collector thread.
|
||
|
||
* stress/splay-flash-access-1ms.js: Added.
|
||
(performance.now):
|
||
(this.Setup.setup.setup):
|
||
(this.TearDown.tearDown.tearDown):
|
||
(Benchmark):
|
||
(BenchmarkResult):
|
||
(BenchmarkResult.prototype.valueOf):
|
||
(BenchmarkSuite):
|
||
(alert):
|
||
(Math.random):
|
||
(BenchmarkSuite.ResetRNG):
|
||
(RunStep):
|
||
(BenchmarkSuite.RunSuites):
|
||
(BenchmarkSuite.CountBenchmarks):
|
||
(BenchmarkSuite.GeometricMean):
|
||
(BenchmarkSuite.GeometricMeanTime):
|
||
(BenchmarkSuite.AverageAbovePercentile):
|
||
(BenchmarkSuite.GeometricMeanLatency):
|
||
(BenchmarkSuite.FormatScore):
|
||
(BenchmarkSuite.prototype.NotifyStep):
|
||
(BenchmarkSuite.prototype.NotifyResult):
|
||
(BenchmarkSuite.prototype.NotifyError):
|
||
(BenchmarkSuite.prototype.RunSingleBenchmark):
|
||
(RunNextSetup):
|
||
(RunNextBenchmark):
|
||
(RunNextTearDown):
|
||
(BenchmarkSuite.prototype.RunStep):
|
||
(GeneratePayloadTree):
|
||
(GenerateKey):
|
||
(SplayUpdateStats):
|
||
(InsertNewNode):
|
||
(SplaySetup):
|
||
(SplayTearDown):
|
||
(SplayRun):
|
||
(SplayTree):
|
||
(SplayTree.prototype.isEmpty):
|
||
(SplayTree.prototype.insert):
|
||
(SplayTree.prototype.remove):
|
||
(SplayTree.prototype.find):
|
||
(SplayTree.prototype.findMax):
|
||
(SplayTree.prototype.findGreatestLessThan):
|
||
(SplayTree.prototype.exportKeys):
|
||
(SplayTree.prototype.splay_):
|
||
(SplayTree.Node):
|
||
(SplayTree.Node.prototype.traverse_):
|
||
(jscSetUp):
|
||
(jscTearDown):
|
||
(jscRun):
|
||
(averageAbovePercentile):
|
||
(printPercentile):
|
||
* stress/splay-flash-access.js: Added.
|
||
(performance.now):
|
||
(this.Setup.setup.setup):
|
||
(this.TearDown.tearDown.tearDown):
|
||
(Benchmark):
|
||
(BenchmarkResult):
|
||
(BenchmarkResult.prototype.valueOf):
|
||
(BenchmarkSuite):
|
||
(alert):
|
||
(Math.random):
|
||
(BenchmarkSuite.ResetRNG):
|
||
(RunStep):
|
||
(BenchmarkSuite.RunSuites):
|
||
(BenchmarkSuite.CountBenchmarks):
|
||
(BenchmarkSuite.GeometricMean):
|
||
(BenchmarkSuite.GeometricMeanTime):
|
||
(BenchmarkSuite.AverageAbovePercentile):
|
||
(BenchmarkSuite.GeometricMeanLatency):
|
||
(BenchmarkSuite.FormatScore):
|
||
(BenchmarkSuite.prototype.NotifyStep):
|
||
(BenchmarkSuite.prototype.NotifyResult):
|
||
(BenchmarkSuite.prototype.NotifyError):
|
||
(BenchmarkSuite.prototype.RunSingleBenchmark):
|
||
(RunNextSetup):
|
||
(RunNextBenchmark):
|
||
(RunNextTearDown):
|
||
(BenchmarkSuite.prototype.RunStep):
|
||
(GeneratePayloadTree):
|
||
(GenerateKey):
|
||
(SplayUpdateStats):
|
||
(InsertNewNode):
|
||
(SplaySetup):
|
||
(SplayTearDown):
|
||
(SplayRun):
|
||
(SplayTree):
|
||
(SplayTree.prototype.isEmpty):
|
||
(SplayTree.prototype.insert):
|
||
(SplayTree.prototype.remove):
|
||
(SplayTree.prototype.find):
|
||
(SplayTree.prototype.findMax):
|
||
(SplayTree.prototype.findGreatestLessThan):
|
||
(SplayTree.prototype.exportKeys):
|
||
(SplayTree.prototype.splay_):
|
||
(SplayTree.Node):
|
||
(SplayTree.Node.prototype.traverse_):
|
||
(jscSetUp):
|
||
(jscTearDown):
|
||
(jscRun):
|
||
(averageAbovePercentile):
|
||
(printPercentile):
|
||
|
||
2017-02-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Update module namespace object according to the latest ECMA262
|
||
https://bugs.webkit.org/show_bug.cgi?id=168280
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/namespace-object-symbol-iterator-name.js:
|
||
* modules/namespace-object-typed-array-fast-path.js:
|
||
* modules/namespace.js:
|
||
(shouldBe.JSON.stringify.Reflect.getOwnPropertyDescriptor):
|
||
(shouldThrow):
|
||
|
||
2017-02-11 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Implement (Shared)ArrayBuffer.prototype.byteLength
|
||
https://bugs.webkit.org/show_bug.cgi?id=166476
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* ChakraCore/test/typedarray/arraybufferType.baseline-jsc:
|
||
* stress/array-buffer-byte-length.js: Added.
|
||
(shouldBe):
|
||
(shouldThrow):
|
||
(Symbol):
|
||
* stress/reflect-set.js:
|
||
|
||
2017-02-10 Saam Barati <sbarati@apple.com>
|
||
|
||
Object allocation sinking phase doesn't properly handle control flow when emitting a PutHint of a materialized object into a PromotedHeapLocation of a still sunken object
|
||
https://bugs.webkit.org/show_bug.cgi?id=168140
|
||
<rdar://problem/30205880>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/allocation-sinking-puthint-control-flow.js: Added.
|
||
(e):
|
||
(bar):
|
||
(let.y):
|
||
(else.let.y):
|
||
(baz):
|
||
(foo):
|
||
(catch):
|
||
|
||
2017-02-09 Mark Lam <mark.lam@apple.com>
|
||
|
||
B3::Procedure::deleteOrphans() should neutralize upsilons with dead phis.
|
||
https://bugs.webkit.org/show_bug.cgi?id=167437
|
||
<rdar://problem/30198083>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/b3-delete-orphans-should-neutralize-upsilons-with-dead-phis.js: Added.
|
||
|
||
2017-02-09 Saam Barati <sbarati@apple.com>
|
||
|
||
Sloppy mode: We don't properly hoist functions names "arguments" when we have a non-simple parameter list
|
||
https://bugs.webkit.org/show_bug.cgi?id=167319
|
||
<rdar://problem/30149432>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/sloppy-mode-hoist-arguments-function-non-simple-parameter-list.js: Added.
|
||
(assert):
|
||
(assert.arguments):
|
||
(assert.b):
|
||
(x.arguments):
|
||
(x.b):
|
||
(x):
|
||
|
||
2017-02-09 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix max length check in ArrayPrototype.js' concatSlowPath().
|
||
https://bugs.webkit.org/show_bug.cgi?id=167270
|
||
<rdar://problem/30128133>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/array-prototype-concat-of-long-spliced-arrays.js: Added.
|
||
* stress/array-prototype-concat-of-long-spliced-arrays2.js: Added.
|
||
|
||
2017-02-09 Keith Miller <keith_miller@apple.com>
|
||
|
||
We should not allow Function.caller to be used on native functions
|
||
https://bugs.webkit.org/show_bug.cgi?id=165628
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/caller-native-code.js: Added.
|
||
(f):
|
||
|
||
2017-02-04 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Add operationToInt32SensibleSlow to optimize kraken pbkdf2 and sha256
|
||
https://bugs.webkit.org/show_bug.cgi?id=167736
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/to-int32-sensible.js: Added.
|
||
(shouldBe):
|
||
(toInt32):
|
||
(test):
|
||
|
||
2017-02-01 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, remove loop
|
||
https://bugs.webkit.org/show_bug.cgi?id=167694
|
||
|
||
It causes timeout.
|
||
Original bug can be tested even without this loop.
|
||
|
||
* stress/arity-fixup-should-not-touch-stack-area-below-sp.js:
|
||
|
||
2017-02-01 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
ArityFixup should adjust SP first
|
||
https://bugs.webkit.org/show_bug.cgi?id=167239
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
Significantly large arity fixup reliably causes this crash.
|
||
|
||
* stress/arity-fixup-should-not-touch-stack-area-below-sp.js: Added.
|
||
|
||
2017-01-31 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Move slow-running microbenchmarks out of JSTests/microbenchmarks
|
||
https://bugs.webkit.org/show_bug.cgi?id=167676
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
The microbenchmarks directory is profitable when it's cheap to run. This change moves very slow
|
||
tests (>=200ms running time on my machine) and puts them in JSTests/slowMicrobenchmarks instead.
|
||
That directory is run only through `slow!; defaultQuickRun` and is not run by run-jsc-benchmarks.
|
||
This is a big progression in test running time. But because it frontloads more slow tests, the
|
||
tests will seem to run more slowly when you first start the test runner.
|
||
|
||
* microbenchmarks/default-derived-constructor.js: Removed.
|
||
* microbenchmarks/dense-set.js: Removed.
|
||
* microbenchmarks/ftl-polymorphic-div.js: Removed.
|
||
* microbenchmarks/ftl-polymorphic-mul.js: Removed.
|
||
* microbenchmarks/function-bind-inlining.js: Removed.
|
||
* microbenchmarks/function-bind-no-inlining.js: Removed.
|
||
* microbenchmarks/large-map-iteration-with-additions.js: Removed.
|
||
* microbenchmarks/large-map-iteration-with-mutation.js: Removed.
|
||
* microbenchmarks/map-get-get-cse.js: Removed.
|
||
* microbenchmarks/misc-bugs-847389-jpeg2000.js: Removed.
|
||
* microbenchmarks/spread-small-array.js: Removed.
|
||
* microbenchmarks/v8-raytrace-with-try-catch-high-frequency-throws.js: Removed.
|
||
* slowMicrobenchmarks: Added.
|
||
* slowMicrobenchmarks.yaml: Added.
|
||
* slowMicrobenchmarks/README: Added.
|
||
* slowMicrobenchmarks/default-derived-constructor.js: Copied from JSTests/microbenchmarks/default-derived-constructor.js.
|
||
* slowMicrobenchmarks/dense-set.js: Copied from JSTests/microbenchmarks/dense-set.js.
|
||
* slowMicrobenchmarks/ftl-polymorphic-div.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-div.js.
|
||
* slowMicrobenchmarks/ftl-polymorphic-mul.js: Copied from JSTests/microbenchmarks/ftl-polymorphic-mul.js.
|
||
* slowMicrobenchmarks/function-bind-inlining.js: Copied from JSTests/microbenchmarks/function-bind-inlining.js.
|
||
* slowMicrobenchmarks/function-bind-no-inlining.js: Copied from JSTests/microbenchmarks/function-bind-no-inlining.js.
|
||
* slowMicrobenchmarks/large-map-iteration-with-additions.js: Copied from JSTests/microbenchmarks/large-map-iteration-with-additions.js.
|
||
* slowMicrobenchmarks/large-map-iteration-with-mutation.js: Copied from JSTests/microbenchmarks/large-map-iteration-with-mutation.js.
|
||
* slowMicrobenchmarks/map-get-get-cse.js: Copied from JSTests/microbenchmarks/map-get-get-cse.js.
|
||
* slowMicrobenchmarks/misc-bugs-847389-jpeg2000.js: Copied from JSTests/microbenchmarks/misc-bugs-847389-jpeg2000.js.
|
||
* slowMicrobenchmarks/spread-small-array.js: Copied from JSTests/microbenchmarks/spread-small-array.js.
|
||
* slowMicrobenchmarks/v8-raytrace-with-try-catch-high-frequency-throws.js: Copied from JSTests/microbenchmarks/v8-raytrace-with-try-catch-high-frequency-throws.js.
|
||
|
||
2017-01-30 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Do not reject WebAssembly.compile() with Exception
|
||
https://bugs.webkit.org/show_bug.cgi?id=167585
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* wasm/js-api/Module-compile.js:
|
||
(async.testPromiseAPI):
|
||
|
||
2017-01-27 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Lift template escape sequence restrictions in tagged templates
|
||
https://bugs.webkit.org/show_bug.cgi?id=166871
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Update the error messages and add new tests.
|
||
|
||
* ChakraCore/test/es6/unicode_6_identifier_Blue524737.baseline-jsc:
|
||
* stress/lift-template-literal.js: Added.
|
||
(dump):
|
||
(testTag.return.tag):
|
||
(testTag):
|
||
* stress/template-literal-syntax.js:
|
||
|
||
2017-01-26 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix missing exception check in genericTypedArrayViewProtoFuncSet().
|
||
https://bugs.webkit.org/show_bug.cgi?id=166812
|
||
<rdar://problem/29916672>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/regress-166812.js: Added.
|
||
|
||
2017-01-26 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r211224.
|
||
https://bugs.webkit.org/show_bug.cgi?id=167479
|
||
|
||
"It was a Kraken performance regression" (Requested by
|
||
saamyjoon on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"OSR entry: delay outer-loop compilation when at inner-loop"
|
||
https://bugs.webkit.org/show_bug.cgi?id=167149
|
||
http://trac.webkit.org/changeset/211224
|
||
|
||
2017-01-26 JF Bastien <jfbastien@apple.com>
|
||
|
||
OSR entry: delay outer-loop compilation when at inner-loop
|
||
https://bugs.webkit.org/show_bug.cgi?id=167149
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
Try to be mean to OSR entry by using nested loops, and having
|
||
non-int32 types or truly varying types.
|
||
|
||
Mandelbrot currently never tiers up to FTL because it exits too
|
||
many times before this. That shouldn't happen because it's just
|
||
numbers and int32s. I'll file a bug to fix this.
|
||
|
||
* microbenchmarks/mandelbrot.js: Added.
|
||
(mandelbrot):
|
||
(printable):
|
||
* microbenchmarks/nonude.js: Added.
|
||
(Array.prototype.remove):
|
||
(const.u):
|
||
(const.load):
|
||
(const.scan):
|
||
(const.main):
|
||
|
||
2017-01-25 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly JS API: coerce return values from imports
|
||
https://bugs.webkit.org/show_bug.cgi?id=165480
|
||
<rdar://problem/29760318>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* wasm/function-tests/function-import-return-value.js: Added.
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.const.tests.x.assert.eq):
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.const.tests.Math.fround):
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.let.type.of.Reflect.ownKeys):
|
||
(test.1):
|
||
(assert.truthy):
|
||
(assert.throws):
|
||
|
||
2017-01-25 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
jsc.cpp should have the $.agent stuff for testing SAB
|
||
https://bugs.webkit.org/show_bug.cgi?id=167431
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Add a very basic test of Atomics using $.agent. This is based on
|
||
LayoutTests/workers/sab/simple.html.
|
||
|
||
* stress/lars-sab-workers.js: Added.
|
||
(startWorker):
|
||
(resources):
|
||
(wake):
|
||
(else):
|
||
|
||
2017-01-24 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Atomics.store should return the int-converted value according to toInteger
|
||
https://bugs.webkit.org/show_bug.cgi?id=167399
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/atomics-add-uint32.js: Added.
|
||
* stress/atomics-store-return.js: Fix the test to match what the spec wants.
|
||
|
||
2017-01-24 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Optimize Number#toString with Int52
|
||
https://bugs.webkit.org/show_bug.cgi?id=167303
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* stress/to-string-with-int52.js: Added.
|
||
(shouldBe):
|
||
|
||
2017-01-24 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Atomics.store should return the int-converted value, not the value that it stored
|
||
https://bugs.webkit.org/show_bug.cgi?id=167395
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/atomics-store-return.js: Added.
|
||
|
||
2017-01-24 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
-0 is a valid array index and AtomicsObject should know this
|
||
https://bugs.webkit.org/show_bug.cgi?id=167386
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/atomics-neg-zero.js: Added.
|
||
|
||
2017-01-23 Saam Barati <sbarati@apple.com>
|
||
|
||
https://bugs.webkit.org/show_bug.cgi?id=167247
|
||
JSC: operationSpreadGeneric uses the wrong global object for the builtin function and slow_path_spread consults the wrong global object to prove if the iterator protocol is unobservable
|
||
<rdar://problem/30121809>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/spread-consults-correct-global-object.js: Added.
|
||
(assert):
|
||
(spread):
|
||
* stress/spread-correct-global-object-on-exception.js: Added.
|
||
(assert):
|
||
(spread):
|
||
(const.objectText.let.o.Symbol.iterator):
|
||
(catch):
|
||
|
||
2017-01-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
dynamic import is ambiguous with import declaration at module code
|
||
https://bugs.webkit.org/show_bug.cgi?id=167098
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* modules/import-call.js: Added.
|
||
(from.string_appeared_here.import.string_appeared_here.then):
|
||
* modules/import-call/main.js: Added.
|
||
* stress/import-syntax.js:
|
||
(async):
|
||
|
||
2017-01-19 Skachkov Oleksandr <gskachkov@gmail.com>
|
||
|
||
"this" missing after await in async arrow function
|
||
https://bugs.webkit.org/show_bug.cgi?id=166919
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-arrow-functions-lexical-binding-in-class.js:
|
||
(ChildClass.prototype.asyncThisPropWithAwaitBody):
|
||
(ChildClass.prototype.asyncThisPropInEvalWithAwaitBody):
|
||
(ChildClass.prototype.asyncThisValueBodyWithAwait):
|
||
(ChildClass.prototype.asyncThisValueInEvalWithAwaitBody):
|
||
(ChildClass):
|
||
(ChildClass3):
|
||
(ChildClass3.prototype.classValue):
|
||
(ChildClass3.prototype.get classProperty):
|
||
* stress/async-arrow-functions-lexical-new.target-binding.js:
|
||
(C2WithAwait):
|
||
|
||
2017-01-16 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Make opaque root scanning truly constraint-based
|
||
https://bugs.webkit.org/show_bug.cgi?id=165760
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
Added this test, which demonstrates the benefit of having a dedicated string subspace.
|
||
|
||
* microbenchmarks/stringalloc.js: Added.
|
||
|
||
2017-01-17 Michael Saboff <msaboff@apple.com>
|
||
|
||
Nested parenthesized regular expressions with non-zero minimum counts appear to hang and use lots of memory
|
||
https://bugs.webkit.org/show_bug.cgi?id=167125
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/regexp-nested-nonzero-min-counted-parens.js: Added.
|
||
New test with limits that run slow and take a reasonable amount of memory
|
||
before the change and run fast, using little memory with the change.
|
||
|
||
2017-01-14 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Annotate large string tests with largeHeap
|
||
https://bugs.webkit.org/show_bug.cgi?id=167054
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/dense-set.js:
|
||
* microbenchmarks/lots-of-fields.js:
|
||
* stress/joined-strings-should-not-exceed-max-string-length.js:
|
||
* stress/make-large-string-jit-strcat.js:
|
||
* stress/make-large-string-jit.js:
|
||
* stress/make-large-string-strcat.js:
|
||
* stress/make-large-string.js:
|
||
* stress/string-joining-long-strings-should-not-crash.js:
|
||
* stress/string-prototype-replace-should-throw-out-of-memory-error-when-using-too-much-memory.js:
|
||
|
||
2017-01-14 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Reserve capacity for StringBuilder in unescape
|
||
https://bugs.webkit.org/show_bug.cgi?id=167008
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* stress/unescape.js: Added.
|
||
(shouldBe):
|
||
|
||
2017-01-12 Saam Barati <sbarati@apple.com>
|
||
|
||
Add a slice intrinsic to the DFG/FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=166707
|
||
<rdar://problem/29913445>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/array-slice-intrinsic.js: Added.
|
||
(assert):
|
||
(shallowEq):
|
||
(runTest1):
|
||
(runTest2):
|
||
* stress/array-slice-jettison-on-constructor-change.js: Added.
|
||
(assert):
|
||
(runTest1):
|
||
(runTest2):
|
||
(addRandomProperties):
|
||
(runTests):
|
||
* stress/array-slice-osr-exit-2.js: Added.
|
||
(assert):
|
||
(Foo):
|
||
(shallowEq):
|
||
(runTest1):
|
||
(runTest2):
|
||
(addRandomProperties):
|
||
(runTests):
|
||
* stress/array-slice-osr-exit.js: Added.
|
||
(assert):
|
||
(Foo):
|
||
(shallowEq):
|
||
(runTest1):
|
||
(runTest2):
|
||
(addRandomProperties):
|
||
(runTests):
|
||
|
||
2017-01-11 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Mark es6/typed_arrays_correct_prototype_chains.js as failing after r210570.
|
||
https://bugs.webkit.org/show_bug.cgi?id=166931i
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* es6.yaml:
|
||
|
||
2017-01-10 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r210052.
|
||
https://bugs.webkit.org/show_bug.cgi?id=166915
|
||
|
||
"breaks web compatability" (Requested by keith_miller on
|
||
#webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"Add support for global"
|
||
https://bugs.webkit.org/show_bug.cgi?id=165171
|
||
http://trac.webkit.org/changeset/210052
|
||
|
||
2017-01-10 Mark Lam <mark.lam@apple.com>
|
||
|
||
Property setters should not be called for bound arguments list entries.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165631
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/property-setters-should-not-be-called-for-bound-arguments-list-entries.js: Added.
|
||
|
||
2017-01-10 Skachkov Oleksandr <gskachkov@gmail.com>
|
||
|
||
Calling async arrow function which is in a class's member function will cause error
|
||
https://bugs.webkit.org/show_bug.cgi?id=166879
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-arrow-functions-lexical-binding-in-class.js: Added.
|
||
(shouldBe):
|
||
(shouldBeAsync):
|
||
(BaseClass.prototype.baseClassValue):
|
||
(BaseClass.prototype.get property):
|
||
(BaseClass):
|
||
(runSomething):
|
||
(ChildClass.prototype.classValue):
|
||
(ChildClass.prototype.get classProperty):
|
||
(ChildClass.prototype.asyncValueExp):
|
||
(ChildClass.prototype.asyncValueBody):
|
||
(ChildClass.prototype.asyncThisPropExp):
|
||
(ChildClass.prototype.asyncThisPropBody):
|
||
(ChildClass.prototype.asyncThisPropInEvalExp):
|
||
(ChildClass.prototype.asyncThisPropInEvalBody):
|
||
(ChildClass.prototype.asyncThisValueExp):
|
||
(ChildClass.prototype.asyncThisValueBody):
|
||
(ChildClass.prototype.asyncThisValueInEvalExp):
|
||
(ChildClass.prototype.asyncThisValueInEvalBody):
|
||
(ChildClass):
|
||
(ChildClass2):
|
||
(ChildClass2.prototype.classValue):
|
||
(ChildClass2.prototype.get classProperty):
|
||
* stress/async-arrow-functions-lexical-super-binding.js:
|
||
|
||
2017-01-09 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Prototype dynamic-import
|
||
https://bugs.webkit.org/show_bug.cgi?id=165724
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/import-basic.js: Added.
|
||
(async.async.load):
|
||
(async):
|
||
(catch):
|
||
* stress/import-from-eval.js: Added.
|
||
(async):
|
||
(catch):
|
||
* stress/import-syntax.js: Added.
|
||
(testSyntaxError):
|
||
* stress/import-tests/cocoa.js: Added.
|
||
(export.Cocoa):
|
||
(export.hello):
|
||
* stress/import-tests/multiple.js: Added.
|
||
(export.result):
|
||
* stress/import-tests/multiple2.js: Added.
|
||
(export.ok):
|
||
* stress/import-tests/should.js: Added.
|
||
(export.shouldBe):
|
||
(export.shouldThrow):
|
||
* stress/modules-syntax-error.js:
|
||
|
||
2017-01-09 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r210476.
|
||
https://bugs.webkit.org/show_bug.cgi?id=166859
|
||
|
||
"4% JSBench regression" (Requested by keith_mi_ on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"Add a slice intrinsic to the DFG/FTL"
|
||
https://bugs.webkit.org/show_bug.cgi?id=166707
|
||
http://trac.webkit.org/changeset/210476
|
||
|
||
2017-01-06 Saam Barati <sbarati@apple.com>
|
||
|
||
Add a slice intrinsic to the DFG/FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=166707
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/array-slice-intrinsic.js: Added.
|
||
(assert):
|
||
(shallowEq):
|
||
(runTest1):
|
||
(runTest2):
|
||
* stress/array-slice-jettison-on-constructor-change.js: Added.
|
||
(assert):
|
||
(runTest1):
|
||
(runTest2):
|
||
(addRandomProperties):
|
||
(runTests):
|
||
* stress/array-slice-osr-exit-2.js: Added.
|
||
(assert):
|
||
(Foo):
|
||
(shallowEq):
|
||
(runTest1):
|
||
(runTest2):
|
||
(addRandomProperties):
|
||
(runTests):
|
||
* stress/array-slice-osr-exit.js: Added.
|
||
(assert):
|
||
(Foo):
|
||
(shallowEq):
|
||
(runTest1):
|
||
(runTest2):
|
||
(addRandomProperties):
|
||
(runTests):
|
||
|
||
2017-01-06 Michael Saboff <msaboff@apple.com>
|
||
|
||
@putByValDirect in Array.of and Array.from overwrites non-writable/configurable properties
|
||
https://bugs.webkit.org/show_bug.cgi?id=153486
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
New regression test.
|
||
|
||
* stress/regress-153486.js: Added.
|
||
(shouldEqual):
|
||
(makeUnwriteableUnconfigurableObject):
|
||
(testArrayOf):
|
||
(testArrayFrom):
|
||
(runTest):
|
||
|
||
2016-12-30 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DeferGC::~DeferGC should be super cheap
|
||
https://bugs.webkit.org/show_bug.cgi?id=166626
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/slow-path-generator-updating-current-node-dfg.js:
|
||
* stress/unshift-array-storage.js:
|
||
|
||
2017-01-04 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: sections with the same name are allowed
|
||
https://bugs.webkit.org/show_bug.cgi?id=166708
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/self-test/test_BuilderJSON.js:
|
||
(SectionsWithSameCustomName):
|
||
|
||
2017-01-04 Saam Barati <sbarati@apple.com>
|
||
|
||
stress/spread-calling.js timing out on the bots
|
||
https://bugs.webkit.org/show_bug.cgi?id=166689
|
||
<rdar://problem/29779182>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/spread-calling.js:
|
||
|
||
2017-01-04 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: add Module.sections
|
||
https://bugs.webkit.org/show_bug.cgi?id=165159
|
||
<rdar://problem/29760326>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
As described here: https://github.com/WebAssembly/design/blob/master/JS.md#webassemblymodulecustomsections
|
||
|
||
* wasm/Builder.js: allow custom sections to be duplicated
|
||
* wasm/js-api/Module.customSection.js: Added.
|
||
(assert.throws.WebAssembly.Module.prototype.customSections):
|
||
(assert.eq):
|
||
|
||
2017-01-04 Saam Barati <sbarati@apple.com>
|
||
|
||
We don't properly handle exceptions inside the nativeCallTrampoline macro in the LLInt
|
||
https://bugs.webkit.org/show_bug.cgi?id=163720
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/bound-function-tail-call-with-exception.js: Added.
|
||
(bar):
|
||
(foo):
|
||
(catch):
|
||
|
||
2017-01-03 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: check and test in-call / out-call values
|
||
https://bugs.webkit.org/show_bug.cgi?id=164876
|
||
<rdar://problem/29844107>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm.yaml:
|
||
* wasm/assert.js: add an assert for NaN comparison
|
||
* wasm/fuzz/export-function.js: Added. Generate random wasm export
|
||
signatures, and call them with random parameters.
|
||
(const.paramExporter):
|
||
(const.setBuffer):
|
||
(const.types.generate):
|
||
(generate):
|
||
* wasm/js-api/export-arity.js: Added.
|
||
(const.paramExporter): Test that mismatched arities when JS calls
|
||
wasm follow the defined semantics: i32 is 0, f32 / f64 are NaN.
|
||
https://github.com/WebAssembly/design/blob/master/JS.md#exported-function-exotic-objects
|
||
* wasm/js-api/export-void-is-undef.js: Added. Test that "void"
|
||
wasm functions return "undefined" in JS.
|
||
|
||
2017-01-02 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: handle and optimize wasm export → wasm import calls
|
||
https://bugs.webkit.org/show_bug.cgi?id=165282
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/Builder.js: Add a Proxy to Builder.js, which intercepts
|
||
unknown property lookups. This creates way better error messages
|
||
on typos than 'undefined is not a function', which happens
|
||
semi-frequently as I typo opcode names (and which one is a typo is
|
||
hard to find because we chain builders).
|
||
(const._isValidValue):
|
||
(get target):
|
||
(const._importFunctionContinuation):
|
||
(const._importMemoryContinuation):
|
||
(const._importTableContinuation):
|
||
(const._exportFunctionContinuation):
|
||
(export.default.Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.case.string_appeared_here.this.section):
|
||
(export.default.Builder.prototype._registerSectionBuilders.this.Unknown):
|
||
* wasm/LowLevelBinary.js: Add limited support for var{u}int64 (only the 32-bit values)
|
||
(export.default.LowLevelBinary.prototype.varint32):
|
||
(export.default.LowLevelBinary.prototype.varuint64):
|
||
(export.default.LowLevelBinary.prototype.varint64):
|
||
* wasm/function-tests/exceptions.js: update error message
|
||
* wasm/function-tests/trap-load.js: update error message
|
||
* wasm/function-tests/trap-store.js: update error message
|
||
* wasm/js-api/wasm-to-wasm-bad-signature.js: Added. Test a bunch of bad wasm->wasm import signatures
|
||
(const.makeImportee.signature.switch):
|
||
(BadSignatureDropStartParams):
|
||
* wasm/js-api/wasm-to-wasm.js: Added. Test 64-bit wasm->wasm import calls
|
||
(const.callerModule):
|
||
(const.calleeModule):
|
||
(WasmToWasm):
|
||
|
||
2017-01-02 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Some loads don't take into account the offset
|
||
https://bugs.webkit.org/show_bug.cgi?id=166616
|
||
<rdar://problem/29841541>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/function-tests/load-offset.js: Added.
|
||
|
||
2016-12-29 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Rebase spec-tests now that wabt has been updated to produce certain kinds of invalid modules
|
||
https://bugs.webkit.org/show_bug.cgi?id=166491
|
||
<rdar://problem/29814999>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
Based off these revisions:
|
||
- spec: b055d01ea1dfdd7a5231ae779095435f836de97f
|
||
- wabt: d0d44702c753f851b094615298a2f4d4e3c21035
|
||
|
||
The reason for the rebase is that wabt was updated to stop
|
||
silently rejecting invalid modules. This was needed because
|
||
some of the spec tests check to make sure that the module
|
||
is invalid, but wabt was silently ignoring the errors and
|
||
generating valid modules:
|
||
https://github.com/WebAssembly/wabt/issues/256
|
||
|
||
* wasm.yaml:
|
||
* wasm/spec-tests/address.wast.js:
|
||
* wasm/spec-tests/binary.wast.js:
|
||
* wasm/spec-tests/block.wast.js:
|
||
* wasm/spec-tests/br.wast.js:
|
||
* wasm/spec-tests/br_if.wast.js:
|
||
* wasm/spec-tests/br_table.wast.js:
|
||
* wasm/spec-tests/break-drop.wast.js:
|
||
* wasm/spec-tests/call.wast.js:
|
||
* wasm/spec-tests/call_indirect.wast.js:
|
||
* wasm/spec-tests/comments.wast.js:
|
||
* wasm/spec-tests/conversions.wast.js:
|
||
* wasm/spec-tests/custom_section.wast.js:
|
||
* wasm/spec-tests/endianness.wast.js:
|
||
* wasm/spec-tests/exports.wast.js:
|
||
* wasm/spec-tests/f32.wast.js:
|
||
* wasm/spec-tests/f32_cmp.wast.js:
|
||
* wasm/spec-tests/f64.wast.js:
|
||
* wasm/spec-tests/f64_cmp.wast.js:
|
||
* wasm/spec-tests/fac.wast.js:
|
||
* wasm/spec-tests/float_exprs.wast.js:
|
||
* wasm/spec-tests/float_literals.wast.js:
|
||
* wasm/spec-tests/float_memory.wast.js:
|
||
* wasm/spec-tests/float_misc.wast.js:
|
||
* wasm/spec-tests/forward.wast.js:
|
||
* wasm/spec-tests/func.wast.js:
|
||
* wasm/spec-tests/func_ptrs.wast.js:
|
||
* wasm/spec-tests/get_local.wast.js:
|
||
* wasm/spec-tests/globals.wast.js:
|
||
* wasm/spec-tests/i32.wast.js:
|
||
* wasm/spec-tests/i64.wast.js:
|
||
* wasm/spec-tests/imports.wast.js:
|
||
* wasm/spec-tests/int_exprs.wast.js:
|
||
* wasm/spec-tests/int_literals.wast.js:
|
||
* wasm/spec-tests/left-to-right.wast.js:
|
||
* wasm/spec-tests/linking.wast.js:
|
||
* wasm/spec-tests/loop.wast.js:
|
||
* wasm/spec-tests/memory.wast.js:
|
||
* wasm/spec-tests/memory_redundancy.wast.js:
|
||
* wasm/spec-tests/memory_trap.wast.js:
|
||
* wasm/spec-tests/names.wast.js:
|
||
* wasm/spec-tests/nop.wast.js:
|
||
* wasm/spec-tests/resizing.wast.js:
|
||
* wasm/spec-tests/return.wast.js:
|
||
* wasm/spec-tests/select.wast.js:
|
||
* wasm/spec-tests/set_local.wast.js:
|
||
* wasm/spec-tests/skip-stack-guard-page.wast.js:
|
||
* wasm/spec-tests/stack.wast.js:
|
||
* wasm/spec-tests/start.wast.js:
|
||
* wasm/spec-tests/store_retval.wast.js:
|
||
* wasm/spec-tests/switch.wast.js:
|
||
* wasm/spec-tests/tee_local.wast.js:
|
||
* wasm/spec-tests/traps.wast.js:
|
||
* wasm/spec-tests/typecheck.wast.js:
|
||
* wasm/spec-tests/unreachable.wast.js:
|
||
* wasm/spec-tests/unwind.wast.js:
|
||
|
||
2016-12-28 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Don't allow duplicate export names
|
||
https://bugs.webkit.org/show_bug.cgi?id=166490
|
||
<rdar://problem/29815000>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm.yaml:
|
||
* wasm/function-tests/invalid-duplicate-export.js: Added.
|
||
|
||
2016-12-28 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Implement grow_memory and current_memory
|
||
https://bugs.webkit.org/show_bug.cgi?id=166448
|
||
<rdar://problem/29803676>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
I rewrote some of the testWasmModuleFunctions that used Memory to use
|
||
the JS API since the jsc.cpp version can no longer use memory.
|
||
|
||
* wasm.yaml:
|
||
* wasm/function-tests/add-12.js:
|
||
(testWasmModuleFunctions):
|
||
* wasm/function-tests/br-if-loop-less-than.js:
|
||
(testWasmModuleFunctions):
|
||
* wasm/function-tests/brTableAsIf.js:
|
||
(testWasmModuleFunctions):
|
||
* wasm/function-tests/brTableManyValues.js:
|
||
(testWasmModuleFunctions):
|
||
* wasm/function-tests/brTableWithLoop.js:
|
||
(testWasmModuleFunctions):
|
||
* wasm/function-tests/dumb-eq-if-then-else.js:
|
||
* wasm/function-tests/eqz.js:
|
||
* wasm/function-tests/grow-memory-2.js: Added.
|
||
(const.func):
|
||
(assert.eq.instance.exports.foo):
|
||
* wasm/function-tests/grow-memory-3.js: Added.
|
||
* wasm/function-tests/grow-memory-4.js: Added.
|
||
(const.func):
|
||
* wasm/function-tests/grow-memory.js: Added.
|
||
(binaryShouldNotParse):
|
||
(assert.truthy):
|
||
(assert.eq):
|
||
(memory.grow):
|
||
* wasm/function-tests/i32-load.js:
|
||
(testWasmModuleFunctions):
|
||
* wasm/function-tests/i32-load8-s.js:
|
||
* wasm/function-tests/max.js:
|
||
* wasm/function-tests/min.js:
|
||
* wasm/js-api/memory-grow.js: Added.
|
||
(i.i):
|
||
(assertEq):
|
||
* wasm/js-api/test_memory.js:
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-25 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Propagate the source origin as much as possible
|
||
https://bugs.webkit.org/show_bug.cgi?id=166348
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/source-origin.js: Added.
|
||
(shouldBe):
|
||
|
||
2016-12-24 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[test262] Fixing mapped arguments object property test case
|
||
https://bugs.webkit.org/show_bug.cgi?id=159398
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arguments-bizarre-behaviour-disable-enumerability.js:
|
||
* stress/arguments-define-property.js: Added.
|
||
(assert):
|
||
(testProperties):
|
||
* stress/arguments-non-configurable.js: Added.
|
||
(assert):
|
||
(tryChangeNonConfigurableDescriptor):
|
||
(set tryChangeNonConfigurableDescriptor):
|
||
(tryChangeWritableOfNonConfigurableDescriptor):
|
||
* test262.yaml:
|
||
|
||
016-12-20 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
[test262] Fixing mapped arguments object property test case
|
||
https://bugs.webkit.org/show_bug.cgi?id=159398
|
||
|
||
Reviewed by .
|
||
|
||
* stress/arguments-bizarre-behaviour-disable-enumerability.js:
|
||
* stress/arguments-define-property.js: Added.
|
||
(assert):
|
||
(testProperties):
|
||
* stress/arguments-non-configurable.js: Added.
|
||
(assert):
|
||
(tryChangeNonConfigurableDescriptor):
|
||
(set tryChangeNonConfigurableDescriptor):
|
||
(tryChangeWritableOfNonConfigurableDescriptor):
|
||
* test262.yaml:
|
||
|
||
2016-12-23 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: trap on bad division.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164786
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Also, mark conversions as passing.
|
||
|
||
* wasm.yaml:
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-22 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: Make spec-tests/f32.wast.js and spec-tests/f64.wast.js pass
|
||
https://bugs.webkit.org/show_bug.cgi?id=166447
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm.yaml:
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-22 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Make calling Wasm functions that returns or takes an i64 as a parameter an early exception
|
||
https://bugs.webkit.org/show_bug.cgi?id=166437
|
||
<rdar://problem/29793949>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm.yaml:
|
||
* wasm/function-tests/i64-from-js-exceptions.js: Added.
|
||
(const.imp.import.sideEffects):
|
||
(assert.throws.instance.exports.foo.valueOf):
|
||
|
||
2016-12-22 Mark Lam <mark.lam@apple.com>
|
||
|
||
De-duplicate finally blocks.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160168
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Re-landing r209952 with a few new tests added in test-finally.js.
|
||
|
||
* stress/deeply-nested-finallys.js: Copied from JSTests/stress/deeply-nested-finallys.js.
|
||
- Tests many levels of finally nesting. This causes the old code to hang (and
|
||
crashes eventually) while trying to generate bytecode for the exponentially
|
||
duplicated finally blocks. The new code completes this test almost instantly.
|
||
|
||
* stress/test-finally.js: Copied from JSTests/stress/test-finally.js.
|
||
- Tests control flow through various permutations of finally blocks.
|
||
|
||
2016-12-22 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Make the spec-tests/address.wast.js test pass
|
||
https://bugs.webkit.org/show_bug.cgi?id=166429
|
||
<rdar://problem/29793220>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm.yaml:
|
||
|
||
2016-12-22 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: The validator should not allow unused stack entries at the end of a block
|
||
https://bugs.webkit.org/show_bug.cgi?id=166411
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Test cleanup and enable new passing tests.
|
||
|
||
* wasm.yaml:
|
||
* wasm/function-tests/br-if-as-return.js:
|
||
|
||
2016-12-22 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Make the spec-tests/start.wast.js test pass
|
||
https://bugs.webkit.org/show_bug.cgi?id=166416
|
||
<rdar://problem/29784532>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* wasm.yaml:
|
||
|
||
2016-12-21 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: Fix decode floating point constants in unreachable code
|
||
https://bugs.webkit.org/show_bug.cgi?id=166400
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm.yaml:
|
||
|
||
2016-12-21 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: Allow br, br_if, and br_table to act as a return
|
||
https://bugs.webkit.org/show_bug.cgi?id=166393
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Add tests for breaks acting as returns and fix tests that
|
||
validate error messages.
|
||
|
||
* wasm/function-tests/br-as-return.js: Added.
|
||
* wasm/function-tests/br-if-as-return.js: Added.
|
||
* wasm/function-tests/br-table-as-return.js: Added.
|
||
* wasm/function-tests/if-no-else-non-void.js:
|
||
* wasm/function-tests/struct.js: Added.
|
||
* wasm/js-api/global-error.js:
|
||
(assert.throws):
|
||
* wasm/js-api/table.js:
|
||
(assert.throws):
|
||
|
||
2016-12-21 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Import spec tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=166395
|
||
|
||
Rubber stamped by Keith Miller.
|
||
|
||
This patch implements the Wasm spec's tests found here:
|
||
https://github.com/WebAssembly/spec/tree/master/interpreter/test
|
||
|
||
These tests are in .wast s-epxression format. To convert
|
||
them to JS, I use a script from the wabt library, found here:
|
||
https://github.com/WebAssembly/wabt/blob/master/test/run-gen-spec-js.py
|
||
|
||
I also added a script that automatically imports the tests as
|
||
JS files. The inputs to the script is the path to the Wasm spec
|
||
git repo and the path to the wabt git repo. This will make importing
|
||
new tests easy in the future.
|
||
|
||
The wasm spec imported is at commit: b055d01ea1dfdd7a5231ae779095435f836de97f
|
||
The wabt used to do the import is at commit: 622b42dced6d793e9d49e9b1fd1d1524defd1387
|
||
|
||
* wasm.yaml:
|
||
* wasm/import-spec-tests.rb: Added.
|
||
* wasm/spec-tests: Added.
|
||
* wasm/spec-tests/address.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/binary.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/block.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/br.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/br_if.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/br_table.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/break-drop.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/call.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/call_indirect.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/comments.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/conversions.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/custom_section.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/endianness.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/exports.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/f32.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/f32_cmp.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/f64.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/f64_cmp.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/fac.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/float_exprs.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/float_literals.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/float_memory.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/float_misc.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/forward.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/func.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/func_ptrs.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/get_local.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/globals.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/i32.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/i64.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/imports.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/int_exprs.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/int_literals.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/left-to-right.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/linking.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/loop.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/memory.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/memory_redundancy.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/memory_trap.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/names.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/nop.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/resizing.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/return.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/select.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/set_local.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/skip-stack-guard-page.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/stack.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/start.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/store_retval.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/switch.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/tee_local.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/traps.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/typecheck.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/unreachable.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
* wasm/spec-tests/unwind.wast.js: Added.
|
||
(register):
|
||
(module):
|
||
(instance):
|
||
(assert_malformed):
|
||
(assert_invalid):
|
||
(assert_soft_invalid):
|
||
(assert_unlinkable):
|
||
(assert_uninstantiable):
|
||
(assert_trap):
|
||
(assert_return):
|
||
(assert_return_nan):
|
||
|
||
2016-12-20 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add support for global
|
||
https://bugs.webkit.org/show_bug.cgi?id=165171
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/global.js: Added.
|
||
|
||
2016-12-20 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly API: implement WebAssembly.LinkError
|
||
https://bugs.webkit.org/show_bug.cgi?id=165805
|
||
<rdar://problem/29747874>
|
||
|
||
Reviewed by Mark lam.
|
||
|
||
Update all exception sites which now throw WebAssembly.LinkError.
|
||
|
||
* wasm/js-api/element-data.js:
|
||
* wasm/js-api/element.js:
|
||
(assert.throws):
|
||
* wasm/js-api/global-error.js:
|
||
(new.Number):
|
||
* wasm/js-api/table.js:
|
||
(assert.throws):
|
||
(new.WebAssembly.Table):
|
||
* wasm/js-api/test_Data.js:
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
* wasm/js-api/test_memory.js:
|
||
(test):
|
||
(test.testMemImportError): Deleted.
|
||
|
||
2016-12-20 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: unique function signatures
|
||
https://bugs.webkit.org/show_bug.cgi?id=165957
|
||
<rdar://problem/29735737>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/function-tests/table-basic.js: FIXME is now addressed,
|
||
though instance to instance calls still need work which bug
|
||
#165282 will address
|
||
(i.assert.eq.foo):
|
||
* wasm/js-api/unique-signature.js: Added.
|
||
(CallIndirectWithDuplicateSignatures):
|
||
|
||
2016-12-19 Mark Lam <mark.lam@apple.com>
|
||
|
||
Rolling out r209974 and r209952. They break some websites in mysterious ways. Step 2: Rollout r209952.
|
||
https://bugs.webkit.org/show_bug.cgi?id=166049
|
||
|
||
Not reviewed.
|
||
|
||
* stress/deeply-nested-finallys.js: Removed.
|
||
* stress/test-finally.js: Removed.
|
||
|
||
2016-12-19 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Make running Wasm tests take less time by reducing some tests' iteration count and by splitting some tests into different files
|
||
https://bugs.webkit.org/show_bug.cgi?id=166017
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* wasm/function-tests/trap-load-2.js: Added.
|
||
(assert):
|
||
(wasmFrameCountFromError):
|
||
(continuation):
|
||
(i.catch):
|
||
* wasm/function-tests/trap-load.js:
|
||
(assert.continuation): Deleted.
|
||
* wasm/function-tests/trap-store-2.js: Added.
|
||
(import.Builder.from.string_appeared_here.assert):
|
||
(continuation):
|
||
(i.catch):
|
||
* wasm/function-tests/trap-store.js:
|
||
(assert.continuation): Deleted.
|
||
(assert): Deleted.
|
||
* wasm/js-api/test_memory.js:
|
||
(test):
|
||
|
||
2016-12-18 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Implement the WebAssembly.compile and WebAssembly.validate
|
||
https://bugs.webkit.org/show_bug.cgi?id=165936
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* wasm/js-api/Module-compile.js: Added.
|
||
(async.testPromiseAPI):
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
* wasm/js-api/validate.js: Added.
|
||
(assert.truthy.WebAssembly.validate.builder.WebAssembly):
|
||
|
||
2016-12-16 Mark Lam <mark.lam@apple.com>
|
||
|
||
De-duplicate finally blocks.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160168
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/deeply-nested-finallys.js: Added.
|
||
- Tests many levels of finally nesting. This causes the old code to hang (and
|
||
crashes eventually) while trying to generate bytecode for the exponentially
|
||
duplicated finally blocks. The new code completes this test almost instantly.
|
||
|
||
* stress/test-finally.js: Added.
|
||
- Tests control flow through various permutations of finally blocks.
|
||
|
||
2016-12-16 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: WasmB3IRGenerator should throw exceptions instead of crash
|
||
https://bugs.webkit.org/show_bug.cgi?id=165834
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/function-tests/exceptions.js: Added.
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.makeInstance):
|
||
* wasm/function-tests/table-basic.js:
|
||
(i.i.42.throw.new.Error):
|
||
|
||
2016-12-16 Keith Miller <keith_miller@apple.com>
|
||
|
||
i64.eqz should use an Int64 zero
|
||
https://bugs.webkit.org/show_bug.cgi?id=165942
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-15 Keith Miller <keith_miller@apple.com>
|
||
|
||
Fix validation of non-void if blocks with no else
|
||
https://bugs.webkit.org/show_bug.cgi?id=165938
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Add a new failing test and a fix an existing one.
|
||
|
||
* wasm/function-tests/dead-call.js:
|
||
* wasm/function-tests/if-no-else-non-void.js: Added.
|
||
|
||
2016-12-15 Keith Miller <keith_miller@apple.com>
|
||
|
||
Wasm should not create empty unlinked callsites
|
||
https://bugs.webkit.org/show_bug.cgi?id=165933
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* wasm/function-tests/dead-call.js: Added.
|
||
|
||
2016-12-15 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: improve compilation error messages
|
||
https://bugs.webkit.org/show_bug.cgi?id=163919
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Update error messages in these tests.
|
||
Use the assert.throws facility in many of them which weren't already.
|
||
|
||
* wasm/js-api/element.js:
|
||
(assert.throws.new.WebAssembly.Module.builder.WebAssembly):
|
||
(assert.throws):
|
||
* wasm/js-api/global-error.js:
|
||
(assert.throws.new.WebAssembly.Module.bin):
|
||
(assert.throws):
|
||
(new.Number):
|
||
* wasm/js-api/table.js:
|
||
(assert.throws.new.WebAssembly.Module.builder.WebAssembly):
|
||
(assert.throws):
|
||
(assertBadTableImport):
|
||
* wasm/js-api/test_Data.js:
|
||
(DataSectionWithoutMemory):
|
||
* wasm/js-api/test_Start.js:
|
||
(InvalidStartFunctionIndex):
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
|
||
2016-12-15 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly API: improve data section errors
|
||
https://bugs.webkit.org/show_bug.cgi?id=165733
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/js-api/element-data.js: Added.
|
||
(ElementBeforeData.set const):
|
||
(ElementBeforeData): check the order of initialization, which is observable on failure
|
||
* wasm/js-api/test_Data.js:
|
||
(DataSectionWithoutMemory):
|
||
(DataSectionOffTheEnd): Deleted.
|
||
(DataSectionPartlyOffTheEnd): Deleted.
|
||
(DataSectionEmptyOffTheEnd): Deleted.
|
||
(DataSectionSeenByStart): Deleted.
|
||
|
||
2016-12-15 Keith Miller <keith_miller@apple.com>
|
||
|
||
Fix 64-bit shift family Wasm opcodes
|
||
https://bugs.webkit.org/show_bug.cgi?id=165902
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
Add tests for shift family of instructions. Since
|
||
we can't generate i64 values to pass to wasm we only compile
|
||
the code for those functions. Attempting to generate any i64
|
||
code using these instructions would have been enough to cause
|
||
the B3 Validation error anyway.
|
||
|
||
* wasm/assert.js:
|
||
* wasm/function-tests/rotl.js: Added.
|
||
* wasm/function-tests/rotr.js: Added.
|
||
* wasm/function-tests/shl.js: Added.
|
||
* wasm/function-tests/shr-s.js: Added.
|
||
* wasm/function-tests/shr-u.js: Added.
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-14 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly: test_BuilderJSON.js is broken
|
||
https://bugs.webkit.org/show_bug.cgi?id=165893
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* wasm/Builder.js:
|
||
(const._isValidValue):
|
||
* wasm/self-test/test_BuilderJSON.js:
|
||
|
||
2016-12-14 Keith Miller <keith_miller@apple.com>
|
||
|
||
Unreviewed, fix test.
|
||
|
||
* wasm/function-tests/i32-const.js:
|
||
|
||
2016-12-14 Keith Miller <keith_miller@apple.com>
|
||
|
||
Wasm should decode constants correctly
|
||
https://bugs.webkit.org/show_bug.cgi?id=165886
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/Builder.js:
|
||
(const._isValidValue):
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.putOp):
|
||
* wasm/LowLevelBinary.js:
|
||
(export.default.LowLevelBinary.prototype.float):
|
||
(export.default.LowLevelBinary.prototype.double):
|
||
* wasm/function-tests/f32-const.js: Added.
|
||
* wasm/function-tests/f64-const.js: Added.
|
||
* wasm/function-tests/i32-const.js: Added.
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-14 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: Add various low hanging fruit that will allow us to run the LLVM torture tests in Wasm
|
||
https://bugs.webkit.org/show_bug.cgi?id=165883
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/Builder.js:
|
||
(export.default.Builder.prototype._registerSectionBuilders.switch.case.string_appeared_here.this.section):
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.emitters.Export):
|
||
* wasm/js-api/table.js:
|
||
(assertBadBinary):
|
||
(assertBadTable):
|
||
(assert.truthy):
|
||
* wasm/js-api/test_memory.js:
|
||
(binaryShouldNotParse):
|
||
(test):
|
||
(test.testMemImportError):
|
||
(assert.truthy):
|
||
(assert): Deleted.
|
||
|
||
2016-12-14 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DirectTailCall implementation needs to tell the shuffler what to put into the ArgumentCount explicitly
|
||
https://bugs.webkit.org/show_bug.cgi?id=165882
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/direct-tail-call-arity-mismatch-count-args.js: Added.
|
||
(foo):
|
||
(bar):
|
||
|
||
2016-12-14 Keith Miller <keith_miller@apple.com>
|
||
|
||
WebAssembly JS API: implement Global
|
||
https://bugs.webkit.org/show_bug.cgi?id=164133
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/Builder.js:
|
||
(export.default.Builder.prototype._registerSectionBuilders.switch.case.string_appeared_here.this.section):
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.valueType.WASM.description.type.i32.type.const.putGlobalType):
|
||
(const.putOp):
|
||
(const.putInitExpr):
|
||
(const.emitters.Import):
|
||
(const.emitters.Global):
|
||
(const.emitters.Export):
|
||
(const.emitters.Code):
|
||
* wasm/LowLevelBinary.js:
|
||
(export.default.LowLevelBinary.prototype.varuint32):
|
||
(export.default.LowLevelBinary.prototype.varint32):
|
||
* wasm/js-api/global-error.js: Added.
|
||
(catch):
|
||
(assert.truthy):
|
||
* wasm/js-api/global-external-init-from-import.js: Added.
|
||
* wasm/js-api/global-internal-init-from-import.js: Added.
|
||
* wasm/js-api/global-mutate.js: Added.
|
||
(createInternalGlobalModule):
|
||
* wasm/js-api/globals-export.js: Added.
|
||
* wasm/js-api/globals-import.js: Added.
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-13 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: implement the elements section
|
||
https://bugs.webkit.org/show_bug.cgi?id=165715
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/Builder.js:
|
||
(export.default.Builder.prototype._registerSectionBuilders.switch.case.string_appeared_here.this.section):
|
||
(export.default.Builder.prototype._registerSectionBuilders.switch):
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.emitters.Element):
|
||
* wasm/function-tests/basic-element.js: Added.
|
||
* wasm/js-api/element.js: Added.
|
||
(assertBadBinary):
|
||
(assertBadBinary.badInstantiation):
|
||
|
||
2016-12-13 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly: implement the table section and table import
|
||
https://bugs.webkit.org/show_bug.cgi?id=165716
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/Builder.js:
|
||
(const._importMemoryContinuation):
|
||
(const._importTableContinuation):
|
||
(export.default.Builder.prototype._registerSectionBuilders.switch.case.string_appeared_here.this.section):
|
||
(const._importMemoryContinuation.section): Deleted.
|
||
(const): Deleted.
|
||
(const._importMemoryContinuation.assert): Deleted.
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.putResizableLimits):
|
||
(const.putTable):
|
||
(const.emitters.Import):
|
||
(const.emitters.Table):
|
||
* wasm/function-tests/call-indirect-params.js:
|
||
* wasm/function-tests/call-indirect.js:
|
||
* wasm/function-tests/table-basic-2.js: Added.
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.makeInstance):
|
||
(func):
|
||
* wasm/function-tests/table-basic.js: Added.
|
||
(import.Builder.from.string_appeared_here.import.as.assert.from.string_appeared_here.makeInstance):
|
||
* wasm/js-api/call-indirect-results.js:
|
||
(const.wasmModuleWhichImportJS): Deleted.
|
||
(MonomorphicImport): Deleted.
|
||
* wasm/js-api/call-indirect.js:
|
||
(const.wasmModuleWhichImportJS):
|
||
(const.makeTable):
|
||
(Polyphic2Import):
|
||
(VirtualImport):
|
||
(MonomorphicImport): Deleted.
|
||
* wasm/js-api/table.js: Added.
|
||
(assertBadBinary):
|
||
(assert.truthy):
|
||
(assertBadTable):
|
||
(assertBadTableImport):
|
||
(assertBadBinary.assertBadTableInstance):
|
||
(assertBadTableInstance):
|
||
(new.WebAssembly.Table):
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
|
||
2016-12-13 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r209725.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165811
|
||
|
||
"Broke ARMv7 builds" (Requested by msaboff on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"REGRESSION(r209653): speedometer crashes making virtual slow
|
||
path tailcalls"
|
||
https://bugs.webkit.org/show_bug.cgi?id=165748
|
||
http://trac.webkit.org/changeset/209725
|
||
|
||
2016-12-12 Michael Saboff <msaboff@apple.com>
|
||
|
||
REGRESSION(r209653): speedometer crashes making virtual slow path tailcalls
|
||
https://bugs.webkit.org/show_bug.cgi?id=165748
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
New regression test.
|
||
|
||
* stress/regress-165748.js: Added.
|
||
(sum1):
|
||
(sum2):
|
||
(sum3):
|
||
(sum4):
|
||
(sum5):
|
||
(sum6):
|
||
(tailCaller):
|
||
(test):
|
||
|
||
2016-12-12 Mark Lam <mark.lam@apple.com>
|
||
|
||
Debug JSC test timeout: stress/string-prototype-replace-should-throw-out-of-memory-error-when-using-too-much-memory.js.ftl-no-cjit.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164630
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Speculative fix for timeout issue. It looks like this test just runs a bit
|
||
slower on debug builds. So, we'll give it a little more time to run.
|
||
|
||
* stress/string-prototype-replace-should-throw-out-of-memory-error-when-using-too-much-memory.js:
|
||
|
||
2016-12-11 Saam Barati <sbarati@apple.com>
|
||
|
||
We should be able to throw exceptions from Wasm code and when Wasm frames are on the stack
|
||
https://bugs.webkit.org/show_bug.cgi?id=165429
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/function-tests/trap-load.js: Added.
|
||
(assert):
|
||
(wasmFrameCountFromError):
|
||
(i.catch):
|
||
(assert.continuation):
|
||
* wasm/function-tests/trap-store.js: Added.
|
||
(import.Builder.from.string_appeared_here.assert):
|
||
(i.catch):
|
||
(assert.continuation):
|
||
(assert):
|
||
* wasm/js-api/test_memory_constructor.js:
|
||
(assert):
|
||
|
||
2016-12-10 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r209653, r209654, r209663, and
|
||
r209673.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165739
|
||
|
||
speedometer crashes (Requested by pizlo on #webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"JSVALUE64: Pass arguments in platform argument registers when
|
||
making JavaScript calls"
|
||
https://bugs.webkit.org/show_bug.cgi?id=160355
|
||
http://trac.webkit.org/changeset/209653
|
||
|
||
"Unreviewed build fix for 32 bit builds."
|
||
http://trac.webkit.org/changeset/209654
|
||
|
||
"Unreviewed build fix for the CLOOP after r209653"
|
||
http://trac.webkit.org/changeset/209663
|
||
|
||
"REGRESSION(r209653) Crash in CallFrameShuffler::snapshot()"
|
||
https://bugs.webkit.org/show_bug.cgi?id=165728
|
||
http://trac.webkit.org/changeset/209673
|
||
|
||
2016-12-10 Michael Saboff <msaboff@apple.com>
|
||
|
||
REGRESSION(r209653) Crash in CallFrameShuffler::snapshot()
|
||
https://bugs.webkit.org/show_bug.cgi?id=165728
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
New regression test.
|
||
|
||
* stress/regress-165728.js: Added.
|
||
(sum1):
|
||
(sum2):
|
||
(tailCaller):
|
||
(test):
|
||
|
||
2016-12-10 Keith Miller <keith_miller@apple.com>
|
||
|
||
Fix indirect_call if the result type is used.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165727
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* wasm/js-api/call-indirect-results.js: Added.
|
||
(const.wasmModuleWhichImportJS):
|
||
(MonomorphicImport):
|
||
|
||
2016-12-10 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Module namespace object behaves like immutable prototype exotic object
|
||
https://bugs.webkit.org/show_bug.cgi?id=165598
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* modules/namespace-prototype-assignment.js: Added.
|
||
(else):
|
||
(reportError):
|
||
(shouldEqual):
|
||
(shouldThrow):
|
||
(stringify):
|
||
(makeTestID):
|
||
(doInternalSetPrototypeOf):
|
||
(ordinarySetPrototypeOf):
|
||
(setImmutablePrototype):
|
||
(windowProxySetPrototypeOf):
|
||
(initSetterExpectation):
|
||
(throwIfNoExceptionPending):
|
||
(objectSetPrototypeOf):
|
||
(setUnderscoreProto):
|
||
(reflectSetPrototypeOf):
|
||
(setPrototypeOf):
|
||
(newObjectProto.toString):
|
||
(Symbol):
|
||
(test):
|
||
(runTests):
|
||
* modules/namespace-set-prototype-of.js: Added.
|
||
(shouldThrow):
|
||
(TypeError.Cannot.set prototype):
|
||
|
||
2016-12-09 Michael Saboff <msaboff@apple.com>
|
||
|
||
JSVALUE64: Pass arguments in platform argument registers when making JavaScript calls
|
||
https://bugs.webkit.org/show_bug.cgi?id=160355
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
New microbenchmarks to measure call type performance.
|
||
|
||
* microbenchmarks/calling-computed-args.js: Added.
|
||
* microbenchmarks/calling-many-callees.js: Added.
|
||
* microbenchmarks/calling-one-callee-fixed.js: Added.
|
||
* microbenchmarks/calling-one-callee.js: Added.
|
||
* microbenchmarks/calling-poly-callees.js: Added.
|
||
* microbenchmarks/calling-poly-extra-arity-callees.js: Added.
|
||
* microbenchmarks/calling-tailcall.js: Added.
|
||
* microbenchmarks/calling-virtual-arity-fixup-callees.js: Added.
|
||
* microbenchmarks/calling-virtual-arity-fixup-stackargs.js: Added.
|
||
* microbenchmarks/calling-virtual-callees.js: Added.
|
||
* microbenchmarks/calling-virtual-extra-arity-callees.js: Added.
|
||
|
||
2016-12-09 Keith Miller <keith_miller@apple.com>
|
||
|
||
Wasm should support call_indirect
|
||
https://bugs.webkit.org/show_bug.cgi?id=165718
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* wasm/Builder.js:
|
||
* wasm/function-tests/call-indirect-params.js: Added.
|
||
* wasm/function-tests/call-indirect.js: Added.
|
||
* wasm/js-api/call-indirect.js: Added.
|
||
(const.wasmModuleWhichImportJS):
|
||
(MonomorphicImport):
|
||
(Polyphic2Import):
|
||
(VirtualImport):
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-09 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: implement data section
|
||
https://bugs.webkit.org/show_bug.cgi?id=165696
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
As specified in https://github.com/WebAssembly/design/blob/master/BinaryEncoding.md#data-section
|
||
Note that some of the interesting corner cases are ill-defined by the spec: https://github.com/WebAssembly/design/issues/897
|
||
|
||
* wasm/Builder.js: create a data section from JavaScript
|
||
* wasm/Builder_WebAssemblyBinary.js: assemble the data section into the proper binary encoding
|
||
(const.emitters.Data):
|
||
* wasm/js-api/test_Data.js: Added.
|
||
(DataSection):
|
||
(DataSectionOffTheEnd):
|
||
(DataSectionPartlyOffTheEnd):
|
||
(DataSectionEmptyOffTheEnd):
|
||
(DataSectionSeenByStart):
|
||
* wasm/self-test/test_BuilderJSON.js: make sure the JSON structure is fine (this sanity checks before going to binary)
|
||
|
||
2016-12-09 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: implement start function
|
||
https://bugs.webkit.org/show_bug.cgi?id=165150
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/Builder.js: allow building a .Start()
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
* wasm/js-api/test_Start.js: Added.
|
||
(const.emitters.Start): serialize a start section
|
||
* wasm/self-test/test_BuilderJSON.js: validate the start section's content
|
||
|
||
2016-12-09 Saam Barati <sbarati@apple.com>
|
||
|
||
WebAssembly JS API: implement importing and defining Memory
|
||
https://bugs.webkit.org/show_bug.cgi?id=164134
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/Builder.js:
|
||
(const._importMemoryContinuation.section):
|
||
(const._importMemoryContinuation.assert):
|
||
(const._importMemoryContinuation):
|
||
(const._exportFunctionContinuation.const): Deleted.
|
||
(const._exportFunctionContinuation): Deleted.
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.emitters.Import):
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch):
|
||
* wasm/js-api/test_memory.js: Added.
|
||
(assert):
|
||
(binaryShouldNotParse):
|
||
(test):
|
||
(test.testMemImportError):
|
||
* wasm/js-api/test_memory_constructor.js: Added.
|
||
(assert):
|
||
(throw.new.Error):
|
||
(testInvalidSize):
|
||
(assert.testInvalidInitial):
|
||
(testInvalidInitial.testInvalidMaximum):
|
||
(testInvalidInitial):
|
||
(testInvalidMaximum):
|
||
* wasm/self-test/test_BuilderJSON.js:
|
||
|
||
2016-12-08 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: JSC::link* shouldn't need a CodeBlock
|
||
https://bugs.webkit.org/show_bug.cgi?id=165591
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
test that wasm -> JS works, including the IC
|
||
|
||
* wasm/js-api/test_Instance.js:
|
||
(const.wasmModuleWhichImportJS):
|
||
(MonomorphicImport):
|
||
(Polyphic2Import):
|
||
(Polyphic3Import):
|
||
(VirtualImport):
|
||
|
||
2016-12-08 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Green the cloop bot by raising this threshold.
|
||
|
||
* mozilla/js1_5/Array/regress-101964.js:
|
||
|
||
2016-12-08 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: wire up Instance imports
|
||
https://bugs.webkit.org/show_bug.cgi?id=165118
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/js-api/test_Instance.js: add the test, disabled for now
|
||
|
||
2016-12-07 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add more missing trivial wasm ops.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165564
|
||
|
||
Add tests for drop and tee_local.
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* wasm/function-tests/drop.js: Added.
|
||
* wasm/function-tests/nop.js: Added.
|
||
* wasm/function-tests/tee-local.js: Added.
|
||
|
||
2016-12-06 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add support for truncation operators
|
||
https://bugs.webkit.org/show_bug.cgi?id=165519
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* wasm/function-tests/i32-trunc-s-f32.js: Added.
|
||
* wasm/function-tests/i32-trunc-s-f64.js: Added.
|
||
* wasm/function-tests/i32-trunc-u-f32.js: Added.
|
||
* wasm/function-tests/i32-trunc-u-f64.js: Added.
|
||
* wasm/function-tests/i64-trunc-s-f32.js: Added.
|
||
* wasm/function-tests/i64-trunc-s-f64.js: Added.
|
||
* wasm/function-tests/i64-trunc-u-f32.js: Added.
|
||
* wasm/function-tests/i64-trunc-u-f64.js: Added.
|
||
|
||
2016-12-06 Mark Lam <mark.lam@apple.com>
|
||
|
||
Introduce the concept of Immutable Prototype Exotic Objects to comply with the spec.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165227
|
||
<rdar://problem/29442665>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/get-from-scope-dynamic-onto-proxy.js:
|
||
- Updated error message.
|
||
|
||
* stress/proxy-dont-infinite-loop.js: Removed.
|
||
* stress/proxy-json-path.js: Removed.
|
||
* stress/rest-parameter-allocation-elimination-watchpoints-6.js: Removed.
|
||
- Removed these tests because the issue they are testing relies on being able to
|
||
set Object.prototype.__proto__ to something else (which is now not possible).
|
||
|
||
2016-12-05 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] report unexpected token when "async" is followed by identifier
|
||
https://bugs.webkit.org/show_bug.cgi?id=165091
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/bug-165091.js:
|
||
|
||
2016-12-05 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add Wasm i64 to i32 conversion.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165378
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
It turns out the wrap operation is just B3's Trunc.
|
||
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-04 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add support for Wasm ctz and popcnt
|
||
https://bugs.webkit.org/show_bug.cgi?id=165369
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/function-tests/ctz.js: Added.
|
||
* wasm/function-tests/popcnt.js: Added.
|
||
|
||
2016-12-03 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: update binary format to 0xD version
|
||
https://bugs.webkit.org/show_bug.cgi?id=165345
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
As described in the following PR: https://github.com/WebAssembly/design/pull/836
|
||
Originally committed in r209175, reverted in r209242, and fixed in r209284.
|
||
|
||
* wasm/Builder.js:
|
||
(const._normalizeFunctionSignature):
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.emitters.Type):
|
||
(const.emitters.Code):
|
||
* wasm/LowLevelBinary.js:
|
||
(export.default.LowLevelBinary.prototype.block_type):
|
||
(export.default.LowLevelBinary.prototype.inline_signature_type): Deleted.
|
||
* wasm/WASM.js:
|
||
* wasm/js-api/test_basic_api.js:
|
||
* wasm/self-test/test_BuilderWebAssembly.js:
|
||
(EmptyModule):
|
||
(CustomSection):
|
||
* wasm/self-test/test_WASM.js:
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-02 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add Wasm copysign
|
||
https://bugs.webkit.org/show_bug.cgi?id=165355
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* wasm/function-tests/copysign.js: Added.
|
||
|
||
2016-12-03 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r209298.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165359
|
||
|
||
broke the build (Requested by smfr on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"Add Wasm copysign"
|
||
https://bugs.webkit.org/show_bug.cgi?id=165355
|
||
http://trac.webkit.org/changeset/209298
|
||
|
||
2016-12-02 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add Wasm copysign
|
||
https://bugs.webkit.org/show_bug.cgi?id=165355
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* wasm/function-tests/copysign.js: Added.
|
||
|
||
2016-12-02 Keith Miller <keith_miller@apple.com>
|
||
|
||
Unreviewed, fix git having a breakdown over trying to reland a rollout.
|
||
|
||
2016-12-02 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add Wasm floating point nearest and trunc
|
||
https://bugs.webkit.org/show_bug.cgi?id=165339
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/function-tests/nearest.js: Added.
|
||
* wasm/function-tests/trunc.js: Added.
|
||
|
||
2016-12-02 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] add additional bit to JSTokenType bitfield
|
||
https://bugs.webkit.org/show_bug.cgi?id=165091
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/bug-165091.js: Added.
|
||
(shouldThrowSyntaxError):
|
||
|
||
2016-12-02 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r209275 and r209276.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165348
|
||
|
||
"broke the arm build" (Requested by keith_miller on #webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"Add Wasm floating point nearest and trunc"
|
||
https://bugs.webkit.org/show_bug.cgi?id=165339
|
||
http://trac.webkit.org/changeset/209275
|
||
|
||
"Unreviewed, forgot to change instruction after renaming."
|
||
http://trac.webkit.org/changeset/209276
|
||
|
||
2016-12-02 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add Wasm floating point nearest and trunc
|
||
https://bugs.webkit.org/show_bug.cgi?id=165339
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* wasm/function-tests/nearest.js: Added.
|
||
* wasm/function-tests/trunc.js: Added.
|
||
|
||
2016-12-02 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: revert patch causing odd breakage
|
||
https://bugs.webkit.org/show_bug.cgi?id=165308
|
||
|
||
Unreviewed.
|
||
|
||
Bug #164724 seems to cause build issues which I haven't tracked down yet. WasmOps.h can't be found:
|
||
./Source/JavaScriptCore/wasm/WasmFormat.h:34:10: fatal error: 'WasmOps.h' file not found
|
||
|
||
It's weird since the file is auto-generated and has been for a while. #164724 merely includes it in WasmFormat.h.
|
||
|
||
* wasm/Builder.js:
|
||
(const._normalizeFunctionSignature):
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.emitters.Type):
|
||
(const.emitters.Code):
|
||
* wasm/LowLevelBinary.js:
|
||
(export.default.LowLevelBinary.prototype.inline_signature_type):
|
||
(export.default.LowLevelBinary.prototype.block_type): Deleted.
|
||
* wasm/WASM.js:
|
||
* wasm/js-api/test_basic_api.js:
|
||
* wasm/self-test/test_BuilderWebAssembly.js:
|
||
(EmptyModule):
|
||
(CustomSection):
|
||
* wasm/self-test/test_WASM.js:
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-01 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip flaky test ChakraCore/test/fieldopts/objtypespec-newobj-invalidation.1.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=162567
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* ChakraCore.yaml:
|
||
|
||
2016-12-01 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add wasm int to floating point opcodes
|
||
https://bugs.webkit.org/show_bug.cgi?id=165252
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
Add tests for Wasm integral to floating point conversion opcodes.
|
||
|
||
* wasm/function-tests/int-to-floating-point.js: Added.
|
||
* wasm/wasm.json:
|
||
|
||
2016-12-01 Geoffrey Garen <ggaren@apple.com>
|
||
|
||
Land a test case for <rdar://problem/27889416>
|
||
https://bugs.webkit.org/show_bug.cgi?id=165272
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/marked-argument-buffer.js: Added.
|
||
(allocate):
|
||
(test.o.toString):
|
||
(test):
|
||
|
||
2016-11-29 Per Arne Vollan <pvollan@apple.com>
|
||
|
||
[Win] Skip failing JSC tests.
|
||
https://bugs.webkit.org/show_bug.cgi?id=165140
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* ChakraCore.yaml:
|
||
* microbenchmarks/tan.js:
|
||
|
||
2016-11-30 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly builder: don't throw when checker not implemented
|
||
https://bugs.webkit.org/show_bug.cgi?id=165219
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
We should perform whichever checks we've implemented, and assume the rest are OK until bug #163421 is fixed.
|
||
|
||
* wasm/Builder.js:
|
||
* wasm/README.md:
|
||
* wasm/function-tests/add-12.js:
|
||
* wasm/function-tests/br-if-loop-less-than.js:
|
||
* wasm/function-tests/brTableAsIf.js:
|
||
* wasm/function-tests/brTableManyValues.js:
|
||
* wasm/function-tests/brTableWithLoop.js:
|
||
* wasm/function-tests/dumb-eq-if-then-else.js:
|
||
* wasm/function-tests/dumb-less-than-fallthrough.js:
|
||
* wasm/function-tests/dumb-less-than-ite.js:
|
||
* wasm/function-tests/eqz.js:
|
||
* wasm/function-tests/factorial.js:
|
||
* wasm/function-tests/float-sub.js:
|
||
* wasm/function-tests/i32-load.js:
|
||
* wasm/function-tests/i32-load8-s.js:
|
||
* wasm/function-tests/if-then-else-fallthrough.js:
|
||
* wasm/function-tests/if-then-fallthrough.js:
|
||
* wasm/function-tests/loop-mult.js:
|
||
* wasm/function-tests/loop-sum.js:
|
||
* wasm/function-tests/max.js:
|
||
* wasm/function-tests/min.js:
|
||
* wasm/function-tests/ret5.js:
|
||
* wasm/function-tests/select.js:
|
||
* wasm/self-test/test_BuilderJSON.js:
|
||
|
||
2016-11-29 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: improve Instance
|
||
https://bugs.webkit.org/show_bug.cgi?id=164757
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
An Instance's `exports` property wasn't populated with exports.
|
||
|
||
A follow-up patch will do imports.
|
||
|
||
A few things of note:
|
||
|
||
- LowLevelBinary: support 3-byte integers.
|
||
- LowLevelBinary: support proper UTF-8 2003 code points (instead of UTF-16).
|
||
|
||
* wasm/Builder.js:
|
||
* wasm/Builder_WebAssemblyBinary.js: wire up exports, stub other things out some more
|
||
(const.emitters.Export):
|
||
* wasm/LowLevelBinary.js:
|
||
(export.default.LowLevelBinary.prototype.uint24): add, used for UTF-8
|
||
(export.default.LowLevelBinary.prototype.string): support UTF-8
|
||
(export.default.LowLevelBinary.prototype.getUint24): add, used for UTF-8
|
||
(export.default.LowLevelBinary.prototype.getVaruint1): was missing
|
||
(export.default.LowLevelBinary.prototype.getString): support UTF-8
|
||
(export.default.LowLevelBinary):
|
||
* wasm/js-api/test_Instance.js: instance.exports.answer() // <-- this is where the magic of this entire patch is
|
||
(ExportedAnswerI32):
|
||
* wasm/js-api/test_basic_api.js: punt test to later
|
||
(const.c.in.constructorProperties.switch):
|
||
* wasm/self-test/test_BuilderWebAssembly.js: UTF-8
|
||
(CustomSection):
|
||
* wasm/self-test/test_LowLevelBinary_string.js: UTF-8 now works
|
||
* wasm/self-test/test_LowLevelBinary_uint16.js: was missing one value
|
||
* wasm/self-test/test_LowLevelBinary_uint24.js: Copied from JSTests/wasm/self-test/test_LowLevelBinary_uint8.js.
|
||
* wasm/self-test/test_LowLevelBinary_uint8.js: was missing one value
|
||
* wasm/self-test/test_LowLevelBinary_varuint1.js: Added.
|
||
* wasm/utilities.js: this `dump` thing was useful
|
||
(const._dump):
|
||
|
||
2016-11-29 Saam Barati <sbarati@apple.com>
|
||
|
||
We should be able optimize the pattern where we spread a function's rest parameter to another call
|
||
https://bugs.webkit.org/show_bug.cgi?id=163865
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/default-derived-constructor.js: Added.
|
||
(createClassHierarchy.let.currentClass):
|
||
(createClassHierarchy):
|
||
* stress/call-varargs-spread.js: Added.
|
||
(assert):
|
||
(bar):
|
||
(foo):
|
||
* stress/load-varargs-on-new-array-with-spread-convert-to-static-loads.js: Added.
|
||
(assert):
|
||
(baz):
|
||
(bar):
|
||
(foo):
|
||
* stress/new-array-with-spread-with-normal-spread-and-phantom-spread.js: Added.
|
||
(assert):
|
||
(foo):
|
||
(escape):
|
||
(bar):
|
||
* stress/phantom-new-array-with-spread-osr-exit.js: Added.
|
||
(assert):
|
||
(baz):
|
||
(bar):
|
||
(effects):
|
||
(foo):
|
||
* stress/phantom-spread-forward-varargs.js: Added.
|
||
(assert):
|
||
(test1.bar):
|
||
(test1.foo):
|
||
(test1):
|
||
(test2.bar):
|
||
(test2.foo):
|
||
(test3.baz):
|
||
(test3.bar):
|
||
(test3.foo):
|
||
(test4.baz):
|
||
(test4.bar):
|
||
(test4.foo):
|
||
(test5.baz):
|
||
(test5.bar):
|
||
(test5.foo):
|
||
* stress/phantom-spread-osr-exit.js: Added.
|
||
(assert):
|
||
(baz):
|
||
(bar):
|
||
(effects):
|
||
(foo):
|
||
* stress/spread-call-convert-to-static-call.js: Added.
|
||
(assert):
|
||
(baz):
|
||
(bar):
|
||
(foo):
|
||
* stress/spread-forward-call-varargs-stack-overflow.js: Added.
|
||
(assert):
|
||
(identity):
|
||
(bar):
|
||
(foo):
|
||
* stress/spread-forward-varargs-rest-parameter-change-iterator-protocol-2.js: Added.
|
||
(assert):
|
||
(baz.Array.prototype.Symbol.iterator):
|
||
(baz):
|
||
(bar):
|
||
(foo):
|
||
(test):
|
||
* stress/spread-forward-varargs-rest-parameter-change-iterator-protocol.js: Added.
|
||
(assert):
|
||
(baz.Array.prototype.Symbol.iterator):
|
||
(baz):
|
||
(bar):
|
||
(foo):
|
||
* stress/spread-forward-varargs-stack-overflow.js: Added.
|
||
(assert):
|
||
(bar):
|
||
(foo):
|
||
|
||
2016-11-29 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] always wrap AwaitExpression operand in a new Promise
|
||
https://bugs.webkit.org/show_bug.cgi?id=165181
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/async-await-basic.js:
|
||
(async.awaitedPromisesAreWrapped):
|
||
|
||
2016-11-29 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add simple way to implement Wasm ops that require more than one B3 opcode
|
||
https://bugs.webkit.org/show_bug.cgi?id=165129
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* wasm/function-tests/eqz.js: Added.
|
||
* wasm/function-tests/max.js: Added.
|
||
* wasm/function-tests/min.js: Added.
|
||
* wasm/wasm.json:
|
||
|
||
2016-11-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Crash in com.apple.JavaScriptCore: WTF::ThreadSpecific<WTF::WTFThreadData, + 142
|
||
https://bugs.webkit.org/show_bug.cgi?id=164898
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/tagged-template-registry-key-collect.js: Added.
|
||
(shouldBe):
|
||
(tag):
|
||
(i.eval):
|
||
* stress/tagged-template-registry-key.js: Added.
|
||
(shouldBe):
|
||
(tag):
|
||
(a):
|
||
(b):
|
||
|
||
2016-11-20 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] speed up parsing of async functions
|
||
https://bugs.webkit.org/show_bug.cgi?id=164808
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
Add tests for line terminator following "async" keyword in async
|
||
function syntax.
|
||
|
||
* stress/async-await-syntax.js:
|
||
(shouldBe):
|
||
|
||
2016-11-19 Mark Lam <mark.lam@apple.com>
|
||
|
||
op_mod-* JSC tests needs a longer timeout too.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164994
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/op_mod-ConstVar.js:
|
||
* stress/op_mod-VarConst.js:
|
||
* stress/op_mod-VarVar.js:
|
||
|
||
2016-11-19 Mark Lam <mark.lam@apple.com>
|
||
|
||
Add --timeoutMultiplier option to allow some tests more time to run.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164951
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
Extended the timeout for these tests by 50% more because they run quite slow on
|
||
low-end machines.
|
||
|
||
* stress/op_div-ConstVar.js:
|
||
* stress/op_div-VarConst.js:
|
||
* stress/op_div-VarVar.js:
|
||
|
||
2016-11-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
REGRESSION(r208867): JSC test failure: ChakraCore.yaml/ChakraCore/test/strict/05.arguments_sm.js.default
|
||
https://bugs.webkit.org/show_bug.cgi?id=164929
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
ES2017 drops arguments.caller and JavaScriptCore is updated to meet the spec.
|
||
This patch rebaselines the result of ChakraCore test for JSC.
|
||
|
||
* ChakraCore/test/strict/05.arguments_sm.baseline-jsc:
|
||
|
||
2016-11-18 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Web Inspector: Generator functions should have a displayable name when shown in stack traces
|
||
https://bugs.webkit.org/show_bug.cgi?id=164844
|
||
<rdar://problem/29300697>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/generator-function-name.js:
|
||
Add another test now that we name the inner generator function
|
||
that we do not break the lexical resolution of names.
|
||
|
||
2016-11-17 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Drop arguments.caller
|
||
https://bugs.webkit.org/show_bug.cgi?id=164859
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/strict-mode-arguments-caller.js: Added.
|
||
(strictArguments):
|
||
(shouldBe):
|
||
|
||
2016-11-17 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add rotate to Wasm
|
||
https://bugs.webkit.org/show_bug.cgi?id=164871
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* wasm/wasm.json:
|
||
|
||
2016-11-17 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add sqrt to Wasm
|
||
https://bugs.webkit.org/show_bug.cgi?id=164877
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
B3 already has a Sqrt opcode we just need to map Wasm to it.
|
||
|
||
* wasm/wasm.json:
|
||
|
||
2016-11-17 Saam Barati <sbarati@apple.com>
|
||
|
||
Remove async/await compile time flag and enable tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=164828
|
||
<rdar://problem/28639334>
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/async-arrow-functions-lexical-arguments-binding.js:
|
||
* stress/async-arrow-functions-lexical-new.target-binding.js:
|
||
* stress/async-arrow-functions-lexical-super-binding.js:
|
||
* stress/async-arrow-functions-lexical-this-binding.js:
|
||
* stress/async-await-basic.js:
|
||
* stress/async-await-long-loop.js:
|
||
* stress/async-await-module-reserved-word.js:
|
||
* stress/async-await-mozilla.js:
|
||
(mozSyntaxErrors):
|
||
* stress/async-await-reserved-word.js:
|
||
* stress/async-await-syntax.js:
|
||
* stress/async-await-throw-loop.js:
|
||
* stress/async-function-create-nobaseline.js:
|
||
* stress/async-function-create-optimized.js:
|
||
* stress/async-function-declaration-sinking-no-double-allocate.js:
|
||
* stress/async-function-declaration-sinking-osrexit.js:
|
||
* stress/async-function-declaration-sinking-put.js:
|
||
* stress/async-function-expression-sinking-no-double-allocate.js:
|
||
* stress/async-function-expression-sinking-osrexit.js:
|
||
* stress/async-function-expression-sinking-put.js:
|
||
* test262.yaml:
|
||
|
||
2016-11-15 Mark Lam <mark.lam@apple.com>
|
||
|
||
Make JSC test functions more robust.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164807
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/jsc-test-functions-should-be-more-robust.js: Added.
|
||
|
||
2016-11-15 Keith Miller <keith_miller@apple.com>
|
||
|
||
B3 should support UDiv/UMod
|
||
https://bugs.webkit.org/show_bug.cgi?id=164811
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
Link new instructions to wasm.
|
||
|
||
* wasm/wasm.json:
|
||
|
||
2016-11-15 Saam Barati <sbarati@apple.com>
|
||
|
||
Debug JSC test timeout: stress/has-own-property-name-cache-symbols-and-strings.js.ftl-no-cjit-small-pool
|
||
https://bugs.webkit.org/show_bug.cgi?id=163012
|
||
|
||
Unreviewed. This patch makes a test run for less time because it's timing out on the bots.
|
||
|
||
* stress/has-own-property-name-cache-symbols-and-strings.js:
|
||
|
||
2016-11-15 Mark Lam <mark.lam@apple.com>
|
||
|
||
The jsc shell's setImpureGetterDelegate() should ensure that the set value is an ImpureGetter.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164781
|
||
<rdar://problem/28418590>
|
||
|
||
Reviewed by Geoffrey Garen and Michael Saboff.
|
||
|
||
* stress/jsc-setImpureGetterDelegate-on-bad-type.js: Added.
|
||
|
||
2016-11-15 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DOMJIT] Allow using macro assembler scratches in FTL CheckDOM
|
||
https://bugs.webkit.org/show_bug.cgi?id=164727
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/check-dom-with-signature.js: Added.
|
||
(shouldBe):
|
||
(calling):
|
||
(i.array.forEach):
|
||
|
||
2016-11-14 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] do not reference AwaitExpression Promises in async function Promise chain
|
||
https://bugs.webkit.org/show_bug.cgi?id=164753
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* asyncFunctionTests.yaml:
|
||
* stress/async-await-long-loop.js: Added.
|
||
(shouldBe):
|
||
(async.longLoop):
|
||
* stress/async-await-throw-loop.js: Added.
|
||
(shouldBe):
|
||
(async.thrower):
|
||
(async.throwLoop):
|
||
|
||
2016-11-14 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add Wasm select
|
||
https://bugs.webkit.org/show_bug.cgi?id=164743
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* wasm/function-tests/select.js: Added.
|
||
|
||
2016-11-14 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] Handle new_async_func / new_async_func_exp in DFG / FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=164037
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
Add tests based on tests from https://trac.webkit.org/changeset/194216.
|
||
|
||
* asyncFunctionTests.yaml:
|
||
* stress/async-function-create-nobaseline.js: Added.
|
||
* stress/async-function-create-optimized.js: Added.
|
||
* stress/async-function-declaration-sinking-no-double-allocate.js: Added.
|
||
* stress/async-function-declaration-sinking-osrexit.js: Added.
|
||
* stress/async-function-declaration-sinking-put.js: Added.
|
||
* stress/async-function-expression-sinking-no-double-allocate.js: Added.
|
||
* stress/async-function-expression-sinking-osrexit.js: Added.
|
||
* stress/async-function-expression-sinking-put.js: Added.
|
||
|
||
2016-11-14 Mark Lam <mark.lam@apple.com>
|
||
|
||
Some of JSStringView::SafeView methods are not idiomatically safe for JSString to StringView conversions.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164701
|
||
<rdar://problem/27462104>
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/string-prototype-charCodeAt-on-too-long-rope.js: Added.
|
||
|
||
2016-11-14 Mark Lam <mark.lam@apple.com>
|
||
|
||
RegExpObject::exec/match should handle errors gracefully.
|
||
https://bugs.webkit.org/show_bug.cgi?id=155145
|
||
<rdar://problem/27435934>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/regexp-prototype-exec-on-too-long-rope.js: Added.
|
||
* stress/regexp-prototype-match-on-too-long-rope.js: Added.
|
||
* stress/regexp-prototype-test-on-too-long-rope.js: Added.
|
||
|
||
2016-11-14 Mark Lam <mark.lam@apple.com>
|
||
|
||
Enhance run-jsc-stress-test script to allow optional test specific options to be added for all test run configurations.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164695
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Replace use of runMisc* test run configurations with equivalents.
|
||
|
||
* stress/licm-no-pre-header-nested.js:
|
||
* stress/licm-no-pre-header.js:
|
||
* stress/licm-pre-header-cannot-exit-nested.js:
|
||
* stress/licm-pre-header-cannot-exit.js:
|
||
* stress/make-dictionary-repatch.js:
|
||
* stress/retry-cache-later.js:
|
||
* stress/shadow-chicken-reading-from-scope-after-ftl-osr-exit-bytecode-liveness.js:
|
||
* stress/slow-path-generator-updating-current-node-dfg.js:
|
||
* stress/unshift-array-storage.js:
|
||
|
||
2016-11-11 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: DataView with explicit undefined byteLength should be the same as it not being present
|
||
https://bugs.webkit.org/show_bug.cgi?id=164453
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/dataview-construct.js: Added.
|
||
(assert):
|
||
(shouldThrow):
|
||
* test262.yaml:
|
||
|
||
2016-11-11 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: DataView get methods should allow for missing offset, set methods should allow for missing value
|
||
https://bugs.webkit.org/show_bug.cgi?id=164451
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-11-11 Saam Barati <sbarati@apple.com>
|
||
|
||
We should have a more concise way of determining when we're varargs calling a function using rest parameters
|
||
https://bugs.webkit.org/show_bug.cgi?id=164258
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* microbenchmarks/call-using-spread.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/spread-large-array.js: Added.
|
||
(foo):
|
||
(arrays.push):
|
||
* microbenchmarks/spread-small-array.js: Added.
|
||
(foo):
|
||
* stress/spread-array-iterator-watchpoint-2.js: Added.
|
||
(foo):
|
||
(arrayIterator.next):
|
||
* stress/spread-array-iterator-watchpoint.js: Added.
|
||
(foo):
|
||
(Array.prototype.Symbol.iterator):
|
||
* stress/spread-non-array.js: Added.
|
||
(assert):
|
||
(foo):
|
||
(let.customIterator.Symbol.iterator):
|
||
(bar):
|
||
|
||
2016-11-11 Keith Miller <keith_miller@apple.com>
|
||
|
||
Relocate wasm tests and actually add them to the test runner
|
||
https://bugs.webkit.org/show_bug.cgi?id=164668
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
This moves the Wasm tests from their current location down a level.
|
||
Without relocating, the tests cannot properly be run by the wasm test runner.
|
||
|
||
* wasm.yaml:
|
||
* wasm/Builder.js: Fix typos, yay lazy synatx checking!
|
||
* wasm/LowLevelBinary.js: Fix typos, yay lazy synatx checking!
|
||
(export.default.LowLevelBinary.prototype.get return):
|
||
* wasm/function-tests/add-12.js: Renamed from JSTests/wasm/js-api/function-tests/add-12.js.
|
||
* wasm/function-tests/br-if-loop-less-than.js: Renamed from JSTests/wasm/js-api/function-tests/br-if-loop-less-than.js.
|
||
* wasm/function-tests/brTableAsIf.js: Renamed from JSTests/wasm/js-api/function-tests/brTableAsIf.js.
|
||
* wasm/function-tests/brTableManyValues.js: Renamed from JSTests/wasm/js-api/function-tests/brTableManyValues.js.
|
||
* wasm/function-tests/brTableWithLoop.js: Renamed from JSTests/wasm/js-api/function-tests/brTableWithLoop.js.
|
||
* wasm/function-tests/dumb-eq-if-then-else.js: Renamed from JSTests/wasm/js-api/function-tests/dumb-eq-if-then-else.js.
|
||
* wasm/function-tests/dumb-less-than-fallthrough.js: Renamed from JSTests/wasm/js-api/function-tests/dumb-less-than-fallthrough.js.
|
||
* wasm/function-tests/dumb-less-than-ite.js: Renamed from JSTests/wasm/js-api/function-tests/dumb-less-than-ite.js.
|
||
* wasm/function-tests/factorial.js: Renamed from JSTests/wasm/js-api/function-tests/factorial.js.
|
||
* wasm/function-tests/float-sub.js: Renamed from JSTests/wasm/js-api/function-tests/float-sub.js.
|
||
* wasm/function-tests/i32-load.js: Renamed from JSTests/wasm/js-api/function-tests/i32-load.js.
|
||
* wasm/function-tests/i32-load8-s.js: Renamed from JSTests/wasm/js-api/function-tests/i32-load8-s.js.
|
||
* wasm/function-tests/if-then-else-fallthrough.js: Renamed from JSTests/wasm/js-api/function-tests/if-then-else-fallthrough.js.
|
||
* wasm/function-tests/if-then-fallthrough.js: Renamed from JSTests/wasm/js-api/function-tests/if-then-fallthrough.js.
|
||
* wasm/function-tests/loop-mult.js: Renamed from JSTests/wasm/js-api/function-tests/loop-mult.js.
|
||
* wasm/function-tests/loop-sum.js: Renamed from JSTests/wasm/js-api/function-tests/loop-sum.js.
|
||
* wasm/function-tests/ret5.js: Renamed from JSTests/wasm/js-api/function-tests/ret5.js.
|
||
* wasm/self-test/test_BuilderJSON.js: Rebasline
|
||
|
||
2016-11-11 Keith Miller <keith_miller@apple.com>
|
||
|
||
Move Wasm tests to JS
|
||
https://bugs.webkit.org/show_bug.cgi?id=164611
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
This patch translates most of the tests from testWasm.cpp to the JS testing api. Most of the
|
||
ommited tests were earliest tests, which tested trivial things, like adding two
|
||
constants. Some tests are ommited for other reasons, however. These are:
|
||
|
||
1) Tests using I64 since the testing api does not yet know how to handle 64-bit numbers. 2)
|
||
Tests that would validate the memory of the module once wasm was done with it since that's
|
||
not really possible in JS.
|
||
|
||
In order to make such a translation easier this patch also adds some features to the JS
|
||
testing api:
|
||
|
||
1) Blocks can now be done lexically by adding a lambda as the last argument of the block
|
||
opcode. For example one can do:
|
||
...
|
||
.Block("i32", b => b.I32Const(1) )
|
||
|
||
and the nested lambda will automatically have an end attached.
|
||
|
||
2) The JS testing api can now handle inline signature types.
|
||
|
||
3) Relocate some code to make it easier to follow and prevent 44 space indentation.
|
||
|
||
4) Rename varuint/varint to varuint32/varint32, this lets them be directly called from the
|
||
wasm.json without being remapped.
|
||
|
||
5) Add support for Memory and Function sections to the Builder.
|
||
|
||
6) Add support for local variables.
|
||
|
||
On the JSC side, we needed to expose a new function to validate the compiled wasm code
|
||
behaves the way we expect. At least until the JS Wasm API is finished. The new validation
|
||
function, testWasmModuleFunctions, takes an array buffer containing the wasm binary, the
|
||
number of functions in the blob and tests for each of those functions.
|
||
|
||
* wasm/Builder.js:
|
||
(const._maybeRegisterType):
|
||
(const): Deleted.
|
||
(switch.typeof): Deleted.
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.emitters.Type):
|
||
(const.emitters.Import):
|
||
(const.emitters.Function):
|
||
(const.emitters.Memory):
|
||
(const.emitters.Code):
|
||
(export.const.Binary):
|
||
* wasm/LowLevelBinary.js:
|
||
(export.default.LowLevelBinary.prototype.get return):
|
||
(export.default.LowLevelBinary.prototype.varuint32):
|
||
(export.default.LowLevelBinary.prototype.varint32):
|
||
(export.default.LowLevelBinary.prototype.varuint1):
|
||
(export.default.LowLevelBinary.prototype.varint7):
|
||
(export.default.LowLevelBinary.prototype.varuint7):
|
||
(export.default.LowLevelBinary.prototype.inline_signature_type):
|
||
(export.default.LowLevelBinary.prototype.string):
|
||
(export.default.LowLevelBinary.prototype.getVaruint32):
|
||
(export.default.LowLevelBinary.prototype.getVarint32):
|
||
(export.default.LowLevelBinary.prototype.getVaruint7):
|
||
(export.default.LowLevelBinary.prototype.getString):
|
||
(export.default.LowLevelBinary):
|
||
(export.default.LowLevelBinary.prototype.varuint): Deleted.
|
||
(export.default.LowLevelBinary.prototype.varint): Deleted.
|
||
(export.default.LowLevelBinary.prototype.getVaruint): Deleted.
|
||
(export.default.LowLevelBinary.prototype.getVarint): Deleted.
|
||
* wasm/js-api/test_old_tests.js: Added.
|
||
(ret5):
|
||
(brTableWithLoop):
|
||
(brTableManyValues):
|
||
(run.brTableManyValues.brTableAsIf):
|
||
(ifThenFallthrough):
|
||
(ifThenElseFallthrough):
|
||
(dumbLessThanFallthrough):
|
||
(run.dumbLessThanFallthrough.floatSub):
|
||
(run.floatSub.add12):
|
||
(run.add12.factorial):
|
||
(i32load):
|
||
(run.i32load.i32load8s):
|
||
(run.i32load8s.dumbEqIfThenElse):
|
||
(run.dumbEqIfThenElse.dumbEqIfThenElse):
|
||
(run.dumbEqIfThenElse.dumbLessThanIfThenElse):
|
||
(run.dumbLessThanIfThenElse.loopSum):
|
||
(run.loopSum.loopMult):
|
||
(brIfLoopLessThan):
|
||
(run.brIfLoopLessThan.run):
|
||
* wasm/self-test/test_LowLevelBinary_varint32.js: Renamed from JSTests/wasm/self-test/test_LowLevelBinary_varint.js.
|
||
* wasm/self-test/test_LowLevelBinary_varuint32.js: Renamed from JSTests/wasm/self-test/test_LowLevelBinary_varuint.js.
|
||
|
||
* wasm/Builder.js:
|
||
(const._maybeRegisterType):
|
||
(const): Deleted.
|
||
(switch.typeof): Deleted.
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(const.emitters.Type):
|
||
(const.emitters.Import):
|
||
(const.emitters.Function):
|
||
(const.emitters.Memory):
|
||
(const.emitters.Code):
|
||
(export.const.Binary):
|
||
* wasm/LowLevelBinary.js:
|
||
(export.default.LowLevelBinary.prototype.get return):
|
||
(export.default.LowLevelBinary.prototype.varuint32):
|
||
(export.default.LowLevelBinary.prototype.varint32):
|
||
(export.default.LowLevelBinary.prototype.varuint1):
|
||
(export.default.LowLevelBinary.prototype.varint7):
|
||
(export.default.LowLevelBinary.prototype.varuint7):
|
||
(export.default.LowLevelBinary.prototype.inline_signature_type):
|
||
(export.default.LowLevelBinary.prototype.string):
|
||
(export.default.LowLevelBinary.prototype.getVaruint32):
|
||
(export.default.LowLevelBinary.prototype.getVarint32):
|
||
(export.default.LowLevelBinary.prototype.getVaruint7):
|
||
(export.default.LowLevelBinary.prototype.getString):
|
||
(export.default.LowLevelBinary):
|
||
(export.default.LowLevelBinary.prototype.varuint): Deleted.
|
||
(export.default.LowLevelBinary.prototype.varint): Deleted.
|
||
(export.default.LowLevelBinary.prototype.getVaruint): Deleted.
|
||
(export.default.LowLevelBinary.prototype.getVarint): Deleted.
|
||
* wasm/js-api/function-tests/add-12.js: Added.
|
||
* wasm/js-api/function-tests/br-if-loop-less-than.js: Added.
|
||
* wasm/js-api/function-tests/brTableAsIf.js: Added.
|
||
* wasm/js-api/function-tests/brTableManyValues.js: Added.
|
||
* wasm/js-api/function-tests/brTableWithLoop.js: Added.
|
||
* wasm/js-api/function-tests/dumb-eq-if-then-else.js: Added.
|
||
* wasm/js-api/function-tests/dumb-less-than-fallthrough.js: Added.
|
||
* wasm/js-api/function-tests/dumb-less-than-ite.js: Added.
|
||
* wasm/js-api/function-tests/factorial.js: Added.
|
||
* wasm/js-api/function-tests/float-sub.js: Added.
|
||
* wasm/js-api/function-tests/i32-load.js: Added.
|
||
* wasm/js-api/function-tests/i32-load8-s.js: Added.
|
||
* wasm/js-api/function-tests/if-then-else-fallthrough.js: Added.
|
||
* wasm/js-api/function-tests/if-then-fallthrough.js: Added.
|
||
* wasm/js-api/function-tests/loop-mult.js: Added.
|
||
* wasm/js-api/function-tests/loop-sum.js: Added.
|
||
* wasm/js-api/function-tests/ret5.js: Added.
|
||
* wasm/self-test/test_LowLevelBinary_varint32.js: Renamed from JSTests/wasm/self-test/test_LowLevelBinary_varint.js.
|
||
* wasm/self-test/test_LowLevelBinary_varuint32.js: Renamed from JSTests/wasm/self-test/test_LowLevelBinary_varuint.js.
|
||
|
||
2016-11-11 Saam Barati <sbarati@apple.com>
|
||
|
||
We recursively grab a lock in the DFGBytecodeParser causing us to deadlock
|
||
https://bugs.webkit.org/show_bug.cgi?id=164650
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/dont-dead-lock-put-by-val-as-put-by-id.js: Added.
|
||
(ident):
|
||
(let.o.set foo):
|
||
(foo):
|
||
|
||
2016-11-11 Chris Dumez <cdumez@apple.com>
|
||
|
||
Unreviewed, rolling out r208584.
|
||
|
||
Seems to have regressed Speedometer by 1% on Mac
|
||
|
||
Reverted changeset:
|
||
|
||
"We should have a more concise way of determining when we're
|
||
varargs calling a function using rest parameters"
|
||
https://bugs.webkit.org/show_bug.cgi?id=164258
|
||
http://trac.webkit.org/changeset/208584
|
||
|
||
2016-11-11 Chris Dumez <cdumez@apple.com>
|
||
|
||
Unreviewed, rolling out r208117 and r208160.
|
||
|
||
Regressed Speedometer by >1.5%
|
||
|
||
Reverted changesets:
|
||
|
||
"We should have a way of profiling when a get_by_id is pure
|
||
and to emit a PureGetById in the DFG/FTL"
|
||
https://bugs.webkit.org/show_bug.cgi?id=163305
|
||
http://trac.webkit.org/changeset/208117
|
||
|
||
"Debug JSC test microbenchmarks/pure-get-by-id-cse-2.js timing
|
||
out"
|
||
https://bugs.webkit.org/show_bug.cgi?id=164227
|
||
http://trac.webkit.org/changeset/208160
|
||
|
||
2016-11-11 Saam Barati <sbarati@apple.com>
|
||
|
||
We should have a more concise way of determining when we're varargs calling a function using rest parameters
|
||
https://bugs.webkit.org/show_bug.cgi?id=164258
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* microbenchmarks/call-using-spread.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/spread-large-array.js: Added.
|
||
(foo):
|
||
(arrays.push):
|
||
* microbenchmarks/spread-small-array.js: Added.
|
||
(foo):
|
||
* stress/spread-array-iterator-watchpoint-2.js: Added.
|
||
(foo):
|
||
(arrayIterator.next):
|
||
* stress/spread-array-iterator-watchpoint.js: Added.
|
||
(foo):
|
||
(Array.prototype.Symbol.iterator):
|
||
* stress/spread-non-array.js: Added.
|
||
(assert):
|
||
(foo):
|
||
(let.customIterator.Symbol.iterator):
|
||
(bar):
|
||
|
||
2016-11-10 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix broken have-a-bad-time-with-arguments.js test.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164626
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
But also saved a copy of the broken one as broken-have-a-bad-time-with-arguments-for-gc-testing.js
|
||
because coincidentally, it stresses the GC in ways that help reveal bugs.
|
||
|
||
* stress/broken-have-a-bad-time-with-arguments-for-gc-testing.js: Added.
|
||
(testFunction):
|
||
(warmupFunction):
|
||
(let.argsDeclIndex.in.argumentsDecls.let.indexToReturnIndex.in.indicesToReturn.let.insertElementActionIndex.in.insertElementActions.let.tierWarmupCountIndex.in.tierWarmupCounts.let.testArgsIndex.in.testArgsList.catch):
|
||
* stress/have-a-bad-time-with-arguments.js:
|
||
|
||
2016-11-10 JF Bastien <jfbastien@apple.com>
|
||
|
||
ASSERTION FAILED: length > offset encountered with wasm.yaml/wasm/js-api/test_Module.js.default-wasm
|
||
https://bugs.webkit.org/show_bug.cgi?id=164597
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Trim the array buffer before returning it: it's optimistically
|
||
over-allocated to avoid growing all the time, but when parsed it
|
||
can't have extra content.
|
||
|
||
* wasm/Builder_WebAssemblyBinary.js:
|
||
(export.const.Binary):
|
||
* wasm/LowLevelBinary.js:
|
||
(export.default.LowLevelBinary.prototype.get return):
|
||
|
||
2016-11-10 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: DataView / TypedArray methods should throw RangeErrors for negative numbers (ToIndex)
|
||
https://bugs.webkit.org/show_bug.cgi?id=164450
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/dataview-typedarray-toindex.js: Added.
|
||
Tests for all cases where ToIndex should be used.
|
||
|
||
* test262.yaml:
|
||
New passing tests.
|
||
|
||
2016-11-10 Mark Lam <mark.lam@apple.com>
|
||
|
||
Graph::methodOfGettingAValueProfileFor() should be returning the profile for the operand node.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164600
|
||
<rdar://problem/28828676>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/osr-exit-on-op-negate-should-no-fail-assertions.js: Added.
|
||
|
||
2016-11-08 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Avoid cloned arguments allocation in ArrayPrototype methods
|
||
https://bugs.webkit.org/show_bug.cgi?id=164502
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/argument-intrinsic-basic.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
* stress/argument-intrinsic-inlining-with-result-escape.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
(escape):
|
||
* stress/argument-intrinsic-nested-inlining.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
(builtinCaller1):
|
||
(builtinCaller2):
|
||
(escape):
|
||
* stress/argument-intrinsic-not-convert-to-get-argument.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
* stress/argument-intrinsic-with-stack-write.js: Added.
|
||
(shouldBe):
|
||
(builtin.createBuiltin):
|
||
|
||
2016-11-09 Saam Barati <sbarati@apple.com>
|
||
|
||
Math.min()/Math.max() with no arguments is lowered incorrectly in the BytecodeParser
|
||
https://bugs.webkit.org/show_bug.cgi?id=164464
|
||
<rdar://problem/29131452>
|
||
|
||
Reviewed by Darin Adler.
|
||
|
||
* stress/math-max-min-no-arguments.js: Added.
|
||
(assert):
|
||
(min):
|
||
(max):
|
||
(test):
|
||
|
||
2016-11-09 Saam Barati <sbarati@apple.com>
|
||
|
||
TypeProfiler and running GC collection on another thread don't play nicely with each other
|
||
https://bugs.webkit.org/show_bug.cgi?id=164441
|
||
<rdar://problem/29132174>
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* typeProfiler/type-profiler-gc.js: Added.
|
||
(bar):
|
||
(foo):
|
||
|
||
2016-11-04 Mark Lam <mark.lam@apple.com>
|
||
|
||
Error description code should be able to handle Symbol values.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164436
|
||
<rdar://problem/29115583>
|
||
|
||
Reviewed by Filip Pizlo and Saam Barati.
|
||
|
||
* stress/error-description-on-symbols-should-not-crash.js: Added.
|
||
|
||
2016-11-03 Geoffrey Garen <ggaren@apple.com>
|
||
|
||
EvalCodeCache should not give up in strict mode and other cases
|
||
https://bugs.webkit.org/show_bug.cgi?id=164357
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* microbenchmarks/eval-cached.js: Added. 45x faster now.
|
||
* stress/eval-cached.js: Added. Try running the same eval text in a bunch
|
||
of different scopes and verify that we access the right scope.
|
||
|
||
2016-11-04 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: implement more sections
|
||
https://bugs.webkit.org/show_bug.cgi?id=164023
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
On the JSC side:
|
||
|
||
- Put in parser stubs for all WebAssembly sections.
|
||
- Parse Import, Export sections.
|
||
- Use tryReserveCapacity instead of reserve, and bail out of the parser if it fails. This prevents the parser from bringing everything down when faced with a malicious input.
|
||
- Encapsulate all parsed module information into its own structure, making it easier to pass around (from parser to Plan to Module to Instance).
|
||
- Create WasmFormat.cpp to hold parsed module information's dtor to avoid including WasmMemory.h needlessly.
|
||
- parseCode: avoid overflow through function size.
|
||
- Remove all remainders of polyfill-prototype-1, and update license.
|
||
- Add missing WasmOps.h and WasmValidateInlines.h auto-generation for cmake build.
|
||
|
||
On the Builder.js testing side:
|
||
|
||
- Implement Type, Import (function only), Export (function only) sections.
|
||
- Check section order and uniqueness.
|
||
- Optionally auto-generate the Type section from subsequent Export / Import / Code entries.
|
||
- Allow re-exporting an import.
|
||
|
||
* wasm/Builder.js: build type, import, and export sections
|
||
(const._normalizeFunctionSignature):
|
||
* wasm/Builder_WebAssemblyBinary.js: Added. Forked from Builder.js
|
||
(const.emitters.Type):
|
||
(const.emitters.Import):
|
||
(const.emitters.Function):
|
||
(const.emitters.Table):
|
||
(const.emitters.Memory):
|
||
(const.emitters.Global):
|
||
(const.emitters.Export):
|
||
(const.emitters.Start):
|
||
(const.emitters.Element):
|
||
(const.emitters.Code):
|
||
(const.emitters.Data):
|
||
(export.const.Binary):
|
||
* wasm/LowLevelBinary.js: Add a few useful outputs
|
||
(export.default.LowLevelBinary.prototype.varuint1):
|
||
(export.default.LowLevelBinary.prototype.varint7):
|
||
* wasm/WASM.js: value type and external kind helpers
|
||
* wasm/assert.js: array element-wise equality comparison
|
||
(const._eq):
|
||
* wasm/js-api/test_Module.js:
|
||
(ModuleWithImports):
|
||
* wasm/self-test/test_BuilderJSON.js: many more tests for all the new Builder APIs, and update to some older tests which now require a Type section or rejiggered Function signature
|
||
(const.assertOpThrows):
|
||
(SectionsWithSameCustomName):
|
||
(TwoTypeSections):
|
||
(EmptyImportSection):
|
||
(ImportBeforeTypeSections):
|
||
* wasm/self-test/test_BuilderWebAssembly.js: remove a test which wasn't helpful and is now obsolete
|
||
(CustomSection):
|
||
|
||
2016-11-03 Mark Lam <mark.lam@apple.com>
|
||
|
||
ClonedArguments need to also support haveABadTime mode.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164200
|
||
<rdar://problem/27211336>
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/have-a-bad-time-with-arguments.js: Added.
|
||
|
||
2016-11-03 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DFG plays fast and loose with the shadow values of a Phi
|
||
https://bugs.webkit.org/show_bug.cgi?id=164309
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
This test demonstrates why the DFG needs to recognize the shadow value of a Phi.
|
||
|
||
* stress/dfg-ssa-swap.js: Added.
|
||
(foo):
|
||
|
||
2016-11-03 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r208364.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164402
|
||
|
||
broke the build (Requested by smfr on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"DFG plays fast and loose with the shadow values of a Phi"
|
||
https://bugs.webkit.org/show_bug.cgi?id=164309
|
||
http://trac.webkit.org/changeset/208364
|
||
|
||
2016-11-03 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DFG plays fast and loose with the shadow values of a Phi
|
||
https://bugs.webkit.org/show_bug.cgi?id=164309
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
This test demonstrates why the DFG needs to recognize the shadow value of a Phi.
|
||
|
||
* stress/dfg-ssa-swap.js: Added.
|
||
(foo):
|
||
|
||
2016-11-03 Saam Barati <sbarati@apple.com>
|
||
|
||
Asking for a value profile prediction should be defensive against not finding a value profile
|
||
https://bugs.webkit.org/show_bug.cgi?id=164306
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/inlined-tail-call-in-inlined-setter-should-not-crash-when-getting-value-profile.js: Added.
|
||
(let.o.set foo):
|
||
(bar):
|
||
|
||
2016-11-02 Saam Barati <sbarati@apple.com>
|
||
|
||
Allocation elimination of rest parameter doesn't take into account indexed properties on Array.prototype/Object.prototype
|
||
https://bugs.webkit.org/show_bug.cgi?id=164301
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/rest-parameter-allocation-elimination-watchpoints-2.js: Added.
|
||
(assert):
|
||
(foo):
|
||
* stress/rest-parameter-allocation-elimination-watchpoints-3.js: Added.
|
||
(assert):
|
||
(foo):
|
||
* stress/rest-parameter-allocation-elimination-watchpoints-4.js: Added.
|
||
(assert):
|
||
(foo):
|
||
* stress/rest-parameter-allocation-elimination-watchpoints-5.js: Added.
|
||
(assert):
|
||
(foo):
|
||
* stress/rest-parameter-allocation-elimination-watchpoints-6.js: Added.
|
||
(assert):
|
||
(foo):
|
||
* stress/rest-parameter-allocation-elimination-watchpoints.js: Added.
|
||
(assert):
|
||
(foo):
|
||
|
||
2016-11-01 Saam Barati <sbarati@apple.com>
|
||
|
||
We should be able to eliminate rest parameter allocations
|
||
https://bugs.webkit.org/show_bug.cgi?id=163925
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/rest-parameter-allocation-elimination.js: Added.
|
||
(assert):
|
||
(test1.bar):
|
||
(test1):
|
||
(test2.jaz):
|
||
(test2.jaz2.kaz):
|
||
(test2.jaz2):
|
||
(test2):
|
||
(test3.foo):
|
||
(test3.baz):
|
||
(test3.jaz):
|
||
(test3):
|
||
(test4.baz):
|
||
(test4.jaz):
|
||
(test4):
|
||
(test5.baz):
|
||
(test5.jaz):
|
||
(test5):
|
||
(test6.baz):
|
||
(test6.jaz):
|
||
(test6):
|
||
(test7.baz):
|
||
(test7.jaz):
|
||
(test7.check):
|
||
(test7):
|
||
(test8.baz):
|
||
(test8.jaz):
|
||
(test8.check):
|
||
(test8):
|
||
(test9.baz):
|
||
(test9.jaz):
|
||
(test9.check):
|
||
(test9):
|
||
(test10.baz):
|
||
(test10.jaz):
|
||
(test10):
|
||
(test11.bar):
|
||
(test11.foo):
|
||
(test11.makeArguments):
|
||
(test11.):
|
||
(test12):
|
||
(test12.bar):
|
||
(test12.foo):
|
||
(test12.makeArguments):
|
||
(test12.):
|
||
(test13.bar):
|
||
(test13.top):
|
||
(test13.foo):
|
||
(test13.makeArguments):
|
||
(test13.):
|
||
(test13):
|
||
(test14.bar):
|
||
(test14.top):
|
||
(test14.foo):
|
||
(test14.makeArguments):
|
||
(test14.):
|
||
(test14):
|
||
(test15.bar):
|
||
(test15.top):
|
||
(test15.foo):
|
||
(test15.makeArguments):
|
||
(test15.):
|
||
(test15):
|
||
|
||
2016-11-01 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r208208 and r208210.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164276
|
||
|
||
This change caused 28 JSC test failures. (Requested by
|
||
ryanhaddad on #webkit).
|
||
|
||
Reverted changesets:
|
||
|
||
"We should be able to eliminate rest parameter allocations"
|
||
https://bugs.webkit.org/show_bug.cgi?id=163925
|
||
http://trac.webkit.org/changeset/208208
|
||
|
||
"Fix the EFL build."
|
||
http://trac.webkit.org/changeset/208210
|
||
|
||
2016-10-31 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
JSC should support SharedArrayBuffer
|
||
https://bugs.webkit.org/show_bug.cgi?id=163986
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
This adds our own test for the various corner cases of SharedArrayBuffer. This test is meant to
|
||
check all of the things that don't require concurrency.
|
||
|
||
* stress/SharedArrayBuffer.js: Added.
|
||
(checkAtomics):
|
||
(shouldFail):
|
||
(Symbol):
|
||
(runAtomic):
|
||
|
||
2016-10-31 Saam Barati <sbarati@apple.com>
|
||
|
||
We should be able to eliminate rest parameter allocations
|
||
https://bugs.webkit.org/show_bug.cgi?id=163925
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/rest-parameter-allocation-elimination.js: Added.
|
||
(assert):
|
||
(test1.bar):
|
||
(test1):
|
||
(test2.jaz):
|
||
(test2.jaz2.kaz):
|
||
(test2.jaz2):
|
||
(test2):
|
||
(test3.foo):
|
||
(test3.baz):
|
||
(test3.jaz):
|
||
(test3):
|
||
(test4.baz):
|
||
(test4.jaz):
|
||
(test4):
|
||
(test5.baz):
|
||
(test5.jaz):
|
||
(test5):
|
||
(test6.baz):
|
||
(test6.jaz):
|
||
(test6):
|
||
(test7.baz):
|
||
(test7.jaz):
|
||
(test7.check):
|
||
(test7):
|
||
(test8.baz):
|
||
(test8.jaz):
|
||
(test8.check):
|
||
(test8):
|
||
(test9.baz):
|
||
(test9.jaz):
|
||
(test9.check):
|
||
(test9):
|
||
(test10.baz):
|
||
(test10.jaz):
|
||
(test10):
|
||
(test11.bar):
|
||
(test11.foo):
|
||
(test11.makeArguments):
|
||
(test11.):
|
||
(test12):
|
||
(test12.bar):
|
||
(test12.foo):
|
||
(test12.makeArguments):
|
||
(test12.):
|
||
(test13.bar):
|
||
(test13.top):
|
||
(test13.foo):
|
||
(test13.makeArguments):
|
||
(test13.):
|
||
(test13):
|
||
(test14.bar):
|
||
(test14.top):
|
||
(test14.foo):
|
||
(test14.makeArguments):
|
||
(test14.):
|
||
(test14):
|
||
(test15.bar):
|
||
(test15.top):
|
||
(test15.foo):
|
||
(test15.makeArguments):
|
||
(test15.):
|
||
(test15):
|
||
|
||
2016-10-31 Saam Barati <sbarati@apple.com>
|
||
|
||
Debug JSC test microbenchmarks/pure-get-by-id-cse-2.js timing out
|
||
https://bugs.webkit.org/show_bug.cgi?id=164227
|
||
|
||
Unreviewed timeout fix.
|
||
|
||
* microbenchmarks/pure-get-by-id-cse-2.js:
|
||
|
||
2016-10-31 Keith Miller <keith_miller@apple.com>
|
||
|
||
autogenerated files from wasm.json should be in derived sources.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164152
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
Delete generation script since it is no longer used.
|
||
|
||
* wasm/generate-wasmops-header.js: Removed.
|
||
|
||
2016-10-29 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] JSON.stringify should handle Proxy which is non JSArray but isArray is true
|
||
https://bugs.webkit.org/show_bug.cgi?id=164123
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/json-stringify-with-non-jsarray-array.js: Added.
|
||
(shouldBe):
|
||
(shouldBe.JSON.stringify.new.Proxy):
|
||
|
||
2016-10-29 Saam Barati <sbarati@apple.com>
|
||
|
||
We should have a way of profiling when a get_by_id is pure and to emit a PureGetById in the DFG/FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=163305
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* microbenchmarks/pure-get-by-id-cse-2.js: Added.
|
||
(foo):
|
||
* microbenchmarks/pure-get-by-id-cse.js: Added.
|
||
(foo):
|
||
* stress/pure-get-by-id-cse-correctness.js: Added.
|
||
(assert):
|
||
(foo):
|
||
* stress/pure-get-by-id-on-non-object.js: Added.
|
||
(assert):
|
||
(foo):
|
||
|
||
2016-10-28 Csaba Osztrogonác <ossy@webkit.org>
|
||
|
||
Skip JSTests/microbenchmarks/dense-set.js on memory limited devices
|
||
https://bugs.webkit.org/show_bug.cgi?id=164128
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* microbenchmarks/dense-set.js:
|
||
|
||
2016-10-20 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] implement runtime for async functions
|
||
https://bugs.webkit.org/show_bug.cgi?id=163760
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/async-await-basic.js: Added.
|
||
(shouldBe):
|
||
(shouldBeAsync):
|
||
(shouldThrow):
|
||
(shouldThrowAsync):
|
||
(shouldThrowSyntaxError):
|
||
(let.AsyncFunction.async):
|
||
(async.asyncFunctionForProto):
|
||
(Object.getPrototypeOf.async):
|
||
(Object.getPrototypeOf.async.method):
|
||
(async):
|
||
(async.method):
|
||
(async.asyncNonConstructorDecl):
|
||
(shouldThrow.new.async):
|
||
(shouldThrow.new.async.nonConstructor):
|
||
(async.asyncDecl):
|
||
(async.f):
|
||
(MyError):
|
||
(async.asyncDeclThrower):
|
||
(shouldThrowAsync.async):
|
||
(resolveLater):
|
||
(rejectLater):
|
||
(async.resumeAfterNormal):
|
||
(O.async.resumeAfterNormal):
|
||
(resumeAfterNormalArrow.async):
|
||
(async.resumeAfterThrow):
|
||
(O.async.resumeAfterThrow):
|
||
(resumeAfterThrowArrow.async):
|
||
(catch):
|
||
* stress/async-await-module-reserved-word.js: Added.
|
||
(shouldThrow):
|
||
(SyntaxError.Canstring_appeared_hereawait.checkModuleSyntaxError.String.raw.await):
|
||
(checkModuleSyntaxError.String.raw.await):
|
||
(checkModuleSyntaxError.String.raw.async.await):
|
||
(SyntaxError.Cannot.declare.named):
|
||
* stress/async-await-mozilla.js: Added.
|
||
(shouldBe):
|
||
(shouldBeAsync):
|
||
(shouldThrow):
|
||
(shouldThrowAsync):
|
||
(assert):
|
||
(shouldThrowSyntaxError):
|
||
(mozSemantics.async.empty):
|
||
(mozSemantics.async.simpleReturn):
|
||
(mozSemantics.async.simpleAwait):
|
||
(mozSemantics.async.simpleAwaitAsync):
|
||
(mozSemantics.async.returnOtherAsync):
|
||
(mozSemantics.async.simpleThrower):
|
||
(mozSemantics.async.delegatedThrower):
|
||
(mozSemantics.async.tryCatch):
|
||
(mozSemantics.async.tryCatchThrow):
|
||
(mozSemantics.async.wellFinally):
|
||
(mozSemantics.async.finallyMayFail):
|
||
(mozSemantics.async.embedded.async.inner):
|
||
(mozSemantics.async.embedded):
|
||
(mozSemantics.async.fib):
|
||
(mozSemantics.async.isOdd.async.isEven):
|
||
(mozSemantics.async.isOdd):
|
||
(mozSemantics.hardcoreFib.async.fib2):
|
||
(mozSemantics.namedAsyncExpr.async.simple):
|
||
(mozSemantics.async.executionOrder.async.first):
|
||
(mozSemantics.async.executionOrder.async.second):
|
||
(mozSemantics.async.executionOrder.async.third):
|
||
(mozSemantics.async.executionOrder):
|
||
(mozSemantics.async.miscellaneous):
|
||
(mozSemantics.thrower):
|
||
(mozSemantics.async.defaultArgs):
|
||
(mozSemantics.shouldThrow):
|
||
(mozSemantics):
|
||
(mozMethods.X):
|
||
(mozMethods.X.prototype.async.getValue):
|
||
(mozMethods.X.prototype.setValue):
|
||
(mozMethods.X.prototype.async.increment):
|
||
(mozMethods.X.prototype.async.getBaseClassName):
|
||
(mozMethods.X.async.getStaticValue):
|
||
(mozMethods.Y.prototype.async.getBaseClassName):
|
||
(mozMethods.Y):
|
||
(mozFunctionNameInferrence.async.test):
|
||
(mozSyntaxErrors):
|
||
* stress/async-await-reserved-word.js: Added.
|
||
(assert):
|
||
(shouldThrowSyntaxError):
|
||
(AsyncFunction.async):
|
||
* stress/async_arrow_functions_lexical_arguments_binding.js: Added.
|
||
(shouldBe):
|
||
(shouldBeAsync):
|
||
(shouldThrowAsync):
|
||
(noArgumentsArrow2.async):
|
||
* stress/async_arrow_functions_lexical_new.target_binding.js: Added.
|
||
(shouldBe):
|
||
(shouldBeAsync):
|
||
(shouldThrowAsync):
|
||
(C1):
|
||
(C2):
|
||
(shouldThrowAsync.async):
|
||
* stress/async_arrow_functions_lexical_super_binding.js: Added.
|
||
(shouldBe):
|
||
(shouldBeAsync):
|
||
(BaseClass.prototype.baseClassValue):
|
||
(BaseClass.prototype.get property):
|
||
(BaseClass):
|
||
(ChildClass.prototype.asyncSuperProp):
|
||
(ChildClass.prototype.asyncSuperProp2):
|
||
(ChildClass):
|
||
(ChildClass2):
|
||
* stress/async_arrow_functions_lexical_this_binding.js: Added.
|
||
(shouldBe):
|
||
(shouldBeAsync):
|
||
(d.y):
|
||
|
||
2016-10-28 Csaba Osztrogonác <ossy@webkit.org>
|
||
|
||
Skip 2 JS stress tests on memory limited devices
|
||
https://bugs.webkit.org/show_bug.cgi?id=164125
|
||
|
||
Unreviewed quick fix to unbreak JSCOnly ARM bots as soon as possible.
|
||
|
||
* stress/joined-strings-should-not-exceed-max-string-length.js:
|
||
* stress/string-prototype-replace-should-throw-out-of-memory-error-when-using-too-much-memory.js:
|
||
|
||
2016-10-27 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] forbid lexical redeclaration of generator formal parameters
|
||
https://bugs.webkit.org/show_bug.cgi?id=163930
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/async-await-syntax.js:
|
||
* stress/generator-syntax.js:
|
||
(testSyntaxError.gen):
|
||
(testSyntaxError.arguments):
|
||
(testSyntaxError.eval):
|
||
* test262.yaml:
|
||
|
||
2016-10-26 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly API: implement Instance
|
||
|
||
As described in: https://github.com/WebAssembly/design/blob/master/JS.md#webassemblyinstance-objects
|
||
|
||
- Take ownership of Wasm::Plan's compilation result when successfully creating a JSWebAssemblyModule object.
|
||
- Construct a basic Instance with a Module.
|
||
- Handle second argument (importObject) of WebAssembly.Instance.
|
||
- Add reference text from the spec to WebAssembly.Module's code.
|
||
- Expose and test an empty 'exports' ModuleNamespaceObject on WebAssembly.Instance.
|
||
|
||
The implementation isn't complete yet: it relies on further work for which I've filed bugs.
|
||
|
||
WebAssembly API: implement Instance
|
||
https://bugs.webkit.org/show_bug.cgi?id=163998
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/js-api/test_Instance.js: Added.
|
||
(EmptyModule): use the Builder, create the simplest Module possible, and create an Instance from it
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties.switch): basic tests of the API
|
||
|
||
2016-10-26 Mark Lam <mark.lam@apple.com>
|
||
|
||
JSGenericTypedArrayView::set() should check for exceptions.
|
||
https://bugs.webkit.org/show_bug.cgi?id=164007
|
||
<rdar://problem/28853775>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/typed-array-view-set-should-not-crash-on-exception.js: Added.
|
||
|
||
2016-10-25 Mark Lam <mark.lam@apple.com>
|
||
|
||
String.prototype.replace() should throw an OutOfMemoryError when using too much memory.
|
||
https://bugs.webkit.org/show_bug.cgi?id=163996
|
||
<rdar://problem/28263117>
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/string-prototype-replace-should-throw-out-of-memory-error-when-using-too-much-memory.js: Added.
|
||
|
||
2016-10-25 Mark Lam <mark.lam@apple.com>
|
||
|
||
JSStringJoiner::joinedLength() should limit joined string lengths to INT_MAX.
|
||
https://bugs.webkit.org/show_bug.cgi?id=163937
|
||
<rdar://problem/28642990>
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/joined-strings-should-not-exceed-max-string-length.js: Added.
|
||
|
||
2016-10-25 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: simple Module test
|
||
https://bugs.webkit.org/show_bug.cgi?id=163963
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* wasm/LowLevelBinary.js:
|
||
(export.default.LowLevelBinary.prototype.get return): get the ArrayBuffer
|
||
(export.default.LowLevelBinary.prototype.hexdump): Deleted.
|
||
(export.default.LowLevelBinary.prototype._maybeGrow): Deleted.
|
||
* wasm/js-api/test_Module.js: Added.
|
||
(EmptyModule): The most basic module possible
|
||
|
||
2016-10-25 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: implement Module
|
||
|
||
This implementation allows us to:
|
||
- Syncrhonously create a WebAssembly.Module with a typed array.
|
||
- Creates a compilation plan.
|
||
- Parse the Module and creates corresponding code.
|
||
- Throw WebAssembly.CompileError with mildly helpful [*] error messages on
|
||
failure.
|
||
|
||
Consult the API documentation for expected behavior: https://github.com/WebAssembly/design/blob/master/JS.md#webassemblymodule-constructor
|
||
|
||
For now the implementation discards the generated code.
|
||
|
||
The next steps will be:
|
||
- Expose a Module's exports.
|
||
- Implement WebAssembly.Instance, which allows instantiating and running a
|
||
compiled Module.
|
||
- Beef up the testing infrastructure under JSTests/wasm so that more complex
|
||
modules can be created and tested (instead of writing the bits by hand).
|
||
|
||
This patch also:
|
||
- Adds assert.instanceof in assert.js.
|
||
- Refactors Wasm::Parser and friends to accept const uint8_t* as well as a
|
||
Vector, to avoid copying when invoked synchronously.
|
||
- Remove useless Structure from some of the wasm constructors: they're already
|
||
on the JSGlobalObject, visited properly and all.
|
||
- Fix off-by-one error in parsing: Parser::parseUInt32 failed if the integer
|
||
was exactly at end of file.
|
||
|
||
[*] On error messages while parsing: I filed https://bugs.webkit.org/show_bug.cgi?id=163919
|
||
|
||
WebAssembly JS API: implement Module
|
||
https://bugs.webkit.org/show_bug.cgi?id=163903
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/assert.js: use underscore in name, and remove when exporting to avoid clasing with builtin names
|
||
(const._notUndef):
|
||
(const._isUndef):
|
||
(const._eq):
|
||
(const._ge):
|
||
(const._throws):
|
||
* wasm/js-api/test_basic_api.js: test the WebAssembly.Module API
|
||
(const.c.in.constructorProperties.switch):
|
||
|
||
2016-10-25 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add trivial Wasm conversion opcodes
|
||
https://bugs.webkit.org/show_bug.cgi?id=163950
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
This patch differentiates between Wasm opcodes that are trivially mapped to a B3 opcode and
|
||
those that are not. Some of the Wasm opcodes that are currently a non-simple opcode will
|
||
become simple as we add B3 opcodes for Wasm operations. The remaining opcodes will need to
|
||
be added via patchpoints in a later patch.
|
||
|
||
* wasm/generate-wasmops-header.js:
|
||
(const.template.pragma.once.ENABLE.WEBASSEMBLY.include.cstdint.namespace.JSC.namespace.Wasm.inline.bool.isSimple):
|
||
* wasm/wasm.json:
|
||
|
||
2016-10-24 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Arrow functions with concise bodies cannot return regular expressions
|
||
https://bugs.webkit.org/show_bug.cgi?id=163162
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* ChakraCore/test/Operators/instanceof.baseline-jsc:
|
||
* ChakraCore/test/Regex/nul_character.baseline-jsc:
|
||
* ChakraCore/test/es5/Lex_u3.baseline-jsc:
|
||
* stress/parse-regexp-as-token.js: Added.
|
||
(shouldBe):
|
||
|
||
2016-10-24 Keith Miller <keith_miller@apple.com>
|
||
|
||
Wasm should support floating point operations.
|
||
https://bugs.webkit.org/show_bug.cgi?id=163770
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
Add appropriate b3op names for floating point wasm bytecodes, where they exist.
|
||
Also, fix some WASM => Wasm in WasmOps.h generator script that I missed
|
||
the first time I made the change.
|
||
|
||
* wasm/generate-wasmops-header.js:
|
||
(const.template.pragma.once.ENABLE.WEBASSEMBLY.include.cstdint.namespace.JSC.namespace.WASM.template.typename.Int.inline.bool.isValidOpType): Deleted.
|
||
(const.template.pragma.once.ENABLE.WEBASSEMBLY.include.cstdint.namespace.JSC.namespace.WASM.enum.BinaryOpType): Deleted.
|
||
(const.template.pragma.once.ENABLE.WEBASSEMBLY.include.cstdint.namespace.JSC.namespace.WASM.enum.UnaryOpType): Deleted.
|
||
(const.template.pragma.once.ENABLE.WEBASSEMBLY.include.cstdint.namespace.JSC.namespace.WASM.enum.LoadOpType): Deleted.
|
||
(const.template.pragma.once.ENABLE.WEBASSEMBLY.include.cstdint.namespace.JSC.namespace.WASM.enum.StoreOpType): Deleted.
|
||
(const.template.pragma.once.ENABLE.WEBASSEMBLY.include.cstdint.namespace.JSC.namespace.WASM.undef.CREATE_ENUM_VALUE.inline.bool.isControlOp): Deleted.
|
||
* wasm/wasm.json:
|
||
|
||
2016-10-21 Saam Barati <sbarati@apple.com>
|
||
|
||
SpeculativeJIT::compileTryGetById needs to pass in NeedsToSpill along both the cell speculation and untyped speculation path
|
||
https://bugs.webkit.org/show_bug.cgi?id=163622
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/try-get-by-id-should-spill-registers-dfg.js: Added.
|
||
(let.f.createBuiltin):
|
||
|
||
2016-10-21 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] don't crash when arguments to `new Function()` produce unexpected AST
|
||
https://bugs.webkit.org/show_bug.cgi?id=163748
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/regress-163748.js: Added.
|
||
(assert):
|
||
(shouldThrowSyntaxError):
|
||
(GeneratorFunction):
|
||
|
||
2016-10-20 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add support for WASM calls
|
||
https://bugs.webkit.org/show_bug.cgi?id=161727
|
||
|
||
Reviewed by Filip Pizlo and Michael Saboff.
|
||
|
||
Add members of the Call category to the WASMOps special group.
|
||
|
||
* wasm/generate-wasmops-header.js:
|
||
|
||
2016-10-20 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Drop isEnvironmentRecord type info flag and use JSType information instead
|
||
https://bugs.webkit.org/show_bug.cgi?id=163761
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* modules/string-prototype-module-scope.js: Added.
|
||
(shouldBe):
|
||
(catch):
|
||
(refer):
|
||
* stress/string-prototype-scopes-global-lexical-environment-strict.js: Added.
|
||
(shouldBe):
|
||
(catch):
|
||
* stress/string-prototype-scopes-global-lexical-environment.js: Added.
|
||
(shouldBe):
|
||
(catch):
|
||
* stress/string-prototype-scopes-strict.js: Added.
|
||
(shouldBe):
|
||
(catch):
|
||
(try.refer):
|
||
(refer):
|
||
* stress/string-prototype-scopes.js: Added.
|
||
(shouldBe):
|
||
(catch):
|
||
(try.refer):
|
||
(refer):
|
||
(object.toString):
|
||
(with):
|
||
|
||
2016-10-20 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly API: implement exception constructors properly
|
||
|
||
- Rename WebAssemblyObject to JSWebAssembly for consistency.
|
||
- WebAssembly object now has its own prototype: add WebAssemblyPrototype, and
|
||
use it to register JSWebAssembly's function properties through auto-generated
|
||
.lut.h, instead of manually.
|
||
- The error constructors used to throw (e.g. `new WebAssembly.CompileError()`).
|
||
- Register WebAssembly's constructors from the global object, and hold a
|
||
reference to their structure and prototype so that invoking the constructor
|
||
can use the structure directly from the global object.
|
||
- Add a prototype base field to global object creation. Previous ones all had
|
||
Object's prototype as their base, but WebAssembly's error constructors have
|
||
Error as their base.
|
||
- Test for the error object's correctness.
|
||
- Add missing #if ENABLE(WEBASSEMBLY)
|
||
|
||
WebAssembly API: implement exception constructors properly
|
||
https://bugs.webkit.org/show_bug.cgi?id=163699
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.c.in.constructorProperties): more tests
|
||
|
||
2016-10-20 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] disallow references to `await` in AsyncFunction formal parameters
|
||
https://bugs.webkit.org/show_bug.cgi?id=163694
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/async-await-syntax.js:
|
||
|
||
2016-10-20 Keith Miller <keith_miller@apple.com>
|
||
|
||
Invalid assertion in arguments elimination
|
||
https://bugs.webkit.org/show_bug.cgi?id=163740
|
||
<rdar://problem/27911462>
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/direct-arguments-osr-entry.js: Added.
|
||
(foo.):
|
||
(foo):
|
||
|
||
2016-10-20 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] throw TypeError when constructing dynamically created JSGeneratorFunction
|
||
https://bugs.webkit.org/show_bug.cgi?id=163714
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Add missing test coverage that dynamically created
|
||
JSGeneratorFunctions can not be constructed.
|
||
|
||
* stress/generator-function-constructor.js:
|
||
(shouldThrow):
|
||
|
||
2016-10-19 JF Bastien <jfbastien@apple.com>
|
||
|
||
JavaScript WebAssembly API: baby steps
|
||
|
||
- Expand WebAssembly constructors into their own files. This requires a lot of
|
||
boilerplate, as well as adding the .lut.h files. All of the
|
||
JSWebAssembly*.{h,cpp}, as well as Constructor and Prototype files, are
|
||
currently the same between the 4 specified WebAssembly constructors. It'll be
|
||
easy to implement individual functions on constructed objects as per the
|
||
spec, and have each of these files diverge. The error constructors are also
|
||
similar, except that their instance derives from ErrorInstance.
|
||
- Use constructor macro when initializing the global object.
|
||
- Dramatically improve testing of the WebAssembly API by checking for
|
||
properties specified in the spec [*].
|
||
- Clean up assert.js' exception testing.
|
||
- Fix a copy-paste bug in wasm.json: floating-point const return values were
|
||
swapped.
|
||
|
||
[*] https://github.com/WebAssembly/design/blob/master/JS.md
|
||
|
||
Implement more of the JavaScript WebAssembly API
|
||
https://bugs.webkit.org/show_bug.cgi?id=163571
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm/assert.js:
|
||
(export.const.isUndef): add this useful helper
|
||
(export.const.throws): fold other throw checks into this one, and check message as well
|
||
* wasm/js-api/test_basic_api.js:
|
||
(const.checkOwnPropertyDescriptor): check own property descriptor follows the spec
|
||
* wasm/self-test/test_BuilderJSON.js:
|
||
(const.assertOpThrows): use new assert API
|
||
(CheckedOpcodeArgumentsTooMany): ditto
|
||
(CheckedOpcodeArgumentsNotEnough): ditto
|
||
(CallInvalid): ditto
|
||
(I32ConstInvalid): ditto
|
||
(F32ConstInvalid): ditto (and this caugth the JSON copy-paste bug)
|
||
(F64ConstInvalid): ditto
|
||
* wasm/self-test/test_LowLevelBinary_varint.js: use new assert API
|
||
* wasm/self-test/test_LowLevelBinary_varuint.js: use new assert API
|
||
* wasm/utilities.js: add "global" object, used in basic API test (to access global.WebAssembly).
|
||
* wasm/wasm.json: fix copy-paste
|
||
|
||
2016-10-19 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] forbid "use strict" directive in generator functions with non-simple parameters
|
||
https://bugs.webkit.org/show_bug.cgi?id=163683
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
Update various generator*-non-simple-param.js tests to be passing.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-10-18 Mark Lam <mark.lam@apple.com>
|
||
|
||
Invoking Object.prototype.__proto__ accessors directly should throw a TypeError.
|
||
https://bugs.webkit.org/show_bug.cgi?id=154377
|
||
<rdar://problem/27330808>
|
||
|
||
Reviewed by Filip Pizlo and Saam Barati.
|
||
|
||
* stress/object-prototype-proto-accessors-should-throw-on-undefined-this.js: Added.
|
||
|
||
2016-10-18 Keith Miller <keith_miller@apple.com>
|
||
|
||
GetByVal to GetById conversion in the DFG is incorrect for getters with control flow
|
||
https://bugs.webkit.org/show_bug.cgi?id=163629
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/get-by-val-to-id-with-getter.js: Added.
|
||
(foo):
|
||
(o.get hello):
|
||
|
||
2016-10-15 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
DFG and FTL should be able to use DirectCall ICs when they proved the callee or its executable
|
||
https://bugs.webkit.org/show_bug.cgi?id=163371
|
||
|
||
Reviewed by Geoffrey Garen and Saam Barati.
|
||
|
||
Add microbenchmarks for all of the cases that this patch optimizes.
|
||
|
||
* microbenchmarks/direct-call-arity-mismatch.js: Added.
|
||
(foo):
|
||
(bar):
|
||
* microbenchmarks/direct-call.js: Added.
|
||
(foo):
|
||
(bar):
|
||
* microbenchmarks/direct-construct-arity-mismatch.js: Added.
|
||
(Foo):
|
||
(bar):
|
||
* microbenchmarks/direct-construct.js: Added.
|
||
(Foo):
|
||
(bar):
|
||
* microbenchmarks/direct-tail-call-arity-mismatch.js: Added.
|
||
(foo):
|
||
(bar):
|
||
* microbenchmarks/direct-tail-call-inlined-caller-arity-mismatch.js: Added.
|
||
(foo):
|
||
(bar):
|
||
(baz):
|
||
* microbenchmarks/direct-tail-call-inlined-caller.js: Added.
|
||
(foo):
|
||
(bar):
|
||
(baz):
|
||
* microbenchmarks/direct-tail-call.js: Added.
|
||
(foo):
|
||
(bar):
|
||
|
||
2016-10-18 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] ES6 Method functions should not have prototype
|
||
https://bugs.webkit.org/show_bug.cgi?id=162530
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Fix test262 expectations about MethodDefinitions
|
||
|
||
* ChakraCore/test/strict/05.arguments_sm.baseline-jsc:
|
||
* stress/reflect-set.js:
|
||
* test262.yaml:
|
||
|
||
2016-10-17 Keith Miller <keith_miller@apple.com>
|
||
|
||
Add support for WASM Memory.
|
||
https://bugs.webkit.org/show_bug.cgi?id=161710
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
Add store and load opcodes to wasm.json. Additionally, add new
|
||
enums for those opcodes in the generator.
|
||
|
||
* stress/wasm/generate-wasmops-header.js:
|
||
(const.template.pragma.once.ENABLE.WEBASSEMBLY.include.cstdint.namespace.JSC.namespace.WASM.enum.LoadOpType):
|
||
(const.template.pragma.once.ENABLE.WEBASSEMBLY.include.cstdint.namespace.JSC.namespace.WASM.enum.StoreOpType):
|
||
|
||
2016-10-17 Saam Barati <sbarati@apple.com>
|
||
|
||
Add more tests for the double->String conversion in ValueAdd constant folding
|
||
https://bugs.webkit.org/show_bug.cgi?id=163517
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* microbenchmarks/string-add-constant-folding.js:
|
||
(test):
|
||
|
||
2016-10-17 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly JS API: implement basic stub
|
||
|
||
Implement the global WebAssembly JavaScript object, and its constructor +
|
||
function properties as described in:
|
||
https://github.com/WebAssembly/design/blob/master/JS.md
|
||
|
||
These don't do anything at the moment, the parent bug will take care of adding
|
||
more functionality and associated tests.
|
||
|
||
WebAssembly JS API: implement basic stub
|
||
https://bugs.webkit.org/show_bug.cgi?id=163404
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* wasm.yaml:
|
||
* wasm/js-api/test_basic_api.js: Added.
|
||
(const.f.of.functionProperties.WebAssembly.f.undefined.throw.new.Error.Couldn.const.c.of.constructorProperties.WebAssembly.c.undefined.throw.new.Error.Couldn):
|
||
(const.c.of.constructorProperties.catch):
|
||
|
||
2016-10-17 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DOMJIT] Use DOMJIT::Patchpoint in IC
|
||
https://bugs.webkit.org/show_bug.cgi?id=163223
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/domjit-exception-ic.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
* stress/domjit-exception.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
* stress/domjit-getter-complex-with-incorrect-object.js: Added.
|
||
(shouldThrow):
|
||
(access):
|
||
(i.shouldThrow):
|
||
* stress/domjit-getter-complex.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
* stress/domjit-getter-try-catch-getter-as-get-by-id-register-restoration.js: Added.
|
||
(assert):
|
||
(bar):
|
||
(foo):
|
||
|
||
2016-10-15 Saam Barati <sbarati@apple.com>
|
||
|
||
Assertion failed under operationToLowerCase with a rope with zero length
|
||
https://bugs.webkit.org/show_bug.cgi?id=163314
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/to-lower-case-intrinsic-on-empty-rope.js: Added.
|
||
(assert):
|
||
(returnRope.helper):
|
||
(returnRope):
|
||
(lower):
|
||
|
||
2016-10-14 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] op_negate should with any type
|
||
https://bugs.webkit.org/show_bug.cgi?id=162587
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arith-abs-to-arith-negate-range-optimizaton.js: Added.
|
||
Cover OSR Exits when converting Math.abs() into ArithNegate.
|
||
|
||
* stress/arith-negate-on-various-types.js: Added.
|
||
Cover ArithNegate with all types.
|
||
|
||
2016-10-14 JF Bastien <jfbastien@apple.com>
|
||
|
||
Basic WebAssembly testing
|
||
|
||
Create a small DSL in JavaScript which can build WebAssembly binary modules based on the JSON description of the format as described in:
|
||
https://github.com/WebAssembly/design/blob/master/BinaryEncoding.md
|
||
|
||
This DSL can then be used to write small text description of valid and invalid WebAssembly binaries, making testing the JSC implementation much easier.
|
||
|
||
Details and example in README.md.
|
||
|
||
Basic WebAssembly testing
|
||
https://bugs.webkit.org/show_bug.cgi?id=163267
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/wasm/wasm.json: Removed.
|
||
* wasm.yaml: Added.
|
||
* wasm/Builder.js: Added.
|
||
(const._isValidValue):
|
||
(const._BuildWebAssemblyBinary):
|
||
(export.default.Builder):
|
||
(export.default.Builder.prototype.setChecked):
|
||
(export.default.Builder.prototype.setPreamble):
|
||
(export.default.Builder.prototype._registerSectionBuilders.switch.case.string_appeared_here.this.section):
|
||
(export.default.Builder.prototype._registerSectionBuilders.this.Unknown):
|
||
(export.default.Builder.prototype._registerSectionBuilders):
|
||
(export.default.Builder.prototype._addSection):
|
||
(export.default.Builder.prototype.optimize):
|
||
(export.default.Builder.prototype.json):
|
||
(export.default.Builder.prototype.AsmJS):
|
||
(export.default.Builder.prototype.WebAssembly):
|
||
* wasm/LowLevelBinary.js: Added.
|
||
(const._getterRangeCheck):
|
||
(const._hexdump):
|
||
(export.default.LowLevelBinary):
|
||
(export.default.LowLevelBinary.prototype.newPatchable):
|
||
(export.default.LowLevelBinary.prototype.hexdump):
|
||
(export.default.LowLevelBinary.prototype._maybeGrow):
|
||
(export.default.LowLevelBinary.prototype._push8):
|
||
(export.default.LowLevelBinary.prototype.uint8):
|
||
(export.default.LowLevelBinary.prototype.uint16):
|
||
(export.default.LowLevelBinary.prototype.uint32):
|
||
(export.default.LowLevelBinary.prototype.varuint):
|
||
(export.default.LowLevelBinary.prototype.varint):
|
||
(export.default.LowLevelBinary.prototype.varuint7):
|
||
(export.default.LowLevelBinary.prototype.string):
|
||
(export.default.LowLevelBinary.prototype.getSize):
|
||
(export.default.LowLevelBinary.prototype.getUint8):
|
||
(export.default.LowLevelBinary.prototype.getUint16):
|
||
(export.default.LowLevelBinary.prototype.getUint32):
|
||
(export.default.LowLevelBinary.prototype.getVaruint):
|
||
(export.default.LowLevelBinary.prototype.getVarint):
|
||
(export.default.LowLevelBinary.prototype.getVaruint7):
|
||
(export.default.LowLevelBinary.prototype.getString):
|
||
(PatchableLowLevelBinary):
|
||
(PatchableLowLevelBinary.prototype._push8):
|
||
(PatchableLowLevelBinary.prototype.apply):
|
||
* wasm/README.md: Added.
|
||
* wasm/WASM.js: Added.
|
||
* wasm/assert.js: Added.
|
||
(export.const.notUndef):
|
||
(export.const.eq):
|
||
(export.const.ge):
|
||
(export.const.throwsError):
|
||
(export.const.throwsRangeError):
|
||
* wasm/generate-wasmops-header.js: Renamed from JSTests/stress/wasm/generate-wasmops-header.js.
|
||
* wasm/self-test/test_BuilderJSON.js: Added.
|
||
(const.assertOpThrows):
|
||
(EmptyModule):
|
||
(CustomMagicNumber):
|
||
(CustomVersion):
|
||
(CustomSection):
|
||
(CustomSectionAllBytes):
|
||
(CustomSectionInvalidByte):
|
||
(TwoCustomSections):
|
||
(EmptyCodeSection):
|
||
(CodeSectionWithEmptyFunction):
|
||
(CodeSectionWithEmptyFunctionWithParameters):
|
||
(InvalidFunctionParameters):
|
||
(SimpleFunction):
|
||
(TwoSimpleFunctions):
|
||
(TwoBuildersAtTheSameTime):
|
||
(CheckedOpcodeArgumentsTooMany):
|
||
(CheckedOpcodeArgumentsNotEnough):
|
||
(CallNoArguments):
|
||
(CallInvalid):
|
||
(I32ConstInvalid):
|
||
(F32ConstInvalid):
|
||
(F64ConstInvalid):
|
||
(CallManyFromStack):
|
||
(OpcodeAdd):
|
||
(OpcodeUnreachable):
|
||
(OpcodeUnreachableCombinations):
|
||
(OpcodeSelect):
|
||
* wasm/self-test/test_BuilderWebAssembly.js: Added.
|
||
(EmptyModule):
|
||
(CustomSection):
|
||
(Basic):
|
||
* wasm/self-test/test_LowLevelBinary_encode.js: Added.
|
||
* wasm/self-test/test_LowLevelBinary_string.js: Added.
|
||
* wasm/self-test/test_LowLevelBinary_uint16.js: Added.
|
||
* wasm/self-test/test_LowLevelBinary_uint32.js: Added.
|
||
* wasm/self-test/test_LowLevelBinary_uint8.js: Added.
|
||
* wasm/self-test/test_LowLevelBinary_varint.js: Added.
|
||
* wasm/self-test/test_LowLevelBinary_varuint.js: Added.
|
||
* wasm/self-test/test_LowLevelBinary_varuint7.js: Added.
|
||
* wasm/self-test/test_WASM.js: Added.
|
||
* wasm/test.sh: Added.
|
||
* wasm/utilities.js: Added.
|
||
(const._read.filename.switch):
|
||
(const._load.filename.switch):
|
||
(const._json.filename.switch):
|
||
* wasm/wasm.json: Added.
|
||
|
||
2016-10-14 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: @isConstructor incorrectly thinks Math.cos is a constructor
|
||
https://bugs.webkit.org/show_bug.cgi?id=163437
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/is-constructor.js: Added.
|
||
(assert):
|
||
(prototype.assert):
|
||
New test to cover the @isConstructor builtin.
|
||
|
||
* test262.yaml:
|
||
Test now passes.
|
||
|
||
2016-10-14 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r207322.
|
||
|
||
This change caused JSC test failures
|
||
|
||
Reverted changeset:
|
||
|
||
"Fix Array.prototype.splice ES6 compliance."
|
||
https://bugs.webkit.org/show_bug.cgi?id=163372
|
||
http://trac.webkit.org/changeset/207322
|
||
|
||
2016-10-14 Mark Lam <mark.lam@apple.com>
|
||
|
||
JSON.parse should not modify frozen objects.
|
||
https://bugs.webkit.org/show_bug.cgi?id=163430
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/json-parse-on-frozen-object.js: Added.
|
||
|
||
2016-10-14 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: Failure with RegExp.prototype.compile when pattern is undefined
|
||
https://bugs.webkit.org/show_bug.cgi?id=163431
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-10-13 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Exception message for expressions with multiple bracket accesses is inconsistent / incorrect
|
||
https://bugs.webkit.org/show_bug.cgi?id=163426
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* ChakraCore/test/Error/CallNonFunction_3.baseline-jsc:
|
||
* ChakraCore/test/Object/null.baseline-jsc:
|
||
* stress/exception-in-to-property-key-should-be-handled-early.js:
|
||
Better exception messages.
|
||
|
||
2016-10-13 Mark Lam <mark.lam@apple.com>
|
||
|
||
Fix Array.prototype.splice ES6 compliance.
|
||
https://bugs.webkit.org/show_bug.cgi?id=163372
|
||
|
||
Reviewed by Geoffrey Garen and Yusuke Suzuki.
|
||
|
||
* stress/array-splice-on-frozen-object.js: Added.
|
||
|
||
2016-10-12 Keith Miller <keith_miller@apple.com>
|
||
|
||
Handle non-function, non-undefined comparator in Array.prototype.sort
|
||
https://bugs.webkit.org/show_bug.cgi?id=163085
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* ChakraCore/test/Array/array_sort.baseline-jsc:
|
||
* stress/array-sort-bad-comparator.js: Added.
|
||
(test):
|
||
|
||
2016-10-12 Mark Lam <mark.lam@apple.com>
|
||
|
||
Array.prototype.slice should not modify frozen objects.
|
||
https://bugs.webkit.org/show_bug.cgi?id=163338
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/array-slice-on-frozen-object.js: Added.
|
||
|
||
2016-10-11 Mark Lam <mark.lam@apple.com>
|
||
|
||
Array.prototype.concat should not modify frozen objects.
|
||
https://bugs.webkit.org/show_bug.cgi?id=163302
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/array-concat-on-frozen-object.js: Added.
|
||
|
||
2016-10-11 Saam Barati <sbarati@apple.com>
|
||
|
||
ValueAdd should be constant folded if the operands are constant String,Primitive or Primitive,String
|
||
https://bugs.webkit.org/show_bug.cgi?id=163182
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/string-add-constant-folding.js: Added.
|
||
(assert):
|
||
(runTests):
|
||
(add):
|
||
(test):
|
||
|
||
2016-10-07 Mark Lam <mark.lam@apple.com>
|
||
|
||
Object.freeze() and seal() should throw if [[PreventExtensions]]() fails.
|
||
https://bugs.webkit.org/show_bug.cgi?id=163160
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/object-freeze-with-proxy-preventExtensions.js: Added.
|
||
* stress/object-seal-with-proxy-preventExtensions.js: Added.
|
||
|
||
2016-10-05 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DOMJIT] Add initial CheckDOM and CallDOM implementations
|
||
https://bugs.webkit.org/show_bug.cgi?id=162941
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/domjit-getter-poly.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
* stress/domjit-getter-proto.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
* stress/domjit-getter-super-poly.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
* stress/domjit-getter.js: Added.
|
||
(shouldBe):
|
||
(access):
|
||
|
||
2016-10-04 Saam Barati <sbarati@apple.com>
|
||
|
||
String.prototype.toLowerCase should be a DFG/FTL intrinsic
|
||
https://bugs.webkit.org/show_bug.cgi?id=162887
|
||
|
||
Reviewed by Filip Pizlo and Yusuke Suzuki.
|
||
|
||
* microbenchmarks/to-lower-case.js: Added.
|
||
(assert):
|
||
(foo):
|
||
(bar):
|
||
* stress/to-lower-case.js: Added.
|
||
(assert):
|
||
(foo):
|
||
|
||
2016-10-04 JF Bastien <jfbastien@apple.com>
|
||
|
||
WebAssembly: handle a few corner cases
|
||
https://bugs.webkit.org/show_bug.cgi?id=162884
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/wasm/generate-wasmops-header.js:
|
||
(const.opcodeIterator): max opcode value
|
||
|
||
2016-10-03 JF Bastien <jfbastien@apple.com>
|
||
|
||
Auto-generate WASMOps.h, share with testing JSON file
|
||
https://bugs.webkit.org/show_bug.cgi?id=162870
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/wasm/to-c++.js: Added. Generates WASMOps.h, siilar to the current one but with more data.
|
||
(const.opcode_iterator):
|
||
(opcode_macroizer):
|
||
* stress/wasm/wasm.json: Added. Data from 0xC binary format version.
|
||
|
||
2016-10-03 Saam Barati <sbarati@apple.com>
|
||
|
||
MapHash should speculate on the type of its child node
|
||
https://bugs.webkit.org/show_bug.cgi?id=161922
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/map-key-well-typed.js: Added.
|
||
(assert):
|
||
(intKey):
|
||
(doubleKey):
|
||
(objectKey):
|
||
(stringKey):
|
||
(booleanKey):
|
||
(symbolKey):
|
||
(cellKey):
|
||
(assert.doubleKey):
|
||
(assert.booleanKey):
|
||
|
||
2016-10-03 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[ES6] GeneratorFunction (a.k.a. GeneratorWrapperFunction)'s prototype object does not have constructor property
|
||
https://bugs.webkit.org/show_bug.cgi?id=162849
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-10-01 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[ES6] Align attributes of Generator related properties to spec
|
||
https://bugs.webkit.org/show_bug.cgi?id=162839
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-10-01 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[ES6] GeneratorFunction constructor should instantiate generator function
|
||
https://bugs.webkit.org/show_bug.cgi?id=162838
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/generator-function-constructor-is-subclassible.js: Added.
|
||
(shouldBe):
|
||
(GeneratorFunction):
|
||
(prototype.hello):
|
||
* stress/generator-function-constructor.js:
|
||
* test262.yaml:
|
||
|
||
2016-09-30 Saam Barati <sbarati@apple.com>
|
||
|
||
Arrow functions should not allow duplicate parameter names
|
||
https://bugs.webkit.org/show_bug.cgi?id=162741
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-09-30 Saam Barati <sbarati@apple.com>
|
||
|
||
Make some microbenchmarks run for less time.
|
||
|
||
Rubber stamped by Filip Pizlo.
|
||
|
||
* microbenchmarks/bound-function-construction-performance.js:
|
||
(foo):
|
||
* microbenchmarks/getter-richards-try-catch.js:
|
||
|
||
2016-09-29 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Arrow functions do not infer name from computed property but normal functions do
|
||
https://bugs.webkit.org/show_bug.cgi?id=162720
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/inferred-names.js:
|
||
|
||
2016-09-29 Mark Lam <mark.lam@apple.com>
|
||
|
||
Break some slow running tests into smaller bits so they don't time out.
|
||
https://bugs.webkit.org/show_bug.cgi?id=162743
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
The following tests have shown to be slow running:
|
||
op_div.js
|
||
op_lshift.js
|
||
op_mod.js
|
||
op_mul.js
|
||
op_rshift.js
|
||
op_sub.js
|
||
op_urshift
|
||
|
||
These tests auto-generate permutations of values to apply to binary operations.
|
||
They also test the operations with 3 permutations of value types:
|
||
1. VarVar - both operands variables
|
||
2. VarConst - variable operand 1, constant / literal operand 2
|
||
3. ConstVar - constant / literal operand 1, variable operand 2
|
||
|
||
We can prevent these tests from timing out by breaking each up to only run 1 of
|
||
the 3 permutations of value types.
|
||
|
||
* stress/op_div-ConstVar.js: Added.
|
||
* stress/op_div-VarConst.js: Added.
|
||
* stress/op_div-VarVar.js: Copied from JSTests/stress/op_div.js.
|
||
(o1.valueOf): Deleted.
|
||
* stress/op_div.js: Removed.
|
||
* stress/op_lshift-ConstVar.js: Added.
|
||
* stress/op_lshift-VarConst.js: Added.
|
||
* stress/op_lshift-VarVar.js: Copied from JSTests/stress/op_lshift.js.
|
||
(o1.valueOf): Deleted.
|
||
* stress/op_lshift.js: Removed.
|
||
* stress/op_mod-ConstVar.js: Added.
|
||
* stress/op_mod-VarConst.js: Added.
|
||
* stress/op_mod-VarVar.js: Copied from JSTests/stress/op_mod.js.
|
||
(o1.valueOf): Deleted.
|
||
* stress/op_mod.js: Removed.
|
||
* stress/op_mul-ConstVar.js: Added.
|
||
* stress/op_mul-VarConst.js: Added.
|
||
* stress/op_mul-VarVar.js: Copied from JSTests/stress/op_mul.js.
|
||
(o1.valueOf): Deleted.
|
||
* stress/op_mul.js: Removed.
|
||
* stress/op_rshift-ConstVar.js: Added.
|
||
* stress/op_rshift-VarConst.js: Added.
|
||
* stress/op_rshift-VarVar.js: Copied from JSTests/stress/op_rshift.js.
|
||
(o1.valueOf): Deleted.
|
||
* stress/op_rshift.js: Removed.
|
||
* stress/op_sub-ConstVar.js: Added.
|
||
* stress/op_sub-VarConst.js: Added.
|
||
* stress/op_sub-VarVar.js: Copied from JSTests/stress/op_sub.js.
|
||
(o1.valueOf): Deleted.
|
||
* stress/op_sub.js: Removed.
|
||
* stress/op_urshift-ConstVar.js: Added.
|
||
* stress/op_urshift-VarConst.js: Added.
|
||
* stress/op_urshift-VarVar.js: Copied from JSTests/stress/op_urshift.js.
|
||
(o1.valueOf): Deleted.
|
||
* stress/op_urshift.js: Removed.
|
||
* stress/resources/binary-op-values.js: Added.
|
||
(o1.valueOf):
|
||
|
||
2016-09-29 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: class and function names should be inferred in assignment
|
||
https://bugs.webkit.org/show_bug.cgi?id=146262
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arrowfunction-name.js: Added.
|
||
Quick tests for arrow function names.
|
||
|
||
* stress/inferred-names.js: Added.
|
||
General test for inferred function names.
|
||
|
||
* test262.yaml:
|
||
Pass many tests checking inferred function names.
|
||
|
||
2016-09-29 Saam Barati <sbarati@apple.com>
|
||
|
||
We don't properly propagate non-simple-parameter-list when parsing a setter
|
||
https://bugs.webkit.org/show_bug.cgi?id=160483
|
||
|
||
Reviewed by Joseph Pecoraro.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-09-28 Saam Barati <sbarati@apple.com>
|
||
|
||
stringProtoFuncRepeatCharacter will return `null` when it should not
|
||
https://bugs.webkit.org/show_bug.cgi?id=161944
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/pad-start-calls-repeat-character-with-double.js: Added.
|
||
(logLinesWithContext):
|
||
|
||
2016-09-27 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
B3::lowerMacros forgets to before->updatePredecessorsAfter() when lowering ChillMod on ARM64
|
||
https://bugs.webkit.org/show_bug.cgi?id=162644
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/chill-mod-chill-mod.js: Added.
|
||
(foo):
|
||
|
||
2016-09-26 Csaba Osztrogonác <oszi@inf.u-szeged.hu>
|
||
|
||
Skip stress/string-joining-long-strings-should-not-crash.js on memory limited devices
|
||
https://bugs.webkit.org/show_bug.cgi?id=162386
|
||
|
||
Unreviewed, relanding r206317 after typo fix.
|
||
|
||
* stress/string-joining-long-strings-should-not-crash.js:
|
||
|
||
2016-09-24 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSTests] fix test262 expectations following r206333
|
||
https://bugs.webkit.org/show_bug.cgi?id=162533
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-09-23 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] Implement parsing of Async Functions
|
||
https://bugs.webkit.org/show_bug.cgi?id=161409
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/async-await-syntax.js: Added.
|
||
(testSyntax):
|
||
(testSyntaxError):
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntax):
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode):
|
||
(testTopLevelAsyncAwaitSyntaxStrictMode):
|
||
(testTopLevelAsyncAwaitSyntaxStrictMode.testSyntax):
|
||
(testNestedAsyncAwaitSyntax.async):
|
||
(testNestedAsyncAwaitSyntax.foo):
|
||
(testTopLevelAsyncAwaitSyntaxSloppyMode.testSyntaxError):
|
||
|
||
2016-09-23 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r206317.
|
||
|
||
This change caused timeouts on El Capitan Release JSC tests
|
||
|
||
Reverted changeset:
|
||
|
||
"Skip stress/string-joining-long-strings-should-not-crash.js
|
||
on memory limited devices"
|
||
https://bugs.webkit.org/show_bug.cgi?id=162386
|
||
http://trac.webkit.org/changeset/206317
|
||
|
||
2016-09-23 Csaba Osztrogonác <ossy@webkit.org>
|
||
|
||
Skip mozilla-tests.yaml/js1_5/Array/regress-157652 on memory limited devices
|
||
https://bugs.webkit.org/show_bug.cgi?id=162381
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* mozilla/mozilla-tests.yaml:
|
||
|
||
2016-09-23 Csaba Osztrogonác <ossy@webkit.org>
|
||
|
||
Skip stress/string-joining-long-strings-should-not-crash.js on memory limited devices
|
||
https://bugs.webkit.org/show_bug.cgi?id=162386
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/string-joining-long-strings-should-not-crash.js:
|
||
|
||
2016-09-22 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] Use an inline cache to generate op_negate
|
||
https://bugs.webkit.org/show_bug.cgi?id=162371
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/op-negate-inline-cache.js: Added.
|
||
|
||
2016-09-22 Mark Lam <mark.lam@apple.com>
|
||
|
||
Array.prototype.join should do overflow checks on string joins.
|
||
https://bugs.webkit.org/show_bug.cgi?id=162459
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/array-join-on-strings-need-overflow-checks.js: Added.
|
||
(assert):
|
||
(catch):
|
||
|
||
2016-09-22 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: Function length should be number of parameters before parameters with default values
|
||
https://bugs.webkit.org/show_bug.cgi?id=162377
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/es6-default-parameters.js:
|
||
Add our own tests for function lengths with default parameters.
|
||
|
||
* test262.yaml:
|
||
We now pass all dflt-length tests.
|
||
|
||
2016-09-20 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] Do not use EagerRun on tests counting recompilation
|
||
https://bugs.webkit.org/show_bug.cgi?id=162248
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
This patch adds defaultNoEagerRun to all the tests
|
||
for which recompilation is the symptom of a bug.
|
||
The reason is that an OSR Exit can be unrelated to the tested
|
||
nodes when we are running in Eager mode.
|
||
|
||
* stress/arith-abs-on-various-types.js:
|
||
* stress/arith-ceil-on-various-types.js:
|
||
* stress/arith-clz32-on-various-types.js:
|
||
* stress/arith-cos-on-various-types.js:
|
||
* stress/arith-floor-on-various-types.js:
|
||
* stress/arith-fround-on-various-types.js:
|
||
* stress/arith-log-on-various-types.js:
|
||
* stress/arith-round-on-various-types.js:
|
||
* stress/arith-sin-on-various-types.js:
|
||
* stress/arith-sqrt-on-various-types.js:
|
||
* stress/arith-tan-on-various-types.js:
|
||
* stress/arith-trunc-on-various-types.js:
|
||
|
||
* stress/compare-strict-eq-on-various-types.js:
|
||
(testAllTypesCall):
|
||
The value 2 came from the other tests.
|
||
CompareStrictEq supports many more cases, the worst case
|
||
is bool->int->int52->number->polymorphic.
|
||
|
||
2016-09-20 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Make MarkedBlock state tracking support overlapped allocation and marking state
|
||
https://bugs.webkit.org/show_bug.cgi?id=161581
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
Add a microbenchmark for why we want to reclaim empty blocks from other allocators.
|
||
|
||
* microbenchmarks/switching-size-classes.js: Added.
|
||
|
||
2016-09-20 Saam Barati <sbarati@apple.com>
|
||
|
||
Unreviewed, added test for x86 32-bit failure for HasOwnProperty node in DFG.
|
||
|
||
* stress/has-own-property-called-on-non-object.js: Added.
|
||
(let.objs):
|
||
(new.String):
|
||
(foo):
|
||
|
||
2016-09-20 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Add `typeof value === "symbol"` handling to bytecode compiler
|
||
https://bugs.webkit.org/show_bug.cgi?id=162253
|
||
|
||
Reviewed by Sam Weinig.
|
||
|
||
* microbenchmarks/is-symbol-mixed.js: Added.
|
||
(isSymbol):
|
||
(i.let.pair.of.list.String):
|
||
* microbenchmarks/is-symbol.js: Added.
|
||
(isSymbol):
|
||
|
||
2016-09-19 Saam Barati <sbarati@apple.com>
|
||
|
||
Make HasOwnProperty faster
|
||
https://bugs.webkit.org/show_bug.cgi?id=161708
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* microbenchmarks/has-own-property-name-cache.js: Added.
|
||
(foo):
|
||
* stress/has-own-property-cache-basics.js: Added.
|
||
(assert):
|
||
(foo):
|
||
* stress/has-own-property-name-cache-string-keys.js: Added.
|
||
(assert):
|
||
(foo):
|
||
* stress/has-own-property-name-cache-symbol-keys.js: Added.
|
||
(assert):
|
||
(foo):
|
||
* stress/has-own-property-name-cache-symbols-and-strings.js: Added.
|
||
(assert):
|
||
(foo):
|
||
|
||
2016-09-19 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] Make the rounding-related nodes support any type
|
||
https://bugs.webkit.org/show_bug.cgi?id=161895
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/arith-ceil-on-various-types.js: Added.
|
||
* stress/arith-floor-on-various-types.js: Added.
|
||
* stress/arith-round-on-various-types.js: Added.
|
||
* stress/arith-trunc-on-various-types.js: Added.
|
||
|
||
2016-09-18 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[JSC] Do not need to use defineProperty to define methods for object literals
|
||
https://bugs.webkit.org/show_bug.cgi?id=162111
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/object-literal-methods.js: Added.
|
||
(shouldBe):
|
||
(throw.new.Error.let.object.get name):
|
||
(throw.new.Error):
|
||
(shouldBe.let.object.get name):
|
||
(shouldBe.let.object.get prototype):
|
||
(shouldBe.let.object.get 42):
|
||
|
||
2016-09-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Introduce IsCellWithType node and unify IsJSArray, IsRegExpObject and newly added IsProxyObject
|
||
https://bugs.webkit.org/show_bug.cgi?id=162000
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/is-array-for-array.js: Added.
|
||
(isArray):
|
||
* microbenchmarks/is-array-for-mixed-case.js: Added.
|
||
(isArray):
|
||
* microbenchmarks/is-array-for-non-array-object.js: Added.
|
||
(isArray):
|
||
* microbenchmarks/is-array-for-proxy.js: Added.
|
||
(isArray):
|
||
(isArray.proxy.throw.new.Error.isArray):
|
||
(isArray.proxy.throw.new.Error):
|
||
|
||
2016-09-16 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, gardening test262 results
|
||
|
||
Some tests are now passed with JSC, but marked as failed.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-09-16 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: Various Constructors length properties should be configurable
|
||
https://bugs.webkit.org/show_bug.cgi?id=161998
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-09-15 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r205931.
|
||
https://bugs.webkit.org/show_bug.cgi?id=162021
|
||
|
||
Tests for this change fail on 32-bit JSC bots (Requested by
|
||
ryanhaddad on #webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"[JSC] Make the rounding-related nodes support any type"
|
||
https://bugs.webkit.org/show_bug.cgi?id=161895
|
||
http://trac.webkit.org/changeset/205931
|
||
|
||
2016-09-15 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: Should be a SyntaxError for duplicate parameter names in function with default parameters
|
||
https://bugs.webkit.org/show_bug.cgi?id=162013
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/es6-default-parameters.js:
|
||
* test262.yaml:
|
||
|
||
2016-09-14 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
ASSERT_NOT_REACHED when using spread inside an array literal with Function.prototype.apply
|
||
https://bugs.webkit.org/show_bug.cgi?id=162003
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/spread-calling.js:
|
||
* test262.yaml:
|
||
|
||
2016-09-14 Michael Saboff <msaboff@apple.com>
|
||
|
||
YARR doesn't check for invalid flags for literal regular expressions
|
||
https://bugs.webkit.org/show_bug.cgi?id=161995
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
New test.
|
||
|
||
* stress/regress-161995.js: Added.
|
||
(testStatic):
|
||
(catch):
|
||
|
||
2016-09-14 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: TypedArray constructors length should be 3 and configurable
|
||
https://bugs.webkit.org/show_bug.cgi?id=161955
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-09-14 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] Make the rounding-related nodes support any type
|
||
https://bugs.webkit.org/show_bug.cgi?id=161895
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/arith-ceil-on-various-types.js: Added.
|
||
* stress/arith-floor-on-various-types.js: Added.
|
||
* stress/arith-round-on-various-types.js: Added.
|
||
* stress/arith-trunc-on-various-types.js: Added.
|
||
|
||
2016-09-14 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
TaggedTemplateString function calls should emit tail position calls
|
||
https://bugs.webkit.org/show_bug.cgi?id=161948
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/tail-call-recognize.js:
|
||
(runTests):
|
||
Ensure a tagged template string function call is tail call.
|
||
|
||
* test262.yaml:
|
||
These now pass.
|
||
|
||
2016-09-14 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
test262: Array.prototype.slice should always set length
|
||
https://bugs.webkit.org/show_bug.cgi?id=161953
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-09-13 JF Bastien <jfbastien@apple.com>
|
||
|
||
Support jsc shell builtin `read`
|
||
https://bugs.webkit.org/show_bug.cgi?id=161662
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/jsc-read.js: Added.
|
||
(test): test `read` and `readFile` shell builtins, in string and binary mode.
|
||
|
||
2016-09-12 Skachkov Oleksandr <gskachkov@gmail.com>
|
||
|
||
ES6: Classes: Should be allowed to create a static method with name "arguments"
|
||
https://bugs.webkit.org/show_bug.cgi?id=152985
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-09-12 Saam Barati <sbarati@apple.com>
|
||
|
||
Speed up Function.prototype.bind a bit by making it a builtin
|
||
https://bugs.webkit.org/show_bug.cgi?id=161879
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/function-bind-inlining.js: Added.
|
||
(assert):
|
||
(test):
|
||
(test2):
|
||
(foo):
|
||
* microbenchmarks/function-bind-no-inlining.js: Added.
|
||
(assert):
|
||
(test):
|
||
(test2):
|
||
(foo):
|
||
|
||
2016-09-12 Saam Barati <sbarati@apple.com>
|
||
|
||
HashMapImpl should take into account m_deleteCount in its load factor and it should be able to rehash the table to be smaller
|
||
https://bugs.webkit.org/show_bug.cgi?id=161640
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* microbenchmarks/map-rehash.js: Added.
|
||
* stress/map-delete.js: Added.
|
||
(assert):
|
||
* stress/map-rehash-2.js: Added.
|
||
(assert):
|
||
* stress/map-rehash.js: Added.
|
||
(assert):
|
||
|
||
2016-09-12 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, fix tests for different libm environments
|
||
https://bugs.webkit.org/show_bug.cgi?id=161857
|
||
|
||
* stress/ftl-arithtan.js:
|
||
|
||
2016-09-12 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] Use GetArrayLength for JSArray.length even when the array type is undecided
|
||
https://bugs.webkit.org/show_bug.cgi?id=161671
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/get-array-length-on-undecided.js: Added.
|
||
|
||
2016-09-12 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Add ArithTan
|
||
https://bugs.webkit.org/show_bug.cgi?id=161857
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/tan.js: Added.
|
||
* stress/arith-tan-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueTanNoArgument):
|
||
(testNoArgument):
|
||
(opaqueAllTypesTan):
|
||
(testAllTypesCall):
|
||
(testTangleTypeCall):
|
||
(testConstant):
|
||
(opaqueTanForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueTanForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(opaqueTanForDCE):
|
||
(testDCE.let.testObject.valueOf):
|
||
(testDCE):
|
||
(testException.opaqueTanWithException):
|
||
(testException):
|
||
* stress/ftl-arithtan.js: Added.
|
||
(foo):
|
||
|
||
2016-09-12 Saam Barati <sbarati@apple.com>
|
||
|
||
MapHash should do constant folding when it has a constant argument and its legal to hash that value
|
||
https://bugs.webkit.org/show_bug.cgi?id=161639
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/map-constant-key.js: Added.
|
||
(assert):
|
||
(test):
|
||
(foo):
|
||
|
||
2016-09-12 Michael Saboff <msaboff@apple.com>
|
||
|
||
JSC test timeout: ChakraCore.yaml/ChakraCore/test/Bugs/bug56026_trycatch.js.default
|
||
https://bugs.webkit.org/show_bug.cgi?id=161863
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* ChakraCore.yaml:
|
||
Disabled Bugs/bug56026_trycatch.js.
|
||
|
||
2016-09-09 Michael Saboff <msaboff@apple.com>
|
||
|
||
Unreviewed, rolling r205759 back in with a fix.
|
||
|
||
The expectation file, JSTests/ChakraCore/test/Lib/tostring.baseline-jsc,
|
||
should be named "toString.baseline-jsc".
|
||
|
||
* ChakraCore/test/Lib/toString.baseline-jsc: Copied from JSTests/ChakraCore/test/Lib/tostring.baseline-jsc.
|
||
* ChakraCore/test/Lib/tostring.baseline-jsc: Removed.
|
||
|
||
2016-09-09 Michael Saboff <msaboff@apple.com>
|
||
|
||
Disable three flakey Chakra Tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=161807
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* ChakraCore.yaml: Disabled the flakey tests
|
||
ChakraCore/test/Array/protoLookup_native.js
|
||
ChakraCore/test/LetConst/delete.js
|
||
ChakraCore/test/fieldopts/fieldhoist_sideeffect.js
|
||
|
||
2016-09-08 Saam Barati <sbarati@apple.com>
|
||
|
||
We should inline operationConvertJSValueToBoolean into JIT code
|
||
https://bugs.webkit.org/show_bug.cgi?id=161729
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/value-to-boolean.js: Added.
|
||
(assert):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
|
||
2016-09-08 Mark Lam <mark.lam@apple.com>
|
||
|
||
REGRESSION (r205569?): 32-bit JSC test timeout: stress/rest-parameter-many-arguments.js.dfg-maximal-flush-validate-no-cjit
|
||
https://bugs.webkit.org/show_bug.cgi?id=161756
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
It looks like the 32-bit JSC bot is just too slow at running this test with the
|
||
dfg-maximal-flush-validate-no-cjit configuration. We'll try excluding that
|
||
configuration.
|
||
|
||
* stress/rest-parameter-many-arguments.js:
|
||
|
||
2016-09-08 JF Bastien <jfbastien@apple.com>
|
||
|
||
Delete older WebAssembly tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=161758
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
They're not running, rely on the older polyfill prototype, and the older code was deleted in: https://trac.webkit.org/changeset/204180
|
||
|
||
* stress/wasm-arithmetic-float32.js: Removed.
|
||
* stress/wasm-arithmetic-float64.js: Removed.
|
||
* stress/wasm-arithmetic-int32.js: Removed.
|
||
* stress/wasm-calls.js: Removed.
|
||
* stress/wasm-comma.js: Removed.
|
||
* stress/wasm-control-flow.js: Removed.
|
||
* stress/wasm-globals.js: Removed.
|
||
* stress/wasm-linear-memory.js: Removed.
|
||
* stress/wasm-locals.js: Removed.
|
||
* stress/wasm-relational.js: Removed.
|
||
* stress/wasm-type-conversion.js: Removed.
|
||
* stress/wasm/arithmetic-float32.wasm: Removed.
|
||
* stress/wasm/arithmetic-float64.wasm: Removed.
|
||
* stress/wasm/arithmetic-int32.wasm: Removed.
|
||
* stress/wasm/calls.wasm: Removed.
|
||
* stress/wasm/comma.wasm: Removed.
|
||
* stress/wasm/control-flow.wasm: Removed.
|
||
* stress/wasm/globals.wasm: Removed.
|
||
* stress/wasm/linear-memory.wasm: Removed.
|
||
* stress/wasm/locals.wasm: Removed.
|
||
* stress/wasm/relational.wasm: Removed.
|
||
* stress/wasm/type-conversion.wasm: Removed.
|
||
|
||
2016-09-08 Per Arne Vollan <pvollan@apple.com>
|
||
|
||
[Win] Exception fuzz tests fail
|
||
https://bugs.webkit.org/show_bug.cgi?id=140928
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Unskip tests.
|
||
|
||
* exceptionFuzz.yaml:
|
||
|
||
2016-09-06 Saam Barati <sbarati@apple.com>
|
||
|
||
ProxyObject's structure should not have ObjectPrototype as its prototype and it should not have special behavior for intercepting "__proto__"
|
||
https://bugs.webkit.org/show_bug.cgi?id=161558
|
||
|
||
Reviewed by Benjamin Poulain.
|
||
|
||
* stress/proxy-get-prototype-of.js:
|
||
* stress/proxy-set-prototype-of.js:
|
||
(let.handler.setPrototypeOf): Deleted.
|
||
* stress/proxy-underscore-proto.js: Added.
|
||
(assert):
|
||
|
||
2016-09-06 Saam Barati <sbarati@apple.com>
|
||
|
||
Make JSMap and JSSet faster
|
||
https://bugs.webkit.org/show_bug.cgi?id=160989
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/dense-set.js: Added.
|
||
(bench):
|
||
* microbenchmarks/large-map-iteration-with-additions.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/large-map-iteration-with-mutation.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/large-map-iteration.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/map-get-get-cse.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/map-has-get-cse-opportunity.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/sparse-set.js: Added.
|
||
(bench):
|
||
* stress/map-cse-correctness.js: Added.
|
||
(assert):
|
||
(testHas):
|
||
(testGet):
|
||
(foo):
|
||
* stress/map-iteration.js: Added.
|
||
(assert):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
(test6):
|
||
(test7):
|
||
(test8):
|
||
(test9):
|
||
(test10):
|
||
(test11):
|
||
(test12):
|
||
(test13):
|
||
(test14):
|
||
(test15):
|
||
(test16):
|
||
(test17):
|
||
(test18):
|
||
|
||
2016-09-06 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] Make ArithClz32 work with Cell arguments
|
||
https://bugs.webkit.org/show_bug.cgi?id=161369
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/arith-clz32-on-various-types.js: Added.
|
||
|
||
2016-09-06 Commit Queue <commit-queue@webkit.org>
|
||
|
||
Unreviewed, rolling out r205504.
|
||
https://bugs.webkit.org/show_bug.cgi?id=161645
|
||
|
||
Broke the iOS device build (Requested by ryanhaddad on
|
||
#webkit).
|
||
|
||
Reverted changeset:
|
||
|
||
"Make JSMap and JSSet faster"
|
||
https://bugs.webkit.org/show_bug.cgi?id=160989
|
||
http://trac.webkit.org/changeset/205504
|
||
|
||
2016-09-06 Saam Barati <sbarati@apple.com>
|
||
|
||
Make JSMap and JSSet faster
|
||
https://bugs.webkit.org/show_bug.cgi?id=160989
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* microbenchmarks/dense-set.js: Added.
|
||
(bench):
|
||
* microbenchmarks/large-map-iteration-with-additions.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/large-map-iteration-with-mutation.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/large-map-iteration.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/map-get-get-cse.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/map-has-get-cse-opportunity.js: Added.
|
||
(bar):
|
||
(foo):
|
||
* microbenchmarks/sparse-set.js: Added.
|
||
(bench):
|
||
* stress/map-cse-correctness.js: Added.
|
||
(assert):
|
||
(testHas):
|
||
(testGet):
|
||
(foo):
|
||
* stress/map-iteration.js: Added.
|
||
(assert):
|
||
(test1):
|
||
(test2):
|
||
(test3):
|
||
(test4):
|
||
(test5):
|
||
(test6):
|
||
(test7):
|
||
(test8):
|
||
(test9):
|
||
(test10):
|
||
(test11):
|
||
(test12):
|
||
(test13):
|
||
(test14):
|
||
(test15):
|
||
(test16):
|
||
(test17):
|
||
(test18):
|
||
|
||
2016-08-31 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Butterflies should be allocated in Auxiliary MarkedSpace instead of CopiedSpace and we should rewrite as much of the GC as needed to make this not a regression
|
||
https://bugs.webkit.org/show_bug.cgi?id=160125
|
||
|
||
Reviewed by Geoffrey Garen and Keith Miller.
|
||
|
||
Most of the things I did properly covered by existing tests, but I found some simple cases of
|
||
unshifting that had sketchy coverage.
|
||
|
||
* stress/array-storage-array-unshift.js: Added.
|
||
* stress/contiguous-array-unshift.js: Added.
|
||
* stress/double-array-unshift.js: Added.
|
||
* stress/int32-array-unshift.js: Added.
|
||
|
||
2016-09-02 Michael Saboff <msaboff@apple.com>
|
||
|
||
Unreviewed fix after importing Chakra test
|
||
|
||
* ChakraCore.yaml: Skipped ChakraCore/test/UnifiedRegex/crazy.js because the original
|
||
test contained tab characters. I removed the tabs before landing. This test depended
|
||
on the tab characters and now fails after they were removed.
|
||
test.
|
||
|
||
2016-09-01 Michael Saboff <msaboff@apple.com>
|
||
|
||
Import Chakra tests to JSC
|
||
https://bugs.webkit.org/show_bug.cgi?id=154697
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Added Chakra tests. All these tests are under Chakra/test. This is the same layout
|
||
for tests in the Chakra tree.
|
||
|
||
Created a ChakraCore.yaml file to be used with run-jsc-stress-tests. This file contains
|
||
the tests that are run when the original Chakra runtests.py script is run. That script
|
||
is the test driver for *nix platforms and does not attempt to run all tests or all
|
||
variations of tests. The runtest.py driver consults rlexe.xml files in each test
|
||
subdirectory to determine the test to run, the options to pass to the test and how to
|
||
determine pass/fail of the test. With runtests.py as the start, tests that didn't
|
||
pass directly where either skipped, with a message describing why or through
|
||
adjustments to the test infrastructure, as described below, where made to pass.
|
||
|
||
The only modification to the test infrastrucutre are:
|
||
|
||
1) Added simple mapping of Chakra expected exception text to JSC expected text in
|
||
test/UnitTestFramework/UnitTestFramework.js. It would make sense to also
|
||
map some JSC specific exception text to more generic text for the cases where
|
||
that text contains indetifier names or other source specific strings and the
|
||
Chakra equivolent exception texts are generic.
|
||
|
||
2) Created JSC specific expected text files where it is clear that the text work
|
||
as expected on JSC but the test output is different. Typically the differences
|
||
fall into three categories, different exception output, different output from
|
||
toString() of a function, slight numeric differences, and test that rely on
|
||
iteration order.
|
||
|
||
3) Stripped the CR's from the CR-LF line terminations of the files.
|
||
|
||
No actual test .js files were modified.
|
||
|
||
* ChakraCore: Added.
|
||
* ChakraCore.yaml: Added.
|
||
* ChakraCore/CONTRIBUTING.md: Added.
|
||
* ChakraCore/LICENSE.txt: Added.
|
||
* ChakraCore/README.md: Added.
|
||
* ChakraCore/THIRD-PARTY-NOTICES.txt: Added.
|
||
* ChakraCore/test: Added this directory and the tests included therein.
|
||
|
||
2016-09-01 JF Bastien <jfbastien@apple.com>
|
||
|
||
GetByIdWithThis/GetByValWithThis should have ValueProfiles so that they can predict their result types
|
||
https://bugs.webkit.org/show_bug.cgi?id=160922
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
Benchmark GetBy{Id,Val}WithThis in monomorphic and polymorphic uses.
|
||
The value profile is used by the calc functions, which do some mild math with the result.
|
||
These benchmarks get ~4% faster with value profiling.
|
||
|
||
* microbenchmarks/super-get-by-id-with-this-monomorphic.js: Added.
|
||
(A):
|
||
(A.prototype.set value):
|
||
(A.prototype.get value):
|
||
(B.prototype.set value):
|
||
(B.prototype.get value):
|
||
(B):
|
||
(const.bench):
|
||
* microbenchmarks/super-get-by-id-with-this-polymorphic.js: Added.
|
||
(A):
|
||
(A.prototype.set value):
|
||
(A.prototype.get value):
|
||
(B.prototype.set value):
|
||
(B.prototype.get value):
|
||
(B):
|
||
(const.bench):
|
||
* microbenchmarks/super-get-by-val-with-this-monomorphic.js: Added.
|
||
(value):
|
||
(A):
|
||
(A.prototype.set v):
|
||
(A.prototype.get v):
|
||
(B.prototype.set v):
|
||
(B.prototype.get v):
|
||
(B):
|
||
(const.bench):
|
||
* microbenchmarks/super-get-by-val-with-this-polymorphic.js: Added.
|
||
(value):
|
||
(A):
|
||
(A.prototype.set v):
|
||
(A.prototype.get v):
|
||
(B.prototype.set v):
|
||
(B.prototype.get v):
|
||
(B):
|
||
(const.bench):
|
||
|
||
2016-09-01 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
arith-abs-on-various-types.js is flaky
|
||
|
||
Unreviewed.
|
||
|
||
* stress/arith-abs-on-various-types.js:
|
||
Two compilation is too small for the worst case.
|
||
Math.abs() can be typed integer->number->untyped if we are very unlucky.
|
||
|
||
2016-09-01 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
ObjectAllocationSinkingPhase::insertOSRHintsForUpdate() fails to emit updated hints in some cases
|
||
https://bugs.webkit.org/show_bug.cgi?id=161492
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
This bug affected function->activation references but not object->object field references,
|
||
because object->object field references are !neededForMaterialization(). So, the object
|
||
test always passed but the activation/function test used to always fail. It passes now.
|
||
|
||
* stress/materialize-activation-referenced-from-phantom-function.js: Added.
|
||
(bar):
|
||
(inc):
|
||
(dec):
|
||
(foo):
|
||
(test):
|
||
* stress/materialize-object-referenced-from-phantom-object.js: Added.
|
||
(bar):
|
||
(foo):
|
||
(test):
|
||
|
||
2016-08-31 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
stress/random-53bit.js.ftl-no-cjit-no-inline-validate sometimes fails
|
||
https://bugs.webkit.org/show_bug.cgi?id=161436
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
The test checks Math.random() correctly produces 53bit random values.
|
||
The test can fail by design, but this should be fairly rare.
|
||
|
||
However, when introducing, we wrap the `test()` with 1e4 to ensure the FTL compilation, and this
|
||
increases the failure rate. By increasing the MAX in the test, we make the failures much more rare case.
|
||
|
||
And we also add getRandomSeed() and setRandomSeed(seed) JSC shell helpers to dump more useful information
|
||
and reproduce the situation easily.
|
||
|
||
* stress/random-53bit.js:
|
||
(test):
|
||
|
||
2016-08-29 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] Improve ArithAbs with polymorphic input
|
||
https://bugs.webkit.org/show_bug.cgi?id=161286
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arith-abs-on-various-types.js: Added.
|
||
New tests.
|
||
|
||
* stress/arith-cos-on-various-types.js:
|
||
* stress/arith-fround-on-various-types.js:
|
||
* stress/arith-log-on-various-types.js:
|
||
* stress/arith-sin-on-various-types.js:
|
||
* stress/arith-sqrt-on-various-types.js:
|
||
Extend the existing tests to cover the DCE case.
|
||
|
||
2016-08-26 Benjamin Poulain <benjamin@webkit.org>
|
||
|
||
[JSC] Implement CompareStrictEq(String, Untyped) in FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=161229
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/compare-strict-eq-on-various-types.js: Added.
|
||
|
||
2016-08-26 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[ES6] newPromiseCapabilities should check the given argument is constructor
|
||
https://bugs.webkit.org/show_bug.cgi?id=161226
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
The arrow function should not be a constructor. So the error should be raised.
|
||
|
||
* stress/new-promise-capabilities-requires-constructor.js: Added.
|
||
(shouldThrow):
|
||
|
||
2016-08-25 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] Clean up the abstract interpreter for cos/sin/sqrt/fround/log
|
||
https://bugs.webkit.org/show_bug.cgi?id=161181
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
Extend the tests to constants.
|
||
Add no-argument cases where needed.
|
||
|
||
* stress/arith-cos-on-various-types.js:
|
||
* stress/arith-fround-on-various-types.js:
|
||
* stress/arith-log-on-various-types.js:
|
||
* stress/arith-sin-on-various-types.js:
|
||
* stress/arith-sqrt-on-various-types.js:
|
||
|
||
2016-08-25 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG][FTL] Implement ES6 Generators in DFG / FTL
|
||
https://bugs.webkit.org/show_bug.cgi?id=152723
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/generator-fib-ftl-and-array.js: Added.
|
||
(fib):
|
||
* stress/generator-fib-ftl-and-object.js: Added.
|
||
(fib):
|
||
* stress/generator-fib-ftl-and-string.js: Added.
|
||
(fib):
|
||
* stress/generator-fib-ftl.js: Added.
|
||
(fib):
|
||
* stress/generator-frame-empty.js: Added.
|
||
(shouldThrow):
|
||
(shouldThrow.fib):
|
||
* stress/generator-reduced-save-point-put-to-scope.js: Added.
|
||
(shouldBe):
|
||
(gen):
|
||
* stress/generator-transfer-register-beyond-mutiple-yields.js: Added.
|
||
(shouldBe):
|
||
(gen):
|
||
|
||
2016-08-25 JF Bastien <jfbastien@apple.com>
|
||
|
||
TryGetById should have a ValueProfile so that it can predict its output type
|
||
https://bugs.webkit.org/show_bug.cgi?id=160921
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* microbenchmarks/try-get-by-id-basic.js: Added.
|
||
(const.check):
|
||
(const.bench.f.const.fooPlusBar.createBuiltin):
|
||
* microbenchmarks/try-get-by-id-polymorphic.js: Added.
|
||
(const.check):
|
||
(fooPlusBar.createBuiltin):
|
||
(bench):
|
||
|
||
2016-08-25 Caio Lima <ticaiolima@gmail.com>
|
||
|
||
NewRegexp should not prevent inlining
|
||
https://bugs.webkit.org/show_bug.cgi?id=154808
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
Added test where functions with NewRegExp can be inlined right now.
|
||
|
||
* stress/new-regex-inline.js: Added.
|
||
(assert):
|
||
(testRegexpInline):
|
||
(toInlineGlobal):
|
||
(withRegexp):
|
||
(inlineRegexpNotGlobal):
|
||
(toInlineRecursive):
|
||
(regexpContainsRecursive):
|
||
|
||
2016-08-24 Benjamin Poulain <benjamin@webkit.org>
|
||
|
||
[JSC] Make FRound work with any type
|
||
https://bugs.webkit.org/show_bug.cgi?id=161129
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/arith-fround-on-various-types.js: Added.
|
||
|
||
2016-08-24 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Unreviewed, roll out r204901, r204897, r204866, r204856, r204854.
|
||
|
||
* stress/array-storage-array-unshift.js: Removed.
|
||
* stress/contiguous-array-unshift.js: Removed.
|
||
* stress/double-array-unshift.js: Removed.
|
||
* stress/int32-array-unshift.js: Removed.
|
||
|
||
2016-08-24 Skachkov Oleksandr <gskachkov@gmail.com>
|
||
|
||
[ES2016] Allow assignment in for-in head in not-strict mode
|
||
https://bugs.webkit.org/show_bug.cgi?id=160955
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/for-in-tests.js:
|
||
(foo):
|
||
(boo):
|
||
(catch):
|
||
|
||
2016-08-23 Benjamin Poulain <benjamin@webkit.org>
|
||
|
||
[JSC] Make ArithLog works with any type
|
||
https://bugs.webkit.org/show_bug.cgi?id=161110
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/arith-log-on-various-types.js: Added.
|
||
|
||
2016-08-23 Saam Barati <sbarati@apple.com>
|
||
|
||
JSC should have a "microbenchmarks" directory instead of "regress" directory
|
||
https://bugs.webkit.org/show_bug.cgi?id=161096
|
||
|
||
Rubber stamped by Mark Lam.
|
||
|
||
* microbenchmarks: Copied from LayoutTests/js/regress/script-tests.
|
||
|
||
2016-08-23 Keith Miller <keith_miller@apple.com>
|
||
|
||
%TypedArray%.prototype.slice needs to check that the source and destination have not been detached.
|
||
https://bugs.webkit.org/show_bug.cgi?id=161031
|
||
<rdar://problem/27937019>
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/typedarray-slice.js:
|
||
(get let):
|
||
(get try):
|
||
(testSpeciesWithTransferring):
|
||
|
||
2016-08-22 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Butterflies should be allocated in Auxiliary MarkedSpace instead of CopiedSpace and we should rewrite as much of the GC as needed to make this not a regression
|
||
https://bugs.webkit.org/show_bug.cgi?id=160125
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
Most of the things I did properly covered by existing tests, but I found some simple cases of
|
||
unshifting that had sketchy coverage.
|
||
|
||
* stress/array-storage-array-unshift.js: Added.
|
||
* stress/contiguous-array-unshift.js: Added.
|
||
* stress/double-array-unshift.js: Added.
|
||
* stress/int32-array-unshift.js: Added.
|
||
|
||
2016-08-23 Keith Miller <keith_miller@apple.com>
|
||
|
||
Update/add new test262 tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=161098
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* test262.yaml:
|
||
* test262/test/annexB/language/statements/for-in/bare-initializer.js: Added.
|
||
* test262/test/annexB/language/statements/for-in/const-initializer.js: Added.
|
||
* test262/test/annexB/language/statements/for-in/let-initializer.js: Added.
|
||
* test262/test/annexB/language/statements/for-in/nonstrict-initializer.js: Added.
|
||
(a):
|
||
* test262/test/annenxB/language/statements/for-in/strict-initializer.js: Added.
|
||
* test262/test/annexB/language/statements/for-in/var-arraybindingpattern-initializer.js: Added.
|
||
* test262/test/annexB/language/statements/for-in/var-objectbindingpattern-initializer.js: Added.
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunction-construct.js: Added.
|
||
(AsyncFunction.async.foo):
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunction-is-extensible.js: Added.
|
||
(AsyncFunction.async):
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunction-is-subclass.js: Added.
|
||
(async.foo):
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunction-length.js: Added.
|
||
(AsyncFunction.async.foo):
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunction-name.js: Added.
|
||
(AsyncFunction.async.foo):
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunction-prototype.js: Added.
|
||
(AsyncFunction.async.foo):
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunction.js: Added.
|
||
(AsyncFunction.async.foo):
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-is-extensible.js: Added.
|
||
(AsyncFunction.async.foo):
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-prototype.js: Added.
|
||
(AsyncFunction.async.foo):
|
||
* test262/test/built-ins/AsyncFunction/AsyncFunctionPrototype-to-string.js: Added.
|
||
(AsyncFunction.async.foo):
|
||
* test262/test/built-ins/AsyncFunction/instance-construct.js: Added.
|
||
(async.foo):
|
||
* test262/test/built-ins/AsyncFunction/instance-has-name.js: Added.
|
||
(async.foo):
|
||
* test262/test/built-ins/AsyncFunction/instance-length.js: Added.
|
||
(async.l0):
|
||
(async.l1):
|
||
(async.l2):
|
||
* test262/test/built-ins/AsyncFunction/instance-prototype-property.js: Added.
|
||
(async.foo):
|
||
* test262/test/built-ins/AsyncFunction/is-not-a-global.js: Added.
|
||
* test262/test/built-ins/DataView/prototype/getFloat32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getFloat32/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/getFloat32/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/getFloat64/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getFloat64/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/getFloat64/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/getInt16/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getInt16/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/getInt16/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/getInt32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getInt32/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/getInt32/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/getInt8/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getInt8/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/getInt8/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/getUint16/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getUint16/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/getUint16/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/getUint32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getUint32/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/getUint32/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/getUint8/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/getUint8/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/getUint8/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/setFloat32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setFloat32/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/setFloat32/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/setFloat32/index-check-before-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setFloat32/range-check-after-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setFloat64/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setFloat64/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/setFloat64/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/setFloat64/index-check-before-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setFloat64/range-check-after-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setInt16/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setInt16/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/setInt16/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/setInt16/index-check-before-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setInt16/range-check-after-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setInt32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setInt32/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/setInt32/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/setInt32/index-check-before-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setInt32/range-check-after-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setInt8/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setInt8/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/setInt8/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/setInt8/index-check-before-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setInt8/range-check-after-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setUint16/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setUint16/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/setUint16/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/setUint16/index-check-before-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setUint16/range-check-after-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setUint32/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setUint32/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/setUint32/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/setUint32/index-check-before-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setUint32/range-check-after-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setUint8/detached-buffer-after-toindex-byteoffset.js: Renamed from JSTests/test262/test/built-ins/DataView/prototype/setUint8/detached-buffer-after-integer-byteoffset.js.
|
||
* test262/test/built-ins/DataView/prototype/setUint8/detached-buffer-before-outofrange-byteoffset.js:
|
||
* test262/test/built-ins/DataView/prototype/setUint8/index-check-before-value-conversion.js:
|
||
* test262/test/built-ins/DataView/prototype/setUint8/range-check-after-value-conversion.js:
|
||
* test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget-bound.js: Added.
|
||
(A):
|
||
* test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget.js: Added.
|
||
(A):
|
||
* test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-self-new.js: Added.
|
||
(A):
|
||
* test262/test/built-ins/Function/prototype/bind/instance-construct-newtarget-self-reflect.js: Added.
|
||
(A):
|
||
* test262/test/built-ins/Function/prototype/toString/AsyncFunction.js: Added.
|
||
(async.f):
|
||
* test262/test/built-ins/Function/prototype/toString/async-function-declaration.js: Added.
|
||
(async.f):
|
||
* test262/test/built-ins/Function/prototype/toString/async-function-expression.js: Added.
|
||
(let.f.async.f):
|
||
* test262/test/built-ins/Function/prototype/toString/async-method.js: Added.
|
||
(let.f.async.f):
|
||
(let.g.async.string_appeared_here):
|
||
* test262/test/built-ins/JSON/parse/reviver-array-define-prop-err.js: Added.
|
||
(defineProperty):
|
||
* test262/test/built-ins/JSON/parse/reviver-array-delete-err.js: Added.
|
||
(deleteProperty):
|
||
* test262/test/built-ins/JSON/parse/reviver-array-length-coerce-err.js: Added.
|
||
(uncoercible.valueOf):
|
||
(get if):
|
||
* test262/test/built-ins/JSON/parse/reviver-array-length-get-err.js: Added.
|
||
(get if):
|
||
* test262/test/built-ins/JSON/parse/reviver-call-err.js: Added.
|
||
* test262/test/built-ins/JSON/parse/reviver-get-name-err.js: Added.
|
||
(thrower):
|
||
* test262/test/built-ins/JSON/parse/reviver-object-define-prop-err.js: Added.
|
||
(defineProperty):
|
||
* test262/test/built-ins/JSON/parse/reviver-object-delete-err.js: Added.
|
||
(deleteProperty):
|
||
* test262/test/built-ins/JSON/parse/reviver-object-own-keys-err.js: Added.
|
||
(ownKeys):
|
||
* test262/test/built-ins/Number/prototype/toExponential/infinity.js: Added.
|
||
* test262/test/built-ins/Number/prototype/toExponential/nan.js: Added.
|
||
* test262/test/built-ins/Number/prototype/toExponential/prop-desc.js: Added.
|
||
* test262/test/built-ins/Number/prototype/toExponential/return-abrupt-tointeger-fractiondigits-symbol.js: Added.
|
||
* test262/test/built-ins/Number/prototype/toExponential/return-abrupt-tointeger-fractiondigits.js: Added.
|
||
(fd1.valueOf):
|
||
(fd2.toString):
|
||
* test262/test/built-ins/Number/prototype/toExponential/return-values.js: Added.
|
||
* test262/test/built-ins/Number/prototype/toExponential/this-is-0-fractiondigits-is-0.js: Added.
|
||
* test262/test/built-ins/Number/prototype/toExponential/this-is-0-fractiondigits-is-not-0.js: Added.
|
||
* test262/test/built-ins/Number/prototype/toExponential/this-type-not-number-or-number-object.js: Added.
|
||
* test262/test/built-ins/Number/prototype/toExponential/tointeger-fractiondigits.js: Added.
|
||
* test262/test/built-ins/Number/prototype/toExponential/undefined-fractiondigits.js: Added.
|
||
* test262/test/built-ins/Object/getOwnPropertyDescriptors/duplicate-keys.js:
|
||
* test262/test/built-ins/Object/getOwnPropertyDescriptors/proxy-undefined-descriptor.js: Added.
|
||
(badProxyHandlers.allowProxyTraps.getOwnPropertyDescriptor):
|
||
(badProxyHandlers.allowProxyTraps.ownKeys):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/boolean-trap-result-extensible-target.js: Removed.
|
||
(setPrototypeOf): Deleted.
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/internals-call-order.js: Added.
|
||
(target.new.Proxy.Object.create.isExtensible):
|
||
(target.new.Proxy.Object.create.getPrototypeOf):
|
||
(target.new.Proxy.Object.create):
|
||
(setPrototypeOf):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-target-not-same-target-prototype.js:
|
||
(setPrototypeOf):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-target-same-target-prototype.js:
|
||
(setPrototypeOf):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/not-extensible-trap-is-false-return-false.js: Removed.
|
||
(setPrototypeOf): Deleted.
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-get-trap.js: Added.
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-isextensible-target.js: Added.
|
||
(isExtensible):
|
||
(setPrototypeOf):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-target-getprototypeof.js: Added.
|
||
(getPrototypeOf):
|
||
(setPrototypeOf):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/return-abrupt-from-trap.js: Renamed from JSTests/test262/test/built-ins/Proxy/setPrototypeOf/return-is-abrupt.js.
|
||
(setPrototypeOf):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/return-is-abrupt.js:
|
||
(setPrototypeOf): Deleted.
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/toboolean-trap-result-false.js: Added.
|
||
(isExtensible):
|
||
(setPrototypeOf):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/toboolean-trap-result-true-target-is-extensible.js: Added.
|
||
(isExtensible):
|
||
(getPrototypeOf):
|
||
(setPrototypeOf):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/trap-is-not-callable.js:
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/trap-is-undefined-or-null.js: Added.
|
||
(setPrototypeOf):
|
||
* test262/test/built-ins/Proxy/setPrototypeOf/trap-is-undefined.js: Removed.
|
||
* test262/test/built-ins/RegExp/lastIndex.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/global/15.10.7.2-1.js: Removed.
|
||
* test262/test/built-ins/RegExp/prototype/global/this-val-invalid-obj.js: Added.
|
||
(get Object):
|
||
* test262/test/built-ins/RegExp/prototype/global/this-val-non-obj.js: Added.
|
||
(get Object):
|
||
* test262/test/built-ins/RegExp/prototype/global/this-val-regexp-prototype.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/ignoreCase/15.10.7.3-1.js: Removed.
|
||
* test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-invalid-obj.js: Added.
|
||
(get Object):
|
||
* test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-non-obj.js: Added.
|
||
(get Object):
|
||
* test262/test/built-ins/RegExp/prototype/ignoreCase/this-val-regexp-prototype.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/lastIndex/15.10.7.5-1.js: Removed.
|
||
* test262/test/built-ins/RegExp/prototype/lastIndex/15.10.7.5-2.js: Removed.
|
||
* test262/test/built-ins/RegExp/prototype/lastIndex/S15.10.7.5_A8.js: Removed.
|
||
(__re.hasOwnProperty): Deleted.
|
||
(__re.propertyIsEnumerable): Deleted.
|
||
(count.0): Deleted.
|
||
* test262/test/built-ins/RegExp/prototype/lastIndex/S15.10.7.5_A9.js: Removed.
|
||
(__re.hasOwnProperty): Deleted.
|
||
(catch): Deleted.
|
||
* test262/test/built-ins/RegExp/prototype/multiline/15.10.7.4-1.js: Removed.
|
||
* test262/test/built-ins/RegExp/prototype/multiline/this-val-invalid-obj.js: Added.
|
||
(get Object):
|
||
* test262/test/built-ins/RegExp/prototype/multiline/this-val-non-obj.js: Added.
|
||
(get Object):
|
||
* test262/test/built-ins/RegExp/prototype/multiline/this-val-regexp-prototype.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/no-regexp-matcher.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/source/15.10.7.1-1.js: Removed.
|
||
* test262/test/built-ins/RegExp/prototype/source/this-val-invalid-obj.js: Added.
|
||
(get Object):
|
||
* test262/test/built-ins/RegExp/prototype/source/this-val-non-obj.js: Added.
|
||
(get Object):
|
||
* test262/test/built-ins/RegExp/prototype/source/this-val-regexp-prototype.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/source/value-empty.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/source/value-line-terminator.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/source/value-u.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/source/value.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/sticky/this-val-invalid-obj.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/sticky/this-invalid-obj.js.
|
||
* test262/test/built-ins/RegExp/prototype/sticky/this-val-non-obj.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/sticky/this-non-obj.js.
|
||
* test262/test/built-ins/RegExp/prototype/sticky/this-val-regexp-prototype.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/sticky/this-val-regexp.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/sticky/this-regexp.js.
|
||
* test262/test/built-ins/RegExp/prototype/unicode/this-val-invalid-obj.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/unicode/this-invald-obj.js.
|
||
* test262/test/built-ins/RegExp/prototype/unicode/this-val-non-obj.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/unicode/this-non-obj.js.
|
||
* test262/test/built-ins/RegExp/prototype/unicode/this-val-regexp-prototype.js: Added.
|
||
* test262/test/built-ins/RegExp/prototype/unicode/this-val-regexp.js: Renamed from JSTests/test262/test/built-ins/RegExp/prototype/unicode/this-regexp.js.
|
||
* test262/test/built-ins/String/numeric-properties.js: Added.
|
||
* test262/test/intl402/DateTimeFormat/prototype/formatToParts/date-is-infinity-throws.js: Added.
|
||
* test262/test/intl402/DateTimeFormat/prototype/formatToParts/date-is-nan-throws.js: Added.
|
||
* test262/test/intl402/DateTimeFormat/prototype/formatToParts/formatToParts.js: Added.
|
||
* test262/test/intl402/DateTimeFormat/prototype/formatToParts/length.js: Added.
|
||
* test262/test/intl402/DateTimeFormat/prototype/formatToParts/main.js: Added.
|
||
(reduce):
|
||
(compareFTPtoFormat):
|
||
* test262/test/intl402/DateTimeFormat/prototype/formatToParts/name.js: Added.
|
||
* test262/test/intl402/DateTimeFormat/prototype/formatToParts/return-abrupt-tonumber-date.js: Added.
|
||
(obj1.valueOf):
|
||
(obj2.toString):
|
||
* test262/test/intl402/DateTimeFormat/prototype/formatToParts/this-has-not-internal-throws.js: Added.
|
||
* test262/test/intl402/DateTimeFormat/prototype/formatToParts/this-is-not-object-throws.js: Added.
|
||
* test262/test/intl402/NumberFormat/prototype/formatToParts/formatToParts.js: Added.
|
||
* test262/test/intl402/NumberFormat/prototype/formatToParts/length.js: Added.
|
||
* test262/test/intl402/NumberFormat/prototype/formatToParts/main.js: Added.
|
||
(reduce):
|
||
(compareFTPtoFormat):
|
||
* test262/test/intl402/NumberFormat/prototype/formatToParts/name.js: Added.
|
||
* test262/test/intl402/NumberFormat/prototype/formatToParts/return-abrupt-tonumber.js: Added.
|
||
(obj1.valueOf):
|
||
(obj2.toString):
|
||
* test262/test/intl402/NumberFormat/prototype/formatToParts/this-has-not-internal-throws.js: Added.
|
||
* test262/test/intl402/NumberFormat/prototype/formatToParts/this-is-not-object-throws.js: Added.
|
||
* test262/test/language/arguments-object/10.6-10-c-ii-2-s.js:
|
||
(foo): Deleted.
|
||
* test262/test/language/arguments-object/unmapped/via-params-dflt.js: Added.
|
||
(dflt):
|
||
* test262/test/language/arguments-object/unmapped/via-params-dstr.js: Added.
|
||
(dstr):
|
||
* test262/test/language/arguments-object/unmapped/via-params-rest.js: Added.
|
||
(rest):
|
||
* test262/test/language/arguments-object/unmapped/via-strict.js: Renamed from JSTests/test262/test/language/arguments-object/10.6-10-c-ii-2-s.js.
|
||
(foo):
|
||
* test262/test/language/block-scope/syntax/redeclaration-global/allowed-to-redeclare-function-declaration-with-function-declaration.js:
|
||
(f): Deleted.
|
||
* test262/test/language/eval-code/direct/super-call-arrow.js: Added.
|
||
(catch):
|
||
* test262/test/language/eval-code/direct/super-call-fn.js: Added.
|
||
(f):
|
||
* test262/test/language/eval-code/direct/super-call.js: Added.
|
||
(catch):
|
||
* test262/test/language/eval-code/direct/super-prop-arrow.js: Added.
|
||
(catch):
|
||
* test262/test/language/eval-code/direct/super-prop-method.js: Added.
|
||
(o.method):
|
||
* test262/test/language/eval-code/direct/super-prop.js: Added.
|
||
(catch):
|
||
* test262/test/language/eval-code/indirect/super-call.js: Added.
|
||
(catch):
|
||
(try.m):
|
||
* test262/test/language/eval-code/indirect/super-prop.js: Added.
|
||
(catch):
|
||
(try.m):
|
||
* test262/test/language/expressions/arrow-function/params-trailing-comma-length.js: Added.
|
||
(assert.sameValue):
|
||
* test262/test/language/expressions/arrow-function/params-trailing-comma.js: Added.
|
||
* test262/test/language/expressions/async-arrow-function/arrow-returns-promise.js: Added.
|
||
(p.then):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-NSPL-with-USD.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-arguments-in-formal-parameters.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-await-in-formals-default.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-await-in-formals.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-body-contains-super-call.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-body-contains-super-property.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-duplicate-parameters.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-eval-in-formal-parameters.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-body-duplicate.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-contains-super-call.js: Added.
|
||
(async.foo.super):
|
||
* test262/test/language/expressions/async-arrow-function/early-errors-arrow-formals-contains-super-property.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-NSPL-with-USD.js: Added.
|
||
(async):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-binding-identifier-arguments.js: Added.
|
||
(async.arguments):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-binding-identifier-eval.js: Added.
|
||
(async.eval):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-body-contains-super-call.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-body-contains-super-property.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-eval-in-formal-parameters.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-formals-body-duplicate.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-formals-contains-super-call.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-formals-contains-super-property.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/async-function/early-errors-expression-not-simple-assignment-target.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/async-function/expression-returns-promise.js: Added.
|
||
(p.async):
|
||
* test262/test/language/expressions/async-function/syntax-expression-is-PrimaryExpression.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/await-BindingIdentifier-in-global.js: Added.
|
||
(async.await):
|
||
* test262/test/language/expressions/await/await-BindingIdentifier-nested.js: Added.
|
||
(async.foo.await):
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/await-awaits-thenable-not-callable.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/await-awaits-thenables-that-throw.js: Added.
|
||
(thenable.then):
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/await-awaits-thenables.js: Added.
|
||
(thenable.then):
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/await-in-function.js: Added.
|
||
(foo):
|
||
* test262/test/language/expressions/await/await-in-generator.js: Added.
|
||
(foo):
|
||
* test262/test/language/expressions/await/await-in-global.js: Added.
|
||
* test262/test/language/expressions/await/await-in-nested-function.js: Added.
|
||
(async.foo.bar):
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/await-in-nested-generator.js: Added.
|
||
(async.foo.bar):
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/await-throws-rejections.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/early-errors-await-not-simple-assignment-target.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/no-operand.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/syntax-await-has-UnaryExpression-with-MultiplicativeExpression.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/await/syntax-await-has-UnaryExpression.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/call/trailing-comma.js: Added.
|
||
(foo):
|
||
* test262/test/language/expressions/function/arguments-with-arguments-fn.js: Added.
|
||
(f):
|
||
* test262/test/language/expressions/function/arguments-with-arguments-lex.js: Added.
|
||
(f):
|
||
* test262/test/language/expressions/function/params-trailing-comma-arguments.js: Added.
|
||
(f1):
|
||
(f2):
|
||
* test262/test/language/expressions/function/params-trailing-comma-length.js: Added.
|
||
(assert.sameValue):
|
||
* test262/test/language/expressions/function/params-trailing-comma.js: Added.
|
||
* test262/test/language/expressions/generators/arguments-with-arguments-fn.js: Added.
|
||
(g):
|
||
* test262/test/language/expressions/generators/arguments-with-arguments-lex.js: Added.
|
||
(g):
|
||
* test262/test/language/expressions/generators/params-trailing-comma-arguments.js: Added.
|
||
(f1):
|
||
(f2):
|
||
* test262/test/language/expressions/generators/params-trailing-comma-length.js: Added.
|
||
(assert.sameValue):
|
||
* test262/test/language/expressions/generators/params-trailing-comma.js: Added.
|
||
* test262/test/language/expressions/object/computed-property-evaluation-order.js: Added.
|
||
* test262/test/language/expressions/object/method-definition/async-super-call-body.js: Added.
|
||
(sup.method):
|
||
(child.async.method):
|
||
* test262/test/language/expressions/object/method-definition/async-super-call-param.js: Added.
|
||
(sup.method):
|
||
(child.async.method.x.super.method):
|
||
* test262/test/language/expressions/object/method-definition/early-errors-object-method-NSPL-with-USD.js: Added.
|
||
(foo):
|
||
* test262/test/language/expressions/object/method-definition/early-errors-object-method-arguments-in-formal-parameters.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/object/method-definition/early-errors-object-method-await-in-formals-default.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/object/method-definition/early-errors-object-method-await-in-formals.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/object/method-definition/early-errors-object-method-body-contains-super-call.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/object/method-definition/early-errors-object-method-duplicate-parameters.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/object/method-definition/early-errors-object-method-eval-in-formal-parameters.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/object/method-definition/early-errors-object-method-formals-body-duplicate.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/expressions/object/method-definition/early-errors-object-method-formals-contains-super-call.js: Added.
|
||
(async.foo.foo.super):
|
||
* test262/test/language/expressions/object/method-definition/object-method-returns-promise.js: Added.
|
||
(obj.async.method):
|
||
* test262/test/language/expressions/object/method-definition/params-trailing-comma-arguments.js: Added.
|
||
(obj.f1):
|
||
(obj.f2):
|
||
* test262/test/language/expressions/object/method-definition/params-trailing-comma-length.js: Added.
|
||
(obj.one):
|
||
(obj.two):
|
||
* test262/test/language/expressions/object/method-definition/params-trailing-comma-rest.js: Added.
|
||
(m):
|
||
* test262/test/language/expressions/object/method-definition/params-trailing-comma.js: Added.
|
||
(one):
|
||
(two):
|
||
* test262/test/language/global-code/decl-func-dup.js: Renamed from JSTests/test262/test/language/block-scope/syntax/redeclaration-global/allowed-to-redeclare-function-declaration-with-function-declaration.js.
|
||
(f):
|
||
* test262/test/language/global-code/decl-func.js: Added.
|
||
(brandNew):
|
||
* test262/test/language/global-code/decl-lex-configurable-global.js: Added.
|
||
* test262/test/language/global-code/decl-lex-deletion.js: Added.
|
||
(test262class):
|
||
* test262/test/language/global-code/decl-lex-restricted-global.js: Added.
|
||
* test262/test/language/global-code/decl-lex.js: Added.
|
||
(test262class):
|
||
* test262/test/language/global-code/decl-var.js: Added.
|
||
* test262/test/language/global-code/return.js: Added.
|
||
* test262/test/language/global-code/script-decl-func-dups.js: Added.
|
||
* test262/test/language/global-code/script-decl-func-err-non-configurable.js: Added.
|
||
* test262/test/language/global-code/script-decl-func-err-non-extensible.js: Added.
|
||
* test262/test/language/global-code/script-decl-func.js: Added.
|
||
* test262/test/language/global-code/script-decl-lex-deletion.js: Added.
|
||
* test262/test/language/global-code/script-decl-lex-lex.js: Added.
|
||
(test262Class):
|
||
* test262/test/language/global-code/script-decl-lex-restricted-global.js: Added.
|
||
* test262/test/language/global-code/script-decl-lex-var.js: Added.
|
||
(test262Fn):
|
||
* test262/test/language/global-code/script-decl-lex.js: Added.
|
||
* test262/test/language/global-code/script-decl-var-collision.js: Added.
|
||
(test262Class):
|
||
* test262/test/language/global-code/script-decl-var-err.js: Added.
|
||
* test262/test/language/global-code/script-decl-var.js: Added.
|
||
* test262/test/language/global-code/super-call-arrow.js: Added.
|
||
* test262/test/language/global-code/super-call.js: Added.
|
||
* test262/test/language/global-code/super-prop-arrow.js: Added.
|
||
* test262/test/language/global-code/super-prop.js: Added.
|
||
* test262/test/language/global-code/yield-non-strict.js: Added.
|
||
(catch):
|
||
* test262/test/language/global-code/yield-strict.js: Added.
|
||
* test262/test/language/literals/regexp/lastIndex.js: Added.
|
||
* test262/test/language/literals/regexp/u-unicode-esc-bounds.js:
|
||
* test262/test/language/literals/regexp/y-assertion-start.js: Added.
|
||
* test262/test/language/module-code/instn-star-err-not-found-faulty_FIXTURE.js:
|
||
* test262/test/language/module-code/instn-star-err-not-found.js:
|
||
* test262/test/language/module-code/namespace/internals/get-own-property-str-found-init.js:
|
||
* test262/test/language/module-code/parse-err-return.js: Added.
|
||
* test262/test/language/module-code/parse-err-yield.js: Added.
|
||
* test262/test/language/rest-parameters/params-trailing-comma-rest.js: Added.
|
||
* test262/test/language/statements/async-function/declaration-returns-promise.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-NSPL-with-USD.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-arguments-in-formal-parameters.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-await-in-formals-default.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-await-in-formals.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-binding-identifier-arguments.js: Added.
|
||
(async.arguments):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-binding-identifier-eval.js: Added.
|
||
(async.eval):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-body-contains-super-call.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-body-contains-super-property.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-duplicate-parameters.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-eval-in-formal-parameters.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-formals-body-duplicate.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-formals-contains-super-call.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-declaration-formals-contains-super-property.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/early-errors-no-async-generator.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/evaluation-body-that-returns-after-await.js: Added.
|
||
(async.foo):
|
||
(foo.then):
|
||
* test262/test/language/statements/async-function/evaluation-body-that-returns.js: Added.
|
||
(async.foo):
|
||
(foo.then):
|
||
* test262/test/language/statements/async-function/evaluation-body-that-throws-after-await.js: Added.
|
||
(async.foo):
|
||
(foo.then):
|
||
* test262/test/language/statements/async-function/evaluation-body-that-throws.js: Added.
|
||
(async.foo):
|
||
(foo.then):
|
||
* test262/test/language/statements/async-function/evaluation-body.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/evaluation-default-that-throws.js: Added.
|
||
(async.foo):
|
||
(foo.then):
|
||
* test262/test/language/statements/async-function/evaluation-mapped-arguments.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/evaluation-this-value-global.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/evaluation-this-value-passed.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/evaluation-unmapped-arguments.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/syntax-declaration-line-terminators-allowed.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/syntax-declaration-no-line-terminator.js: Added.
|
||
(async.foo):
|
||
* test262/test/language/statements/async-function/syntax-declaration.js: Added.
|
||
(async.foo):
|
||
(foo.then):
|
||
* test262/test/language/statements/class/definition/class-method-returns-promise.js: Added.
|
||
(Foo.prototype.async.method):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/early-errors-class-method-NSPL-with-USD.js: Added.
|
||
(Foo.prototype.async.bar):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/early-errors-class-method-arguments-in-formal-parameters.js: Added.
|
||
(Foo.prototype.async.foo):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/early-errors-class-method-await-in-formals-default.js: Added.
|
||
(Foo.prototype.async.foo):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/early-errors-class-method-await-in-formals.js: Added.
|
||
(Foo.prototype.async.foo):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/early-errors-class-method-body-contains-super-call.js: Added.
|
||
(Foo.prototype.async.foo):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/early-errors-class-method-duplicate-parameters.js: Added.
|
||
(Foo.prototype.async.foo):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/early-errors-class-method-eval-in-formal-parameters.js: Added.
|
||
(Foo.prototype.async.foo):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/early-errors-class-method-formals-body-duplicate.js: Added.
|
||
(Foo.async.foo):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/early-errors-class-method-formals-contains-super-call.js: Added.
|
||
(Foo.prototype.async.foo):
|
||
(Foo):
|
||
* test262/test/language/statements/class/definition/methods-async-super-call-body.js: Added.
|
||
(A.prototype.async.method):
|
||
(A):
|
||
(B.prototype.async.method):
|
||
(B):
|
||
* test262/test/language/statements/class/definition/methods-async-super-call-param.js: Added.
|
||
(A.prototype.async.method):
|
||
(A):
|
||
(B.prototype.async.method):
|
||
(B):
|
||
* test262/test/language/statements/class/definition/params-trailing-comma-arguments.js: Added.
|
||
(C.prototype.f1):
|
||
(C.prototype.f2):
|
||
(C):
|
||
* test262/test/language/statements/class/definition/params-trailing-comma-length.js: Added.
|
||
(C.prototype.one):
|
||
(C.prototype.two):
|
||
(C):
|
||
* test262/test/language/statements/class/definition/params-trailing-comma-rest.js: Added.
|
||
(C.prototype.m):
|
||
(C):
|
||
* test262/test/language/statements/class/definition/params-trailing-comma.js: Added.
|
||
(C.prototype.one):
|
||
(C.prototype.two):
|
||
(C):
|
||
* test262/test/language/statements/function/arguments-with-arguments-fn.js: Added.
|
||
(f):
|
||
* test262/test/language/statements/function/arguments-with-arguments-lex.js: Added.
|
||
(f):
|
||
* test262/test/language/statements/function/params-trailing-comma-arguments.js: Added.
|
||
(f1):
|
||
(f2):
|
||
* test262/test/language/statements/function/params-trailing-comma-length.js: Added.
|
||
(one):
|
||
(two):
|
||
* test262/test/language/statements/function/params-trailing-comma.js: Added.
|
||
(one):
|
||
(two):
|
||
* test262/test/language/statements/generators/arguments-with-arguments-fn.js: Added.
|
||
(g):
|
||
* test262/test/language/statements/generators/arguments-with-arguments-lex.js: Added.
|
||
(g):
|
||
* test262/test/language/statements/generators/params-trailing-comma-length.js: Added.
|
||
(one):
|
||
(two):
|
||
* test262/test/language/statements/generators/params-trailing-comma.js: Added.
|
||
(one):
|
||
(two):
|
||
* test262/test262-Revision.txt:
|
||
|
||
2016-08-23 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] Make Math.cos() and Math.sin() work with any argument type
|
||
https://bugs.webkit.org/show_bug.cgi?id=161069
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/arith-cos-on-various-types.js: Added.
|
||
* stress/arith-sin-on-various-types.js: Added.
|
||
|
||
2016-08-23 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[ES6] Module namespace object's Symbol.iterator method should only accept module namespace objects
|
||
https://bugs.webkit.org/show_bug.cgi?id=161097
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* test262.yaml:
|
||
|
||
2016-08-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[ES6] Modules' `export default function/class` should be declaration
|
||
https://bugs.webkit.org/show_bug.cgi?id=160499
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Add several module tests. And flip the failed tests flags in test262.
|
||
|
||
* modules/export-default-function-name-in-assignment-expression.js: Added.
|
||
(export.default):
|
||
* modules/export-default-function-name-in-class-declaration.js: Added.
|
||
* modules/export-default-function-name-in-function-declaration.js: Added.
|
||
(export.default):
|
||
* modules/export-default-function-name-in-generator-declaration.js: Added.
|
||
(export.default):
|
||
* stress/method-name.js: Added.
|
||
(testSyntax):
|
||
(testSyntaxError):
|
||
(testSyntaxError.Hello.prototype.hello.hello):
|
||
(testSyntaxError.Hello):
|
||
(SyntaxError.Unexpected.identifier.string_appeared_here.Expected.an.opening.string_appeared_here.before.a.method.testSyntaxError.let.obj.hello.hello):
|
||
(testSyntaxError.Hello.prototype.get hello):
|
||
(testSyntaxError.Hello.prototype.set hello):
|
||
* test262.yaml:
|
||
|
||
2016-08-22 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[ES6] Module should not allow HTML comments
|
||
https://bugs.webkit.org/show_bug.cgi?id=161041
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/html-comments.js: Added.
|
||
(shouldThrow):
|
||
* test262.yaml:
|
||
|
||
2016-08-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Should not fixup AnyIntUse in 32_64
|
||
https://bugs.webkit.org/show_bug.cgi?id=161029
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* typeProfiler/int52-dfg.js: Added.
|
||
(test):
|
||
|
||
2016-08-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
Unreviewed, rolling out r204697
|
||
https://bugs.webkit.org/show_bug.cgi?id=161029
|
||
|
||
* typeProfiler/int52-dfg.js: Removed.
|
||
(test): Deleted.
|
||
* typeProfiler/number-filter-dfg.js: Removed.
|
||
(test): Deleted.
|
||
|
||
2016-08-21 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[DFG] Should not fixup AnyIntUse in 32_64
|
||
https://bugs.webkit.org/show_bug.cgi?id=161029
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* typeProfiler/int52-dfg.js: Added.
|
||
(test):
|
||
* typeProfiler/number-filter-dfg.js: Added.
|
||
(test):
|
||
|
||
2016-08-19 Benjamin Poulain <bpoulain@apple.com>
|
||
|
||
[JSC] ArithSqrt should work with any argument type
|
||
https://bugs.webkit.org/show_bug.cgi?id=160954
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/arith-sqrt-on-various-types.js: Added.
|
||
(let.validInputTypedTestCases.validInputTestCases.map):
|
||
(isIdentical):
|
||
(opaqueAllTypesSqrt):
|
||
(testAllTypesCall):
|
||
(testSingleTypeCall):
|
||
(opaqueSqrtForSideEffects):
|
||
(testSideEffect.let.testObject.valueOf):
|
||
(testSideEffect):
|
||
(opaqueSqrtForCSE):
|
||
(testCSE.let.testObject.valueOf):
|
||
(testCSE):
|
||
(testException.opaqueSqrtWithException):
|
||
(testException):
|
||
|
||
2016-08-19 Joseph Pecoraro <pecoraro@apple.com>
|
||
|
||
Make custom Error properties (line, column, sourceURL) configurable and writable
|
||
https://bugs.webkit.org/show_bug.cgi?id=160984
|
||
<rdar://problem/27905979>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/native-error-properties.js: Added.
|
||
(assert):
|
||
(shouldNotThrow):
|
||
|
||
(checkEmptyErrorPropertiesDescriptors):
|
||
(checkNonEmptyErrorPropertiesDescriptors):
|
||
The spec only describes the "message" property, so
|
||
ensure it has the right descriptor attributes.
|
||
|
||
(checkErrorPropertiesWritable):
|
||
Ensure common error property names are writable.
|
||
In strict mode this would have thrown an exception
|
||
if they were readonly.
|
||
|
||
2016-08-18 Mark Lam <mark.lam@apple.com>
|
||
|
||
ScopedArguments is using the wrong owner object for a write barrier.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160976
|
||
<rdar://problem/27328506>
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/scoped-arguments-write-barrier-should-be-on-scope-object.js: Added.
|
||
|
||
2016-08-17 JF Bastien <jfbastien@apple.com>
|
||
|
||
We allow assignments to const variables when in a for-in/for-of loop
|
||
https://bugs.webkit.org/show_bug.cgi?id=156673
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/for-in-of-const.js: Added.
|
||
(expect_nothrow):
|
||
(expect_throw):
|
||
(capture):
|
||
|
||
2016-08-17 Mark Lam <mark.lam@apple.com>
|
||
|
||
Remove an invalid assertion in the DFG backend's GetById emitter.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160925
|
||
<rdar://problem/27248961>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/dfg-get-by-id-should-not-assert-non-null-prediction.js: Added.
|
||
|
||
2016-08-16 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Unreviewed, rolling out r204464.
|
||
|
||
This is no longer needed after r204495.
|
||
|
||
Reverted changeset:
|
||
|
||
"Skip failing test mozilla/ecma/LexicalConventions/7.7.3.js"
|
||
https://bugs.webkit.org/show_bug.cgi?id=160662
|
||
http://trac.webkit.org/changeset/204464
|
||
|
||
2016-08-15 Ryan Haddad <ryanhaddad@apple.com>
|
||
|
||
Skip failing test mozilla/ecma/LexicalConventions/7.7.3.js
|
||
https://bugs.webkit.org/show_bug.cgi?id=160662
|
||
|
||
Unreviewed test gardening.
|
||
|
||
* mozilla/ecma/LexicalConventions/7.7.3.js:
|
||
|
||
2016-08-14 Skachkov Oleksandr <gskachkov@gmail.com>
|
||
|
||
[2016] Set correct status for test262 after implementation of Object.values&Object.entries
|
||
https://bugs.webkit.org/show_bug.cgi?id=160844
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Patch contains fix statuses of specs in the test262 test collection after implementation of
|
||
Object.values and Object.entries functions. Also patch contains small fixes in tests of the
|
||
tests for Object.values/entries functions.
|
||
|
||
* stress/object-entries.js:
|
||
(Object.getOwnPropertyDescriptor):
|
||
* stress/object-values.js:
|
||
(Object.getOwnPropertyDescriptor):
|
||
* test262.yaml:
|
||
|
||
2016-08-12 Saam Barati <sbarati@apple.com>
|
||
|
||
Inline store loop for CopyRest in DFG and FTL for certain array modes
|
||
https://bugs.webkit.org/show_bug.cgi?id=159612
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/rest-parameter-having-a-bad-time.js: Added.
|
||
* stress/rest-parameter-many-arguments.js: Added.
|
||
* stress/rest-parameter-various-types.js: Added.
|
||
|
||
2016-08-12 Skachkov Oleksandr <gskachkov@gmail.com>
|
||
|
||
[ES2016] Implement Object.entries
|
||
https://bugs.webkit.org/show_bug.cgi?id=160412
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Patch contains tests for Object.entries function and
|
||
fix of wrong tests for Object.values function.
|
||
|
||
* stress/object-entries.js:
|
||
(compare):
|
||
(string_appeared_here.forEach):
|
||
(const.getInvokedFunctions.):
|
||
(const.getInvokedFunctions):
|
||
(Array.prototype.push):
|
||
* stress/object-values.js:
|
||
|
||
2016-08-11 Mark Lam <mark.lam@apple.com>
|
||
|
||
OverridesHasInstance should not branch across register allocations.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160792
|
||
<rdar://problem/27361778>
|
||
|
||
Reviewed by Benjamin Poulain.
|
||
|
||
* stress/OverrideHasInstance-should-not-branch-across-register-allocations.js: Added.
|
||
|
||
2016-08-11 Mark Lam <mark.lam@apple.com>
|
||
|
||
The jsc shell's Element host constructor should throw if it fails to construct an object.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160773
|
||
<rdar://problem/27328608>
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* stress/generational-opaque-roots.js:
|
||
|
||
2016-08-11 Mark Lam <mark.lam@apple.com>
|
||
|
||
Disallow synchronous sweeping for eden GCs.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160716
|
||
|
||
Reviewed by Geoffrey Garen.
|
||
|
||
* stress/eden-gc-with-retired-blocks.js: Added.
|
||
- This test is just in case we add back support for eden GCs with synchronous
|
||
sweeping in the future.
|
||
|
||
2016-08-10 Michael Saboff <msaboff@apple.com>
|
||
|
||
Baseline GetByVal and PutByVal for cache ID stubs need to handle exceptions
|
||
https://bugs.webkit.org/show_bug.cgi?id=160749
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
New test that causes baseline GetByValWithCachedId and PutByValWithCachedId
|
||
stubs to be generated and then throws exceptions for those stub to handle
|
||
to verify that they are properly handled.
|
||
|
||
* stress/regress-160749.js: Added.
|
||
(testCachedGetByVal.):
|
||
(testCachedGetByVal.get for):
|
||
(testCachedGetByVal):
|
||
(testCachedPutByVal.):
|
||
(testCachedPutByVal.set for):
|
||
(testCachedPutByVal):
|
||
|
||
2016-08-10 Mark Lam <mark.lam@apple.com>
|
||
|
||
DFG's flushForTerminal() needs to add PhantomLocals for bytecode live locals.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160755
|
||
<rdar://problem/27488507>
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/need-bytecode-liveness-for-unreachable-blocks-at-dfg-time.js: Added.
|
||
|
||
2016-08-09 Skachkov Oleksandr <gskachkov@gmail.com>
|
||
|
||
[ES2016] Implement Object.values
|
||
https://bugs.webkit.org/show_bug.cgi?id=160410
|
||
|
||
Reviewed by Saam Barati, Yusuke Suzuki.
|
||
|
||
* stress/object-values.js: Added.
|
||
(compare):
|
||
(string_appeared_here.forEach):
|
||
(const.getInvokedFunctions.):
|
||
(const.getInvokedFunctions):
|
||
(Array.prototype.push):
|
||
|
||
2016-08-09 Saam Barati <sbarati@apple.com>
|
||
|
||
JSBoundFunction should lazily generate its name string
|
||
https://bugs.webkit.org/show_bug.cgi?id=160678
|
||
<rdar://problem/27043194>
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/bound-function-lazy-name-generation.js: Added.
|
||
(assert):
|
||
(test.let.f):
|
||
(test.f):
|
||
(test):
|
||
|
||
2016-08-08 Mark Lam <mark.lam@apple.com>
|
||
|
||
ASSERTION FAILED: hasInlineStorage() in JSFinalObject::visitChildren().
|
||
https://bugs.webkit.org/show_bug.cgi?id=160666
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* stress/object-constructor-should-be-new-target-aware.js:
|
||
|
||
2016-08-07 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[ES6] Module namespace object should not allow unset IC
|
||
https://bugs.webkit.org/show_bug.cgi?id=160553
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/namespace-object-get-property.js: Added.
|
||
(import.as.ns.from.string_appeared_here.shouldThrow):
|
||
* modules/namespace-object-has-property.js: Added.
|
||
* modules/namespace-object-inline-caching.js: Added.
|
||
(import.as.A.from.string_appeared_here.import.as.B.from.string_appeared_here.lookup):
|
||
(shouldBe.lookup.lookup):
|
||
(shouldBe.lookup):
|
||
* modules/namespace-object-inline-caching/a.js: Added.
|
||
* modules/namespace-object-inline-caching/b.js: Added.
|
||
* modules/namespace-object-try-get.js: Added.
|
||
(import.as.ns.from.string_appeared_here.tryGetByIdText):
|
||
(tryGetByIdTextStrict):
|
||
* modules/namespace-object-typed-array-fast-path.js: Added.
|
||
* test262.yaml:
|
||
|
||
2016-08-05 Saam Barati <sbarati@apple.com>
|
||
|
||
various math operations don't properly check for an exception after calling toNumber() on the lhs
|
||
https://bugs.webkit.org/show_bug.cgi?id=160154
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/to-number-throws-correct-exception.js: Added.
|
||
(test.let.test.runTest.):
|
||
(test.let.test.runTest.get f):
|
||
(test.let.test.runTest):
|
||
(test.let.test):
|
||
(test):
|
||
(test2.runTest.):
|
||
(test2.runTest.get f):
|
||
(test2.runTest):
|
||
(test2):
|
||
|
||
2016-08-05 Saam Barati <sbarati@apple.com>
|
||
|
||
Assertion failure when accessing TDZ variable in catch through eval
|
||
https://bugs.webkit.org/show_bug.cgi?id=160554
|
||
|
||
Reviewed by Mark Lam and Keith Miller.
|
||
|
||
* stress/catch-variables-under-tdz.js: Added.
|
||
(test):
|
||
|
||
2016-08-04 Yusuke Suzuki <utatane.tea@gmail.com>
|
||
|
||
[ES6] JSModuleNamespaceObject's Symbol.iterator function should have name
|
||
https://bugs.webkit.org/show_bug.cgi?id=160549
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
* modules/namespace-object-symbol-iterator-name.js: Added.
|
||
* test262.yaml:
|
||
|
||
2016-08-04 Keith Miller <keith_miller@apple.com>
|
||
|
||
ASSERTION FAILED: !hasInstanceValueNode->isCellConstant() || defaultHasInstanceFunction == hasInstanceValueNode->asCell()
|
||
https://bugs.webkit.org/show_bug.cgi?id=160562
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
* stress/instanceof-late-constant-folding.js: Added.
|
||
(Constructor):
|
||
(value):
|
||
(body):
|
||
|
||
2016-08-04 Caitlin Potter <caitp@igalia.com>
|
||
|
||
[JSC] fix generator-syntax.js JSTest again after yield grammar fix
|
||
https://bugs.webkit.org/show_bug.cgi?id=160550
|
||
|
||
Reviewed by Yusuke Suzuki.
|
||
|
||
* stress/generator-syntax.js:
|
||
(testYieldBindingIdentifier):
|
||
|
||
2016-08-03 Caitlin Potter <caitp@igalia.com>
|
||
|
||
Clarify SyntaxErrors around yield and unskip tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=158460
|
||
|
||
Reviewed by Saam Barati.
|
||
|
||
Fix and unskip tests which erroneously asserted that `yield` is not a
|
||
valid BindingIdentifier, and improve error message for YieldExpressions
|
||
occuring in Arrow formal parameters.
|
||
|
||
* stress/generator-syntax.js:
|
||
* stress/yield-out-of-generator.js:
|
||
|
||
2016-08-03 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
REGRESSION(r203368): broke some test262 tests
|
||
https://bugs.webkit.org/show_bug.cgi?id=160479
|
||
|
||
Reviewed by Mark Lam.
|
||
|
||
Added a stress test for this case, since we don't always run test262.
|
||
|
||
* stress/freeze-setter.js: Added.
|
||
(let.o.set foo):
|
||
|
||
2016-08-03 Saam Barati <sbarati@apple.com>
|
||
|
||
Implement nested rest destructuring w.r.t the ES7 spec
|
||
https://bugs.webkit.org/show_bug.cgi?id=160423
|
||
|
||
Reviewed by Filip Pizlo.
|
||
|
||
* stress/destructuring-rest-element.js: Added.
|
||
(assert):
|
||
(test):
|
||
(arr):
|
||
(eq):
|
||
(gen):
|
||
(fakeGen.return.Symbol.iterator):
|
||
(fakeGen):
|
||
* stress/rest-elements.js:
|
||
(testSyntaxError.String.raw):
|
||
* stress/rest-parameter-is-destructuring.js: Added.
|
||
(assert):
|
||
(test):
|
||
(foo):
|
||
(bar):
|
||
* test262.yaml:
|
||
|
||
2016-08-02 Saam Barati <sbarati@apple.com>
|
||
|
||
Rename Changelog to ChangeLog
|
||
|
||
Rubber stamped by Keith Miller.
|
||
|
||
* Changelog: Removed.
|
||
|
||
2016-08-02 Saam Barati <sbarati@apple.com>
|
||
|
||
update a class extending null w.r.t the ES7 spec
|
||
https://bugs.webkit.org/show_bug.cgi?id=160417
|
||
|
||
Reviewed by Keith Miller.
|
||
|
||
* Changelog:
|
||
* stress/class-derived-from-null.js: Added.
|
||
(assert):
|
||
(test):
|
||
(test1.C):
|
||
(test1):
|
||
(jsNull):
|
||
(test2.C):
|
||
(test2):
|
||
(test3.C):
|
||
(test3.D):
|
||
(test3.E):
|
||
(test3):
|
||
(test4.E):
|
||
(test4):
|
||
(test5.E):
|
||
(test5):
|
||
(test6.Base):
|
||
(test6.D):
|
||
(test6.E):
|
||
(test6.F):
|
||
(test6.G):
|
||
(test6):
|
||
* test262.yaml:
|
||
|
||
2016-08-01 Filip Pizlo <fpizlo@apple.com>
|
||
|
||
Rationalize varargs stack overflow checks
|
||
https://bugs.webkit.org/show_bug.cgi?id=160425
|
||
|
||
Reviewed by Michael Saboff.
|
||
|
||
* stress/arity-check-ftl-throw-more-args.js: Added.
|
||
(catch):
|
||
|
||
2016-08-01 Keith Miller <keith_miller@apple.com>
|
||
|
||
We should not keep the JavaScript tests inside the Source/JavaScriptCore/ directory.
|
||
https://bugs.webkit.org/show_bug.cgi?id=160372
|
||
|
||
Rubber stamped by Geoffrey Garen.
|
||
|
||
This patch moves all the JavaScript tests from Source/JavaScriptCore/tests to
|
||
a new top level directory, JSTests. Having the tests in the Source directory
|
||
was both confusing an inconvenient for people that just want to checkout the
|
||
source code of WebKit. Since there is no other obvious place to put all the
|
||
JavaScript tests a new top level directory seemed the most sensible.
|
||
|
||
* tests/: Deleted.
|