diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c index 64ad0311aec..15e8ccb6558 100644 --- a/src/compiler/spirv/spirv_to_nir.c +++ b/src/compiler/spirv/spirv_to_nir.c @@ -7302,7 +7302,8 @@ spirv_to_nir(const uint32_t *words, size_t word_count, b->shader = nir_shader_create(b, stage, nir_options); b->shader->info.float_controls_execution_mode = options->float_controls_execution_mode; - b->shader->info.workgroup_size_variable = true; + if (mesa_shader_stage_uses_workgroup(stage)) + b->shader->info.workgroup_size_variable = true; b->shader->info.cs.shader_index = options->shader_index; b->shader->has_debug_info = options->debug_info; _mesa_blake3_compute(words, word_count * sizeof(uint32_t), b->shader->info.source_blake3);