radv: add an early out in radv_cmd_buffer_flush_dynamic_state()
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Mon, 12 Sep 2022 19:16:32 +0000 (15:16 -0400)
committerTimur Kristóf <timur.kristof@gmail.com>
Sun, 22 Jan 2023 12:27:23 +0000 (13:27 +0100)
no point checking all the states if they're known to be unset

Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20653>

src/amd/vulkan/radv_cmd_buffer.c

index 1f0fc38..4ad7b7e 100644 (file)
@@ -4335,9 +4335,12 @@ radv_emit_msaa_state(struct radv_cmd_buffer *cmd_buffer)
 static void
 radv_cmd_buffer_flush_dynamic_state(struct radv_cmd_buffer *cmd_buffer, bool pipeline_is_dirty)
 {
-   uint64_t states =
+   const uint64_t states =
       cmd_buffer->state.dirty & cmd_buffer->state.emitted_graphics_pipeline->needed_dynamic_state;
 
+   if (!states)
+      return;
+
    if (states & (RADV_CMD_DIRTY_DYNAMIC_VIEWPORT |
                  RADV_CMD_DIRTY_DYNAMIC_DEPTH_CLIP_ENABLE |
                  RADV_CMD_DIRTY_DYNAMIC_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE |