Reland "WebGPU: Add GPUProgrammablePassEncoder interface"
Reason for revert: Use of the GPUProgrammablePassEncoder and GPURenderEncoderBase interfaces aren't installing the function templates properly. According to the spec[1], the first identifier of `includes` statement MUST reference a `interface`. It means that a `interface mixin` cannot include the other `interface mixin`. In this case, even though GPURenderEncoderBase is `interface mixin`, it includes GPUProgrammablePassEncoder which is `interface mixin`. Solution: The problem should be fixed in spec side[2] and make final interfaces include the mixins directly as follows: GPURenderBundleEncoder includes GPUProgrammablePassEncoder; GPURenderPassEncoder includes GPUProgrammablePassEncoder; Original change's description: > WebGPU: Add GPUProgrammablePassEncoder interface > > This is a spec match-up with[1] > > [1] https://github.com/gpuweb/gpuweb/pull/459 > > Bug: 877147 > Change-Id: I080324cbb083160ae84aa109623e311f24a875cb > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1845132 > Reviewed-by: Corentin Wallez <cwallez@chromium.org> > Reviewed-by: Kentaro Hara <haraken@chromium.org> > Commit-Queue: Jinho Bang <jinho.bang@samsung.com> > Cr-Commit-Position: refs/heads/master@{#704061} [1] https://heycam.github.io/webidl/#includes-statement [2] https://github.com/gpuweb/gpuweb/pull/470 Bug: 1013649 Change-Id: Iaeb1ac69b0f1f7a779c341e7a92f6b29e28d3880 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1857846 Commit-Queue: Jinho Bang <jinho.bang@samsung.com> Reviewed-by:Kentaro Hara <haraken@chromium.org> Reviewed-by:
Corentin Wallez <cwallez@chromium.org> Cr-Commit-Position: refs/heads/master@{#705991}
Showing
Please register or sign in to comment