diff options
-rw-r--r-- | src/compiler/nir/nir_lower_system_values.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/compiler/nir/nir_lower_system_values.c b/src/compiler/nir/nir_lower_system_values.c index fb560ee21bb..40e0f85deea 100644 --- a/src/compiler/nir/nir_lower_system_values.c +++ b/src/compiler/nir/nir_lower_system_values.c @@ -101,6 +101,16 @@ convert_block(nir_block *block, nir_builder *b) break; } + case SYSTEM_VALUE_LOCAL_GROUP_SIZE: { + nir_const_value local_size; + memset(&local_size, 0, sizeof(local_size)); + local_size.u32[0] = b->shader->info.cs.local_size[0]; + local_size.u32[1] = b->shader->info.cs.local_size[1]; + local_size.u32[2] = b->shader->info.cs.local_size[2]; + sysval = nir_build_imm(b, 3, 32, local_size); + break; + } + case SYSTEM_VALUE_VERTEX_ID: if (b->shader->options->vertex_id_zero_based) { sysval = nir_iadd(b, |