Increase limits to support base WebGPU.
- maxImageDimension3D updated to 2048.
- maxFragmentCombinedOutputResources updated to 28. This is
maxColorAttachments + maxPerStageDescriptorStorageBuffers +
maxPerStageDescriptorStorageImages. 8 + 16 + 4 = 28. WebGPU doesn't
have a limit for combined fragment outputs and requires at least this
many.
Bug: dawn:796
Change-Id: Ibda29f98d9fa6685ba8eac4b68dc03b70ae5100d
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/55248
Kokoro-Result: kokoro <noreply+kokoro@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
Commit-Queue: Corentin Wallez <cwallez@google.com>
diff --git a/src/Vulkan/VkConfig.hpp b/src/Vulkan/VkConfig.hpp
index 8fffde2..ee850e3 100644
--- a/src/Vulkan/VkConfig.hpp
+++ b/src/Vulkan/VkConfig.hpp
@@ -53,7 +53,7 @@
{
MAX_IMAGE_LEVELS_1D = 14,
MAX_IMAGE_LEVELS_2D = 14,
- MAX_IMAGE_LEVELS_3D = 11,
+ MAX_IMAGE_LEVELS_3D = 12,
MAX_IMAGE_LEVELS_CUBE = 14,
MAX_IMAGE_ARRAY_LAYERS = 2048,
MAX_SAMPLER_LOD_BIAS = 15,
diff --git a/src/Vulkan/VkPhysicalDevice.cpp b/src/Vulkan/VkPhysicalDevice.cpp
index 0254d4b..6d781ce 100644
--- a/src/Vulkan/VkPhysicalDevice.cpp
+++ b/src/Vulkan/VkPhysicalDevice.cpp
@@ -482,7 +482,7 @@
sw::MAX_INTERFACE_COMPONENTS, // maxFragmentInputComponents
sw::RENDERTARGETS, // maxFragmentOutputAttachments
1, // maxFragmentDualSrcAttachments
- 4, // maxFragmentCombinedOutputResources
+ 28, // maxFragmentCombinedOutputResources
16384, // maxComputeSharedMemorySize
{ 65535, 65535, 65535 }, // maxComputeWorkGroupCount[3]
128, // maxComputeWorkGroupInvocations