Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: dccc9fb7ac8e6ae61fbe3f4cda674b7c65baa021
https://github.com/WebKit/WebKit/commit/dccc9fb7ac8e6ae61fbe3f4cda674b7c65baa021
Author: Jer Noble <[email protected]>
Date: 2026-03-13 (Fri, 13 Mar 2026)
Changed paths:
M Source/WebCore/accessibility/AXLocalFrame.cpp
M Source/WebCore/accessibility/AccessibilityObject.cpp
M Source/WebCore/css/CSSToLengthConversionData.cpp
M Source/WebCore/dom/XMLDocument.h
M Source/WebCore/html/HTMLSelectElement.cpp
M Source/WebCore/inspector/agents/page/PageTimelineAgent.cpp
M Source/WebCore/loader/cache/CachedFont.cpp
M Source/WebCore/mathml/MathMLElement.cpp
M Source/WebCore/page/LocalFrameView.cpp
M Source/WebCore/page/LocalFrameView.h
M Source/WebCore/page/LocalFrameViewLayoutContext.h
M Source/WebCore/platform/win/PasteboardWin.cpp
M Source/WebCore/rendering/BackgroundPainter.cpp
M Source/WebCore/rendering/InlineBoxPainter.cpp
M Source/WebCore/rendering/PositionedLayoutConstraints.cpp
M Source/WebCore/rendering/RenderBlockFlow.cpp
M Source/WebCore/rendering/RenderBox.h
M Source/WebCore/rendering/RenderElement.cpp
M Source/WebCore/rendering/RenderFrameBase.h
M Source/WebCore/rendering/RenderLayer.cpp
M Source/WebCore/rendering/RenderLayer.h
M Source/WebCore/rendering/RenderLayerBacking.cpp
M Source/WebCore/rendering/RenderLayerInlines.h
M Source/WebCore/rendering/RenderLayerModelObject.cpp
M Source/WebCore/rendering/RenderLayerModelObject.h
M Source/WebCore/rendering/RenderLayerScrollableArea.cpp
M Source/WebCore/rendering/RenderLayoutState.cpp
M Source/WebCore/rendering/RenderMultiColumnFlow.cpp
M Source/WebCore/rendering/RenderObject.cpp
M Source/WebCore/rendering/RenderObject.h
M Source/WebCore/rendering/RenderObjectDocument.h
M Source/WebCore/rendering/RenderObjectInlines.h
M Source/WebCore/rendering/RenderReplaced.cpp
M Source/WebCore/rendering/RenderScrollbarPart.cpp
M Source/WebCore/rendering/RenderSearchField.cpp
M Source/WebCore/rendering/RenderView.cpp
M Source/WebCore/rendering/RenderView.h
M Source/WebCore/rendering/svg/SVGPaintServerHandlingInlines.h
M Source/WebCore/rendering/svg/legacy/LegacyRenderSVGContainer.cpp
M Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResource.cpp
M Source/WebCore/rendering/svg/legacy/LegacyRenderSVGResourceSolidColor.cpp
M Source/WebCore/style/AnchorPositionEvaluator.cpp
M Source/WebCore/xml/XSLTProcessor.cpp
M Source/WebCore/xml/parser/XMLDocumentParser.h
Log Message:
-----------
[Build Speed] Remove LocalFrameView.h from RenderView.h, RenderBox.h, and
other headers
https://bugs.webkit.org/show_bug.cgi?id=309581
<rdar://172202765>
Reviewed by Tim Horton and Ryosuke Niwa.
LocalFrameView.h was the most expensive header in WebCore by total parse time
(328 inclusions ×
1110ms avg = 364s). This patch removes it from RenderView.h, RenderBox.h,
RenderFrameBase.h,
XMLDocumentParser.h, and XMLDocument.h, replacing with forward declarations
where needed.
After this change, LocalFrameView.h drops to 174 inclusions × 159ms avg = 28s,
and total WebCore
frontend parsing time is reduced by ~430s(8559s → 8129s), a 5% improvement.
RenderView::frameView() is moved out-of-line since its inline body required the
full LocalFrameView
definition.
RenderFrameBase::childView() is removed as it had no callers.
Two layerAccessPrevented() assertions in RenderLayerInlines.h are removed as
they required the full
LocalFrameView definition.
Several .cpp files gain explicit includes they previously obtained transitively.
* Source/WebCore/accessibility/AXLocalFrame.cpp:
* Source/WebCore/css/CSSToLengthConversionData.cpp:
* Source/WebCore/dom/XMLDocument.h:
* Source/WebCore/html/HTMLSelectElement.cpp:
* Source/WebCore/loader/cache/CachedFont.cpp:
* Source/WebCore/mathml/MathMLElement.cpp:
* Source/WebCore/rendering/InlineBoxPainter.cpp:
* Source/WebCore/rendering/RenderBox.h:
* Source/WebCore/rendering/RenderFrameBase.h:
(WebCore::RenderFrameBase::childView const): Deleted.
* Source/WebCore/rendering/RenderLayer.h:
* Source/WebCore/rendering/RenderLayerInlines.h:
* Source/WebCore/rendering/RenderObjectInlines.h:
* Source/WebCore/rendering/RenderView.cpp:
(WebCore::RenderView::frameView const):
* Source/WebCore/rendering/RenderView.h:
* Source/WebCore/rendering/svg/legacy/LegacyRenderSVGContainer.cpp:
* Source/WebCore/xml/XSLTProcessor.cpp:
* Source/WebCore/xml/parser/XMLDocumentParser.h:
Canonical link: https://commits.webkit.org/309216@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications