aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobin Ehlis <tobine@google.com>2016-10-10 11:14:52 -0600
committerTobin Ehlis <tobine@google.com>2016-10-10 17:40:34 -0600
commit82e3c33710a6d8f48943c5c787e6a05a40a47d7f (patch)
tree21639c8b35167441716bf71637564acd3da1461a
parent1df572d26a53c6bacb24fb727a110a96a57a6ed4 (diff)
downloadusermoji-82e3c33710a6d8f48943c5c787e6a05a40a47d7f.tar.xz
layers: Add validation flag for descriptor updates
Add update_descriptor_sets flag to bypass validation for vkUpdateDescriptorSets() call.
-rw-r--r--layers/core_validation.cpp2
-rw-r--r--layers/core_validation.h1
2 files changed, 3 insertions, 0 deletions
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