winevulkan: Update to VK spec version 1.2.185.
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
c2948c96d6
commit
bdc02621c1
|
@ -143,6 +143,11 @@ void WINAPI vkCmdBindIndexBuffer(VkCommandBuffer commandBuffer, VkBuffer buffer,
|
|||
unix_funcs->p_vkCmdBindIndexBuffer(commandBuffer, buffer, offset, indexType);
|
||||
}
|
||||
|
||||
void WINAPI vkCmdBindInvocationMaskHUAWEI(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout)
|
||||
{
|
||||
unix_funcs->p_vkCmdBindInvocationMaskHUAWEI(commandBuffer, imageView, imageLayout);
|
||||
}
|
||||
|
||||
void WINAPI vkCmdBindPipeline(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline)
|
||||
{
|
||||
unix_funcs->p_vkCmdBindPipeline(commandBuffer, pipelineBindPoint, pipeline);
|
||||
|
@ -1978,6 +1983,11 @@ VkResult WINAPI vkWaitForFences(VkDevice device, uint32_t fenceCount, const VkFe
|
|||
return unix_funcs->p_vkWaitForFences(device, fenceCount, pFences, waitAll, timeout);
|
||||
}
|
||||
|
||||
VkResult WINAPI vkWaitForPresentKHR(VkDevice device, VkSwapchainKHR swapchain, uint64_t presentId, uint64_t timeout)
|
||||
{
|
||||
return unix_funcs->p_vkWaitForPresentKHR(device, swapchain, presentId, timeout);
|
||||
}
|
||||
|
||||
VkResult WINAPI vkWaitSemaphores(VkDevice device, const VkSemaphoreWaitInfo *pWaitInfo, uint64_t timeout)
|
||||
{
|
||||
return unix_funcs->p_vkWaitSemaphores(device, pWaitInfo, timeout);
|
||||
|
@ -2021,6 +2031,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
|
|||
{"vkCmdBeginTransformFeedbackEXT", &vkCmdBeginTransformFeedbackEXT},
|
||||
{"vkCmdBindDescriptorSets", &vkCmdBindDescriptorSets},
|
||||
{"vkCmdBindIndexBuffer", &vkCmdBindIndexBuffer},
|
||||
{"vkCmdBindInvocationMaskHUAWEI", &vkCmdBindInvocationMaskHUAWEI},
|
||||
{"vkCmdBindPipeline", &vkCmdBindPipeline},
|
||||
{"vkCmdBindPipelineShaderGroupNV", &vkCmdBindPipelineShaderGroupNV},
|
||||
{"vkCmdBindShadingRateImageNV", &vkCmdBindShadingRateImageNV},
|
||||
|
@ -2333,6 +2344,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
|
|||
{"vkUpdateDescriptorSetWithTemplateKHR", &vkUpdateDescriptorSetWithTemplateKHR},
|
||||
{"vkUpdateDescriptorSets", &vkUpdateDescriptorSets},
|
||||
{"vkWaitForFences", &vkWaitForFences},
|
||||
{"vkWaitForPresentKHR", &vkWaitForPresentKHR},
|
||||
{"vkWaitSemaphores", &vkWaitSemaphores},
|
||||
{"vkWaitSemaphoresKHR", &vkWaitSemaphoresKHR},
|
||||
{"vkWriteAccelerationStructuresPropertiesKHR", &vkWriteAccelerationStructuresPropertiesKHR},
|
||||
|
|
|
@ -40,6 +40,7 @@ struct unix_funcs
|
|||
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);
|
||||
void (WINAPI *p_vkCmdBindInvocationMaskHUAWEI)(VkCommandBuffer, VkImageView, VkImageLayout);
|
||||
void (WINAPI *p_vkCmdBindPipeline)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline);
|
||||
void (WINAPI *p_vkCmdBindPipelineShaderGroupNV)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline, uint32_t);
|
||||
void (WINAPI *p_vkCmdBindShadingRateImageNV)(VkCommandBuffer, VkImageView, VkImageLayout);
|
||||
|
@ -412,6 +413,7 @@ struct unix_funcs
|
|||
void (WINAPI *p_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice, VkDescriptorSet, VkDescriptorUpdateTemplate, const void *);
|
||||
void (WINAPI *p_vkUpdateDescriptorSets)(VkDevice, uint32_t, const VkWriteDescriptorSet *, uint32_t, const VkCopyDescriptorSet *);
|
||||
VkResult (WINAPI *p_vkWaitForFences)(VkDevice, uint32_t, const VkFence *, VkBool32, uint64_t);
|
||||
VkResult (WINAPI *p_vkWaitForPresentKHR)(VkDevice, VkSwapchainKHR, uint64_t, uint64_t);
|
||||
VkResult (WINAPI *p_vkWaitSemaphores)(VkDevice, const VkSemaphoreWaitInfo *, uint64_t);
|
||||
VkResult (WINAPI *p_vkWaitSemaphoresKHR)(VkDevice, const VkSemaphoreWaitInfo *, uint64_t);
|
||||
VkResult (WINAPI *p_vkWriteAccelerationStructuresPropertiesKHR)(VkDevice, uint32_t, const VkAccelerationStructureKHR *, VkQueryType, size_t, void *, size_t);
|
||||
|
|
|
@ -64,7 +64,7 @@ from enum import Enum
|
|||
LOGGER = logging.Logger("vulkan")
|
||||
LOGGER.addHandler(logging.StreamHandler())
|
||||
|
||||
VK_XML_VERSION = "1.2.182"
|
||||
VK_XML_VERSION = "1.2.185"
|
||||
WINE_VK_VERSION = (1, 2)
|
||||
|
||||
# Filenames to create.
|
||||
|
@ -104,6 +104,7 @@ UNSUPPORTED_EXTENSIONS = [
|
|||
# Relates to external_semaphore and needs type conversions in bitflags.
|
||||
"VK_KHR_shared_presentable_image", # Needs WSI work.
|
||||
"VK_KHR_win32_keyed_mutex",
|
||||
"VK_NV_external_memory_rdma", # Needs shared resources work.
|
||||
|
||||
# Extensions for other platforms
|
||||
"VK_EXT_external_memory_dma_buf",
|
||||
|
|
|
@ -2781,6 +2781,38 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
|
|||
break;
|
||||
}
|
||||
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
|
||||
{
|
||||
const VkPhysicalDevicePresentIdFeaturesKHR *in = (const VkPhysicalDevicePresentIdFeaturesKHR *)in_header;
|
||||
VkPhysicalDevicePresentIdFeaturesKHR *out;
|
||||
|
||||
if (!(out = malloc(sizeof(*out)))) goto out_of_memory;
|
||||
|
||||
out->sType = in->sType;
|
||||
out->pNext = NULL;
|
||||
out->presentId = in->presentId;
|
||||
|
||||
out_header->pNext = (VkBaseOutStructure *)out;
|
||||
out_header = out_header->pNext;
|
||||
break;
|
||||
}
|
||||
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
|
||||
{
|
||||
const VkPhysicalDevicePresentWaitFeaturesKHR *in = (const VkPhysicalDevicePresentWaitFeaturesKHR *)in_header;
|
||||
VkPhysicalDevicePresentWaitFeaturesKHR *out;
|
||||
|
||||
if (!(out = malloc(sizeof(*out)))) goto out_of_memory;
|
||||
|
||||
out->sType = in->sType;
|
||||
out->pNext = NULL;
|
||||
out->presentWait = in->presentWait;
|
||||
|
||||
out_header->pNext = (VkBaseOutStructure *)out;
|
||||
out_header = out_header->pNext;
|
||||
break;
|
||||
}
|
||||
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES:
|
||||
{
|
||||
const VkPhysicalDevice16BitStorageFeatures *in = (const VkPhysicalDevice16BitStorageFeatures *)in_header;
|
||||
|
@ -2946,6 +2978,22 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
|
|||
break;
|
||||
}
|
||||
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
|
||||
{
|
||||
const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT *in = (const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT *)in_header;
|
||||
VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT *out;
|
||||
|
||||
if (!(out = malloc(sizeof(*out)))) goto out_of_memory;
|
||||
|
||||
out->sType = in->sType;
|
||||
out->pNext = NULL;
|
||||
out->globalPriorityQuery = in->globalPriorityQuery;
|
||||
|
||||
out_header->pNext = (VkBaseOutStructure *)out;
|
||||
out_header = out_header->pNext;
|
||||
break;
|
||||
}
|
||||
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES:
|
||||
{
|
||||
const VkPhysicalDeviceDescriptorIndexingFeatures *in = (const VkPhysicalDeviceDescriptorIndexingFeatures *)in_header;
|
||||
|
@ -3094,6 +3142,33 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
|
|||
break;
|
||||
}
|
||||
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
|
||||
{
|
||||
const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT *in = (const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT *)in_header;
|
||||
VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT *out;
|
||||
|
||||
if (!(out = malloc(sizeof(*out)))) goto out_of_memory;
|
||||
|
||||
out->sType = in->sType;
|
||||
out->pNext = NULL;
|
||||
out->shaderBufferFloat16Atomics = in->shaderBufferFloat16Atomics;
|
||||
out->shaderBufferFloat16AtomicAdd = in->shaderBufferFloat16AtomicAdd;
|
||||
out->shaderBufferFloat16AtomicMinMax = in->shaderBufferFloat16AtomicMinMax;
|
||||
out->shaderBufferFloat32AtomicMinMax = in->shaderBufferFloat32AtomicMinMax;
|
||||
out->shaderBufferFloat64AtomicMinMax = in->shaderBufferFloat64AtomicMinMax;
|
||||
out->shaderSharedFloat16Atomics = in->shaderSharedFloat16Atomics;
|
||||
out->shaderSharedFloat16AtomicAdd = in->shaderSharedFloat16AtomicAdd;
|
||||
out->shaderSharedFloat16AtomicMinMax = in->shaderSharedFloat16AtomicMinMax;
|
||||
out->shaderSharedFloat32AtomicMinMax = in->shaderSharedFloat32AtomicMinMax;
|
||||
out->shaderSharedFloat64AtomicMinMax = in->shaderSharedFloat64AtomicMinMax;
|
||||
out->shaderImageFloat32AtomicMinMax = in->shaderImageFloat32AtomicMinMax;
|
||||
out->sparseImageFloat32AtomicMinMax = in->sparseImageFloat32AtomicMinMax;
|
||||
|
||||
out_header->pNext = (VkBaseOutStructure *)out;
|
||||
out_header = out_header->pNext;
|
||||
break;
|
||||
}
|
||||
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT:
|
||||
{
|
||||
const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *in = (const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *)in_header;
|
||||
|
@ -3274,6 +3349,22 @@ VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCrea
|
|||
break;
|
||||
}
|
||||
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
|
||||
{
|
||||
const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI *in = (const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI *)in_header;
|
||||
VkPhysicalDeviceInvocationMaskFeaturesHUAWEI *out;
|
||||
|
||||
if (!(out = malloc(sizeof(*out)))) goto out_of_memory;
|
||||
|
||||
out->sType = in->sType;
|
||||
out->pNext = NULL;
|
||||
out->invocationMask = in->invocationMask;
|
||||
|
||||
out_header->pNext = (VkBaseOutStructure *)out;
|
||||
out_header = out_header->pNext;
|
||||
break;
|
||||
}
|
||||
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV:
|
||||
{
|
||||
const VkPhysicalDeviceMeshShaderFeaturesNV *in = (const VkPhysicalDeviceMeshShaderFeaturesNV *)in_header;
|
||||
|
@ -4757,6 +4848,12 @@ static void WINAPI wine_vkCmdBindIndexBuffer(VkCommandBuffer commandBuffer, VkBu
|
|||
commandBuffer->device->funcs.p_vkCmdBindIndexBuffer(commandBuffer->command_buffer, buffer, offset, indexType);
|
||||
}
|
||||
|
||||
static void WINAPI wine_vkCmdBindInvocationMaskHUAWEI(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout)
|
||||
{
|
||||
TRACE("%p, 0x%s, %#x\n", commandBuffer, wine_dbgstr_longlong(imageView), imageLayout);
|
||||
commandBuffer->device->funcs.p_vkCmdBindInvocationMaskHUAWEI(commandBuffer->command_buffer, imageView, imageLayout);
|
||||
}
|
||||
|
||||
static void WINAPI wine_vkCmdBindPipeline(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline)
|
||||
{
|
||||
TRACE("%p, %#x, 0x%s\n", commandBuffer, pipelineBindPoint, wine_dbgstr_longlong(pipeline));
|
||||
|
@ -7882,6 +7979,12 @@ static VkResult WINAPI wine_vkWaitForFences(VkDevice device, uint32_t fenceCount
|
|||
return device->funcs.p_vkWaitForFences(device->device, fenceCount, pFences, waitAll, timeout);
|
||||
}
|
||||
|
||||
static VkResult WINAPI wine_vkWaitForPresentKHR(VkDevice device, VkSwapchainKHR swapchain, uint64_t presentId, uint64_t timeout)
|
||||
{
|
||||
TRACE("%p, 0x%s, 0x%s, 0x%s\n", device, wine_dbgstr_longlong(swapchain), wine_dbgstr_longlong(presentId), wine_dbgstr_longlong(timeout));
|
||||
return device->funcs.p_vkWaitForPresentKHR(device->device, swapchain, presentId, timeout);
|
||||
}
|
||||
|
||||
static VkResult WINAPI wine_vkWaitSemaphores(VkDevice device, const VkSemaphoreWaitInfo *pWaitInfo, uint64_t timeout)
|
||||
{
|
||||
TRACE("%p, %p, 0x%s\n", device, pWaitInfo, wine_dbgstr_longlong(timeout));
|
||||
|
@ -7965,6 +8068,7 @@ static const char * const vk_device_extensions[] =
|
|||
"VK_EXT_scalar_block_layout",
|
||||
"VK_EXT_separate_stencil_usage",
|
||||
"VK_EXT_shader_atomic_float",
|
||||
"VK_EXT_shader_atomic_float2",
|
||||
"VK_EXT_shader_demote_to_helper_invocation",
|
||||
"VK_EXT_shader_image_atomic_int64",
|
||||
"VK_EXT_shader_stencil_export",
|
||||
|
@ -7984,6 +8088,7 @@ static const char * const vk_device_extensions[] =
|
|||
"VK_GOOGLE_decorate_string",
|
||||
"VK_GOOGLE_hlsl_functionality1",
|
||||
"VK_GOOGLE_user_type",
|
||||
"VK_HUAWEI_invocation_mask",
|
||||
"VK_IMG_filter_cubic",
|
||||
"VK_IMG_format_pvrtc",
|
||||
"VK_INTEL_performance_query",
|
||||
|
@ -8017,6 +8122,8 @@ static const char * const vk_device_extensions[] =
|
|||
"VK_KHR_performance_query",
|
||||
"VK_KHR_pipeline_executable_properties",
|
||||
"VK_KHR_pipeline_library",
|
||||
"VK_KHR_present_id",
|
||||
"VK_KHR_present_wait",
|
||||
"VK_KHR_push_descriptor",
|
||||
"VK_KHR_ray_query",
|
||||
"VK_KHR_ray_tracing_pipeline",
|
||||
|
@ -8191,6 +8298,7 @@ const struct unix_funcs loader_funcs =
|
|||
&wine_vkCmdBeginTransformFeedbackEXT,
|
||||
&wine_vkCmdBindDescriptorSets,
|
||||
&wine_vkCmdBindIndexBuffer,
|
||||
&wine_vkCmdBindInvocationMaskHUAWEI,
|
||||
&wine_vkCmdBindPipeline,
|
||||
&wine_vkCmdBindPipelineShaderGroupNV,
|
||||
&wine_vkCmdBindShadingRateImageNV,
|
||||
|
@ -8563,6 +8671,7 @@ const struct unix_funcs loader_funcs =
|
|||
&wine_vkUpdateDescriptorSetWithTemplateKHR,
|
||||
&wine_vkUpdateDescriptorSets,
|
||||
&wine_vkWaitForFences,
|
||||
&wine_vkWaitForPresentKHR,
|
||||
&wine_vkWaitSemaphores,
|
||||
&wine_vkWaitSemaphoresKHR,
|
||||
&wine_vkWriteAccelerationStructuresPropertiesKHR,
|
||||
|
|
|
@ -1736,6 +1736,7 @@ struct vulkan_device_funcs
|
|||
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);
|
||||
void (*p_vkCmdBindInvocationMaskHUAWEI)(VkCommandBuffer, VkImageView, VkImageLayout);
|
||||
void (*p_vkCmdBindPipeline)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline);
|
||||
void (*p_vkCmdBindPipelineShaderGroupNV)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline, uint32_t);
|
||||
void (*p_vkCmdBindShadingRateImageNV)(VkCommandBuffer, VkImageView, VkImageLayout);
|
||||
|
@ -2047,6 +2048,7 @@ struct vulkan_device_funcs
|
|||
void (*p_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice, VkDescriptorSet, VkDescriptorUpdateTemplate, const void *);
|
||||
void (*p_vkUpdateDescriptorSets)(VkDevice, uint32_t, const VkWriteDescriptorSet_host *, uint32_t, const VkCopyDescriptorSet_host *);
|
||||
VkResult (*p_vkWaitForFences)(VkDevice, uint32_t, const VkFence *, VkBool32, uint64_t);
|
||||
VkResult (*p_vkWaitForPresentKHR)(VkDevice, VkSwapchainKHR, uint64_t, uint64_t);
|
||||
VkResult (*p_vkWaitSemaphores)(VkDevice, const VkSemaphoreWaitInfo *, uint64_t);
|
||||
VkResult (*p_vkWaitSemaphoresKHR)(VkDevice, const VkSemaphoreWaitInfo *, uint64_t);
|
||||
VkResult (*p_vkWriteAccelerationStructuresPropertiesKHR)(VkDevice, uint32_t, const VkAccelerationStructureKHR *, VkQueryType, size_t, void *, size_t);
|
||||
|
@ -2135,6 +2137,7 @@ struct vulkan_instance_funcs
|
|||
USE_VK_FUNC(vkCmdBeginTransformFeedbackEXT) \
|
||||
USE_VK_FUNC(vkCmdBindDescriptorSets) \
|
||||
USE_VK_FUNC(vkCmdBindIndexBuffer) \
|
||||
USE_VK_FUNC(vkCmdBindInvocationMaskHUAWEI) \
|
||||
USE_VK_FUNC(vkCmdBindPipeline) \
|
||||
USE_VK_FUNC(vkCmdBindPipelineShaderGroupNV) \
|
||||
USE_VK_FUNC(vkCmdBindShadingRateImageNV) \
|
||||
|
@ -2446,6 +2449,7 @@ struct vulkan_instance_funcs
|
|||
USE_VK_FUNC(vkUpdateDescriptorSetWithTemplateKHR) \
|
||||
USE_VK_FUNC(vkUpdateDescriptorSets) \
|
||||
USE_VK_FUNC(vkWaitForFences) \
|
||||
USE_VK_FUNC(vkWaitForPresentKHR) \
|
||||
USE_VK_FUNC(vkWaitSemaphores) \
|
||||
USE_VK_FUNC(vkWaitSemaphoresKHR) \
|
||||
USE_VK_FUNC(vkWriteAccelerationStructuresPropertiesKHR)
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
"file_format_version": "1.0.0",
|
||||
"ICD": {
|
||||
"library_path": ".\\winevulkan.dll",
|
||||
"api_version": "1.2.182"
|
||||
"api_version": "1.2.185"
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue