[WebGPU] WebGPUPipelineLayout/Descriptor and device::createPipelineLayout
Created attachment 357652 [details] Patch
<rdar://problem/46820395>
Created attachment 357653 [details] Patch
Created attachment 357700 [details] Patch
Comment on attachment 357700 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=357700&action=review > Source/WebCore/ChangeLog:3 > + [WebGPU] WebGPUPipelineLayout/Descriptor and device::createPipelineLayout I think you're missing a verb > Source/WebCore/Modules/webgpu/WebGPUPipelineLayout.h:44 > + Ref<GPUPipelineLayout> m_pipelineLayout; 👍 > Source/WebCore/platform/graphics/gpu/GPUPipelineLayout.h:44 > + GPUPipelineLayoutDescriptor m_descriptor; We shouldn't be retaining the Descriptors. The descriptor is just a blueprint, not the actual object itself. The implementation of this should copy the bugs of the GPUBindGroupLayouts into itself. (Or ref() them instead) > Source/WebCore/platform/graphics/gpu/GPUPipelineLayoutDescriptor.h:37 > + Vector<RefPtr<const GPUBindGroupLayout>> bindGroupLayouts; How does RefPtr<const Thingy> work? How can ref() and deref() be const?
Comment on attachment 357700 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=357700&action=review >> Source/WebCore/platform/graphics/gpu/GPUPipelineLayout.h:44 >> + GPUPipelineLayoutDescriptor m_descriptor; > > We shouldn't be retaining the Descriptors. The descriptor is just a blueprint, not the actual object itself. > > The implementation of this should copy the bugs of the GPUBindGroupLayouts into itself. (Or ref() them instead) s/bugs/guts/
Comment on attachment 357700 [details] Patch r- for retaining descriptors
Created attachment 357747 [details] Patch
Comment on attachment 357747 [details] Patch Clearing flags on attachment: 357747 Committed r239410: <https://trac.webkit.org/changeset/239410>
All reviewed patches have been landed. Closing bug.