1 2018-12-10 Mark Lam <mark.lam@apple.com>
3 PropertyAttribute needs a CustomValue bit.
4 https://bugs.webkit.org/show_bug.cgi?id=191993
5 <rdar://problem/46264467>
7 Reviewed by Saam Barati.
9 * stress/regress-191993.js: Added.
11 2018-12-10 Caio Lima <ticaiolima@gmail.com>
13 [BigInt] Add ValueMul into DFG
14 https://bugs.webkit.org/show_bug.cgi?id=186175
16 Reviewed by Yusuke Suzuki.
18 * stress/big-int-mul-jit-osr.js: Added.
19 * stress/big-int-mul-jit-untyped.js: Added.
20 * stress/value-mul-fixup-int32-big-int.js: Added.
22 2018-12-06 Keith Miller <keith_miller@apple.com>
24 stress/big-wasm-memory tests failing on 32-bit JSC bot
25 https://bugs.webkit.org/show_bug.cgi?id=192020
27 Reviewed by Saam Barati.
29 Not every platform has WebAssembly, e.g. 32-bit, so we should exit
30 the wasm stress tests if the WebAssembly object does not exist.
32 * stress/big-wasm-memory-grow-no-max.js:
37 * stress/big-wasm-memory-grow.js:
42 * stress/big-wasm-memory.js:
48 2018-12-05 Mark Lam <mark.lam@apple.com>
50 speculationFromCell() should speculate non-Identifier strings as SpecString instead of SpecStringVar.
51 https://bugs.webkit.org/show_bug.cgi?id=192441
52 <rdar://problem/46480355>
54 Reviewed by Saam Barati.
56 * stress/regress-192441.js: Added.
58 2018-12-04 Mark Lam <mark.lam@apple.com>
60 DFG's StrengthReduction phase should not reduce Construct into DirectContruct when the executable does not have constructAbility.
61 https://bugs.webkit.org/show_bug.cgi?id=192386
62 <rdar://problem/46445516>
64 Reviewed by Saam Barati.
66 * stress/regress-192386.js: Added.
68 2018-12-04 Caio Lima <ticaiolima@gmail.com>
70 [ESNext][BigInt] Support logic operations
71 https://bugs.webkit.org/show_bug.cgi?id=179903
73 Reviewed by Yusuke Suzuki.
75 * stress/big-int-branch-usage.js: Added.
76 * stress/big-int-logical-and.js: Added.
77 * stress/big-int-logical-not.js: Added.
78 * stress/big-int-logical-or.js: Added.
80 2018-12-03 Ryan Haddad <ryanhaddad@apple.com>
82 Unreviewed, rolling out r238833.
84 Breaks macOS and iOS debug builds.
88 "[ESNext][BigInt] Support logic operations"
89 https://bugs.webkit.org/show_bug.cgi?id=179903
90 https://trac.webkit.org/changeset/238833
92 2018-12-03 Caio Lima <ticaiolima@gmail.com>
94 [ESNext][BigInt] Support logic operations
95 https://bugs.webkit.org/show_bug.cgi?id=179903
97 Reviewed by Yusuke Suzuki.
99 * stress/big-int-branch-usage.js: Added.
100 * stress/big-int-logical-and.js: Added.
101 * stress/big-int-logical-not.js: Added.
102 * stress/big-int-logical-or.js: Added.
104 2018-12-02 Caio Lima <ticaiolima@gmail.com>
106 [ESNext][BigInt] Implement support for "<<" and ">>"
107 https://bugs.webkit.org/show_bug.cgi?id=186233
109 Reviewed by Yusuke Suzuki.
111 * stress/big-int-left-shift-general.js: Added.
112 * stress/big-int-left-shift-range-error.js: Added.
113 * stress/big-int-left-shift-type-error.js: Added.
114 * stress/big-int-left-shift-wrapped-value.js: Added.
115 * stress/big-int-right-shift-general.js: Added.
116 * stress/big-int-right-shift-type-error.js: Added.
117 * stress/big-int-right-shift-wrapped-value.js: Added.
118 * stress/left-shift-to-primitive-precedence.js: Added.
119 * stress/right-shift-to-primitive-precedence.js: Added.
121 2018-11-30 Dean Jackson <dino@apple.com>
123 Add first-class support for .mjs files in jsc binary
124 https://bugs.webkit.org/show_bug.cgi?id=192190
125 <rdar://problem/46375715>
127 Reviewed by Keith Miller.
129 * stress/simple-module.mjs: Added.
130 * stress/simple-script.js: Added.
132 2018-11-30 Caio Lima <ticaiolima@gmail.com>
134 [BigInt] Implement ValueBitXor into DFG
135 https://bugs.webkit.org/show_bug.cgi?id=190264
137 Reviewed by Yusuke Suzuki.
139 * stress/big-int-bitwise-xor-jit.js: Added.
140 * stress/big-int-bitwise-xor-memory-stress.js: Added.
141 * stress/big-int-bitwise-xor-untyped.js: Added.
143 2018-11-27 Saam barati <sbarati@apple.com>
145 r238510 broke scopes of size zero
146 https://bugs.webkit.org/show_bug.cgi?id=192033
147 <rdar://problem/46281734>
149 Reviewed by Keith Miller.
151 * stress/r238510-bad-loop.js: Added.
154 2018-11-27 Mark Lam <mark.lam@apple.com>
156 [Re-landing] NaNs read from Wasm code needs to be be purified.
157 https://bugs.webkit.org/show_bug.cgi?id=191056
158 <rdar://problem/45660341>
160 Reviewed by Filip Pizlo.
162 * wasm/regress/regress-191056.js: Added.
164 2018-11-27 Ryan Haddad <ryanhaddad@apple.com>
166 Unreviewed, rolling out r238509.
168 Causes JSC tests to fail on iOS.
172 "NaNs read from Wasm code needs to be be purified."
173 https://bugs.webkit.org/show_bug.cgi?id=191056
174 https://trac.webkit.org/changeset/238509
176 2018-11-26 Caio Lima <ticaiolima@gmail.com>
178 Re-introduce op_bitnot
179 https://bugs.webkit.org/show_bug.cgi?id=190923
181 Reviewed by Yusuke Suzuki.
183 * stress/bit-not-must-generate.js: Added.
184 * stress/bitwise-not-no-int32.js: Added.
186 2018-11-26 Saam barati <sbarati@apple.com>
188 InPlaceAbstractState::endBasicBlock rule for SetLocal should filter the value based on the flush format
189 https://bugs.webkit.org/show_bug.cgi?id=191956
190 <rdar://problem/45665806>
192 Reviewed by Yusuke Suzuki.
194 * stress/end-basic-block-set-local-should-filter-type.js: Added.
198 2018-11-26 Saam barati <sbarati@apple.com>
200 Object allocation sinking phase needs to iterate each scope offset instead of just iterating the symbol table's hashmap when handling an activation
201 https://bugs.webkit.org/show_bug.cgi?id=191958
202 <rdar://problem/46221877>
204 Reviewed by Yusuke Suzuki.
206 * stress/object-allocation-sinking-phase-needs-to-write-to-each-scope-offset.js: Added.
210 2018-11-26 Mark Lam <mark.lam@apple.com>
212 NaNs read from Wasm code needs to be be purified.
213 https://bugs.webkit.org/show_bug.cgi?id=191056
214 <rdar://problem/45660341>
216 Reviewed by Filip Pizlo.
218 * wasm/regress/regress-191056.js: Added.
220 2018-11-26 Michael Saboff <msaboff@apple.com>
222 32-bit JSC test failure: stress/regexp-compile-oom.js
223 https://bugs.webkit.org/show_bug.cgi?id=191375
225 Reviewed by Mark Lam.
227 Disabled the test for 32 bit platforms.
229 * stress/regexp-compile-oom.js:
231 2018-11-26 Tadeu Zagallo <tzagallo@apple.com>
233 ASSERTION FAILED: m_outOfLineJumpTargets.contains(bytecodeOffset)
234 https://bugs.webkit.org/show_bug.cgi?id=191716
235 <rdar://problem/45723878>
237 Reviewed by Saam Barati.
239 * stress/regress-187373.js: Added.
242 2018-11-21 Saam barati <sbarati@apple.com>
244 DFGSpeculativeJIT should not &= exitOK with mayExit(node)
245 https://bugs.webkit.org/show_bug.cgi?id=191897
246 <rdar://problem/45871998>
248 Reviewed by Mark Lam.
250 * stress/exitok-is-not-the-same-as-mayExit.js: Added.
254 2018-11-21 Saam barati <sbarati@apple.com>
256 Fix assertion in KnownCellUse inside SpeculativeJIT::speculate
257 https://bugs.webkit.org/show_bug.cgi?id=191895
258 <rdar://problem/46167406>
260 Reviewed by Mark Lam.
262 * stress/known-cell-use-needs-type-check-assertion.js: Added.
266 2018-11-21 Mark Lam <mark.lam@apple.com>
268 Creating a wasm memory that is bigger than the ArrayBuffer limit but smaller than the spec limit should throw OOME not RangeError.
269 https://bugs.webkit.org/show_bug.cgi?id=191776
270 <rdar://problem/46152851>
272 Reviewed by Saam Barati.
274 * stress/big-wasm-memory-grow-no-max.js:
275 * stress/big-wasm-memory-grow.js:
276 * stress/big-wasm-memory.js:
277 - updated these to expect an OutOfMemoryError.
279 * wasm/regress/wasm-memory-requested-more-than-MAX_ARRAY_BUFFER_SIZE-2.js: Added.
280 (Binary.prototype.emit_u8):
281 (Binary.prototype.emit_u32v):
282 (Binary.prototype.emit_header):
283 (Binary.prototype.emit_section):
286 (WasmModuleBuilder.prototype.addMemory):
287 (WasmModuleBuilder.prototype.toArray):
288 (WasmModuleBuilder.prototype.toBuffer):
289 (WasmModuleBuilder.prototype.instantiate):
291 * wasm/regress/wasm-memory-requested-more-than-MAX_ARRAY_BUFFER_SIZE.js: Added.
294 2018-11-21 Caio Lima <ticaiolima@gmail.com>
296 [BigInt] JSBigInt::createWithLength should throw when length is greater than JSBigInt::maxLength
297 https://bugs.webkit.org/show_bug.cgi?id=190836
299 Reviewed by Saam Barati and Yusuke Suzuki.
301 * stress/big-int-out-of-memory-tests.js: Added.
303 2018-11-20 Mark Lam <mark.lam@apple.com>
305 Remove invalid assertion in VMTraps::SignalSender's SignalAction.
306 https://bugs.webkit.org/show_bug.cgi?id=191856
307 <rdar://problem/46089992>
309 Reviewed by Yusuke Suzuki.
311 * stress/regress-191856.js: Added.
312 - this test is skipped for now until we have a fix for webkit.org/b/191855.
314 2018-11-21 Dominik Infuehr <dinfuehr@igalia.com>
316 Enable JIT on ARM/Linux
317 https://bugs.webkit.org/show_bug.cgi?id=191548
319 Reviewed by Yusuke Suzuki.
321 Disable test on system with limited memory. Program was killed by
322 the OS before the exception was thrown.
324 * slowMicrobenchmarks/function-constructor-with-huge-strings.js:
326 2018-11-20 Saam barati <sbarati@apple.com>
328 Merging an IC variant may lead to the IC status containing overlapping structure sets
329 https://bugs.webkit.org/show_bug.cgi?id=191869
330 <rdar://problem/45403453>
332 Reviewed by Mark Lam.
334 * stress/merging-ic-variants-should-bail-if-structures-overlap.js: Added.
336 2018-11-19 Mark Lam <mark.lam@apple.com>
338 globalFuncImportModule() should return a promise when it clears exceptions.
339 https://bugs.webkit.org/show_bug.cgi?id=191792
340 <rdar://problem/46090763>
342 Reviewed by Michael Saboff.
344 * stress/global-import-function-should-return-a-promise-when-clearing-exceptions.js: Added.
346 2018-11-19 Guillaume Emont <guijemont@igalia.com>
348 Skip new memory-hungry tests on memory limited devices
350 Unreviewed gardening.
352 * stress/big-wasm-memory-grow-no-max.js:
353 * stress/big-wasm-memory-grow.js:
354 * stress/big-wasm-memory.js:
356 2018-11-18 Yusuke Suzuki <yusukesuzuki@slowstart.org>
358 Unreviewed, rolling in the rest of r237254
359 https://bugs.webkit.org/show_bug.cgi?id=190340
361 * ChakraCore/test/Function/FuncBodyES5.baseline-jsc:
362 * stress/function-cache-with-parameters-end-position.js: Added.
366 * stress/function-constructor-name.js: Added.
369 (AsyncFunction.async):
370 (AsyncGeneratorFunction.async):
373 * test262/expectations.yaml:
375 2018-11-16 Filip Pizlo <fpizlo@apple.com>
377 All users of ArrayBuffer should agree on the same max size
378 https://bugs.webkit.org/show_bug.cgi?id=191771
380 Reviewed by Mark Lam.
382 * stress/big-wasm-memory-grow-no-max.js: Added.
385 * stress/big-wasm-memory-grow.js: Added.
388 * stress/big-wasm-memory.js: Added.
392 2018-11-16 Filip Pizlo <fpizlo@apple.com>
394 Unreviewed, make some more tests not crash my computer by only running on instance of it. These tests do not need to
395 run for each JSC config since they're regression tests for runtime bugs.
397 * stress/json-stringified-overflow-2.js:
398 * stress/json-stringified-overflow.js:
400 2018-11-16 Filip Pizlo <fpizlo@apple.com>
402 Unreviewed, make some tests not crash my computer by only running on instance of it. These tests do not need to run for each JSC
403 config since they're regression tests for runtime bugs.
405 * stress/large-unshift-splice.js:
406 * stress/regress-185888.js:
408 2018-11-16 Saam Barati <sbarati@apple.com>
410 KnownCellUse should also have SpecCellCheck as its type filter
411 https://bugs.webkit.org/show_bug.cgi?id=191729
412 <rdar://problem/45872852>
414 Reviewed by Filip Pizlo.
416 * stress/known-cell-type-check-should-allow-empty-value-to-flow-through.js: Added.
419 2018-11-16 Tadeu Zagallo <tzagallo@apple.com>
421 Fix assertion failure on BytecodeGenerator::recordOpcode
422 https://bugs.webkit.org/show_bug.cgi?id=191724
423 <rdar://problem/45724395>
425 Reviewed by Saam Barati.
427 * stress/regress-187373-2.js: Added.
430 2018-11-15 Mark Lam <mark.lam@apple.com>
432 RegExpObject's collectMatches should not be using JSArray::push to fill in its match results.
433 https://bugs.webkit.org/show_bug.cgi?id=191730
434 <rdar://problem/46048517>
436 Reviewed by Saam Barati.
438 * stress/regress-187006.js: Removed.
439 - this test is invalid because its sole purpose is to test for the non-spec
440 compliant behavior that we just fixed.
442 * stress/regress-191730.js: Added.
444 2018-11-15 Mark Lam <mark.lam@apple.com>
446 RegExp operations should not take fast patch if lastIndex is not numeric.
447 https://bugs.webkit.org/show_bug.cgi?id=191731
448 <rdar://problem/46017305>
450 Reviewed by Saam Barati.
452 * stress/regress-191731.js: Added.
454 2018-11-13 Saam Barati <sbarati@apple.com>
456 TypeProfileLog::processLogEntries should stash away any pending exceptions and re-apply them to the VM
457 https://bugs.webkit.org/show_bug.cgi?id=191600
459 Reviewed by Mark Lam.
461 * stress/type-profiler-log-should-defer-pending-exceptions.js: Added.
466 2018-11-13 Ryan Haddad <ryanhaddad@apple.com>
468 Unreviewed, rolling out r238132.
470 The test added with this change is timing out on Debug JSC
475 "[BigInt] JSBigInt::createWithLength should throw when length
476 is greater than JSBigInt::maxLength"
477 https://bugs.webkit.org/show_bug.cgi?id=190836
478 https://trac.webkit.org/changeset/238132
480 2018-11-13 Mark Lam <mark.lam@apple.com>
482 Add OOM detection to StringPrototype's substituteBackreferences().
483 https://bugs.webkit.org/show_bug.cgi?id=191563
484 <rdar://problem/45720428>
486 Reviewed by Saam Barati.
488 * stress/regress-191563.js: Added.
490 2018-11-13 Mark Lam <mark.lam@apple.com>
492 LLIntSlowPath's llint_loop_osr and llint_replace should set the topCallFrame.
493 https://bugs.webkit.org/show_bug.cgi?id=191579
494 <rdar://problem/45942472>
496 Reviewed by Saam Barati.
498 * stress/regress-191579.js: Added.
500 2018-11-13 Caio Lima <ticaiolima@gmail.com>
502 [BigInt] JSBigInt::createWithLength should throw when length is greater than JSBigInt::maxLength
503 https://bugs.webkit.org/show_bug.cgi?id=190836
505 Reviewed by Saam Barati.
507 * stress/big-int-out-of-memory-tests.js: Added.
509 2018-11-08 Ross Kirsling <ross.kirsling@sony.com>
511 U+180E is no longer a whitespace character
512 https://bugs.webkit.org/show_bug.cgi?id=191415
514 Reviewed by Saam Barati.
516 * ChakraCore/test/es5/regexSpace.baseline:
517 * ChakraCore/test/es6/unicode_whitespace.js:
518 Update tests to latest version.
519 (See https://github.com/Microsoft/ChakraCore/commit/7c097b698de1e400286f9b957597b2a81fc6f80b.)
522 * test262/config.yaml:
523 * test262/expectations.yaml:
526 2018-11-07 Caio Lima <ticaiolima@gmail.com>
528 [BigInt] Add support to BigInt into ValueAdd
529 https://bugs.webkit.org/show_bug.cgi?id=186177
531 Reviewed by Keith Miller.
533 * stress/big-int-negate-jit.js:
534 * stress/value-add-big-int-and-string.js: Added.
535 * stress/value-add-big-int-prediction-propagation.js: Added.
536 * stress/value-add-big-int-untyped.js: Added.
538 2018-11-07 Tadeu Zagallo <tzagallo@apple.com>
540 REGRESSION(r237547): Test failures on 32-bit JSC since the JIT was disabled
541 https://bugs.webkit.org/show_bug.cgi?id=191184
543 Reviewed by Saam Barati.
545 Most tests were failing due to timeouts, since they are too slow to
546 run on CLoop. The exceptions are:
548 proxy-get-set-correct-receiver.js: Had to reduce the recursion depth not to overflow on CLoop
549 dont-crash-on-stack-overflow-when-parsing-builtin.js and
550 dont-crash-on-stack-overflow-when-parsing-default-constructor.js: had
551 to change the stack size since CLoop requires it to be page aligned.
553 * microbenchmarks/array-push-1.js:
554 * microbenchmarks/array-push-2.js:
555 * microbenchmarks/elidable-new-object-dag.js:
556 * microbenchmarks/elidable-new-object-roflcopter.js:
557 * microbenchmarks/elidable-new-object-tree.js:
558 * microbenchmarks/getter-richards.js:
559 * microbenchmarks/sinkable-new-object-dag.js:
560 * microbenchmarks/string-concat-long-convert.js:
561 * microbenchmarks/typed-array-get-set-by-val-profiling.js:
562 * slowMicrobenchmarks/array-push-3.js:
563 * slowMicrobenchmarks/large-map-iteration-with-additions.js:
564 * slowMicrobenchmarks/spread-small-array.js:
565 * slowMicrobenchmarks/undefined-property-access.js:
566 * stress/activation-sink-default-value-tdz-error.js:
567 * stress/activation-sink-default-value.js:
568 * stress/activation-sink-osrexit-default-value-tdz-error.js:
569 * stress/activation-sink-osrexit-default-value.js:
570 * stress/activation-sink-osrexit.js:
571 * stress/activation-sink.js:
572 * stress/allow-math-ic-b3-code-duplication.js:
573 * stress/array-push-multiple-int32.js:
574 * stress/arrowfunction-activation-sink-osrexit-default-value-tdz-error.js:
575 * stress/arrowfunction-lexical-this-activation-sink-osrexit.js:
576 * stress/arrowfunction-lexical-this-activation-sink.js:
577 * stress/dont-crash-on-stack-overflow-when-parsing-builtin.js:
578 * stress/dont-crash-on-stack-overflow-when-parsing-default-constructor.js:
579 * stress/elide-new-object-dag-then-exit.js:
580 * stress/materialize-regexp-cyclic.js:
581 * stress/new-regex-inline.js:
583 * stress/op_bitand.js:
584 * stress/op_bitor.js:
585 * stress/op_bitxor.js:
586 * stress/op_div-ConstVar.js:
587 * stress/op_div-VarConst.js:
588 * stress/op_div-VarVar.js:
589 * stress/op_lshift-ConstVar.js:
590 * stress/op_lshift-VarConst.js:
591 * stress/op_lshift-VarVar.js:
592 * stress/op_mod-ConstVar.js:
593 * stress/op_mod-VarConst.js:
594 * stress/op_mod-VarVar.js:
595 * stress/op_mul-ConstVar.js:
596 * stress/op_mul-VarConst.js:
597 * stress/op_mul-VarVar.js:
598 * stress/op_rshift-ConstVar.js:
599 * stress/op_rshift-VarConst.js:
600 * stress/op_rshift-VarVar.js:
601 * stress/op_sub-ConstVar.js:
602 * stress/op_sub-VarConst.js:
603 * stress/op_sub-VarVar.js:
604 * stress/op_urshift-ConstVar.js:
605 * stress/op_urshift-VarConst.js:
606 * stress/op_urshift-VarVar.js:
607 * stress/proxy-get-set-correct-receiver.js:
608 * stress/regress-179562.js:
609 * stress/rest-parameter-many-arguments.js:
610 * stress/sampling-profiler-richards.js:
611 * stress/splay-flash-access-1ms.js:
612 * stress/tailCallForwardArguments.js:
613 * stress/typed-array-get-by-val-profiling.js:
614 * typeProfiler/getter-richards.js:
616 2018-11-06 Michael Saboff <msaboff@apple.com>
618 Multiple stress/regexp-compile-oom.js tests are failing on High Sierra Debug and Release JSC testers.
619 https://bugs.webkit.org/show_bug.cgi?id=191271
621 Reviewed by Saam Barati.
623 Added more test cases and made all test cases run with the same deeply recursive stack
624 instead of finding that same point for each test case.
626 * stress/regexp-compile-oom.js:
629 (testList.push.new.TestAndExpectedException):
631 2018-11-05 Michael Saboff <msaboff@apple.com>
633 Unreviewed build fix for linux.
635 * stress/regexp-compile-oom.js: Disabled for non-darwin OSes.
637 2018-11-02 Michael Saboff <msaboff@apple.com>
639 Rolling in r237753 with unreviewed build fix.
641 Fixed issues with DECLARE_THROW_SCOPE placement.
643 2018-11-02 Ryan Haddad <ryanhaddad@apple.com>
645 Unreviewed, rolling out r237753.
647 Introduced JSC test failures
651 "Running out of stack space not properly handled in
652 RegExp::compile() and its callers"
653 https://bugs.webkit.org/show_bug.cgi?id=191206
654 https://trac.webkit.org/changeset/237753
656 2018-11-02 Michael Saboff <msaboff@apple.com>
658 Running out of stack space not properly handled in RegExp::compile() and its callers
659 https://bugs.webkit.org/show_bug.cgi?id=191206
661 Reviewed by Filip Pizlo.
665 * stress/regexp-compile-oom.js: Added.
668 2018-11-01 Guillaume Emont <guijemont@igalia.com>
670 Skip tests on arm/mips that time out now we're running on CLoop
672 Unreviewed gardening.
674 Since the JIT is temporarily disabled on 32-bit platforms, these tests
675 time out on the bots and need to be disabled. There's more tests
676 disabled on arm because the timeout is longer on the mips bot (as the
677 device is slower to start with), so many of the tests don't time out
680 * microbenchmarks/getter-richards.js: disable on arm and mips.
681 * stress/op_add.js: disable on arm.
682 * stress/op_bitand.js: disable on arm.
683 * stress/op_bitor.js: disable on arm.
684 * stress/op_bitxor.js: disable on arm.
685 * stress/op_lshift-ConstVar.js: disable on arm.
686 * stress/op_lshift-VarConst.js: disable on arm.
687 * stress/op_lshift-VarVar.js: disable on arm.
688 * stress/op_mod-ConstVar.js: disable on arm.
689 * stress/op_mod-VarConst.js: disable on arm.
690 * stress/op_mod-VarVar.js: disable on arm.
691 * stress/op_mul-ConstVar.js: disable on arm.
692 * stress/op_mul-VarConst.js: disable on arm.
693 * stress/op_mul-VarVar.js: disable on arm.
694 * stress/op_rshift-ConstVar.js: disable on arm.
695 * stress/op_rshift-VarConst.js: disable on arm.
696 * stress/op_rshift-VarVar.js: disable on arm.
697 * stress/op_sub-ConstVar.js: disable on arm.
698 * stress/op_sub-VarConst.js: disable on arm.
699 * stress/op_sub-VarVar.js: disable on arm.
700 * stress/op_urshift-ConstVar.js: disable on arm.
701 * stress/op_urshift-VarConst.js: disable on arm.
702 * stress/op_urshift-VarVar.js: disable on arm.
703 * stress/spread-forward-call-varargs-stack-overflow.js: disable on arm.
704 * stress/value-to-boolean.js: disable on arm and mips.
706 2018-10-31 Tadeu Zagallo <tzagallo@apple.com>
708 REGRESSION(r237547): Exception handlers should be aware of wide opcodes
709 https://bugs.webkit.org/show_bug.cgi?id=191108
710 <rdar://problem/45690700>
712 Reviewed by Saam Barati.
714 * stress/wide-op_catch.js: Added.
717 2018-10-29 Mark Lam <mark.lam@apple.com>
719 Correctly detect string overflow when using the 'Function' constructor.
720 https://bugs.webkit.org/show_bug.cgi?id=184883
721 <rdar://problem/36320331>
723 Reviewed by Saam Barati.
725 I've verified that this passes on 32-bit as well.
727 * slowMicrobenchmarks/function-constructor-with-huge-strings.js: Added.
729 2018-10-29 Tadeu Zagallo <tzagallo@apple.com>
731 Add support for GetStack FlushedDouble
732 https://bugs.webkit.org/show_bug.cgi?id=191012
733 <rdar://problem/45265141>
735 Reviewed by Saam Barati.
737 * stress/get-stack-double.js: Added.
741 2018-10-29 Tadeu Zagallo <tzagallo@apple.com>
743 New bytecode format for JSC
744 https://bugs.webkit.org/show_bug.cgi?id=187373
745 <rdar://problem/44186758>
747 Reviewed by Filip Pizlo.
749 Add tests to ensure that the inferred inline capacity for a narrow op_new_object will be capped at 255.
751 * stress/maximum-inline-capacity.js: Added.
756 2018-10-26 Commit Queue <commit-queue@webkit.org>
758 Unreviewed, rolling out r237479 and r237484.
759 https://bugs.webkit.org/show_bug.cgi?id=190978
761 broke JSC on iOS (Requested by tadeuzagallo on #webkit).
765 "New bytecode format for JSC"
766 https://bugs.webkit.org/show_bug.cgi?id=187373
767 https://trac.webkit.org/changeset/237479
769 "Gardening: Build fix after r237479."
770 https://bugs.webkit.org/show_bug.cgi?id=187373
771 https://trac.webkit.org/changeset/237484
773 2018-10-26 Tadeu Zagallo <tzagallo@apple.com>
775 New bytecode format for JSC
776 https://bugs.webkit.org/show_bug.cgi?id=187373
777 <rdar://problem/44186758>
779 Reviewed by Filip Pizlo.
781 Add tests to ensure that the inferred inline capacity for a narrow op_new_object will be capped at 255.
783 * stress/maximum-inline-capacity.js: Added.
788 2018-10-26 Mark Lam <mark.lam@apple.com>
790 Fix missing edge cases with JSGlobalObjects having a bad time.
791 https://bugs.webkit.org/show_bug.cgi?id=189028
792 <rdar://problem/45204939>
794 Reviewed by Saam Barati.
796 * stress/regress-189028.js: Added.
798 2018-10-22 Mark Lam <mark.lam@apple.com>
800 DFGAbstractValue::m_arrayModes expects IndexingMode values, not IndexingType.
801 https://bugs.webkit.org/show_bug.cgi?id=190515
802 <rdar://problem/45222379>
804 Rubber-stamped by Saam Barati.
808 * stress/regress-190515-2.js: Added.
810 2018-10-22 Mark Lam <mark.lam@apple.com>
812 DFGAbstractValue::m_arrayModes expects IndexingMode values, not IndexingType.
813 https://bugs.webkit.org/show_bug.cgi?id=190515
814 <rdar://problem/45222379>
816 Reviewed by Saam Barati.
818 * stress/regress-190515.js: Added.
820 2018-10-19 Commit Queue <commit-queue@webkit.org>
822 Unreviewed, rolling out r237254.
823 https://bugs.webkit.org/show_bug.cgi?id=190760
825 "It regresses JetStream 2 by 5% on some iOS devices"
826 (Requested by saamyjoon on #webkit).
830 "[JSC] JSC should have "parseFunction" to optimize Function
832 https://bugs.webkit.org/show_bug.cgi?id=190340
833 https://trac.webkit.org/changeset/237254
835 2018-10-19 Saam Barati <sbarati@apple.com>
837 vmCall should check if we exit before emitting an OSR exit due to exceptions
838 https://bugs.webkit.org/show_bug.cgi?id=190740
839 <rdar://problem/45220139>
841 Reviewed by Mark Lam.
843 * stress/dont-emit-osr-exits-for-every-call-ftl.js: Added.
846 2018-10-19 Caio Lima <ticaiolima@gmail.com>
848 [ESNext][BigInt] Implement support for "^"
849 https://bugs.webkit.org/show_bug.cgi?id=186235
851 Reviewed by Yusuke Suzuki.
853 * stress/big-int-bitwise-xor-general.js: Added.
854 * stress/big-int-bitwise-xor-to-primitive-precedence.js: Added.
855 * stress/big-int-bitwise-xor-type-error.js: Added.
856 * stress/big-int-bitwise-xor-wrapped-value.js: Added.
858 2018-10-19 Caio Lima <ticaiolima@gmail.com>
860 [BigInt] Add ValueSub into DFG
861 https://bugs.webkit.org/show_bug.cgi?id=186176
863 Reviewed by Yusuke Suzuki.
865 * stress/big-int-subtraction-jit.js:
866 * stress/value-sub-big-int-prediction-propagation.js: Added.
867 * stress/value-sub-big-int-untyped.js: Added.
868 * stress/value-sub-spec-none-case.js: Added.
870 2018-10-18 Yusuke Suzuki <yusukesuzuki@slowstart.org>
872 [JSC] JSC should have "parseFunction" to optimize Function constructor
873 https://bugs.webkit.org/show_bug.cgi?id=190340
875 Reviewed by Mark Lam.
877 This patch fixes the line number of syntax errors raised by the Function constructor,
878 since we now parse the final code only once. And we no longer use block statement
879 for Function constructor's parsing.
881 * ChakraCore/test/Function/FuncBodyES5.baseline-jsc:
882 * stress/function-cache-with-parameters-end-position.js: Added.
886 * stress/function-constructor-name.js: Added.
889 (AsyncFunction.async):
890 (AsyncGeneratorFunction.async):
893 * test262/expectations.yaml:
895 2018-10-18 Commit Queue <commit-queue@webkit.org>
897 Unreviewed, rolling out r237242.
898 https://bugs.webkit.org/show_bug.cgi?id=190701
900 it breaks "stress/sampling-profiler-basic.js" (Requested by
901 caiolima on #webkit).
905 "[BigInt] Add ValueSub into DFG"
906 https://bugs.webkit.org/show_bug.cgi?id=186176
907 https://trac.webkit.org/changeset/237242
909 2018-10-17 Keith Miller <keith_miller@apple.com>
911 AI does not clear Phantom allocation nodes.
912 https://bugs.webkit.org/show_bug.cgi?id=190694
914 Reviewed by Saam Barati.
916 * stress/ftl-ai-filter-phantoms-should-clear-clear-value.js: Added.
926 (GetSecondSundayInMarch):
929 2018-10-17 Caio Lima <ticaiolima@gmail.com>
931 [BigInt] Add ValueSub into DFG
932 https://bugs.webkit.org/show_bug.cgi?id=186176
934 Reviewed by Yusuke Suzuki.
936 * stress/big-int-subtraction-jit.js:
937 * stress/value-sub-big-int-prediction-propagation.js: Added.
938 * stress/value-sub-big-int-untyped.js: Added.
940 2018-10-16 Dominik Infuehr <dinfuehr@igalia.com>
942 [JSC] stress/array-prototype-concat-of-long-spliced-arrays2.js times out on arm and mips
943 https://bugs.webkit.org/show_bug.cgi?id=190611
945 Reviewed by Saam Barati.
947 Reduce array length just like in array-prototype-concat-of-long-spliced-arrays.js
948 to improve test runtime. On ARM/MIPS this test even timed out when running all
951 * stress/array-prototype-concat-of-long-spliced-arrays2.js:
954 2018-10-15 Guillaume Emont <guijemont@igalia.com>
956 Skip stress/array-prototype-concat-of-long-spliced-arrays2.js on arm and mips/linux
958 Unreviewed gardening.
960 * stress/array-prototype-concat-of-long-spliced-arrays2.js:
962 2018-10-15 Saam barati <sbarati@apple.com>
964 Emit fjcvtzs on ARM64E on Darwin
965 https://bugs.webkit.org/show_bug.cgi?id=184023
967 Reviewed by Yusuke Suzuki and Filip Pizlo.
969 * stress/double-to-int32-NaN.js: Added.
973 2018-10-15 Saam Barati <sbarati@apple.com>
975 JSArray::shiftCountWithArrayStorage is wrong when an array has holes
976 https://bugs.webkit.org/show_bug.cgi?id=190262
977 <rdar://problem/44986241>
979 Reviewed by Mark Lam.
981 * stress/array-prototype-concat-of-long-spliced-arrays.js:
983 * stress/slice-array-storage-with-holes.js: Added.
986 2018-10-15 Commit Queue <commit-queue@webkit.org>
988 Unreviewed, rolling out r237054.
989 https://bugs.webkit.org/show_bug.cgi?id=190593
991 "this regressed JetStream 2 by 6% on iOS" (Requested by
992 saamyjoon on #webkit).
996 "[JSC] JSC should have "parseFunction" to optimize Function
998 https://bugs.webkit.org/show_bug.cgi?id=190340
999 https://trac.webkit.org/changeset/237054
1001 2018-10-13 Yusuke Suzuki <yusukesuzuki@slowstart.org>
1003 [JSC] JSON.stringify can accept call-with-no-arguments
1004 https://bugs.webkit.org/show_bug.cgi?id=190343
1006 Reviewed by Mark Lam.
1008 * stress/json-stringify-no-arguments.js: Added.
1011 2018-10-08 Yusuke Suzuki <yusukesuzuki@slowstart.org>
1013 [JSC] JSC should have "parseFunction" to optimize Function constructor
1014 https://bugs.webkit.org/show_bug.cgi?id=190340
1016 Reviewed by Mark Lam.
1018 This patch fixes the line number of syntax errors raised by the Function constructor,
1019 since we now parse the final code only once. And we no longer use block statement
1020 for Function constructor's parsing.
1022 * ChakraCore/test/Function/FuncBodyES5.baseline-jsc:
1023 * stress/function-cache-with-parameters-end-position.js: Added.
1027 * stress/function-constructor-name.js: Added.
1029 (GeneratorFunction):
1030 (AsyncFunction.async):
1031 (AsyncGeneratorFunction.async):
1034 * test262/expectations.yaml:
1036 2018-10-10 Guillaume Emont <guijemont@igalia.com>
1038 Skip JSC test stress/sampling-profiler-richards.js on armv7/linux
1039 https://bugs.webkit.org/show_bug.cgi?id=190426
1041 Unreviewed gardening.
1043 * stress/sampling-profiler-richards.js:
1045 2018-10-06 Caio Lima <ticaiolima@gmail.com>
1047 [ESNext][BigInt] Implement support for "|"
1048 https://bugs.webkit.org/show_bug.cgi?id=186229
1050 Reviewed by Yusuke Suzuki.
1052 * stress/big-int-bitwise-and-jit.js:
1053 * stress/big-int-bitwise-or-general.js: Added.
1054 * stress/big-int-bitwise-or-jit-untyped.js: Added.
1055 * stress/big-int-bitwise-or-jit.js: Added.
1056 * stress/big-int-bitwise-or-memory-stress.js: Added.
1057 * stress/big-int-bitwise-or-to-primitive-precedence.js: Added.
1058 * stress/big-int-bitwise-or-type-error.js: Added.
1059 * stress/big-int-bitwise-or-wrapped-value.js: Added.
1061 2018-10-05 Dominik Infuehr <dominik.infuehr@gmail.com>
1063 Skip test on systems with limited memory
1064 https://bugs.webkit.org/show_bug.cgi?id=190310
1066 Invoking runDefault adds test to runlist, skipping the test in the next
1067 line does not prevent the test from executing. Change order of lines such
1068 that runDefault is only executed if test is not executed.
1070 Reviewed by Mark Lam.
1072 * stress/regress-190187.js:
1074 2018-10-03 Saam barati <sbarati@apple.com>
1076 lowXYZ in FTLLower should always filter the type of the incoming edge
1077 https://bugs.webkit.org/show_bug.cgi?id=189939
1078 <rdar://problem/44407030>
1080 Reviewed by Michael Saboff.
1082 * stress/ftl-should-always-filter-for-low-type-check-functions.js: Added.
1086 2018-10-03 Mark Lam <mark.lam@apple.com>
1088 Make string MaxLength for all WTF and JS strings consistently equal to INT_MAX.
1089 https://bugs.webkit.org/show_bug.cgi?id=190187
1090 <rdar://problem/42512909>
1092 Reviewed by Michael Saboff.
1094 * stress/regress-190187.js: Added.
1096 2018-10-02 Caio Lima <ticaiolima@gmail.com>
1098 [BigInt] BigInt.proptotype.toString is broken when radix is power of 2
1099 https://bugs.webkit.org/show_bug.cgi?id=190033
1101 Reviewed by Yusuke Suzuki.
1103 * stress/big-int-to-string.js:
1105 2018-10-01 Mark Lam <mark.lam@apple.com>
1107 Function.toString() should also copy the source code Functions that are class definitions.
1108 https://bugs.webkit.org/show_bug.cgi?id=190186
1109 <rdar://problem/44733360>
1111 Reviewed by Saam Barati.
1113 * stress/regress-190186.js: Added.
1115 2018-10-01 Dominik Infuehr <dinfuehr@igalia.com>
1117 Split NaN-check into separate test
1118 https://bugs.webkit.org/show_bug.cgi?id=190010
1120 Reviewed by Saam Barati.
1122 DataView exposes NaN-representation, which is not necessarily the same on each
1123 architecture. Therefore move the check of the NaN-representation into its own
1124 file such that we can disable this test on MIPS where NaN-representation can be
1125 different on older CPUs.
1127 * stress/dataview-jit-set-nan.js: Added.
1129 (test.storeLittleEndian):
1130 (test.storeBigEndian):
1133 * stress/dataview-jit-set.js:
1136 2018-10-01 Commit Queue <commit-queue@webkit.org>
1138 Unreviewed, rolling out r236647.
1139 https://bugs.webkit.org/show_bug.cgi?id=190124
1141 Breaking test stress/big-int-to-string.js (Requested by
1142 caiolima_ on #webkit).
1146 "[BigInt] BigInt.proptotype.toString is broken when radix is
1148 https://bugs.webkit.org/show_bug.cgi?id=190033
1149 https://trac.webkit.org/changeset/236647
1151 2018-09-30 Caio Lima <ticaiolima@gmail.com>
1153 [BigInt] BigInt.proptotype.toString is broken when radix is power of 2
1154 https://bugs.webkit.org/show_bug.cgi?id=190033
1156 Reviewed by Yusuke Suzuki.
1158 * stress/big-int-to-string.js:
1160 2018-09-28 Caio Lima <ticaiolima@gmail.com>
1162 [ESNext][BigInt] Implement support for "&"
1163 https://bugs.webkit.org/show_bug.cgi?id=186228
1165 Reviewed by Yusuke Suzuki.
1167 * stress/big-int-bitwise-and-general.js: Added.
1170 * stress/big-int-bitwise-and-jit.js: Added.
1171 (let.assert.sameValue):
1173 * stress/big-int-bitwise-and-memory-stress.js: Added.
1175 * stress/big-int-bitwise-and-to-primitive-precedence.js: Added.
1177 (let.o.Symbol.toPrimitive):
1179 * stress/big-int-bitwise-and-type-error.js: Added.
1181 (assertThrowTypeError):
1185 (o.Symbol.toPrimitive):
1186 * stress/big-int-bitwise-and-wrapped-value.js: Added.
1189 (let.o.Symbol.toPrimitive):
1193 2018-09-28 Ross Kirsling <ross.kirsling@sony.com>
1195 JSC test stress/jsc-read.js doesn't support CRLF
1196 https://bugs.webkit.org/show_bug.cgi?id=190063
1198 Reviewed by Yusuke Suzuki.
1200 In order to run this test via Windows command prompt, we can't assume that the final newline will be LF.
1202 * stress/jsc-read.js:
1205 2018-09-27 Saam barati <sbarati@apple.com>
1207 Verify the contents of AssemblerBuffer on arm64e
1208 https://bugs.webkit.org/show_bug.cgi?id=190057
1209 <rdar://problem/38916630>
1211 Reviewed by Mark Lam.
1213 * stress/regress-189132.js:
1215 2018-09-27 Dominik Infuehr <dinfuehr@igalia.com>
1217 Disable test without LLInt on ARMv7
1218 https://bugs.webkit.org/show_bug.cgi?id=190037
1220 Reviewed by Mark Lam.
1222 Test runs out of executable memory on ARMv7, do not run
1223 this test without LLInt enabled.
1225 * stress/regress-169445.js:
1227 2018-09-26 Keith Miller <keith_miller@apple.com>
1229 We should zero unused property storage when rebalancing array storage.
1230 https://bugs.webkit.org/show_bug.cgi?id=188151
1232 Reviewed by Michael Saboff.
1234 * stress/splice-should-zero-property-storage-when-rebalancing.js: Added.
1236 2018-09-20 Yusuke Suzuki <yusukesuzuki@slowstart.org>
1238 [JSC] Optimize Array#lastIndexOf
1239 https://bugs.webkit.org/show_bug.cgi?id=189780
1241 Reviewed by Saam Barati.
1243 * stress/array-lastindexof-array-prototype-trap.js: Added.
1245 (AncestorArray.prototype.get 2):
1247 * stress/array-lastindexof-have-a-bad-time-c-runtime.js: Added.
1249 * stress/array-lastindexof-hole-nan.js: Added.
1252 * stress/array-lastindexof-infinity.js: Added.
1255 * stress/array-lastindexof-negative-zero.js: Added.
1258 * stress/array-lastindexof-own-getter.js: Added.
1260 (throw.new.Error.get array):
1262 * stress/array-lastindexof-prototype-trap.js: Added.
1264 (DerivedArray.prototype.get 2):
1267 2018-09-25 Saam Barati <sbarati@apple.com>
1269 Calls to baselineCodeBlockForOriginAndBaselineCodeBlock in operationMaterializeObjectInOSR should actually pass in the baseline CodeBlock
1270 https://bugs.webkit.org/show_bug.cgi?id=189940
1271 <rdar://problem/43640987>
1273 Reviewed by Mark Lam.
1275 * stress/use-baseline-codeblock-materialize-osr-exit.js: Added.
1277 2018-09-24 Saam Barati <sbarati@apple.com>
1279 Array.prototype.indexOf fast path needs to ensure the length is still valid after performing effects
1280 https://bugs.webkit.org/show_bug.cgi?id=189922
1281 <rdar://problem/44651275>
1283 Reviewed by Mark Lam.
1285 * stress/array-indexof-fast-path-effects.js: Added.
1286 * stress/array-indexof-cached-length.js: Added.
1288 2018-09-24 Saam barati <sbarati@apple.com>
1290 ArgumentsEliminationPhase should snip basic blocks after proven OSR exits
1291 https://bugs.webkit.org/show_bug.cgi?id=189682
1292 <rdar://problem/43557315>
1294 Reviewed by Mark Lam.
1296 * stress/arguments-elimination-will-generate-edge-without-result.js: Added.
1299 2018-09-22 Saam barati <sbarati@apple.com>
1301 The sampling should not use Strong<CodeBlock> in its machineLocation field
1302 https://bugs.webkit.org/show_bug.cgi?id=189319
1304 Reviewed by Filip Pizlo.
1306 * stress/sampling-profiler-richards.js: Added.
1308 2018-09-19 Yusuke Suzuki <yusukesuzuki@slowstart.org>
1310 [JSC] Optimize Array#indexOf in C++ runtime
1311 https://bugs.webkit.org/show_bug.cgi?id=189507
1313 Reviewed by Saam Barati.
1315 * stress/array-indexof-array-prototype-trap.js: Added.
1317 (AncestorArray.prototype.get 2):
1319 * stress/array-indexof-have-a-bad-time-c-runtime.js: Added.
1321 * stress/array-indexof-hole-nan.js: Added.
1324 * stress/array-indexof-infinity.js: Added.
1327 * stress/array-indexof-negative-zero.js: Added.
1330 * stress/array-indexof-own-getter.js: Added.
1332 (throw.new.Error.get array):
1334 * stress/array-indexof-prototype-trap.js: Added.
1336 (DerivedArray.prototype.get 2):
1339 2018-09-19 Saam barati <sbarati@apple.com>
1341 AI rule for MultiPutByOffset executes its effects in the wrong order
1342 https://bugs.webkit.org/show_bug.cgi?id=189757
1343 <rdar://problem/43535257>
1345 Reviewed by Michael Saboff.
1347 * stress/multi-put-by-offset-must-filter-value-before-filtering-base.js: Added.
1352 2018-09-17 Mark Lam <mark.lam@apple.com>
1354 Ensure that ForInContexts are invalidated if their loop local is over-written.
1355 https://bugs.webkit.org/show_bug.cgi?id=189571
1356 <rdar://problem/44402277>
1358 Reviewed by Saam Barati.
1360 * stress/regress-189571.js: Added.
1362 2018-09-17 Saam barati <sbarati@apple.com>
1364 We must convert ProfileType to CheckStructureOrEmpty instead of CheckStructure
1365 https://bugs.webkit.org/show_bug.cgi?id=189676
1366 <rdar://problem/39682897>
1368 Reviewed by Michael Saboff.
1370 * typeProfiler/check-structure-or-empty-in-fixup.js: Added.
1375 2018-09-14 Saam barati <sbarati@apple.com>
1377 Don't dump OSRAvailabilityData in Graph::dump because a stale Availability may point to a Node that is already freed
1378 https://bugs.webkit.org/show_bug.cgi?id=189628
1379 <rdar://problem/39481690>
1381 Reviewed by Mark Lam.
1383 * stress/verbose-failure-dont-graph-dump-availability-already-freed.js: Added.
1386 2018-09-11 Mark Lam <mark.lam@apple.com>
1388 Test for array initialization in arrayProtoFuncSplice.
1389 https://bugs.webkit.org/show_bug.cgi?id=170253
1390 <rdar://problem/31328773>
1392 Rubber-stamped by Saam Barati.
1394 * stress/regress-170253.js: Added.
1396 2018-09-11 Mark Lam <mark.lam@apple.com>
1398 Test for IntlObject initialization.
1399 https://bugs.webkit.org/show_bug.cgi?id=170251
1400 <rdar://problem/31328419>
1402 Rubber-stamped by Saam Barati.
1404 * stress/regress-170251.js: Added.
1406 2018-09-11 Mark Lam <mark.lam@apple.com>
1408 Test for array memcpy'ing when JSGlobalObject::haveABadTime.
1409 https://bugs.webkit.org/show_bug.cgi?id=169889
1410 <rdar://problem/31155607>
1412 Reviewed by Saam Barati.
1414 * stress/regress-169889-array-concat.js: Added.
1415 * stress/regress-169889-array-concat1.js: Added.
1416 * stress/regress-169889-array-slice.js: Added.
1418 2018-09-11 Mark Lam <mark.lam@apple.com>
1420 Test for incorrect check in emitPutDerivedConstructorToArrowFunctionContextScope.
1421 https://bugs.webkit.org/show_bug.cgi?id=169445
1422 <rdar://problem/30957435>
1424 Reviewed by Saam Barati.
1426 * stress/regress-169445.js: Added.
1429 (let.gun.eval.B.C.prototype.trigger):
1430 (let.gun.eval.B.C.prototype.triggerWithRestParameters):
1434 == Rolled over to ChangeLog-2018-09-11 ==