Commit 03fb6c14 authored by Georg Lehmann's avatar Georg Lehmann Committed by Alexandre Julliard

winevulkan: Update to VK spec version 1.2.197.

parent f266c87b
......@@ -128,6 +128,11 @@ void WINAPI vkCmdBeginRenderPass2KHR(VkCommandBuffer commandBuffer, const VkRend
unix_funcs->p_vkCmdBeginRenderPass2KHR(commandBuffer, pRenderPassBegin, pSubpassBeginInfo);
}
void WINAPI vkCmdBeginRenderingKHR(VkCommandBuffer commandBuffer, const VkRenderingInfoKHR *pRenderingInfo)
{
unix_funcs->p_vkCmdBeginRenderingKHR(commandBuffer, pRenderingInfo);
}
void WINAPI vkCmdBeginTransformFeedbackEXT(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer *pCounterBuffers, const VkDeviceSize *pCounterBufferOffsets)
{
unix_funcs->p_vkCmdBeginTransformFeedbackEXT(commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets);
......@@ -438,6 +443,11 @@ void WINAPI vkCmdEndRenderPass2KHR(VkCommandBuffer commandBuffer, const VkSubpas
unix_funcs->p_vkCmdEndRenderPass2KHR(commandBuffer, pSubpassEndInfo);
}
void WINAPI vkCmdEndRenderingKHR(VkCommandBuffer commandBuffer)
{
unix_funcs->p_vkCmdEndRenderingKHR(commandBuffer);
}
void WINAPI vkCmdEndTransformFeedbackEXT(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer *pCounterBuffers, const VkDeviceSize *pCounterBufferOffsets)
{
unix_funcs->p_vkCmdEndTransformFeedbackEXT(commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets);
......@@ -2058,6 +2068,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdBeginRenderPass", &vkCmdBeginRenderPass},
{"vkCmdBeginRenderPass2", &vkCmdBeginRenderPass2},
{"vkCmdBeginRenderPass2KHR", &vkCmdBeginRenderPass2KHR},
{"vkCmdBeginRenderingKHR", &vkCmdBeginRenderingKHR},
{"vkCmdBeginTransformFeedbackEXT", &vkCmdBeginTransformFeedbackEXT},
{"vkCmdBindDescriptorSets", &vkCmdBindDescriptorSets},
{"vkCmdBindIndexBuffer", &vkCmdBindIndexBuffer},
......@@ -2120,6 +2131,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdEndRenderPass", &vkCmdEndRenderPass},
{"vkCmdEndRenderPass2", &vkCmdEndRenderPass2},
{"vkCmdEndRenderPass2KHR", &vkCmdEndRenderPass2KHR},
{"vkCmdEndRenderingKHR", &vkCmdEndRenderingKHR},
{"vkCmdEndTransformFeedbackEXT", &vkCmdEndTransformFeedbackEXT},
{"vkCmdExecuteCommands", &vkCmdExecuteCommands},
{"vkCmdExecuteGeneratedCommandsNV", &vkCmdExecuteGeneratedCommandsNV},
......
......@@ -37,6 +37,7 @@ struct unix_funcs
void (WINAPI *p_vkCmdBeginRenderPass)(VkCommandBuffer, const VkRenderPassBeginInfo *, VkSubpassContents);
void (WINAPI *p_vkCmdBeginRenderPass2)(VkCommandBuffer, const VkRenderPassBeginInfo *, const VkSubpassBeginInfo *);
void (WINAPI *p_vkCmdBeginRenderPass2KHR)(VkCommandBuffer, const VkRenderPassBeginInfo *, const VkSubpassBeginInfo *);
void (WINAPI *p_vkCmdBeginRenderingKHR)(VkCommandBuffer, const VkRenderingInfoKHR *);
void (WINAPI *p_vkCmdBeginTransformFeedbackEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
void (WINAPI *p_vkCmdBindDescriptorSets)(VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t, const VkDescriptorSet *, uint32_t, const uint32_t *);
void (WINAPI *p_vkCmdBindIndexBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkIndexType);
......@@ -99,6 +100,7 @@ struct unix_funcs
void (WINAPI *p_vkCmdEndRenderPass)(VkCommandBuffer);
void (WINAPI *p_vkCmdEndRenderPass2)(VkCommandBuffer, const VkSubpassEndInfo *);
void (WINAPI *p_vkCmdEndRenderPass2KHR)(VkCommandBuffer, const VkSubpassEndInfo *);
void (WINAPI *p_vkCmdEndRenderingKHR)(VkCommandBuffer);
void (WINAPI *p_vkCmdEndTransformFeedbackEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
void (WINAPI *p_vkCmdExecuteCommands)(VkCommandBuffer, uint32_t, const VkCommandBuffer *);
void (WINAPI *p_vkCmdExecuteGeneratedCommandsNV)(VkCommandBuffer, VkBool32, const VkGeneratedCommandsInfoNV *);
......
......@@ -64,7 +64,7 @@ from enum import Enum
LOGGER = logging.Logger("vulkan")
LOGGER.addHandler(logging.StreamHandler())
VK_XML_VERSION = "1.2.196"
VK_XML_VERSION = "1.2.197"
WINE_VK_VERSION = (1, 2)
# Filenames to create.
......
......@@ -286,6 +286,69 @@ static inline void convert_VkRenderPassBeginInfo_win_to_host(const VkRenderPassB
#endif /* USE_STRUCT_CONVERSION */
#if defined(USE_STRUCT_CONVERSION)
static inline VkRenderingAttachmentInfoKHR_host *convert_VkRenderingAttachmentInfoKHR_array_win_to_host(const VkRenderingAttachmentInfoKHR *in, uint32_t count)
{
VkRenderingAttachmentInfoKHR_host *out;
unsigned int i;
if (!in) return NULL;
out = malloc(count * sizeof(*out));
for (i = 0; i < count; i++)
{
out[i].sType = in[i].sType;
out[i].pNext = in[i].pNext;
out[i].imageView = in[i].imageView;
out[i].imageLayout = in[i].imageLayout;
out[i].resolveMode = in[i].resolveMode;
out[i].resolveImageView = in[i].resolveImageView;
out[i].resolveImageLayout = in[i].resolveImageLayout;
out[i].loadOp = in[i].loadOp;
out[i].storeOp = in[i].storeOp;
out[i].clearValue = in[i].clearValue;
}
return out;
}
#endif /* USE_STRUCT_CONVERSION */
#if defined(USE_STRUCT_CONVERSION)
static inline void free_VkRenderingAttachmentInfoKHR_array(VkRenderingAttachmentInfoKHR_host *in, uint32_t count)
{
if (!in) return;
free(in);
}
#endif /* USE_STRUCT_CONVERSION */
#if defined(USE_STRUCT_CONVERSION)
static inline void convert_VkRenderingInfoKHR_win_to_host(const VkRenderingInfoKHR *in, VkRenderingInfoKHR_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->flags = in->flags;
out->renderArea = in->renderArea;
out->layerCount = in->layerCount;
out->viewMask = in->viewMask;
out->colorAttachmentCount = in->colorAttachmentCount;
out->pColorAttachments = convert_VkRenderingAttachmentInfoKHR_array_win_to_host(in->pColorAttachments, in->colorAttachmentCount);
out->pDepthAttachment = convert_VkRenderingAttachmentInfoKHR_array_win_to_host(in->pDepthAttachment, 1);
out->pStencilAttachment = convert_VkRenderingAttachmentInfoKHR_array_win_to_host(in->pStencilAttachment, 1);
}
#endif /* USE_STRUCT_CONVERSION */
#if defined(USE_STRUCT_CONVERSION)
static inline void free_VkRenderingInfoKHR(VkRenderingInfoKHR_host *in)
{
free_VkRenderingAttachmentInfoKHR_array((VkRenderingAttachmentInfoKHR_host *)in->pColorAttachments, in->colorAttachmentCount);
free_VkRenderingAttachmentInfoKHR_array((VkRenderingAttachmentInfoKHR_host *)in->pDepthAttachment, 1);
free_VkRenderingAttachmentInfoKHR_array((VkRenderingAttachmentInfoKHR_host *)in->pStencilAttachment, 1);
}
#endif /* USE_STRUCT_CONVERSION */
#if defined(USE_STRUCT_CONVERSION)
static inline void convert_VkBlitImageInfo2KHR_win_to_host(const VkBlitImageInfo2KHR *in, VkBlitImageInfo2KHR_host *out)
{
if (!in) return;
......@@ -4554,6 +4617,22 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
{
const VkPhysicalDeviceDynamicRenderingFeaturesKHR *in = (const VkPhysicalDeviceDynamicRenderingFeaturesKHR *)in_header;
VkPhysicalDeviceDynamicRenderingFeaturesKHR *out;
if (!(out = malloc(sizeof(*out)))) goto out_of_memory;
out->sType = in->sType;
out->pNext = NULL;
out->dynamicRendering = in->dynamicRendering;
out_header->pNext = (VkBaseOutStructure *)out;
out_header = out_header->pNext;
break;
}
default:
FIXME("Application requested a linked structure of type %u.\n", in_header->sType);
}
......@@ -5008,6 +5087,22 @@ static void WINAPI wine_vkCmdBeginRenderPass2KHR(VkCommandBuffer commandBuffer,
#endif
}
static void WINAPI wine_vkCmdBeginRenderingKHR(VkCommandBuffer commandBuffer, const VkRenderingInfoKHR *pRenderingInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkRenderingInfoKHR_host pRenderingInfo_host;
TRACE("%p, %p\n", commandBuffer, pRenderingInfo);
convert_VkRenderingInfoKHR_win_to_host(pRenderingInfo, &pRenderingInfo_host);
commandBuffer->device->funcs.p_vkCmdBeginRenderingKHR(commandBuffer->command_buffer, &pRenderingInfo_host);
free_VkRenderingInfoKHR(&pRenderingInfo_host);
#else
TRACE("%p, %p\n", commandBuffer, pRenderingInfo);
commandBuffer->device->funcs.p_vkCmdBeginRenderingKHR(commandBuffer->command_buffer, pRenderingInfo);
#endif
}
static void WINAPI wine_vkCmdBeginTransformFeedbackEXT(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer *pCounterBuffers, const VkDeviceSize *pCounterBufferOffsets)
{
TRACE("%p, %u, %u, %p, %p\n", commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets);
......@@ -5524,6 +5619,12 @@ static void WINAPI wine_vkCmdEndRenderPass2KHR(VkCommandBuffer commandBuffer, co
commandBuffer->device->funcs.p_vkCmdEndRenderPass2KHR(commandBuffer->command_buffer, pSubpassEndInfo);
}
static void WINAPI wine_vkCmdEndRenderingKHR(VkCommandBuffer commandBuffer)
{
TRACE("%p\n", commandBuffer);
commandBuffer->device->funcs.p_vkCmdEndRenderingKHR(commandBuffer->command_buffer);
}
static void WINAPI wine_vkCmdEndTransformFeedbackEXT(VkCommandBuffer commandBuffer, uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer *pCounterBuffers, const VkDeviceSize *pCounterBufferOffsets)
{
TRACE("%p, %u, %u, %p, %p\n", commandBuffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets);
......@@ -8350,6 +8451,7 @@ static const char * const vk_device_extensions[] =
"VK_KHR_device_group",
"VK_KHR_draw_indirect_count",
"VK_KHR_driver_properties",
"VK_KHR_dynamic_rendering",
"VK_KHR_external_fence",
"VK_KHR_external_memory",
"VK_KHR_external_semaphore",
......@@ -8541,6 +8643,7 @@ const struct unix_funcs loader_funcs =
&wine_vkCmdBeginRenderPass,
&wine_vkCmdBeginRenderPass2,
&wine_vkCmdBeginRenderPass2KHR,
&wine_vkCmdBeginRenderingKHR,
&wine_vkCmdBeginTransformFeedbackEXT,
&wine_vkCmdBindDescriptorSets,
&wine_vkCmdBindIndexBuffer,
......@@ -8603,6 +8706,7 @@ const struct unix_funcs loader_funcs =
&wine_vkCmdEndRenderPass,
&wine_vkCmdEndRenderPass2,
&wine_vkCmdEndRenderPass2KHR,
&wine_vkCmdEndRenderingKHR,
&wine_vkCmdEndTransformFeedbackEXT,
&wine_vkCmdExecuteCommands,
&wine_vkCmdExecuteGeneratedCommandsNV,
......
......@@ -244,6 +244,42 @@ typedef VkRenderPassBeginInfo VkRenderPassBeginInfo_host;
#endif
#if defined(USE_STRUCT_CONVERSION)
typedef struct VkRenderingAttachmentInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkImageView imageView;
VkImageLayout imageLayout;
VkResolveModeFlagBits resolveMode;
VkImageView resolveImageView;
VkImageLayout resolveImageLayout;
VkAttachmentLoadOp loadOp;
VkAttachmentStoreOp storeOp;
VkClearValue clearValue;
} VkRenderingAttachmentInfoKHR_host;
#else
typedef VkRenderingAttachmentInfoKHR VkRenderingAttachmentInfoKHR_host;
#endif
#if defined(USE_STRUCT_CONVERSION)
typedef struct VkRenderingInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkRenderingFlagsKHR flags;
VkRect2D renderArea;
uint32_t layerCount;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkRenderingAttachmentInfoKHR_host *pColorAttachments;
const VkRenderingAttachmentInfoKHR_host *pDepthAttachment;
const VkRenderingAttachmentInfoKHR_host *pStencilAttachment;
} VkRenderingInfoKHR_host;
#else
typedef VkRenderingInfoKHR VkRenderingInfoKHR_host;
#endif
#if defined(USE_STRUCT_CONVERSION)
typedef struct VkBlitImageInfo2KHR_host
{
VkStructureType sType;
......@@ -1756,6 +1792,7 @@ struct vulkan_device_funcs
void (*p_vkCmdBeginRenderPass)(VkCommandBuffer, const VkRenderPassBeginInfo_host *, VkSubpassContents);
void (*p_vkCmdBeginRenderPass2)(VkCommandBuffer, const VkRenderPassBeginInfo_host *, const VkSubpassBeginInfo *);
void (*p_vkCmdBeginRenderPass2KHR)(VkCommandBuffer, const VkRenderPassBeginInfo_host *, const VkSubpassBeginInfo *);
void (*p_vkCmdBeginRenderingKHR)(VkCommandBuffer, const VkRenderingInfoKHR_host *);
void (*p_vkCmdBeginTransformFeedbackEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
void (*p_vkCmdBindDescriptorSets)(VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t, const VkDescriptorSet *, uint32_t, const uint32_t *);
void (*p_vkCmdBindIndexBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkIndexType);
......@@ -1818,6 +1855,7 @@ struct vulkan_device_funcs
void (*p_vkCmdEndRenderPass)(VkCommandBuffer);
void (*p_vkCmdEndRenderPass2)(VkCommandBuffer, const VkSubpassEndInfo *);
void (*p_vkCmdEndRenderPass2KHR)(VkCommandBuffer, const VkSubpassEndInfo *);
void (*p_vkCmdEndRenderingKHR)(VkCommandBuffer);
void (*p_vkCmdEndTransformFeedbackEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
void (*p_vkCmdExecuteCommands)(VkCommandBuffer, uint32_t, const VkCommandBuffer *);
void (*p_vkCmdExecuteGeneratedCommandsNV)(VkCommandBuffer, VkBool32, const VkGeneratedCommandsInfoNV_host *);
......@@ -2165,6 +2203,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdBeginRenderPass) \
USE_VK_FUNC(vkCmdBeginRenderPass2) \
USE_VK_FUNC(vkCmdBeginRenderPass2KHR) \
USE_VK_FUNC(vkCmdBeginRenderingKHR) \
USE_VK_FUNC(vkCmdBeginTransformFeedbackEXT) \
USE_VK_FUNC(vkCmdBindDescriptorSets) \
USE_VK_FUNC(vkCmdBindIndexBuffer) \
......@@ -2227,6 +2266,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdEndRenderPass) \
USE_VK_FUNC(vkCmdEndRenderPass2) \
USE_VK_FUNC(vkCmdEndRenderPass2KHR) \
USE_VK_FUNC(vkCmdEndRenderingKHR) \
USE_VK_FUNC(vkCmdEndTransformFeedbackEXT) \
USE_VK_FUNC(vkCmdExecuteCommands) \
USE_VK_FUNC(vkCmdExecuteGeneratedCommandsNV) \
......
......@@ -2,6 +2,6 @@
"file_format_version": "1.0.0",
"ICD": {
"library_path": ".\\winevulkan.dll",
"api_version": "1.2.196"
"api_version": "1.2.197"
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment