aboutsummaryrefslogtreecommitdiff
path: root/layers/parameter_validation.cpp
diff options
context:
space:
mode:
authorDustin Graves <dustin@lunarg.com>2016-05-09 17:36:57 -0600
committerDustin Graves <dustin@lunarg.com>2016-05-10 10:29:03 -0600
commit4d48f512830f548ff5e81a20948d4bcdf698308f (patch)
treeef3e8c2169d4236a690fe3095815ff784766bce5 /layers/parameter_validation.cpp
parent456edc6df03b957746200a08bb9a967cc698ce94 (diff)
downloadusermoji-4d48f512830f548ff5e81a20948d4bcdf698308f.tar.xz
layers: Add missing parameter_validation functions
Add the following to address missing functionality in the parameter_validation layer: - Add parameter_validation_vkResetCommandBuffer call to vkResetCommandBuffer - Add missing vkGetPhysicalDevice.* exports to GetInstanceProcAddress Change-Id: I73944933b0c318f691a14c305c192aa7a0bf8ded
Diffstat (limited to 'layers/parameter_validation.cpp')
-rw-r--r--layers/parameter_validation.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/layers/parameter_validation.cpp b/layers/parameter_validation.cpp
index 9dc9b8fa..19503573 100644
--- a/layers/parameter_validation.cpp
+++ b/layers/parameter_validation.cpp
@@ -3057,12 +3057,17 @@ VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEndCommandBuffer(VkCommandBuffe
VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL
vkResetCommandBuffer(VkCommandBuffer commandBuffer, VkCommandBufferResetFlags flags) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
layer_data *my_data = get_my_data_ptr(get_dispatch_key(commandBuffer), layer_data_map);
assert(my_data != NULL);
- VkResult result = get_dispatch_table(pc_device_table_map, commandBuffer)->ResetCommandBuffer(commandBuffer, flags);
+ bool skip_call = parameter_validation_vkResetCommandBuffer(my_data->report_data, flags);
+
+ if (!skip_call) {
+ result = get_dispatch_table(pc_device_table_map, commandBuffer)->ResetCommandBuffer(commandBuffer, flags);
- validate_result(my_data->report_data, "vkResetCommandBuffer", result);
+ validate_result(my_data->report_data, "vkResetCommandBuffer", result);
+ }
return result;
}
@@ -4027,6 +4032,14 @@ VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(V
return (PFN_vkVoidFunction)vkGetPhysicalDeviceFeatures;
if (!strcmp(funcName, "vkGetPhysicalDeviceFormatProperties"))
return (PFN_vkVoidFunction)vkGetPhysicalDeviceFormatProperties;
+ if (!strcmp(funcName, "vkGetPhysicalDeviceImageFormatProperties"))
+ return (PFN_vkVoidFunction)vkGetPhysicalDeviceImageFormatProperties;
+ if (!strcmp(funcName, "vkGetPhysicalDeviceSparseImageFormatProperties"))
+ return (PFN_vkVoidFunction)vkGetPhysicalDeviceSparseImageFormatProperties;
+ if (!strcmp(funcName, "vkGetPhysicalDeviceQueueFamilyProperties"))
+ return (PFN_vkVoidFunction)vkGetPhysicalDeviceQueueFamilyProperties;
+ if (!strcmp(funcName, "vkGetPhysicalDeviceMemoryProperties"))
+ return (PFN_vkVoidFunction)vkGetPhysicalDeviceMemoryProperties;
if (!strcmp(funcName, "vkEnumerateInstanceLayerProperties"))
return (PFN_vkVoidFunction)vkEnumerateInstanceLayerProperties;
if (!strcmp(funcName, "vkEnumerateInstanceExtensionProperties"))