iris: Re-emit push constants if we have a varying workgroup size

Fixes: 33c61eb2f1 "iris: Implement ARB_compute_variable_group_size"

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6570>
This commit is contained in:
Jason Ekstrand
2020-09-02 13:48:51 -05:00
committed by Marge Bot
parent fe18a0fd45
commit bbaa62e4e1

View File

@@ -6700,7 +6700,8 @@ iris_upload_gpgpu_walker(struct iris_context *ice,
}
/* TODO: Combine subgroup-id with cbuf0 so we can push regular uniforms */
if (stage_dirty & IRIS_STAGE_DIRTY_CS) {
if ((stage_dirty & IRIS_STAGE_DIRTY_CS) ||
cs_prog_data->local_size[0] == 0 /* Variable local group size */) {
uint32_t curbe_data_offset = 0;
assert(cs_prog_data->push.cross_thread.dwords == 0 &&
cs_prog_data->push.per_thread.dwords == 1 &&