Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: d9712c222d72b032bdba60bfb05cc29bf26d1c60 https://github.com/WebKit/WebKit/commit/d9712c222d72b032bdba60bfb05cc29bf26d1c60 Author: Mike Wyrzykowski <mwyrzykow...@apple.com> Date: 2025-08-25 (Mon, 25 Aug 2025)
Changed paths: M LayoutTests/http/tests/webgpu/webgpu/api/operation/labels-expected.txt M Source/WebCore/Modules/WebGPU/GPUCommandBuffer.cpp M Source/WebCore/Modules/WebGPU/GPUCommandBuffer.h M Source/WebCore/Modules/WebGPU/GPUCommandEncoder.cpp M Source/WebCore/Modules/WebGPU/GPUCommandEncoder.h M Source/WebCore/Modules/WebGPU/GPUComputePassEncoder.cpp M Source/WebCore/Modules/WebGPU/GPUComputePassEncoder.h M Source/WebCore/Modules/WebGPU/GPUQueue.cpp M Source/WebCore/Modules/WebGPU/GPURenderPassEncoder.cpp M Source/WebCore/Modules/WebGPU/GPURenderPassEncoder.h Log Message: ----------- [WebGPU] https://gpuweb.github.io/cts/standalone/?debug=1&q=webgpu:api,operation,labels:* does not pass https://bugs.webkit.org/show_bug.cgi?id=297611 rdar://158705661 Reviewed by Tadeu Zagallo. When transient objects can no longer be used in any valid ways, e.g., once a ComputePassEncoder calls end() all calls except label() will result in validation errors. To avoid keeping larger, underlying objects alive until the next JS GC, we set these transient objects to invalid objects. However, a call to label() is expected to return the previously set value. Achieve this by caching the label prior to setting the object to an invalid one. * LayoutTests/http/tests/webgpu/webgpu/api/operation/labels-expected.txt: Update expectations, now all passing. * Source/WebCore/Modules/WebGPU/GPUCommandBuffer.cpp: (WebCore::GPUCommandBuffer::label const): (WebCore::GPUCommandBuffer::setOverrideLabel): * Source/WebCore/Modules/WebGPU/GPUCommandBuffer.h: * Source/WebCore/Modules/WebGPU/GPUCommandEncoder.cpp: (WebCore::GPUCommandEncoder::label const): (WebCore::GPUCommandEncoder::finish): * Source/WebCore/Modules/WebGPU/GPUCommandEncoder.h: * Source/WebCore/Modules/WebGPU/GPUComputePassEncoder.cpp: (WebCore::GPUComputePassEncoder::label const): (WebCore::GPUComputePassEncoder::end): * Source/WebCore/Modules/WebGPU/GPUComputePassEncoder.h: * Source/WebCore/Modules/WebGPU/GPUQueue.cpp: (WebCore::GPUQueue::submit): * Source/WebCore/Modules/WebGPU/GPURenderPassEncoder.cpp: (WebCore::GPURenderPassEncoder::label const): (WebCore::GPURenderPassEncoder::end): * Source/WebCore/Modules/WebGPU/GPURenderPassEncoder.h: Canonical link: https://commits.webkit.org/299124@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes