[webkit-changes] [WebKit/WebKit] 8eb77e: REGRESSION (267037 at main): WebGLExtensionAny causes...

Kimmo Kinnunen noreply at github.com
Wed Nov 29 01:04:35 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8eb77eb8b499eda7b7c6c46791f2b9e604fd6599
      https://github.com/WebKit/WebKit/commit/8eb77eb8b499eda7b7c6c46791f2b9e604fd6599
  Author: Kimmo Kinnunen <kkinnunen at apple.com>
  Date:   2023-11-29 (Wed, 29 Nov 2023)

  Changed paths:
    M Source/WebCore/Headers.cmake
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/bindings/js/JSDOMConvertWebGL.cpp
    M Source/WebCore/bindings/js/JSDOMConvertWebGL.h
    M Source/WebCore/html/canvas/ANGLEInstancedArrays.cpp
    M Source/WebCore/html/canvas/ANGLEInstancedArrays.h
    M Source/WebCore/html/canvas/EXTBlendFuncExtended.cpp
    M Source/WebCore/html/canvas/EXTBlendFuncExtended.h
    M Source/WebCore/html/canvas/EXTBlendMinMax.cpp
    M Source/WebCore/html/canvas/EXTBlendMinMax.h
    M Source/WebCore/html/canvas/EXTClipControl.cpp
    M Source/WebCore/html/canvas/EXTClipControl.h
    M Source/WebCore/html/canvas/EXTColorBufferFloat.cpp
    M Source/WebCore/html/canvas/EXTColorBufferFloat.h
    M Source/WebCore/html/canvas/EXTColorBufferHalfFloat.cpp
    M Source/WebCore/html/canvas/EXTColorBufferHalfFloat.h
    M Source/WebCore/html/canvas/EXTConservativeDepth.cpp
    M Source/WebCore/html/canvas/EXTConservativeDepth.h
    M Source/WebCore/html/canvas/EXTDepthClamp.cpp
    M Source/WebCore/html/canvas/EXTDepthClamp.h
    M Source/WebCore/html/canvas/EXTDisjointTimerQuery.cpp
    M Source/WebCore/html/canvas/EXTDisjointTimerQuery.h
    M Source/WebCore/html/canvas/EXTDisjointTimerQueryWebGL2.cpp
    M Source/WebCore/html/canvas/EXTDisjointTimerQueryWebGL2.h
    M Source/WebCore/html/canvas/EXTFloatBlend.cpp
    M Source/WebCore/html/canvas/EXTFloatBlend.h
    M Source/WebCore/html/canvas/EXTFragDepth.cpp
    M Source/WebCore/html/canvas/EXTFragDepth.h
    M Source/WebCore/html/canvas/EXTPolygonOffsetClamp.cpp
    M Source/WebCore/html/canvas/EXTPolygonOffsetClamp.h
    M Source/WebCore/html/canvas/EXTRenderSnorm.cpp
    M Source/WebCore/html/canvas/EXTRenderSnorm.h
    M Source/WebCore/html/canvas/EXTShaderTextureLOD.cpp
    M Source/WebCore/html/canvas/EXTShaderTextureLOD.h
    M Source/WebCore/html/canvas/EXTTextureCompressionBPTC.cpp
    M Source/WebCore/html/canvas/EXTTextureCompressionBPTC.h
    M Source/WebCore/html/canvas/EXTTextureCompressionRGTC.cpp
    M Source/WebCore/html/canvas/EXTTextureCompressionRGTC.h
    M Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.cpp
    M Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.h
    M Source/WebCore/html/canvas/EXTTextureMirrorClampToEdge.cpp
    M Source/WebCore/html/canvas/EXTTextureMirrorClampToEdge.h
    M Source/WebCore/html/canvas/EXTTextureNorm16.cpp
    M Source/WebCore/html/canvas/EXTTextureNorm16.h
    M Source/WebCore/html/canvas/EXTsRGB.cpp
    M Source/WebCore/html/canvas/EXTsRGB.h
    M Source/WebCore/html/canvas/KHRParallelShaderCompile.cpp
    M Source/WebCore/html/canvas/KHRParallelShaderCompile.h
    M Source/WebCore/html/canvas/NVShaderNoperspectiveInterpolation.cpp
    M Source/WebCore/html/canvas/NVShaderNoperspectiveInterpolation.h
    M Source/WebCore/html/canvas/OESDrawBuffersIndexed.cpp
    M Source/WebCore/html/canvas/OESDrawBuffersIndexed.h
    M Source/WebCore/html/canvas/OESElementIndexUint.cpp
    M Source/WebCore/html/canvas/OESElementIndexUint.h
    M Source/WebCore/html/canvas/OESFBORenderMipmap.cpp
    M Source/WebCore/html/canvas/OESFBORenderMipmap.h
    M Source/WebCore/html/canvas/OESSampleVariables.cpp
    M Source/WebCore/html/canvas/OESSampleVariables.h
    M Source/WebCore/html/canvas/OESShaderMultisampleInterpolation.cpp
    M Source/WebCore/html/canvas/OESShaderMultisampleInterpolation.h
    M Source/WebCore/html/canvas/OESStandardDerivatives.cpp
    M Source/WebCore/html/canvas/OESStandardDerivatives.h
    M Source/WebCore/html/canvas/OESTextureFloat.cpp
    M Source/WebCore/html/canvas/OESTextureFloat.h
    M Source/WebCore/html/canvas/OESTextureFloatLinear.cpp
    M Source/WebCore/html/canvas/OESTextureFloatLinear.h
    M Source/WebCore/html/canvas/OESTextureHalfFloat.cpp
    M Source/WebCore/html/canvas/OESTextureHalfFloat.h
    M Source/WebCore/html/canvas/OESTextureHalfFloatLinear.cpp
    M Source/WebCore/html/canvas/OESTextureHalfFloatLinear.h
    M Source/WebCore/html/canvas/OESVertexArrayObject.cpp
    M Source/WebCore/html/canvas/OESVertexArrayObject.h
    M Source/WebCore/html/canvas/WebGL2RenderingContext.cpp
    M Source/WebCore/html/canvas/WebGLClipCullDistance.cpp
    M Source/WebCore/html/canvas/WebGLClipCullDistance.h
    M Source/WebCore/html/canvas/WebGLColorBufferFloat.cpp
    M Source/WebCore/html/canvas/WebGLColorBufferFloat.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureASTC.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureASTC.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureETC.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureETC1.h
    M Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.h
    M Source/WebCore/html/canvas/WebGLCompressedTextureS3TCsRGB.cpp
    M Source/WebCore/html/canvas/WebGLCompressedTextureS3TCsRGB.h
    M Source/WebCore/html/canvas/WebGLDebugRendererInfo.cpp
    M Source/WebCore/html/canvas/WebGLDebugRendererInfo.h
    M Source/WebCore/html/canvas/WebGLDebugShaders.cpp
    M Source/WebCore/html/canvas/WebGLDebugShaders.h
    M Source/WebCore/html/canvas/WebGLDepthTexture.cpp
    M Source/WebCore/html/canvas/WebGLDepthTexture.h
    M Source/WebCore/html/canvas/WebGLDrawBuffers.cpp
    M Source/WebCore/html/canvas/WebGLDrawBuffers.h
    M Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.cpp
    M Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.h
    M Source/WebCore/html/canvas/WebGLExtension.h
    M Source/WebCore/html/canvas/WebGLExtensionAny.h
    R Source/WebCore/html/canvas/WebGLExtensionAnyInlines.h
    M Source/WebCore/html/canvas/WebGLLoseContext.cpp
    M Source/WebCore/html/canvas/WebGLLoseContext.h
    M Source/WebCore/html/canvas/WebGLMultiDraw.cpp
    M Source/WebCore/html/canvas/WebGLMultiDraw.h
    M Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.cpp
    M Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.h
    M Source/WebCore/html/canvas/WebGLPolygonMode.cpp
    M Source/WebCore/html/canvas/WebGLPolygonMode.h
    M Source/WebCore/html/canvas/WebGLProvokingVertex.cpp
    M Source/WebCore/html/canvas/WebGLProvokingVertex.h
    M Source/WebCore/html/canvas/WebGLRenderSharedExponent.cpp
    M Source/WebCore/html/canvas/WebGLRenderSharedExponent.h
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.h
    M Source/WebCore/html/canvas/WebGLShaderPrecisionFormat.h
    M Source/WebCore/html/canvas/WebGLStencilTexturing.cpp
    M Source/WebCore/html/canvas/WebGLStencilTexturing.h

  Log Message:
  -----------
  REGRESSION (267037 at main): WebGLExtensionAny causes increase of binary size
https://bugs.webkit.org/show_bug.cgi?id=265447
rdar://118853286

Reviewed by Antti Koivisto and Dean Jackson.

267037 at main would replace the manual type discriminator and downcast
with a type safe variant + visit. The variant had 54 Ref<> types.

Revert these parts of 267037 at main due to binary size increases.

It appears that most of the binary size increase was due to these
aspects:
 - Each function call that would induce copy or move would likely generate
   code for each of the 54 variants, at each copy or move site.
   These were partly recoverable by marking the values
   const WebGLExtensionAny& after receiving them.
 - WTF::switchOn lambda adapter would waste ~0.5mb.
   This would be recoverable by using direct std::visit visitor.
 - Direct std::visit visitor would still waste at least ~0.5mb
   This would be recoverable by using manual switch pattern:
      switch (extensionAny.index()) {
      case 1: return toJS(..., std::get<1>(extensionAny));
      ....
      }

However, with all the workarounds the std::variant variant [sic] would
be still ~0.5mb bigger than manually managed discriminated union +
downcast.

WebCore Cocoa Release arm64v sizes for my compile:
Before this change: 104294464
After this change:  102696016

* Source/WebCore/Headers.cmake:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/bindings/js/JSDOMConvertWebGL.cpp:
(WebCore::convertToJSValue):
* Source/WebCore/bindings/js/JSDOMConvertWebGL.h:
* Source/WebCore/html/canvas/ANGLEInstancedArrays.cpp:
(WebCore::ANGLEInstancedArrays::ANGLEInstancedArrays):
* Source/WebCore/html/canvas/ANGLEInstancedArrays.h:
* Source/WebCore/html/canvas/EXTBlendFuncExtended.cpp:
(WebCore::EXTBlendFuncExtended::EXTBlendFuncExtended):
* Source/WebCore/html/canvas/EXTBlendFuncExtended.h:
* Source/WebCore/html/canvas/EXTBlendMinMax.cpp:
(WebCore::EXTBlendMinMax::EXTBlendMinMax):
* Source/WebCore/html/canvas/EXTBlendMinMax.h:
* Source/WebCore/html/canvas/EXTClipControl.cpp:
(WebCore::EXTClipControl::EXTClipControl):
* Source/WebCore/html/canvas/EXTClipControl.h:
* Source/WebCore/html/canvas/EXTColorBufferFloat.cpp:
(WebCore::EXTColorBufferFloat::EXTColorBufferFloat):
* Source/WebCore/html/canvas/EXTColorBufferFloat.h:
* Source/WebCore/html/canvas/EXTColorBufferHalfFloat.cpp:
(WebCore::EXTColorBufferHalfFloat::EXTColorBufferHalfFloat):
* Source/WebCore/html/canvas/EXTColorBufferHalfFloat.h:
* Source/WebCore/html/canvas/EXTConservativeDepth.cpp:
(WebCore::EXTConservativeDepth::EXTConservativeDepth):
* Source/WebCore/html/canvas/EXTConservativeDepth.h:
* Source/WebCore/html/canvas/EXTDepthClamp.cpp:
(WebCore::EXTDepthClamp::EXTDepthClamp):
* Source/WebCore/html/canvas/EXTDepthClamp.h:
* Source/WebCore/html/canvas/EXTDisjointTimerQuery.cpp:
(WebCore::EXTDisjointTimerQuery::EXTDisjointTimerQuery):
* Source/WebCore/html/canvas/EXTDisjointTimerQuery.h:
* Source/WebCore/html/canvas/EXTDisjointTimerQueryWebGL2.cpp:
(WebCore::EXTDisjointTimerQueryWebGL2::EXTDisjointTimerQueryWebGL2):
* Source/WebCore/html/canvas/EXTDisjointTimerQueryWebGL2.h:
* Source/WebCore/html/canvas/EXTFloatBlend.cpp:
(WebCore::EXTFloatBlend::EXTFloatBlend):
* Source/WebCore/html/canvas/EXTFloatBlend.h:
* Source/WebCore/html/canvas/EXTFragDepth.cpp:
(WebCore::EXTFragDepth::EXTFragDepth):
* Source/WebCore/html/canvas/EXTFragDepth.h:
* Source/WebCore/html/canvas/EXTPolygonOffsetClamp.cpp:
(WebCore::EXTPolygonOffsetClamp::EXTPolygonOffsetClamp):
* Source/WebCore/html/canvas/EXTPolygonOffsetClamp.h:
* Source/WebCore/html/canvas/EXTRenderSnorm.cpp:
(WebCore::EXTRenderSnorm::EXTRenderSnorm):
* Source/WebCore/html/canvas/EXTRenderSnorm.h:
* Source/WebCore/html/canvas/EXTShaderTextureLOD.cpp:
(WebCore::EXTShaderTextureLOD::EXTShaderTextureLOD):
* Source/WebCore/html/canvas/EXTShaderTextureLOD.h:
* Source/WebCore/html/canvas/EXTTextureCompressionBPTC.cpp:
(WebCore::EXTTextureCompressionBPTC::EXTTextureCompressionBPTC):
* Source/WebCore/html/canvas/EXTTextureCompressionBPTC.h:
* Source/WebCore/html/canvas/EXTTextureCompressionRGTC.cpp:
(WebCore::EXTTextureCompressionRGTC::EXTTextureCompressionRGTC):
* Source/WebCore/html/canvas/EXTTextureCompressionRGTC.h:
* Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.cpp:
(WebCore::EXTTextureFilterAnisotropic::EXTTextureFilterAnisotropic):
* Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.h:
* Source/WebCore/html/canvas/EXTTextureMirrorClampToEdge.cpp:
(WebCore::EXTTextureMirrorClampToEdge::EXTTextureMirrorClampToEdge):
* Source/WebCore/html/canvas/EXTTextureMirrorClampToEdge.h:
* Source/WebCore/html/canvas/EXTTextureNorm16.cpp:
(WebCore::EXTTextureNorm16::EXTTextureNorm16):
* Source/WebCore/html/canvas/EXTTextureNorm16.h:
* Source/WebCore/html/canvas/EXTsRGB.cpp:
(WebCore::EXTsRGB::EXTsRGB):
* Source/WebCore/html/canvas/EXTsRGB.h:
* Source/WebCore/html/canvas/KHRParallelShaderCompile.cpp:
(WebCore::KHRParallelShaderCompile::KHRParallelShaderCompile):
* Source/WebCore/html/canvas/KHRParallelShaderCompile.h:
* Source/WebCore/html/canvas/NVShaderNoperspectiveInterpolation.cpp:
(WebCore::NVShaderNoperspectiveInterpolation::NVShaderNoperspectiveInterpolation):
* Source/WebCore/html/canvas/NVShaderNoperspectiveInterpolation.h:
* Source/WebCore/html/canvas/OESDrawBuffersIndexed.cpp:
(WebCore::OESDrawBuffersIndexed::OESDrawBuffersIndexed):
* Source/WebCore/html/canvas/OESDrawBuffersIndexed.h:
* Source/WebCore/html/canvas/OESElementIndexUint.cpp:
(WebCore::OESElementIndexUint::OESElementIndexUint):
* Source/WebCore/html/canvas/OESElementIndexUint.h:
* Source/WebCore/html/canvas/OESFBORenderMipmap.cpp:
(WebCore::OESFBORenderMipmap::OESFBORenderMipmap):
* Source/WebCore/html/canvas/OESFBORenderMipmap.h:
* Source/WebCore/html/canvas/OESSampleVariables.cpp:
(WebCore::OESSampleVariables::OESSampleVariables):
* Source/WebCore/html/canvas/OESSampleVariables.h:
* Source/WebCore/html/canvas/OESShaderMultisampleInterpolation.cpp:
(WebCore::OESShaderMultisampleInterpolation::OESShaderMultisampleInterpolation):
* Source/WebCore/html/canvas/OESShaderMultisampleInterpolation.h:
* Source/WebCore/html/canvas/OESStandardDerivatives.cpp:
(WebCore::OESStandardDerivatives::OESStandardDerivatives):
* Source/WebCore/html/canvas/OESStandardDerivatives.h:
* Source/WebCore/html/canvas/OESTextureFloat.cpp:
(WebCore::OESTextureFloat::OESTextureFloat):
* Source/WebCore/html/canvas/OESTextureFloat.h:
* Source/WebCore/html/canvas/OESTextureFloatLinear.cpp:
(WebCore::OESTextureFloatLinear::OESTextureFloatLinear):
* Source/WebCore/html/canvas/OESTextureFloatLinear.h:
* Source/WebCore/html/canvas/OESTextureHalfFloat.cpp:
(WebCore::OESTextureHalfFloat::OESTextureHalfFloat):
* Source/WebCore/html/canvas/OESTextureHalfFloat.h:
* Source/WebCore/html/canvas/OESTextureHalfFloatLinear.cpp:
(WebCore::OESTextureHalfFloatLinear::OESTextureHalfFloatLinear):
* Source/WebCore/html/canvas/OESTextureHalfFloatLinear.h:
* Source/WebCore/html/canvas/OESVertexArrayObject.cpp:
(WebCore::OESVertexArrayObject::OESVertexArrayObject):
* Source/WebCore/html/canvas/OESVertexArrayObject.h:
* Source/WebCore/html/canvas/WebGL2RenderingContext.cpp:
* Source/WebCore/html/canvas/WebGLClipCullDistance.cpp:
(WebCore::WebGLClipCullDistance::WebGLClipCullDistance):
* Source/WebCore/html/canvas/WebGLClipCullDistance.h:
* Source/WebCore/html/canvas/WebGLColorBufferFloat.cpp:
(WebCore::WebGLColorBufferFloat::WebGLColorBufferFloat):
* Source/WebCore/html/canvas/WebGLColorBufferFloat.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureASTC.cpp:
(WebCore::WebGLCompressedTextureASTC::WebGLCompressedTextureASTC):
* Source/WebCore/html/canvas/WebGLCompressedTextureASTC.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp:
(WebCore::WebGLCompressedTextureETC::WebGLCompressedTextureETC):
* Source/WebCore/html/canvas/WebGLCompressedTextureETC.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp:
(WebCore::WebGLCompressedTextureETC1::WebGLCompressedTextureETC1):
* Source/WebCore/html/canvas/WebGLCompressedTextureETC1.h:
* Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.cpp:
(WebCore::WebGLCompressedTexturePVRTC::WebGLCompressedTexturePVRTC):
* Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.cpp:
(WebCore::WebGLCompressedTextureS3TC::WebGLCompressedTextureS3TC):
* Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.h:
* Source/WebCore/html/canvas/WebGLCompressedTextureS3TCsRGB.cpp:
(WebCore::WebGLCompressedTextureS3TCsRGB::WebGLCompressedTextureS3TCsRGB):
* Source/WebCore/html/canvas/WebGLCompressedTextureS3TCsRGB.h:
* Source/WebCore/html/canvas/WebGLDebugRendererInfo.cpp:
(WebCore::WebGLDebugRendererInfo::WebGLDebugRendererInfo):
* Source/WebCore/html/canvas/WebGLDebugRendererInfo.h:
* Source/WebCore/html/canvas/WebGLDebugShaders.cpp:
(WebCore::WebGLDebugShaders::WebGLDebugShaders):
* Source/WebCore/html/canvas/WebGLDebugShaders.h:
* Source/WebCore/html/canvas/WebGLDepthTexture.cpp:
(WebCore::WebGLDepthTexture::WebGLDepthTexture):
* Source/WebCore/html/canvas/WebGLDepthTexture.h:
* Source/WebCore/html/canvas/WebGLDrawBuffers.cpp:
(WebCore::WebGLDrawBuffers::WebGLDrawBuffers):
* Source/WebCore/html/canvas/WebGLDrawBuffers.h:
* Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.cpp:
(WebCore::WebGLDrawInstancedBaseVertexBaseInstance::WebGLDrawInstancedBaseVertexBaseInstance):
* Source/WebCore/html/canvas/WebGLDrawInstancedBaseVertexBaseInstance.h:
* Source/WebCore/html/canvas/WebGLExtension.h:
(WebCore::WebGLExtensionBase::name const):
(WebCore::WebGLExtensionBase::WebGLExtensionBase):
(WebCore::WebGLExtension::WebGLExtension):
* Source/WebCore/html/canvas/WebGLExtensionAny.h:
* Source/WebCore/html/canvas/WebGLExtensionAnyInlines.h: Removed.
* Source/WebCore/html/canvas/WebGLLoseContext.cpp:
(WebCore::WebGLLoseContext::WebGLLoseContext):
* Source/WebCore/html/canvas/WebGLLoseContext.h:
* Source/WebCore/html/canvas/WebGLMultiDraw.cpp:
(WebCore::WebGLMultiDraw::WebGLMultiDraw):
* Source/WebCore/html/canvas/WebGLMultiDraw.h:
* Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.cpp:
(WebCore::WebGLMultiDrawInstancedBaseVertexBaseInstance::WebGLMultiDrawInstancedBaseVertexBaseInstance):
* Source/WebCore/html/canvas/WebGLMultiDrawInstancedBaseVertexBaseInstance.h:
* Source/WebCore/html/canvas/WebGLPolygonMode.cpp:
(WebCore::WebGLPolygonMode::WebGLPolygonMode):
* Source/WebCore/html/canvas/WebGLPolygonMode.h:
* Source/WebCore/html/canvas/WebGLProvokingVertex.cpp:
(WebCore::WebGLProvokingVertex::WebGLProvokingVertex):
* Source/WebCore/html/canvas/WebGLProvokingVertex.h:
* Source/WebCore/html/canvas/WebGLRenderSharedExponent.cpp:
(WebCore::WebGLRenderSharedExponent::WebGLRenderSharedExponent):
* Source/WebCore/html/canvas/WebGLRenderSharedExponent.h:
* Source/WebCore/html/canvas/WebGLRenderingContextBase.h:
* Source/WebCore/html/canvas/WebGLStencilTexturing.cpp:
(WebCore::WebGLStencilTexturing::WebGLStencilTexturing):
* Source/WebCore/html/canvas/WebGLStencilTexturing.h:

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




More information about the webkit-changes mailing list