Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6b3acbd07e195a22b8f92a28f60486f968b2be4f
      
https://github.com/WebKit/WebKit/commit/6b3acbd07e195a22b8f92a28f60486f968b2be4f
  Author: Geoffrey Garen <[email protected]>
  Date:   2026-05-11 (Mon, 11 May 2026)

  Changed paths:
    M Source/JavaScriptCore/CMakeLists.txt
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/JavaScriptCorePrefix.h
    M Source/JavaScriptCore/bytecode/PropertyInlineCacheClearingWatchpoint.cpp
    M Source/JavaScriptCore/bytecode/PropertyInlineCacheClearingWatchpoint.h
    M Source/JavaScriptCore/bytecode/VariableWriteFireDetail.cpp
    M Source/JavaScriptCore/bytecode/VariableWriteFireDetail.h
    M Source/JavaScriptCore/bytecode/Watchpoint.cpp
    M Source/JavaScriptCore/bytecode/Watchpoint.h
    M Source/JavaScriptCore/heap/WeakHandleOwner.cpp
    M Source/JavaScriptCore/heap/WeakHandleOwner.h
    M Source/JavaScriptCore/heap/WeakInlines.h
    A Source/JavaScriptCore/heap/WeakInlinesLight.h
    M Source/JavaScriptCore/runtime/BufferMemoryHandle.h
    M Source/JavaScriptCore/runtime/JSCJSValue.h
    M Source/JavaScriptCore/runtime/JSString.h
    M Source/JavaScriptCore/runtime/OptionsList.h
    M Source/JavaScriptCore/runtime/Structure.cpp
    M Source/JavaScriptCore/runtime/Structure.h
    M Source/JavaScriptCore/runtime/WriteBarrier.h
    M Source/WTF/wtf/Compiler.h
    M Source/WTF/wtf/ThreadAssertions.h
    M Source/WTF/wtf/text/StringImpl.cpp
    M Source/WTF/wtf/text/StringImpl.h
    M Source/WTF/wtf/text/WTFString.h
    M Source/WebCore/WebCorePrefix.h
    M Source/WebCore/dom/StyledElement.cpp
    M Source/WebCore/dom/StyledElement.h
    M Source/WebCore/platform/graphics/DoublePoint.h
    M Source/bmalloc/bmalloc/TZoneHeap.h

  Log Message:
  -----------
  [CMake] Prepare for -fpch-codegen / -fpch-debuginfo
https://bugs.webkit.org/show_bug.cgi?id=314513
rdar://176744994

Reviewed by David Kilzer.

To generate code for prefix headers, we need to obey stricter hygiene about
inline functions.

* Source/JavaScriptCore/CMakeLists.txt: List our new *Inlines.h file.s

* Source/JavaScriptCore/JavaScriptCorePrefix.h: When A.h defines inline a() that
calls inline b() defined in B.h, and A.h is in the prefix header, also include
B.h in the prefix header. Otherwise, linking fails. This was always a latent
issue, but generating code surfaces it eagerly.

* Source/JavaScriptCore/bytecode/PropertyInlineCacheClearingWatchpoint.cpp:
(JSC::AdaptiveValuePropertyInlineCacheClearingWatchpoint::AdaptiveValuePropertyInlineCacheClearingWatchpoint):
* Source/JavaScriptCore/bytecode/PropertyInlineCacheClearingWatchpoint.h:
* Source/JavaScriptCore/bytecode/VariableWriteFireDetail.cpp:
(JSC::VariableWriteFireDetail::VariableWriteFireDetail):
* Source/JavaScriptCore/bytecode/VariableWriteFireDetail.h:
* Source/JavaScriptCore/bytecode/Watchpoint.cpp:
(JSC::StringFireDetail::StringFireDetail):
* Source/JavaScriptCore/bytecode/Watchpoint.h:
* Source/JavaScriptCore/heap/WeakHandleOwner.cpp:
(JSC::WeakHandleOwner::WeakHandleOwner):
* Source/JavaScriptCore/heap/WeakHandleOwner.h: Added an unused
ClangVTableWorkaroundTag constructor to work around a clang inlining bug
(rdar://176736350).

Added missing export macro to StringFireDetail.

* Source/JavaScriptCore/heap/WeakInlines.h:
(JSC::Weak<T>::clear): Deleted.
* Source/JavaScriptCore/heap/WeakInlinesLight.h: Copied from 
Source/JavaScriptCore/heap/WeakHandleOwner.cpp.
(JSC::Weak<T>::clear): Move Weak<T>::clear() to a separate header file to make
sure its inline callees are defined.

* Source/JavaScriptCore/runtime/BufferMemoryHandle.h:
* Source/JavaScriptCore/runtime/JSCJSValue.h: Added missing export macro.

* Source/JavaScriptCore/runtime/JSString.h: Added missing declaration.

* Source/JavaScriptCore/runtime/OptionsList.h: Added missing export macro.

* Source/JavaScriptCore/runtime/Structure.cpp:
(JSC::StructureFireDetail::StructureFireDetail):
* Source/JavaScriptCore/runtime/Structure.h: More clang workaround.

* Source/JavaScriptCore/runtime/WriteBarrier.h: Avoid using 
WTF_MAKE_TZONE_ALLOCATED_TEMPLATE
because we don't include the header, and anyway heap-allocating a WriteBarrier
would be uncivilized.

* Source/WTF/wtf/Compiler.h: Helper tag for our clang workaround.

* Source/WTF/wtf/ThreadAssertions.h:
* Source/WTF/wtf/text/StringImpl.h:
* Source/WTF/wtf/text/WTFString.h: Added missing export macros.

* Source/WebCore/WebCorePrefix.h: Added our new Weak<T>::clear() header.

* Source/WebCore/dom/StyledElement.cpp:
(WebCore::StyledElement::StyledElement):
* Source/WebCore/dom/StyledElement.h: More clang vtable workaround.

* Source/WebCore/platform/graphics/DoublePoint.h:
(WTF::LogArgument<WebCore::DoublePoint>::toString): Deleted. Remove toString()
and its caller because we either need to define a function or not call it, and
we were already not calling it.

* Source/bmalloc/bmalloc/TZoneHeap.h: Added a missing inline declaration.

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



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

Reply via email to