[webkit-changes] [WebKit/WebKit] e92b51: [JSC] Use DestructionMode instead of bool for JSCe...

Yusuke Suzuki noreply at github.com
Thu Feb 6 19:31:57 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e92b51edbf680b35ff5b4a97597f7cc48091ebb4
      https://github.com/WebKit/WebKit/commit/e92b51edbf680b35ff5b4a97597f7cc48091ebb4
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M Source/JavaScriptCore/API/JSAPIGlobalObject.h
    M Source/JavaScriptCore/API/JSAPIWrapperObject.mm
    M Source/JavaScriptCore/API/JSCallbackConstructor.h
    M Source/JavaScriptCore/API/JSCallbackObject.cpp
    M Source/JavaScriptCore/API/JSCallbackObject.h
    M Source/JavaScriptCore/API/ObjCCallbackFunction.h
    M Source/JavaScriptCore/API/glib/JSAPIWrapperGlobalObject.cpp
    M Source/JavaScriptCore/API/glib/JSAPIWrapperObjectGLib.cpp
    M Source/JavaScriptCore/API/glib/JSCCallbackFunction.h
    M Source/JavaScriptCore/bytecode/CodeBlock.h
    M Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.h
    M Source/JavaScriptCore/bytecode/UnlinkedFunctionExecutable.h
    M Source/JavaScriptCore/inspector/JSInjectedScriptHost.h
    M Source/JavaScriptCore/inspector/JSJavaScriptCallFrame.h
    M Source/JavaScriptCore/runtime/AbstractModuleRecord.h
    M Source/JavaScriptCore/runtime/DateInstance.h
    M Source/JavaScriptCore/runtime/ErrorInstance.h
    M Source/JavaScriptCore/runtime/Exception.h
    M Source/JavaScriptCore/runtime/ExecutableBase.h
    M Source/JavaScriptCore/runtime/FunctionRareData.h
    M Source/JavaScriptCore/runtime/IntlCollator.h
    M Source/JavaScriptCore/runtime/IntlDateTimeFormat.h
    M Source/JavaScriptCore/runtime/IntlDisplayNames.h
    M Source/JavaScriptCore/runtime/IntlDurationFormat.h
    M Source/JavaScriptCore/runtime/IntlListFormat.h
    M Source/JavaScriptCore/runtime/IntlLocale.h
    M Source/JavaScriptCore/runtime/IntlNumberFormat.h
    M Source/JavaScriptCore/runtime/IntlPluralRules.h
    M Source/JavaScriptCore/runtime/IntlRelativeTimeFormat.h
    M Source/JavaScriptCore/runtime/IntlSegmentIterator.h
    M Source/JavaScriptCore/runtime/IntlSegmenter.h
    M Source/JavaScriptCore/runtime/IntlSegments.h
    M Source/JavaScriptCore/runtime/JSCell.h
    M Source/JavaScriptCore/runtime/JSCustomGetterFunction.h
    M Source/JavaScriptCore/runtime/JSCustomSetterFunction.h
    M Source/JavaScriptCore/runtime/JSDestructibleObject.h
    M Source/JavaScriptCore/runtime/JSFinalizationRegistry.h
    M Source/JavaScriptCore/runtime/JSGlobalLexicalEnvironment.h
    M Source/JavaScriptCore/runtime/JSGlobalObject.h
    M Source/JavaScriptCore/runtime/JSModuleNamespaceObject.h
    M Source/JavaScriptCore/runtime/JSModuleRecord.h
    M Source/JavaScriptCore/runtime/JSNativeStdFunction.h
    M Source/JavaScriptCore/runtime/JSScriptFetchParameters.h
    M Source/JavaScriptCore/runtime/JSScriptFetcher.h
    M Source/JavaScriptCore/runtime/JSSegmentedVariableObject.h
    M Source/JavaScriptCore/runtime/JSSourceCode.h
    M Source/JavaScriptCore/runtime/JSString.h
    M Source/JavaScriptCore/runtime/JSTemplateObjectDescriptor.h
    M Source/JavaScriptCore/runtime/PropertyTable.h
    M Source/JavaScriptCore/runtime/RegExp.h
    M Source/JavaScriptCore/runtime/ScopedArgumentsTable.h
    M Source/JavaScriptCore/runtime/SparseArrayValueMap.h
    M Source/JavaScriptCore/runtime/Structure.h
    M Source/JavaScriptCore/runtime/StructureRareData.h
    M Source/JavaScriptCore/runtime/Symbol.h
    M Source/JavaScriptCore/runtime/SymbolTable.h
    M Source/JavaScriptCore/runtime/SyntheticModuleRecord.h
    M Source/JavaScriptCore/runtime/WeakMapImpl.h
    M Source/JavaScriptCore/tools/JSDollarVM.cpp
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyArray.h
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyException.h
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyGlobal.h
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyInstance.h
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyMemory.h
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyModule.h
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyStruct.h
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyTable.h
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyTag.h
    M Source/JavaScriptCore/wasm/js/WebAssemblyFunction.h
    M Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.h
    M Source/WebCore/bindings/js/JSDOMConstructorBase.h
    M Source/WebCore/bindings/js/JSDOMConstructorNotCallable.h
    M Source/WebCore/bindings/js/JSDOMWindowProperties.h
    M Source/WebCore/bindings/js/JSObservableArray.h
    M Source/WebCore/bindings/js/JSWindowProxy.h
    M Source/WebCore/bridge/objc/objc_runtime.h
    M Source/WebCore/bridge/runtime_array.h
    M Source/WebCore/bridge/runtime_object.h

  Log Message:
  -----------
  [JSC] Use DestructionMode instead of bool for JSCell::needsDestruction
https://bugs.webkit.org/show_bug.cgi?id=287207
rdar://problem/144349726

