mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 20:18:12 +02:00
kk: Add type inference for additional built-in intrinsics.
Fixes dEQP-VK.api.copy_and_blit.core.use_after_copy.*_msaa These tests set both a varying and gl_Layer to gl_InstanceID. Without proper type inference for gl_InstanceID, it would end up stored in a float temporary, then bit-cast back to uint when stored into the gl_Layer, resulting in an invalid destination when outputting to layer 1. Reviewed-by: Aitor Camacho <aitor@lunarg.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41177>
This commit is contained in:
parent
5bfbb7b1a7
commit
cc23376ff5
1 changed files with 7 additions and 0 deletions
|
|
@ -347,10 +347,17 @@ infer_types_from_intrinsic(struct hash_table *types, nir_intrinsic_instr *instr)
|
|||
set_type(types, &instr->src[0], TYPE_UINT);
|
||||
set_type(types, &instr->src[1], TYPE_UINT);
|
||||
break;
|
||||
case nir_intrinsic_load_first_vertex:
|
||||
case nir_intrinsic_load_base_instance:
|
||||
case nir_intrinsic_load_vertex_id:
|
||||
case nir_intrinsic_load_instance_id:
|
||||
case nir_intrinsic_load_primitive_id:
|
||||
case nir_intrinsic_load_layer_id:
|
||||
case nir_intrinsic_load_workgroup_id:
|
||||
case nir_intrinsic_load_subgroup_id:
|
||||
case nir_intrinsic_load_local_invocation_id:
|
||||
case nir_intrinsic_load_global_invocation_id:
|
||||
case nir_intrinsic_load_local_invocation_index:
|
||||
case nir_intrinsic_load_num_workgroups:
|
||||
case nir_intrinsic_load_num_subgroups:
|
||||
case nir_intrinsic_load_subgroup_size:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue