winevulkan: Update vk.xml to 1.1.104.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
04c8a756d6
commit
3e4189e3ad
|
@ -3,7 +3,7 @@
|
|||
# This file is generated from Vulkan vk.xml file covered
|
||||
# by the following copyright and permission notice:
|
||||
#
|
||||
# Copyright (c) 2015-2018 The Khronos Group Inc.
|
||||
# Copyright (c) 2015-2019 The Khronos Group Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
|
|
|
@ -64,7 +64,7 @@ from enum import Enum
|
|||
LOGGER = logging.Logger("vulkan")
|
||||
LOGGER.addHandler(logging.StreamHandler())
|
||||
|
||||
VK_XML_VERSION = "1.1.94"
|
||||
VK_XML_VERSION = "1.1.104"
|
||||
WINE_VK_VERSION = (1, 0)
|
||||
|
||||
# Filenames to create.
|
||||
|
@ -94,6 +94,7 @@ SUPPORTED_INSTANCE_EXTENSIONS = [
|
|||
]
|
||||
|
||||
BLACKLISTED_EXTENSIONS = [
|
||||
"VK_AMD_display_native_hdr",
|
||||
"VK_AMD_memory_overallocation_behavior",
|
||||
# Handling of VK_EXT_debug_report requires some consideration. The win32
|
||||
# loader already provides it for us and it is somewhat usable. If we add
|
||||
|
@ -104,8 +105,13 @@ BLACKLISTED_EXTENSIONS = [
|
|||
"VK_EXT_debug_report",
|
||||
"VK_EXT_display_control", # Requires VK_EXT_display_surface_counter
|
||||
"VK_EXT_external_memory_dma_buf", # Linux specific
|
||||
"VK_EXT_full_screen_exclusive",
|
||||
"VK_EXT_hdr_metadata", # Needs WSI work.
|
||||
"VK_EXT_host_query_reset",
|
||||
"VK_EXT_image_drm_format_modifier",
|
||||
"VK_EXT_memory_priority",
|
||||
"VK_EXT_pipeline_creation_feedback",
|
||||
"VK_EXT_ycbcr_image_arrays",
|
||||
"VK_GOOGLE_display_timing",
|
||||
"VK_KHR_display", # Needs WSI work.
|
||||
"VK_KHR_external_fence",
|
||||
|
@ -113,10 +119,13 @@ BLACKLISTED_EXTENSIONS = [
|
|||
"VK_KHR_external_fence_win32",
|
||||
"VK_KHR_external_memory",
|
||||
"VK_KHR_external_semaphore",
|
||||
"VK_KHR_shader_float16_int8",
|
||||
# Relates to external_semaphore and needs type conversions in bitflags.
|
||||
"VK_KHR_external_semaphore_capabilities",
|
||||
"VK_KHR_shared_presentable_image", # Needs WSI work.
|
||||
"VK_KHR_win32_keyed_mutex",
|
||||
"VK_NV_cooperative_matrix",
|
||||
"VK_NV_dedicated_allocation_image_aliasing",
|
||||
"VK_NV_external_memory_win32",
|
||||
]
|
||||
|
||||
|
@ -274,7 +283,7 @@ class VkDefine(object):
|
|||
# - VK_API_VERSION is a messy, deprecated constant and we don't want generate code for it.
|
||||
# - AHardwareBuffer/ANativeWindow are forard declarations for Android types, which leaked
|
||||
# into the define region.
|
||||
if name in ["VK_API_VERSION", "AHardwareBuffer", "ANativeWindow"]:
|
||||
if name in ["VK_API_VERSION", "AHardwareBuffer", "ANativeWindow", "CAMetalLayer"]:
|
||||
return VkDefine(name, None)
|
||||
|
||||
# The body of the define is basically unstructured C code. It is not meant for easy parsing.
|
||||
|
@ -2616,6 +2625,10 @@ class VkRegistry(object):
|
|||
if feature and not self._is_feature_supported(feature):
|
||||
continue
|
||||
|
||||
required_extension = require.attrib.get("extension")
|
||||
if required_extension and required_extension in BLACKLISTED_EXTENSIONS:
|
||||
continue
|
||||
|
||||
# Pull in any commands we need. We infer types to pull in from the command
|
||||
# as well.
|
||||
for command in require.findall("command"):
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
* This file is generated from Vulkan vk.xml file covered
|
||||
* by the following copyright and permission notice:
|
||||
*
|
||||
* Copyright (c) 2015-2018 The Khronos Group Inc.
|
||||
* Copyright (c) 2015-2019 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -844,6 +844,15 @@ static inline void convert_VkMemoryRequirements2KHR_host_to_win(const VkMemoryRe
|
|||
convert_VkMemoryRequirements_host_to_win(&in->memoryRequirements, &out->memoryRequirements);
|
||||
}
|
||||
|
||||
static inline void convert_VkBufferDeviceAddressInfoEXT_win_to_host(const VkBufferDeviceAddressInfoEXT *in, VkBufferDeviceAddressInfoEXT_host *out)
|
||||
{
|
||||
if (!in) return;
|
||||
|
||||
out->sType = in->sType;
|
||||
out->pNext = in->pNext;
|
||||
out->buffer = in->buffer;
|
||||
}
|
||||
|
||||
static inline void convert_VkBufferMemoryRequirementsInfo2_win_to_host(const VkBufferMemoryRequirementsInfo2 *in, VkBufferMemoryRequirementsInfo2_host *out)
|
||||
{
|
||||
if (!in) return;
|
||||
|
@ -2614,6 +2623,23 @@ static void WINAPI wine_vkGetAccelerationStructureMemoryRequirementsNV(VkDevice
|
|||
#endif
|
||||
}
|
||||
|
||||
static VkDeviceAddress WINAPI wine_vkGetBufferDeviceAddressEXT(VkDevice device, const VkBufferDeviceAddressInfoEXT *pInfo)
|
||||
{
|
||||
#if defined(USE_STRUCT_CONVERSION)
|
||||
VkDeviceAddress result;
|
||||
VkBufferDeviceAddressInfoEXT_host pInfo_host;
|
||||
TRACE("%p, %p\n", device, pInfo);
|
||||
|
||||
convert_VkBufferDeviceAddressInfoEXT_win_to_host(pInfo, &pInfo_host);
|
||||
result = device->funcs.p_vkGetBufferDeviceAddressEXT(device->device, &pInfo_host);
|
||||
|
||||
return result;
|
||||
#else
|
||||
TRACE("%p, %p\n", device, pInfo);
|
||||
return device->funcs.p_vkGetBufferDeviceAddressEXT(device->device, pInfo);
|
||||
#endif
|
||||
}
|
||||
|
||||
void WINAPI wine_vkGetBufferMemoryRequirements(VkDevice device, VkBuffer buffer, VkMemoryRequirements *pMemoryRequirements)
|
||||
{
|
||||
#if defined(USE_STRUCT_CONVERSION)
|
||||
|
@ -3446,6 +3472,7 @@ static const struct vulkan_func vk_device_dispatch_table[] =
|
|||
{"vkFreeMemory", &wine_vkFreeMemory},
|
||||
{"vkGetAccelerationStructureHandleNV", &wine_vkGetAccelerationStructureHandleNV},
|
||||
{"vkGetAccelerationStructureMemoryRequirementsNV", &wine_vkGetAccelerationStructureMemoryRequirementsNV},
|
||||
{"vkGetBufferDeviceAddressEXT", &wine_vkGetBufferDeviceAddressEXT},
|
||||
{"vkGetBufferMemoryRequirements", &wine_vkGetBufferMemoryRequirements},
|
||||
{"vkGetBufferMemoryRequirements2", &wine_vkGetBufferMemoryRequirements2},
|
||||
{"vkGetBufferMemoryRequirements2KHR", &wine_vkGetBufferMemoryRequirements2KHR},
|
||||
|
@ -3588,14 +3615,18 @@ static const char * const vk_device_extensions[] =
|
|||
"VK_AMD_texture_gather_bias_lod",
|
||||
"VK_EXT_astc_decode_mode",
|
||||
"VK_EXT_blend_operation_advanced",
|
||||
"VK_EXT_buffer_device_address",
|
||||
"VK_EXT_conditional_rendering",
|
||||
"VK_EXT_conservative_rasterization",
|
||||
"VK_EXT_depth_clip_enable",
|
||||
"VK_EXT_depth_range_unrestricted",
|
||||
"VK_EXT_descriptor_indexing",
|
||||
"VK_EXT_discard_rectangles",
|
||||
"VK_EXT_filter_cubic",
|
||||
"VK_EXT_fragment_density_map",
|
||||
"VK_EXT_global_priority",
|
||||
"VK_EXT_inline_uniform_block",
|
||||
"VK_EXT_memory_budget",
|
||||
"VK_EXT_pci_bus_info",
|
||||
"VK_EXT_post_depth_coverage",
|
||||
"VK_EXT_sample_locations",
|
||||
|
@ -3618,6 +3649,7 @@ static const char * const vk_device_extensions[] =
|
|||
"VK_KHR_bind_memory2",
|
||||
"VK_KHR_create_renderpass2",
|
||||
"VK_KHR_dedicated_allocation",
|
||||
"VK_KHR_depth_stencil_resolve",
|
||||
"VK_KHR_descriptor_update_template",
|
||||
"VK_KHR_device_group",
|
||||
"VK_KHR_draw_indirect_count",
|
||||
|
@ -3635,6 +3667,7 @@ static const char * const vk_device_extensions[] =
|
|||
"VK_KHR_sampler_ycbcr_conversion",
|
||||
"VK_KHR_shader_atomic_int64",
|
||||
"VK_KHR_shader_draw_parameters",
|
||||
"VK_KHR_shader_float_controls",
|
||||
"VK_KHR_storage_buffer_storage_class",
|
||||
"VK_KHR_swapchain",
|
||||
"VK_KHR_swapchain_mutable_format",
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
* This file is generated from Vulkan vk.xml file covered
|
||||
* by the following copyright and permission notice:
|
||||
*
|
||||
* Copyright (c) 2015-2018 The Khronos Group Inc.
|
||||
* Copyright (c) 2015-2019 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -472,6 +472,13 @@ typedef struct VkMemoryRequirements2KHR_host
|
|||
VkMemoryRequirements_host memoryRequirements;
|
||||
} VkMemoryRequirements2KHR_host;
|
||||
|
||||
typedef struct VkBufferDeviceAddressInfoEXT_host
|
||||
{
|
||||
VkStructureType sType;
|
||||
const void *pNext;
|
||||
VkBuffer buffer;
|
||||
} VkBufferDeviceAddressInfoEXT_host;
|
||||
|
||||
typedef struct VkBufferMemoryRequirementsInfo2_host
|
||||
{
|
||||
VkStructureType sType;
|
||||
|
@ -1038,6 +1045,11 @@ struct vulkan_device_funcs
|
|||
#else
|
||||
void (*p_vkGetAccelerationStructureMemoryRequirementsNV)(VkDevice, const VkAccelerationStructureMemoryRequirementsInfoNV *, VkMemoryRequirements2KHR *);
|
||||
#endif
|
||||
#if defined(USE_STRUCT_CONVERSION)
|
||||
VkDeviceAddress (*p_vkGetBufferDeviceAddressEXT)(VkDevice, const VkBufferDeviceAddressInfoEXT_host *);
|
||||
#else
|
||||
VkDeviceAddress (*p_vkGetBufferDeviceAddressEXT)(VkDevice, const VkBufferDeviceAddressInfoEXT *);
|
||||
#endif
|
||||
#if defined(USE_STRUCT_CONVERSION)
|
||||
void (*p_vkGetBufferMemoryRequirements)(VkDevice, VkBuffer, VkMemoryRequirements_host *);
|
||||
#else
|
||||
|
@ -1373,6 +1385,7 @@ struct vulkan_instance_funcs
|
|||
USE_VK_FUNC(vkFreeMemory) \
|
||||
USE_VK_FUNC(vkGetAccelerationStructureHandleNV) \
|
||||
USE_VK_FUNC(vkGetAccelerationStructureMemoryRequirementsNV) \
|
||||
USE_VK_FUNC(vkGetBufferDeviceAddressEXT) \
|
||||
USE_VK_FUNC(vkGetBufferMemoryRequirements) \
|
||||
USE_VK_FUNC(vkGetBufferMemoryRequirements2) \
|
||||
USE_VK_FUNC(vkGetBufferMemoryRequirements2KHR) \
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# This file is generated from Vulkan vk.xml file covered
|
||||
# by the following copyright and permission notice:
|
||||
#
|
||||
# Copyright (c) 2015-2018 The Khronos Group Inc.
|
||||
# Copyright (c) 2015-2019 The Khronos Group Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -3,7 +3,7 @@
|
|||
* This file is generated from Vulkan vk.xml file covered
|
||||
* by the following copyright and permission notice:
|
||||
*
|
||||
* Copyright (c) 2015-2018 The Khronos Group Inc.
|
||||
* Copyright (c) 2015-2019 The Khronos Group Inc.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
|
Loading…
Reference in New Issue