amd/common: scan which components of gl_WorkGroupID are used
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
This commit is contained in:
parent
5a761167f5
commit
42285ed8c3
|
@ -45,6 +45,14 @@ 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_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;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case nir_intrinsic_load_sample_id:
|
||||
info->ps.force_persample = true;
|
||||
break;
|
||||
|
|
|
@ -43,6 +43,7 @@ struct ac_shader_info {
|
|||
} ps;
|
||||
struct {
|
||||
bool uses_grid_size;
|
||||
bool uses_block_id[3];
|
||||
} cs;
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue