spirv: Don't accept CPacked decoration on struct members
CPacked decoration is only allowed on struct definitions, not struct members. Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by: Karol Herbst <kherbst@redhat.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Jesse Natalie <jenatali@microsoft.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6472>
This commit is contained in:

committed by
Marge Bot

parent
bcfeead5f3
commit
938d6ceb83
@@ -1041,6 +1041,7 @@ struct_member_decoration_cb(struct vtn_builder *b,
|
||||
case SpvDecorationLinkageAttributes:
|
||||
case SpvDecorationNoContraction:
|
||||
case SpvDecorationInputAttachmentIndex:
|
||||
case SpvDecorationCPacked:
|
||||
vtn_warn("Decoration not allowed on struct members: %s",
|
||||
spirv_decoration_to_string(dec->decoration));
|
||||
break;
|
||||
@@ -1050,14 +1051,6 @@ struct_member_decoration_cb(struct vtn_builder *b,
|
||||
/* This is handled later by var_decoration_cb in vtn_variables.c */
|
||||
break;
|
||||
|
||||
case SpvDecorationCPacked:
|
||||
if (b->shader->info.stage != MESA_SHADER_KERNEL)
|
||||
vtn_warn("Decoration only allowed for CL-style kernels: %s",
|
||||
spirv_decoration_to_string(dec->decoration));
|
||||
else
|
||||
ctx->type->packed = true;
|
||||
break;
|
||||
|
||||
case SpvDecorationSaturatedConversion:
|
||||
case SpvDecorationFuncParamAttr:
|
||||
case SpvDecorationFPRoundingMode:
|
||||
|
Reference in New Issue
Block a user