layout: Implement the correct behavior for block formatting contexts adjacent to floats per CSS 2.1 § 9.5. #1734

Closed
wants to merge 2 commits into
from

Projects

None yet

3 participants

@pcwalton
Contributor

Results in an 80% parallel improvement over sequential on youtube.com.

This is quite tricky—it involves a sea change to layout in order to make block layout interruptible and resumable, and intertwines assign-widths and assign-heights even more—and I'd be happy to go over this via video or IRC.

r? @larsbergstrom

@highfive

warning Warning warning

  • These commits modify unsafe code. Please review it carefully!
  • @pcwalton, please confirm that src/test/html/acid1.html and your favourite wikipedia page still render correctly!
@hoppipolla-critic-bot

Critic review: https://critic.hoppipolla.co.uk/r/857

This is an external review system which you may optionally use for the code review of your pull request.

In order to help critic track your changes, please do not make in-place history rewrites (e.g. via git rebase -i or git commit --amend) when updating this pull request.

@pcwalton
Contributor

New version of the patch unbreaks Wikipedia and is based on top of the float context rewrite.

r? @kmcallister

pcwalton added some commits Feb 19, 2014
@pcwalton pcwalton layout: Attempt to lay out blocks in parallel if we can prove (via
`clear` or by establishing a block formatting context) that they are
unaffected by floats.

This results in a 2.78x parallel speedup over sequential on the attached
test case, `perf-acid1.html`.
3589161
@pcwalton pcwalton layout: Implement the correct behavior for block formatting contexts
adjacent to floats per CSS 2.1 § 9.5.

Results in an 80% parallel improvement on YouTube.
791ff9b
@pcwalton
Contributor

Superseded by #2256.

@pcwalton pcwalton closed this Apr 29, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment