RESOLVED FIXED132548
Optimize JSRopeString for resolving directly to AtomicString.
https://bugs.webkit.org/show_bug.cgi?id=132548
Summary Optimize JSRopeString for resolving directly to AtomicString.
Andreas Kling
Reported 2014-05-04 13:51:48 PDT
We could make JSRopeString smarter when we know the output is going to be used as an AtomicString.
Attachments
Patch (18.04 KB, patch)
2014-05-04 14:19 PDT, Andreas Kling
no flags
Patch (18.53 KB, patch)
2014-05-04 16:05 PDT, Andreas Kling
fpizlo: review+
Andreas Kling
Comment 1 2014-05-04 14:19:01 PDT
Andreas Kling
Comment 2 2014-05-04 16:05:19 PDT
Benjamin Poulain
Comment 3 2014-05-04 19:31:02 PDT
Comment on attachment 230793 [details] Patch I would have done this differently. First use the rope in place to find the AtomicString. If none exist, then create the StringImpl and resolve. Any reason you went for this two steps resolution?
Andreas Kling
Comment 4 2014-05-04 19:46:22 PDT
(In reply to comment #3) > (From update of attachment 230793 [details]) > I would have done this differently. First use the rope in place to find the AtomicString. If none exist, then create the StringImpl and resolve. > > Any reason you went for this two steps resolution? For simplicity. Here we walk the fiber tree once instead of up to 3 times. In your version, we'd have to hash recursively, then check equality recursively and then (worst case) copy into a new string recursively.
Andreas Kling
Comment 5 2014-05-04 21:43:55 PDT
Forgot to mention in ChangeLog, this is a ~20% progression on Dromaeo/dom-query.html
Filip Pizlo
Comment 6 2014-05-04 21:50:20 PDT
Comment on attachment 230793 [details] Patch lgtm
Andreas Kling
Comment 7 2014-05-04 23:45:14 PDT
Note You need to log in before you can comment on or make changes to this bug.