aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2020-01-08 14:47:11 -0600
committerJason Ekstrand <[email protected]>2020-01-09 19:45:00 -0600
commitae72d1238c758404df045a82c36803dbccd93b31 (patch)
treebc528308b96ccac5b207fa6edb371376b9328e68
parentca6b3b11af29b93ac73d4ca2677aa6b34837fdfe (diff)
anv: Flag descriptors dirty when gl_NumWorkgroups is used
Cc: [email protected] Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]>
-rw-r--r--src/intel/vulkan/genX_cmd_buffer.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c
index 66f0d7c6157..6797efd3068 100644
--- a/src/intel/vulkan/genX_cmd_buffer.c
+++ b/src/intel/vulkan/genX_cmd_buffer.c
@@ -3908,6 +3908,9 @@ void genX(CmdDispatchBase)(
.bo = cmd_buffer->device->dynamic_state_pool.block_pool.bo,
.offset = state.offset,
};
+
+ /* The num_workgroups buffer goes in the binding table */
+ cmd_buffer->state.descriptors_dirty |= VK_SHADER_STAGE_COMPUTE_BIT;
}
genX(cmd_buffer_flush_compute_state)(cmd_buffer);
@@ -3958,9 +3961,13 @@ void genX(CmdDispatchIndirect)(
return;
#endif
- if (prog_data->uses_num_work_groups)
+ if (prog_data->uses_num_work_groups) {
cmd_buffer->state.compute.num_workgroups = addr;
+ /* The num_workgroups buffer goes in the binding table */
+ cmd_buffer->state.descriptors_dirty |= VK_SHADER_STAGE_COMPUTE_BIT;
+ }
+
genX(cmd_buffer_flush_compute_state)(cmd_buffer);
struct gen_mi_builder b;