DescriptionRemove [OverrideBuiltins] from HTMLCollection
This is basically a revert of r166628. While [OverrideBuiltins] helped with
Dromaeo's dom-query performance, it is against specification and it caused
the robohornet_pro benchmark to regress.
To minimize the performance impact of removing [OverrideBuiltins] on Dromaeo,
this CL generates slightly better code for the named property getter:
- Call HasRealNamedCallbackProperty() before GetRealNamedPropertyInPrototypeChain()
as it is cheaper and more likely. It also makes sense to check the local object
before traversing the prototype chain.
- Remove the HasRealNamedCallbackProperty() call as this is already included in
HasRealNamedProperty(). Both call LocalLookupRealNamedProperty() internally then
HasRealNamedCallbackProperty() does an extra IsPropertyCallbacks() check.
Note that Dromaeo's dom-query is still not as fast as with [OverrideBuiltins].
However, the performance hit is much lower now that the generated bindings code is
tweaked (-3.5% vs -15%).
R=haraken, arv
BUG=341192
BUG=341924
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=166799
Patch Set 1 #
Total comments: 5
Messages
Total messages: 8 (0 generated)
|