winevulkan: Update to VK spec version 1.3.246.

This commit is contained in:
Georg Lehmann 2023-03-31 15:50:26 +02:00 committed by Alexandre Julliard
parent c1a40a9c31
commit 36f5da51d0
7 changed files with 573 additions and 10 deletions

View file

@ -388,6 +388,16 @@ void WINAPI vkCmdBindPipelineShaderGroupNV(VkCommandBuffer commandBuffer, VkPipe
UNIX_CALL(vkCmdBindPipelineShaderGroupNV, &params);
}
void WINAPI vkCmdBindShadersEXT(VkCommandBuffer commandBuffer, uint32_t stageCount, const VkShaderStageFlagBits *pStages, const VkShaderEXT *pShaders)
{
struct vkCmdBindShadersEXT_params params;
params.commandBuffer = commandBuffer;
params.stageCount = stageCount;
params.pStages = pStages;
params.pShaders = pShaders;
UNIX_CALL(vkCmdBindShadersEXT, &params);
}
void WINAPI vkCmdBindShadingRateImageNV(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout)
{
struct vkCmdBindShadingRateImageNV_params params;
@ -3014,6 +3024,20 @@ VkResult WINAPI vkCreateShaderModule(VkDevice device, const VkShaderModuleCreate
return params.result;
}
VkResult WINAPI vkCreateShadersEXT(VkDevice device, uint32_t createInfoCount, const VkShaderCreateInfoEXT *pCreateInfos, const VkAllocationCallbacks *pAllocator, VkShaderEXT *pShaders)
{
struct vkCreateShadersEXT_params params;
NTSTATUS status;
params.device = device;
params.createInfoCount = createInfoCount;
params.pCreateInfos = pCreateInfos;
params.pAllocator = pAllocator;
params.pShaders = pShaders;
status = UNIX_CALL(vkCreateShadersEXT, &params);
assert(!status);
return params.result;
}
VkResult WINAPI vkCreateSwapchainKHR(VkDevice device, const VkSwapchainCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSwapchainKHR *pSwapchain)
{
struct vkCreateSwapchainKHR_params params;
@ -3454,6 +3478,17 @@ void WINAPI vkDestroySemaphore(VkDevice device, VkSemaphore semaphore, const VkA
assert(!status);
}
void WINAPI vkDestroyShaderEXT(VkDevice device, VkShaderEXT shader, const VkAllocationCallbacks *pAllocator)
{
struct vkDestroyShaderEXT_params params;
NTSTATUS status;
params.device = device;
params.shader = shader;
params.pAllocator = pAllocator;
status = UNIX_CALL(vkDestroyShaderEXT, &params);
assert(!status);
}
void WINAPI vkDestroyShaderModule(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks *pAllocator)
{
struct vkDestroyShaderModule_params params;
@ -5079,6 +5114,19 @@ VkResult WINAPI vkGetSemaphoreCounterValueKHR(VkDevice device, VkSemaphore semap
return params.result;
}
VkResult WINAPI vkGetShaderBinaryDataEXT(VkDevice device, VkShaderEXT shader, size_t *pDataSize, void *pData)
{
struct vkGetShaderBinaryDataEXT_params params;
NTSTATUS status;
params.device = device;
params.shader = shader;
params.pDataSize = pDataSize;
params.pData = pData;
status = UNIX_CALL(vkGetShaderBinaryDataEXT, &params);
assert(!status);
return params.result;
}
VkResult WINAPI vkGetShaderInfoAMD(VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t *pInfoSize, void *pInfo)
{
struct vkGetShaderInfoAMD_params params;
@ -5744,6 +5792,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCmdBindInvocationMaskHUAWEI", vkCmdBindInvocationMaskHUAWEI},
{"vkCmdBindPipeline", vkCmdBindPipeline},
{"vkCmdBindPipelineShaderGroupNV", vkCmdBindPipelineShaderGroupNV},
{"vkCmdBindShadersEXT", vkCmdBindShadersEXT},
{"vkCmdBindShadingRateImageNV", vkCmdBindShadingRateImageNV},
{"vkCmdBindTransformFeedbackBuffersEXT", vkCmdBindTransformFeedbackBuffersEXT},
{"vkCmdBindVertexBuffers", vkCmdBindVertexBuffers},
@ -6000,6 +6049,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkCreateSamplerYcbcrConversionKHR", vkCreateSamplerYcbcrConversionKHR},
{"vkCreateSemaphore", vkCreateSemaphore},
{"vkCreateShaderModule", vkCreateShaderModule},
{"vkCreateShadersEXT", vkCreateShadersEXT},
{"vkCreateSwapchainKHR", vkCreateSwapchainKHR},
{"vkCreateValidationCacheEXT", vkCreateValidationCacheEXT},
{"vkDebugMarkerSetObjectNameEXT", vkDebugMarkerSetObjectNameEXT},
@ -6037,6 +6087,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkDestroySamplerYcbcrConversion", vkDestroySamplerYcbcrConversion},
{"vkDestroySamplerYcbcrConversionKHR", vkDestroySamplerYcbcrConversionKHR},
{"vkDestroySemaphore", vkDestroySemaphore},
{"vkDestroyShaderEXT", vkDestroyShaderEXT},
{"vkDestroyShaderModule", vkDestroyShaderModule},
{"vkDestroySwapchainKHR", vkDestroySwapchainKHR},
{"vkDestroyValidationCacheEXT", vkDestroyValidationCacheEXT},
@ -6128,6 +6179,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
{"vkGetSamplerOpaqueCaptureDescriptorDataEXT", vkGetSamplerOpaqueCaptureDescriptorDataEXT},
{"vkGetSemaphoreCounterValue", vkGetSemaphoreCounterValue},
{"vkGetSemaphoreCounterValueKHR", vkGetSemaphoreCounterValueKHR},
{"vkGetShaderBinaryDataEXT", vkGetShaderBinaryDataEXT},
{"vkGetShaderInfoAMD", vkGetShaderInfoAMD},
{"vkGetShaderModuleCreateInfoIdentifierEXT", vkGetShaderModuleCreateInfoIdentifierEXT},
{"vkGetShaderModuleIdentifierEXT", vkGetShaderModuleIdentifierEXT},

View file

@ -52,6 +52,7 @@ enum unix_call
unix_vkCmdBindInvocationMaskHUAWEI,
unix_vkCmdBindPipeline,
unix_vkCmdBindPipelineShaderGroupNV,
unix_vkCmdBindShadersEXT,
unix_vkCmdBindShadingRateImageNV,
unix_vkCmdBindTransformFeedbackBuffersEXT,
unix_vkCmdBindVertexBuffers,
@ -312,6 +313,7 @@ enum unix_call
unix_vkCreateSamplerYcbcrConversionKHR,
unix_vkCreateSemaphore,
unix_vkCreateShaderModule,
unix_vkCreateShadersEXT,
unix_vkCreateSwapchainKHR,
unix_vkCreateValidationCacheEXT,
unix_vkCreateWin32SurfaceKHR,
@ -354,6 +356,7 @@ enum unix_call
unix_vkDestroySamplerYcbcrConversion,
unix_vkDestroySamplerYcbcrConversionKHR,
unix_vkDestroySemaphore,
unix_vkDestroyShaderEXT,
unix_vkDestroyShaderModule,
unix_vkDestroySurfaceKHR,
unix_vkDestroySwapchainKHR,
@ -497,6 +500,7 @@ enum unix_call
unix_vkGetSamplerOpaqueCaptureDescriptorDataEXT,
unix_vkGetSemaphoreCounterValue,
unix_vkGetSemaphoreCounterValueKHR,
unix_vkGetShaderBinaryDataEXT,
unix_vkGetShaderInfoAMD,
unix_vkGetShaderModuleCreateInfoIdentifierEXT,
unix_vkGetShaderModuleIdentifierEXT,
@ -834,6 +838,14 @@ struct vkCmdBindPipelineShaderGroupNV_params
uint32_t groupIndex;
};
struct vkCmdBindShadersEXT_params
{
VkCommandBuffer commandBuffer;
uint32_t stageCount;
const VkShaderStageFlagBits *pStages;
const VkShaderEXT *pShaders;
};
struct vkCmdBindShadingRateImageNV_params
{
VkCommandBuffer commandBuffer;
@ -2879,6 +2891,16 @@ struct vkCreateShaderModule_params
VkResult result;
};
struct vkCreateShadersEXT_params
{
VkDevice device;
uint32_t createInfoCount;
const VkShaderCreateInfoEXT *pCreateInfos;
const VkAllocationCallbacks *pAllocator;
VkShaderEXT *pShaders;
VkResult result;
};
struct vkCreateSwapchainKHR_params
{
VkDevice device;
@ -3182,6 +3204,13 @@ struct vkDestroySemaphore_params
const VkAllocationCallbacks *pAllocator;
};
struct vkDestroyShaderEXT_params
{
VkDevice device;
VkShaderEXT DECLSPEC_ALIGN(8) shader;
const VkAllocationCallbacks *pAllocator;
};
struct vkDestroyShaderModule_params
{
VkDevice device;
@ -4291,6 +4320,15 @@ struct vkGetSemaphoreCounterValueKHR_params
VkResult result;
};
struct vkGetShaderBinaryDataEXT_params
{
VkDevice device;
VkShaderEXT DECLSPEC_ALIGN(8) shader;
size_t *pDataSize;
void *pData;
VkResult result;
};
struct vkGetShaderInfoAMD_params
{
VkDevice device;

View file

@ -65,7 +65,7 @@ from enum import Enum
LOGGER = logging.Logger("vulkan")
LOGGER.addHandler(logging.StreamHandler())
VK_XML_VERSION = "1.3.242"
VK_XML_VERSION = "1.3.246"
WINE_VK_VERSION = (1, 3)
# Filenames to create.
@ -100,6 +100,7 @@ UNSUPPORTED_EXTENSIONS = [
"VK_GOOGLE_display_timing",
"VK_KHR_external_fence_win32",
"VK_KHR_external_semaphore_win32",
"VK_KHR_map_memory2", # Needs wow64 handling and is useless for now.
# 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

View file

@ -1286,6 +1286,7 @@ typedef struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfo32
uint32_t requiredSubgroupSize;
} VkPipelineShaderStageRequiredSubgroupSizeCreateInfo32;
typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo32 VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT32;
typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo32 VkShaderRequiredSubgroupSizeCreateInfoEXT32;
typedef struct VkPipelineShaderStageModuleIdentifierCreateInfoEXT32
{
@ -2802,6 +2803,22 @@ typedef struct VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM32
VkBool32 multiviewPerViewRenderAreas;
} VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM32;
typedef struct VkPhysicalDeviceShaderObjectFeaturesEXT32
{
VkStructureType sType;
PTR32 pNext;
VkBool32 shaderObject;
} VkPhysicalDeviceShaderObjectFeaturesEXT32;
typedef struct VkPhysicalDeviceShaderTileImageFeaturesEXT32
{
VkStructureType sType;
PTR32 pNext;
VkBool32 shaderTileImageColorReadAccess;
VkBool32 shaderTileImageDepthReadAccess;
VkBool32 shaderTileImageStencilReadAccess;
} VkPhysicalDeviceShaderTileImageFeaturesEXT32;
typedef struct VkDeviceCreateInfo32
{
VkStructureType sType;
@ -3892,6 +3909,24 @@ typedef struct VkSemaphoreCreateInfo32
VkSemaphoreCreateFlags flags;
} VkSemaphoreCreateInfo32;
typedef struct VkShaderCreateInfoEXT32
{
VkStructureType sType;
PTR32 pNext;
VkShaderCreateFlagsEXT flags;
VkShaderStageFlagBits stage;
VkShaderStageFlags nextStage;
VkShaderCodeTypeEXT codeType;
PTR32 codeSize;
PTR32 pCode;
PTR32 pName;
uint32_t setLayoutCount;
PTR32 pSetLayouts;
uint32_t pushConstantRangeCount;
PTR32 pPushConstantRanges;
PTR32 pSpecializationInfo;
} VkShaderCreateInfoEXT32;
typedef struct VkDeviceGroupSwapchainCreateInfoKHR32
{
VkStructureType sType;
@ -5271,6 +5306,7 @@ typedef struct VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI32
uint32_t maxWorkGroupCount[3];
uint32_t maxWorkGroupSize[3];
uint32_t maxOutputClusterCount;
VkDeviceSize DECLSPEC_ALIGN(8) indirectBufferOffsetAlignment;
} VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI32;
typedef struct VkPhysicalDeviceLineRasterizationPropertiesEXT32
@ -5645,6 +5681,23 @@ typedef struct VkPhysicalDeviceShaderCorePropertiesARM32
uint32_t fmaRate;
} VkPhysicalDeviceShaderCorePropertiesARM32;
typedef struct VkPhysicalDeviceShaderObjectPropertiesEXT32
{
VkStructureType sType;
PTR32 pNext;
uint8_t shaderBinaryUUID[VK_UUID_SIZE];
uint32_t shaderBinaryVersion;
} VkPhysicalDeviceShaderObjectPropertiesEXT32;
typedef struct VkPhysicalDeviceShaderTileImagePropertiesEXT32
{
VkStructureType sType;
PTR32 pNext;
VkBool32 shaderTileImageCoherentReadAccelerated;
VkBool32 shaderTileImageReadSampleFromPixelRateInvocation;
VkBool32 shaderTileImageReadFromHelperInvocation;
} VkPhysicalDeviceShaderTileImagePropertiesEXT32;
typedef struct VkPhysicalDeviceProperties232
{
VkStructureType sType;
@ -11589,6 +11642,30 @@ static inline void convert_VkDeviceCreateInfo_win64_to_host(struct conversion_co
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT:
{
VkPhysicalDeviceShaderObjectFeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDeviceShaderObjectFeaturesEXT *in_ext = (const VkPhysicalDeviceShaderObjectFeaturesEXT *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT;
out_ext->pNext = NULL;
out_ext->shaderObject = in_ext->shaderObject;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT:
{
VkPhysicalDeviceShaderTileImageFeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDeviceShaderTileImageFeaturesEXT *in_ext = (const VkPhysicalDeviceShaderTileImageFeaturesEXT *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT;
out_ext->pNext = NULL;
out_ext->shaderTileImageColorReadAccess = in_ext->shaderTileImageColorReadAccess;
out_ext->shaderTileImageDepthReadAccess = in_ext->shaderTileImageDepthReadAccess;
out_ext->shaderTileImageStencilReadAccess = in_ext->shaderTileImageStencilReadAccess;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
default:
FIXME("Unhandled sType %u.\n", in_header->sType);
break;
@ -13484,6 +13561,30 @@ static inline void convert_VkDeviceCreateInfo_win32_to_host(struct conversion_co
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT:
{
VkPhysicalDeviceShaderObjectFeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDeviceShaderObjectFeaturesEXT32 *in_ext = (const VkPhysicalDeviceShaderObjectFeaturesEXT32 *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT;
out_ext->pNext = NULL;
out_ext->shaderObject = in_ext->shaderObject;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT:
{
VkPhysicalDeviceShaderTileImageFeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDeviceShaderTileImageFeaturesEXT32 *in_ext = (const VkPhysicalDeviceShaderTileImageFeaturesEXT32 *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT;
out_ext->pNext = NULL;
out_ext->shaderTileImageColorReadAccess = in_ext->shaderTileImageColorReadAccess;
out_ext->shaderTileImageDepthReadAccess = in_ext->shaderTileImageDepthReadAccess;
out_ext->shaderTileImageStencilReadAccess = in_ext->shaderTileImageStencilReadAccess;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
default:
FIXME("Unhandled sType %u.\n", in_header->sType);
break;
@ -16470,6 +16571,66 @@ static inline void convert_VkShaderModuleCreateInfo_win32_to_host(struct convers
}
}
static inline void convert_VkShaderCreateInfoEXT_win32_to_host(struct conversion_context *ctx, const VkShaderCreateInfoEXT32 *in, VkShaderCreateInfoEXT *out)
{
const VkBaseInStructure32 *in_header;
VkBaseOutStructure *out_header = (void *)out;
if (!in) return;
out->sType = in->sType;
out->pNext = NULL;
out->flags = in->flags;
out->stage = in->stage;
out->nextStage = in->nextStage;
out->codeType = in->codeType;
out->codeSize = in->codeSize;
out->pCode = (const void *)UlongToPtr(in->pCode);
out->pName = (const char *)UlongToPtr(in->pName);
out->setLayoutCount = in->setLayoutCount;
out->pSetLayouts = (const VkDescriptorSetLayout *)UlongToPtr(in->pSetLayouts);
out->pushConstantRangeCount = in->pushConstantRangeCount;
out->pPushConstantRanges = (const VkPushConstantRange *)UlongToPtr(in->pPushConstantRanges);
out->pSpecializationInfo = convert_VkSpecializationInfo_array_win32_to_host(ctx, (const VkSpecializationInfo32 *)UlongToPtr(in->pSpecializationInfo), 1);
for (in_header = UlongToPtr(in->pNext); in_header; in_header = UlongToPtr(in_header->pNext))
{
switch (in_header->sType)
{
case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO:
{
VkPipelineShaderStageRequiredSubgroupSizeCreateInfo *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo32 *in_ext = (const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo32 *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO;
out_ext->pNext = NULL;
out_ext->requiredSubgroupSize = in_ext->requiredSubgroupSize;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
default:
FIXME("Unhandled sType %u.\n", in_header->sType);
break;
}
}
}
static inline const VkShaderCreateInfoEXT *convert_VkShaderCreateInfoEXT_array_win32_to_host(struct conversion_context *ctx, const VkShaderCreateInfoEXT32 *in, uint32_t count)
{
VkShaderCreateInfoEXT *out;
unsigned int i;
if (!in || !count) return NULL;
out = conversion_context_alloc(ctx, count * sizeof(*out));
for (i = 0; i < count; i++)
{
convert_VkShaderCreateInfoEXT_win32_to_host(ctx, &in[i], &out[i]);
}
return out;
}
#ifdef _WIN64
static inline void convert_VkSwapchainCreateInfoKHR_win64_to_host(const VkSwapchainCreateInfoKHR *in, VkSwapchainCreateInfoKHR *out)
{
@ -19914,6 +20075,30 @@ static inline void convert_VkPhysicalDeviceFeatures2_win32_to_host(struct conver
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT:
{
VkPhysicalDeviceShaderObjectFeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDeviceShaderObjectFeaturesEXT32 *in_ext = (const VkPhysicalDeviceShaderObjectFeaturesEXT32 *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT;
out_ext->pNext = NULL;
out_ext->shaderObject = in_ext->shaderObject;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT:
{
VkPhysicalDeviceShaderTileImageFeaturesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
const VkPhysicalDeviceShaderTileImageFeaturesEXT32 *in_ext = (const VkPhysicalDeviceShaderTileImageFeaturesEXT32 *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT;
out_ext->pNext = NULL;
out_ext->shaderTileImageColorReadAccess = in_ext->shaderTileImageColorReadAccess;
out_ext->shaderTileImageDepthReadAccess = in_ext->shaderTileImageDepthReadAccess;
out_ext->shaderTileImageStencilReadAccess = in_ext->shaderTileImageStencilReadAccess;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
default:
FIXME("Unhandled sType %u.\n", in_header->sType);
break;
@ -21453,6 +21638,26 @@ static inline void convert_VkPhysicalDeviceFeatures2_host_to_win32(const VkPhysi
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT:
{
VkPhysicalDeviceShaderObjectFeaturesEXT32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT);
const VkPhysicalDeviceShaderObjectFeaturesEXT *in_ext = (const VkPhysicalDeviceShaderObjectFeaturesEXT *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT;
out_ext->shaderObject = in_ext->shaderObject;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT:
{
VkPhysicalDeviceShaderTileImageFeaturesEXT32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT);
const VkPhysicalDeviceShaderTileImageFeaturesEXT *in_ext = (const VkPhysicalDeviceShaderTileImageFeaturesEXT *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT;
out_ext->shaderTileImageColorReadAccess = in_ext->shaderTileImageColorReadAccess;
out_ext->shaderTileImageDepthReadAccess = in_ext->shaderTileImageDepthReadAccess;
out_ext->shaderTileImageStencilReadAccess = in_ext->shaderTileImageStencilReadAccess;
out_header = (void *)out_ext;
break;
}
default:
break;
}
@ -22743,6 +22948,24 @@ static inline void convert_VkPhysicalDeviceProperties2_win32_to_host(struct conv
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT:
{
VkPhysicalDeviceShaderObjectPropertiesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT;
out_ext->pNext = NULL;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT:
{
VkPhysicalDeviceShaderTileImagePropertiesEXT *out_ext = conversion_context_alloc(ctx, sizeof(*out_ext));
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT;
out_ext->pNext = NULL;
out_header->pNext = (void *)out_ext;
out_header = (void *)out_ext;
break;
}
default:
FIXME("Unhandled sType %u.\n", in_header->sType);
break;
@ -23351,6 +23574,7 @@ static inline void convert_VkPhysicalDeviceProperties2_host_to_win32(const VkPhy
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_ext->indirectBufferOffsetAlignment = in_ext->indirectBufferOffsetAlignment;
out_header = (void *)out_ext;
break;
}
@ -23771,6 +23995,27 @@ static inline void convert_VkPhysicalDeviceProperties2_host_to_win32(const VkPhy
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT:
{
VkPhysicalDeviceShaderObjectPropertiesEXT32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT);
const VkPhysicalDeviceShaderObjectPropertiesEXT *in_ext = (const VkPhysicalDeviceShaderObjectPropertiesEXT *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT;
memcpy(out_ext->shaderBinaryUUID, in_ext->shaderBinaryUUID, VK_UUID_SIZE * sizeof(uint8_t));
out_ext->shaderBinaryVersion = in_ext->shaderBinaryVersion;
out_header = (void *)out_ext;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT:
{
VkPhysicalDeviceShaderTileImagePropertiesEXT32 *out_ext = find_next_struct32(out_header, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT);
const VkPhysicalDeviceShaderTileImagePropertiesEXT *in_ext = (const VkPhysicalDeviceShaderTileImagePropertiesEXT *)in_header;
out_ext->sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT;
out_ext->shaderTileImageCoherentReadAccelerated = in_ext->shaderTileImageCoherentReadAccelerated;
out_ext->shaderTileImageReadSampleFromPixelRateInvocation = in_ext->shaderTileImageReadSampleFromPixelRateInvocation;
out_ext->shaderTileImageReadFromHelperInvocation = in_ext->shaderTileImageReadFromHelperInvocation;
out_header = (void *)out_ext;
break;
}
default:
break;
}
@ -26764,6 +27009,28 @@ static void thunk32_vkCmdBindPipelineShaderGroupNV(void *args)
wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->device->funcs.p_vkCmdBindPipelineShaderGroupNV(wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->command_buffer, params->pipelineBindPoint, params->pipeline, params->groupIndex);
}
#ifdef _WIN64
static void thunk64_vkCmdBindShadersEXT(void *args)
{
struct vkCmdBindShadersEXT_params *params = args;
wine_cmd_buffer_from_handle(params->commandBuffer)->device->funcs.p_vkCmdBindShadersEXT(wine_cmd_buffer_from_handle(params->commandBuffer)->command_buffer, params->stageCount, params->pStages, params->pShaders);
}
#endif /* _WIN64 */
static void thunk32_vkCmdBindShadersEXT(void *args)
{
struct
{
PTR32 commandBuffer;
uint32_t stageCount;
PTR32 pStages;
PTR32 pShaders;
} *params = args;
wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->device->funcs.p_vkCmdBindShadersEXT(wine_cmd_buffer_from_handle((VkCommandBuffer)UlongToPtr(params->commandBuffer))->command_buffer, params->stageCount, (const VkShaderStageFlagBits *)UlongToPtr(params->pStages), (const VkShaderEXT *)UlongToPtr(params->pShaders));
}
#ifdef _WIN64
static void thunk64_vkCmdBindShadingRateImageNV(void *args)
{
@ -33225,6 +33492,41 @@ static NTSTATUS thunk32_vkCreateShaderModule(void *args)
return STATUS_SUCCESS;
}
#ifdef _WIN64
static NTSTATUS thunk64_vkCreateShadersEXT(void *args)
{
struct vkCreateShadersEXT_params *params = args;
TRACE("%p, %u, %p, %p, %p\n", params->device, params->createInfoCount, params->pCreateInfos, params->pAllocator, params->pShaders);
params->result = wine_device_from_handle(params->device)->funcs.p_vkCreateShadersEXT(wine_device_from_handle(params->device)->device, params->createInfoCount, params->pCreateInfos, NULL, params->pShaders);
return STATUS_SUCCESS;
}
#endif /* _WIN64 */
static NTSTATUS thunk32_vkCreateShadersEXT(void *args)
{
struct
{
PTR32 device;
uint32_t createInfoCount;
PTR32 pCreateInfos;
PTR32 pAllocator;
PTR32 pShaders;
VkResult result;
} *params = args;
const VkShaderCreateInfoEXT *pCreateInfos_host;
struct conversion_context ctx;
TRACE("%#x, %u, %#x, %#x, %#x\n", params->device, params->createInfoCount, params->pCreateInfos, params->pAllocator, params->pShaders);
init_conversion_context(&ctx);
pCreateInfos_host = convert_VkShaderCreateInfoEXT_array_win32_to_host(&ctx, (const VkShaderCreateInfoEXT32 *)UlongToPtr(params->pCreateInfos), params->createInfoCount);
params->result = wine_device_from_handle((VkDevice)UlongToPtr(params->device))->funcs.p_vkCreateShadersEXT(wine_device_from_handle((VkDevice)UlongToPtr(params->device))->device, params->createInfoCount, pCreateInfos_host, NULL, (VkShaderEXT *)UlongToPtr(params->pShaders));
free_conversion_context(&ctx);
return STATUS_SUCCESS;
}
#ifdef _WIN64
static NTSTATUS thunk64_vkCreateSwapchainKHR(void *args)
{
@ -34399,6 +34701,33 @@ static NTSTATUS thunk32_vkDestroySemaphore(void *args)
return STATUS_SUCCESS;
}
#ifdef _WIN64
static NTSTATUS thunk64_vkDestroyShaderEXT(void *args)
{
struct vkDestroyShaderEXT_params *params = args;
TRACE("%p, 0x%s, %p\n", params->device, wine_dbgstr_longlong(params->shader), params->pAllocator);
wine_device_from_handle(params->device)->funcs.p_vkDestroyShaderEXT(wine_device_from_handle(params->device)->device, params->shader, NULL);
return STATUS_SUCCESS;
}
#endif /* _WIN64 */
static NTSTATUS thunk32_vkDestroyShaderEXT(void *args)
{
struct
{
PTR32 device;
VkShaderEXT DECLSPEC_ALIGN(8) shader;
PTR32 pAllocator;
} *params = args;
TRACE("%#x, 0x%s, %#x\n", params->device, wine_dbgstr_longlong(params->shader), params->pAllocator);
wine_device_from_handle((VkDevice)UlongToPtr(params->device))->funcs.p_vkDestroyShaderEXT(wine_device_from_handle((VkDevice)UlongToPtr(params->device))->device, params->shader, NULL);
return STATUS_SUCCESS;
}
#ifdef _WIN64
static NTSTATUS thunk64_vkDestroyShaderModule(void *args)
{
@ -38899,6 +39228,38 @@ static NTSTATUS thunk32_vkGetSemaphoreCounterValueKHR(void *args)
return STATUS_SUCCESS;
}
#ifdef _WIN64
static NTSTATUS thunk64_vkGetShaderBinaryDataEXT(void *args)
{
struct vkGetShaderBinaryDataEXT_params *params = args;
TRACE("%p, 0x%s, %p, %p\n", params->device, wine_dbgstr_longlong(params->shader), params->pDataSize, params->pData);
params->result = wine_device_from_handle(params->device)->funcs.p_vkGetShaderBinaryDataEXT(wine_device_from_handle(params->device)->device, params->shader, params->pDataSize, params->pData);
return STATUS_SUCCESS;
}
#endif /* _WIN64 */
static NTSTATUS thunk32_vkGetShaderBinaryDataEXT(void *args)
{
struct
{
PTR32 device;
VkShaderEXT DECLSPEC_ALIGN(8) shader;
PTR32 pDataSize;
PTR32 pData;
VkResult result;
} *params = args;
size_t pDataSize_host;
TRACE("%#x, 0x%s, %#x, %#x\n", params->device, wine_dbgstr_longlong(params->shader), params->pDataSize, params->pData);
pDataSize_host = *(PTR32 *)UlongToPtr(params->pDataSize);
params->result = wine_device_from_handle((VkDevice)UlongToPtr(params->device))->funcs.p_vkGetShaderBinaryDataEXT(wine_device_from_handle((VkDevice)UlongToPtr(params->device))->device, params->shader, &pDataSize_host, (void *)UlongToPtr(params->pData));
*(PTR32 *)UlongToPtr(params->pDataSize) = pDataSize_host;
return STATUS_SUCCESS;
}
#ifdef _WIN64
static NTSTATUS thunk64_vkGetShaderInfoAMD(void *args)
{
@ -40590,9 +40951,11 @@ static const char * const vk_device_extensions[] =
"VK_EXT_shader_demote_to_helper_invocation",
"VK_EXT_shader_image_atomic_int64",
"VK_EXT_shader_module_identifier",
"VK_EXT_shader_object",
"VK_EXT_shader_stencil_export",
"VK_EXT_shader_subgroup_ballot",
"VK_EXT_shader_subgroup_vote",
"VK_EXT_shader_tile_image",
"VK_EXT_shader_viewport_index_layer",
"VK_EXT_subgroup_size_control",
"VK_EXT_subpass_merge_feedback",
@ -40831,6 +41194,7 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
(void *)thunk64_vkCmdBindInvocationMaskHUAWEI,
(void *)thunk64_vkCmdBindPipeline,
(void *)thunk64_vkCmdBindPipelineShaderGroupNV,
(void *)thunk64_vkCmdBindShadersEXT,
(void *)thunk64_vkCmdBindShadingRateImageNV,
(void *)thunk64_vkCmdBindTransformFeedbackBuffersEXT,
(void *)thunk64_vkCmdBindVertexBuffers,
@ -41091,6 +41455,7 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk64_vkCreateSamplerYcbcrConversionKHR,
thunk64_vkCreateSemaphore,
thunk64_vkCreateShaderModule,
thunk64_vkCreateShadersEXT,
thunk64_vkCreateSwapchainKHR,
thunk64_vkCreateValidationCacheEXT,
thunk64_vkCreateWin32SurfaceKHR,
@ -41133,6 +41498,7 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk64_vkDestroySamplerYcbcrConversion,
thunk64_vkDestroySamplerYcbcrConversionKHR,
thunk64_vkDestroySemaphore,
thunk64_vkDestroyShaderEXT,
thunk64_vkDestroyShaderModule,
thunk64_vkDestroySurfaceKHR,
thunk64_vkDestroySwapchainKHR,
@ -41276,6 +41642,7 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk64_vkGetSamplerOpaqueCaptureDescriptorDataEXT,
thunk64_vkGetSemaphoreCounterValue,
thunk64_vkGetSemaphoreCounterValueKHR,
thunk64_vkGetShaderBinaryDataEXT,
thunk64_vkGetShaderInfoAMD,
thunk64_vkGetShaderModuleCreateInfoIdentifierEXT,
thunk64_vkGetShaderModuleIdentifierEXT,
@ -41378,6 +41745,7 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
(void *)thunk32_vkCmdBindInvocationMaskHUAWEI,
(void *)thunk32_vkCmdBindPipeline,
(void *)thunk32_vkCmdBindPipelineShaderGroupNV,
(void *)thunk32_vkCmdBindShadersEXT,
(void *)thunk32_vkCmdBindShadingRateImageNV,
(void *)thunk32_vkCmdBindTransformFeedbackBuffersEXT,
(void *)thunk32_vkCmdBindVertexBuffers,
@ -41638,6 +42006,7 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk32_vkCreateSamplerYcbcrConversionKHR,
thunk32_vkCreateSemaphore,
thunk32_vkCreateShaderModule,
thunk32_vkCreateShadersEXT,
thunk32_vkCreateSwapchainKHR,
thunk32_vkCreateValidationCacheEXT,
thunk32_vkCreateWin32SurfaceKHR,
@ -41680,6 +42049,7 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk32_vkDestroySamplerYcbcrConversion,
thunk32_vkDestroySamplerYcbcrConversionKHR,
thunk32_vkDestroySemaphore,
thunk32_vkDestroyShaderEXT,
thunk32_vkDestroyShaderModule,
thunk32_vkDestroySurfaceKHR,
thunk32_vkDestroySwapchainKHR,
@ -41823,6 +42193,7 @@ const unixlib_entry_t __wine_unix_call_funcs[] =
thunk32_vkGetSamplerOpaqueCaptureDescriptorDataEXT,
thunk32_vkGetSemaphoreCounterValue,
thunk32_vkGetSemaphoreCounterValueKHR,
thunk32_vkGetShaderBinaryDataEXT,
thunk32_vkGetShaderInfoAMD,
thunk32_vkGetShaderModuleCreateInfoIdentifierEXT,
thunk32_vkGetShaderModuleIdentifierEXT,

View file

@ -95,6 +95,7 @@ struct vulkan_device_funcs
void (*p_vkCmdBindInvocationMaskHUAWEI)(VkCommandBuffer, VkImageView, VkImageLayout);
void (*p_vkCmdBindPipeline)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline);
void (*p_vkCmdBindPipelineShaderGroupNV)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline, uint32_t);
void (*p_vkCmdBindShadersEXT)(VkCommandBuffer, uint32_t, const VkShaderStageFlagBits *, const VkShaderEXT *);
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 *);
@ -351,6 +352,7 @@ struct vulkan_device_funcs
VkResult (*p_vkCreateSamplerYcbcrConversionKHR)(VkDevice, const VkSamplerYcbcrConversionCreateInfo *, const VkAllocationCallbacks *, VkSamplerYcbcrConversion *);
VkResult (*p_vkCreateSemaphore)(VkDevice, const VkSemaphoreCreateInfo *, const VkAllocationCallbacks *, VkSemaphore *);
VkResult (*p_vkCreateShaderModule)(VkDevice, const VkShaderModuleCreateInfo *, const VkAllocationCallbacks *, VkShaderModule *);
VkResult (*p_vkCreateShadersEXT)(VkDevice, uint32_t, const VkShaderCreateInfoEXT *, const VkAllocationCallbacks *, VkShaderEXT *);
VkResult (*p_vkCreateSwapchainKHR)(VkDevice, const VkSwapchainCreateInfoKHR *, const VkAllocationCallbacks *, VkSwapchainKHR *);
VkResult (*p_vkCreateValidationCacheEXT)(VkDevice, const VkValidationCacheCreateInfoEXT *, const VkAllocationCallbacks *, VkValidationCacheEXT *);
VkResult (*p_vkDebugMarkerSetObjectNameEXT)(VkDevice, const VkDebugMarkerObjectNameInfoEXT *);
@ -388,6 +390,7 @@ struct vulkan_device_funcs
void (*p_vkDestroySamplerYcbcrConversion)(VkDevice, VkSamplerYcbcrConversion, const VkAllocationCallbacks *);
void (*p_vkDestroySamplerYcbcrConversionKHR)(VkDevice, VkSamplerYcbcrConversion, const VkAllocationCallbacks *);
void (*p_vkDestroySemaphore)(VkDevice, VkSemaphore, const VkAllocationCallbacks *);
void (*p_vkDestroyShaderEXT)(VkDevice, VkShaderEXT, const VkAllocationCallbacks *);
void (*p_vkDestroyShaderModule)(VkDevice, VkShaderModule, const VkAllocationCallbacks *);
void (*p_vkDestroySwapchainKHR)(VkDevice, VkSwapchainKHR, const VkAllocationCallbacks *);
void (*p_vkDestroyValidationCacheEXT)(VkDevice, VkValidationCacheEXT, const VkAllocationCallbacks *);
@ -478,6 +481,7 @@ struct vulkan_device_funcs
VkResult (*p_vkGetSamplerOpaqueCaptureDescriptorDataEXT)(VkDevice, const VkSamplerCaptureDescriptorDataInfoEXT *, void *);
VkResult (*p_vkGetSemaphoreCounterValue)(VkDevice, VkSemaphore, uint64_t *);
VkResult (*p_vkGetSemaphoreCounterValueKHR)(VkDevice, VkSemaphore, uint64_t *);
VkResult (*p_vkGetShaderBinaryDataEXT)(VkDevice, VkShaderEXT, size_t *, void *);
VkResult (*p_vkGetShaderInfoAMD)(VkDevice, VkPipeline, VkShaderStageFlagBits, VkShaderInfoTypeAMD, size_t *, void *);
void (*p_vkGetShaderModuleCreateInfoIdentifierEXT)(VkDevice, const VkShaderModuleCreateInfo *, VkShaderModuleIdentifierEXT *);
void (*p_vkGetShaderModuleIdentifierEXT)(VkDevice, VkShaderModule, VkShaderModuleIdentifierEXT *);
@ -626,6 +630,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCmdBindInvocationMaskHUAWEI) \
USE_VK_FUNC(vkCmdBindPipeline) \
USE_VK_FUNC(vkCmdBindPipelineShaderGroupNV) \
USE_VK_FUNC(vkCmdBindShadersEXT) \
USE_VK_FUNC(vkCmdBindShadingRateImageNV) \
USE_VK_FUNC(vkCmdBindTransformFeedbackBuffersEXT) \
USE_VK_FUNC(vkCmdBindVertexBuffers) \
@ -882,6 +887,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkCreateSamplerYcbcrConversionKHR) \
USE_VK_FUNC(vkCreateSemaphore) \
USE_VK_FUNC(vkCreateShaderModule) \
USE_VK_FUNC(vkCreateShadersEXT) \
USE_VK_FUNC(vkCreateSwapchainKHR) \
USE_VK_FUNC(vkCreateValidationCacheEXT) \
USE_VK_FUNC(vkDebugMarkerSetObjectNameEXT) \
@ -919,6 +925,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkDestroySamplerYcbcrConversion) \
USE_VK_FUNC(vkDestroySamplerYcbcrConversionKHR) \
USE_VK_FUNC(vkDestroySemaphore) \
USE_VK_FUNC(vkDestroyShaderEXT) \
USE_VK_FUNC(vkDestroyShaderModule) \
USE_VK_FUNC(vkDestroySwapchainKHR) \
USE_VK_FUNC(vkDestroyValidationCacheEXT) \
@ -1009,6 +1016,7 @@ struct vulkan_instance_funcs
USE_VK_FUNC(vkGetSamplerOpaqueCaptureDescriptorDataEXT) \
USE_VK_FUNC(vkGetSemaphoreCounterValue) \
USE_VK_FUNC(vkGetSemaphoreCounterValueKHR) \
USE_VK_FUNC(vkGetShaderBinaryDataEXT) \
USE_VK_FUNC(vkGetShaderInfoAMD) \
USE_VK_FUNC(vkGetShaderModuleCreateInfoIdentifierEXT) \
USE_VK_FUNC(vkGetShaderModuleIdentifierEXT) \

View file

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

View file

@ -525,6 +525,8 @@
#define VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME "VK_EXT_image_2d_view_of_3d"
#define VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION 1
#define VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME "VK_KHR_portability_enumeration"
#define VK_EXT_SHADER_TILE_IMAGE_SPEC_VERSION 1
#define VK_EXT_SHADER_TILE_IMAGE_EXTENSION_NAME "VK_EXT_shader_tile_image"
#define VK_EXT_OPACITY_MICROMAP_SPEC_VERSION 2
#define VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME "VK_EXT_opacity_micromap"
#define VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION 1
@ -573,6 +575,8 @@
#define VK_EXT_LEGACY_DITHERING_EXTENSION_NAME "VK_EXT_legacy_dithering"
#define VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION 1
#define VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME "VK_EXT_pipeline_protected_access"
#define VK_EXT_SHADER_OBJECT_SPEC_VERSION 1
#define VK_EXT_SHADER_OBJECT_EXTENSION_NAME "VK_EXT_shader_object"
#define VK_QCOM_TILE_PROPERTIES_SPEC_VERSION 1
#define VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME "VK_QCOM_tile_properties"
#define VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_SPEC_VERSION 1
@ -613,7 +617,7 @@
#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 VKSC_API_VERSION_1_0 VK_MAKE_API_VERSION(VKSC_API_VARIANT, 1, 0, 0)
#define VK_HEADER_VERSION 242
#define VK_HEADER_VERSION 246
#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
@ -681,6 +685,7 @@ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSampler)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSamplerYcbcrConversion)
typedef VkSamplerYcbcrConversion VkSamplerYcbcrConversionKHR;
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSemaphore)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderEXT)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderModule)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSwapchainKHR)
@ -801,6 +806,7 @@ typedef VkFlags64 VkMemoryDecompressionMethodFlagsNV;
typedef VkFlags VkMemoryHeapFlags;
typedef VkFlags VkMemoryMapFlags;
typedef VkFlags VkMemoryPropertyFlags;
typedef VkFlags VkMemoryUnmapFlagsKHR;
typedef VkFlags VkMetalSurfaceCreateFlagsEXT;
typedef VkFlags VkMicromapCreateFlagsEXT;
typedef VkFlags VkOpticalFlowExecuteFlagsNV;
@ -863,6 +869,7 @@ typedef VkSemaphoreImportFlags VkSemaphoreImportFlagsKHR;
typedef VkFlags VkSemaphoreWaitFlags;
typedef VkSemaphoreWaitFlags VkSemaphoreWaitFlagsKHR;
typedef VkFlags VkShaderCorePropertiesFlagsAMD;
typedef VkFlags VkShaderCreateFlagsEXT;
typedef VkFlags VkShaderModuleCreateFlags;
typedef VkFlags VkShaderStageFlags;
typedef VkFlags VkSparseImageFormatFlags;
@ -893,14 +900,11 @@ typedef VkFlags VkVideoDecodeH264PictureLayoutFlagsKHR;
typedef VkFlags VkVideoDecodeUsageFlagsKHR;
typedef VkFlags VkVideoEncodeCapabilityFlagsKHR;
typedef VkFlags VkVideoEncodeContentFlagsKHR;
typedef VkFlags VkVideoEncodeFeedbackFlagsKHR;
typedef VkFlags VkVideoEncodeFlagsKHR;
typedef VkFlags VkVideoEncodeH264CapabilityFlagsEXT;
typedef VkFlags VkVideoEncodeH264InputModeFlagsEXT;
typedef VkFlags VkVideoEncodeH264OutputModeFlagsEXT;
typedef VkFlags VkVideoEncodeH265CapabilityFlagsEXT;
typedef VkFlags VkVideoEncodeH265CtbSizeFlagsEXT;
typedef VkFlags VkVideoEncodeH265InputModeFlagsEXT;
typedef VkFlags VkVideoEncodeH265OutputModeFlagsEXT;
typedef VkFlags VkVideoEncodeH265TransformBlockSizeFlagsEXT;
typedef VkFlags VkVideoEncodeRateControlFlagsKHR;
typedef VkFlags VkVideoEncodeRateControlModeFlagsKHR;
@ -2816,6 +2820,7 @@ typedef enum VkObjectType
VK_OBJECT_TYPE_PRIVATE_DATA_SLOT = 1000295000,
VK_OBJECT_TYPE_MICROMAP_EXT = 1000396000,
VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV = 1000464000,
VK_OBJECT_TYPE_SHADER_EXT = 1000482000,
VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT,
@ -3504,6 +3509,7 @@ typedef enum VkResult
VK_OPERATION_DEFERRED_KHR = 1000268002,
VK_OPERATION_NOT_DEFERRED_KHR = 1000268003,
VK_PIPELINE_COMPILE_REQUIRED = 1000297000,
VK_ERROR_INCOMPATIBLE_SHADER_BINARY_EXT = 1000482000,
VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VK_ERROR_OUT_OF_POOL_MEMORY,
VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR = VK_ERROR_INVALID_EXTERNAL_HANDLE,
VK_ERROR_FRAGMENTATION_EXT = VK_ERROR_FRAGMENTATION,
@ -3628,11 +3634,30 @@ typedef enum VkSemaphoreWaitFlagBits
} VkSemaphoreWaitFlagBits;
typedef VkSemaphoreWaitFlagBits VkSemaphoreWaitFlagBitsKHR;
typedef enum VkShaderCodeTypeEXT
{
VK_SHADER_CODE_TYPE_BINARY_EXT = 0,
VK_SHADER_CODE_TYPE_SPIRV_EXT = 1,
VK_SHADER_CODE_TYPE_EXT_MAX_ENUM = 0x7fffffff,
} VkShaderCodeTypeEXT;
typedef enum VkShaderCorePropertiesFlagBitsAMD
{
VK_SHADER_CORE_PROPERTIES_FLAG_BITS_AMD_MAX_ENUM = 0x7fffffff,
} VkShaderCorePropertiesFlagBitsAMD;
typedef enum VkShaderCreateFlagBitsEXT
{
VK_SHADER_CREATE_LINK_STAGE_BIT_EXT = 0x00000001,
VK_SHADER_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT = 0x00000002,
VK_SHADER_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT = 0x00000004,
VK_SHADER_CREATE_NO_TASK_SHADER_BIT_EXT = 0x00000008,
VK_SHADER_CREATE_DISPATCH_BASE_BIT_EXT = 0x00000010,
VK_SHADER_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_EXT = 0x00000020,
VK_SHADER_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = 0x00000040,
VK_SHADER_CREATE_FLAG_BITS_EXT_MAX_ENUM = 0x7fffffff,
} VkShaderCreateFlagBitsEXT;
typedef enum VkShaderFloatControlsIndependence
{
VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY = 0,
@ -4276,6 +4301,8 @@ typedef enum VkStructureType
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT = 1000392000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT = 1000392001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT = 1000393000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT = 1000395000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT = 1000395001,
VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT = 1000396000,
VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT = 1000396001,
VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT = 1000396002,
@ -4334,6 +4361,9 @@ typedef enum VkStructureType
VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV = 1000464010,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT = 1000465000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT = 1000466000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT = 1000482000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT = 1000482001,
VK_STRUCTURE_TYPE_SHADER_CREATE_INFO_EXT = 1000482002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM = 1000484000,
VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM = 1000484001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM = 1000488000,
@ -4516,6 +4546,7 @@ typedef enum VkStructureType
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES,
VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR = VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS,
VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR = VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS,
VK_STRUCTURE_TYPE_SHADER_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO,
VK_STRUCTURE_TYPE_MAX_ENUM = 0x7fffffff,
} VkStructureType;
@ -4695,6 +4726,7 @@ typedef enum VkVendorId
VK_VENDOR_ID_CODEPLAY = 0x00010004,
VK_VENDOR_ID_MESA = 0x00010005,
VK_VENDOR_ID_POCL = 0x00010006,
VK_VENDOR_ID_MOBILEYE = 0x00010007,
VK_VENDOR_ID_MAX_ENUM = 0x7fffffff,
} VkVendorId;
@ -6900,6 +6932,7 @@ typedef struct VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI
uint32_t maxWorkGroupCount[3];
uint32_t maxWorkGroupSize[3];
uint32_t maxOutputClusterCount;
VkDeviceSize WINE_VK_ALIGN(8) indirectBufferOffsetAlignment;
} VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI;
typedef struct VkPhysicalDeviceCoherentMemoryFeaturesAMD
@ -8694,6 +8727,21 @@ typedef struct VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT
uint8_t shaderModuleIdentifierAlgorithmUUID[VK_UUID_SIZE];
} VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT;
typedef struct VkPhysicalDeviceShaderObjectFeaturesEXT
{
VkStructureType sType;
void *pNext;
VkBool32 shaderObject;
} VkPhysicalDeviceShaderObjectFeaturesEXT;
typedef struct VkPhysicalDeviceShaderObjectPropertiesEXT
{
VkStructureType sType;
void *pNext;
uint8_t shaderBinaryUUID[VK_UUID_SIZE];
uint32_t shaderBinaryVersion;
} VkPhysicalDeviceShaderObjectPropertiesEXT;
typedef struct VkPhysicalDeviceShaderSMBuiltinsFeaturesNV
{
VkStructureType sType;
@ -8732,6 +8780,24 @@ typedef struct VkPhysicalDeviceShaderTerminateInvocationFeatures
} VkPhysicalDeviceShaderTerminateInvocationFeatures;
typedef VkPhysicalDeviceShaderTerminateInvocationFeatures VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR;
typedef struct VkPhysicalDeviceShaderTileImageFeaturesEXT
{
VkStructureType sType;
void *pNext;
VkBool32 shaderTileImageColorReadAccess;
VkBool32 shaderTileImageDepthReadAccess;
VkBool32 shaderTileImageStencilReadAccess;
} VkPhysicalDeviceShaderTileImageFeaturesEXT;
typedef struct VkPhysicalDeviceShaderTileImagePropertiesEXT
{
VkStructureType sType;
void *pNext;
VkBool32 shaderTileImageCoherentReadAccelerated;
VkBool32 shaderTileImageReadSampleFromPixelRateInvocation;
VkBool32 shaderTileImageReadFromHelperInvocation;
} VkPhysicalDeviceShaderTileImagePropertiesEXT;
typedef struct VkPhysicalDeviceShadingRateImageFeaturesNV
{
VkStructureType sType;
@ -9564,6 +9630,7 @@ typedef struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfo
uint32_t requiredSubgroupSize;
} VkPipelineShaderStageRequiredSubgroupSizeCreateInfo;
typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT;
typedef VkPipelineShaderStageRequiredSubgroupSizeCreateInfo VkShaderRequiredSubgroupSizeCreateInfoEXT;
typedef struct VkPipelineTessellationDomainOriginStateCreateInfo
{
@ -10432,7 +10499,7 @@ typedef struct VkSwapchainPresentBarrierCreateInfoNV
typedef struct VkSwapchainPresentFenceInfoEXT
{
VkStructureType sType;
void *pNext;
const void *pNext;
uint32_t swapchainCount;
const VkFence *pFences;
} VkSwapchainPresentFenceInfoEXT;
@ -10440,7 +10507,7 @@ typedef struct VkSwapchainPresentFenceInfoEXT
typedef struct VkSwapchainPresentModeInfoEXT
{
VkStructureType sType;
void *pNext;
const void *pNext;
uint32_t swapchainCount;
const VkPresentModeKHR *pPresentModes;
} VkSwapchainPresentModeInfoEXT;
@ -10448,7 +10515,7 @@ typedef struct VkSwapchainPresentModeInfoEXT
typedef struct VkSwapchainPresentModesCreateInfoEXT
{
VkStructureType sType;
void *pNext;
const void *pNext;
uint32_t presentModeCount;
const VkPresentModeKHR *pPresentModes;
} VkSwapchainPresentModesCreateInfoEXT;
@ -11623,6 +11690,24 @@ typedef struct VkRayTracingPipelineCreateInfoNV
int32_t basePipelineIndex;
} VkRayTracingPipelineCreateInfoNV;
typedef struct VkShaderCreateInfoEXT
{
VkStructureType sType;
const void *pNext;
VkShaderCreateFlagsEXT flags;
VkShaderStageFlagBits stage;
VkShaderStageFlags nextStage;
VkShaderCodeTypeEXT codeType;
size_t codeSize;
const void *pCode;
const char *pName;
uint32_t setLayoutCount;
const VkDescriptorSetLayout *pSetLayouts;
uint32_t pushConstantRangeCount;
const VkPushConstantRange *pPushConstantRanges;
const VkSpecializationInfo *pSpecializationInfo;
} VkShaderCreateInfoEXT;
typedef struct VkAccelerationStructureBuildGeometryInfoKHR
{
VkStructureType sType;
@ -11735,6 +11820,7 @@ typedef void (VKAPI_PTR *PFN_vkCmdBindIndexBuffer)(VkCommandBuffer, VkBuffer, Vk
typedef void (VKAPI_PTR *PFN_vkCmdBindInvocationMaskHUAWEI)(VkCommandBuffer, VkImageView, VkImageLayout);
typedef void (VKAPI_PTR *PFN_vkCmdBindPipeline)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline);
typedef void (VKAPI_PTR *PFN_vkCmdBindPipelineShaderGroupNV)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline, uint32_t);
typedef void (VKAPI_PTR *PFN_vkCmdBindShadersEXT)(VkCommandBuffer, uint32_t, const VkShaderStageFlagBits *, const VkShaderEXT *);
typedef void (VKAPI_PTR *PFN_vkCmdBindShadingRateImageNV)(VkCommandBuffer, VkImageView, VkImageLayout);
typedef void (VKAPI_PTR *PFN_vkCmdBindTransformFeedbackBuffersEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *, const VkDeviceSize *);
typedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
@ -11995,6 +12081,7 @@ typedef VkResult (VKAPI_PTR *PFN_vkCreateSamplerYcbcrConversion)(VkDevice, const
typedef VkResult (VKAPI_PTR *PFN_vkCreateSamplerYcbcrConversionKHR)(VkDevice, const VkSamplerYcbcrConversionCreateInfo *, const VkAllocationCallbacks *, VkSamplerYcbcrConversion *);
typedef VkResult (VKAPI_PTR *PFN_vkCreateSemaphore)(VkDevice, const VkSemaphoreCreateInfo *, const VkAllocationCallbacks *, VkSemaphore *);
typedef VkResult (VKAPI_PTR *PFN_vkCreateShaderModule)(VkDevice, const VkShaderModuleCreateInfo *, const VkAllocationCallbacks *, VkShaderModule *);
typedef VkResult (VKAPI_PTR *PFN_vkCreateShadersEXT)(VkDevice, uint32_t, const VkShaderCreateInfoEXT *, const VkAllocationCallbacks *, VkShaderEXT *);
typedef VkResult (VKAPI_PTR *PFN_vkCreateSwapchainKHR)(VkDevice, const VkSwapchainCreateInfoKHR *, const VkAllocationCallbacks *, VkSwapchainKHR *);
typedef VkResult (VKAPI_PTR *PFN_vkCreateValidationCacheEXT)(VkDevice, const VkValidationCacheCreateInfoEXT *, const VkAllocationCallbacks *, VkValidationCacheEXT *);
typedef VkResult (VKAPI_PTR *PFN_vkCreateWin32SurfaceKHR)(VkInstance, const VkWin32SurfaceCreateInfoKHR *, const VkAllocationCallbacks *, VkSurfaceKHR *);
@ -12037,6 +12124,7 @@ typedef void (VKAPI_PTR *PFN_vkDestroySampler)(VkDevice, VkSampler, const VkAllo
typedef void (VKAPI_PTR *PFN_vkDestroySamplerYcbcrConversion)(VkDevice, VkSamplerYcbcrConversion, const VkAllocationCallbacks *);
typedef void (VKAPI_PTR *PFN_vkDestroySamplerYcbcrConversionKHR)(VkDevice, VkSamplerYcbcrConversion, const VkAllocationCallbacks *);
typedef void (VKAPI_PTR *PFN_vkDestroySemaphore)(VkDevice, VkSemaphore, const VkAllocationCallbacks *);
typedef void (VKAPI_PTR *PFN_vkDestroyShaderEXT)(VkDevice, VkShaderEXT, const VkAllocationCallbacks *);
typedef void (VKAPI_PTR *PFN_vkDestroyShaderModule)(VkDevice, VkShaderModule, const VkAllocationCallbacks *);
typedef void (VKAPI_PTR *PFN_vkDestroySurfaceKHR)(VkInstance, VkSurfaceKHR, const VkAllocationCallbacks *);
typedef void (VKAPI_PTR *PFN_vkDestroySwapchainKHR)(VkDevice, VkSwapchainKHR, const VkAllocationCallbacks *);
@ -12185,6 +12273,7 @@ typedef void (VKAPI_PTR *PFN_vkGetRenderAreaGranularity)(VkDevice, VkRenderPass,
typedef VkResult (VKAPI_PTR *PFN_vkGetSamplerOpaqueCaptureDescriptorDataEXT)(VkDevice, const VkSamplerCaptureDescriptorDataInfoEXT *, void *);
typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreCounterValue)(VkDevice, VkSemaphore, uint64_t *);
typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreCounterValueKHR)(VkDevice, VkSemaphore, uint64_t *);
typedef VkResult (VKAPI_PTR *PFN_vkGetShaderBinaryDataEXT)(VkDevice, VkShaderEXT, size_t *, void *);
typedef VkResult (VKAPI_PTR *PFN_vkGetShaderInfoAMD)(VkDevice, VkPipeline, VkShaderStageFlagBits, VkShaderInfoTypeAMD, size_t *, void *);
typedef void (VKAPI_PTR *PFN_vkGetShaderModuleCreateInfoIdentifierEXT)(VkDevice, const VkShaderModuleCreateInfo *, VkShaderModuleIdentifierEXT *);
typedef void (VKAPI_PTR *PFN_vkGetShaderModuleIdentifierEXT)(VkDevice, VkShaderModule, VkShaderModuleIdentifierEXT *);
@ -12275,6 +12364,7 @@ void VKAPI_CALL vkCmdBindIndexBuffer(VkCommandBuffer commandBuffer, VkBuffer buf
void VKAPI_CALL vkCmdBindInvocationMaskHUAWEI(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout);
void VKAPI_CALL vkCmdBindPipeline(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline);
void VKAPI_CALL vkCmdBindPipelineShaderGroupNV(VkCommandBuffer commandBuffer, VkPipelineBindPoint pipelineBindPoint, VkPipeline pipeline, uint32_t groupIndex);
void VKAPI_CALL vkCmdBindShadersEXT(VkCommandBuffer commandBuffer, uint32_t stageCount, const VkShaderStageFlagBits *pStages, const VkShaderEXT *pShaders);
void VKAPI_CALL vkCmdBindShadingRateImageNV(VkCommandBuffer commandBuffer, VkImageView imageView, VkImageLayout imageLayout);
void VKAPI_CALL vkCmdBindTransformFeedbackBuffersEXT(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer *pBuffers, const VkDeviceSize *pOffsets, const VkDeviceSize *pSizes);
void VKAPI_CALL vkCmdBindVertexBuffers(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer *pBuffers, const VkDeviceSize *pOffsets);
@ -12535,6 +12625,7 @@ VkResult VKAPI_CALL vkCreateSamplerYcbcrConversion(VkDevice device, const VkSamp
VkResult VKAPI_CALL vkCreateSamplerYcbcrConversionKHR(VkDevice device, const VkSamplerYcbcrConversionCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSamplerYcbcrConversion *pYcbcrConversion);
VkResult VKAPI_CALL vkCreateSemaphore(VkDevice device, const VkSemaphoreCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSemaphore *pSemaphore);
VkResult VKAPI_CALL vkCreateShaderModule(VkDevice device, const VkShaderModuleCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkShaderModule *pShaderModule);
VkResult VKAPI_CALL vkCreateShadersEXT(VkDevice device, uint32_t createInfoCount, const VkShaderCreateInfoEXT *pCreateInfos, const VkAllocationCallbacks *pAllocator, VkShaderEXT *pShaders);
VkResult VKAPI_CALL vkCreateSwapchainKHR(VkDevice device, const VkSwapchainCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSwapchainKHR *pSwapchain);
VkResult VKAPI_CALL vkCreateValidationCacheEXT(VkDevice device, const VkValidationCacheCreateInfoEXT *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkValidationCacheEXT *pValidationCache);
VkResult VKAPI_CALL vkCreateWin32SurfaceKHR(VkInstance instance, const VkWin32SurfaceCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface);
@ -12577,6 +12668,7 @@ void VKAPI_CALL vkDestroySampler(VkDevice device, VkSampler sampler, const VkAll
void VKAPI_CALL vkDestroySamplerYcbcrConversion(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks *pAllocator);
void VKAPI_CALL vkDestroySamplerYcbcrConversionKHR(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks *pAllocator);
void VKAPI_CALL vkDestroySemaphore(VkDevice device, VkSemaphore semaphore, const VkAllocationCallbacks *pAllocator);
void VKAPI_CALL vkDestroyShaderEXT(VkDevice device, VkShaderEXT shader, const VkAllocationCallbacks *pAllocator);
void VKAPI_CALL vkDestroyShaderModule(VkDevice device, VkShaderModule shaderModule, const VkAllocationCallbacks *pAllocator);
void VKAPI_CALL vkDestroySurfaceKHR(VkInstance instance, VkSurfaceKHR surface, const VkAllocationCallbacks *pAllocator);
void VKAPI_CALL vkDestroySwapchainKHR(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks *pAllocator);
@ -12725,6 +12817,7 @@ void VKAPI_CALL vkGetRenderAreaGranularity(VkDevice device, VkRenderPass renderP
VkResult VKAPI_CALL vkGetSamplerOpaqueCaptureDescriptorDataEXT(VkDevice device, const VkSamplerCaptureDescriptorDataInfoEXT *pInfo, void *pData);
VkResult VKAPI_CALL vkGetSemaphoreCounterValue(VkDevice device, VkSemaphore semaphore, uint64_t *pValue);
VkResult VKAPI_CALL vkGetSemaphoreCounterValueKHR(VkDevice device, VkSemaphore semaphore, uint64_t *pValue);
VkResult VKAPI_CALL vkGetShaderBinaryDataEXT(VkDevice device, VkShaderEXT shader, size_t *pDataSize, void *pData);
VkResult VKAPI_CALL vkGetShaderInfoAMD(VkDevice device, VkPipeline pipeline, VkShaderStageFlagBits shaderStage, VkShaderInfoTypeAMD infoType, size_t *pInfoSize, void *pInfo);
void VKAPI_CALL vkGetShaderModuleCreateInfoIdentifierEXT(VkDevice device, const VkShaderModuleCreateInfo *pCreateInfo, VkShaderModuleIdentifierEXT *pIdentifier);
void VKAPI_CALL vkGetShaderModuleIdentifierEXT(VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT *pIdentifier);