summaryrefslogtreecommitdiffstats
path: root/src/amd/common/ac_shader_info.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/amd/common/ac_shader_info.c')
-rw-r--r--src/amd/common/ac_shader_info.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/amd/common/ac_shader_info.c b/src/amd/common/ac_shader_info.c
index 01949770d68..87744ed23e1 100644
--- a/src/amd/common/ac_shader_info.c
+++ b/src/amd/common/ac_shader_info.c
@@ -45,11 +45,16 @@ gather_intrinsic_info(nir_intrinsic_instr *instr, struct ac_shader_info *info)
case nir_intrinsic_load_num_work_groups:
info->cs.uses_grid_size = true;
break;
+ case nir_intrinsic_load_local_invocation_id:
case nir_intrinsic_load_work_group_id: {
unsigned mask = nir_ssa_def_components_read(&instr->dest.ssa);
while (mask) {
unsigned i = u_bit_scan(&mask);
- info->cs.uses_block_id[i] = true;
+
+ if (instr->intrinsic == nir_intrinsic_load_work_group_id)
+ info->cs.uses_block_id[i] = true;
+ else
+ info->cs.uses_thread_id[i] = true;
}
break;
}