diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/intel/vulkan/anv_descriptor_set.c | 5 | ||||
-rw-r--r-- | src/intel/vulkan/anv_private.h | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/intel/vulkan/anv_descriptor_set.c b/src/intel/vulkan/anv_descriptor_set.c index 3924d04310e..c977318a058 100644 --- a/src/intel/vulkan/anv_descriptor_set.c +++ b/src/intel/vulkan/anv_descriptor_set.c @@ -91,6 +91,9 @@ VkResult anv_CreateDescriptorSetLayout( uint32_t b = binding->binding; assert(binding->descriptorCount > 0); +#ifndef NDEBUG + set_layout->binding[b].type = binding->descriptorType; +#endif set_layout->binding[b].array_size = binding->descriptorCount; set_layout->binding[b].descriptor_index = set_layout->size; set_layout->size += binding->descriptorCount; @@ -526,6 +529,8 @@ void anv_UpdateDescriptorSets( &set->descriptors[bind_layout->descriptor_index]; desc += write->dstArrayElement; + assert(write->descriptorType == bind_layout->type); + switch (write->descriptorType) { case VK_DESCRIPTOR_TYPE_SAMPLER: for (uint32_t j = 0; j < write->descriptorCount; j++) { diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h index 26ffbd65666..975cdfc33a1 100644 --- a/src/intel/vulkan/anv_private.h +++ b/src/intel/vulkan/anv_private.h @@ -922,6 +922,11 @@ struct anv_vue_header { }; struct anv_descriptor_set_binding_layout { +#ifndef NDEBUG + /* The type of the descriptors in this binding */ + VkDescriptorType type; +#endif + /* Number of array elements in this binding */ uint16_t array_size; |