RESOLVED FIXED 82928
Optimizing tracking of intruding floats being removed from RenderBlock during layout
https://bugs.webkit.org/show_bug.cgi?id=82928
Summary Optimizing tracking of intruding floats being removed from RenderBlock during...
Ken Buchanan
Reported 2012-04-02 12:46:12 PDT
This is a follow-up for bug 74056, for some performance improvements in special cases. dhyatt's comment on https://bugs.webkit.org/show_bug.cgi?id=74056 -- > Not going to minus for this but thought of a couple of optimizations if you don't mind following up: > > (1) If the oldIntrudingFloat set ever empties out, you can bail out of that last loop early. > > In other words: > > for (FloatingObjectSetIterator it = floatingObjectSet.begin(); it != end && !oldIntrudingFloatSet.isEmpty(); ++it) > oldIntrudingFloatSet.remove((*it)->m_renderer); > > That way once the set gets emptied out, you don't waste time iterating over floats that you know won't be found in the set. > > (2) If you cached an intruding object count and kept it up to date, you could really optimize the avoidsFloats case, since all it did was checked for if you had any intruding floats at all. Then you could make that case O(1) instead of O(n). > > I won't minus, but I'd appreciate a follow-up bug and fixes for this.
Attachments
Patch (2.30 KB, patch)
2012-04-12 11:45 PDT, Ken Buchanan
no flags
Ken Buchanan
Comment 1 2012-04-12 11:45:24 PDT
Dave Hyatt
Comment 2 2012-04-13 10:44:49 PDT
Comment on attachment 136945 [details] Patch r=me
WebKit Review Bot
Comment 3 2012-04-13 17:38:42 PDT
Comment on attachment 136945 [details] Patch Clearing flags on attachment: 136945 Committed r114190: <http://trac.webkit.org/changeset/114190>
WebKit Review Bot
Comment 4 2012-04-13 17:38:49 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.