From c479f93372e8b40feb21e0f5da9aab86200c2be1 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Wed, 10 May 2023 17:55:56 +0200 Subject: [PATCH] vulkan: Add a static assert We don't want to make the push constants larger than what the spec guarantees. And that is 128 bytes, see value for maxPushConstantsSize in table 55 of https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html#limits-minmax --- gsk/vulkan/gskvulkanpushconstants.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gsk/vulkan/gskvulkanpushconstants.c b/gsk/vulkan/gskvulkanpushconstants.c index 36ba9852a6..0bf5ca71b0 100644 --- a/gsk/vulkan/gskvulkanpushconstants.c +++ b/gsk/vulkan/gskvulkanpushconstants.c @@ -15,6 +15,12 @@ struct _GskVulkanPushConstantsWire } common; }; +/* This is the value we know every conformant GPU must provide. + * See value for maxPushConstantsSize in table 55 of + * https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html#limits-minmax + */ +G_STATIC_ASSERT (sizeof (GskVulkanPushConstantsWire) <= 128); + void gsk_vulkan_push_constants_init (GskVulkanPushConstants *constants, const graphene_matrix_t *mvp, -- 2.30.2