Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9fb5b0f17081579069103121a47b4aa99b7b92be
      
https://github.com/WebKit/WebKit/commit/9fb5b0f17081579069103121a47b4aa99b7b92be
  Author: Brent Fulgham <[email protected]>
  Date:   2026-06-11 (Thu, 11 Jun 2026)

  Changed paths:
    M Source/WebKit/CMakeLists.txt
    M Source/WebKit/DerivedSources-input.xcfilelist
    M Source/WebKit/DerivedSources-output.xcfilelist
    M Source/WebKit/DerivedSources.make
    M Source/WebKit/Scripts/generate-serializers.py
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    A Source/WebKit/Shared/WebCoreArgumentCodersAuth.serialization.in
    A Source/WebKit/Shared/WebCoreArgumentCodersMedia.serialization.in
    A Source/WebKit/Shared/WebCoreArgumentCodersNetwork.serialization.in
    A Source/WebKit/Shared/WebCoreArgumentCodersPayment.serialization.in
    A Source/WebKit/Shared/WebCoreArgumentCodersStorage.serialization.in
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj

  Log Message:
  -----------
  Split GeneratedSerializersShared.mm to improve build parallelism.
https://bugs.webkit.org/show_bug.cgi?id=316688
rdar://179142771

Reviewed by Elliott Williams.

One a decent M2 Ultra build, GeneratedSerializersShared.mm is taking roughly 69 
seconds to
compile. This is happening at the tail end of the WebKit step of the build, and 
is blocking
linking and further build steps from starting. This represents ~59 seconds of 
wasted time
since only a single core is working, and other tasks are blocked.

We can improve matters by splitting this single large compilation unit into 
smaller pieces
that can build in parallel.

This change drops that 69 second long pole to 53.5 seconds, and allows it to 
run in
parallel with other steps reducing the overall build time by about 70 seconds.

* Source/WebKit/CMakeLists.txt:
* Source/WebKit/DerivedSources-input.xcfilelist:
* Source/WebKit/DerivedSources-output.xcfilelist:
* Source/WebKit/DerivedSources.make:
* Source/WebKit/Scripts/generate-serializers.py:
(derive_bundle):
(matches_bundle):
(SerializedType.__init__):
(SerializedEnum.__init__):
(argument_coder_declarations):
(generate_impl):
(main):
(derive_source_directory):
(matches_domain): Deleted.
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/Shared/WebCoreArgumentCodersAuth.serialization.in: Added.
* Source/WebKit/Shared/WebCoreArgumentCodersMedia.serialization.in: Added.
* Source/WebKit/Shared/WebCoreArgumentCodersNetwork.serialization.in: Added.
* Source/WebKit/Shared/WebCoreArgumentCodersPayment.serialization.in: Added.
* Source/WebKit/Shared/WebCoreArgumentCodersStorage.serialization.in: Added.
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:

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



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

Reply via email to