nir/vtn: Add handling for SPIR-V event variables

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6035>
This commit is contained in:
Jesse Natalie
2020-08-18 06:41:18 -07:00
committed by Marge Bot
parent c9a6b94f9e
commit 938be4d6fa
2 changed files with 8 additions and 0 deletions

View File

@@ -732,6 +732,7 @@ vtn_types_compatible(struct vtn_builder *b,
case vtn_base_type_image:
case vtn_base_type_sampler:
case vtn_base_type_sampled_image:
case vtn_base_type_event:
return t1->type == t2->type;
case vtn_base_type_array:
@@ -787,6 +788,7 @@ vtn_type_copy(struct vtn_builder *b, struct vtn_type *src)
case vtn_base_type_image:
case vtn_base_type_sampler:
case vtn_base_type_sampled_image:
case vtn_base_type_event:
/* Nothing more to do */
break;
@@ -1707,6 +1709,10 @@ vtn_handle_type(struct vtn_builder *b, SpvOp opcode,
break;
case SpvOpTypeEvent:
val->type->base_type = vtn_base_type_event;
val->type->type = glsl_int_type();
break;
case SpvOpTypeDeviceEvent:
case SpvOpTypeReserveId:
case SpvOpTypeQueue:
@@ -1756,6 +1762,7 @@ vtn_null_constant(struct vtn_builder *b, struct vtn_type *type)
case vtn_base_type_sampler:
case vtn_base_type_sampled_image:
case vtn_base_type_function:
case vtn_base_type_event:
/* For those we have to return something but it doesn't matter what. */
break;

View File

@@ -324,6 +324,7 @@ enum vtn_base_type {
vtn_base_type_sampler,
vtn_base_type_sampled_image,
vtn_base_type_function,
vtn_base_type_event,
};
struct vtn_type {