From 82e3c33710a6d8f48943c5c787e6a05a40a47d7f Mon Sep 17 00:00:00 2001 From: Tobin Ehlis Date: Mon, 10 Oct 2016 11:14:52 -0600 Subject: layers: Add validation flag for descriptor updates Add update_descriptor_sets flag to bypass validation for vkUpdateDescriptorSets() call. --- layers/core_validation.cpp | 2 ++ layers/core_validation.h | 1 + 2 files changed, 3 insertions(+) diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index 59db198d..c9502bab 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -6893,6 +6893,8 @@ FreeDescriptorSets(VkDevice device, VkDescriptorPool descriptorPool, uint32_t co static bool PreCallValidateUpdateDescriptorSets(layer_data *dev_data, uint32_t descriptorWriteCount, const VkWriteDescriptorSet *pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet *pDescriptorCopies) { + if (dev_data->instance_state->disabled.update_descriptor_sets) + return false; // First thing to do is perform map look-ups. // NOTE : UpdateDescriptorSets is somewhat unique in that it's operating on a number of DescriptorSets // so we can't just do a single map look-up up-front, but do them individually in functions below diff --git a/layers/core_validation.h b/layers/core_validation.h index be750253..a140bfc9 100644 --- a/layers/core_validation.h +++ b/layers/core_validation.h @@ -77,6 +77,7 @@ struct CHECK_DISABLED { bool push_constant_range; // Skip push constant range checks bool free_descriptor_sets; // Skip validation prior to vkFreeDescriptorSets() bool allocate_descriptor_sets; // Skip validation prior to vkAllocateDescriptorSets() + bool update_descriptor_sets; // Skip validation prior to vkUpdateDescriptorSets() }; #if MTMERGE -- cgit v1.2.3