Bug 101374 - Exploit ElementAttributeData sharing in Node.cloneNode.
Summary: Exploit ElementAttributeData sharing in Node.cloneNode.
Alias: None
Product: WebKit
Classification: Unclassified
Component: DOM (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Andreas Kling
Depends on:
Reported: 2012-11-06 10:55 PST by Andreas Kling
Modified: 2012-11-16 11:13 PST (History)
4 users (show)

See Also:

EWS experiment (10.96 KB, patch)
2012-11-06 10:55 PST, Andreas Kling
no flags Details | Formatted Diff | Diff
Patch (13.36 KB, patch)
2012-11-12 14:12 PST, Andreas Kling
andersca: review+
webkit.review.bot: commit-queue-
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-11-06 10:55:06 PST
Let's try this.
Comment 1 Andreas Kling 2012-11-06 10:55:33 PST
Created attachment 172618 [details]
EWS experiment
Comment 2 WebKit Review Bot 2012-11-06 10:57:32 PST
Attachment 172618 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/dom/Element.cpp', u'Source/..." exit_code: 1
Source/WebCore/dom/ElementAttributeData.cpp:109:  An else statement can be removed when the prior "if" concludes with a return, break, continue or goto statement.  [readability/control_flow] [4]
Total errors found: 1 in 3 files

If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Andreas Kling 2012-11-12 14:12:01 PST
Created attachment 173721 [details]
Comment 4 WebKit Review Bot 2012-11-12 20:07:07 PST
Comment on attachment 173721 [details]

Rejecting attachment 173721 [details] from commit-queue.

Failed to run "['/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch', '--status-host=queues.webkit.org', '-..." exit_code: 2

Last 500 characters of output:
CONFLICT (content): Merge conflict in Source/WebCore/ChangeLog
Failed to merge in the changes.
Patch failed at 0001 Replace DOMException TYPE_MISMATCH_ERR with TypeError

When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To restore the original branch and stop rebasing run "git rebase --abort".

rebase refs/remotes/origin/master: command returned error: 1

Died at Tools/Scripts/update-webkit line 154.

Full output: http://queues.webkit.org/results/14818407
Comment 5 Andreas Kling 2012-11-13 06:22:16 PST
Committed r134408: <http://trac.webkit.org/changeset/134408>
Comment 6 Adam Barth 2012-11-13 09:17:10 PST
This patch appears to be a 30% improvement on dom_perf's CreateNodes: