diff options
| author | Chris Forbes <chrisforbes@google.com> | 2017-04-21 13:15:15 -0700 |
|---|---|---|
| committer | Chris Forbes <chrisf@ijw.co.nz> | 2017-04-23 09:53:31 +1200 |
| commit | 21506b7b46cb5d3625036592e67b339d1f03c4d8 (patch) | |
| tree | acf91e55befc1221254689cb951f78cadde15a72 /layers/core_validation.cpp | |
| parent | c8182c010f47b54a400b6ce9052409a0ff7d2af5 (diff) | |
| download | usermoji-21506b7b46cb5d3625036592e67b339d1f03c4d8.tar.xz | |
layers: slim down draw counting
We used to care how many draws there were. Now we just care whether
there were /no/ draws (in one place)
Diffstat (limited to 'layers/core_validation.cpp')
| -rw-r--r-- | layers/core_validation.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index d672456e..1dda69d8 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -3622,7 +3622,7 @@ static void resetCB(layer_data *dev_data, const VkCommandBuffer cb) { memset(&pCB->beginInfo, 0, sizeof(VkCommandBufferBeginInfo)); memset(&pCB->inheritanceInfo, 0, sizeof(VkCommandBufferInheritanceInfo)); pCB->numCmds = 0; - memset(pCB->drawCount, 0, NUM_DRAW_TYPES * sizeof(uint64_t)); + pCB->hasDrawCmd = false; pCB->state = CB_NEW; pCB->submitCount = 0; pCB->status = 0; @@ -7581,10 +7581,10 @@ static void UpdateStateCmdDrawDispatchType(layer_data *dev_data, GLOBAL_CB_NODE // Generic function to handle state update for all CmdDraw* type functions static void UpdateStateCmdDrawType(layer_data *dev_data, GLOBAL_CB_NODE *cb_state, VkPipelineBindPoint bind_point, - CMD_TYPE cmd_type, DRAW_TYPE draw_type) { + CMD_TYPE cmd_type) { UpdateStateCmdDrawDispatchType(dev_data, cb_state, bind_point, cmd_type); updateResourceTrackingOnDraw(cb_state); - cb_state->drawCount[draw_type]++; + cb_state->hasDrawCmd = true; } static bool PreCallValidateCmdDraw(layer_data *dev_data, VkCommandBuffer cmd_buffer, bool indexed, VkPipelineBindPoint bind_point, @@ -7594,7 +7594,7 @@ static bool PreCallValidateCmdDraw(layer_data *dev_data, VkCommandBuffer cmd_buf } static void PostCallRecordCmdDraw(layer_data *dev_data, GLOBAL_CB_NODE *cb_state, VkPipelineBindPoint bind_point) { - UpdateStateCmdDrawType(dev_data, cb_state, bind_point, CMD_DRAW, DRAW); + UpdateStateCmdDrawType(dev_data, cb_state, bind_point, CMD_DRAW); } VKAPI_ATTR void VKAPI_CALL CmdDraw(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, @@ -7619,7 +7619,7 @@ static bool PreCallValidateCmdDrawIndexed(layer_data *dev_data, VkCommandBuffer } static void PostCallRecordCmdDrawIndexed(layer_data *dev_data, GLOBAL_CB_NODE *cb_state, VkPipelineBindPoint bind_point) { - UpdateStateCmdDrawType(dev_data, cb_state, bind_point, CMD_DRAWINDEXED, DRAW_INDEXED); + UpdateStateCmdDrawType(dev_data, cb_state, bind_point, CMD_DRAWINDEXED); } VKAPI_ATTR void VKAPI_CALL CmdDrawIndexed(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, @@ -7652,7 +7652,7 @@ static bool PreCallValidateCmdDrawIndirect(layer_data *dev_data, VkCommandBuffer static void PostCallRecordCmdDrawIndirect(layer_data *dev_data, GLOBAL_CB_NODE *cb_state, VkPipelineBindPoint bind_point, BUFFER_STATE *buffer_state) { - UpdateStateCmdDrawType(dev_data, cb_state, bind_point, CMD_DRAWINDIRECT, DRAW_INDIRECT); + UpdateStateCmdDrawType(dev_data, cb_state, bind_point, CMD_DRAWINDIRECT); AddCommandBufferBindingBuffer(dev_data, cb_state, buffer_state); } @@ -7688,7 +7688,7 @@ static bool PreCallValidateCmdDrawIndexedIndirect(layer_data *dev_data, VkComman static void PostCallRecordCmdDrawIndexedIndirect(layer_data *dev_data, GLOBAL_CB_NODE *cb_state, VkPipelineBindPoint bind_point, BUFFER_STATE *buffer_state) { - UpdateStateCmdDrawType(dev_data, cb_state, bind_point, CMD_DRAWINDEXEDINDIRECT, DRAW_INDEXED_INDIRECT); + UpdateStateCmdDrawType(dev_data, cb_state, bind_point, CMD_DRAWINDEXEDINDIRECT); AddCommandBufferBindingBuffer(dev_data, cb_state, buffer_state); } |
