nir/lower_amul: Handle load/store_global

These need more than 24b.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12732>
This commit is contained in:
Rob Clark 2021-08-29 09:28:06 -07:00 committed by Marge Bot
parent c1e668d5d1
commit 5800fde1bb

View file

@ -175,9 +175,15 @@ lower_intrinsic(lower_state *state, nir_intrinsic_instr *intr)
case nir_intrinsic_global_atomic_fmin:
case nir_intrinsic_global_atomic_fmax:
case nir_intrinsic_global_atomic_fcomp_swap:
case nir_intrinsic_load_global_constant:
case nir_intrinsic_load_global:
/* just assume we that 24b is not sufficient: */
return lower_large_src(&intr->src[0], state);
case nir_intrinsic_store_global:
/* just assume we that 24b is not sufficient: */
return lower_large_src(&intr->src[1], state);
/* These should all be small enough to unconditionally use imul24: */
case nir_intrinsic_shared_atomic_add:
case nir_intrinsic_shared_atomic_imin: