Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dafcff7846dbe25993d09fb7cd1babf1f2d9ec11
      
https://github.com/WebKit/WebKit/commit/dafcff7846dbe25993d09fb7cd1babf1f2d9ec11
  Author: Geoffrey Garen <[email protected]>
  Date:   2026-06-16 (Tue, 16 Jun 2026)

  Changed paths:
    M Source/JavaScriptCore/CMakeLists.txt
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/JavaScriptCoreJITPrefix.h
    M Source/JavaScriptCore/bytecode/VariableWriteFireDetail.cpp
    M Source/JavaScriptCore/bytecode/VariableWriteFireDetail.h
    A Source/JavaScriptCore/bytecode/VariableWriteFireDetailInlines.h
    M Source/JavaScriptCore/dfg/DFGOperations.cpp
    M Source/JavaScriptCore/ftl/FTLOperations.cpp
    M Source/JavaScriptCore/heap/MarkedBlock.h
    M Source/JavaScriptCore/heap/PreciseAllocation.h
    M Source/JavaScriptCore/heap/VisitRaceKey.h
    M Source/JavaScriptCore/heap/WeakSet.cpp
    M Source/JavaScriptCore/heap/WeakSet.h
    M Source/JavaScriptCore/heap/WeakSetInlines.h
    M Source/JavaScriptCore/jit/JITOperations.cpp
    M Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
    M Source/JavaScriptCore/runtime/FunctionExecutable.h
    M Source/JavaScriptCore/runtime/FunctionExecutableInlines.h
    M Source/JavaScriptCore/runtime/JSAsyncFunction.cpp
    M Source/JavaScriptCore/runtime/JSAsyncGeneratorFunction.cpp
    M Source/JavaScriptCore/runtime/JSCInlines.h
    M Source/JavaScriptCore/runtime/JSGeneratorFunction.cpp
    M Source/JavaScriptCore/runtime/JSLexicalEnvironment.h
    M Source/JavaScriptCore/runtime/JSLexicalEnvironmentInlines.h
    M Source/JavaScriptCore/runtime/JSModuleEnvironment.cpp
    M Source/JavaScriptCore/runtime/JSObject.h
    M Source/JavaScriptCore/runtime/JSObjectInlines.h
    M Source/JavaScriptCore/runtime/JSSegmentedVariableObject.cpp
    M Source/JavaScriptCore/runtime/JSSymbolTableObject.h
    A Source/JavaScriptCore/runtime/JSSymbolTableObjectInlines.h
    M Source/JavaScriptCore/runtime/Structure.h
    M Source/JavaScriptCore/runtime/StructureCache.h
    M Source/JavaScriptCore/runtime/StructureInlines.h
    M Source/JavaScriptCore/runtime/StructureTransitionTable.h
    M Source/JavaScriptCore/runtime/SymbolTable.h
    M Source/JavaScriptCore/runtime/SymbolTableInlines.h
    M Source/JavaScriptCore/runtime/TypeSet.h
    M Source/WTF/WTF.xcodeproj/project.pbxproj
    M Source/WTF/wtf/CMakeLists.txt
    M Source/WTF/wtf/MemoryPressureHandler.cpp
    M Source/WTF/wtf/MemoryPressureHandler.h
    M Source/WTF/wtf/text/AtomStringImpl.cpp
    M Source/WTF/wtf/text/AtomStringImpl.h
    M Source/WTF/wtf/text/StringImpl.h
    M Source/WTF/wtf/text/SymbolImpl.cpp
    M Source/WTF/wtf/text/SymbolImpl.h
    A Source/WTF/wtf/text/UniquedStringImpl.cpp
    M Source/WTF/wtf/text/UniquedStringImpl.h
    M Source/WebCore/CMakeLists.txt
    M Source/WebCore/DerivedSources.make
    M Source/WebCore/Headers.cmake
    M Source/WebCore/SaferCPPExpectations/ForwardDeclCheckerExpectations
    M Source/WebCore/SaferCPPExpectations/UncheckedCallArgsCheckerExpectations
    M Source/WebCore/SaferCPPExpectations/UncountedCallArgsCheckerExpectations
    M Source/WebCore/WebCoreDOMAndRenderingPrefix.h
    M Source/WebCore/WebCoreJSBindingsPrefix.h
    M Source/WebCore/WebCorePrefix.h
    M Source/WebCore/WebCoreStylePrefix.h
    M Source/WebCore/css/scripts/process-css-properties.py
    A 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties+ConstructionInlines.h
    M 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties.h
    M Source/WebCore/dom/QualifiedName.h
    M Source/WebCore/dom/UserGestureIndicator.cpp
    M Source/WebCore/dom/UserGestureIndicator.h
    M Source/WebCore/html/HTMLElement.cpp
    M Source/WebCore/html/HTMLElement.h
    M Source/WebCore/loader/PCMTokens.h
    M Source/WebCore/loader/PolicyContainer.cpp
    M Source/WebCore/loader/PolicyContainer.h
    M Source/WebCore/loader/PrivateClickMeasurement.cpp
    M Source/WebCore/platform/graphics/Color.h
    M Source/WebCore/platform/graphics/CornerRadii.h
    M Source/WebCore/platform/graphics/Image.h
    M Source/WebCore/platform/graphics/IntRect.h
    M Source/WebCore/platform/graphics/IntSize.h
    M Source/WebCore/platform/graphics/LayoutPoint.h
    M Source/WebCore/platform/graphics/LayoutRect.h
    M Source/WebCore/platform/graphics/LayoutRoundedRect.h
    M Source/WebCore/platform/graphics/LayoutSize.h
    M Source/WebCore/platform/graphics/PlatformDynamicRangeLimit.h
    M Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.mm
    M Source/WebCore/platform/graphics/transforms/TransformationMatrix.h
    M Source/WebCore/platform/network/BlobData.h
    M Source/WebCore/rendering/RenderElement.h
    M Source/WebCore/style/computed/StyleComputedStyle+ConstructionInlines.h
    M Source/WebCore/style/computed/StyleComputedStyle.cpp
    M Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.cpp
    M Source/WebKit/WebKitPrefix.h
    M Source/WebKit/WebKitUIProcessPrefix.h

  Log Message:
  -----------
  [CMake] Expand prefix headers
https://bugs.webkit.org/show_bug.cgi?id=317167
rdar://179758133

Reviewed by Elliott Williams.

~7% clean build speedup.

Expanded prefix headers to include any header that's included by >= 75% of
(unified) translation units. With the combination of narrow sub-targets and
jumbo unified builds, the hit rate is pretty high.

Expanded the WebCoreStyle subtarget to take advantage of header affinity.
(Many headers meet the 75% target for WebCoreStyle, but do not meet it for
the broader WebCoreDOMAndRendering sub-target.)

Did lots of fixups to address cases where a caller pre-compiles an inline
function and a callee doesn't export what's needed to make that work.

* Source/JavaScriptCore/CMakeLists.txt: New inlines file.

* Source/JavaScriptCore/JavaScriptCoreJITPrefix.h: Expand the prefix to 75%.

* Source/JavaScriptCore/bytecode/VariableWriteFireDetail.h
* Source/JavaScriptCore/bytecode/VariableWriteFireDetailInlines.h: Moved a
constructor to a separate Inlines.h file since many clients don't need it.

* Source/JavaScriptCore/heap/MarkedBlock.h:
* Source/JavaScriptCore/heap/PreciseAllocation.h
* Source/JavaScriptCore/heap/VisitRaceKey.h
* Source/JavaScriptCore/heap/WeakSet.cpp
* Source/JavaScriptCore/heap/WeakSet.h
* Source/JavaScriptCore/heap/WeakSetInlines.h
* Source/JavaScriptCore/runtime/JSCInlines.h
* Source/JavaScriptCore/runtime/Structure.h
* Source/JavaScriptCore/runtime/StructureCache.h
* Source/JavaScriptCore/runtime/StructureInlines.h
* Source/JavaScriptCore/runtime/StructureTransitionTable.h
* Source/JavaScriptCore/runtime/TypeSet.h
* Source/WTF/wtf/MemoryPressureHandler.cpp
* Source/WTF/wtf/MemoryPressureHandler.h: Export or move slow case functions
called by inline functions.

* Source/WebCore/CMakeLists.txt: Expand WebCoreStyle

* Source/WebCore/DerivedSources.make
* Source/WebCore/Headers.cmake: Add new headers.

* Source/WebCore/WebCoreDOMAndRenderingPrefix.h
* Source/WebCore/WebCoreJSBindingsPrefix.h
* Source/WebCore/WebCorePrefix.h
* Source/WebCore/WebCoreStylePrefix.h: Expand the prefix to 75%.

* Source/WebCore/css/scripts/process-css-properties.py: Separate out 
constructors
to enable their inlines without including the full [GS]ettersInlines.h file.

* 
Source/WebCore/css/scripts/test/TestCSSPropertiesResults/StyleComputedStyleProperties.h
* Source/WebCore/dom/QualifiedName.h
* Source/WebCore/dom/UserGestureIndicator.cpp
* Source/WebCore/dom/UserGestureIndicator.h
* Source/WebCore/html/HTMLElement.cpp
* Source/WebCore/html/HTMLElement.h
* Source/WebCore/loader/PCMTokens.h
* Source/WebCore/loader/PolicyContainer.cpp
* Source/WebCore/loader/PolicyContainer.h
* Source/WebCore/loader/PrivateClickMeasurement.cpp
* Source/WebCore/platform/graphics/Color.h
* Source/WebCore/platform/graphics/CornerRadii.h
* Source/WebCore/platform/graphics/Image.h
* Source/WebCore/platform/graphics/IntRect.h
* Source/WebCore/platform/graphics/IntSize.h
* Source/WebCore/platform/graphics/LayoutPoint.h
* Source/WebCore/platform/graphics/LayoutRect.h
* Source/WebCore/platform/graphics/LayoutRoundedRect.h
* Source/WebCore/platform/graphics/LayoutSize.h
* Source/WebCore/platform/graphics/PlatformDynamicRangeLimit.h
* Source/WebCore/platform/graphics/cocoa/VP9UtilitiesCocoa.mm
* Source/WebCore/platform/graphics/transforms/TransformationMatrix.h
* Source/WebCore/platform/network/BlobData.h
* Source/WebCore/style/computed/StyleComputedStyle+ConstructionInlines.h
* Source/WebCore/style/computed/StyleComputedStyle.cpp
* Source/WebKit/GPUProcess/graphics/RemoteGraphicsContext.cpp: Export or move
slow case functions called by inline functions.

* Source/WebKit/WebKitPrefix.h
* Source/WebKit/WebKitUIProcessPrefix.h: Expand the prefix to 75%.

Canonical link: https://commits.webkit.org/315349@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to