Bug 84575 - REGRESSION(r114870): Performance hit on DOM/CloneNodes and DOM/CreateNodes.
Summary: REGRESSION(r114870): Performance hit on DOM/CloneNodes and DOM/CreateNodes.
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: DOM (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Andreas Kling
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-04-23 01:28 PDT by Andreas Kling
Modified: 2012-04-23 01:40 PDT (History)
1 user (show)

See Also:


Attachments
Patch (1.91 KB, patch)
2012-04-23 01:31 PDT, Andreas Kling
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Kling 2012-04-23 01:28:07 PDT
This appears to be caused by ElementAttributeData::setAttributes() which does m_attributes.resize() before cloning attributes one by one.
The resize() fills the attribute vector with default-constructed objects (incurring hash lookups for QualifiedNames and whatnot.)
Comment 1 Andreas Kling 2012-04-23 01:31:18 PDT
Created attachment 138308 [details]
Patch
Comment 2 Antti Koivisto 2012-04-23 01:33:10 PDT
Comment on attachment 138308 [details]
Patch

r=me
Comment 3 Andreas Kling 2012-04-23 01:40:27 PDT
Comment on attachment 138308 [details]
Patch

Clearing flags on attachment: 138308

Committed r114879: <http://trac.webkit.org/changeset/114879>
Comment 4 Andreas Kling 2012-04-23 01:40:35 PDT
All reviewed patches have been landed.  Closing bug.