mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-20 09:50:37 +01:00
venus: sync protocol for v1.4.307 release and update promoted entries
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33567>
This commit is contained in:
parent
ae2830e520
commit
207c9ec65a
17 changed files with 5955 additions and 848 deletions
|
|
@ -1,4 +1,4 @@
|
|||
/* This file is generated by venus-protocol git-f770d7df. */
|
||||
/* This file is generated by venus-protocol git-de61e4ea. */
|
||||
|
||||
/*
|
||||
* Copyright 2020 Google LLC
|
||||
|
|
|
|||
|
|
@ -127,13 +127,13 @@ vn_sizeof_VkBufferCreateInfo_pnext(const void *val)
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(471 /* VK_KHR_maintenance5 */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkBufferCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkBufferUsageFlags2CreateInfoKHR_self((const VkBufferUsageFlags2CreateInfoKHR *)pnext);
|
||||
size += vn_sizeof_VkBufferUsageFlags2CreateInfo_self((const VkBufferUsageFlags2CreateInfo *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
|
|
@ -195,13 +195,13 @@ vn_encode_VkBufferCreateInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(471 /* VK_KHR_maintenance5 */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkBufferCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkBufferUsageFlags2CreateInfoKHR_self(enc, (const VkBufferUsageFlags2CreateInfoKHR *)pnext);
|
||||
vn_encode_VkBufferUsageFlags2CreateInfo_self(enc, (const VkBufferUsageFlags2CreateInfo *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
|
|
@ -332,6 +332,14 @@ vn_sizeof_VkBindBufferMemoryInfo_pnext(const void *val)
|
|||
size += vn_sizeof_VkBindBufferMemoryInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkBindBufferMemoryDeviceGroupInfo_self((const VkBindBufferMemoryDeviceGroupInfo *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_BIND_MEMORY_STATUS:
|
||||
if (!vn_cs_renderer_protocol_has_extension(546 /* VK_KHR_maintenance6 */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkBindBufferMemoryInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkBindMemoryStatus_self((const VkBindMemoryStatus *)pnext);
|
||||
return size;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
break;
|
||||
|
|
@ -378,6 +386,14 @@ vn_encode_VkBindBufferMemoryInfo_pnext(struct vn_cs_encoder *enc, const void *va
|
|||
vn_encode_VkBindBufferMemoryInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkBindBufferMemoryDeviceGroupInfo_self(enc, (const VkBindBufferMemoryDeviceGroupInfo *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_BIND_MEMORY_STATUS:
|
||||
if (!vn_cs_renderer_protocol_has_extension(546 /* VK_KHR_maintenance6 */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkBindBufferMemoryInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkBindMemoryStatus_self(enc, (const VkBindMemoryStatus *)pnext);
|
||||
return;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -21,13 +21,13 @@ vn_sizeof_VkBufferViewCreateInfo_pnext(const void *val)
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(471 /* VK_KHR_maintenance5 */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkBufferViewCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkBufferUsageFlags2CreateInfoKHR_self((const VkBufferUsageFlags2CreateInfoKHR *)pnext);
|
||||
size += vn_sizeof_VkBufferUsageFlags2CreateInfo_self((const VkBufferUsageFlags2CreateInfo *)pnext);
|
||||
return size;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
|
|
@ -71,13 +71,13 @@ vn_encode_VkBufferViewCreateInfo_pnext(struct vn_cs_encoder *enc, const void *va
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(471 /* VK_KHR_maintenance5 */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkBufferViewCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkBufferUsageFlags2CreateInfoKHR_self(enc, (const VkBufferUsageFlags2CreateInfoKHR *)pnext);
|
||||
vn_encode_VkBufferUsageFlags2CreateInfo_self(enc, (const VkBufferUsageFlags2CreateInfo *)pnext);
|
||||
return;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -319,6 +319,46 @@ typedef enum VkCommandTypeEXT {
|
|||
VK_COMMAND_TYPE_vkGetDeviceImageMemoryRequirementsKHR_EXT = 231,
|
||||
VK_COMMAND_TYPE_vkGetDeviceImageSparseMemoryRequirements_EXT = 232,
|
||||
VK_COMMAND_TYPE_vkGetDeviceImageSparseMemoryRequirementsKHR_EXT = 232,
|
||||
VK_COMMAND_TYPE_vkCmdSetLineStipple_EXT = 237,
|
||||
VK_COMMAND_TYPE_vkCmdSetLineStippleKHR_EXT = 237,
|
||||
VK_COMMAND_TYPE_vkCmdSetLineStippleEXT_EXT = 237,
|
||||
VK_COMMAND_TYPE_vkMapMemory2_EXT = 285,
|
||||
VK_COMMAND_TYPE_vkMapMemory2KHR_EXT = 285,
|
||||
VK_COMMAND_TYPE_vkUnmapMemory2_EXT = 286,
|
||||
VK_COMMAND_TYPE_vkUnmapMemory2KHR_EXT = 286,
|
||||
VK_COMMAND_TYPE_vkCmdBindIndexBuffer2_EXT = 279,
|
||||
VK_COMMAND_TYPE_vkCmdBindIndexBuffer2KHR_EXT = 279,
|
||||
VK_COMMAND_TYPE_vkGetRenderingAreaGranularity_EXT = 280,
|
||||
VK_COMMAND_TYPE_vkGetRenderingAreaGranularityKHR_EXT = 280,
|
||||
VK_COMMAND_TYPE_vkGetDeviceImageSubresourceLayout_EXT = 281,
|
||||
VK_COMMAND_TYPE_vkGetDeviceImageSubresourceLayoutKHR_EXT = 281,
|
||||
VK_COMMAND_TYPE_vkGetImageSubresourceLayout2_EXT = 282,
|
||||
VK_COMMAND_TYPE_vkGetImageSubresourceLayout2KHR_EXT = 282,
|
||||
VK_COMMAND_TYPE_vkGetImageSubresourceLayout2EXT_EXT = 282,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSet_EXT = 249,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSetKHR_EXT = 249,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSetWithTemplate_EXT = 250,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSetWithTemplateKHR_EXT = 250,
|
||||
VK_COMMAND_TYPE_vkCmdSetRenderingAttachmentLocations_EXT = 287,
|
||||
VK_COMMAND_TYPE_vkCmdSetRenderingAttachmentLocationsKHR_EXT = 287,
|
||||
VK_COMMAND_TYPE_vkCmdSetRenderingInputAttachmentIndices_EXT = 288,
|
||||
VK_COMMAND_TYPE_vkCmdSetRenderingInputAttachmentIndicesKHR_EXT = 288,
|
||||
VK_COMMAND_TYPE_vkCmdBindDescriptorSets2_EXT = 289,
|
||||
VK_COMMAND_TYPE_vkCmdBindDescriptorSets2KHR_EXT = 289,
|
||||
VK_COMMAND_TYPE_vkCmdPushConstants2_EXT = 290,
|
||||
VK_COMMAND_TYPE_vkCmdPushConstants2KHR_EXT = 290,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSet2_EXT = 291,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSet2KHR_EXT = 291,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSetWithTemplate2_EXT = 292,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSetWithTemplate2KHR_EXT = 292,
|
||||
VK_COMMAND_TYPE_vkCopyMemoryToImage_EXT = 293,
|
||||
VK_COMMAND_TYPE_vkCopyMemoryToImageEXT_EXT = 293,
|
||||
VK_COMMAND_TYPE_vkCopyImageToMemory_EXT = 294,
|
||||
VK_COMMAND_TYPE_vkCopyImageToMemoryEXT_EXT = 294,
|
||||
VK_COMMAND_TYPE_vkCopyImageToImage_EXT = 295,
|
||||
VK_COMMAND_TYPE_vkCopyImageToImageEXT_EXT = 295,
|
||||
VK_COMMAND_TYPE_vkTransitionImageLayout_EXT = 296,
|
||||
VK_COMMAND_TYPE_vkTransitionImageLayoutEXT_EXT = 296,
|
||||
VK_COMMAND_TYPE_vkCmdBindTransformFeedbackBuffersEXT_EXT = 181,
|
||||
VK_COMMAND_TYPE_vkCmdBeginTransformFeedbackEXT_EXT = 182,
|
||||
VK_COMMAND_TYPE_vkCmdEndTransformFeedbackEXT_EXT = 183,
|
||||
|
|
@ -329,8 +369,6 @@ typedef enum VkCommandTypeEXT {
|
|||
VK_COMMAND_TYPE_vkGetMemoryFdPropertiesKHR_EXT = 194,
|
||||
VK_COMMAND_TYPE_vkImportSemaphoreFdKHR_EXT = 242,
|
||||
VK_COMMAND_TYPE_vkGetSemaphoreFdKHR_EXT = 243,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSetKHR_EXT = 249,
|
||||
VK_COMMAND_TYPE_vkCmdPushDescriptorSetWithTemplateKHR_EXT = 250,
|
||||
VK_COMMAND_TYPE_vkCmdBeginConditionalRenderingEXT_EXT = 240,
|
||||
VK_COMMAND_TYPE_vkCmdEndConditionalRenderingEXT_EXT = 241,
|
||||
VK_COMMAND_TYPE_vkImportFenceFdKHR_EXT = 238,
|
||||
|
|
@ -344,8 +382,6 @@ typedef enum VkCommandTypeEXT {
|
|||
VK_COMMAND_TYPE_vkGetCalibratedTimestampsEXT_EXT = 236,
|
||||
VK_COMMAND_TYPE_vkGetPhysicalDeviceFragmentShadingRatesKHR_EXT = 277,
|
||||
VK_COMMAND_TYPE_vkCmdSetFragmentShadingRateKHR_EXT = 278,
|
||||
VK_COMMAND_TYPE_vkCmdSetLineStippleKHR_EXT = 237,
|
||||
VK_COMMAND_TYPE_vkCmdSetLineStippleEXT_EXT = 237,
|
||||
VK_COMMAND_TYPE_vkCmdSetVertexInputEXT_EXT = 255,
|
||||
VK_COMMAND_TYPE_vkCmdSetPatchControlPointsEXT_EXT = 233,
|
||||
VK_COMMAND_TYPE_vkCmdSetLogicOpEXT_EXT = 234,
|
||||
|
|
@ -373,11 +409,6 @@ typedef enum VkCommandTypeEXT {
|
|||
VK_COMMAND_TYPE_vkCmdSetLineRasterizationModeEXT_EXT = 274,
|
||||
VK_COMMAND_TYPE_vkCmdSetLineStippleEnableEXT_EXT = 275,
|
||||
VK_COMMAND_TYPE_vkCmdSetDepthClipNegativeOneToOneEXT_EXT = 276,
|
||||
VK_COMMAND_TYPE_vkCmdBindIndexBuffer2KHR_EXT = 279,
|
||||
VK_COMMAND_TYPE_vkGetRenderingAreaGranularityKHR_EXT = 280,
|
||||
VK_COMMAND_TYPE_vkGetDeviceImageSubresourceLayoutKHR_EXT = 281,
|
||||
VK_COMMAND_TYPE_vkGetImageSubresourceLayout2KHR_EXT = 282,
|
||||
VK_COMMAND_TYPE_vkGetImageSubresourceLayout2EXT_EXT = 282,
|
||||
VK_COMMAND_TYPE_vkSetReplyCommandStreamMESA_EXT = 178,
|
||||
VK_COMMAND_TYPE_vkSeekReplyCommandStreamMESA_EXT = 179,
|
||||
VK_COMMAND_TYPE_vkExecuteCommandStreamsMESA_EXT = 180,
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -18,6 +18,7 @@
|
|||
* vkMapMemory
|
||||
* vkGetMemoryFdKHR
|
||||
* vkGetMemoryFdPropertiesKHR
|
||||
* vkMapMemory2
|
||||
*/
|
||||
|
||||
/* struct VkExportMemoryAllocateInfo chain */
|
||||
|
|
@ -537,6 +538,61 @@ vn_encode_VkDeviceMemoryOpaqueCaptureAddressInfo(struct vn_cs_encoder *enc, cons
|
|||
vn_encode_VkDeviceMemoryOpaqueCaptureAddressInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkMemoryUnmapInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkMemoryUnmapInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkMemoryUnmapInfo_self(const VkMemoryUnmapInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
size += vn_sizeof_VkFlags(&val->flags);
|
||||
size += vn_sizeof_VkDeviceMemory(&val->memory);
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkMemoryUnmapInfo(const VkMemoryUnmapInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkMemoryUnmapInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkMemoryUnmapInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkMemoryUnmapInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkMemoryUnmapInfo_self(struct vn_cs_encoder *enc, const VkMemoryUnmapInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_VkFlags(enc, &val->flags);
|
||||
vn_encode_VkDeviceMemory(enc, &val->memory);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkMemoryUnmapInfo(struct vn_cs_encoder *enc, const VkMemoryUnmapInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_MEMORY_UNMAP_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_MEMORY_UNMAP_INFO });
|
||||
vn_encode_VkMemoryUnmapInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkMemoryUnmapInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkMemoryResourceAllocationSizePropertiesMESA chain */
|
||||
|
||||
static inline size_t
|
||||
|
|
@ -1231,6 +1287,59 @@ static inline uint64_t vn_decode_vkGetDeviceMemoryOpaqueCaptureAddress_reply(str
|
|||
return ret;
|
||||
}
|
||||
|
||||
static inline size_t vn_sizeof_vkUnmapMemory2(VkDevice device, const VkMemoryUnmapInfo* pMemoryUnmapInfo)
|
||||
{
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkUnmapMemory2_EXT;
|
||||
const VkFlags cmd_flags = 0;
|
||||
size_t cmd_size = vn_sizeof_VkCommandTypeEXT(&cmd_type) + vn_sizeof_VkFlags(&cmd_flags);
|
||||
|
||||
cmd_size += vn_sizeof_VkDevice(&device);
|
||||
cmd_size += vn_sizeof_simple_pointer(pMemoryUnmapInfo);
|
||||
if (pMemoryUnmapInfo)
|
||||
cmd_size += vn_sizeof_VkMemoryUnmapInfo(pMemoryUnmapInfo);
|
||||
|
||||
return cmd_size;
|
||||
}
|
||||
|
||||
static inline void vn_encode_vkUnmapMemory2(struct vn_cs_encoder *enc, VkCommandFlagsEXT cmd_flags, VkDevice device, const VkMemoryUnmapInfo* pMemoryUnmapInfo)
|
||||
{
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkUnmapMemory2_EXT;
|
||||
|
||||
vn_encode_VkCommandTypeEXT(enc, &cmd_type);
|
||||
vn_encode_VkFlags(enc, &cmd_flags);
|
||||
|
||||
vn_encode_VkDevice(enc, &device);
|
||||
if (vn_encode_simple_pointer(enc, pMemoryUnmapInfo))
|
||||
vn_encode_VkMemoryUnmapInfo(enc, pMemoryUnmapInfo);
|
||||
}
|
||||
|
||||
static inline size_t vn_sizeof_vkUnmapMemory2_reply(VkDevice device, const VkMemoryUnmapInfo* pMemoryUnmapInfo)
|
||||
{
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkUnmapMemory2_EXT;
|
||||
size_t cmd_size = vn_sizeof_VkCommandTypeEXT(&cmd_type);
|
||||
|
||||
VkResult ret;
|
||||
cmd_size += vn_sizeof_VkResult(&ret);
|
||||
/* skip device */
|
||||
/* skip pMemoryUnmapInfo */
|
||||
|
||||
return cmd_size;
|
||||
}
|
||||
|
||||
static inline VkResult vn_decode_vkUnmapMemory2_reply(struct vn_cs_decoder *dec, VkDevice device, const VkMemoryUnmapInfo* pMemoryUnmapInfo)
|
||||
{
|
||||
VkCommandTypeEXT command_type;
|
||||
vn_decode_VkCommandTypeEXT(dec, &command_type);
|
||||
assert(command_type == VK_COMMAND_TYPE_vkUnmapMemory2_EXT);
|
||||
|
||||
VkResult ret;
|
||||
vn_decode_VkResult(dec, &ret);
|
||||
/* skip device */
|
||||
/* skip pMemoryUnmapInfo */
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static inline size_t vn_sizeof_vkGetMemoryResourcePropertiesMESA(VkDevice device, uint32_t resourceId, VkMemoryResourcePropertiesMESA* pMemoryResourceProperties)
|
||||
{
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkGetMemoryResourcePropertiesMESA_EXT;
|
||||
|
|
@ -1441,6 +1550,27 @@ static inline void vn_submit_vkGetDeviceMemoryOpaqueCaptureAddress(struct vn_rin
|
|||
}
|
||||
}
|
||||
|
||||
static inline void vn_submit_vkUnmapMemory2(struct vn_ring *vn_ring, VkCommandFlagsEXT cmd_flags, VkDevice device, const VkMemoryUnmapInfo* pMemoryUnmapInfo, struct vn_ring_submit_command *submit)
|
||||
{
|
||||
uint8_t local_cmd_data[VN_SUBMIT_LOCAL_CMD_SIZE];
|
||||
void *cmd_data = local_cmd_data;
|
||||
size_t cmd_size = vn_sizeof_vkUnmapMemory2(device, pMemoryUnmapInfo);
|
||||
if (cmd_size > sizeof(local_cmd_data)) {
|
||||
cmd_data = malloc(cmd_size);
|
||||
if (!cmd_data)
|
||||
cmd_size = 0;
|
||||
}
|
||||
const size_t reply_size = cmd_flags & VK_COMMAND_GENERATE_REPLY_BIT_EXT ? vn_sizeof_vkUnmapMemory2_reply(device, pMemoryUnmapInfo) : 0;
|
||||
|
||||
struct vn_cs_encoder *enc = vn_ring_submit_command_init(vn_ring, submit, cmd_data, cmd_size, reply_size);
|
||||
if (cmd_size) {
|
||||
vn_encode_vkUnmapMemory2(enc, cmd_flags, device, pMemoryUnmapInfo);
|
||||
vn_ring_submit_command(vn_ring, submit);
|
||||
if (cmd_data != local_cmd_data)
|
||||
free(cmd_data);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void vn_submit_vkGetMemoryResourcePropertiesMESA(struct vn_ring *vn_ring, VkCommandFlagsEXT cmd_flags, VkDevice device, uint32_t resourceId, VkMemoryResourcePropertiesMESA* pMemoryResourceProperties, struct vn_ring_submit_command *submit)
|
||||
{
|
||||
uint8_t local_cmd_data[VN_SUBMIT_LOCAL_CMD_SIZE];
|
||||
|
|
@ -1607,6 +1737,28 @@ static inline void vn_async_vkGetDeviceMemoryOpaqueCaptureAddress(struct vn_ring
|
|||
vn_submit_vkGetDeviceMemoryOpaqueCaptureAddress(vn_ring, 0, device, pInfo, &submit);
|
||||
}
|
||||
|
||||
static inline VkResult vn_call_vkUnmapMemory2(struct vn_ring *vn_ring, VkDevice device, const VkMemoryUnmapInfo* pMemoryUnmapInfo)
|
||||
{
|
||||
VN_TRACE_FUNC();
|
||||
|
||||
struct vn_ring_submit_command submit;
|
||||
vn_submit_vkUnmapMemory2(vn_ring, VK_COMMAND_GENERATE_REPLY_BIT_EXT, device, pMemoryUnmapInfo, &submit);
|
||||
struct vn_cs_decoder *dec = vn_ring_get_command_reply(vn_ring, &submit);
|
||||
if (dec) {
|
||||
const VkResult ret = vn_decode_vkUnmapMemory2_reply(dec, device, pMemoryUnmapInfo);
|
||||
vn_ring_free_command_reply(vn_ring, &submit);
|
||||
return ret;
|
||||
} else {
|
||||
return VK_ERROR_OUT_OF_HOST_MEMORY;
|
||||
}
|
||||
}
|
||||
|
||||
static inline void vn_async_vkUnmapMemory2(struct vn_ring *vn_ring, VkDevice device, const VkMemoryUnmapInfo* pMemoryUnmapInfo)
|
||||
{
|
||||
struct vn_ring_submit_command submit;
|
||||
vn_submit_vkUnmapMemory2(vn_ring, 0, device, pMemoryUnmapInfo, &submit);
|
||||
}
|
||||
|
||||
static inline VkResult vn_call_vkGetMemoryResourcePropertiesMESA(struct vn_ring *vn_ring, VkDevice device, uint32_t resourceId, VkMemoryResourcePropertiesMESA* pMemoryResourceProperties)
|
||||
{
|
||||
VN_TRACE_FUNC();
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
#include "vn_protocol_driver_defines.h"
|
||||
|
||||
#define VN_INFO_EXTENSION_MAX_NUMBER (544)
|
||||
#define VN_INFO_EXTENSION_MAX_NUMBER (546)
|
||||
|
||||
struct vn_info_extension {
|
||||
const char *name;
|
||||
|
|
@ -19,8 +19,8 @@ struct vn_info_extension {
|
|||
};
|
||||
|
||||
/* sorted by extension names for bsearch */
|
||||
static const uint32_t _vn_info_extension_count = 125;
|
||||
static const struct vn_info_extension _vn_info_extensions[125] = {
|
||||
static const uint32_t _vn_info_extension_count = 137;
|
||||
static const struct vn_info_extension _vn_info_extensions[137] = {
|
||||
{ "VK_EXT_4444_formats", 341, 1 },
|
||||
{ "VK_EXT_attachment_feedback_loop_layout", 340, 2 },
|
||||
{ "VK_EXT_blend_operation_advanced", 149, 2 },
|
||||
|
|
@ -41,7 +41,10 @@ static const struct vn_info_extension _vn_info_extensions[125] = {
|
|||
{ "VK_EXT_external_memory_acquire_unmodified", 454, 1 },
|
||||
{ "VK_EXT_external_memory_dma_buf", 126, 1 },
|
||||
{ "VK_EXT_fragment_shader_interlock", 252, 1 },
|
||||
{ "VK_EXT_global_priority", 175, 2 },
|
||||
{ "VK_EXT_global_priority_query", 389, 1 },
|
||||
{ "VK_EXT_graphics_pipeline_library", 321, 1 },
|
||||
{ "VK_EXT_host_image_copy", 271, 1 },
|
||||
{ "VK_EXT_host_query_reset", 262, 1 },
|
||||
{ "VK_EXT_image_2d_view_of_3d", 394, 1 },
|
||||
{ "VK_EXT_image_drm_format_modifier", 159, 2 },
|
||||
|
|
@ -58,6 +61,8 @@ static const struct vn_info_extension _vn_info_extensions[125] = {
|
|||
{ "VK_EXT_pci_bus_info", 213, 2 },
|
||||
{ "VK_EXT_pipeline_creation_cache_control", 298, 3 },
|
||||
{ "VK_EXT_pipeline_creation_feedback", 193, 1 },
|
||||
{ "VK_EXT_pipeline_protected_access", 467, 1 },
|
||||
{ "VK_EXT_pipeline_robustness", 69, 1 },
|
||||
{ "VK_EXT_primitive_topology_list_restart", 357, 1 },
|
||||
{ "VK_EXT_primitives_generated_query", 383, 1 },
|
||||
{ "VK_EXT_private_data", 296, 1 },
|
||||
|
|
@ -96,6 +101,7 @@ static const struct vn_info_extension _vn_info_extensions[125] = {
|
|||
{ "VK_KHR_draw_indirect_count", 170, 1 },
|
||||
{ "VK_KHR_driver_properties", 197, 1 },
|
||||
{ "VK_KHR_dynamic_rendering", 45, 1 },
|
||||
{ "VK_KHR_dynamic_rendering_local_read", 233, 1 },
|
||||
{ "VK_KHR_external_fence", 114, 1 },
|
||||
{ "VK_KHR_external_fence_capabilities", 113, 1 },
|
||||
{ "VK_KHR_external_fence_fd", 116, 1 },
|
||||
|
|
@ -109,6 +115,7 @@ static const struct vn_info_extension _vn_info_extensions[125] = {
|
|||
{ "VK_KHR_fragment_shading_rate", 227, 2 },
|
||||
{ "VK_KHR_get_memory_requirements2", 147, 1 },
|
||||
{ "VK_KHR_get_physical_device_properties2", 60, 2 },
|
||||
{ "VK_KHR_global_priority", 189, 1 },
|
||||
{ "VK_KHR_image_format_list", 148, 1 },
|
||||
{ "VK_KHR_imageless_framebuffer", 109, 1 },
|
||||
{ "VK_KHR_index_type_uint8", 534, 1 },
|
||||
|
|
@ -119,6 +126,8 @@ static const struct vn_info_extension _vn_info_extensions[125] = {
|
|||
{ "VK_KHR_maintenance3", 169, 1 },
|
||||
{ "VK_KHR_maintenance4", 414, 2 },
|
||||
{ "VK_KHR_maintenance5", 471, 1 },
|
||||
{ "VK_KHR_maintenance6", 546, 1 },
|
||||
{ "VK_KHR_map_memory2", 272, 1 },
|
||||
{ "VK_KHR_multiview", 54, 1 },
|
||||
{ "VK_KHR_pipeline_library", 291, 1 },
|
||||
{ "VK_KHR_push_descriptor", 81, 2 },
|
||||
|
|
@ -129,11 +138,14 @@ static const struct vn_info_extension _vn_info_extensions[125] = {
|
|||
{ "VK_KHR_shader_atomic_int64", 181, 1 },
|
||||
{ "VK_KHR_shader_clock", 182, 1 },
|
||||
{ "VK_KHR_shader_draw_parameters", 64, 1 },
|
||||
{ "VK_KHR_shader_expect_assume", 545, 1 },
|
||||
{ "VK_KHR_shader_float16_int8", 83, 1 },
|
||||
{ "VK_KHR_shader_float_controls", 198, 4 },
|
||||
{ "VK_KHR_shader_float_controls2", 529, 1 },
|
||||
{ "VK_KHR_shader_integer_dot_product", 281, 1 },
|
||||
{ "VK_KHR_shader_non_semantic_info", 294, 1 },
|
||||
{ "VK_KHR_shader_subgroup_extended_types", 176, 1 },
|
||||
{ "VK_KHR_shader_subgroup_rotate", 417, 2 },
|
||||
{ "VK_KHR_shader_terminate_invocation", 216, 1 },
|
||||
{ "VK_KHR_spirv_1_4", 237, 1 },
|
||||
{ "VK_KHR_storage_buffer_storage_class", 132, 1 },
|
||||
|
|
@ -157,7 +169,7 @@ vn_info_wire_format_version(void)
|
|||
static inline uint32_t
|
||||
vn_info_vk_xml_version(void)
|
||||
{
|
||||
return VK_MAKE_API_VERSION(0, 1, 3, 302);
|
||||
return VK_MAKE_API_VERSION(0, 1, 4, 307);
|
||||
}
|
||||
|
||||
static inline int
|
||||
|
|
|
|||
|
|
@ -128,6 +128,65 @@ vn_encode_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(struct vn_cs_encod
|
|||
vn_encode_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkPipelineRobustnessCreateInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineRobustnessCreateInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineRobustnessCreateInfo_self(const VkPipelineRobustnessCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
size += vn_sizeof_VkPipelineRobustnessBufferBehavior(&val->storageBuffers);
|
||||
size += vn_sizeof_VkPipelineRobustnessBufferBehavior(&val->uniformBuffers);
|
||||
size += vn_sizeof_VkPipelineRobustnessBufferBehavior(&val->vertexInputs);
|
||||
size += vn_sizeof_VkPipelineRobustnessImageBehavior(&val->images);
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineRobustnessCreateInfo(const VkPipelineRobustnessCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkPipelineRobustnessCreateInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkPipelineRobustnessCreateInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineRobustnessCreateInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineRobustnessCreateInfo_self(struct vn_cs_encoder *enc, const VkPipelineRobustnessCreateInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_VkPipelineRobustnessBufferBehavior(enc, &val->storageBuffers);
|
||||
vn_encode_VkPipelineRobustnessBufferBehavior(enc, &val->uniformBuffers);
|
||||
vn_encode_VkPipelineRobustnessBufferBehavior(enc, &val->vertexInputs);
|
||||
vn_encode_VkPipelineRobustnessImageBehavior(enc, &val->images);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineRobustnessCreateInfo(struct vn_cs_encoder *enc, const VkPipelineRobustnessCreateInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO });
|
||||
vn_encode_VkPipelineRobustnessCreateInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkPipelineRobustnessCreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkPipelineShaderStageCreateInfo chain */
|
||||
|
||||
static inline size_t
|
||||
|
|
@ -152,6 +211,14 @@ vn_sizeof_VkPipelineShaderStageCreateInfo_pnext(const void *val)
|
|||
size += vn_sizeof_VkPipelineShaderStageCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo_self((const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(69 /* VK_EXT_pipeline_robustness */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkPipelineShaderStageCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineRobustnessCreateInfo_self((const VkPipelineRobustnessCreateInfo *)pnext);
|
||||
return size;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
break;
|
||||
|
|
@ -216,6 +283,14 @@ vn_encode_VkPipelineShaderStageCreateInfo_pnext(struct vn_cs_encoder *enc, const
|
|||
vn_encode_VkPipelineShaderStageCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo_self(enc, (const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(69 /* VK_EXT_pipeline_robustness */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkPipelineShaderStageCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineRobustnessCreateInfo_self(enc, (const VkPipelineRobustnessCreateInfo *)pnext);
|
||||
return;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
break;
|
||||
|
|
@ -295,10 +370,10 @@ vn_encode_VkVertexInputAttributeDescription(struct vn_cs_encoder *enc, const VkV
|
|||
vn_encode_uint32_t(enc, &val->offset);
|
||||
}
|
||||
|
||||
/* struct VkVertexInputBindingDivisorDescriptionKHR */
|
||||
/* struct VkVertexInputBindingDivisorDescription */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkVertexInputBindingDivisorDescriptionKHR(const VkVertexInputBindingDivisorDescriptionKHR *val)
|
||||
vn_sizeof_VkVertexInputBindingDivisorDescription(const VkVertexInputBindingDivisorDescription *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
size += vn_sizeof_uint32_t(&val->binding);
|
||||
|
|
@ -307,23 +382,23 @@ vn_sizeof_VkVertexInputBindingDivisorDescriptionKHR(const VkVertexInputBindingDi
|
|||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkVertexInputBindingDivisorDescriptionKHR(struct vn_cs_encoder *enc, const VkVertexInputBindingDivisorDescriptionKHR *val)
|
||||
vn_encode_VkVertexInputBindingDivisorDescription(struct vn_cs_encoder *enc, const VkVertexInputBindingDivisorDescription *val)
|
||||
{
|
||||
vn_encode_uint32_t(enc, &val->binding);
|
||||
vn_encode_uint32_t(enc, &val->divisor);
|
||||
}
|
||||
|
||||
/* struct VkPipelineVertexInputDivisorStateCreateInfoKHR chain */
|
||||
/* struct VkPipelineVertexInputDivisorStateCreateInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfoKHR_pnext(const void *val)
|
||||
vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfoKHR_self(const VkPipelineVertexInputDivisorStateCreateInfoKHR *val)
|
||||
vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfo_self(const VkPipelineVertexInputDivisorStateCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
|
|
@ -331,7 +406,7 @@ vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfoKHR_self(const VkPipelineVe
|
|||
if (val->pVertexBindingDivisors) {
|
||||
size += vn_sizeof_array_size(val->vertexBindingDivisorCount);
|
||||
for (uint32_t i = 0; i < val->vertexBindingDivisorCount; i++)
|
||||
size += vn_sizeof_VkVertexInputBindingDivisorDescriptionKHR(&val->pVertexBindingDivisors[i]);
|
||||
size += vn_sizeof_VkVertexInputBindingDivisorDescription(&val->pVertexBindingDivisors[i]);
|
||||
} else {
|
||||
size += vn_sizeof_array_size(0);
|
||||
}
|
||||
|
|
@ -339,45 +414,45 @@ vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfoKHR_self(const VkPipelineVe
|
|||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfoKHR(const VkPipelineVertexInputDivisorStateCreateInfoKHR *val)
|
||||
vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfo(const VkPipelineVertexInputDivisorStateCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfoKHR_pnext(val->pNext);
|
||||
size += vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfoKHR_self(val);
|
||||
size += vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfoKHR_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfoKHR_self(struct vn_cs_encoder *enc, const VkPipelineVertexInputDivisorStateCreateInfoKHR *val)
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfo_self(struct vn_cs_encoder *enc, const VkPipelineVertexInputDivisorStateCreateInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_uint32_t(enc, &val->vertexBindingDivisorCount);
|
||||
if (val->pVertexBindingDivisors) {
|
||||
vn_encode_array_size(enc, val->vertexBindingDivisorCount);
|
||||
for (uint32_t i = 0; i < val->vertexBindingDivisorCount; i++)
|
||||
vn_encode_VkVertexInputBindingDivisorDescriptionKHR(enc, &val->pVertexBindingDivisors[i]);
|
||||
vn_encode_VkVertexInputBindingDivisorDescription(enc, &val->pVertexBindingDivisors[i]);
|
||||
} else {
|
||||
vn_encode_array_size(enc, 0);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfoKHR(struct vn_cs_encoder *enc, const VkPipelineVertexInputDivisorStateCreateInfoKHR *val)
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfo(struct vn_cs_encoder *enc, const VkPipelineVertexInputDivisorStateCreateInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR });
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfoKHR_pnext(enc, val->pNext);
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfoKHR_self(enc, val);
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO });
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkPipelineVertexInputStateCreateInfo chain */
|
||||
|
|
@ -390,13 +465,13 @@ vn_sizeof_VkPipelineVertexInputStateCreateInfo_pnext(const void *val)
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(191 /* VK_EXT_vertex_attribute_divisor */) && !vn_cs_renderer_protocol_has_extension(526 /* VK_KHR_vertex_attribute_divisor */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkPipelineVertexInputStateCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfoKHR_self((const VkPipelineVertexInputDivisorStateCreateInfoKHR *)pnext);
|
||||
size += vn_sizeof_VkPipelineVertexInputDivisorStateCreateInfo_self((const VkPipelineVertexInputDivisorStateCreateInfo *)pnext);
|
||||
return size;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
|
|
@ -452,13 +527,13 @@ vn_encode_VkPipelineVertexInputStateCreateInfo_pnext(struct vn_cs_encoder *enc,
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(191 /* VK_EXT_vertex_attribute_divisor */) && !vn_cs_renderer_protocol_has_extension(526 /* VK_KHR_vertex_attribute_divisor */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkPipelineVertexInputStateCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfoKHR_self(enc, (const VkPipelineVertexInputDivisorStateCreateInfoKHR *)pnext);
|
||||
vn_encode_VkPipelineVertexInputDivisorStateCreateInfo_self(enc, (const VkPipelineVertexInputDivisorStateCreateInfo *)pnext);
|
||||
return;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
|
|
@ -1042,21 +1117,21 @@ vn_encode_VkPipelineRasterizationDepthClipStateCreateInfoEXT(struct vn_cs_encode
|
|||
vn_encode_VkPipelineRasterizationDepthClipStateCreateInfoEXT_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkPipelineRasterizationLineStateCreateInfoKHR chain */
|
||||
/* struct VkPipelineRasterizationLineStateCreateInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineRasterizationLineStateCreateInfoKHR_pnext(const void *val)
|
||||
vn_sizeof_VkPipelineRasterizationLineStateCreateInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineRasterizationLineStateCreateInfoKHR_self(const VkPipelineRasterizationLineStateCreateInfoKHR *val)
|
||||
vn_sizeof_VkPipelineRasterizationLineStateCreateInfo_self(const VkPipelineRasterizationLineStateCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
size += vn_sizeof_VkLineRasterizationModeKHR(&val->lineRasterizationMode);
|
||||
size += vn_sizeof_VkLineRasterizationMode(&val->lineRasterizationMode);
|
||||
size += vn_sizeof_VkBool32(&val->stippledLineEnable);
|
||||
size += vn_sizeof_uint32_t(&val->lineStippleFactor);
|
||||
size += vn_sizeof_uint16_t(&val->lineStipplePattern);
|
||||
|
|
@ -1064,41 +1139,41 @@ vn_sizeof_VkPipelineRasterizationLineStateCreateInfoKHR_self(const VkPipelineRas
|
|||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineRasterizationLineStateCreateInfoKHR(const VkPipelineRasterizationLineStateCreateInfoKHR *val)
|
||||
vn_sizeof_VkPipelineRasterizationLineStateCreateInfo(const VkPipelineRasterizationLineStateCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkPipelineRasterizationLineStateCreateInfoKHR_pnext(val->pNext);
|
||||
size += vn_sizeof_VkPipelineRasterizationLineStateCreateInfoKHR_self(val);
|
||||
size += vn_sizeof_VkPipelineRasterizationLineStateCreateInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkPipelineRasterizationLineStateCreateInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfoKHR_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfoKHR_self(struct vn_cs_encoder *enc, const VkPipelineRasterizationLineStateCreateInfoKHR *val)
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfo_self(struct vn_cs_encoder *enc, const VkPipelineRasterizationLineStateCreateInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_VkLineRasterizationModeKHR(enc, &val->lineRasterizationMode);
|
||||
vn_encode_VkLineRasterizationMode(enc, &val->lineRasterizationMode);
|
||||
vn_encode_VkBool32(enc, &val->stippledLineEnable);
|
||||
vn_encode_uint32_t(enc, &val->lineStippleFactor);
|
||||
vn_encode_uint16_t(enc, &val->lineStipplePattern);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfoKHR(struct vn_cs_encoder *enc, const VkPipelineRasterizationLineStateCreateInfoKHR *val)
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfo(struct vn_cs_encoder *enc, const VkPipelineRasterizationLineStateCreateInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR });
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfoKHR_pnext(enc, val->pNext);
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfoKHR_self(enc, val);
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO });
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkPipelineRasterizationProvokingVertexStateCreateInfoEXT chain */
|
||||
|
|
@ -1188,13 +1263,13 @@ vn_sizeof_VkPipelineRasterizationStateCreateInfo_pnext(const void *val)
|
|||
size += vn_sizeof_VkPipelineRasterizationStateCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineRasterizationDepthClipStateCreateInfoEXT_self((const VkPipelineRasterizationDepthClipStateCreateInfoEXT *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(260 /* VK_EXT_line_rasterization */) && !vn_cs_renderer_protocol_has_extension(535 /* VK_KHR_line_rasterization */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkPipelineRasterizationStateCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineRasterizationLineStateCreateInfoKHR_self((const VkPipelineRasterizationLineStateCreateInfoKHR *)pnext);
|
||||
size += vn_sizeof_VkPipelineRasterizationLineStateCreateInfo_self((const VkPipelineRasterizationLineStateCreateInfo *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
|
||||
if (!vn_cs_renderer_protocol_has_extension(255 /* VK_EXT_provoking_vertex */))
|
||||
|
|
@ -1276,13 +1351,13 @@ vn_encode_VkPipelineRasterizationStateCreateInfo_pnext(struct vn_cs_encoder *enc
|
|||
vn_encode_VkPipelineRasterizationStateCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineRasterizationDepthClipStateCreateInfoEXT_self(enc, (const VkPipelineRasterizationDepthClipStateCreateInfoEXT *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(260 /* VK_EXT_line_rasterization */) && !vn_cs_renderer_protocol_has_extension(535 /* VK_KHR_line_rasterization */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkPipelineRasterizationStateCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfoKHR_self(enc, (const VkPipelineRasterizationLineStateCreateInfoKHR *)pnext);
|
||||
vn_encode_VkPipelineRasterizationLineStateCreateInfo_self(enc, (const VkPipelineRasterizationLineStateCreateInfo *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
|
||||
if (!vn_cs_renderer_protocol_has_extension(255 /* VK_EXT_provoking_vertex */))
|
||||
|
|
@ -1943,17 +2018,17 @@ vn_encode_VkPipelineDynamicStateCreateInfo(struct vn_cs_encoder *enc, const VkPi
|
|||
vn_encode_VkPipelineDynamicStateCreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkPipelineCreateFlags2CreateInfoKHR chain */
|
||||
/* struct VkPipelineCreateFlags2CreateInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineCreateFlags2CreateInfoKHR_pnext(const void *val)
|
||||
vn_sizeof_VkPipelineCreateFlags2CreateInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineCreateFlags2CreateInfoKHR_self(const VkPipelineCreateFlags2CreateInfoKHR *val)
|
||||
vn_sizeof_VkPipelineCreateFlags2CreateInfo_self(const VkPipelineCreateFlags2CreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
|
|
@ -1962,38 +2037,38 @@ vn_sizeof_VkPipelineCreateFlags2CreateInfoKHR_self(const VkPipelineCreateFlags2C
|
|||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineCreateFlags2CreateInfoKHR(const VkPipelineCreateFlags2CreateInfoKHR *val)
|
||||
vn_sizeof_VkPipelineCreateFlags2CreateInfo(const VkPipelineCreateFlags2CreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkPipelineCreateFlags2CreateInfoKHR_pnext(val->pNext);
|
||||
size += vn_sizeof_VkPipelineCreateFlags2CreateInfoKHR_self(val);
|
||||
size += vn_sizeof_VkPipelineCreateFlags2CreateInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkPipelineCreateFlags2CreateInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfoKHR_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfoKHR_self(struct vn_cs_encoder *enc, const VkPipelineCreateFlags2CreateInfoKHR *val)
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfo_self(struct vn_cs_encoder *enc, const VkPipelineCreateFlags2CreateInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_VkFlags64(enc, &val->flags);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfoKHR(struct vn_cs_encoder *enc, const VkPipelineCreateFlags2CreateInfoKHR *val)
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfo(struct vn_cs_encoder *enc, const VkPipelineCreateFlags2CreateInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR });
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfoKHR_pnext(enc, val->pNext);
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfoKHR_self(enc, val);
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO });
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkPipelineLibraryCreateInfoKHR chain */
|
||||
|
|
@ -2344,13 +2419,13 @@ vn_sizeof_VkGraphicsPipelineCreateInfo_pnext(const void *val)
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(471 /* VK_KHR_maintenance5 */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkGraphicsPipelineCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineCreateFlags2CreateInfoKHR_self((const VkPipelineCreateFlags2CreateInfoKHR *)pnext);
|
||||
size += vn_sizeof_VkPipelineCreateFlags2CreateInfo_self((const VkPipelineCreateFlags2CreateInfo *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR:
|
||||
if (!vn_cs_renderer_protocol_has_extension(291 /* VK_KHR_pipeline_library */))
|
||||
|
|
@ -2392,6 +2467,30 @@ vn_sizeof_VkGraphicsPipelineCreateInfo_pnext(const void *val)
|
|||
size += vn_sizeof_VkGraphicsPipelineCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkGraphicsPipelineLibraryCreateInfoEXT_self((const VkGraphicsPipelineLibraryCreateInfoEXT *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(69 /* VK_EXT_pipeline_robustness */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkGraphicsPipelineCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineRobustnessCreateInfo_self((const VkPipelineRobustnessCreateInfo *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_LOCATION_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(233 /* VK_KHR_dynamic_rendering_local_read */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkGraphicsPipelineCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkRenderingAttachmentLocationInfo_self((const VkRenderingAttachmentLocationInfo *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(233 /* VK_KHR_dynamic_rendering_local_read */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkGraphicsPipelineCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkRenderingInputAttachmentIndexInfo_self((const VkRenderingInputAttachmentIndexInfo *)pnext);
|
||||
return size;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
break;
|
||||
|
|
@ -2470,13 +2569,13 @@ vn_encode_VkGraphicsPipelineCreateInfo_pnext(struct vn_cs_encoder *enc, const vo
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(471 /* VK_KHR_maintenance5 */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkGraphicsPipelineCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfoKHR_self(enc, (const VkPipelineCreateFlags2CreateInfoKHR *)pnext);
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfo_self(enc, (const VkPipelineCreateFlags2CreateInfo *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR:
|
||||
if (!vn_cs_renderer_protocol_has_extension(291 /* VK_KHR_pipeline_library */))
|
||||
|
|
@ -2518,6 +2617,30 @@ vn_encode_VkGraphicsPipelineCreateInfo_pnext(struct vn_cs_encoder *enc, const vo
|
|||
vn_encode_VkGraphicsPipelineCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkGraphicsPipelineLibraryCreateInfoEXT_self(enc, (const VkGraphicsPipelineLibraryCreateInfoEXT *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(69 /* VK_EXT_pipeline_robustness */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkGraphicsPipelineCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineRobustnessCreateInfo_self(enc, (const VkPipelineRobustnessCreateInfo *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_LOCATION_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(233 /* VK_KHR_dynamic_rendering_local_read */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkGraphicsPipelineCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkRenderingAttachmentLocationInfo_self(enc, (const VkRenderingAttachmentLocationInfo *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(233 /* VK_KHR_dynamic_rendering_local_read */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkGraphicsPipelineCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkRenderingInputAttachmentIndexInfo_self(enc, (const VkRenderingInputAttachmentIndexInfo *)pnext);
|
||||
return;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
break;
|
||||
|
|
@ -2585,13 +2708,13 @@ vn_sizeof_VkComputePipelineCreateInfo_pnext(const void *val)
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(471 /* VK_KHR_maintenance5 */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkComputePipelineCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineCreateFlags2CreateInfoKHR_self((const VkPipelineCreateFlags2CreateInfoKHR *)pnext);
|
||||
size += vn_sizeof_VkPipelineCreateFlags2CreateInfo_self((const VkPipelineCreateFlags2CreateInfo *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(193 /* VK_EXT_pipeline_creation_feedback */))
|
||||
|
|
@ -2601,6 +2724,14 @@ vn_sizeof_VkComputePipelineCreateInfo_pnext(const void *val)
|
|||
size += vn_sizeof_VkComputePipelineCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineCreationFeedbackCreateInfo_self((const VkPipelineCreationFeedbackCreateInfo *)pnext);
|
||||
return size;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(69 /* VK_EXT_pipeline_robustness */))
|
||||
break;
|
||||
size += vn_sizeof_simple_pointer(pnext);
|
||||
size += vn_sizeof_VkStructureType(&pnext->sType);
|
||||
size += vn_sizeof_VkComputePipelineCreateInfo_pnext(pnext->pNext);
|
||||
size += vn_sizeof_VkPipelineRobustnessCreateInfo_self((const VkPipelineRobustnessCreateInfo *)pnext);
|
||||
return size;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
break;
|
||||
|
|
@ -2643,13 +2774,13 @@ vn_encode_VkComputePipelineCreateInfo_pnext(struct vn_cs_encoder *enc, const voi
|
|||
|
||||
while (pnext) {
|
||||
switch ((int32_t)pnext->sType) {
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR:
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(471 /* VK_KHR_maintenance5 */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkComputePipelineCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfoKHR_self(enc, (const VkPipelineCreateFlags2CreateInfoKHR *)pnext);
|
||||
vn_encode_VkPipelineCreateFlags2CreateInfo_self(enc, (const VkPipelineCreateFlags2CreateInfo *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(193 /* VK_EXT_pipeline_creation_feedback */))
|
||||
|
|
@ -2659,6 +2790,14 @@ vn_encode_VkComputePipelineCreateInfo_pnext(struct vn_cs_encoder *enc, const voi
|
|||
vn_encode_VkComputePipelineCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineCreationFeedbackCreateInfo_self(enc, (const VkPipelineCreationFeedbackCreateInfo *)pnext);
|
||||
return;
|
||||
case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO:
|
||||
if (!vn_cs_renderer_protocol_has_extension(69 /* VK_EXT_pipeline_robustness */))
|
||||
break;
|
||||
vn_encode_simple_pointer(enc, pnext);
|
||||
vn_encode_VkStructureType(enc, &pnext->sType);
|
||||
vn_encode_VkComputePipelineCreateInfo_pnext(enc, pnext->pNext);
|
||||
vn_encode_VkPipelineRobustnessCreateInfo_self(enc, (const VkPipelineRobustnessCreateInfo *)pnext);
|
||||
return;
|
||||
default:
|
||||
/* ignore unknown/unsupported struct */
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -11,111 +11,6 @@
|
|||
#include "vn_ring.h"
|
||||
#include "vn_protocol_driver_structs.h"
|
||||
|
||||
/* struct VkPushConstantRange */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPushConstantRange(const VkPushConstantRange *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
size += vn_sizeof_VkFlags(&val->stageFlags);
|
||||
size += vn_sizeof_uint32_t(&val->offset);
|
||||
size += vn_sizeof_uint32_t(&val->size);
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPushConstantRange(struct vn_cs_encoder *enc, const VkPushConstantRange *val)
|
||||
{
|
||||
vn_encode_VkFlags(enc, &val->stageFlags);
|
||||
vn_encode_uint32_t(enc, &val->offset);
|
||||
vn_encode_uint32_t(enc, &val->size);
|
||||
}
|
||||
|
||||
/* struct VkPipelineLayoutCreateInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineLayoutCreateInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineLayoutCreateInfo_self(const VkPipelineLayoutCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
size += vn_sizeof_VkFlags(&val->flags);
|
||||
size += vn_sizeof_uint32_t(&val->setLayoutCount);
|
||||
if (val->pSetLayouts) {
|
||||
size += vn_sizeof_array_size(val->setLayoutCount);
|
||||
for (uint32_t i = 0; i < val->setLayoutCount; i++)
|
||||
size += vn_sizeof_VkDescriptorSetLayout(&val->pSetLayouts[i]);
|
||||
} else {
|
||||
size += vn_sizeof_array_size(0);
|
||||
}
|
||||
size += vn_sizeof_uint32_t(&val->pushConstantRangeCount);
|
||||
if (val->pPushConstantRanges) {
|
||||
size += vn_sizeof_array_size(val->pushConstantRangeCount);
|
||||
for (uint32_t i = 0; i < val->pushConstantRangeCount; i++)
|
||||
size += vn_sizeof_VkPushConstantRange(&val->pPushConstantRanges[i]);
|
||||
} else {
|
||||
size += vn_sizeof_array_size(0);
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkPipelineLayoutCreateInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkPipelineLayoutCreateInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineLayoutCreateInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineLayoutCreateInfo_self(struct vn_cs_encoder *enc, const VkPipelineLayoutCreateInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_VkFlags(enc, &val->flags);
|
||||
vn_encode_uint32_t(enc, &val->setLayoutCount);
|
||||
if (val->pSetLayouts) {
|
||||
vn_encode_array_size(enc, val->setLayoutCount);
|
||||
for (uint32_t i = 0; i < val->setLayoutCount; i++)
|
||||
vn_encode_VkDescriptorSetLayout(enc, &val->pSetLayouts[i]);
|
||||
} else {
|
||||
vn_encode_array_size(enc, 0);
|
||||
}
|
||||
vn_encode_uint32_t(enc, &val->pushConstantRangeCount);
|
||||
if (val->pPushConstantRanges) {
|
||||
vn_encode_array_size(enc, val->pushConstantRangeCount);
|
||||
for (uint32_t i = 0; i < val->pushConstantRangeCount; i++)
|
||||
vn_encode_VkPushConstantRange(enc, &val->pPushConstantRanges[i]);
|
||||
} else {
|
||||
vn_encode_array_size(enc, 0);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineLayoutCreateInfo(struct vn_cs_encoder *enc, const VkPipelineLayoutCreateInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO });
|
||||
vn_encode_VkPipelineLayoutCreateInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkPipelineLayoutCreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
static inline size_t vn_sizeof_vkCreatePipelineLayout(VkDevice device, const VkPipelineLayoutCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineLayout* pPipelineLayout)
|
||||
{
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkCreatePipelineLayout_EXT;
|
||||
|
|
|
|||
|
|
@ -498,17 +498,17 @@ vn_encode_VkRenderPassCreateInfo(struct vn_cs_encoder *enc, const VkRenderPassCr
|
|||
vn_encode_VkRenderPassCreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkRenderingAreaInfoKHR chain */
|
||||
/* struct VkRenderingAreaInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkRenderingAreaInfoKHR_pnext(const void *val)
|
||||
vn_sizeof_VkRenderingAreaInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkRenderingAreaInfoKHR_self(const VkRenderingAreaInfoKHR *val)
|
||||
vn_sizeof_VkRenderingAreaInfo_self(const VkRenderingAreaInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
|
|
@ -526,26 +526,26 @@ vn_sizeof_VkRenderingAreaInfoKHR_self(const VkRenderingAreaInfoKHR *val)
|
|||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkRenderingAreaInfoKHR(const VkRenderingAreaInfoKHR *val)
|
||||
vn_sizeof_VkRenderingAreaInfo(const VkRenderingAreaInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkRenderingAreaInfoKHR_pnext(val->pNext);
|
||||
size += vn_sizeof_VkRenderingAreaInfoKHR_self(val);
|
||||
size += vn_sizeof_VkRenderingAreaInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkRenderingAreaInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkRenderingAreaInfoKHR_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
vn_encode_VkRenderingAreaInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkRenderingAreaInfoKHR_self(struct vn_cs_encoder *enc, const VkRenderingAreaInfoKHR *val)
|
||||
vn_encode_VkRenderingAreaInfo_self(struct vn_cs_encoder *enc, const VkRenderingAreaInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_uint32_t(enc, &val->viewMask);
|
||||
|
|
@ -561,12 +561,12 @@ vn_encode_VkRenderingAreaInfoKHR_self(struct vn_cs_encoder *enc, const VkRenderi
|
|||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkRenderingAreaInfoKHR(struct vn_cs_encoder *enc, const VkRenderingAreaInfoKHR *val)
|
||||
vn_encode_VkRenderingAreaInfo(struct vn_cs_encoder *enc, const VkRenderingAreaInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_RENDERING_AREA_INFO_KHR);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_RENDERING_AREA_INFO_KHR });
|
||||
vn_encode_VkRenderingAreaInfoKHR_pnext(enc, val->pNext);
|
||||
vn_encode_VkRenderingAreaInfoKHR_self(enc, val);
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_RENDERING_AREA_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_RENDERING_AREA_INFO });
|
||||
vn_encode_VkRenderingAreaInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkRenderingAreaInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkAttachmentDescriptionStencilLayout chain */
|
||||
|
|
@ -1558,16 +1558,16 @@ static inline void vn_decode_vkGetRenderAreaGranularity_reply(struct vn_cs_decod
|
|||
}
|
||||
}
|
||||
|
||||
static inline size_t vn_sizeof_vkGetRenderingAreaGranularityKHR(VkDevice device, const VkRenderingAreaInfoKHR* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
static inline size_t vn_sizeof_vkGetRenderingAreaGranularity(VkDevice device, const VkRenderingAreaInfo* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
{
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkGetRenderingAreaGranularityKHR_EXT;
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkGetRenderingAreaGranularity_EXT;
|
||||
const VkFlags cmd_flags = 0;
|
||||
size_t cmd_size = vn_sizeof_VkCommandTypeEXT(&cmd_type) + vn_sizeof_VkFlags(&cmd_flags);
|
||||
|
||||
cmd_size += vn_sizeof_VkDevice(&device);
|
||||
cmd_size += vn_sizeof_simple_pointer(pRenderingAreaInfo);
|
||||
if (pRenderingAreaInfo)
|
||||
cmd_size += vn_sizeof_VkRenderingAreaInfoKHR(pRenderingAreaInfo);
|
||||
cmd_size += vn_sizeof_VkRenderingAreaInfo(pRenderingAreaInfo);
|
||||
cmd_size += vn_sizeof_simple_pointer(pGranularity);
|
||||
if (pGranularity)
|
||||
cmd_size += vn_sizeof_VkExtent2D_partial(pGranularity);
|
||||
|
|
@ -1575,23 +1575,23 @@ static inline size_t vn_sizeof_vkGetRenderingAreaGranularityKHR(VkDevice device,
|
|||
return cmd_size;
|
||||
}
|
||||
|
||||
static inline void vn_encode_vkGetRenderingAreaGranularityKHR(struct vn_cs_encoder *enc, VkCommandFlagsEXT cmd_flags, VkDevice device, const VkRenderingAreaInfoKHR* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
static inline void vn_encode_vkGetRenderingAreaGranularity(struct vn_cs_encoder *enc, VkCommandFlagsEXT cmd_flags, VkDevice device, const VkRenderingAreaInfo* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
{
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkGetRenderingAreaGranularityKHR_EXT;
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkGetRenderingAreaGranularity_EXT;
|
||||
|
||||
vn_encode_VkCommandTypeEXT(enc, &cmd_type);
|
||||
vn_encode_VkFlags(enc, &cmd_flags);
|
||||
|
||||
vn_encode_VkDevice(enc, &device);
|
||||
if (vn_encode_simple_pointer(enc, pRenderingAreaInfo))
|
||||
vn_encode_VkRenderingAreaInfoKHR(enc, pRenderingAreaInfo);
|
||||
vn_encode_VkRenderingAreaInfo(enc, pRenderingAreaInfo);
|
||||
if (vn_encode_simple_pointer(enc, pGranularity))
|
||||
vn_encode_VkExtent2D_partial(enc, pGranularity);
|
||||
}
|
||||
|
||||
static inline size_t vn_sizeof_vkGetRenderingAreaGranularityKHR_reply(VkDevice device, const VkRenderingAreaInfoKHR* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
static inline size_t vn_sizeof_vkGetRenderingAreaGranularity_reply(VkDevice device, const VkRenderingAreaInfo* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
{
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkGetRenderingAreaGranularityKHR_EXT;
|
||||
const VkCommandTypeEXT cmd_type = VK_COMMAND_TYPE_vkGetRenderingAreaGranularity_EXT;
|
||||
size_t cmd_size = vn_sizeof_VkCommandTypeEXT(&cmd_type);
|
||||
|
||||
/* skip device */
|
||||
|
|
@ -1603,11 +1603,11 @@ static inline size_t vn_sizeof_vkGetRenderingAreaGranularityKHR_reply(VkDevice d
|
|||
return cmd_size;
|
||||
}
|
||||
|
||||
static inline void vn_decode_vkGetRenderingAreaGranularityKHR_reply(struct vn_cs_decoder *dec, VkDevice device, const VkRenderingAreaInfoKHR* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
static inline void vn_decode_vkGetRenderingAreaGranularity_reply(struct vn_cs_decoder *dec, VkDevice device, const VkRenderingAreaInfo* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
{
|
||||
VkCommandTypeEXT command_type;
|
||||
vn_decode_VkCommandTypeEXT(dec, &command_type);
|
||||
assert(command_type == VK_COMMAND_TYPE_vkGetRenderingAreaGranularityKHR_EXT);
|
||||
assert(command_type == VK_COMMAND_TYPE_vkGetRenderingAreaGranularity_EXT);
|
||||
|
||||
/* skip device */
|
||||
/* skip pRenderingAreaInfo */
|
||||
|
|
@ -1754,21 +1754,21 @@ static inline void vn_submit_vkGetRenderAreaGranularity(struct vn_ring *vn_ring,
|
|||
}
|
||||
}
|
||||
|
||||
static inline void vn_submit_vkGetRenderingAreaGranularityKHR(struct vn_ring *vn_ring, VkCommandFlagsEXT cmd_flags, VkDevice device, const VkRenderingAreaInfoKHR* pRenderingAreaInfo, VkExtent2D* pGranularity, struct vn_ring_submit_command *submit)
|
||||
static inline void vn_submit_vkGetRenderingAreaGranularity(struct vn_ring *vn_ring, VkCommandFlagsEXT cmd_flags, VkDevice device, const VkRenderingAreaInfo* pRenderingAreaInfo, VkExtent2D* pGranularity, struct vn_ring_submit_command *submit)
|
||||
{
|
||||
uint8_t local_cmd_data[VN_SUBMIT_LOCAL_CMD_SIZE];
|
||||
void *cmd_data = local_cmd_data;
|
||||
size_t cmd_size = vn_sizeof_vkGetRenderingAreaGranularityKHR(device, pRenderingAreaInfo, pGranularity);
|
||||
size_t cmd_size = vn_sizeof_vkGetRenderingAreaGranularity(device, pRenderingAreaInfo, pGranularity);
|
||||
if (cmd_size > sizeof(local_cmd_data)) {
|
||||
cmd_data = malloc(cmd_size);
|
||||
if (!cmd_data)
|
||||
cmd_size = 0;
|
||||
}
|
||||
const size_t reply_size = cmd_flags & VK_COMMAND_GENERATE_REPLY_BIT_EXT ? vn_sizeof_vkGetRenderingAreaGranularityKHR_reply(device, pRenderingAreaInfo, pGranularity) : 0;
|
||||
const size_t reply_size = cmd_flags & VK_COMMAND_GENERATE_REPLY_BIT_EXT ? vn_sizeof_vkGetRenderingAreaGranularity_reply(device, pRenderingAreaInfo, pGranularity) : 0;
|
||||
|
||||
struct vn_cs_encoder *enc = vn_ring_submit_command_init(vn_ring, submit, cmd_data, cmd_size, reply_size);
|
||||
if (cmd_size) {
|
||||
vn_encode_vkGetRenderingAreaGranularityKHR(enc, cmd_flags, device, pRenderingAreaInfo, pGranularity);
|
||||
vn_encode_vkGetRenderingAreaGranularity(enc, cmd_flags, device, pRenderingAreaInfo, pGranularity);
|
||||
vn_ring_submit_command(vn_ring, submit);
|
||||
if (cmd_data != local_cmd_data)
|
||||
free(cmd_data);
|
||||
|
|
@ -1856,23 +1856,23 @@ static inline void vn_async_vkGetRenderAreaGranularity(struct vn_ring *vn_ring,
|
|||
vn_submit_vkGetRenderAreaGranularity(vn_ring, 0, device, renderPass, pGranularity, &submit);
|
||||
}
|
||||
|
||||
static inline void vn_call_vkGetRenderingAreaGranularityKHR(struct vn_ring *vn_ring, VkDevice device, const VkRenderingAreaInfoKHR* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
static inline void vn_call_vkGetRenderingAreaGranularity(struct vn_ring *vn_ring, VkDevice device, const VkRenderingAreaInfo* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
{
|
||||
VN_TRACE_FUNC();
|
||||
|
||||
struct vn_ring_submit_command submit;
|
||||
vn_submit_vkGetRenderingAreaGranularityKHR(vn_ring, VK_COMMAND_GENERATE_REPLY_BIT_EXT, device, pRenderingAreaInfo, pGranularity, &submit);
|
||||
vn_submit_vkGetRenderingAreaGranularity(vn_ring, VK_COMMAND_GENERATE_REPLY_BIT_EXT, device, pRenderingAreaInfo, pGranularity, &submit);
|
||||
struct vn_cs_decoder *dec = vn_ring_get_command_reply(vn_ring, &submit);
|
||||
if (dec) {
|
||||
vn_decode_vkGetRenderingAreaGranularityKHR_reply(dec, device, pRenderingAreaInfo, pGranularity);
|
||||
vn_decode_vkGetRenderingAreaGranularity_reply(dec, device, pRenderingAreaInfo, pGranularity);
|
||||
vn_ring_free_command_reply(vn_ring, &submit);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void vn_async_vkGetRenderingAreaGranularityKHR(struct vn_ring *vn_ring, VkDevice device, const VkRenderingAreaInfoKHR* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
static inline void vn_async_vkGetRenderingAreaGranularity(struct vn_ring *vn_ring, VkDevice device, const VkRenderingAreaInfo* pRenderingAreaInfo, VkExtent2D* pGranularity)
|
||||
{
|
||||
struct vn_ring_submit_command submit;
|
||||
vn_submit_vkGetRenderingAreaGranularityKHR(vn_ring, 0, device, pRenderingAreaInfo, pGranularity, &submit);
|
||||
vn_submit_vkGetRenderingAreaGranularity(vn_ring, 0, device, pRenderingAreaInfo, pGranularity, &submit);
|
||||
}
|
||||
|
||||
static inline VkResult vn_call_vkCreateRenderPass2(struct vn_ring *vn_ring, VkDevice device, const VkRenderPassCreateInfo2* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkRenderPass* pRenderPass)
|
||||
|
|
|
|||
|
|
@ -329,17 +329,17 @@ vn_encode_VkSemaphoreTypeCreateInfo(struct vn_cs_encoder *enc, const VkSemaphore
|
|||
vn_encode_VkSemaphoreTypeCreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkBufferUsageFlags2CreateInfoKHR chain */
|
||||
/* struct VkBufferUsageFlags2CreateInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkBufferUsageFlags2CreateInfoKHR_pnext(const void *val)
|
||||
vn_sizeof_VkBufferUsageFlags2CreateInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkBufferUsageFlags2CreateInfoKHR_self(const VkBufferUsageFlags2CreateInfoKHR *val)
|
||||
vn_sizeof_VkBufferUsageFlags2CreateInfo_self(const VkBufferUsageFlags2CreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
|
|
@ -348,38 +348,38 @@ vn_sizeof_VkBufferUsageFlags2CreateInfoKHR_self(const VkBufferUsageFlags2CreateI
|
|||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkBufferUsageFlags2CreateInfoKHR(const VkBufferUsageFlags2CreateInfoKHR *val)
|
||||
vn_sizeof_VkBufferUsageFlags2CreateInfo(const VkBufferUsageFlags2CreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkBufferUsageFlags2CreateInfoKHR_pnext(val->pNext);
|
||||
size += vn_sizeof_VkBufferUsageFlags2CreateInfoKHR_self(val);
|
||||
size += vn_sizeof_VkBufferUsageFlags2CreateInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkBufferUsageFlags2CreateInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkBufferUsageFlags2CreateInfoKHR_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
vn_encode_VkBufferUsageFlags2CreateInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkBufferUsageFlags2CreateInfoKHR_self(struct vn_cs_encoder *enc, const VkBufferUsageFlags2CreateInfoKHR *val)
|
||||
vn_encode_VkBufferUsageFlags2CreateInfo_self(struct vn_cs_encoder *enc, const VkBufferUsageFlags2CreateInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_VkFlags64(enc, &val->usage);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkBufferUsageFlags2CreateInfoKHR(struct vn_cs_encoder *enc, const VkBufferUsageFlags2CreateInfoKHR *val)
|
||||
vn_encode_VkBufferUsageFlags2CreateInfo(struct vn_cs_encoder *enc, const VkBufferUsageFlags2CreateInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR });
|
||||
vn_encode_VkBufferUsageFlags2CreateInfoKHR_pnext(enc, val->pNext);
|
||||
vn_encode_VkBufferUsageFlags2CreateInfoKHR_self(enc, val);
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO });
|
||||
vn_encode_VkBufferUsageFlags2CreateInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkBufferUsageFlags2CreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkImageFormatListCreateInfo chain */
|
||||
|
|
@ -933,6 +933,251 @@ vn_encode_VkSampleLocationsInfoEXT(struct vn_cs_encoder *enc, const VkSampleLoca
|
|||
vn_encode_VkSampleLocationsInfoEXT_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkRenderingAttachmentLocationInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkRenderingAttachmentLocationInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkRenderingAttachmentLocationInfo_self(const VkRenderingAttachmentLocationInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
size += vn_sizeof_uint32_t(&val->colorAttachmentCount);
|
||||
if (val->pColorAttachmentLocations) {
|
||||
size += vn_sizeof_array_size(val->colorAttachmentCount);
|
||||
size += vn_sizeof_uint32_t_array(val->pColorAttachmentLocations, val->colorAttachmentCount);
|
||||
} else {
|
||||
size += vn_sizeof_array_size(0);
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkRenderingAttachmentLocationInfo(const VkRenderingAttachmentLocationInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkRenderingAttachmentLocationInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkRenderingAttachmentLocationInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkRenderingAttachmentLocationInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkRenderingAttachmentLocationInfo_self(struct vn_cs_encoder *enc, const VkRenderingAttachmentLocationInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_uint32_t(enc, &val->colorAttachmentCount);
|
||||
if (val->pColorAttachmentLocations) {
|
||||
vn_encode_array_size(enc, val->colorAttachmentCount);
|
||||
vn_encode_uint32_t_array(enc, val->pColorAttachmentLocations, val->colorAttachmentCount);
|
||||
} else {
|
||||
vn_encode_array_size(enc, 0);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkRenderingAttachmentLocationInfo(struct vn_cs_encoder *enc, const VkRenderingAttachmentLocationInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_LOCATION_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_LOCATION_INFO });
|
||||
vn_encode_VkRenderingAttachmentLocationInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkRenderingAttachmentLocationInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkRenderingInputAttachmentIndexInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkRenderingInputAttachmentIndexInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkRenderingInputAttachmentIndexInfo_self(const VkRenderingInputAttachmentIndexInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
size += vn_sizeof_uint32_t(&val->colorAttachmentCount);
|
||||
if (val->pColorAttachmentInputIndices) {
|
||||
size += vn_sizeof_array_size(val->colorAttachmentCount);
|
||||
size += vn_sizeof_uint32_t_array(val->pColorAttachmentInputIndices, val->colorAttachmentCount);
|
||||
} else {
|
||||
size += vn_sizeof_array_size(0);
|
||||
}
|
||||
size += vn_sizeof_simple_pointer(val->pDepthInputAttachmentIndex);
|
||||
if (val->pDepthInputAttachmentIndex)
|
||||
size += vn_sizeof_uint32_t(val->pDepthInputAttachmentIndex);
|
||||
size += vn_sizeof_simple_pointer(val->pStencilInputAttachmentIndex);
|
||||
if (val->pStencilInputAttachmentIndex)
|
||||
size += vn_sizeof_uint32_t(val->pStencilInputAttachmentIndex);
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkRenderingInputAttachmentIndexInfo(const VkRenderingInputAttachmentIndexInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkRenderingInputAttachmentIndexInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkRenderingInputAttachmentIndexInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkRenderingInputAttachmentIndexInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkRenderingInputAttachmentIndexInfo_self(struct vn_cs_encoder *enc, const VkRenderingInputAttachmentIndexInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_uint32_t(enc, &val->colorAttachmentCount);
|
||||
if (val->pColorAttachmentInputIndices) {
|
||||
vn_encode_array_size(enc, val->colorAttachmentCount);
|
||||
vn_encode_uint32_t_array(enc, val->pColorAttachmentInputIndices, val->colorAttachmentCount);
|
||||
} else {
|
||||
vn_encode_array_size(enc, 0);
|
||||
}
|
||||
if (vn_encode_simple_pointer(enc, val->pDepthInputAttachmentIndex))
|
||||
vn_encode_uint32_t(enc, val->pDepthInputAttachmentIndex);
|
||||
if (vn_encode_simple_pointer(enc, val->pStencilInputAttachmentIndex))
|
||||
vn_encode_uint32_t(enc, val->pStencilInputAttachmentIndex);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkRenderingInputAttachmentIndexInfo(struct vn_cs_encoder *enc, const VkRenderingInputAttachmentIndexInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO });
|
||||
vn_encode_VkRenderingInputAttachmentIndexInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkRenderingInputAttachmentIndexInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkPushConstantRange */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPushConstantRange(const VkPushConstantRange *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
size += vn_sizeof_VkFlags(&val->stageFlags);
|
||||
size += vn_sizeof_uint32_t(&val->offset);
|
||||
size += vn_sizeof_uint32_t(&val->size);
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPushConstantRange(struct vn_cs_encoder *enc, const VkPushConstantRange *val)
|
||||
{
|
||||
vn_encode_VkFlags(enc, &val->stageFlags);
|
||||
vn_encode_uint32_t(enc, &val->offset);
|
||||
vn_encode_uint32_t(enc, &val->size);
|
||||
}
|
||||
|
||||
/* struct VkPipelineLayoutCreateInfo chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineLayoutCreateInfo_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineLayoutCreateInfo_self(const VkPipelineLayoutCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
size += vn_sizeof_VkFlags(&val->flags);
|
||||
size += vn_sizeof_uint32_t(&val->setLayoutCount);
|
||||
if (val->pSetLayouts) {
|
||||
size += vn_sizeof_array_size(val->setLayoutCount);
|
||||
for (uint32_t i = 0; i < val->setLayoutCount; i++)
|
||||
size += vn_sizeof_VkDescriptorSetLayout(&val->pSetLayouts[i]);
|
||||
} else {
|
||||
size += vn_sizeof_array_size(0);
|
||||
}
|
||||
size += vn_sizeof_uint32_t(&val->pushConstantRangeCount);
|
||||
if (val->pPushConstantRanges) {
|
||||
size += vn_sizeof_array_size(val->pushConstantRangeCount);
|
||||
for (uint32_t i = 0; i < val->pushConstantRangeCount; i++)
|
||||
size += vn_sizeof_VkPushConstantRange(&val->pPushConstantRanges[i]);
|
||||
} else {
|
||||
size += vn_sizeof_array_size(0);
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkPipelineLayoutCreateInfo_pnext(val->pNext);
|
||||
size += vn_sizeof_VkPipelineLayoutCreateInfo_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineLayoutCreateInfo_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineLayoutCreateInfo_self(struct vn_cs_encoder *enc, const VkPipelineLayoutCreateInfo *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_VkFlags(enc, &val->flags);
|
||||
vn_encode_uint32_t(enc, &val->setLayoutCount);
|
||||
if (val->pSetLayouts) {
|
||||
vn_encode_array_size(enc, val->setLayoutCount);
|
||||
for (uint32_t i = 0; i < val->setLayoutCount; i++)
|
||||
vn_encode_VkDescriptorSetLayout(enc, &val->pSetLayouts[i]);
|
||||
} else {
|
||||
vn_encode_array_size(enc, 0);
|
||||
}
|
||||
vn_encode_uint32_t(enc, &val->pushConstantRangeCount);
|
||||
if (val->pPushConstantRanges) {
|
||||
vn_encode_array_size(enc, val->pushConstantRangeCount);
|
||||
for (uint32_t i = 0; i < val->pushConstantRangeCount; i++)
|
||||
vn_encode_VkPushConstantRange(enc, &val->pPushConstantRanges[i]);
|
||||
} else {
|
||||
vn_encode_array_size(enc, 0);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineLayoutCreateInfo(struct vn_cs_encoder *enc, const VkPipelineLayoutCreateInfo *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO });
|
||||
vn_encode_VkPipelineLayoutCreateInfo_pnext(enc, val->pNext);
|
||||
vn_encode_VkPipelineLayoutCreateInfo_self(enc, val);
|
||||
}
|
||||
|
||||
/* union VkClearColorValue */
|
||||
|
||||
static inline size_t
|
||||
|
|
@ -1334,6 +1579,84 @@ vn_encode_VkWriteDescriptorSet(struct vn_cs_encoder *enc, const VkWriteDescripto
|
|||
vn_encode_VkWriteDescriptorSet_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkImageSubresourceLayers */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkImageSubresourceLayers(const VkImageSubresourceLayers *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
size += vn_sizeof_VkFlags(&val->aspectMask);
|
||||
size += vn_sizeof_uint32_t(&val->mipLevel);
|
||||
size += vn_sizeof_uint32_t(&val->baseArrayLayer);
|
||||
size += vn_sizeof_uint32_t(&val->layerCount);
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkImageSubresourceLayers(struct vn_cs_encoder *enc, const VkImageSubresourceLayers *val)
|
||||
{
|
||||
vn_encode_VkFlags(enc, &val->aspectMask);
|
||||
vn_encode_uint32_t(enc, &val->mipLevel);
|
||||
vn_encode_uint32_t(enc, &val->baseArrayLayer);
|
||||
vn_encode_uint32_t(enc, &val->layerCount);
|
||||
}
|
||||
|
||||
/* struct VkBindMemoryStatus chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkBindMemoryStatus_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkBindMemoryStatus_self(const VkBindMemoryStatus *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
size += vn_sizeof_simple_pointer(val->pResult);
|
||||
if (val->pResult)
|
||||
size += vn_sizeof_VkResult(val->pResult);
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkBindMemoryStatus(const VkBindMemoryStatus *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkBindMemoryStatus_pnext(val->pNext);
|
||||
size += vn_sizeof_VkBindMemoryStatus_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkBindMemoryStatus_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkBindMemoryStatus_self(struct vn_cs_encoder *enc, const VkBindMemoryStatus *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
if (vn_encode_simple_pointer(enc, val->pResult))
|
||||
vn_encode_VkResult(enc, val->pResult);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkBindMemoryStatus(struct vn_cs_encoder *enc, const VkBindMemoryStatus *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_BIND_MEMORY_STATUS);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_BIND_MEMORY_STATUS });
|
||||
vn_encode_VkBindMemoryStatus_pnext(enc, val->pNext);
|
||||
vn_encode_VkBindMemoryStatus_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkMemoryDedicatedRequirements chain */
|
||||
|
||||
static inline size_t
|
||||
|
|
@ -1684,4 +2007,65 @@ vn_encode_VkMemoryBarrier2(struct vn_cs_encoder *enc, const VkMemoryBarrier2 *va
|
|||
vn_encode_VkMemoryBarrier2_self(enc, val);
|
||||
}
|
||||
|
||||
/* struct VkImageCopy2 chain */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkImageCopy2_pnext(const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
return vn_sizeof_simple_pointer(NULL);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkImageCopy2_self(const VkImageCopy2 *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
/* skip val->{sType,pNext} */
|
||||
size += vn_sizeof_VkImageSubresourceLayers(&val->srcSubresource);
|
||||
size += vn_sizeof_VkOffset3D(&val->srcOffset);
|
||||
size += vn_sizeof_VkImageSubresourceLayers(&val->dstSubresource);
|
||||
size += vn_sizeof_VkOffset3D(&val->dstOffset);
|
||||
size += vn_sizeof_VkExtent3D(&val->extent);
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkImageCopy2(const VkImageCopy2 *val)
|
||||
{
|
||||
size_t size = 0;
|
||||
|
||||
size += vn_sizeof_VkStructureType(&val->sType);
|
||||
size += vn_sizeof_VkImageCopy2_pnext(val->pNext);
|
||||
size += vn_sizeof_VkImageCopy2_self(val);
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkImageCopy2_pnext(struct vn_cs_encoder *enc, const void *val)
|
||||
{
|
||||
/* no known/supported struct */
|
||||
vn_encode_simple_pointer(enc, NULL);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkImageCopy2_self(struct vn_cs_encoder *enc, const VkImageCopy2 *val)
|
||||
{
|
||||
/* skip val->{sType,pNext} */
|
||||
vn_encode_VkImageSubresourceLayers(enc, &val->srcSubresource);
|
||||
vn_encode_VkOffset3D(enc, &val->srcOffset);
|
||||
vn_encode_VkImageSubresourceLayers(enc, &val->dstSubresource);
|
||||
vn_encode_VkOffset3D(enc, &val->dstOffset);
|
||||
vn_encode_VkExtent3D(enc, &val->extent);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkImageCopy2(struct vn_cs_encoder *enc, const VkImageCopy2 *val)
|
||||
{
|
||||
assert(val->sType == VK_STRUCTURE_TYPE_IMAGE_COPY_2);
|
||||
vn_encode_VkStructureType(enc, &(VkStructureType){ VK_STRUCTURE_TYPE_IMAGE_COPY_2 });
|
||||
vn_encode_VkImageCopy2_pnext(enc, val->pNext);
|
||||
vn_encode_VkImageCopy2_self(enc, val);
|
||||
}
|
||||
|
||||
#endif /* VN_PROTOCOL_DRIVER_STRUCTS_H */
|
||||
|
|
|
|||
|
|
@ -1384,6 +1384,27 @@ vn_decode_VkMemoryMapFlagBits(struct vn_cs_decoder *dec, VkMemoryMapFlagBits *va
|
|||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* enum VkMemoryUnmapFlagBits */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkMemoryUnmapFlagBits(const VkMemoryUnmapFlagBits *val)
|
||||
{
|
||||
assert(sizeof(*val) == sizeof(int32_t));
|
||||
return vn_sizeof_int32_t((const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkMemoryUnmapFlagBits(struct vn_cs_encoder *enc, const VkMemoryUnmapFlagBits *val)
|
||||
{
|
||||
vn_encode_int32_t(enc, (const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_decode_VkMemoryUnmapFlagBits(struct vn_cs_decoder *dec, VkMemoryUnmapFlagBits *val)
|
||||
{
|
||||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* enum VkImageAspectFlagBits */
|
||||
|
||||
static inline size_t
|
||||
|
|
@ -1780,44 +1801,44 @@ vn_decode_VkRenderingFlagBits(struct vn_cs_decoder *dec, VkRenderingFlagBits *va
|
|||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* typedef VkFlags64 VkPipelineCreateFlagBits2KHR */
|
||||
/* typedef VkFlags64 VkPipelineCreateFlagBits2 */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineCreateFlagBits2KHR(const VkPipelineCreateFlagBits2KHR *val)
|
||||
vn_sizeof_VkPipelineCreateFlagBits2(const VkPipelineCreateFlagBits2 *val)
|
||||
{
|
||||
assert(sizeof(*val) == sizeof(uint64_t));
|
||||
return vn_sizeof_uint64_t((const uint64_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineCreateFlagBits2KHR(struct vn_cs_encoder *enc, const VkPipelineCreateFlagBits2KHR *val)
|
||||
vn_encode_VkPipelineCreateFlagBits2(struct vn_cs_encoder *enc, const VkPipelineCreateFlagBits2 *val)
|
||||
{
|
||||
vn_encode_uint64_t(enc, (const uint64_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_decode_VkPipelineCreateFlagBits2KHR(struct vn_cs_decoder *dec, VkPipelineCreateFlagBits2KHR *val)
|
||||
vn_decode_VkPipelineCreateFlagBits2(struct vn_cs_decoder *dec, VkPipelineCreateFlagBits2 *val)
|
||||
{
|
||||
vn_decode_uint64_t(dec, (uint64_t *)val);
|
||||
}
|
||||
|
||||
/* typedef VkFlags64 VkBufferUsageFlagBits2KHR */
|
||||
/* typedef VkFlags64 VkBufferUsageFlagBits2 */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkBufferUsageFlagBits2KHR(const VkBufferUsageFlagBits2KHR *val)
|
||||
vn_sizeof_VkBufferUsageFlagBits2(const VkBufferUsageFlagBits2 *val)
|
||||
{
|
||||
assert(sizeof(*val) == sizeof(uint64_t));
|
||||
return vn_sizeof_uint64_t((const uint64_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkBufferUsageFlagBits2KHR(struct vn_cs_encoder *enc, const VkBufferUsageFlagBits2KHR *val)
|
||||
vn_encode_VkBufferUsageFlagBits2(struct vn_cs_encoder *enc, const VkBufferUsageFlagBits2 *val)
|
||||
{
|
||||
vn_encode_uint64_t(enc, (const uint64_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_decode_VkBufferUsageFlagBits2KHR(struct vn_cs_decoder *dec, VkBufferUsageFlagBits2KHR *val)
|
||||
vn_decode_VkBufferUsageFlagBits2(struct vn_cs_decoder *dec, VkBufferUsageFlagBits2 *val)
|
||||
{
|
||||
vn_decode_uint64_t(dec, (uint64_t *)val);
|
||||
}
|
||||
|
|
@ -2137,6 +2158,27 @@ vn_decode_VkSubmitFlagBits(struct vn_cs_decoder *dec, VkSubmitFlagBits *val)
|
|||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* enum VkHostImageCopyFlagBits */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkHostImageCopyFlagBits(const VkHostImageCopyFlagBits *val)
|
||||
{
|
||||
assert(sizeof(*val) == sizeof(int32_t));
|
||||
return vn_sizeof_int32_t((const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkHostImageCopyFlagBits(struct vn_cs_encoder *enc, const VkHostImageCopyFlagBits *val)
|
||||
{
|
||||
vn_encode_int32_t(enc, (const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_decode_VkHostImageCopyFlagBits(struct vn_cs_decoder *dec, VkHostImageCopyFlagBits *val)
|
||||
{
|
||||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* enum VkGraphicsPipelineLibraryFlagBitsEXT */
|
||||
|
||||
static inline size_t
|
||||
|
|
@ -3061,6 +3103,45 @@ vn_decode_VkPointClippingBehavior(struct vn_cs_decoder *dec, VkPointClippingBeha
|
|||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* enum VkQueueGlobalPriority */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkQueueGlobalPriority(const VkQueueGlobalPriority *val)
|
||||
{
|
||||
assert(sizeof(*val) == sizeof(int32_t));
|
||||
return vn_sizeof_int32_t((const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkQueueGlobalPriority(struct vn_cs_encoder *enc, const VkQueueGlobalPriority *val)
|
||||
{
|
||||
vn_encode_int32_t(enc, (const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_decode_VkQueueGlobalPriority(struct vn_cs_decoder *dec, VkQueueGlobalPriority *val)
|
||||
{
|
||||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkQueueGlobalPriority_array(const VkQueueGlobalPriority *val, uint32_t count)
|
||||
{
|
||||
return vn_sizeof_int32_t_array((const int32_t *)val, count);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkQueueGlobalPriority_array(struct vn_cs_encoder *enc, const VkQueueGlobalPriority *val, uint32_t count)
|
||||
{
|
||||
vn_encode_int32_t_array(enc, (const int32_t *)val, count);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_decode_VkQueueGlobalPriority_array(struct vn_cs_decoder *dec, VkQueueGlobalPriority *val, uint32_t count)
|
||||
{
|
||||
vn_decode_int32_t_array(dec, (int32_t *)val, count);
|
||||
}
|
||||
|
||||
/* enum VkTimeDomainKHR */
|
||||
|
||||
static inline size_t
|
||||
|
|
@ -3142,23 +3223,23 @@ vn_decode_VkSemaphoreType(struct vn_cs_decoder *dec, VkSemaphoreType *val)
|
|||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* enum VkLineRasterizationModeKHR */
|
||||
/* enum VkLineRasterizationMode */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkLineRasterizationModeKHR(const VkLineRasterizationModeKHR *val)
|
||||
vn_sizeof_VkLineRasterizationMode(const VkLineRasterizationMode *val)
|
||||
{
|
||||
assert(sizeof(*val) == sizeof(int32_t));
|
||||
return vn_sizeof_int32_t((const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkLineRasterizationModeKHR(struct vn_cs_encoder *enc, const VkLineRasterizationModeKHR *val)
|
||||
vn_encode_VkLineRasterizationMode(struct vn_cs_encoder *enc, const VkLineRasterizationMode *val)
|
||||
{
|
||||
vn_encode_int32_t(enc, (const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_decode_VkLineRasterizationModeKHR(struct vn_cs_decoder *dec, VkLineRasterizationModeKHR *val)
|
||||
vn_decode_VkLineRasterizationMode(struct vn_cs_decoder *dec, VkLineRasterizationMode *val)
|
||||
{
|
||||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
|
@ -3184,6 +3265,48 @@ vn_decode_VkProvokingVertexModeEXT(struct vn_cs_decoder *dec, VkProvokingVertexM
|
|||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* enum VkPipelineRobustnessBufferBehavior */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineRobustnessBufferBehavior(const VkPipelineRobustnessBufferBehavior *val)
|
||||
{
|
||||
assert(sizeof(*val) == sizeof(int32_t));
|
||||
return vn_sizeof_int32_t((const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineRobustnessBufferBehavior(struct vn_cs_encoder *enc, const VkPipelineRobustnessBufferBehavior *val)
|
||||
{
|
||||
vn_encode_int32_t(enc, (const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_decode_VkPipelineRobustnessBufferBehavior(struct vn_cs_decoder *dec, VkPipelineRobustnessBufferBehavior *val)
|
||||
{
|
||||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* enum VkPipelineRobustnessImageBehavior */
|
||||
|
||||
static inline size_t
|
||||
vn_sizeof_VkPipelineRobustnessImageBehavior(const VkPipelineRobustnessImageBehavior *val)
|
||||
{
|
||||
assert(sizeof(*val) == sizeof(int32_t));
|
||||
return vn_sizeof_int32_t((const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_encode_VkPipelineRobustnessImageBehavior(struct vn_cs_encoder *enc, const VkPipelineRobustnessImageBehavior *val)
|
||||
{
|
||||
vn_encode_int32_t(enc, (const int32_t *)val);
|
||||
}
|
||||
|
||||
static inline void
|
||||
vn_decode_VkPipelineRobustnessImageBehavior(struct vn_cs_decoder *dec, VkPipelineRobustnessImageBehavior *val)
|
||||
{
|
||||
vn_decode_int32_t(dec, (int32_t *)val);
|
||||
}
|
||||
|
||||
/* enum VkTessellationDomainOrigin */
|
||||
|
||||
static inline size_t
|
||||
|
|
|
|||
|
|
@ -1252,14 +1252,14 @@ vn_CmdBindIndexBuffer(VkCommandBuffer commandBuffer,
|
|||
}
|
||||
|
||||
void
|
||||
vn_CmdBindIndexBuffer2KHR(VkCommandBuffer commandBuffer,
|
||||
VkBuffer buffer,
|
||||
VkDeviceSize offset,
|
||||
VkDeviceSize size,
|
||||
VkIndexType indexType)
|
||||
vn_CmdBindIndexBuffer2(VkCommandBuffer commandBuffer,
|
||||
VkBuffer buffer,
|
||||
VkDeviceSize offset,
|
||||
VkDeviceSize size,
|
||||
VkIndexType indexType)
|
||||
{
|
||||
VN_CMD_ENQUEUE(vkCmdBindIndexBuffer2KHR, commandBuffer, buffer, offset,
|
||||
size, indexType);
|
||||
VN_CMD_ENQUEUE(vkCmdBindIndexBuffer2, commandBuffer, buffer, offset, size,
|
||||
indexType);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -2005,11 +2005,11 @@ vn_CmdDispatchBase(VkCommandBuffer commandBuffer,
|
|||
}
|
||||
|
||||
void
|
||||
vn_CmdSetLineStippleKHR(VkCommandBuffer commandBuffer,
|
||||
uint32_t lineStippleFactor,
|
||||
uint16_t lineStipplePattern)
|
||||
vn_CmdSetLineStipple(VkCommandBuffer commandBuffer,
|
||||
uint32_t lineStippleFactor,
|
||||
uint16_t lineStipplePattern)
|
||||
{
|
||||
VN_CMD_ENQUEUE(vkCmdSetLineStippleKHR, commandBuffer, lineStippleFactor,
|
||||
VN_CMD_ENQUEUE(vkCmdSetLineStipple, commandBuffer, lineStippleFactor,
|
||||
lineStipplePattern);
|
||||
}
|
||||
|
||||
|
|
@ -2275,12 +2275,12 @@ vn_CmdDrawMultiIndexedEXT(VkCommandBuffer commandBuffer,
|
|||
}
|
||||
|
||||
void
|
||||
vn_CmdPushDescriptorSetKHR(VkCommandBuffer commandBuffer,
|
||||
VkPipelineBindPoint pipelineBindPoint,
|
||||
VkPipelineLayout layout,
|
||||
uint32_t set,
|
||||
uint32_t descriptorWriteCount,
|
||||
const VkWriteDescriptorSet *pDescriptorWrites)
|
||||
vn_CmdPushDescriptorSet(VkCommandBuffer commandBuffer,
|
||||
VkPipelineBindPoint pipelineBindPoint,
|
||||
VkPipelineLayout layout,
|
||||
uint32_t set,
|
||||
uint32_t descriptorWriteCount,
|
||||
const VkWriteDescriptorSet *pDescriptorWrites)
|
||||
{
|
||||
const uint32_t img_info_count = vn_descriptor_set_count_write_images(
|
||||
descriptorWriteCount, pDescriptorWrites);
|
||||
|
|
@ -2294,7 +2294,7 @@ vn_CmdPushDescriptorSetKHR(VkCommandBuffer commandBuffer,
|
|||
pDescriptorWrites = vn_descriptor_set_get_writes(
|
||||
descriptorWriteCount, pDescriptorWrites, layout, &local);
|
||||
|
||||
VN_CMD_ENQUEUE(vkCmdPushDescriptorSetKHR, commandBuffer, pipelineBindPoint,
|
||||
VN_CMD_ENQUEUE(vkCmdPushDescriptorSet, commandBuffer, pipelineBindPoint,
|
||||
layout, set, descriptorWriteCount, pDescriptorWrites);
|
||||
|
||||
STACK_ARRAY_FINISH(writes);
|
||||
|
|
@ -2302,7 +2302,7 @@ vn_CmdPushDescriptorSetKHR(VkCommandBuffer commandBuffer,
|
|||
}
|
||||
|
||||
void
|
||||
vn_CmdPushDescriptorSetWithTemplateKHR(
|
||||
vn_CmdPushDescriptorSetWithTemplate(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkDescriptorUpdateTemplate descriptorUpdateTemplate,
|
||||
VkPipelineLayout layout,
|
||||
|
|
@ -2328,7 +2328,7 @@ vn_CmdPushDescriptorSetWithTemplateKHR(
|
|||
vn_descriptor_set_fill_update_with_template(templ, VK_NULL_HANDLE, pData,
|
||||
&update);
|
||||
|
||||
VN_CMD_ENQUEUE(vkCmdPushDescriptorSetKHR, commandBuffer,
|
||||
VN_CMD_ENQUEUE(vkCmdPushDescriptorSet, commandBuffer,
|
||||
templ->push.pipeline_bind_point, layout, set,
|
||||
update.write_count, update.writes);
|
||||
|
||||
|
|
|
|||
|
|
@ -1159,28 +1159,29 @@ vn_GetDeviceImageSparseMemoryRequirements(
|
|||
}
|
||||
|
||||
void
|
||||
vn_GetDeviceImageSubresourceLayoutKHR(VkDevice device,
|
||||
const VkDeviceImageSubresourceInfoKHR *pInfo,
|
||||
VkSubresourceLayout2KHR *pLayout)
|
||||
vn_GetDeviceImageSubresourceLayout(
|
||||
VkDevice device,
|
||||
const VkDeviceImageSubresourceInfoKHR *pInfo,
|
||||
VkSubresourceLayout2 *pLayout)
|
||||
{
|
||||
struct vn_device *dev = vn_device_from_handle(device);
|
||||
|
||||
/* TODO per-device cache */
|
||||
vn_call_vkGetDeviceImageSubresourceLayoutKHR(
|
||||
dev->primary_ring, device, pInfo, pLayout);
|
||||
vn_call_vkGetDeviceImageSubresourceLayout(dev->primary_ring, device, pInfo,
|
||||
pLayout);
|
||||
}
|
||||
|
||||
void
|
||||
vn_GetImageSubresourceLayout2KHR(VkDevice device,
|
||||
VkImage image,
|
||||
const VkImageSubresource2KHR *pSubresource,
|
||||
VkSubresourceLayout2KHR *pLayout)
|
||||
vn_GetImageSubresourceLayout2(VkDevice device,
|
||||
VkImage image,
|
||||
const VkImageSubresource2 *pSubresource,
|
||||
VkSubresourceLayout2 *pLayout)
|
||||
{
|
||||
struct vn_device *dev = vn_device_from_handle(device);
|
||||
struct vn_image *img = vn_image_from_handle(image);
|
||||
|
||||
/* override aspect mask for wsi/ahb images with tiling modifier */
|
||||
VkImageSubresource2KHR local_subresource;
|
||||
VkImageSubresource2 local_subresource;
|
||||
if ((img->wsi.is_wsi && img->wsi.tiling_override ==
|
||||
VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT) ||
|
||||
img->deferred_info) {
|
||||
|
|
@ -1210,6 +1211,6 @@ vn_GetImageSubresourceLayout2KHR(VkDevice device,
|
|||
}
|
||||
}
|
||||
|
||||
vn_call_vkGetImageSubresourceLayout2KHR(
|
||||
dev->primary_ring, device, image, pSubresource, pLayout);
|
||||
vn_call_vkGetImageSubresourceLayout2(dev->primary_ring, device, image,
|
||||
pSubresource, pLayout);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -335,15 +335,15 @@ vn_GetRenderAreaGranularity(VkDevice device,
|
|||
}
|
||||
|
||||
void
|
||||
vn_GetRenderingAreaGranularityKHR(VkDevice device,
|
||||
const VkRenderingAreaInfoKHR *pRenderingAreaInfo,
|
||||
VkExtent2D *pGranularity)
|
||||
vn_GetRenderingAreaGranularity(VkDevice device,
|
||||
const VkRenderingAreaInfo *pRenderingAreaInfo,
|
||||
VkExtent2D *pGranularity)
|
||||
{
|
||||
struct vn_device *dev = vn_device_from_handle(device);
|
||||
|
||||
/* TODO per-device cache */
|
||||
vn_call_vkGetRenderingAreaGranularityKHR(dev->primary_ring, device,
|
||||
pRenderingAreaInfo, pGranularity);
|
||||
vn_call_vkGetRenderingAreaGranularity(dev->primary_ring, device,
|
||||
pRenderingAreaInfo, pGranularity);
|
||||
}
|
||||
|
||||
/* framebuffer commands */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue