Commit 3e4189e3 authored by Józef Kucia's avatar Józef Kucia Committed by Alexandre Julliard

winevulkan: Update vk.xml to 1.1.104.

parent 04c8a756
......@@ -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;
......@@ -1039,6 +1046,11 @@ struct vulkan_device_funcs
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
void (*p_vkGetBufferMemoryRequirements)(VkDevice, VkBuffer, VkMemoryRequirements *);
......@@ -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.
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -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.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment