-
Notifications
You must be signed in to change notification settings - Fork 6.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Store more information on table break tokens.
This way we avoid O(n^m) performance complexity [1] in subsequent fragments. When performing the initial table layout measure pass for non-first fragments, we are pretty much guaranteed to miss the measure cache, because of CL:3967751. This is something we cannot afford when nested tables are involved. The whole ComputeRows() design depends on cache hits, or we'd descend all the way to the innermost table for each table we attempt to lay out. [1] O(n^m): 'n' is the "amount of content" inside the tables, 'm' is the number of tables nested. This makes perf_tests/layout/multicol/deeply-nested-tables-2.html about 700 times faster. (cherry picked from commit 2c12f88) Bug: 1400918 Change-Id: Ib7fafe2b13f6f7ba35f74b3f49937d4d621178ad Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4151250 Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org> Commit-Queue: Morten Stenshorne <mstensho@chromium.org> Cr-Original-Commit-Position: refs/heads/main@{#1090986} Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4158032 Auto-Submit: Morten Stenshorne <mstensho@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/branch-heads/5481@{#249} Cr-Branched-From: 130f3e4-refs/heads/main@{#1084008}
- Loading branch information
Showing
3 changed files
with
50 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters