RESOLVED FIXED 281997
Decompress the previous sibling and renderer pointers in WebCore::Node
https://bugs.webkit.org/show_bug.cgi?id=281997
Summary Decompress the previous sibling and renderer pointers in WebCore::Node
David Degazio
Reported 2024-10-23 11:47:25 PDT
rdar://138409833 Currently WebCore::Node is fairly aggressively packed, with three separate CompactPointerTuple fields for its previous sibling (paired with the element state flags), renderer (paired with its style bitfields), and rare data (paired with rare data bitfields). But, we currently have four spare padding bytes in WebCore::Node, meaning we have room to decompact at least two of these. Let's extract out the renderer and previous sibling fields into whole pointers and separate 16-bit payloads in order to make full use of the space and simplify accessing these fields in both C++ and the DOM JIT.
Attachments
David Degazio
Comment 1 2024-10-23 14:13:54 PDT
EWS
Comment 2 2024-11-19 16:10:42 PST
Committed 286827@main (113f84cbe254): <https://commits.webkit.org/286827@main> Reviewed commits have been landed. Closing PR #35646 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.