mirror of
				https://github.com/tc39/test262.git
				synced 2025-10-31 03:34:08 +01: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.
 |