mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-03 13:40:11 +01:00
spirv: Don't use libclc for wait_group_events
v2: Drop old code (Karol) Signed-off-by: Karol Herbst <kherbst@redhat.com> Reviewed-by: Karol Herbst <kherbst@redhat.com> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18675>
This commit is contained in:
parent
093b19b09a
commit
0a06abbb91
1 changed files with 10 additions and 3 deletions
|
|
@ -603,9 +603,16 @@ handle_core(struct vtn_builder *b, uint32_t opcode,
|
|||
break;
|
||||
}
|
||||
case SpvOpGroupWaitEvents: {
|
||||
src_types[0] = get_vtn_type_for_glsl_type(b, glsl_int_type());
|
||||
if (!call_mangled_function(b, "wait_group_events", 0, num_srcs, src_types, dest_type, srcs, &ret_deref))
|
||||
return NULL;
|
||||
/* libclc and clang don't agree on the mangling of this function.
|
||||
* The libclc we have uses a __local pointer but clang gives us generic
|
||||
* pointers. Fortunately, the whole function is just a barrier.
|
||||
*/
|
||||
nir_scoped_barrier(&b->nb, .execution_scope = NIR_SCOPE_WORKGROUP,
|
||||
.memory_scope = NIR_SCOPE_WORKGROUP,
|
||||
.memory_semantics = NIR_MEMORY_ACQUIRE |
|
||||
NIR_MEMORY_RELEASE,
|
||||
.memory_modes = nir_var_mem_shared |
|
||||
nir_var_mem_global);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue