nir,spirv: allow non-uniform OpArrayLength
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Daniel Schürmann <daniel@schuermann.dev> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7969>
This commit is contained in:
@@ -248,6 +248,11 @@ visit_intrinsic(nir_shader *shader, nir_intrinsic_instr *instr)
|
||||
instr->src[1].ssa->divergent;
|
||||
break;
|
||||
|
||||
case nir_intrinsic_get_ssbo_size:
|
||||
case nir_intrinsic_deref_buffer_array_length:
|
||||
is_divergent = instr->src[0].ssa->divergent && (nir_intrinsic_access(instr) & ACCESS_NON_UNIFORM);
|
||||
break;
|
||||
|
||||
case nir_intrinsic_image_load:
|
||||
case nir_intrinsic_image_deref_load:
|
||||
case nir_intrinsic_bindless_image_load:
|
||||
@@ -282,12 +287,10 @@ visit_intrinsic(nir_shader *shader, nir_intrinsic_instr *instr)
|
||||
case nir_intrinsic_image_samples:
|
||||
case nir_intrinsic_image_deref_samples:
|
||||
case nir_intrinsic_bindless_image_samples:
|
||||
case nir_intrinsic_get_ssbo_size:
|
||||
case nir_intrinsic_image_size:
|
||||
case nir_intrinsic_image_deref_size:
|
||||
case nir_intrinsic_bindless_image_size:
|
||||
case nir_intrinsic_copy_deref:
|
||||
case nir_intrinsic_deref_buffer_array_length:
|
||||
case nir_intrinsic_vulkan_resource_index:
|
||||
case nir_intrinsic_vulkan_resource_reindex:
|
||||
case nir_intrinsic_load_vulkan_descriptor:
|
||||
|
Reference in New Issue
Block a user