[Webkit-unassigned] [Bug 224158] Lots of wasted vector capacity via InlineFormattingState

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Apr 3 12:12:02 PDT 2021


https://bugs.webkit.org/show_bug.cgi?id=224158

--- Comment #2 from Simon Fraser (smfr) <simon.fraser at apple.com> ---
Wasted capacity: 14656 bytes (used 5312 of 19968 bytes, utilization: 26.60%) - 39 allocations
5   0x3dccd95c6 WTF::VectorBuffer<WebCore::Layout::InlineItem, 0ul, WTF::FastMalloc>::VectorBuffer()
6   0x3dccd9588 WTF::Vector<WebCore::Layout::InlineItem, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>::Vector()
7   0x3dccb7895 WTF::Vector<WebCore::Layout::InlineItem, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>::Vector()
8   0x3dccb7833 WebCore::Layout::InlineFormattingState::InlineFormattingState(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
9   0x3dccb7925 WebCore::Layout::InlineFormattingState::InlineFormattingState(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
10  0x3dcc65a89 std::__1::__unique_if<WebCore::Layout::InlineFormattingState>::__unique_single std::__1::make_unique<WebCore::Layout::InlineFormattingState, WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >, WebCore::Layout::LayoutState&>(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
11  0x3dcc6595b decltype(auto) WTF::makeUnique<WebCore::Layout::InlineFormattingState, WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >, WebCore::Layout::LayoutState&>(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
12  0x3dcc5c5ab WebCore::Layout::LayoutState::ensureInlineFormattingState(WebCore::Layout::ContainerBox const&)::$_11::operator()() const
13  0x3dcc5acf3 WebCore::Layout::LayoutState::ensureInlineFormattingState(WebCore::Layout::ContainerBox const&)
14  0x3dcce8ae3 WebCore::LayoutIntegration::LineLayout::LineLayout(WebCore::RenderBlockFlow&)
15  0x3dcce8bed WebCore::LayoutIntegration::LineLayout::LineLayout(WebCore::RenderBlockFlow&)
16  0x3dd8dd844 std::__1::__unique_if<WebCore::LayoutIntegration::LineLayout>::__unique_single std::__1::make_unique<WebCore::LayoutIntegration::LineLayout, WebCore::RenderBlockFlow&>(WebCore::RenderBlockFlow&)
17  0x3dd8c0016 decltype(auto) WTF::makeUnique<WebCore::LayoutIntegration::LineLayout, WebCore::RenderBlockFlow&>(WebCore::RenderBlockFlow&)
18  0x3dd8b0a90 WebCore::RenderBlockFlow::layoutModernLines(bool, WebCore::LayoutUnit&, WebCore::LayoutUnit&)
19  0x3dd8ae708 WebCore::RenderBlockFlow::layoutInlineChildren(bool, WebCore::LayoutUnit&, WebCore::LayoutUnit&)
20  0x3dd8ad856 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit)
21  0x3dd895009 WebCore::RenderBlock::layout()
22  0x3dd7e74ec WebCore::RenderElement::layoutIfNeeded()

Wasted capacity: 12960 bytes (used 6640 of 19600 bytes, utilization: 33.88%) - 49 allocations
5   0x3dccd969d WTF::VectorBuffer<WebCore::Layout::InlineLineGeometry, 10ul, WTF::FastMalloc>::VectorBuffer()
6   0x3dccd9628 WTF::Vector<WebCore::Layout::InlineLineGeometry, 10ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>::Vector()
7   0x3dccb78b5 WTF::Vector<WebCore::Layout::InlineLineGeometry, 10ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>::Vector()
8   0x3dccb7845 WebCore::Layout::InlineFormattingState::InlineFormattingState(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
9   0x3dccb7925 WebCore::Layout::InlineFormattingState::InlineFormattingState(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
10  0x3dcc65a89 std::__1::__unique_if<WebCore::Layout::InlineFormattingState>::__unique_single std::__1::make_unique<WebCore::Layout::InlineFormattingState, WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >, WebCore::Layout::LayoutState&>(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
11  0x3dcc6595b decltype(auto) WTF::makeUnique<WebCore::Layout::InlineFormattingState, WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >, WebCore::Layout::LayoutState&>(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
12  0x3dcc5c5ab WebCore::Layout::LayoutState::ensureInlineFormattingState(WebCore::Layout::ContainerBox const&)::$_11::operator()() const
13  0x3dcc5acf3 WebCore::Layout::LayoutState::ensureInlineFormattingState(WebCore::Layout::ContainerBox const&)
14  0x3dcce8ae3 WebCore::LayoutIntegration::LineLayout::LineLayout(WebCore::RenderBlockFlow&)
15  0x3dcce8bed WebCore::LayoutIntegration::LineLayout::LineLayout(WebCore::RenderBlockFlow&)
16  0x3dd8dd844 std::__1::__unique_if<WebCore::LayoutIntegration::LineLayout>::__unique_single std::__1::make_unique<WebCore::LayoutIntegration::LineLayout, WebCore::RenderBlockFlow&>(WebCore::RenderBlockFlow&)
17  0x3dd8c0016 decltype(auto) WTF::makeUnique<WebCore::LayoutIntegration::LineLayout, WebCore::RenderBlockFlow&>(WebCore::RenderBlockFlow&)
18  0x3dd8b0a90 WebCore::RenderBlockFlow::layoutModernLines(bool, WebCore::LayoutUnit&, WebCore::LayoutUnit&)
19  0x3dd8ae708 WebCore::RenderBlockFlow::layoutInlineChildren(bool, WebCore::LayoutUnit&, WebCore::LayoutUnit&)
20  0x3dd8ad856 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit)
21  0x3dd895009 WebCore::RenderBlock::layout()
22  0x3dd8b0072 WebCore::RenderBlockFlow::layoutBlockChild(WebCore::RenderBox&, WebCore::RenderBlockFlow::MarginInfo&, WebCore::LayoutUnit&, WebCore::LayoutUnit&)

Wasted capacity: 12360 bytes (used 3240 of 15600 bytes, utilization: 20.77%) - 39 allocations
5   0x3dccd969d WTF::VectorBuffer<WebCore::Layout::InlineLineGeometry, 10ul, WTF::FastMalloc>::VectorBuffer()
6   0x3dccd9628 WTF::Vector<WebCore::Layout::InlineLineGeometry, 10ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>::Vector()
7   0x3dccb78b5 WTF::Vector<WebCore::Layout::InlineLineGeometry, 10ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>::Vector()
8   0x3dccb7845 WebCore::Layout::InlineFormattingState::InlineFormattingState(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
9   0x3dccb7925 WebCore::Layout::InlineFormattingState::InlineFormattingState(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
10  0x3dcc65a89 std::__1::__unique_if<WebCore::Layout::InlineFormattingState>::__unique_single std::__1::make_unique<WebCore::Layout::InlineFormattingState, WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >, WebCore::Layout::LayoutState&>(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
11  0x3dcc6595b decltype(auto) WTF::makeUnique<WebCore::Layout::InlineFormattingState, WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >, WebCore::Layout::LayoutState&>(WTF::Ref<WebCore::Layout::FloatingState, WTF::RawPtrTraits<WebCore::Layout::FloatingState> >&&, WebCore::Layout::LayoutState&)
12  0x3dcc5c5ab WebCore::Layout::LayoutState::ensureInlineFormattingState(WebCore::Layout::ContainerBox const&)::$_11::operator()() const
13  0x3dcc5acf3 WebCore::Layout::LayoutState::ensureInlineFormattingState(WebCore::Layout::ContainerBox const&)
14  0x3dcce8ae3 WebCore::LayoutIntegration::LineLayout::LineLayout(WebCore::RenderBlockFlow&)
15  0x3dcce8bed WebCore::LayoutIntegration::LineLayout::LineLayout(WebCore::RenderBlockFlow&)
16  0x3dd8dd844 std::__1::__unique_if<WebCore::LayoutIntegration::LineLayout>::__unique_single std::__1::make_unique<WebCore::LayoutIntegration::LineLayout, WebCore::RenderBlockFlow&>(WebCore::RenderBlockFlow&)
17  0x3dd8c0016 decltype(auto) WTF::makeUnique<WebCore::LayoutIntegration::LineLayout, WebCore::RenderBlockFlow&>(WebCore::RenderBlockFlow&)
18  0x3dd8b0a90 WebCore::RenderBlockFlow::layoutModernLines(bool, WebCore::LayoutUnit&, WebCore::LayoutUnit&)
19  0x3dd8ae708 WebCore::RenderBlockFlow::layoutInlineChildren(bool, WebCore::LayoutUnit&, WebCore::LayoutUnit&)
20  0x3dd8ad856 WebCore::RenderBlockFlow::layoutBlock(bool, WebCore::LayoutUnit)
21  0x3dd895009 WebCore::RenderBlock::layout()
22  0x3dd7e74ec WebCore::RenderElement::layoutIfNeeded()

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20210403/d30db769/attachment-0001.htm>


More information about the webkit-unassigned mailing list