Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4e1ba2c9722c6ff520d9182f15a913c24d5ea94f
      
https://github.com/WebKit/WebKit/commit/4e1ba2c9722c6ff520d9182f15a913c24d5ea94f
  Author: Tyler Wilcock <[email protected]>
  Date:   2025-09-02 (Tue, 02 Sep 2025)

  Changed paths:
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp

  Log Message:
  -----------
  AX: Optimize AXIsolatedObject::setPropertyIn using the knowledge that we 
don't need to un-set bool values in the given AXPropertyVector or 
AXPropertyFlags
https://bugs.webkit.org/show_bug.cgi?id=298132
rdar://159478906

Reviewed by Joshua Hoffman.

Prior to this commit, when passed a false bool value, we did an extra 
`isDefaultValue` check. This commit removes that
check, using the knowledge that if we are given a false bool value, we can 
early return. This is because `setPropertyIn`
is part of the one-shot building process, i.e. it's only called when building 
IsolatedObjectData for the first time.
This means we don't need to handle a false value, as there's no current reason 
to set a bool property to true and then
set it to a false later — we create the object once, and never have to modify 
it again (that's handled by the AXIsolatedObject itself).

We hit this new fast path 87.5% of the time, or 15,368,432 times of 17,299,000 
total times, when building the accessibility
tree for html.spec.whatwg.org.

* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::setPropertyIn):

Canonical link: https://commits.webkit.org/299438@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to