Reviewed by Yijia Huang and Keith Miller.

This patch changes needsDestruction from bool to DestructionMode.
We would like to add a third variant later, like, "MayNeedDestruction"
for optimization, so this is a preparation for that.

* Source/JavaScriptCore/API/JSAPIGlobalObject.h:
* Source/JavaScriptCore/API/JSAPIWrapperObject.mm:
* Source/JavaScriptCore/API/JSCallbackConstructor.h:
* Source/JavaScriptCore/API/JSCallbackObject.cpp:
* Source/JavaScriptCore/API/JSCallbackObject.h:
* Source/JavaScriptCore/API/ObjCCallbackFunction.h:
* Source/JavaScriptCore/API/glib/JSAPIWrapperGlobalObject.cpp:
* Source/JavaScriptCore/API/glib/JSAPIWrapperObjectGLib.cpp:
* Source/JavaScriptCore/API/glib/JSCCallbackFunction.h:
* Source/JavaScriptCore/bytecode/CodeBlock.h:
* Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.h:
* Source/JavaScriptCore/bytecode/UnlinkedFunctionExecutable.h:
* Source/JavaScriptCore/heap/BlockDirectory.h:
(JSC::BlockDirectory::needsDestruction const):
* Source/JavaScriptCore/heap/MarkedBlock.cpp:
(JSC::MarkedBlock::Handle::sweep):
* Source/JavaScriptCore/inspector/JSInjectedScriptHost.h:
* Source/JavaScriptCore/inspector/JSJavaScriptCallFrame.h:
* Source/JavaScriptCore/runtime/AbstractModuleRecord.h:
* Source/JavaScriptCore/runtime/DateInstance.h:
* Source/JavaScriptCore/runtime/ErrorInstance.h:
* Source/JavaScriptCore/runtime/Exception.h:
* Source/JavaScriptCore/runtime/ExecutableBase.h:
* Source/JavaScriptCore/runtime/FunctionRareData.h:
* Source/JavaScriptCore/runtime/IntlCollator.h:
* Source/JavaScriptCore/runtime/IntlDateTimeFormat.h:
* Source/JavaScriptCore/runtime/IntlDisplayNames.h:
* Source/JavaScriptCore/runtime/IntlDurationFormat.h:
* Source/JavaScriptCore/runtime/IntlListFormat.h:
* Source/JavaScriptCore/runtime/IntlLocale.h:
* Source/JavaScriptCore/runtime/IntlNumberFormat.h:
* Source/JavaScriptCore/runtime/IntlPluralRules.h:
* Source/JavaScriptCore/runtime/IntlRelativeTimeFormat.h:
* Source/JavaScriptCore/runtime/IntlSegmentIterator.h:
* Source/JavaScriptCore/runtime/IntlSegmenter.h:
* Source/JavaScriptCore/runtime/IntlSegments.h:
* Source/JavaScriptCore/runtime/JSCell.h:
* Source/JavaScriptCore/runtime/JSCustomGetterFunction.h:
* Source/JavaScriptCore/runtime/JSCustomSetterFunction.h:
* Source/JavaScriptCore/runtime/JSDestructibleObject.h:
* Source/JavaScriptCore/runtime/JSFinalizationRegistry.h:
* Source/JavaScriptCore/runtime/JSGlobalLexicalEnvironment.h:
* Source/JavaScriptCore/runtime/JSGlobalObject.h:
* Source/JavaScriptCore/runtime/JSModuleNamespaceObject.h:
* Source/JavaScriptCore/runtime/JSModuleRecord.h:
* Source/JavaScriptCore/runtime/JSNativeStdFunction.h:
* Source/JavaScriptCore/runtime/JSScriptFetchParameters.h:
* Source/JavaScriptCore/runtime/JSScriptFetcher.h:
* Source/JavaScriptCore/runtime/JSSegmentedVariableObject.h:
* Source/JavaScriptCore/runtime/JSSourceCode.h:
* Source/JavaScriptCore/runtime/JSString.h:
* Source/JavaScriptCore/runtime/JSTemplateObjectDescriptor.h:
* Source/JavaScriptCore/runtime/PropertyTable.h:
* Source/JavaScriptCore/runtime/RegExp.h:
* Source/JavaScriptCore/runtime/ScopedArgumentsTable.h:
* Source/JavaScriptCore/runtime/SparseArrayValueMap.h:
* Source/JavaScriptCore/runtime/Structure.h:
* Source/JavaScriptCore/runtime/StructureRareData.h:
* Source/JavaScriptCore/runtime/Symbol.h:
* Source/JavaScriptCore/runtime/SymbolTable.h:
* Source/JavaScriptCore/runtime/SyntheticModuleRecord.h:
* Source/JavaScriptCore/runtime/WeakMapImpl.h:
* Source/JavaScriptCore/tools/JSDollarVM.cpp:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyArray.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyException.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyGlobal.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyInstance.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyMemory.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyModule.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyStruct.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyTable.h:
* Source/JavaScriptCore/wasm/js/JSWebAssemblyTag.h:
* Source/JavaScriptCore/wasm/js/WebAssemblyFunction.h:
* Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.h:
* Source/WebCore/bindings/js/JSDOMConstructorBase.h:
* Source/WebCore/bindings/js/JSDOMConstructorNotCallable.h:
* Source/WebCore/bindings/js/JSDOMWindowProperties.h:
* Source/WebCore/bindings/js/JSObservableArray.h:
* Source/WebCore/bindings/js/JSWindowProxy.h:
* Source/WebCore/bridge/objc/objc_runtime.h:
* Source/WebCore/bridge/runtime_array.h:
* Source/WebCore/bridge/runtime_object.h:

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



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


More information about the webkit-changes mailing list