Mesa (main): anv: Refactor dirty masking in cmd_buffer_flush_state
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Dec 21 11:28:32 UTC 2021
Module: Mesa
Branch: main
Commit: de916d827f77cdce88a413f6a4dc2c3f2b183ee2
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=de916d827f77cdce88a413f6a4dc2c3f2b183ee2
Author: Caio Oliveira <caio.oliveira at intel.com>
Date: Tue Dec 21 00:40:53 2021 -0800
anv: Refactor dirty masking in cmd_buffer_flush_state
Instead of masking the dirty variable itself, use an appropriate mask
in the users of dirty. This will avoid extra tracking when dealing
with Task/Mesh later.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14275>
---
src/intel/vulkan/genX_cmd_buffer.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c
index 059b1a7751e..371fca734da 100644
--- a/src/intel/vulkan/genX_cmd_buffer.c
+++ b/src/intel/vulkan/genX_cmd_buffer.c
@@ -3759,12 +3759,14 @@ genX(cmd_buffer_flush_state)(struct anv_cmd_buffer *cmd_buffer)
* descriptors or push constants is dirty.
*/
dirty |= cmd_buffer->state.push_constants_dirty;
- dirty &= ANV_STAGE_MASK & VK_SHADER_STAGE_ALL_GRAPHICS;
- cmd_buffer_flush_push_constants(cmd_buffer, dirty);
+ cmd_buffer_flush_push_constants(cmd_buffer,
+ dirty & VK_SHADER_STAGE_ALL_GRAPHICS);
}
- if (dirty)
- cmd_buffer_emit_descriptor_pointers(cmd_buffer, dirty);
+ if (dirty & VK_SHADER_STAGE_ALL_GRAPHICS) {
+ cmd_buffer_emit_descriptor_pointers(cmd_buffer,
+ dirty & VK_SHADER_STAGE_ALL_GRAPHICS);
+ }
cmd_buffer_emit_clip(cmd_buffer);
More information about the mesa-commit
mailing list