nir/divergence: make smem load_global_amd uniform
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37101>
This commit is contained in:
@@ -651,6 +651,12 @@ visit_intrinsic(nir_intrinsic_instr *instr, struct divergence_state *state)
|
||||
is_divergent = src_divergent(instr->src[0], state);
|
||||
break;
|
||||
|
||||
case nir_intrinsic_load_global_amd:
|
||||
is_divergent = (src_divergent(instr->src[0], state) ||
|
||||
src_divergent(instr->src[1], state)) &&
|
||||
!(nir_intrinsic_access(instr) & ACCESS_SMEM_AMD);
|
||||
break;
|
||||
|
||||
/* Intrinsics with divergence depending on sources */
|
||||
case nir_intrinsic_convert_alu_types:
|
||||
case nir_intrinsic_ddx:
|
||||
@@ -678,7 +684,6 @@ visit_intrinsic(nir_intrinsic_instr *instr, struct divergence_state *state)
|
||||
case nir_intrinsic_quad_vote_all:
|
||||
case nir_intrinsic_load_shared2_amd:
|
||||
case nir_intrinsic_load_global_constant:
|
||||
case nir_intrinsic_load_global_amd:
|
||||
case nir_intrinsic_load_uniform:
|
||||
case nir_intrinsic_load_constant:
|
||||
case nir_intrinsic_load_sample_pos_from_id:
|
||||
|
||||
Reference in New Issue
Block a user