Bug 77831 - REGRESSION(r106756): 10% performance hit on DOM/Template.
: REGRESSION(r106756): 10% performance hit on DOM/Template.
: WebKit
: 528+ (Nightly build)
: Unspecified Unspecified
: P2 Normal
Assigned To:
  Show dependency treegraph
Reported: 2012-02-05 03:36 PST by
Modified: 2012-02-06 15:14 PST (History)

Kind of a patch (9.53 KB, patch)
2012-02-05 18:00 PST, Andreas Kling
rniwa: review+
Review Patch | Details | Formatted Diff | Diff


You need to log in before you can comment on or make changes to this bug.

Description From 2012-02-05 03:36:07 PST
The removal of CSSMappedAttributeDeclaration on bug 77820 caused a ~10% perf hit on the DOM/Template test.
This happens because the CSS values generated from presentation attributes are no longer created in the Document's CSSValuePool.
------- Comment #1 From 2012-02-05 04:54:35 PST -------
I'm gonna sleep on this idea, but I'm thinking we could specialize StypePropertySet for attribute styles, to share some logic with inline styles.

It would have a parent element, but wouldn't invalidateStyleAttribute() when mutating. We might also be able to use setNeedsStyleRecalc(InlineStyleChange) instead of FullStyleChange..
------- Comment #2 From 2012-02-05 18:00:32 PST -------
Created an attachment (id=125547) [details]
Kind of a patch
------- Comment #3 From 2012-02-06 13:27:34 PST -------
This bug is a show-stopper for the Chromium port. This regression is likely causing http://crbug.com/112854 and preventing Chromium from rolling a new version of WebKit.

Andreas, could you make sure the fix get landed sooner rather than later?
------- Comment #4 From 2012-02-06 14:12:02 PST -------
kling, could you land this patch ASAP? I can land on your behalf as well if you're busy for something else.
------- Comment #5 From 2012-02-06 15:14:22 PST -------
Committed r106863: <http://trac.webkit.org/changeset/106863>