Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3178ad3c3b9909bdead3bfc0df4dba93ddc01568
https://github.com/WebKit/WebKit/commit/3178ad3c3b9909bdead3bfc0df4dba93ddc01568
Author: bench <bench@local>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
A .metadata_never_index
M Source/WTF/Scripts/generate-unified-source-bundles.py
M Source/WebCore/CMakeLists.txt
M Source/WebCore/SaferCPPExpectations/NoUncountedMemberCheckerExpectations
M Source/WebCore/WebCoreDOMAndRenderingPrefix.h
R Source/WebCore/WebCoreRenderStyleInlinesPrefix.h
M Source/WebCore/accessibility/AXUtilities.cpp
M Source/WebCore/accessibility/AccessibilityObject.cpp
M Source/WebCore/accessibility/AccessibilityScrollView.cpp
M Source/WebCore/accessibility/cocoa/AXCoreObjectCocoa.mm
M Source/WebCore/accessibility/cocoa/AccessibilityObjectCocoa.mm
M Source/WebCore/accessibility/ios/AccessibilityObjectIOS.mm
M Source/WebCore/accessibility/mac/AXObjectCacheMac.mm
M Source/WebCore/accessibility/mac/AccessibilityObjectMac.mm
M Source/WebCore/editing/InsertNestedListCommand.cpp
M Source/WebCore/editing/ModifySelectionListLevel.cpp
M Source/WebCore/editing/RemoveFormatCommand.cpp
M Source/WebCore/editing/SimplifyMarkupCommand.cpp
M Source/WebCore/editing/cocoa/DataDetection.mm
M Source/WebCore/html/HTMLMeterElement.cpp
M Source/WebCore/html/HTMLSelectElement.cpp
M Source/WebCore/html/ModelDocument.cpp
M Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp
M Source/WebCore/inspector/agents/frame/FrameDOMAgent.cpp
M Source/WebCore/page/writing-tools/WritingToolsController.mm
M Source/WebCore/rendering/PaintInfo.h
M Source/WebCore/rendering/RenderBox.cpp
M Source/WebCore/rendering/RenderBoxModelObject.cpp
M Source/WebCore/rendering/RenderBoxModelObject.h
M Source/WebCore/rendering/RenderElement.cpp
M Source/WebCore/rendering/RenderElement.h
M Source/WebCore/rendering/RenderObject.h
M Source/WebCore/rendering/RenderObjectDocument.h
M Source/WebCore/rendering/RenderObjectInlines.h
M Source/WebCore/rendering/RenderTheme.cpp
M Source/WebCore/rendering/RenderTheme.h
M Source/WebCore/rendering/TextDecorationPainter.h
M Source/WebCore/rendering/cocoa/RenderThemeCocoa.h
M Source/WebCore/style/computed/StyleComputedStyle.cpp
M Source/WebCore/style/computed/StyleComputedStyle.h
M Source/WebCore/style/values/color/StyleColor.cpp
M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp
M Source/WebKit/WebProcess/Plugins/PluginView.cpp
M Source/WebKit/WebProcess/WebCoreSupport/ShareableBitmapUtilities.cpp
M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
M Source/WebKit/WebProcess/WebPage/ViewGestureGeometryCollector.cpp
M Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm
M Source/WebKit/WebProcess/cocoa/PlaybackSessionManager.mm
M Source/WebKit/WebProcess/cocoa/VideoPresentationManager.mm
M Source/WebKitLegacy/mac/DOM/DOM.mm
M Source/WebKitLegacy/mac/DOM/WebDOMOperations.mm
M Source/WebKitLegacy/mac/WebView/WebFrame.mm
M Source/WebKitLegacy/mac/WebView/WebFullScreenController.mm
M Source/WebKitLegacy/mac/WebView/WebHTMLView.mm
M Source/WebKitLegacy/mac/WebView/WebImmediateActionController.mm
M Source/WebKitLegacy/mac/WebView/WebView.mm
M Source/cmake/WebKitMacros.cmake
Log Message:
-----------
[Build Time] Reduce and centralize #includes of
StyleComputedStyle+[GS]ettersInlines.h
https://bugs.webkit.org/show_bug.cgi?id=316885
rdar://179310619
Reviewed by Mike Wyrzykowski.
Saves ~10s wall time in a clean build.
This patch removes #includes of StyleComputedStyle+[GS]ettersInlines.h from
outside style/, layout/, and rendering/.
As a consequence, the CMake build does not need @header anymore to work around
the cost of StyleComputedStyle+[GS]ettersInlines.h anymore. The jubmo unified
build naturally amortizes the header const per directory, and the
DOMAndRendering prefix header amortizes it even more.
* Source/WTF/Scripts/generate-unified-source-bundles.py: Support ignoring
@header for the CMake build.
* Source/WebCore/CMakeLists.txt: Remove the WebCoreRenderStyleInlines sub-target
because we rely on the jumbo unified build + prefix header now.
* Source/WebCore/WebCoreDOMAndRenderingPrefix.h: #include
StyleComputedStyle+[GS]ettersInlines.h
because they're super expensive and used by many translation units.
* Source/WebCore/WebCoreRenderStyleInlinesPrefix.h: Removed. There's no special
grouping just for files that #include this header anymore.
* Source/WebCore/accessibility/AXUtilities.cpp: Unified build fix -- include
what you use.
* Source/WebCore/accessibility/AccessibilityObject.cpp: Unified build fix -- be
specific to avoid a name conflict.
* Source/WebCore/accessibility/AccessibilityScrollView.cpp: Call an out of
line function to avoid huge header cost.
* Source/WebCore/accessibility/cocoa/AXCoreObjectCocoa.mm: Remove a dead include
to avoid huge header cost.
* Source/WebCore/accessibility/cocoa/AccessibilityObjectCocoa.mm: Call an out of
line function to avoid huge header cost.
* Source/WebCore/accessibility/mac/AXObjectCacheMac.mm: Unified build fix --
include
what you use.
* Source/WebCore/accessibility/mac/AccessibilityObjectMac.mm: Use the cheaper
header.
* Source/WebCore/editing/InsertNestedListCommand.cpp:
* Source/WebCore/editing/ModifySelectionListLevel.cpp:
* Source/WebCore/editing/RemoveFormatCommand.cpp:
* Source/WebCore/editing/SimplifyMarkupCommand.cpp:
* Source/WebCore/editing/cocoa/DataDetection.mm: Remove expensive dead includes.
* Source/WebCore/html/HTMLMeterElement.cpp: Unified build fix -- include
what you use.
* Source/WebCore/html/ModelDocument.cpp: Remove dead include.
* Source/WebCore/inspector/agents/frame/FrameDOMAgent.cpp: Unified build fix --
be
specific to avoid a name conflict.
* Source/WebCore/page/writing-tools/WritingToolsController.mm: Use an out of
line function to avoid header explosion.
* Source/WebCore/rendering/RenderBox.cpp: Moved a function from WebKit into
WebCore because it does rendering things and may benefit from inlining.
* Source/WebCore/rendering/RenderBoxModelObject.cpp:
* Source/WebCore/rendering/RenderBoxModelObject.h:
* Source/WebCore/rendering/RenderElement.cpp:
* Source/WebCore/rendering/RenderElement.h:
* Source/WebCore/rendering/RenderObject.h: Added out of line helpers for
WebKit clients that don't need to trade build speed for runtime speed.
* Source/WebCore/rendering/RenderObjectDocument.h: Added a frame() accessor
that doesn't require including the whole style system.
* Source/WebCore/rendering/RenderTheme.cpp:
* Source/WebCore/rendering/RenderTheme.h:
* Source/WebCore/style/computed/StyleComputedStyle.cpp:
* Source/WebCore/style/computed/StyleComputedStyle.h: Use out of line functions
for clients that are not core engine code.
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp: Use the less
expensive header.
* Source/WebKit/WebProcess/Plugins/PluginView.cpp:
* Source/WebKit/WebProcess/WebCoreSupport/ShareableBitmapUtilities.cpp:
* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
* Source/WebKit/WebProcess/WebPage/ViewGestureGeometryCollector.cpp: Use out of
line functions.
* Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm Unified build fix --
include
what you use.
* Source/WebKit/WebProcess/cocoa/VideoPresentationManager.mm:
* Source/WebKitLegacy/mac/DOM/DOM.mm: Use out of line functions.
* Source/WebKitLegacy/mac/DOM/WebDOMOperations.mm:
* Source/WebKitLegacy/mac/WebView/WebFrame.mm:
* Source/WebKitLegacy/mac/WebView/WebFullScreenController.mm: Removed dead
include.
* Source/WebKitLegacy/mac/WebView/WebHTMLView.mm: Use out of line function.
* Source/WebKitLegacy/mac/WebView/WebImmediateActionController.mm: Removed dead
include.
* Source/WebKitLegacy/mac/WebView/WebView.mm: Use out of line functions.
* Source/cmake/WebKitMacros.cmake: Ignore @header because it's not the optimal
grouping for the jumbo unified build.
Canonical link: https://commits.webkit.org/315023@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications