[webkit-changes] [WebKit/WebKit] c1c34e: [WebGPU] Add missing features which would break si...

mwyrzykowski noreply at github.com
Fri Jan 24 23:44:53 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c1c34e722e3253ad5e4068b7e830f2bb8ed0f27e
      https://github.com/WebKit/WebKit/commit/c1c34e722e3253ad5e4068b7e830f2bb8ed0f27e
  Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
  Date:   2025-01-24 (Fri, 24 Jan 2025)

  Changed paths:
    M Source/WebCore/Modules/WebGPU/GPUAdapter.cpp
    M Source/WebCore/Modules/WebGPU/GPUFeatureName.h
    M Source/WebCore/Modules/WebGPU/GPUFeatureName.idl
    M Source/WebCore/Modules/WebGPU/GPUSupportedLimits.cpp
    M Source/WebCore/Modules/WebGPU/GPUSupportedLimits.h
    M Source/WebCore/Modules/WebGPU/GPUSupportedLimits.idl
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUAdapterImpl.cpp
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUConvertToBackingContext.cpp
    M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUFeatureName.h
    M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUSupportedLimits.h
    M Source/WebGPU/WebGPU/HardwareCapabilities.mm
    M Source/WebGPU/WebGPU/ShaderModule.mm
    M Source/WebGPU/WebGPU/WebGPU.h
    M Source/WebGPU/WebGPU/WebGPUExt.h
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteAdapter.cpp
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp
    M Source/WebKit/Shared/WebGPU/WebGPUFeatureName.serialization.in
    M Source/WebKit/Shared/WebGPU/WebGPUSupportedLimits.cpp
    M Source/WebKit/Shared/WebGPU/WebGPUSupportedLimits.h
    M Source/WebKit/Shared/WebGPU/WebGPUSupportedLimits.serialization.in
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteAdapterProxy.cpp
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.cpp

  Log Message:
  -----------
  [WebGPU] Add missing features which would break sites adapting compat mode
https://bugs.webkit.org/show_bug.cgi?id=284110
rdar://140978614

Reviewed by Tadeu Zagallo.

We need to add support for features which are always supported on our
devices, otherwise a site which tries to request a feature will fail in
WebKit due to the feature being not reported as supported, despite our
implementation supporting it.

* Source/WebCore/Modules/WebGPU/GPUAdapter.cpp:
(WebCore::convertFeatureNameToEnum):
* Source/WebCore/Modules/WebGPU/GPUFeatureName.h:
(WebCore::convertToBacking):
* Source/WebCore/Modules/WebGPU/GPUFeatureName.idl:
* Source/WebCore/Modules/WebGPU/GPUSupportedLimits.cpp:
(WebCore::GPUSupportedLimits::maxStorageBuffersInFragmentStage const):
(WebCore::GPUSupportedLimits::maxStorageTexturesInFragmentStage const):
* Source/WebCore/Modules/WebGPU/GPUSupportedLimits.h:
* Source/WebCore/Modules/WebGPU/GPUSupportedLimits.idl:
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUAdapterImpl.cpp:
(WebCore::WebGPU::supportedFeatures):
(WebCore::WebGPU::supportedLimits):
(WebCore::WebGPU::AdapterImpl::requestDevice):
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUConvertToBackingContext.cpp:
(WebCore::WebGPU::ConvertToBackingContext::convertToBacking):
* Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUFeatureName.h:
* Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUSupportedLimits.h:
* Source/WebGPU/WebGPU/HardwareCapabilities.mm:
(WebGPU::baseFeatures):
(WebGPU::apple4):
(WebGPU::apple5):
(WebGPU::apple6):
(WebGPU::apple7):
(WebGPU::mac2):
(WebGPU::mergeLimits):
(WebGPU::anyLimitIsBetterThan):
(WebGPU::defaultLimits):
* Source/WebGPU/WebGPU/PipelineLayout.h:
* Source/WebGPU/WebGPU/ShaderModule.mm:
(WebGPU::buildFeatureSet):
(wgpuAdapterFeatureName):
* Source/WebGPU/WebGPU/WebGPU.h:
* Source/WebGPU/WebGPU/WebGPUExt.h:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteAdapter.cpp:
(WebKit::RemoteAdapter::requestDevice):
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp:
(WebKit::RemoteGPU::requestAdapter):
* Source/WebKit/Shared/WebGPU/WebGPUSupportedLimits.cpp:
(WebKit::WebGPU::ConvertToBackingContext::convertToBacking):
(WebKit::WebGPU::ConvertFromBackingContext::convertFromBacking):
* Source/WebKit/Shared/WebGPU/WebGPUSupportedLimits.h:
* Source/WebKit/Shared/WebGPU/WebGPUSupportedLimits.serialization.in:
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteAdapterProxy.cpp:
(WebKit::WebGPU::RemoteAdapterProxy::requestDevice):
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.cpp:
(WebKit::RemoteGPUProxy::requestAdapter):

Canonical link: https://commits.webkit.org/289382@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