[Webkit-unassigned] [Bug 238654] New: devirtualize EventTarget::{ref, deref, eventTargetData}

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Mar 31 23:28:13 PDT 2022


https://bugs.webkit.org/show_bug.cgi?id=238654

            Bug ID: 238654
           Summary: devirtualize EventTarget::{ref,deref,eventTargetData}
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: DOM
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: heycam at apple.com

These functions are called very often during Speedometer 2.  Most EventTargets are Nodes, so we can avoid virtual calls (and inline a bit more) by being able to know whether they are Nodes.  We can do that by moving the Node::m_refCountAndParentSet field up to EventTarget and using that to tell whether the object is probably a Node.  I'm seeing a ~0.4% improvement on Apple Silicon for the benchmark with this.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20220401/24ec1ce2/attachment-0001.htm>


More information about the webkit-unassigned mailing list