From 3f72dda365a3289d988160b6fdbcaa28dc059a71 Mon Sep 17 00:00:00 2001 From: Chia-I Wu Date: Mon, 26 Oct 2015 20:46:14 +0800 Subject: bug 14909: Define "length" as it relates to push constants be in units of bytes not words (WIP) https://cvs.khronos.org/bugzilla/show_bug.cgi?id=14909 --- icd/nulldrv/nulldrv.c | 4 ++-- include/vulkan.h | 10 +++++----- layers/param_checker.cpp | 12 ++++++------ loader/trampoline.c | 4 ++-- vulkan.py | 4 ++-- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/icd/nulldrv/nulldrv.c b/icd/nulldrv/nulldrv.c index cc837867..5d2e62d1 100644 --- a/icd/nulldrv/nulldrv.c +++ b/icd/nulldrv/nulldrv.c @@ -2090,8 +2090,8 @@ ICD_EXPORT void VKAPI vkCmdPushConstants( VkCmdBuffer cmdBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, - uint32_t start, - uint32_t length, + uint32_t offset, + uint32_t size, const void* values) { /* TODO: Implement */ diff --git a/include/vulkan.h b/include/vulkan.h index 3bed6ddd..742e0862 100644 --- a/include/vulkan.h +++ b/include/vulkan.h @@ -1711,8 +1711,8 @@ typedef struct { typedef struct { VkShaderStageFlags stageFlags; - uint32_t start; - uint32_t length; + uint32_t offset; + uint32_t size; } VkPushConstantRange; typedef struct { @@ -2183,7 +2183,7 @@ typedef void (VKAPI *PFN_vkCmdEndQuery)(VkCmdBuffer cmdBuffer, VkQueryPool query typedef void (VKAPI *PFN_vkCmdResetQueryPool)(VkCmdBuffer cmdBuffer, VkQueryPool queryPool, uint32_t startQuery, uint32_t queryCount); typedef void (VKAPI *PFN_vkCmdWriteTimestamp)(VkCmdBuffer cmdBuffer, VkPipelineStageFlagBits pipelineStage, VkQueryPool queryPool, uint32_t slot); typedef void (VKAPI *PFN_vkCmdCopyQueryPoolResults)(VkCmdBuffer cmdBuffer, VkQueryPool queryPool, uint32_t startQuery, uint32_t queryCount, VkBuffer destBuffer, VkDeviceSize destOffset, VkDeviceSize stride, VkQueryResultFlags flags); -typedef void (VKAPI *PFN_vkCmdPushConstants)(VkCmdBuffer cmdBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t start, uint32_t length, const void* values); +typedef void (VKAPI *PFN_vkCmdPushConstants)(VkCmdBuffer cmdBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* values); typedef void (VKAPI *PFN_vkCmdBeginRenderPass)(VkCmdBuffer cmdBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkRenderPassContents contents); typedef void (VKAPI *PFN_vkCmdNextSubpass)(VkCmdBuffer cmdBuffer, VkRenderPassContents contents); typedef void (VKAPI *PFN_vkCmdEndRenderPass)(VkCmdBuffer cmdBuffer); @@ -2934,8 +2934,8 @@ void VKAPI vkCmdPushConstants( VkCmdBuffer cmdBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, - uint32_t start, - uint32_t length, + uint32_t offset, + uint32_t size, const void* values); void VKAPI vkCmdBeginRenderPass( diff --git a/layers/param_checker.cpp b/layers/param_checker.cpp index 28ce172d..645df9c2 100644 --- a/layers/param_checker.cpp +++ b/layers/param_checker.cpp @@ -6435,8 +6435,8 @@ bool PostCmdPushConstants( VkCmdBuffer cmdBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, - uint32_t start, - uint32_t length) + uint32_t offset, + uint32_t size) { @@ -6450,15 +6450,15 @@ VK_LAYER_EXPORT void VKAPI vkCmdPushConstants( VkCmdBuffer cmdBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, - uint32_t start, - uint32_t length, + uint32_t offset, + uint32_t size, const void* values) { PreCmdPushConstants(cmdBuffer, values); - get_dispatch_table(pc_device_table_map, cmdBuffer)->CmdPushConstants(cmdBuffer, layout, stageFlags, start, length, values); + get_dispatch_table(pc_device_table_map, cmdBuffer)->CmdPushConstants(cmdBuffer, layout, stageFlags, offset, size, values); - PostCmdPushConstants(cmdBuffer, layout, stageFlags, start, length); + PostCmdPushConstants(cmdBuffer, layout, stageFlags, offset, size); } bool PreCmdBeginRenderPass( diff --git a/loader/trampoline.c b/loader/trampoline.c index d2f28a82..3c15daa4 100644 --- a/loader/trampoline.c +++ b/loader/trampoline.c @@ -1423,13 +1423,13 @@ LOADER_EXPORT void VKAPI vkCmdCopyQueryPoolResults(VkCmdBuffer cmdBuffer, VkQuer disp->CmdCopyQueryPoolResults(cmdBuffer, queryPool, startQuery, queryCount, destBuffer, destOffset, stride, flags); } -LOADER_EXPORT void VKAPI vkCmdPushConstants(VkCmdBuffer cmdBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t start, uint32_t length, const void* values) +LOADER_EXPORT void VKAPI vkCmdPushConstants(VkCmdBuffer cmdBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void* values) { const VkLayerDispatchTable *disp; disp = loader_get_dispatch(cmdBuffer); - disp->CmdPushConstants(cmdBuffer, layout, stageFlags, start, length, values); + disp->CmdPushConstants(cmdBuffer, layout, stageFlags, offset, size, values); } LOADER_EXPORT void VKAPI vkCmdBeginRenderPass(VkCmdBuffer cmdBuffer, const VkRenderPassBeginInfo* pRenderPassBegin, VkRenderPassContents contents) diff --git a/vulkan.py b/vulkan.py index 40d41de0..a74a615a 100755 --- a/vulkan.py +++ b/vulkan.py @@ -955,8 +955,8 @@ core = Extension( [Param("VkCmdBuffer", "cmdBuffer"), Param("VkPipelineLayout", "layout"), Param("VkShaderStageFlags", "stageFlags"), - Param("uint32_t", "start"), - Param("uint32_t", "length"), + Param("uint32_t", "offset"), + Param("uint32_t", "size"), Param("const void*", "values")]), Proto("void", "CmdBeginRenderPass", -- cgit v1.2.3