[webkit-changes] [WebKit/WebKit] d4af38: [JSC] Stress tests have bogus asserts due to incor...
Commit Queue
noreply at github.com
Wed Feb 28 00:36:10 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d4af38db11471f708621121528888e92ffed9443
https://github.com/WebKit/WebKit/commit/d4af38db11471f708621121528888e92ffed9443
Author: Alexey Shvayka <ashvayka at apple.com>
Date: 2024-02-28 (Wed, 28 Feb 2024)
Changed paths:
M JSTests/ChakraCore/test/Array/array_splice.js
M JSTests/ChakraCore/test/Array/array_splice_double.js
M JSTests/stress/dfg-get-private-name-by-id-generic.js
M JSTests/stress/dfg-get-private-name-by-id-osr-bad-identifier.js
M JSTests/stress/dfg-get-private-name-by-offset-osr-bad-identifier.js
M JSTests/stress/dfg-get-private-name-by-offset-osr-bad-structure.js
M JSTests/stress/dfg-get-private-name-by-val-generic.js
M JSTests/stress/dfg-put-private-name-check-barrier-insertion.js
M JSTests/stress/dfg-put-private-name-compiled-as-put-by-id-direct.js
M JSTests/stress/dfg-put-private-name-compiled-as-put-private-name-by-id.js
M JSTests/stress/get-private-name-with-primitive.js
M JSTests/stress/invalidate-array-iterator-prototype-next.js
M JSTests/stress/private-method-and-field-named-constructor.js
M JSTests/stress/private-method-check-structure-miss.js
M JSTests/stress/private-method-invalid-multiple-brand-installation.js
M JSTests/stress/private-method-invalidate-compiled-with-constant-symbol.js
M JSTests/stress/private-method-polymorphic-with-constant-symbol.js
M JSTests/stress/private-method-untyped-use.js
M JSTests/stress/put-private-name-by-id-set-do-not-add-structure-trasition.js
M JSTests/stress/put-private-name-invalid-define.js
M JSTests/stress/put-private-name-invalid-store.js
M JSTests/stress/put-private-name-invalidate-compiled-with-constant-symbol.js
M JSTests/stress/put-private-name-untyped-use.js
M JSTests/stress/put-private-name-with-primitive.js
M JSTests/stress/regexp-with-runtime-syntax-errors.js
M JSTests/stress/spread-calling.js
Log Message:
-----------
[JSC] Stress tests have bogus asserts due to incorrectly negating `instanceof` operator
https://bugs.webkit.org/show_bug.cgi?id=261815
<rdar://problem/116114756>
Reviewed by Mark Lam.
Relational operators in JavaScript, including `instanceof`, have lower precedence than
logical negation, meaning `!err instanceof TypeError` evaluates as `false instanceof TypeError`
if `err` is an object.
This change fixes asserts in our tests to actually validate error constructors, which exposed
that one test had wrong expectation of `TypeError` instead of `ReferenceError`: JSC, V8, and
SpiderMonkey all throw `ReferenceError` for that code.
* JSTests/ChakraCore/test/Array/array_splice.js:
* JSTests/ChakraCore/test/Array/array_splice_double.js:
* JSTests/stress/dfg-get-private-name-by-id-generic.js:
* JSTests/stress/dfg-get-private-name-by-id-osr-bad-identifier.js:
* JSTests/stress/dfg-get-private-name-by-offset-osr-bad-identifier.js:
* JSTests/stress/dfg-get-private-name-by-offset-osr-bad-structure.js:
* JSTests/stress/dfg-get-private-name-by-val-generic.js:
* JSTests/stress/dfg-put-private-name-check-barrier-insertion.js:
* JSTests/stress/dfg-put-private-name-compiled-as-put-by-id-direct.js:
* JSTests/stress/dfg-put-private-name-compiled-as-put-private-name-by-id.js:
* JSTests/stress/get-private-name-with-primitive.js:
* JSTests/stress/invalidate-array-iterator-prototype-next.js:
* JSTests/stress/private-method-and-field-named-constructor.js:
* JSTests/stress/private-method-check-structure-miss.js:
* JSTests/stress/private-method-invalid-multiple-brand-installation.js:
* JSTests/stress/private-method-invalidate-compiled-with-constant-symbol.js:
* JSTests/stress/private-method-polymorphic-with-constant-symbol.js:
* JSTests/stress/private-method-untyped-use.js:
* JSTests/stress/put-private-name-by-id-set-do-not-add-structure-trasition.js:
* JSTests/stress/put-private-name-invalid-define.js:
* JSTests/stress/put-private-name-invalid-store.js:
* JSTests/stress/put-private-name-invalidate-compiled-with-constant-symbol.js:
* JSTests/stress/put-private-name-untyped-use.js:
* JSTests/stress/put-private-name-with-primitive.js:
* JSTests/stress/regexp-with-runtime-syntax-errors.js:
* JSTests/stress/spread-calling.js:
Canonical link: https://commits.webkit.org/275433@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list