[WebGPU] Add stubs for WebGPUPipelineLayout/Descriptor and device::createPipelineLayout
authorjustin_fan@apple.com <justin_fan@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 20 Dec 2018 00:59:13 +0000 (00:59 +0000)
committerjustin_fan@apple.com <justin_fan@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 20 Dec 2018 00:59:13 +0000 (00:59 +0000)
commit3eedb8683e89203d351ad397fd0a25658336c8a9
tree784519fbd590d83153e3d60286d84d347ede0ee3
parent13e5d98aa5fdfa0edae6c1655427b2c570efdd32
[WebGPU] Add stubs for WebGPUPipelineLayout/Descriptor and device::createPipelineLayout
https://bugs.webkit.org/show_bug.cgi?id=192843
<rdar://problem/46820395>

Reviewed by Myles Maxfield.

Source/WebCore:

Test: webgpu/pipeline-layouts.html

Implement the emtpy WebGPUPipelineLayout interface, and enable creation via WebGPUDevice::createPipelineLayout:
* Modules/webgpu/WebGPUBindGroupLayout.cpp:
(WebCore::WebGPUBindGroupLayout::WebGPUBindGroupLayout):
* Modules/webgpu/WebGPUBindGroupLayout.h:
(WebCore::WebGPUBindGroupLayout::bindGroupLayout const): Added getter.
* Modules/webgpu/WebGPUDevice.cpp:
(WebCore::WebGPUDevice::createPipelineLayout const): Added.
* Modules/webgpu/WebGPUDevice.h:
* Modules/webgpu/WebGPUDevice.idl: Enable createPipelineLayout.
* Modules/webgpu/WebGPUPipelineLayout.cpp: Added.
(WebCore::WebGPUPipelineLayout::create):
(WebCore::WebGPUPipelineLayout::WebGPUPipelineLayout):
* Modules/webgpu/WebGPUPipelineLayout.h: Added.
* Modules/webgpu/WebGPUPipelineLayout.idl: Added.
* Modules/webgpu/WebGPUPipelineLayoutDescriptor.h: Added.
* Modules/webgpu/WebGPUPipelineLayoutDescriptor.idl: Added.
* platform/graphics/gpu/GPUDevice.cpp:
(WebCore::GPUDevice::createPipelineLayout const): Added.
* platform/graphics/gpu/GPUDevice.h:
* platform/graphics/gpu/GPUPipelineLayout.cpp: Added.
(WebCore::GPUPipelineLayout::create):
(WebCore::GPUPipelineLayout::GPUPipelineLayout):
* platform/graphics/gpu/GPUPipelineLayout.h: Added.
* platform/graphics/gpu/GPUPipelineLayoutDescriptor.h: Added.

Add files and symbols to project:
* CMakeLists.txt:
* DerivedSources.make:
* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/WebCoreBuiltinNames.h:

Add missing include:
* Modules/webgpu/WebGPUQueue.h:

LayoutTests:

Update bind-group-layouts and rename to match new PipelineLayout functionality.

* webgpu/bind-group-layouts-expected.txt: Removed.
* webgpu/pipeline-layouts-expected.txt: Added.
* webgpu/pipeline-layouts.html: Renamed from LayoutTests/webgpu/bind-group-layouts.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@239410 268f45cc-cd09-0410-ab3c-d52691b4dbfc
28 files changed:
LayoutTests/ChangeLog
LayoutTests/webgpu/bind-group-layouts-expected.txt [deleted file]
LayoutTests/webgpu/pipeline-layouts-expected.txt [new file with mode: 0644]
LayoutTests/webgpu/pipeline-layouts.html [moved from LayoutTests/webgpu/bind-group-layouts.html with 78% similarity]
Source/WebCore/CMakeLists.txt
Source/WebCore/ChangeLog
Source/WebCore/DerivedSources.make
Source/WebCore/Modules/webgpu/WebGPUBindGroupLayout.cpp
Source/WebCore/Modules/webgpu/WebGPUBindGroupLayout.h
Source/WebCore/Modules/webgpu/WebGPUDevice.cpp
Source/WebCore/Modules/webgpu/WebGPUDevice.h
Source/WebCore/Modules/webgpu/WebGPUDevice.idl
Source/WebCore/Modules/webgpu/WebGPUPipelineLayout.cpp [new file with mode: 0644]
Source/WebCore/Modules/webgpu/WebGPUPipelineLayout.h [new file with mode: 0644]
Source/WebCore/Modules/webgpu/WebGPUPipelineLayout.idl [new file with mode: 0644]
Source/WebCore/Modules/webgpu/WebGPUPipelineLayoutDescriptor.h [new file with mode: 0644]
Source/WebCore/Modules/webgpu/WebGPUPipelineLayoutDescriptor.idl [new file with mode: 0644]
Source/WebCore/Modules/webgpu/WebGPUQueue.h
Source/WebCore/Sources.txt
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/bindings/js/WebCoreBuiltinNames.h
Source/WebCore/platform/graphics/gpu/GPUBindGroupLayout.cpp
Source/WebCore/platform/graphics/gpu/GPUBindGroupLayout.h
Source/WebCore/platform/graphics/gpu/GPUDevice.cpp
Source/WebCore/platform/graphics/gpu/GPUDevice.h
Source/WebCore/platform/graphics/gpu/GPUPipelineLayout.cpp [new file with mode: 0644]
Source/WebCore/platform/graphics/gpu/GPUPipelineLayout.h [new file with mode: 0644]
Source/WebCore/platform/graphics/gpu/GPUPipelineLayoutDescriptor.h [new file with mode: 0644]