[Webkit-unassigned] [Bug 38557] r58526 introduced a ~30% regression on Dromaeo JS lib

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu May 6 09:48:18 PDT 2010


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


Darin Adler <darin at apple.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|antonm at chromium.org         |webkit-unassigned at lists.web
                   |                            |kit.org




--- Comment #6 from Darin Adler <darin at apple.com>  2010-05-06 09:48:17 PST ---
(In reply to comment #4)
> -    node->markCachedNodeLists(markStack, *Heap::heap(this)->globalData());
> +    // node->markCachedNodeLists(markStack, *Heap::heap(this)->globalData());

To get maximum speed on this line of code, we need to make sure we do the
minimum amount of work on nodes without outstanding node lists. Finding the
heap for "this" so we can get the global data pointer is one example of
unwanted work. Also, we need to inline much of the checking for node lists,
including at least the rare data bit check and possibly also the rare data hash
table lookup and then the subsequent check for the cached node lists pointer
inside the rare data structure.

At the moment, I believe we do have the rare data bit check inlined, so the
issue may be the overhead in getting the global data pointer.

If worse comes to worst we might have to devote a bit in the Node to indicating
whether we have any cached node lists.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list