dawn-cmake/src/dawn/native/d3d12
shrekshao 4313dba514 Pipeline cache D3D12 backend impl
Add D3D12 pipeline caching impl: store cachedPSO blob in cached blob.
Record root signature ID3DBlob in cache key together with
D3D_SHADER_BYTECODE, D3D12_GRAPHICS_PIPELINE_STATE_DESC or
D3D12_COMPUTE_PIPELINE_STATE_DESC.

Shader caching is not added.

Add some pipeline caching negative tests.

Bug: dawn:549
Change-Id: Id1cb560b49f1cf495860e2e0bcf92d8d988c5379
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/91180
Auto-Submit: Shrek Shao <shrekshao@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-06-02 15:16:20 +00:00
..
AdapterD3D12.cpp dawn/native: Add support for feature "indirect-first-instance" 2022-06-01 06:14:07 +00:00
AdapterD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
BackendD3D12.cpp D3D12: Support feature chromium_experimental_dp4a 2022-05-20 08:21:00 +00:00
BackendD3D12.h D3D12: Support feature chromium_experimental_dp4a 2022-05-20 08:21:00 +00:00
BindGroupD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
BindGroupD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
BindGroupLayoutD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
BindGroupLayoutD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
BufferD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
BufferD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
CPUDescriptorHeapAllocationD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
CPUDescriptorHeapAllocationD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
CacheKeyD3D12.cpp Pipeline cache D3D12 backend impl 2022-06-02 15:16:20 +00:00
CommandAllocatorManager.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
CommandAllocatorManager.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
CommandBufferD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
CommandBufferD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
CommandRecordingContext.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
CommandRecordingContext.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
ComputePipelineD3D12.cpp Pipeline cache D3D12 backend impl 2022-06-02 15:16:20 +00:00
ComputePipelineD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
D3D11on12Util.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
D3D11on12Util.h [warnings] Add Wsuggest-override and Wsuggest-destructor-override. 2022-05-10 18:44:34 +00:00
D3D12Backend.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
D3D12Error.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
D3D12Error.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
D3D12Info.cpp D3D12: Support feature chromium_experimental_dp4a 2022-05-20 08:21:00 +00:00
D3D12Info.h D3D12: Support feature chromium_experimental_dp4a 2022-05-20 08:21:00 +00:00
DeviceD3D12.cpp Pipeline cache D3D12 backend impl 2022-06-02 15:16:20 +00:00
DeviceD3D12.h Pipeline cache D3D12 backend impl 2022-06-02 15:16:20 +00:00
Forward.h Pipeline cache D3D12 backend impl 2022-06-02 15:16:20 +00:00
GPUDescriptorHeapAllocationD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
GPUDescriptorHeapAllocationD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
HeapAllocatorD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
HeapAllocatorD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
HeapD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
HeapD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
IntegerTypes.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
NativeSwapChainImplD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
NativeSwapChainImplD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
PageableD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
PageableD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
PipelineCacheD3D12.cpp Pipeline cache D3D12 backend impl 2022-06-02 15:16:20 +00:00
PipelineLayoutD3D12.cpp Pipeline cache D3D12 backend impl 2022-06-02 15:16:20 +00:00
PipelineLayoutD3D12.h Pipeline cache D3D12 backend impl 2022-06-02 15:16:20 +00:00
PlatformFunctions.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
PlatformFunctions.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
QuerySetD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
QuerySetD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
QueueD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
QueueD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
RenderPassBuilderD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
RenderPassBuilderD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
RenderPipelineD3D12.cpp Pipeline cache D3D12 backend impl 2022-06-02 15:16:20 +00:00
RenderPipelineD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
ResidencyManagerD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
ResidencyManagerD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
ResourceAllocatorManagerD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
ResourceAllocatorManagerD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
ResourceHeapAllocationD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
ResourceHeapAllocationD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
SamplerD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
SamplerD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
SamplerHeapCacheD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
SamplerHeapCacheD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
ShaderModuleD3D12.cpp Tint: num_workgroups use free binding group if not specified 2022-06-01 10:23:51 +00:00
ShaderModuleD3D12.h dawn: Add shader module validation for WGSL extension 2022-05-06 08:51:12 +00:00
ShaderVisibleDescriptorAllocatorD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
ShaderVisibleDescriptorAllocatorD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
StagingBufferD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
StagingBufferD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
StagingDescriptorAllocatorD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
StagingDescriptorAllocatorD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
SwapChainD3D12.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
SwapChainD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
TextureCopySplitter.cpp Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
TextureCopySplitter.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
TextureD3D12.cpp D3D12: set correct data layout of dst texture for B2T copy 2022-05-19 16:35:09 +00:00
TextureD3D12.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00
UtilsD3D12.cpp D3D12: Support feature chromium_experimental_dp4a 2022-05-20 08:21:00 +00:00
UtilsD3D12.h D3D12: Support feature chromium_experimental_dp4a 2022-05-20 08:21:00 +00:00
d3d12_platform.h Fixup build/include_order issues in src/dawn. 2022-04-19 20:38:44 +00:00