Plumb PipelineLayouts down to SpirvRoutine

This initializes arrays to hold the descriptor sets in the routine. Nothing uses this yet.

Bug: b/126330097
Change-Id: If052d0b93e62e4f32e88ed02f9bc21f4203587f5
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/25553
Reviewed-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Ben Clayton <bclayton@google.com>
diff --git a/src/Vulkan/VkPipelineLayout.cpp b/src/Vulkan/VkPipelineLayout.cpp
index 1daea01..fcc6c66 100644
--- a/src/Vulkan/VkPipelineLayout.cpp
+++ b/src/Vulkan/VkPipelineLayout.cpp
@@ -44,4 +44,15 @@
 	       (pCreateInfo->pushConstantRangeCount * sizeof(VkPushConstantRange));
 }
 
+size_t PipelineLayout::getNumDescriptorSets() const
+{
+	return setLayoutCount;
+}
+
+size_t PipelineLayout::getBindingOffset(size_t descriptorSet, size_t binding) const
+{
+	ASSERT(descriptorSet < setLayoutCount);
+	return setLayouts[descriptorSet]->getBindingOffset(binding);
+}
+
 } // namespace vk