winevulkan: Update to VK spec version 1.3.240.

This commit is contained in:
Georg Lehmann 2023-01-26 11:15:36 +01:00 committed by Alexandre Julliard
parent a30a5287f0
commit 83199991ed
7 changed files with 267 additions and 4 deletions

View file

@ -870,6 +870,25 @@ void WINAPI vkCmdDraw(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint3
UNIX_CALL(vkCmdDraw, &params);
}
void WINAPI vkCmdDrawClusterHUAWEI(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ)
{
struct vkCmdDrawClusterHUAWEI_params params;
params.commandBuffer = commandBuffer;
params.groupCountX = groupCountX;
params.groupCountY = groupCountY;
params.groupCountZ = groupCountZ;
UNIX_CALL(vkCmdDrawClusterHUAWEI, &params);
}
void WINAPI vkCmdDrawClusterIndirectHUAWEI(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset)
{
struct vkCmdDrawClusterIndirectHUAWEI_params params;
params.commandBuffer = commandBuffer;
params.buffer = buffer;
params.offset = offset;
UNIX_CALL(vkCmdDrawClusterIndirectHUAWEI, &params);
}
void WINAPI vkCmdDrawIndexed(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance)
{
struct vkCmdDrawIndexed_params params;
@ -5747,6 +5766,8 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdDispatchBaseKHR", vkCmdDispatchBaseKHR},
{"vkCmdDispatchIndirect", vkCmdDispatchIndirect},
{"vkCmdDraw", vkCmdDraw},
{"vkCmdDrawClusterHUAWEI", vkCmdDrawClusterHUAWEI},
{"vkCmdDrawClusterIndirectHUAWEI", vkCmdDrawClusterIndirectHUAWEI},
{"vkCmdDrawIndexed", vkCmdDrawIndexed},
{"vkCmdDrawIndexedIndirect", vkCmdDrawIndexedIndirect},
{"vkCmdDrawIndexedIndirectCount", vkCmdDrawIndexedIndirectCount},

View file

@ -100,6 +100,8 @@ enum unix_call
unix_vkCmdDispatchBaseKHR,
unix_vkCmdDispatchIndirect,
unix_vkCmdDraw,
unix_vkCmdDrawClusterHUAWEI,
unix_vkCmdDrawClusterIndirectHUAWEI,
unix_vkCmdDrawIndexed,
unix_vkCmdDrawIndexedIndirect,
unix_vkCmdDrawIndexedIndirectCount,
@ -1215,6 +1217,21 @@ struct vkCmdDraw_params
uint32_t firstInstance;
};
struct vkCmdDrawClusterHUAWEI_params
{
VkCommandBuffer commandBuffer;
uint32_t groupCountX;
uint32_t groupCountY;
uint32_t groupCountZ;
};
struct vkCmdDrawClusterIndirectHUAWEI_params
{
VkCommandBuffer commandBuffer;
VkBuffer DECLSPEC_ALIGN(8) buffer;
VkDeviceSize DECLSPEC_ALIGN(8) offset;
};
struct vkCmdDrawIndexed_params
{
VkCommandBuffer commandBuffer;

View file

@ -65,7 +65,7 @@ from enum import Enum
LOGGER = logging.Logger("vulkan")
LOGGER.addHandler(logging.StreamHandler())
VK_XML_VERSION = "1.3.237"
VK_XML_VERSION = "1.3.240"
WINE_VK_VERSION = (1, 3)
# Filenames to create.
@ -102,6 +102,7 @@ UNSUPPORTED_EXTENSIONS = [
"VK_KHR_external_semaphore_win32",
# Relates to external_semaphore and needs type conversions in bitflags.
"VK_KHR_shared_presentable_image", # Needs WSI work.
"VK_KHR_video_queue", # TODO Video extensions use separate headers + xml
"VK_KHR_win32_keyed_mutex",
"VK_NV_external_memory_rdma", # Needs shared resources work.

View file

@ -2402,6 +2402,14 @@ typedef struct VkPhysicalDeviceSubpassShadingFeaturesHUAWEI32
VkBool32 subpassShading;
} VkPhysicalDeviceSubpassShadingFeaturesHUAWEI32;
typedef struct VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI32
{
VkStructureType sType;
PTR32 pNext;
VkBool32 clustercullingShader;
VkBool32 multiviewClusterCullingShader;
} VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI32;
typedef struct VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT32
{
VkStructureType sType;
@ -2737,6 +2745,13 @@ typedef struct VkPhysicalDeviceFaultFeaturesEXT32
VkBool32 deviceFaultVendorBinary;
} VkPhysicalDeviceFaultFeaturesEXT32;
typedef struct VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT32
{
VkStructureType sType;
PTR32 pNext;
VkBool32 pipelineLibraryGroupHandles;
} VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT32;
typedef struct VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM32
{
VkStructureType sType;
@ -5212,6 +5227,15 @@ typedef struct VkPhysicalDeviceSubpassShadingPropertiesHUAWEI32
uint32_t maxSubpassShadingWorkgroupSizeAspectRatio;
} VkPhysicalDeviceSubpassShadingPropertiesHUAWEI32;
typedef struct VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI32
{
VkStructureType sType;
PTR32 pNext;
uint32_t maxWorkGroupCount[3];
uint32_t maxWorkGroupSize[3];
uint32_t maxOutputClusterCount;
} VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI32;
typedef struct VkPhysicalDeviceLineRasterizationPropertiesEXT32
{
VkStructureType sType;
@ -10902,6 +10926,18 @@ static inline void convert_VkDeviceCreateInfo_win64_to_host(struct conversion_co
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI:
{
VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI *in_ext = (const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI;
out_ext->pNext = NULL;
out_ext->clustercullingShader = in_ext->clustercullingShader;
out_ext->multiviewClusterCullingShader = in_ext->multiviewClusterCullingShader;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:
{
VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
@ -11406,6 +11442,17 @@ static inline void convert_VkDeviceCreateInfo_win64_to_host(struct conversion_co
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT:
{
VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT *in_ext = (const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT;
out_ext->pNext = NULL;
out_ext->pipelineLibraryGroupHandles = in_ext->pipelineLibraryGroupHandles;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM:
{
VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
@ -12752,6 +12799,18 @@ static inline void convert_VkDeviceCreateInfo_win32_to_host(struct conversion_co
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI:
{
VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI32 *in_ext = (const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI32 *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI;
out_ext->pNext = NULL;
out_ext->clustercullingShader = in_ext->clustercullingShader;
out_ext->multiviewClusterCullingShader = in_ext->multiviewClusterCullingShader;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:
{
VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
@ -13256,6 +13315,17 @@ static inline void convert_VkDeviceCreateInfo_win32_to_host(struct conversion_co
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT:
{
VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT32 *in_ext = (const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT32 *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT;
out_ext->pNext = NULL;
out_ext->pipelineLibraryGroupHandles = in_ext->pipelineLibraryGroupHandles;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM:
{
VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
@ -19114,6 +19184,18 @@ static inline void convert_VkPhysicalDeviceFeatures2_win32_to_host(struct conver
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI:
{
VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI32 *in_ext = (const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI32 *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI;
out_ext->pNext = NULL;
out_ext->clustercullingShader = in_ext->clustercullingShader;
out_ext->multiviewClusterCullingShader = in_ext->multiviewClusterCullingShader;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:
{
VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
@ -19618,6 +19700,17 @@ static inline void convert_VkPhysicalDeviceFeatures2_win32_to_host(struct conver
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT:
{
VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT32 *in_ext = (const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT32 *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT;
out_ext->pNext = NULL;
out_ext->pipelineLibraryGroupHandles = in_ext->pipelineLibraryGroupHandles;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM:
{
VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
@ -20712,6 +20805,16 @@ static inline void convert_VkPhysicalDeviceFeatures2_host_to_win32(const VkPhysi
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI:
{
VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI);
const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI *in_ext = (const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI;
out_ext->clustercullingShader = in_ext->clustercullingShader;
out_ext->multiviewClusterCullingShader = in_ext->multiviewClusterCullingShader;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:
{
VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT);
@ -21128,6 +21231,15 @@ static inline void convert_VkPhysicalDeviceFeatures2_host_to_win32(const VkPhysi
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT:
{
VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT);
const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT *in_ext = (const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT;
out_ext->pipelineLibraryGroupHandles = in_ext->pipelineLibraryGroupHandles;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM:
{
VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM);
@ -22231,6 +22343,15 @@ static inline void convert_VkPhysicalDeviceProperties2_win32_to_host(struct conv
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI:
{
VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI;
out_ext->pNext = NULL;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT:
{
VkPhysicalDeviceLineRasterizationPropertiesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
@ -23036,6 +23157,17 @@ static inline void convert_VkPhysicalDeviceProperties2_host_to_win32(const VkPhy
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI:
{
VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI);
const VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI *in_ext = (const VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI;
memcpy(out_ext->maxWorkGroupCount, in_ext->maxWorkGroupCount, 3 * sizeof(uint32_t));
memcpy(out_ext->maxWorkGroupSize, in_ext->maxWorkGroupSize, 3 * sizeof(uint32_t));
out_ext->maxOutputClusterCount = in_ext->maxOutputClusterCount;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT:
{
VkPhysicalDeviceLineRasterizationPropertiesEXT32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT);
@ -27601,6 +27733,49 @@ static void thunk32_vkCmdDraw(void *args)
wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->device->funcs.p_vkCmdDraw(wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->command_buffer, params->vertexCount, params->instanceCount, params->firstVertex, params->firstInstance);
}
#ifdef _WIN64
static void thunk64_vkCmdDrawClusterHUAWEI(void *args)
{
struct vkCmdDrawClusterHUAWEI_params *params = args;
wine_cmd_buffer_from_handle(params->commandBuffer)->device->funcs.p_vkCmdDrawClusterHUAWEI(wine_cmd_buffer_from_handle(params->commandBuffer)->command_buffer, params->groupCountX, params->groupCountY, params->groupCountZ);
}
#endif /* _WIN64 */
static void thunk32_vkCmdDrawClusterHUAWEI(void *args)
{
struct
{
PTR32 commandBuffer;
uint32_t groupCountX;
uint32_t groupCountY;
uint32_t groupCountZ;
} *params = args;
wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->device->funcs.p_vkCmdDrawClusterHUAWEI(wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->command_buffer, params->groupCountX, params->groupCountY, params->groupCountZ);
}
#ifdef _WIN64
static void thunk64_vkCmdDrawClusterIndirectHUAWEI(void *args)
{
struct vkCmdDrawClusterIndirectHUAWEI_params *params = args;
wine_cmd_buffer_from_handle(params->commandBuffer)->device->funcs.p_vkCmdDrawClusterIndirectHUAWEI(wine_cmd_buffer_from_handle(params->commandBuffer)->command_buffer, params->buffer, params->offset);
}
#endif /* _WIN64 */
static void thunk32_vkCmdDrawClusterIndirectHUAWEI(void *args)
{
struct
{
PTR32 commandBuffer;
VkBuffer DECLSPEC_ALIGN(8) buffer;
VkDeviceSize DECLSPEC_ALIGN(8) offset;
} *params = args;
wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->device->funcs.p_vkCmdDrawClusterIndirectHUAWEI(wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->command_buffer, params->buffer, params->offset);
}
#ifdef _WIN64
static void thunk64_vkCmdDrawIndexed(void *args)
{
@ -40132,6 +40307,7 @@ static const char * const vk_device_extensions[] =
"VK_EXT_pci_bus_info",
"VK_EXT_pipeline_creation_cache_control",
"VK_EXT_pipeline_creation_feedback",
"VK_EXT_pipeline_library_group_handles",
"VK_EXT_pipeline_properties",
"VK_EXT_pipeline_protected_access",
"VK_EXT_pipeline_robustness",
@ -40172,6 +40348,7 @@ static const char * const vk_device_extensions[] =
"VK_GOOGLE_decorate_string",
"VK_GOOGLE_hlsl_functionality1",
"VK_GOOGLE_user_type",
"VK_HUAWEI_cluster_culling_shader",
"VK_HUAWEI_invocation_mask",
"VK_HUAWEI_subpass_shading",
"VK_IMG_filter_cubic",
@ -40439,6 +40616,8 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
(void *)thunk64_vkCmdDispatchBaseKHR,
(void *)thunk64_vkCmdDispatchIndirect,
(void *)thunk64_vkCmdDraw,
(void *)thunk64_vkCmdDrawClusterHUAWEI,
(void *)thunk64_vkCmdDrawClusterIndirectHUAWEI,
(void *)thunk64_vkCmdDrawIndexed,
(void *)thunk64_vkCmdDrawIndexedIndirect,
(void *)thunk64_vkCmdDrawIndexedIndirectCount,
@ -40981,6 +41160,8 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
(void *)thunk32_vkCmdDispatchBaseKHR,
(void *)thunk32_vkCmdDispatchIndirect,
(void *)thunk32_vkCmdDraw,
(void *)thunk32_vkCmdDrawClusterHUAWEI,
(void *)thunk32_vkCmdDrawClusterIndirectHUAWEI,
(void *)thunk32_vkCmdDrawIndexed,
(void *)thunk32_vkCmdDrawIndexedIndirect,
(void *)thunk32_vkCmdDrawIndexedIndirectCount,

View file

@ -143,6 +143,8 @@ struct vulkan_device_funcs
void (*p_vkCmdDispatchBaseKHR)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
void (*p_vkCmdDispatchIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize);
void (*p_vkCmdDraw)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, uint32_t);
void (*p_vkCmdDrawClusterHUAWEI)(VkCommandBuffer, uint32_t, uint32_t, uint32_t);
void (*p_vkCmdDrawClusterIndirectHUAWEI)(VkCommandBuffer, VkBuffer, VkDeviceSize);
void (*p_vkCmdDrawIndexed)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, int32_t, uint32_t);
void (*p_vkCmdDrawIndexedIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
void (*p_vkCmdDrawIndexedIndirectCount)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
@ -669,6 +671,8 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdDispatchBaseKHR) \
USE_VK_FUNC(vkCmdDispatchIndirect) \
USE_VK_FUNC(vkCmdDraw) \
USE_VK_FUNC(vkCmdDrawClusterHUAWEI) \
USE_VK_FUNC(vkCmdDrawClusterIndirectHUAWEI) \
USE_VK_FUNC(vkCmdDrawIndexed) \
USE_VK_FUNC(vkCmdDrawIndexedIndirect) \
USE_VK_FUNC(vkCmdDrawIndexedIndirectCount) \

View file

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

View file

@ -526,6 +526,8 @@
#define VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME "VK_EXT_opacity_micromap"
#define VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION 1
#define VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME "VK_EXT_load_store_op_none"
#define VK_HUAWEI_CLUSTER_CULLING_SHADER_SPEC_VERSION 1
#define VK_HUAWEI_CLUSTER_CULLING_SHADER_EXTENSION_NAME "VK_HUAWEI_cluster_culling_shader"
#define VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION 1
#define VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME "VK_EXT_border_color_swizzle"
#define VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION 1
@ -574,6 +576,8 @@
#define VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME "VK_EXT_mutable_descriptor_type"
#define VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION 2
#define VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME "VK_ARM_shader_core_builtins"
#define VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_SPEC_VERSION 1
#define VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME "VK_EXT_pipeline_library_group_handles"
#define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 13
#define VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME "VK_KHR_acceleration_structure"
#define VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION 1
@ -598,7 +602,7 @@
#define VK_API_VERSION_1_1 VK_MAKE_API_VERSION(0, 1, 1, 0)
#define VK_API_VERSION_1_2 VK_MAKE_API_VERSION(0, 1, 2, 0)
#define VK_API_VERSION_1_3 VK_MAKE_API_VERSION(0, 1, 3, 0)
#define VK_HEADER_VERSION 237
#define VK_HEADER_VERSION 240
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object;
#define VK_USE_64_BIT_PTR_DEFINES 0
@ -871,7 +875,7 @@ typedef VkFlags VkVideoCodingControlFlagsKHR;
typedef VkFlags VkVideoComponentBitDepthFlagsKHR;
typedef VkFlags VkVideoDecodeCapabilityFlagsKHR;
typedef VkFlags VkVideoDecodeFlagsKHR;
typedef VkFlags VkVideoDecodeH264PictureLayoutFlagsEXT;
typedef VkFlags VkVideoDecodeH264PictureLayoutFlagsKHR;
typedef VkFlags VkVideoDecodeUsageFlagsKHR;
typedef VkFlags VkVideoEncodeCapabilityFlagsKHR;
typedef VkFlags VkVideoEncodeContentFlagsKHR;
@ -1703,6 +1707,7 @@ typedef enum VkDriverId
VK_DRIVER_ID_MESA_VENUS = 22,
VK_DRIVER_ID_MESA_DOZEN = 23,
VK_DRIVER_ID_MESA_NVK = 24,
VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA = 25,
VK_DRIVER_ID_AMD_PROPRIETARY_KHR = VK_DRIVER_ID_AMD_PROPRIETARY,
VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR = VK_DRIVER_ID_AMD_OPEN_SOURCE,
VK_DRIVER_ID_MESA_RADV_KHR = VK_DRIVER_ID_MESA_RADV,
@ -3228,6 +3233,7 @@ static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHAD
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR = 0x4000000000ull;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI = 0x8000000000ull;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI = 0x10000000000ull;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_CLUSTER_CULLING_SHADER_BIT_HUAWEI = 0x20000000000ull;
typedef VkPipelineStageFlagBits2 VkPipelineStageFlagBits2KHR;
typedef enum VkPointClippingBehavior
@ -3318,6 +3324,7 @@ typedef enum VkQueryPipelineStatisticFlagBits
VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 0x00000400,
VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT = 0x00000800,
VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT = 0x00001000,
VK_QUERY_PIPELINE_STATISTIC_CLUSTER_CULLING_SHADER_INVOCATIONS_BIT_HUAWEI = 0x00002000,
VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM = 0x7fffffff,
} VkQueryPipelineStatisticFlagBits;
@ -3656,6 +3663,7 @@ typedef enum VkShaderStageFlagBits
VK_SHADER_STAGE_INTERSECTION_BIT_KHR = 0x00001000,
VK_SHADER_STAGE_CALLABLE_BIT_KHR = 0x00002000,
VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI = 0x00004000,
VK_SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI = 0x00080000,
VK_SHADER_STAGE_RAYGEN_BIT_NV = VK_SHADER_STAGE_RAYGEN_BIT_KHR,
VK_SHADER_STAGE_ANY_HIT_BIT_NV = VK_SHADER_STAGE_ANY_HIT_BIT_KHR,
VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,
@ -4259,6 +4267,8 @@ typedef enum VkStructureType
VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT = 1000396007,
VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT = 1000396008,
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT = 1000396009,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI = 1000404000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI = 1000404001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT = 1000411000,
VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT = 1000411001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT = 1000412000,
@ -4309,6 +4319,7 @@ typedef enum VkStructureType
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV = 1000490001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM = 1000497000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM = 1000497001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT = 1000498000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
@ -6835,6 +6846,23 @@ typedef struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT
} VkPhysicalDeviceBufferDeviceAddressFeaturesEXT;
typedef VkPhysicalDeviceBufferDeviceAddressFeaturesEXT VkPhysicalDeviceBufferAddressFeaturesEXT;
typedef struct VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI
{
VkStructureType sType;
void *pNext;
VkBool32 clustercullingShader;
VkBool32 multiviewClusterCullingShader;
} VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI;
typedef struct VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI
{
VkStructureType sType;
void *pNext;
uint32_t maxWorkGroupCount[3];
uint32_t maxWorkGroupSize[3];
uint32_t maxOutputClusterCount;
} VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI;
typedef struct VkPhysicalDeviceCoherentMemoryFeaturesAMD
{
VkStructureType sType;
@ -8102,6 +8130,13 @@ typedef struct VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR
VkBool32 pipelineExecutableInfo;
} VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR;
typedef struct VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT
{
VkStructureType sType;
void *pNext;
VkBool32 pipelineLibraryGroupHandles;
} VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT;
typedef struct VkPhysicalDevicePipelinePropertiesFeaturesEXT
{
VkStructureType sType;
@ -11671,6 +11706,8 @@ typedef void (VKAPI_PTR *PFN_vkCmdDispatchBase)(VkCommandBuffer, uint32_t, uint3
typedef void (VKAPI_PTR *PFN_vkCmdDispatchBaseKHR)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
typedef void (VKAPI_PTR *PFN_vkCmdDispatchIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize);
typedef void (VKAPI_PTR *PFN_vkCmdDraw)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, uint32_t);
typedef void (VKAPI_PTR *PFN_vkCmdDrawClusterHUAWEI)(VkCommandBuffer, uint32_t, uint32_t, uint32_t);
typedef void (VKAPI_PTR *PFN_vkCmdDrawClusterIndirectHUAWEI)(VkCommandBuffer, VkBuffer, VkDeviceSize);
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexed)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, int32_t, uint32_t);
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
typedef void (VKAPI_PTR *PFN_vkCmdDrawIndexedIndirectCount)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
@ -12206,6 +12243,8 @@ void VKAPI_CALL vkCmdDispatchBase(VkCommandBuffer commandBuffer, uint32_t baseGr
void VKAPI_CALL vkCmdDispatchBaseKHR(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);
void VKAPI_CALL vkCmdDispatchIndirect(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);
void VKAPI_CALL vkCmdDraw(VkCommandBuffer commandBuffer, uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance);
void VKAPI_CALL vkCmdDrawClusterHUAWEI(VkCommandBuffer commandBuffer, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ);
void VKAPI_CALL vkCmdDrawClusterIndirectHUAWEI(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset);
void VKAPI_CALL vkCmdDrawIndexed(VkCommandBuffer commandBuffer, uint32_t indexCount, uint32_t instanceCount, uint32_t firstIndex, int32_t vertexOffset, uint32_t firstInstance);
void VKAPI_CALL vkCmdDrawIndexedIndirect(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, uint32_t drawCount, uint32_t stride);
void VKAPI_CALL vkCmdDrawIndexedIndirectCount(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset, VkBuffer countBuffer, VkDeviceSize countBufferOffset, uint32_t maxDrawCount, uint32_t stride);