winevulkan: Update to VK spec version spec 1.2.138.

Signed-off-by: Liam Middlebrook <lmiddlebrook@nvidia.com>
Signed-off-by: Daniel Koch <dkoch@nvidia.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
feature/deterministic
Liam Middlebrook 2020-04-20 08:35:03 -07:00 committed by Alexandre Julliard
parent 39191aa906
commit 594814c00a
5 changed files with 2646 additions and 1949 deletions

View File

@ -64,7 +64,7 @@ from enum import Enum
LOGGER = logging.Logger("vulkan")
LOGGER.addHandler(logging.StreamHandler())
VK_XML_VERSION = "1.2.134"
VK_XML_VERSION = "1.2.138"
WINE_VK_VERSION = (1, 2)
# Filenames to create.

View File

@ -132,9 +132,9 @@ static inline void free_VkCommandBufferBeginInfo(VkCommandBufferBeginInfo_host *
free_VkCommandBufferInheritanceInfo_array((VkCommandBufferInheritanceInfo_host *)in->pInheritanceInfo, 1);
}
static inline VkBindAccelerationStructureMemoryInfoNV_host *convert_VkBindAccelerationStructureMemoryInfoNV_array_win_to_host(const VkBindAccelerationStructureMemoryInfoNV *in, uint32_t count)
static inline VkBindAccelerationStructureMemoryInfoKHR_host *convert_VkBindAccelerationStructureMemoryInfoKHR_array_win_to_host(const VkBindAccelerationStructureMemoryInfoKHR *in, uint32_t count)
{
VkBindAccelerationStructureMemoryInfoNV_host *out;
VkBindAccelerationStructureMemoryInfoKHR_host *out;
unsigned int i;
if (!in) return NULL;
@ -154,7 +154,7 @@ static inline VkBindAccelerationStructureMemoryInfoNV_host *convert_VkBindAccele
return out;
}
static inline void free_VkBindAccelerationStructureMemoryInfoNV_array(VkBindAccelerationStructureMemoryInfoNV_host *in, uint32_t count)
static inline void free_VkBindAccelerationStructureMemoryInfoKHR_array(VkBindAccelerationStructureMemoryInfoKHR_host *in, uint32_t count)
{
if (!in) return;
@ -376,6 +376,56 @@ static inline void free_VkBufferImageCopy_array(VkBufferImageCopy_host *in, uint
heap_free(in);
}
static inline VkIndirectCommandsStreamNV_host *convert_VkIndirectCommandsStreamNV_array_win_to_host(const VkIndirectCommandsStreamNV *in, uint32_t count)
{
VkIndirectCommandsStreamNV_host *out;
unsigned int i;
if (!in) return NULL;
out = heap_alloc(count * sizeof(*out));
for (i = 0; i < count; i++)
{
out[i].buffer = in[i].buffer;
out[i].offset = in[i].offset;
}
return out;
}
static inline void free_VkIndirectCommandsStreamNV_array(VkIndirectCommandsStreamNV_host *in, uint32_t count)
{
if (!in) return;
heap_free(in);
}
static inline void convert_VkGeneratedCommandsInfoNV_win_to_host(const VkGeneratedCommandsInfoNV *in, VkGeneratedCommandsInfoNV_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->pipelineBindPoint = in->pipelineBindPoint;
out->pipeline = in->pipeline;
out->indirectCommandsLayout = in->indirectCommandsLayout;
out->streamCount = in->streamCount;
out->pStreams = convert_VkIndirectCommandsStreamNV_array_win_to_host(in->pStreams, in->streamCount);
out->sequencesCount = in->sequencesCount;
out->preprocessBuffer = in->preprocessBuffer;
out->preprocessOffset = in->preprocessOffset;
out->preprocessSize = in->preprocessSize;
out->sequencesCountBuffer = in->sequencesCountBuffer;
out->sequencesCountOffset = in->sequencesCountOffset;
out->sequencesIndexBuffer = in->sequencesIndexBuffer;
out->sequencesIndexOffset = in->sequencesIndexOffset;
}
static inline void free_VkGeneratedCommandsInfoNV(VkGeneratedCommandsInfoNV_host *in)
{
free_VkIndirectCommandsStreamNV_array((VkIndirectCommandsStreamNV_host *)in->pStreams, in->streamCount);
}
static inline VkBufferMemoryBarrier_host *convert_VkBufferMemoryBarrier_array_win_to_host(const VkBufferMemoryBarrier *in, uint32_t count)
{
VkBufferMemoryBarrier_host *out;
@ -748,6 +798,62 @@ static inline void convert_VkImageViewCreateInfo_win_to_host(const VkImageViewCr
out->subresourceRange = in->subresourceRange;
}
static inline VkIndirectCommandsLayoutTokenNV_host *convert_VkIndirectCommandsLayoutTokenNV_array_win_to_host(const VkIndirectCommandsLayoutTokenNV *in, uint32_t count)
{
VkIndirectCommandsLayoutTokenNV_host *out;
unsigned int i;
if (!in) return NULL;
out = heap_alloc(count * sizeof(*out));
for (i = 0; i < count; i++)
{
out[i].sType = in[i].sType;
out[i].pNext = in[i].pNext;
out[i].tokenType = in[i].tokenType;
out[i].stream = in[i].stream;
out[i].offset = in[i].offset;
out[i].vertexBindingUnit = in[i].vertexBindingUnit;
out[i].vertexDynamicStride = in[i].vertexDynamicStride;
out[i].pushconstantPipelineLayout = in[i].pushconstantPipelineLayout;
out[i].pushconstantShaderStageFlags = in[i].pushconstantShaderStageFlags;
out[i].pushconstantOffset = in[i].pushconstantOffset;
out[i].pushconstantSize = in[i].pushconstantSize;
out[i].indirectStateFlags = in[i].indirectStateFlags;
out[i].indexTypeCount = in[i].indexTypeCount;
out[i].pIndexTypes = in[i].pIndexTypes;
out[i].pIndexTypeValues = in[i].pIndexTypeValues;
}
return out;
}
static inline void free_VkIndirectCommandsLayoutTokenNV_array(VkIndirectCommandsLayoutTokenNV_host *in, uint32_t count)
{
if (!in) return;
heap_free(in);
}
static inline void convert_VkIndirectCommandsLayoutCreateInfoNV_win_to_host(const VkIndirectCommandsLayoutCreateInfoNV *in, VkIndirectCommandsLayoutCreateInfoNV_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->flags = in->flags;
out->pipelineBindPoint = in->pipelineBindPoint;
out->tokenCount = in->tokenCount;
out->pTokens = convert_VkIndirectCommandsLayoutTokenNV_array_win_to_host(in->pTokens, in->tokenCount);
out->streamCount = in->streamCount;
out->pStreamStrides = in->pStreamStrides;
}
static inline void free_VkIndirectCommandsLayoutCreateInfoNV(VkIndirectCommandsLayoutCreateInfoNV_host *in)
{
free_VkIndirectCommandsLayoutTokenNV_array((VkIndirectCommandsLayoutTokenNV_host *)in->pTokens, in->tokenCount);
}
static inline VkRayTracingPipelineCreateInfoNV_host *convert_VkRayTracingPipelineCreateInfoNV_array_win_to_host(const VkRayTracingPipelineCreateInfoNV *in, uint32_t count)
{
VkRayTracingPipelineCreateInfoNV_host *out;
@ -918,6 +1024,18 @@ static inline void convert_VkDeviceMemoryOpaqueCaptureAddressInfo_win_to_host(co
out->memory = in->memory;
}
static inline void convert_VkGeneratedCommandsMemoryRequirementsInfoNV_win_to_host(const VkGeneratedCommandsMemoryRequirementsInfoNV *in, VkGeneratedCommandsMemoryRequirementsInfoNV_host *out)
{
if (!in) return;
out->sType = in->sType;
out->pNext = in->pNext;
out->pipelineBindPoint = in->pipelineBindPoint;
out->pipeline = in->pipeline;
out->indirectCommandsLayout = in->indirectCommandsLayout;
out->maxSequencesCount = in->maxSequencesCount;
}
static inline void convert_VkImageMemoryRequirementsInfo2_win_to_host(const VkImageMemoryRequirementsInfo2 *in, VkImageMemoryRequirementsInfo2_host *out)
{
if (!in) return;
@ -1435,6 +1553,22 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO:
break;
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV:
{
const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV *in = (const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV *)in_header;
VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV *out;
if (!(out = heap_alloc(sizeof(*out)))) goto out_of_memory;
out->sType = in->sType;
out->pNext = NULL;
out->deviceGeneratedCommands = in->deviceGeneratedCommands;
out_header->pNext = (VkBaseOutStructure *)out;
out_header = out_header->pNext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:
{
const VkPhysicalDeviceFeatures2 *in = (const VkPhysicalDeviceFeatures2 *)in_header;
@ -2387,6 +2521,22 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT:
{
const VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT *in = (const VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT *)in_header;
VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT *out;
if (!(out = heap_alloc(sizeof(*out)))) goto out_of_memory;
out->sType = in->sType;
out->pNext = NULL;
out->pipelineCreationCacheControl = in->pipelineCreationCacheControl;
out_header->pNext = (VkBaseOutStructure *)out;
out_header = out_header->pNext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES:
{
const VkPhysicalDeviceVulkan11Features *in = (const VkPhysicalDeviceVulkan11Features *)in_header;
@ -2492,6 +2642,38 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV:
{
const VkPhysicalDeviceDiagnosticsConfigFeaturesNV *in = (const VkPhysicalDeviceDiagnosticsConfigFeaturesNV *)in_header;
VkPhysicalDeviceDiagnosticsConfigFeaturesNV *out;
if (!(out = heap_alloc(sizeof(*out)))) goto out_of_memory;
out->sType = in->sType;
out->pNext = NULL;
out->diagnosticsConfig = in->diagnosticsConfig;
out_header->pNext = (VkBaseOutStructure *)out;
out_header = out_header->pNext;
break;
}
case VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV:
{
const VkDeviceDiagnosticsConfigCreateInfoNV *in = (const VkDeviceDiagnosticsConfigCreateInfoNV *)in_header;
VkDeviceDiagnosticsConfigCreateInfoNV *out;
if (!(out = heap_alloc(sizeof(*out)))) goto out_of_memory;
out->sType = in->sType;
out->pNext = NULL;
out->flags = in->flags;
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);
}
@ -2653,17 +2835,17 @@ VkResult WINAPI wine_vkBeginCommandBuffer(VkCommandBuffer commandBuffer, const V
#endif
}
static VkResult WINAPI wine_vkBindAccelerationStructureMemoryNV(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoNV *pBindInfos)
static VkResult WINAPI wine_vkBindAccelerationStructureMemoryNV(VkDevice device, uint32_t bindInfoCount, const VkBindAccelerationStructureMemoryInfoKHR *pBindInfos)
{
#if defined(USE_STRUCT_CONVERSION)
VkResult result;
VkBindAccelerationStructureMemoryInfoNV_host *pBindInfos_host;
VkBindAccelerationStructureMemoryInfoKHR_host *pBindInfos_host;
TRACE("%p, %u, %p\n", device, bindInfoCount, pBindInfos);
pBindInfos_host = convert_VkBindAccelerationStructureMemoryInfoNV_array_win_to_host(pBindInfos, bindInfoCount);
pBindInfos_host = convert_VkBindAccelerationStructureMemoryInfoKHR_array_win_to_host(pBindInfos, bindInfoCount);
result = device->funcs.p_vkBindAccelerationStructureMemoryNV(device->device, bindInfoCount, pBindInfos_host);
free_VkBindAccelerationStructureMemoryInfoNV_array(pBindInfos_host, bindInfoCount);
free_VkBindAccelerationStructureMemoryInfoKHR_array(pBindInfos_host, bindInfoCount);
return result;
#else
TRACE("%p, %u, %p\n", device, bindInfoCount, pBindInfos);
@ -2851,6 +3033,12 @@ void WINAPI wine_vkCmdBindPipeline(VkCommandBuffer commandBuffer, VkPipelineBind
commandBuffer->device->funcs.p_vkCmdBindPipeline(commandBuffer->command_buffer, pipelineBindPoint, pipeline);
}
static void WINAPI wine_vkCmdBindPipelineShaderGroupNV(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, uint32_t groupIndex)
{
TRACE("%p, %#x, 0x%s, %u\n", commandBuffer, pipelineBindPoint, wine_dbgstr_longlong(pipeline), groupIndex);
commandBuffer->device->funcs.p_vkCmdBindPipelineShaderGroupNV(commandBuffer->command_buffer, pipelineBindPoint, pipeline, groupIndex);
}
static void WINAPI wine_vkCmdBindShadingRateImageNV(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout)
{
TRACE("%p, 0x%s, %#x\n", commandBuffer, wine_dbgstr_longlong(imageView), imageLayout);
@ -2875,7 +3063,7 @@ void WINAPI wine_vkCmdBlitImage(VkCommandBuffer commandBuffer, VkImage srcImage,
commandBuffer->device->funcs.p_vkCmdBlitImage(commandBuffer->command_buffer, srcImage, srcImageLayout, dstImage, dstImageLayout, regionCount, pRegions, filter);
}
static void WINAPI wine_vkCmdBuildAccelerationStructureNV(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV *pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkBuffer scratch, VkDeviceSize scratchOffset)
static void WINAPI wine_vkCmdBuildAccelerationStructureNV(VkCommandBuffer commandBuffer, const VkAccelerationStructureInfoNV *pInfo, VkBuffer instanceData, VkDeviceSize instanceOffset, VkBool32 update, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkBuffer scratch, VkDeviceSize scratchOffset)
{
#if defined(USE_STRUCT_CONVERSION)
VkAccelerationStructureInfoNV_host pInfo_host;
@ -2909,7 +3097,7 @@ void WINAPI wine_vkCmdClearDepthStencilImage(VkCommandBuffer commandBuffer, VkIm
commandBuffer->device->funcs.p_vkCmdClearDepthStencilImage(commandBuffer->command_buffer, image, imageLayout, pDepthStencil, rangeCount, pRanges);
}
static void WINAPI wine_vkCmdCopyAccelerationStructureNV(VkCommandBuffer commandBuffer, VkAccelerationStructureNV dst, VkAccelerationStructureNV src, VkCopyAccelerationStructureModeNV mode)
static void WINAPI wine_vkCmdCopyAccelerationStructureNV(VkCommandBuffer commandBuffer, VkAccelerationStructureKHR dst, VkAccelerationStructureKHR src, VkCopyAccelerationStructureModeKHR mode)
{
TRACE("%p, 0x%s, 0x%s, %#x\n", commandBuffer, wine_dbgstr_longlong(dst), wine_dbgstr_longlong(src), mode);
commandBuffer->device->funcs.p_vkCmdCopyAccelerationStructureNV(commandBuffer->command_buffer, dst, src, mode);
@ -3125,6 +3313,22 @@ static void WINAPI wine_vkCmdEndTransformFeedbackEXT(VkCommandBuffer commandBuff
commandBuffer->device->funcs.p_vkCmdEndTransformFeedbackEXT(commandBuffer->command_buffer, firstCounterBuffer, counterBufferCount, pCounterBuffers, pCounterBufferOffsets);
}
static void WINAPI wine_vkCmdExecuteGeneratedCommandsNV(VkCommandBuffer commandBuffer, VkBool32 isPreprocessed, const VkGeneratedCommandsInfoNV *pGeneratedCommandsInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkGeneratedCommandsInfoNV_host pGeneratedCommandsInfo_host;
TRACE("%p, %u, %p\n", commandBuffer, isPreprocessed, pGeneratedCommandsInfo);
convert_VkGeneratedCommandsInfoNV_win_to_host(pGeneratedCommandsInfo, &pGeneratedCommandsInfo_host);
commandBuffer->device->funcs.p_vkCmdExecuteGeneratedCommandsNV(commandBuffer->command_buffer, isPreprocessed, &pGeneratedCommandsInfo_host);
free_VkGeneratedCommandsInfoNV(&pGeneratedCommandsInfo_host);
#else
TRACE("%p, %u, %p\n", commandBuffer, isPreprocessed, pGeneratedCommandsInfo);
commandBuffer->device->funcs.p_vkCmdExecuteGeneratedCommandsNV(commandBuffer->command_buffer, isPreprocessed, pGeneratedCommandsInfo);
#endif
}
void WINAPI wine_vkCmdFillBuffer(VkCommandBuffer commandBuffer, VkBuffer dstBuffer, VkDeviceSize dstOffset, VkDeviceSize size, uint32_t data)
{
TRACE("%p, 0x%s, 0x%s, 0x%s, %u\n", commandBuffer, wine_dbgstr_longlong(dstBuffer), wine_dbgstr_longlong(dstOffset), wine_dbgstr_longlong(size), data);
@ -3168,6 +3372,22 @@ void WINAPI wine_vkCmdPipelineBarrier(VkCommandBuffer commandBuffer, VkPipelineS
#endif
}
static void WINAPI wine_vkCmdPreprocessGeneratedCommandsNV(VkCommandBuffer commandBuffer, const VkGeneratedCommandsInfoNV *pGeneratedCommandsInfo)
{
#if defined(USE_STRUCT_CONVERSION)
VkGeneratedCommandsInfoNV_host pGeneratedCommandsInfo_host;
TRACE("%p, %p\n", commandBuffer, pGeneratedCommandsInfo);
convert_VkGeneratedCommandsInfoNV_win_to_host(pGeneratedCommandsInfo, &pGeneratedCommandsInfo_host);
commandBuffer->device->funcs.p_vkCmdPreprocessGeneratedCommandsNV(commandBuffer->command_buffer, &pGeneratedCommandsInfo_host);
free_VkGeneratedCommandsInfoNV(&pGeneratedCommandsInfo_host);
#else
TRACE("%p, %p\n", commandBuffer, pGeneratedCommandsInfo);
commandBuffer->device->funcs.p_vkCmdPreprocessGeneratedCommandsNV(commandBuffer->command_buffer, pGeneratedCommandsInfo);
#endif
}
void WINAPI wine_vkCmdPushConstants(VkCommandBuffer commandBuffer, VkPipelineLayout layout, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void *pValues)
{
TRACE("%p, 0x%s, %#x, %u, %u, %p\n", commandBuffer, wine_dbgstr_longlong(layout), stageFlags, offset, size, pValues);
@ -3405,7 +3625,7 @@ void WINAPI wine_vkCmdWaitEvents(VkCommandBuffer commandBuffer, uint32_t eventCo
#endif
}
static void WINAPI wine_vkCmdWriteAccelerationStructuresPropertiesNV(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureNV *pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery)
static void WINAPI wine_vkCmdWriteAccelerationStructuresPropertiesNV(VkCommandBuffer commandBuffer, uint32_t accelerationStructureCount, const VkAccelerationStructureKHR *pAccelerationStructures, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery)
{
TRACE("%p, %u, %p, %#x, 0x%s, %u\n", commandBuffer, accelerationStructureCount, pAccelerationStructures, queryType, wine_dbgstr_longlong(queryPool), firstQuery);
commandBuffer->device->funcs.p_vkCmdWriteAccelerationStructuresPropertiesNV(commandBuffer->command_buffer, accelerationStructureCount, pAccelerationStructures, queryType, queryPool, firstQuery);
@ -3620,6 +3840,24 @@ VkResult WINAPI wine_vkCreateImageView(VkDevice device, const VkImageViewCreateI
#endif
}
static VkResult WINAPI wine_vkCreateIndirectCommandsLayoutNV(VkDevice device, const VkIndirectCommandsLayoutCreateInfoNV *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkIndirectCommandsLayoutNV *pIndirectCommandsLayout)
{
#if defined(USE_STRUCT_CONVERSION)
VkResult result;
VkIndirectCommandsLayoutCreateInfoNV_host pCreateInfo_host;
TRACE("%p, %p, %p, %p\n", device, pCreateInfo, pAllocator, pIndirectCommandsLayout);
convert_VkIndirectCommandsLayoutCreateInfoNV_win_to_host(pCreateInfo, &pCreateInfo_host);
result = device->funcs.p_vkCreateIndirectCommandsLayoutNV(device->device, &pCreateInfo_host, NULL, pIndirectCommandsLayout);
free_VkIndirectCommandsLayoutCreateInfoNV(&pCreateInfo_host);
return result;
#else
TRACE("%p, %p, %p, %p\n", device, pCreateInfo, pAllocator, pIndirectCommandsLayout);
return device->funcs.p_vkCreateIndirectCommandsLayoutNV(device->device, pCreateInfo, NULL, pIndirectCommandsLayout);
#endif
}
VkResult WINAPI wine_vkCreatePipelineCache(VkDevice device, const VkPipelineCacheCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkPipelineCache *pPipelineCache)
{
TRACE("%p, %p, %p, %p\n", device, pCreateInfo, pAllocator, pPipelineCache);
@ -3733,7 +3971,7 @@ VkResult WINAPI wine_vkCreateWin32SurfaceKHR(VkInstance instance, const VkWin32S
return instance->funcs.p_vkCreateWin32SurfaceKHR(instance->instance, pCreateInfo, NULL, pSurface);
}
static void WINAPI wine_vkDestroyAccelerationStructureNV(VkDevice device, VkAccelerationStructureNV accelerationStructure, const VkAllocationCallbacks *pAllocator)
static void WINAPI wine_vkDestroyAccelerationStructureNV(VkDevice device, VkAccelerationStructureKHR accelerationStructure, const VkAllocationCallbacks *pAllocator)
{
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(accelerationStructure), pAllocator);
device->funcs.p_vkDestroyAccelerationStructureNV(device->device, accelerationStructure, NULL);
@ -3805,6 +4043,12 @@ void WINAPI wine_vkDestroyImageView(VkDevice device, VkImageView imageView, cons
device->funcs.p_vkDestroyImageView(device->device, imageView, NULL);
}
static void WINAPI wine_vkDestroyIndirectCommandsLayoutNV(VkDevice device, VkIndirectCommandsLayoutNV indirectCommandsLayout, const VkAllocationCallbacks *pAllocator)
{
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(indirectCommandsLayout), pAllocator);
device->funcs.p_vkDestroyIndirectCommandsLayoutNV(device->device, indirectCommandsLayout, NULL);
}
void WINAPI wine_vkDestroyPipeline(VkDevice device, VkPipeline pipeline, const VkAllocationCallbacks *pAllocator)
{
TRACE("%p, 0x%s, %p\n", device, wine_dbgstr_longlong(pipeline), pAllocator);
@ -3937,7 +4181,7 @@ void WINAPI wine_vkFreeMemory(VkDevice device, VkDeviceMemory memory, const VkAl
device->funcs.p_vkFreeMemory(device->device, memory, NULL);
}
static VkResult WINAPI wine_vkGetAccelerationStructureHandleNV(VkDevice device, VkAccelerationStructureNV accelerationStructure, size_t dataSize, void *pData)
static VkResult WINAPI wine_vkGetAccelerationStructureHandleNV(VkDevice device, VkAccelerationStructureKHR accelerationStructure, size_t dataSize, void *pData)
{
TRACE("%p, 0x%s, 0x%s, %p\n", device, wine_dbgstr_longlong(accelerationStructure), wine_dbgstr_longlong(dataSize), pData);
return device->funcs.p_vkGetAccelerationStructureHandleNV(device->device, accelerationStructure, dataSize, pData);
@ -4185,6 +4429,24 @@ VkResult WINAPI wine_vkGetFenceStatus(VkDevice device, VkFence fence)
return device->funcs.p_vkGetFenceStatus(device->device, fence);
}
static void WINAPI wine_vkGetGeneratedCommandsMemoryRequirementsNV(VkDevice device, const VkGeneratedCommandsMemoryRequirementsInfoNV *pInfo, VkMemoryRequirements2 *pMemoryRequirements)
{
#if defined(USE_STRUCT_CONVERSION)
VkGeneratedCommandsMemoryRequirementsInfoNV_host pInfo_host;
VkMemoryRequirements2_host pMemoryRequirements_host;
TRACE("%p, %p, %p\n", device, pInfo, pMemoryRequirements);
convert_VkGeneratedCommandsMemoryRequirementsInfoNV_win_to_host(pInfo, &pInfo_host);
convert_VkMemoryRequirements2_win_to_host(pMemoryRequirements, &pMemoryRequirements_host);
device->funcs.p_vkGetGeneratedCommandsMemoryRequirementsNV(device->device, &pInfo_host, &pMemoryRequirements_host);
convert_VkMemoryRequirements2_host_to_win(&pMemoryRequirements_host, pMemoryRequirements);
#else
TRACE("%p, %p, %p\n", device, pInfo, pMemoryRequirements);
device->funcs.p_vkGetGeneratedCommandsMemoryRequirementsNV(device->device, pInfo, pMemoryRequirements);
#endif
}
void WINAPI wine_vkGetImageMemoryRequirements(VkDevice device, VkImage image, VkMemoryRequirements *pMemoryRequirements)
{
#if defined(USE_STRUCT_CONVERSION)
@ -4995,6 +5257,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdBindDescriptorSets", &wine_vkCmdBindDescriptorSets},
{"vkCmdBindIndexBuffer", &wine_vkCmdBindIndexBuffer},
{"vkCmdBindPipeline", &wine_vkCmdBindPipeline},
{"vkCmdBindPipelineShaderGroupNV", &wine_vkCmdBindPipelineShaderGroupNV},
{"vkCmdBindShadingRateImageNV", &wine_vkCmdBindShadingRateImageNV},
{"vkCmdBindTransformFeedbackBuffersEXT", &wine_vkCmdBindTransformFeedbackBuffersEXT},
{"vkCmdBindVertexBuffers", &wine_vkCmdBindVertexBuffers},
@ -5035,11 +5298,13 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdEndRenderPass2KHR", &wine_vkCmdEndRenderPass2KHR},
{"vkCmdEndTransformFeedbackEXT", &wine_vkCmdEndTransformFeedbackEXT},
{"vkCmdExecuteCommands", &wine_vkCmdExecuteCommands},
{"vkCmdExecuteGeneratedCommandsNV", &wine_vkCmdExecuteGeneratedCommandsNV},
{"vkCmdFillBuffer", &wine_vkCmdFillBuffer},
{"vkCmdNextSubpass", &wine_vkCmdNextSubpass},
{"vkCmdNextSubpass2", &wine_vkCmdNextSubpass2},
{"vkCmdNextSubpass2KHR", &wine_vkCmdNextSubpass2KHR},
{"vkCmdPipelineBarrier", &wine_vkCmdPipelineBarrier},
{"vkCmdPreprocessGeneratedCommandsNV", &wine_vkCmdPreprocessGeneratedCommandsNV},
{"vkCmdPushConstants", &wine_vkCmdPushConstants},
{"vkCmdPushDescriptorSetKHR", &wine_vkCmdPushDescriptorSetKHR},
{"vkCmdPushDescriptorSetWithTemplateKHR", &wine_vkCmdPushDescriptorSetWithTemplateKHR},
@ -5091,6 +5356,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCreateGraphicsPipelines", &wine_vkCreateGraphicsPipelines},
{"vkCreateImage", &wine_vkCreateImage},
{"vkCreateImageView", &wine_vkCreateImageView},
{"vkCreateIndirectCommandsLayoutNV", &wine_vkCreateIndirectCommandsLayoutNV},
{"vkCreatePipelineCache", &wine_vkCreatePipelineCache},
{"vkCreatePipelineLayout", &wine_vkCreatePipelineLayout},
{"vkCreateQueryPool", &wine_vkCreateQueryPool},
@ -5119,6 +5385,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkDestroyFramebuffer", &wine_vkDestroyFramebuffer},
{"vkDestroyImage", &wine_vkDestroyImage},
{"vkDestroyImageView", &wine_vkDestroyImageView},
{"vkDestroyIndirectCommandsLayoutNV", &wine_vkDestroyIndirectCommandsLayoutNV},
{"vkDestroyPipeline", &wine_vkDestroyPipeline},
{"vkDestroyPipelineCache", &wine_vkDestroyPipelineCache},
{"vkDestroyPipelineLayout", &wine_vkDestroyPipelineLayout},
@ -5161,6 +5428,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkGetDeviceQueue2", &wine_vkGetDeviceQueue2},
{"vkGetEventStatus", &wine_vkGetEventStatus},
{"vkGetFenceStatus", &wine_vkGetFenceStatus},
{"vkGetGeneratedCommandsMemoryRequirementsNV", &wine_vkGetGeneratedCommandsMemoryRequirementsNV},
{"vkGetImageMemoryRequirements", &wine_vkGetImageMemoryRequirements},
{"vkGetImageMemoryRequirements2", &wine_vkGetImageMemoryRequirements2},
{"vkGetImageMemoryRequirements2KHR", &wine_vkGetImageMemoryRequirements2KHR},
@ -5343,6 +5611,7 @@ static const char * const vk_device_extensions[] =
"VK_EXT_memory_budget",
"VK_EXT_memory_priority",
"VK_EXT_pci_bus_info",
"VK_EXT_pipeline_creation_cache_control",
"VK_EXT_post_depth_coverage",
"VK_EXT_queue_family_foreign",
"VK_EXT_sample_locations",
@ -5421,6 +5690,8 @@ static const char * const vk_device_extensions[] =
"VK_NV_dedicated_allocation",
"VK_NV_dedicated_allocation_image_aliasing",
"VK_NV_device_diagnostic_checkpoints",
"VK_NV_device_diagnostics_config",
"VK_NV_device_generated_commands",
"VK_NV_fill_rectangle",
"VK_NV_fragment_coverage_to_color",
"VK_NV_fragment_shader_barycentric",
@ -5438,6 +5709,7 @@ static const char * const vk_device_extensions[] =
"VK_NV_shading_rate_image",
"VK_NV_viewport_array2",
"VK_NV_viewport_swizzle",
"VK_QCOM_render_pass_store_ops",
"VK_QCOM_render_pass_transform",
};

View File

@ -142,17 +142,18 @@ typedef struct VkCommandBufferBeginInfo_host
} VkCommandBufferBeginInfo_host;
typedef struct VkBindAccelerationStructureMemoryInfoNV_host
typedef struct VkBindAccelerationStructureMemoryInfoKHR_host
{
VkStructureType sType;
const void *pNext;
VkAccelerationStructureNV accelerationStructure;
VkAccelerationStructureKHR accelerationStructure;
VkDeviceMemory memory;
VkDeviceSize memoryOffset;
uint32_t deviceIndexCount;
const uint32_t *pDeviceIndices;
} VkBindAccelerationStructureMemoryInfoNV_host;
} VkBindAccelerationStructureMemoryInfoKHR_host;
typedef VkBindAccelerationStructureMemoryInfoKHR VkBindAccelerationStructureMemoryInfoNV;
typedef struct VkBindBufferMemoryInfo_host
{
@ -238,9 +239,9 @@ typedef struct VkGeometryNV_host
{
VkStructureType sType;
const void *pNext;
VkGeometryTypeNV geometryType;
VkGeometryTypeKHR geometryType;
VkGeometryDataNV_host geometry;
VkGeometryFlagsNV flags;
VkGeometryFlagsKHR flags;
} VkGeometryNV_host;
@ -275,6 +276,33 @@ typedef struct VkBufferImageCopy_host
} VkBufferImageCopy_host;
typedef struct VkIndirectCommandsStreamNV_host
{
VkBuffer buffer;
VkDeviceSize offset;
} VkIndirectCommandsStreamNV_host;
typedef struct VkGeneratedCommandsInfoNV_host
{
VkStructureType sType;
const void *pNext;
VkPipelineBindPoint pipelineBindPoint;
VkPipeline pipeline;
VkIndirectCommandsLayoutNV indirectCommandsLayout;
uint32_t streamCount;
const VkIndirectCommandsStreamNV_host *pStreams;
uint32_t sequencesCount;
VkBuffer preprocessBuffer;
VkDeviceSize preprocessOffset;
VkDeviceSize preprocessSize;
VkBuffer sequencesCountBuffer;
VkDeviceSize sequencesCountOffset;
VkBuffer sequencesIndexBuffer;
VkDeviceSize sequencesIndexOffset;
} VkGeneratedCommandsInfoNV_host;
typedef struct VkBufferMemoryBarrier_host
{
VkStructureType sType;
@ -478,6 +506,39 @@ typedef struct VkImageViewCreateInfo_host
} VkImageViewCreateInfo_host;
typedef struct VkIndirectCommandsLayoutTokenNV_host
{
VkStructureType sType;
const void *pNext;
VkIndirectCommandsTokenTypeNV tokenType;
uint32_t stream;
uint32_t offset;
uint32_t vertexBindingUnit;
VkBool32 vertexDynamicStride;
VkPipelineLayout pushconstantPipelineLayout;
VkShaderStageFlags pushconstantShaderStageFlags;
uint32_t pushconstantOffset;
uint32_t pushconstantSize;
VkIndirectStateFlagsNV indirectStateFlags;
uint32_t indexTypeCount;
const VkIndexType *pIndexTypes;
const uint32_t *pIndexTypeValues;
} VkIndirectCommandsLayoutTokenNV_host;
typedef struct VkIndirectCommandsLayoutCreateInfoNV_host
{
VkStructureType sType;
const void *pNext;
VkIndirectCommandsLayoutUsageFlagsNV flags;
VkPipelineBindPoint pipelineBindPoint;
uint32_t tokenCount;
const VkIndirectCommandsLayoutTokenNV_host *pTokens;
uint32_t streamCount;
const uint32_t *pStreamStrides;
} VkIndirectCommandsLayoutCreateInfoNV_host;
typedef struct VkRayTracingPipelineCreateInfoNV_host
{
VkStructureType sType;
@ -589,6 +650,17 @@ typedef struct VkDeviceMemoryOpaqueCaptureAddressInfo_host
typedef VkDeviceMemoryOpaqueCaptureAddressInfo VkDeviceMemoryOpaqueCaptureAddressInfoKHR;
typedef struct VkGeneratedCommandsMemoryRequirementsInfoNV_host
{
VkStructureType sType;
const void *pNext;
VkPipelineBindPoint pipelineBindPoint;
VkPipeline pipeline;
VkIndirectCommandsLayoutNV indirectCommandsLayout;
uint32_t maxSequencesCount;
} VkGeneratedCommandsMemoryRequirementsInfoNV_host;
typedef struct VkImageMemoryRequirementsInfo2_host
{
VkStructureType sType;
@ -948,9 +1020,9 @@ struct vulkan_device_funcs
VkResult (*p_vkBeginCommandBuffer)(VkCommandBuffer, const VkCommandBufferBeginInfo *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoNV_host *);
VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoKHR_host *);
#else
VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoNV *);
VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoKHR *);
#endif
VkResult (*p_vkBindBufferMemory)(VkDevice, VkBuffer, VkDeviceMemory, VkDeviceSize);
#if defined(USE_STRUCT_CONVERSION)
@ -1000,19 +1072,20 @@ struct vulkan_device_funcs
void (*p_vkCmdBindDescriptorSets)(VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t, const VkDescriptorSet *, uint32_t, const uint32_t *);
void (*p_vkCmdBindIndexBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkIndexType);
void (*p_vkCmdBindPipeline)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline);
void (*p_vkCmdBindPipelineShaderGroupNV)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline, uint32_t);
void (*p_vkCmdBindShadingRateImageNV)(VkCommandBuffer, VkImageView, VkImageLayout);
void (*p_vkCmdBindTransformFeedbackBuffersEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *, const VkDeviceSize *);
void (*p_vkCmdBindVertexBuffers)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
void (*p_vkCmdBlitImage)(VkCommandBuffer, VkImage, VkImageLayout, VkImage, VkImageLayout, uint32_t, const VkImageBlit *, VkFilter);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV_host *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureNV, VkAccelerationStructureNV, VkBuffer, VkDeviceSize);
void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV_host *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureKHR, VkAccelerationStructureKHR, VkBuffer, VkDeviceSize);
#else
void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureNV, VkAccelerationStructureNV, VkBuffer, VkDeviceSize);
void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureKHR, VkAccelerationStructureKHR, VkBuffer, VkDeviceSize);
#endif
void (*p_vkCmdClearAttachments)(VkCommandBuffer, uint32_t, const VkClearAttachment *, uint32_t, const VkClearRect *);
void (*p_vkCmdClearColorImage)(VkCommandBuffer, VkImage, VkImageLayout, const VkClearColorValue *, uint32_t, const VkImageSubresourceRange *);
void (*p_vkCmdClearDepthStencilImage)(VkCommandBuffer, VkImage, VkImageLayout, const VkClearDepthStencilValue *, uint32_t, const VkImageSubresourceRange *);
void (*p_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer, VkAccelerationStructureNV, VkAccelerationStructureNV, VkCopyAccelerationStructureModeNV);
void (*p_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer, VkAccelerationStructureKHR, VkAccelerationStructureKHR, VkCopyAccelerationStructureModeKHR);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdCopyBuffer)(VkCommandBuffer, VkBuffer, VkBuffer, uint32_t, const VkBufferCopy_host *);
#else
@ -1056,6 +1129,11 @@ struct vulkan_device_funcs
void (*p_vkCmdEndRenderPass2KHR)(VkCommandBuffer, const VkSubpassEndInfo *);
void (*p_vkCmdEndTransformFeedbackEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
void (*p_vkCmdExecuteCommands)(VkCommandBuffer, uint32_t, const VkCommandBuffer *);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdExecuteGeneratedCommandsNV)(VkCommandBuffer, VkBool32, const VkGeneratedCommandsInfoNV_host *);
#else
void (*p_vkCmdExecuteGeneratedCommandsNV)(VkCommandBuffer, VkBool32, const VkGeneratedCommandsInfoNV *);
#endif
void (*p_vkCmdFillBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkDeviceSize, uint32_t);
void (*p_vkCmdNextSubpass)(VkCommandBuffer, VkSubpassContents);
void (*p_vkCmdNextSubpass2)(VkCommandBuffer, const VkSubpassBeginInfo *, const VkSubpassEndInfo *);
@ -1064,6 +1142,11 @@ struct vulkan_device_funcs
void (*p_vkCmdPipelineBarrier)(VkCommandBuffer, VkPipelineStageFlags, VkPipelineStageFlags, VkDependencyFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier_host *, uint32_t, const VkImageMemoryBarrier_host *);
#else
void (*p_vkCmdPipelineBarrier)(VkCommandBuffer, VkPipelineStageFlags, VkPipelineStageFlags, VkDependencyFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier *, uint32_t, const VkImageMemoryBarrier *);
#endif
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkCmdPreprocessGeneratedCommandsNV)(VkCommandBuffer, const VkGeneratedCommandsInfoNV_host *);
#else
void (*p_vkCmdPreprocessGeneratedCommandsNV)(VkCommandBuffer, const VkGeneratedCommandsInfoNV *);
#endif
void (*p_vkCmdPushConstants)(VkCommandBuffer, VkPipelineLayout, VkShaderStageFlags, uint32_t, uint32_t, const void *);
#if defined(USE_STRUCT_CONVERSION)
@ -1113,7 +1196,7 @@ struct vulkan_device_funcs
#else
void (*p_vkCmdWaitEvents)(VkCommandBuffer, uint32_t, const VkEvent *, VkPipelineStageFlags, VkPipelineStageFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier *, uint32_t, const VkImageMemoryBarrier *);
#endif
void (*p_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer, uint32_t, const VkAccelerationStructureNV *, VkQueryType, VkQueryPool, uint32_t);
void (*p_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer, uint32_t, const VkAccelerationStructureKHR *, VkQueryType, VkQueryPool, uint32_t);
void (*p_vkCmdWriteBufferMarkerAMD)(VkCommandBuffer, VkPipelineStageFlagBits, VkBuffer, VkDeviceSize, uint32_t);
void (*p_vkCmdWriteTimestamp)(VkCommandBuffer, VkPipelineStageFlagBits, VkQueryPool, uint32_t);
VkResult (*p_vkCompileDeferredNV)(VkDevice, VkPipeline, uint32_t);
@ -1167,6 +1250,11 @@ struct vulkan_device_funcs
VkResult (*p_vkCreateImageView)(VkDevice, const VkImageViewCreateInfo_host *, const VkAllocationCallbacks *, VkImageView *);
#else
VkResult (*p_vkCreateImageView)(VkDevice, const VkImageViewCreateInfo *, const VkAllocationCallbacks *, VkImageView *);
#endif
#if defined(USE_STRUCT_CONVERSION)
VkResult (*p_vkCreateIndirectCommandsLayoutNV)(VkDevice, const VkIndirectCommandsLayoutCreateInfoNV_host *, const VkAllocationCallbacks *, VkIndirectCommandsLayoutNV *);
#else
VkResult (*p_vkCreateIndirectCommandsLayoutNV)(VkDevice, const VkIndirectCommandsLayoutCreateInfoNV *, const VkAllocationCallbacks *, VkIndirectCommandsLayoutNV *);
#endif
VkResult (*p_vkCreatePipelineCache)(VkDevice, const VkPipelineCacheCreateInfo *, const VkAllocationCallbacks *, VkPipelineCache *);
VkResult (*p_vkCreatePipelineLayout)(VkDevice, const VkPipelineLayoutCreateInfo *, const VkAllocationCallbacks *, VkPipelineLayout *);
@ -1190,7 +1278,7 @@ struct vulkan_device_funcs
VkResult (*p_vkCreateSwapchainKHR)(VkDevice, const VkSwapchainCreateInfoKHR *, const VkAllocationCallbacks *, VkSwapchainKHR *);
#endif
VkResult (*p_vkCreateValidationCacheEXT)(VkDevice, const VkValidationCacheCreateInfoEXT *, const VkAllocationCallbacks *, VkValidationCacheEXT *);
void (*p_vkDestroyAccelerationStructureNV)(VkDevice, VkAccelerationStructureNV, const VkAllocationCallbacks *);
void (*p_vkDestroyAccelerationStructureNV)(VkDevice, VkAccelerationStructureKHR, const VkAllocationCallbacks *);
void (*p_vkDestroyBuffer)(VkDevice, VkBuffer, const VkAllocationCallbacks *);
void (*p_vkDestroyBufferView)(VkDevice, VkBufferView, const VkAllocationCallbacks *);
void (*p_vkDestroyCommandPool)(VkDevice, VkCommandPool, const VkAllocationCallbacks *);
@ -1204,6 +1292,7 @@ struct vulkan_device_funcs
void (*p_vkDestroyFramebuffer)(VkDevice, VkFramebuffer, const VkAllocationCallbacks *);
void (*p_vkDestroyImage)(VkDevice, VkImage, const VkAllocationCallbacks *);
void (*p_vkDestroyImageView)(VkDevice, VkImageView, const VkAllocationCallbacks *);
void (*p_vkDestroyIndirectCommandsLayoutNV)(VkDevice, VkIndirectCommandsLayoutNV, const VkAllocationCallbacks *);
void (*p_vkDestroyPipeline)(VkDevice, VkPipeline, const VkAllocationCallbacks *);
void (*p_vkDestroyPipelineCache)(VkDevice, VkPipelineCache, const VkAllocationCallbacks *);
void (*p_vkDestroyPipelineLayout)(VkDevice, VkPipelineLayout, const VkAllocationCallbacks *);
@ -1226,7 +1315,7 @@ struct vulkan_device_funcs
void (*p_vkFreeCommandBuffers)(VkDevice, VkCommandPool, uint32_t, const VkCommandBuffer *);
VkResult (*p_vkFreeDescriptorSets)(VkDevice, VkDescriptorPool, uint32_t, const VkDescriptorSet *);
void (*p_vkFreeMemory)(VkDevice, VkDeviceMemory, const VkAllocationCallbacks *);
VkResult (*p_vkGetAccelerationStructureHandleNV)(VkDevice, VkAccelerationStructureNV, size_t, void *);
VkResult (*p_vkGetAccelerationStructureHandleNV)(VkDevice, VkAccelerationStructureKHR, size_t, void *);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkGetAccelerationStructureMemoryRequirementsNV)(VkDevice, const VkAccelerationStructureMemoryRequirementsInfoNV_host *, VkMemoryRequirements2KHR_host *);
#else
@ -1293,6 +1382,11 @@ struct vulkan_device_funcs
void (*p_vkGetDeviceQueue2)(VkDevice, const VkDeviceQueueInfo2 *, VkQueue *);
VkResult (*p_vkGetEventStatus)(VkDevice, VkEvent);
VkResult (*p_vkGetFenceStatus)(VkDevice, VkFence);
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkGetGeneratedCommandsMemoryRequirementsNV)(VkDevice, const VkGeneratedCommandsMemoryRequirementsInfoNV_host *, VkMemoryRequirements2_host *);
#else
void (*p_vkGetGeneratedCommandsMemoryRequirementsNV)(VkDevice, const VkGeneratedCommandsMemoryRequirementsInfoNV *, VkMemoryRequirements2 *);
#endif
#if defined(USE_STRUCT_CONVERSION)
void (*p_vkGetImageMemoryRequirements)(VkDevice, VkImage, VkMemoryRequirements_host *);
#else
@ -1524,6 +1618,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdBindDescriptorSets) \
USE_VK_FUNC(vkCmdBindIndexBuffer) \
USE_VK_FUNC(vkCmdBindPipeline) \
USE_VK_FUNC(vkCmdBindPipelineShaderGroupNV) \
USE_VK_FUNC(vkCmdBindShadingRateImageNV) \
USE_VK_FUNC(vkCmdBindTransformFeedbackBuffersEXT) \
USE_VK_FUNC(vkCmdBindVertexBuffers) \
@ -1564,11 +1659,13 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdEndRenderPass2KHR) \
USE_VK_FUNC(vkCmdEndTransformFeedbackEXT) \
USE_VK_FUNC(vkCmdExecuteCommands) \
USE_VK_FUNC(vkCmdExecuteGeneratedCommandsNV) \
USE_VK_FUNC(vkCmdFillBuffer) \
USE_VK_FUNC(vkCmdNextSubpass) \
USE_VK_FUNC(vkCmdNextSubpass2) \
USE_VK_FUNC(vkCmdNextSubpass2KHR) \
USE_VK_FUNC(vkCmdPipelineBarrier) \
USE_VK_FUNC(vkCmdPreprocessGeneratedCommandsNV) \
USE_VK_FUNC(vkCmdPushConstants) \
USE_VK_FUNC(vkCmdPushDescriptorSetKHR) \
USE_VK_FUNC(vkCmdPushDescriptorSetWithTemplateKHR) \
@ -1620,6 +1717,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCreateGraphicsPipelines) \
USE_VK_FUNC(vkCreateImage) \
USE_VK_FUNC(vkCreateImageView) \
USE_VK_FUNC(vkCreateIndirectCommandsLayoutNV) \
USE_VK_FUNC(vkCreatePipelineCache) \
USE_VK_FUNC(vkCreatePipelineLayout) \
USE_VK_FUNC(vkCreateQueryPool) \
@ -1648,6 +1746,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkDestroyFramebuffer) \
USE_VK_FUNC(vkDestroyImage) \
USE_VK_FUNC(vkDestroyImageView) \
USE_VK_FUNC(vkDestroyIndirectCommandsLayoutNV) \
USE_VK_FUNC(vkDestroyPipeline) \
USE_VK_FUNC(vkDestroyPipelineCache) \
USE_VK_FUNC(vkDestroyPipelineLayout) \
@ -1689,6 +1788,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkGetDeviceQueue2) \
USE_VK_FUNC(vkGetEventStatus) \
USE_VK_FUNC(vkGetFenceStatus) \
USE_VK_FUNC(vkGetGeneratedCommandsMemoryRequirementsNV) \
USE_VK_FUNC(vkGetImageMemoryRequirements) \
USE_VK_FUNC(vkGetImageMemoryRequirements2) \
USE_VK_FUNC(vkGetImageMemoryRequirements2KHR) \

View File

@ -2,6 +2,6 @@
"file_format_version": "1.0.0",
"ICD": {
"library_path": ".\\winevulkan.dll",
"api_version": "1.2.134"
"api_version": "1.2.138"
}
}

File diff suppressed because it is too large Load Diff