gallivm: Fix handling of nir_intrinsic_scoped_barrier

A scoped barrier only has a control barrier behavior if there's
an execution scope.

Fixes: 13d900de0d ("llvmpipe: set nir_shader_compiler_options::use_scoped_barrier")
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3339>
This commit is contained in:
Caio Oliveira 2023-02-26 20:59:05 -08:00 committed by Marge Bot
parent e411e0afd3
commit 2178a8da51

View file

@ -2123,9 +2123,12 @@ visit_intrinsic(struct lp_build_nir_context *bld_base,
visit_shared_atomic(bld_base, instr, result);
break;
case nir_intrinsic_control_barrier:
case nir_intrinsic_scoped_barrier:
visit_barrier(bld_base);
break;
case nir_intrinsic_scoped_barrier:
if (nir_intrinsic_execution_scope(instr) != NIR_SCOPE_NONE)
visit_barrier(bld_base);
break;
case nir_intrinsic_group_memory_barrier:
case nir_intrinsic_memory_barrier:
case nir_intrinsic_memory_barrier_shared: