From 0600115afb68012bf20a3e75fdb7302776d59666 Mon Sep 17 00:00:00 2001 From: Courtney Goeltzenleuchter Date: Mon, 20 Apr 2015 11:04:54 -0600 Subject: vkEnumerateLayers: Update to match upstream The upstream vulkan.h header removed maxLayerCount parameter from vkEnumerateLayers. This patch implements that change for the sample driver and layers. --- layers/basic.cpp | 10 +++++----- layers/draw_state.cpp | 8 ++++---- layers/glave_snapshot.c | 14 +++++++------- layers/glsl_compiler.c | 0 layers/mem_tracker.cpp | 12 ++++++------ layers/multi.cpp | 28 ++++++++++++++-------------- layers/param_checker.cpp | 8 ++++---- layers/shader_checker.cpp | 8 ++++---- 8 files changed, 44 insertions(+), 44 deletions(-) create mode 100644 layers/glsl_compiler.c (limited to 'layers') diff --git a/layers/basic.cpp b/layers/basic.cpp index b7ad6b7c..64964f34 100644 --- a/layers/basic.cpp +++ b/layers/basic.cpp @@ -135,18 +135,18 @@ VK_LAYER_EXPORT VkResult VKAPI vkGetFormatInfo(VkDevice device, VkFormat format, return result; } -VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxLayerCount, size_t maxStringSize, size_t* pOutLayerCount, char* const* pOutLayers, void* pReserved) +VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxStringSize, size_t* pLayerCount, char* const* pOutLayers, void* pReserved) { if (gpu != NULL) { VkLayerDispatchTable* pTable = initLayerTable((const VkBaseLayerObject *) gpu); printf("At start of wrapped vkEnumerateLayers() call w/ gpu: %p\n", gpu); - VkResult result = pTable->EnumerateLayers(gpu, maxLayerCount, maxStringSize, pOutLayerCount, pOutLayers, pReserved); + VkResult result = pTable->EnumerateLayers(gpu, maxStringSize, pLayerCount, pOutLayers, pReserved); return result; } else { - if (pOutLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL || pReserved == NULL) + if (pLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL || pReserved == NULL) return VK_ERROR_INVALID_POINTER; // Example of a layer that is only compatible with Intel's GPUs @@ -158,11 +158,11 @@ VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t ma fpGetGpuInfo((VkPhysicalDevice) gpuw->nextObject, VK_PHYSICAL_DEVICE_INFO_TYPE_PROPERTIES, &dataSize, &gpuProps); if (gpuProps.vendorId == 0x8086) { - *pOutLayerCount = 1; + *pLayerCount = 1; strncpy((char *) pOutLayers[0], "Basic", maxStringSize); } else { - *pOutLayerCount = 0; + *pLayerCount = 0; } return VK_SUCCESS; } diff --git a/layers/draw_state.cpp b/layers/draw_state.cpp index aae865b8..aad27451 100644 --- a/layers/draw_state.cpp +++ b/layers/draw_state.cpp @@ -1519,19 +1519,19 @@ VK_LAYER_EXPORT VkResult VKAPI vkGetGlobalExtensionInfo( return VK_SUCCESS; } -VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxLayerCount, size_t maxStringSize, size_t* pOutLayerCount, char* const* pOutLayers, void* pReserved) +VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxStringSize, size_t* pLayerCount, char* const* pOutLayers, void* pReserved) { if (gpu != NULL) { pCurObj = (VkBaseLayerObject *) gpu; loader_platform_thread_once(&g_initOnce, initDrawState); - VkResult result = nextTable.EnumerateLayers(gpu, maxLayerCount, maxStringSize, pOutLayerCount, pOutLayers, pReserved); + VkResult result = nextTable.EnumerateLayers(gpu, maxStringSize, pLayerCount, pOutLayers, pReserved); return result; } else { - if (pOutLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL) + if (pLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL) return VK_ERROR_INVALID_POINTER; // This layer compatible with all GPUs - *pOutLayerCount = 1; + *pLayerCount = 1; strncpy((char *) pOutLayers[0], "DrawState", maxStringSize); return VK_SUCCESS; } diff --git a/layers/glave_snapshot.c b/layers/glave_snapshot.c index 81a2b588..e7afe57a 100644 --- a/layers/glave_snapshot.c +++ b/layers/glave_snapshot.c @@ -542,22 +542,22 @@ VK_LAYER_EXPORT VkResult VKAPI vkDestroyDevice(VkDevice device) return result; } -VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalGpu gpu, size_t maxLayerCount, size_t maxStringSize, size_t* pOutLayerCount, char* const* pOutLayers, void* pReserved) +VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalGpu gpu, size_t maxStringSize, size_t* pLayerCount, char* const* pOutLayers, void* pReserved) { if (gpu != NULL) { VkBaseLayerObject* gpuw = (VkBaseLayerObject *) gpu; loader_platform_thread_lock_mutex(&objLock); - ll_increment_use_count((void*)gpu, VK_OBJECT_TYPE_PHYSICAL_GPU); - loader_platform_thread_unlock_mutex(&objLock); + ll_increment_use_count((void*)gpu, VK_OBJECT_TYPE_PHYSICAL_GPU); + loader_platform_thread_unlock_mutex(&objLock); pCurObj = gpuw; loader_platform_thread_once(&tabOnce, initGlaveSnapshot); - VkResult result = nextTable.EnumerateLayers((VkPhysicalGpu)gpuw->nextObject, maxLayerCount, maxStringSize, pOutLayerCount, pOutLayers, pReserved); - return result; + VkResult result = nextTable.EnumerateLayers((VkPhysicalGpu)gpuw->nextObject, maxStringSize, pLayerCount, pOutLayers, pReserved); + return result; } else { - if (pOutLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL) + if (pLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL) return VK_ERROR_INVALID_POINTER; // This layer compatible with all GPUs - *pOutLayerCount = 1; + *pLayerCount = 1; strncpy((char *) pOutLayers[0], LAYER_NAME_STR, maxStringSize); return VK_SUCCESS; } diff --git a/layers/glsl_compiler.c b/layers/glsl_compiler.c new file mode 100644 index 00000000..e69de29b diff --git a/layers/mem_tracker.cpp b/layers/mem_tracker.cpp index 6f5eb39f..45bea6f5 100644 --- a/layers/mem_tracker.cpp +++ b/layers/mem_tracker.cpp @@ -951,22 +951,22 @@ VK_LAYER_EXPORT VkResult VKAPI vkGetGlobalExtensionInfo( return VK_SUCCESS; } -VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxLayerCount, - size_t maxStringSize, size_t* pOutLayerCount, char* const* pOutLayers, void* pReserved) +VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, + size_t maxStringSize, size_t* pLayerCount, char* const* pOutLayers, void* pReserved) { if (gpu != NULL) { pCurObj = (VkBaseLayerObject *) gpu; loader_platform_thread_once(&g_initOnce, initMemTracker); - VkResult result = nextTable.EnumerateLayers(gpu, maxLayerCount, - maxStringSize, pOutLayerCount, pOutLayers, pReserved); + VkResult result = nextTable.EnumerateLayers(gpu, + maxStringSize, pLayerCount, pOutLayers, pReserved); return result; } else { - if (pOutLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL) + if (pLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL) return VK_ERROR_INVALID_POINTER; // This layer compatible with all GPUs - *pOutLayerCount = 1; + *pLayerCount = 1; strncpy((char *) pOutLayers[0], "MemTracker", maxStringSize); return VK_SUCCESS; } diff --git a/layers/multi.cpp b/layers/multi.cpp index e70b6383..1640dc6f 100644 --- a/layers/multi.cpp +++ b/layers/multi.cpp @@ -97,16 +97,16 @@ VK_LAYER_EXPORT VkResult VKAPI multi1StorePipeline(VkDevice device, VkPipeline p return result; } -VK_LAYER_EXPORT VkResult VKAPI multi1EnumerateLayers(VkPhysicalDevice gpu, size_t maxLayerCount, size_t maxStringSize, - size_t* pOutLayerCount, char* const* pOutLayers, +VK_LAYER_EXPORT VkResult VKAPI multi1EnumerateLayers(VkPhysicalDevice gpu, size_t maxStringSize, + size_t* pLayerCount, char* const* pOutLayers, void* pReserved) { if (gpu == NULL) - return vkEnumerateLayers(gpu, maxLayerCount, maxStringSize, pOutLayerCount, pOutLayers, pReserved); + return vkEnumerateLayers(gpu, maxStringSize, pLayerCount, pOutLayers, pReserved); VkLayerDispatchTable* pTable = tableMap1[gpu]; printf("At start of multi1 layer vkEnumerateLayers()\n"); - VkResult result = pTable->EnumerateLayers(gpu, maxLayerCount, maxStringSize, pOutLayerCount, pOutLayers, pReserved); + VkResult result = pTable->EnumerateLayers(gpu, maxStringSize, pLayerCount, pOutLayers, pReserved); printf("Completed multi1 layer vkEnumerateLayers()\n"); return result; } @@ -194,17 +194,17 @@ VK_LAYER_EXPORT VkResult VKAPI multi2BeginCommandBuffer(VkCmdBuffer cmdBuffer, c } -VK_LAYER_EXPORT VkResult VKAPI multi2EnumerateLayers(VkPhysicalDevice gpu, size_t maxLayerCount, size_t maxStringSize, - size_t* pOutLayerCount, char* const* pOutLayers, +VK_LAYER_EXPORT VkResult VKAPI multi2EnumerateLayers(VkPhysicalDevice gpu, size_t maxStringSize, + size_t* pLayerCount, char* const* pOutLayers, void* pReserved) { if (gpu == NULL) - return vkEnumerateLayers(gpu, maxLayerCount, maxStringSize, pOutLayerCount, pOutLayers, pReserved); + return vkEnumerateLayers(gpu, maxStringSize, pLayerCount, pOutLayers, pReserved); VkLayerDispatchTable* pTable = tableMap2[gpu]; printf("At start of multi2 layer vkEnumerateLayers()\n"); - VkResult result = pTable->EnumerateLayers(gpu, maxLayerCount, maxStringSize, pOutLayerCount, pOutLayers, pReserved); + VkResult result = pTable->EnumerateLayers(gpu, maxStringSize, pLayerCount, pOutLayers, pReserved); printf("Completed multi2 layer vkEnumerateLayers()\n"); return result; } @@ -234,16 +234,16 @@ VK_LAYER_EXPORT void * VKAPI multi2GetProcAddr(VkPhysicalDevice gpu, const char* } /********************************* Common functions ********************************/ -VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxLayerCount, size_t maxStringSize, - size_t* pOutLayerCount, char* const* pOutLayers, - void* pReserved) +VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxStringSize, + size_t* pLayerCount, char* const* pOutLayers, + void* pReserved) { - if (pOutLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL || pOutLayers[1] == NULL || pReserved == NULL) + if (pLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL || pOutLayers[1] == NULL || pReserved == NULL) return VK_ERROR_INVALID_POINTER; - if (maxLayerCount < 2) + if (*pLayerCount < 2) return VK_ERROR_INITIALIZATION_FAILED; - *pOutLayerCount = 2; + *pLayerCount = 2; strncpy((char *) pOutLayers[0], "multi1", maxStringSize); strncpy((char *) pOutLayers[1], "multi2", maxStringSize); return VK_SUCCESS; diff --git a/layers/param_checker.cpp b/layers/param_checker.cpp index 74d8582a..3171baf2 100644 --- a/layers/param_checker.cpp +++ b/layers/param_checker.cpp @@ -308,7 +308,7 @@ VK_LAYER_EXPORT VkResult VKAPI vkGetPhysicalDeviceExtensionInfo( return result; } -VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxLayerCount, size_t maxStringSize, size_t* pOutLayerCount, char* const* pOutLayers, void* pReserved) +VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxStringSize, size_t* pLayerCount, char* const* pOutLayers, void* pReserved) { char str[1024]; if (gpu != NULL) { @@ -316,16 +316,16 @@ VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t ma layerCbMsg(VK_DBG_MSG_UNKNOWN, VK_VALIDATION_LEVEL_0, nullptr, 0, 0, "PARAMCHECK", str); pCurObj = (VkBaseLayerObject *) gpu; loader_platform_thread_once(&tabOnce, initParamChecker); - VkResult result = nextTable.EnumerateLayers(gpu, maxLayerCount, maxStringSize, pOutLayerCount, pOutLayers, pReserved); + VkResult result = nextTable.EnumerateLayers(gpu, maxStringSize, pLayerCount, pOutLayers, pReserved); sprintf(str, "Completed layered EnumerateLayers\n"); layerCbMsg(VK_DBG_MSG_UNKNOWN, VK_VALIDATION_LEVEL_0, nullptr, 0, 0, "PARAMCHECK", str); fflush(stdout); return result; } else { - if (pOutLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL) + if (pLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL) return VK_ERROR_INVALID_POINTER; // This layer compatible with all GPUs - *pOutLayerCount = 1; + *pLayerCount = 1; strncpy(pOutLayers[0], "ParamChecker", maxStringSize); return VK_SUCCESS; } diff --git a/layers/shader_checker.cpp b/layers/shader_checker.cpp index cc6bb3e1..28e0fddc 100644 --- a/layers/shader_checker.cpp +++ b/layers/shader_checker.cpp @@ -161,14 +161,14 @@ VK_LAYER_EXPORT VkResult VKAPI vkCreateDevice(VkPhysicalDevice gpu, const VkDevi } -VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice gpu, size_t maxLayerCount, size_t maxStringSize, size_t* pOutLayerCount, char* const* pOutLayers, void* pReserved) +VK_LAYER_EXPORT VkResult VKAPI vkEnumerateLayers(VkPhysicalDevice physicalDevice, size_t maxStringSize, size_t* pLayerCount, char* const* pOutLayers, void* pReserved) { - if (pOutLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL || pOutLayers[1] == NULL || pReserved == NULL) + if (pLayerCount == NULL || pOutLayers == NULL || pOutLayers[0] == NULL || pOutLayers[1] == NULL || pReserved == NULL) return VK_ERROR_INVALID_POINTER; - if (maxLayerCount < 1) + if (*pLayerCount < 1) return VK_ERROR_INITIALIZATION_FAILED; - *pOutLayerCount = 1; + *pLayerCount = 1; strncpy((char *) pOutLayers[0], "ShaderChecker", maxStringSize); return VK_SUCCESS; } -- cgit v1.2.3