intel/nir: Lower load_num_work_groups to 32-bit if needed
For OpenCL-style kernels, this builtin is 64-bit. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6570>
This commit is contained in:
parent
5799da47c7
commit
fe18a0fd45
|
@ -3759,6 +3759,7 @@ fs_visitor::nir_emit_cs_intrinsic(const fs_builder &bld,
|
|||
}
|
||||
|
||||
case nir_intrinsic_load_num_work_groups: {
|
||||
assert(nir_dest_bit_size(instr->dest) == 32);
|
||||
const unsigned surface =
|
||||
cs_prog_data->binding_table.work_groups_start;
|
||||
|
||||
|
|
|
@ -55,6 +55,7 @@ lower_cs_intrinsics_convert_block(struct lower_intrinsics_state *state,
|
|||
switch (intrinsic->intrinsic) {
|
||||
case nir_intrinsic_load_local_group_size:
|
||||
case nir_intrinsic_load_work_group_id:
|
||||
case nir_intrinsic_load_num_work_groups:
|
||||
/* Convert this to 32-bit if it's not */
|
||||
if (intrinsic->dest.ssa.bit_size == 64) {
|
||||
intrinsic->dest.ssa.bit_size = 32;
|
||||
|
|
Loading…
Reference in New Issue