Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 8f6d89b32a384de3e053e307f02bf4120a648575
https://github.com/WebKit/WebKit/commit/8f6d89b32a384de3e053e307f02bf4120a648575
Author: Alan Baradlay <[email protected]>
Date: 2023-08-20 (Sun, 20 Aug 2023)
Changed paths:
M Source/WebCore/layout/integration/LayoutIntegrationBoxTree.cpp
M Source/WebCore/rendering/RenderText.cpp
M Source/WebCore/rendering/RenderText.h
Log Message:
-----------
[IFC] Cache canUseSimplifiedTextMeasuring on RenderText
https://bugs.webkit.org/show_bug.cgi?id=260426
Reviewed by Antti Koivisto.
1. Computing canUseSimplifiedTextMeasuring is an expensive operation (it may
iterate through all the glyphs of the text content)
2. We used to cache this information on RenderText (see 260675@main) and now
it's computed at BoxTree building.
3. Due to eager (IFC integration) invalidation, we destroy BoxTree in cases
where we still keep associated RenderText renderers alive.
~10% progression on
PerformanceTests/Layout/line-layout-preferred-width-break-all.html
* PerformanceTests/Layout/line-layout.html:
* Source/WebCore/layout/integration/LayoutIntegrationBoxTree.cpp:
(WebCore::LayoutIntegration::BoxTree::createLayoutBox):
* Source/WebCore/rendering/RenderText.cpp:
(WebCore::RenderText::setRenderedText):
* Source/WebCore/rendering/RenderText.h:
(WebCore::RenderText::setCanUseSimplifiedTextMeasuring):
(WebCore::RenderText::canUseSimplifiedTextMeasuring const):
Canonical link: https://commits.webkit.org/267081@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes