commit | 739aa26bc184a0e53999e6fdecd3ab11911c5f16 | [log] [tgz] |
---|---|---|
author | Ian Kilpatrick <ikilpatrick@chromium.org> | Thu Nov 01 18:33:19 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Thu Nov 01 18:33:19 2018 |
tree | c1d5e897bd7dd11d9ccc2dc88e4f4cc8b1db1fa3 | |
parent | c048ea12fd9feb71cce72880ba53046762faed29 [diff] |
[LayoutNG] Avoid bookkeeping shape_exclusions if shapes aren't present. We spend a lot of time collecting floats. This is for an edge-case calculation when shape-outside is specified on another float. Typically this doesn't happen. This change checks if a float is added with shape outside, and invalidates the derived_geometry_ member to indicate it needs to track these objects now. This removes one of the last large allocations in the exclusion space code, and improves micro-benchmarks by 5-10%. Bug: 635619 Change-Id: I32abb143959e28c526c16e779f9e2dc9c0992d56 Reviewed-on: https://chromium-review.googlesource.com/c/1309144 Reviewed-by: Christian Biesinger <cbiesinger@chromium.org> Reviewed-by: Morten Stenshorne <mstensho@chromium.org> Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org> Cr-Commit-Position: refs/heads/master@{#604647}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .