...
<rdar://83297515>
Created attachment 439533 [details] Patch.
Created attachment 439534 [details] Patch
Comment on attachment 439534 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=439534&action=review r=me with fix. > Source/JavaScriptCore/dfg/DFGDoesGCCheck.h:79 > + unsigned nodeOp() { return u.other & nodeOpMask; } This should be: unsigned nodeOp() { return (u.other >> nodeOpShift) & nodeOpMask; }
Comment on attachment 439534 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=439534&action=review >> Source/JavaScriptCore/dfg/DFGDoesGCCheck.h:79 >> + unsigned nodeOp() { return u.other & nodeOpMask; } > > This should be: > unsigned nodeOp() { return (u.other >> nodeOpShift) & nodeOpMask; } Will fix. Thanks
Created attachment 439549 [details] patch for landing
Committed r283207 (242249@main): <https://commits.webkit.org/242249@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 439549 [details].
Hi, this new test fails on every architecture (x86_64, aarch64, ppc64le, s390x) with the error: Running stress/verify-can-gc-node-index.js.default stress/verify-can-gc-node-index.js.default: Exception: RangeError: Maximum call stack size exceeded. stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:7:11 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: f@verify-can-gc-node-index.js:8:6 stress/verify-can-gc-node-index.js.default: ERROR: Unexpected exit code: 3 FAIL: stress/verify-can-gc-node-index.js.default So it's doing too much recursion. This is using the JSCOnly port and Red Hat's internal CI, which has cloop enabled, but I see the JSC EWS failed in the same way, and I doubt that EWS is using cloop.
Created attachment 439617 [details] [fast-cq] fix test
Committed r283231 (242273@main): <https://commits.webkit.org/242273@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 439617 [details].