DescriptionReland: Improve performance of GeometryMapper cache.
New version initializes m_cacheGeneration in GeometryMapperClipCache and
GeometryMapperTransformCache constructors. Verified it fixes the msan
layout test failures.
1. Store clips and transforms in vectors attached to the clip and transform nodes.
This avoids all hash map lookups. Invalidation uses a global cache generation id
(currently we don't support anything other than global invalidation of the
GeometryMapper caches).
2. Return clips and transforms by reference, to avoid copying.
and transforms relative to the same ancestor, so the vectors are short and hash
lookups are reduced.
BUG=692614
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Review-Url: https://codereview.chromium.org/2729243002
Cr-Commit-Position: refs/heads/master@{#455571}
Committed: https://chromium.googlesource.com/chromium/src/+/ee72c4b5d2fd1e4882bddca66e0f89fe8784a7fc
patch from issue 2729243002 at patchset 690001 (http://crrev.com/2729243002#ps690001)
Review-Url: https://codereview.chromium.org/2741803002
Cr-Commit-Position: refs/heads/master@{#455850}
Committed: https://chromium.googlesource.com/chromium/src/+/890521e5189ff65fb2c16f67c837cc09bcf503c9
Patch Set 1 #Dependent Patchsets: Messages
Total messages: 9 (5 generated)
|