[webkit-changes] [WebKit/WebKit] f58a43: [WebGPU] logic for primitive restarts is incorrect...
mwyrzykowski
noreply at github.com
Wed May 29 09:23:03 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: f58a434b02ddcd5a3142f52ee3c6c2506e569fc9
https://github.com/WebKit/WebKit/commit/f58a434b02ddcd5a3142f52ee3c6c2506e569fc9
Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
Date: 2024-05-29 (Wed, 29 May 2024)
Changed paths:
M Source/WebGPU/WebGPU/Device.mm
M Source/WebGPU/WebGPU/RenderBundleEncoder.mm
M Source/WebGPU/WebGPU/RenderPassEncoder.h
M Source/WebGPU/WebGPU/RenderPassEncoder.mm
Log Message:
-----------
[WebGPU] logic for primitive restarts is incorrectly applied to non-strip formats
https://bugs.webkit.org/show_bug.cgi?id=274731
<radar://128769041>
Reviewed by Tadeu Zagallo.
If a non-strip index buffer was used in a vertex buffer call with
2^16 - 1 vertices, we would incorrectly zero-out the draw call, thinking
0xffff was the primitive restart value.
Technically also applies to uint32_t index buffers, but we don't allow
creating a vertex buffer with 2^32 - 1 vertices so that correction is applied
in this patch here but not possible to encounter in practice.
* Source/WebGPU/WebGPU/Device.mm:
* Source/WebGPU/WebGPU/RenderPassEncoder.h:
* Source/WebGPU/WebGPU/RenderPassEncoder.mm:
(WebGPU::RenderPassEncoder::clampIndexBufferToValidValues):
(WebGPU::RenderPassEncoder::clampIndirectIndexBufferToValidValues):
* Source/WebGPU/WebGPU/RenderBundleEncoder.mm:
(WebGPU::RenderBundleEncoder::drawIndexedIndirect):
Canonical link: https://commits.webkit.org/279444@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