Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 744271668d052b7f6fe81f7c689b706d742aa262
https://github.com/WebKit/WebKit/commit/744271668d052b7f6fe81f7c689b706d742aa262
Author: Dan Glastonbury <[email protected]>
Date: 2026-04-20 (Mon, 20 Apr 2026)
Changed paths:
M Source/JavaScriptCore/runtime/ArrayBuffer.cpp
M Source/JavaScriptCore/runtime/ArrayBuffer.h
M Source/JavaScriptCore/runtime/BufferMemoryHandle.cpp
M Source/JavaScriptCore/runtime/BufferMemoryHandle.h
M Source/JavaScriptCore/wasm/WasmContext.h
Log Message:
-----------
[JSC] Expensive header files slow full build
https://bugs.webkit.org/show_bug.cgi?id=312607
rdar://175039075
Reviewed by Yusuke Suzuki.
Move ArrayBufferContents constructor bodies from ArrayBuffer.h to
ArrayBuffer.cpp and remove expensive includes of Options.h from
BufferMemoryHandle.h and MacroAssembler.h from WasmContext.h.
These headers are transitively included across many translation
units, so uninlining the constructors and removing the includes
reduces full build time.
This change improves a full build of `WebKit + Tools` by ~2m 30s on Mac Studio
M3 Ultra from ~15m to ~12m 30s.
* Source/JavaScriptCore/runtime/ArrayBuffer.cpp:
(JSC::ArrayBufferContents::ArrayBufferContents):
* Source/JavaScriptCore/runtime/ArrayBuffer.h:
* Source/JavaScriptCore/runtime/BufferMemoryHandle.cpp:
(JSC::BufferMemoryManager::BufferMemoryManager):
* Source/JavaScriptCore/runtime/BufferMemoryHandle.h:
* Source/JavaScriptCore/wasm/WasmContext.h:
Canonical link: https://commits.webkit.org/311631@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications