[Mesa-dev] [PATCH 1/6] vulkan: Update the XML and headers to 1.1.97

Samuel Pitoiset samuel.pitoiset at gmail.com
Mon Jan 7 15:48:46 UTC 2019


Acked-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>

On 1/7/19 4:39 PM, Jason Ekstrand wrote:
> ---
>   include/vulkan/vulkan.h             |   2 +-
>   include/vulkan/vulkan_android.h     |   2 +-
>   include/vulkan/vulkan_core.h        | 155 +++++++++++++++++++++++-
>   include/vulkan/vulkan_fuchsia.h     |   2 +-
>   include/vulkan/vulkan_ios.h         |   2 +-
>   include/vulkan/vulkan_macos.h       |   2 +-
>   include/vulkan/vulkan_vi.h          |   2 +-
>   include/vulkan/vulkan_wayland.h     |   2 +-
>   include/vulkan/vulkan_win32.h       |   2 +-
>   include/vulkan/vulkan_xcb.h         |   2 +-
>   include/vulkan/vulkan_xlib.h        |   2 +-
>   include/vulkan/vulkan_xlib_xrandr.h |   2 +-
>   src/vulkan/registry/vk.xml          | 175 +++++++++++++++++++++++-----
>   13 files changed, 311 insertions(+), 41 deletions(-)
>
> diff --git a/include/vulkan/vulkan.h b/include/vulkan/vulkan.h
> index 77da63783e6..a3be4af6c46 100644
> --- a/include/vulkan/vulkan.h
> +++ b/include/vulkan/vulkan.h
> @@ -2,7 +2,7 @@
>   #define VULKAN_H_ 1
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_android.h b/include/vulkan/vulkan_android.h
> index 07aaeda28e3..e70376c8867 100644
> --- a/include/vulkan/vulkan_android.h
> +++ b/include/vulkan/vulkan_android.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h
> index 72542c72ec8..caeecd9bed1 100644
> --- a/include/vulkan/vulkan_core.h
> +++ b/include/vulkan/vulkan_core.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> @@ -43,7 +43,7 @@ extern "C" {
>   #define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff)
>   #define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff)
>   // Version of this file
> -#define VK_HEADER_VERSION 96
> +#define VK_HEADER_VERSION 97
>   
>   
>   #define VK_NULL_HANDLE 0
> @@ -148,6 +148,7 @@ typedef enum VkResult {
>       VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT = -1000158000,
>       VK_ERROR_FRAGMENTATION_EXT = -1000161000,
>       VK_ERROR_NOT_PERMITTED_EXT = -1000174001,
> +    VK_ERROR_INVALID_DEVICE_ADDRESS_EXT = -1000244000,
>       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_RESULT_BEGIN_RANGE = VK_ERROR_FRAGMENTED_POOL,
> @@ -444,6 +445,8 @@ typedef enum VkStructureType {
>       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT = 1000190002,
>       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR = 1000196000,
>       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR = 1000197000,
> +    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR = 1000199000,
> +    VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR = 1000199001,
>       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV = 1000201000,
>       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV = 1000202000,
>       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV = 1000202001,
> @@ -460,7 +463,14 @@ typedef enum VkStructureType {
>       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT = 1000218001,
>       VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT = 1000218002,
>       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT = 1000221000,
> +    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT = 1000237000,
> +    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT = 1000238000,
> +    VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT = 1000238001,
> +    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT = 1000244000,
> +    VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT = 1000244001,
> +    VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT = 1000244002,
>       VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT = 1000246000,
> +    VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT = 1000247000,
>       VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
>       VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,
>       VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,
> @@ -1539,6 +1549,7 @@ typedef enum VkBufferCreateFlagBits {
>       VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 0x00000002,
>       VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 0x00000004,
>       VK_BUFFER_CREATE_PROTECTED_BIT = 0x00000008,
> +    VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT = 0x00000010,
>       VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
>   } VkBufferCreateFlagBits;
>   typedef VkFlags VkBufferCreateFlags;
> @@ -1557,6 +1568,7 @@ typedef enum VkBufferUsageFlagBits {
>       VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT = 0x00001000,
>       VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00000200,
>       VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = 0x00000400,
> +    VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT = 0x00020000,
>       VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
>   } VkBufferUsageFlagBits;
>   typedef VkFlags VkBufferUsageFlags;
> @@ -6192,6 +6204,40 @@ typedef struct VkPhysicalDeviceFloatControlsPropertiesKHR {
>   
>   
>   
> +#define VK_KHR_depth_stencil_resolve 1
> +#define VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION 1
> +#define VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME "VK_KHR_depth_stencil_resolve"
> +
> +
> +typedef enum VkResolveModeFlagBitsKHR {
> +    VK_RESOLVE_MODE_NONE_KHR = 0,
> +    VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR = 0x00000001,
> +    VK_RESOLVE_MODE_AVERAGE_BIT_KHR = 0x00000002,
> +    VK_RESOLVE_MODE_MIN_BIT_KHR = 0x00000004,
> +    VK_RESOLVE_MODE_MAX_BIT_KHR = 0x00000008,
> +    VK_RESOLVE_MODE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
> +} VkResolveModeFlagBitsKHR;
> +typedef VkFlags VkResolveModeFlagsKHR;
> +
> +typedef struct VkSubpassDescriptionDepthStencilResolveKHR {
> +    VkStructureType                     sType;
> +    const void*                         pNext;
> +    VkResolveModeFlagBitsKHR            depthResolveMode;
> +    VkResolveModeFlagBitsKHR            stencilResolveMode;
> +    const VkAttachmentReference2KHR*    pDepthStencilResolveAttachment;
> +} VkSubpassDescriptionDepthStencilResolveKHR;
> +
> +typedef struct VkPhysicalDeviceDepthStencilResolvePropertiesKHR {
> +    VkStructureType          sType;
> +    void*                    pNext;
> +    VkResolveModeFlagsKHR    supportedDepthResolveModes;
> +    VkResolveModeFlagsKHR    supportedStencilResolveModes;
> +    VkBool32                 independentResolveNone;
> +    VkBool32                 independentResolve;
> +} VkPhysicalDeviceDepthStencilResolvePropertiesKHR;
> +
> +
> +
>   #define VK_KHR_swapchain_mutable_format 1
>   #define VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION 1
>   #define VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME "VK_KHR_swapchain_mutable_format"
> @@ -8926,6 +8972,72 @@ typedef struct VkPhysicalDeviceScalarBlockLayoutFeaturesEXT {
>   #define VK_GOOGLE_DECORATE_STRING_EXTENSION_NAME "VK_GOOGLE_decorate_string"
>   
>   
> +#define VK_EXT_memory_budget 1
> +#define VK_EXT_MEMORY_BUDGET_SPEC_VERSION 1
> +#define VK_EXT_MEMORY_BUDGET_EXTENSION_NAME "VK_EXT_memory_budget"
> +
> +typedef struct VkPhysicalDeviceMemoryBudgetPropertiesEXT {
> +    VkStructureType    sType;
> +    void*              pNext;
> +    VkDeviceSize       heapBudget[VK_MAX_MEMORY_HEAPS];
> +    VkDeviceSize       heapUsage[VK_MAX_MEMORY_HEAPS];
> +} VkPhysicalDeviceMemoryBudgetPropertiesEXT;
> +
> +
> +
> +#define VK_EXT_memory_priority 1
> +#define VK_EXT_MEMORY_PRIORITY_SPEC_VERSION 1
> +#define VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME "VK_EXT_memory_priority"
> +
> +typedef struct VkPhysicalDeviceMemoryPriorityFeaturesEXT {
> +    VkStructureType    sType;
> +    void*              pNext;
> +    VkBool32           memoryPriority;
> +} VkPhysicalDeviceMemoryPriorityFeaturesEXT;
> +
> +typedef struct VkMemoryPriorityAllocateInfoEXT {
> +    VkStructureType    sType;
> +    const void*        pNext;
> +    float              priority;
> +} VkMemoryPriorityAllocateInfoEXT;
> +
> +
> +
> +#define VK_EXT_buffer_device_address 1
> +typedef uint64_t VkDeviceAddress;
> +
> +#define VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION 2
> +#define VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME "VK_EXT_buffer_device_address"
> +
> +typedef struct VkPhysicalDeviceBufferAddressFeaturesEXT {
> +    VkStructureType    sType;
> +    void*              pNext;
> +    VkBool32           bufferDeviceAddress;
> +    VkBool32           bufferDeviceAddressCaptureReplay;
> +    VkBool32           bufferDeviceAddressMultiDevice;
> +} VkPhysicalDeviceBufferAddressFeaturesEXT;
> +
> +typedef struct VkBufferDeviceAddressInfoEXT {
> +    VkStructureType    sType;
> +    const void*        pNext;
> +    VkBuffer           buffer;
> +} VkBufferDeviceAddressInfoEXT;
> +
> +typedef struct VkBufferDeviceAddressCreateInfoEXT {
> +    VkStructureType    sType;
> +    const void*        pNext;
> +    VkDeviceSize       deviceAddress;
> +} VkBufferDeviceAddressCreateInfoEXT;
> +
> +
> +typedef VkDeviceAddress (VKAPI_PTR *PFN_vkGetBufferDeviceAddressEXT)(VkDevice device, const VkBufferDeviceAddressInfoEXT* pInfo);
> +
> +#ifndef VK_NO_PROTOTYPES
> +VKAPI_ATTR VkDeviceAddress VKAPI_CALL vkGetBufferDeviceAddressEXT(
> +    VkDevice                                    device,
> +    const VkBufferDeviceAddressInfoEXT*         pInfo);
> +#endif
> +
>   #define VK_EXT_separate_stencil_usage 1
>   #define VK_EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION 1
>   #define VK_EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME "VK_EXT_separate_stencil_usage"
> @@ -8938,6 +9050,45 @@ typedef struct VkImageStencilUsageCreateInfoEXT {
>   
>   
>   
> +#define VK_EXT_validation_features 1
> +#define VK_EXT_VALIDATION_FEATURES_SPEC_VERSION 1
> +#define VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME "VK_EXT_validation_features"
> +
> +
> +typedef enum VkValidationFeatureEnableEXT {
> +    VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT = 0,
> +    VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT = 1,
> +    VK_VALIDATION_FEATURE_ENABLE_BEGIN_RANGE_EXT = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT,
> +    VK_VALIDATION_FEATURE_ENABLE_END_RANGE_EXT = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT,
> +    VK_VALIDATION_FEATURE_ENABLE_RANGE_SIZE_EXT = (VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT - VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT + 1),
> +    VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT = 0x7FFFFFFF
> +} VkValidationFeatureEnableEXT;
> +
> +typedef enum VkValidationFeatureDisableEXT {
> +    VK_VALIDATION_FEATURE_DISABLE_ALL_EXT = 0,
> +    VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT = 1,
> +    VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT = 2,
> +    VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT = 3,
> +    VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = 4,
> +    VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = 5,
> +    VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = 6,
> +    VK_VALIDATION_FEATURE_DISABLE_BEGIN_RANGE_EXT = VK_VALIDATION_FEATURE_DISABLE_ALL_EXT,
> +    VK_VALIDATION_FEATURE_DISABLE_END_RANGE_EXT = VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT,
> +    VK_VALIDATION_FEATURE_DISABLE_RANGE_SIZE_EXT = (VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT - VK_VALIDATION_FEATURE_DISABLE_ALL_EXT + 1),
> +    VK_VALIDATION_FEATURE_DISABLE_MAX_ENUM_EXT = 0x7FFFFFFF
> +} VkValidationFeatureDisableEXT;
> +
> +typedef struct VkValidationFeaturesEXT {
> +    VkStructureType                         sType;
> +    const void*                             pNext;
> +    uint32_t                                enabledValidationFeatureCount;
> +    const VkValidationFeatureEnableEXT*     pEnabledValidationFeatures;
> +    uint32_t                                disabledValidationFeatureCount;
> +    const VkValidationFeatureDisableEXT*    pDisabledValidationFeatures;
> +} VkValidationFeaturesEXT;
> +
> +
> +
>   #ifdef __cplusplus
>   }
>   #endif
> diff --git a/include/vulkan/vulkan_fuchsia.h b/include/vulkan/vulkan_fuchsia.h
> index e0ed5455adc..1c335fd3863 100644
> --- a/include/vulkan/vulkan_fuchsia.h
> +++ b/include/vulkan/vulkan_fuchsia.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_ios.h b/include/vulkan/vulkan_ios.h
> index a0924816d52..d221a9baad9 100644
> --- a/include/vulkan/vulkan_ios.h
> +++ b/include/vulkan/vulkan_ios.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_macos.h b/include/vulkan/vulkan_macos.h
> index ff0b7018013..5d6b6aeb9a1 100644
> --- a/include/vulkan/vulkan_macos.h
> +++ b/include/vulkan/vulkan_macos.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_vi.h b/include/vulkan/vulkan_vi.h
> index 015166bfc60..3e37bab69a6 100644
> --- a/include/vulkan/vulkan_vi.h
> +++ b/include/vulkan/vulkan_vi.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_wayland.h b/include/vulkan/vulkan_wayland.h
> index 5ba0827aa30..33a22de3bdc 100644
> --- a/include/vulkan/vulkan_wayland.h
> +++ b/include/vulkan/vulkan_wayland.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_win32.h b/include/vulkan/vulkan_win32.h
> index 6a85409ebec..b9d63d47f43 100644
> --- a/include/vulkan/vulkan_win32.h
> +++ b/include/vulkan/vulkan_win32.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_xcb.h b/include/vulkan/vulkan_xcb.h
> index ba036006021..f21290974af 100644
> --- a/include/vulkan/vulkan_xcb.h
> +++ b/include/vulkan/vulkan_xcb.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_xlib.h b/include/vulkan/vulkan_xlib.h
> index e1d967e0187..ce3d36ddcf7 100644
> --- a/include/vulkan/vulkan_xlib.h
> +++ b/include/vulkan/vulkan_xlib.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/include/vulkan/vulkan_xlib_xrandr.h b/include/vulkan/vulkan_xlib_xrandr.h
> index 117d01799e6..25efb077f72 100644
> --- a/include/vulkan/vulkan_xlib_xrandr.h
> +++ b/include/vulkan/vulkan_xlib_xrandr.h
> @@ -6,7 +6,7 @@ extern "C" {
>   #endif
>   
>   /*
> -** 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.
> diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml
> index d60f41187fe..18e4d02905f 100644
> --- a/src/vulkan/registry/vk.xml
> +++ b/src/vulkan/registry/vk.xml
> @@ -1,7 +1,7 @@
>   <?xml version="1.0" encoding="UTF-8"?>
>   <registry>
>       <comment>
> -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.
> @@ -146,7 +146,7 @@ server.
>           <type category="define">// Vulkan 1.1 version number
>   #define <name>VK_API_VERSION_1_1</name> <type>VK_MAKE_VERSION</type>(1, 1, 0)// Patch version should always be set to 0</type>
>           <type category="define">// Version of this file
> -#define <name>VK_HEADER_VERSION</name> 96</type>
> +#define <name>VK_HEADER_VERSION</name> 97</type>
>   
>           <type category="define">
>   #define <name>VK_DEFINE_HANDLE</name>(object) typedef struct object##_T* object;</type>
> @@ -170,6 +170,7 @@ server.
>           <type category="basetype">typedef <type>uint32_t</type> <name>VkBool32</name>;</type>
>           <type category="basetype">typedef <type>uint32_t</type> <name>VkFlags</name>;</type>
>           <type category="basetype">typedef <type>uint64_t</type> <name>VkDeviceSize</name>;</type>
> +        <type category="basetype">typedef <type>uint64_t</type> <name>VkDeviceAddress</name>;</type>
>   
>               <comment>Basic C types, pulled in via vk_platform.h</comment>
>           <type requires="vk_platform" name="void"/>
> @@ -308,6 +309,7 @@ server.
>           <type                                             category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineRasterizationConservativeStateCreateFlagsEXT</name>;</type>
>           <type requires="VkDescriptorBindingFlagBitsEXT" category="bitmask">typedef <type>VkFlags</type> <name>VkDescriptorBindingFlagsEXT</name>;</type>
>           <type requires="VkConditionalRenderingFlagBitsEXT"   category="bitmask">typedef <type>VkFlags</type> <name>VkConditionalRenderingFlagsEXT</name>;</type>
> +        <type requires="VkResolveModeFlagBitsKHR"         category="bitmask">typedef <type>VkFlags</type> <name>VkResolveModeFlagsKHR</name>;</type>
>           <type                                             category="bitmask">typedef <type>VkFlags</type> <name>VkPipelineRasterizationStateStreamCreateFlagsEXT</name>;</type>
>   
>   
> @@ -464,6 +466,7 @@ server.
>           <type name="VkQueueGlobalPriorityEXT" category="enum"/>
>           <type name="VkTimeDomainEXT" category="enum"/>
>           <type name="VkConservativeRasterizationModeEXT" category="enum"/>
> +        <type name="VkResolveModeFlagBitsKHR" category="enum"/>
>           <type name="VkGeometryFlagBitsNV" category="enum"/>
>           <type name="VkGeometryInstanceFlagBitsNV" category="enum"/>
>           <type name="VkBuildAccelerationStructureFlagBitsNV" category="enum"/>
> @@ -486,6 +489,8 @@ server.
>           <type name="VkExternalMemoryHandleTypeFlagBitsNV" category="enum"/>
>           <type name="VkExternalMemoryFeatureFlagBitsNV" category="enum"/>
>           <type name="VkValidationCheckEXT" category="enum"/>
> +        <type name="VkValidationFeatureEnableEXT" category="enum"/>
> +        <type name="VkValidationFeatureDisableEXT" category="enum"/>
>           <type name="VkExternalMemoryHandleTypeFlagBits" category="enum"/>
>           <type category="enum" name="VkExternalMemoryHandleTypeFlagBitsKHR"         alias="VkExternalMemoryHandleTypeFlagBits"/>
>           <type name="VkExternalMemoryFeatureFlagBits" category="enum"/>
> @@ -1728,6 +1733,14 @@ server.
>               <member><type>uint32_t</type>                         <name>disabledValidationCheckCount</name><comment>Number of validation checks to disable</comment></member>
>               <member len="disabledValidationCheckCount">const <type>VkValidationCheckEXT</type>* <name>pDisabledValidationChecks</name><comment>Validation checks to disable</comment></member>
>           </type>
> +        <type category="struct" name="VkValidationFeaturesEXT" structextends="VkInstanceCreateInfo">
> +            <member values="VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT"><type>VkStructureType</type>  <name>sType</name><comment>Must be VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT</comment></member>
> +            <member>const <type>void</type>*                      <name>pNext</name></member>
> +            <member optional="true"><type>uint32_t</type>                         <name>enabledValidationFeatureCount</name><comment>Number of validation features to enable</comment></member>
> +            <member len="enabledValidationFeatureCount">const <type>VkValidationFeatureEnableEXT</type>* <name>pEnabledValidationFeatures</name><comment>Validation features to enable</comment></member>
> +            <member optional="true"><type>uint32_t</type>                         <name>disabledValidationFeatureCount</name><comment>Number of validation features to disable</comment></member>
> +            <member len="disabledValidationFeatureCount">const <type>VkValidationFeatureDisableEXT</type>* <name>pDisabledValidationFeatures</name><comment>Validation features to disable</comment></member>
> +        </type>
>           <type category="struct" name="VkPipelineRasterizationStateRasterizationOrderAMD" structextends="VkPipelineRasterizationStateCreateInfo">
>               <member values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD"><type>VkStructureType</type> <name>sType</name></member>
>               <member>const <type>void</type>*                      <name>pNext</name></member>
> @@ -2462,15 +2475,15 @@ server.
>               <member values="VK_STRUCTURE_TYPE_HDR_METADATA_EXT"><type>VkStructureType</type> <name>sType</name></member>
>               <member>const <type>void</type>*    <name>pNext</name></member>
>                   <comment> From SMPTE 2086</comment>
> -            <member><type>VkXYColorEXT</type>   <name>displayPrimaryRed</name><comment>Display primary's Red</comment></member>
> -            <member><type>VkXYColorEXT</type>   <name>displayPrimaryGreen</name><comment>Display primary's Green</comment></member>
> -            <member><type>VkXYColorEXT</type>   <name>displayPrimaryBlue</name><comment>Display primary's Blue</comment></member>
> -            <member><type>VkXYColorEXT</type>   <name>whitePoint</name><comment>Display primary's Blue</comment></member>
> -            <member><type>float</type>          <name>maxLuminance</name><comment>Display maximum luminance</comment></member>
> -            <member><type>float</type>          <name>minLuminance</name><comment>Display minimum luminance</comment></member>
> +            <member noautovalidity="true"><type>VkXYColorEXT</type>   <name>displayPrimaryRed</name><comment>Display primary's Red</comment></member>
> +            <member noautovalidity="true"><type>VkXYColorEXT</type>   <name>displayPrimaryGreen</name><comment>Display primary's Green</comment></member>
> +            <member noautovalidity="true"><type>VkXYColorEXT</type>   <name>displayPrimaryBlue</name><comment>Display primary's Blue</comment></member>
> +            <member noautovalidity="true"><type>VkXYColorEXT</type>   <name>whitePoint</name><comment>Display primary's Blue</comment></member>
> +            <member noautovalidity="true"><type>float</type>          <name>maxLuminance</name><comment>Display maximum luminance</comment></member>
> +            <member noautovalidity="true"><type>float</type>          <name>minLuminance</name><comment>Display minimum luminance</comment></member>
>                   <comment> From CTA 861.3</comment>
> -            <member><type>float</type>          <name>maxContentLightLevel</name><comment>Content maximum luminance</comment></member>
> -            <member><type>float</type>          <name>maxFrameAverageLightLevel</name></member>
> +            <member noautovalidity="true"><type>float</type>          <name>maxContentLightLevel</name><comment>Content maximum luminance</comment></member>
> +            <member noautovalidity="true"><type>float</type>          <name>maxFrameAverageLightLevel</name></member>
>           </type>
>           <type category="struct" name="VkRefreshCycleDurationGOOGLE" returnedonly="true">
>               <member><type>uint64_t</type>                         <name>refreshDuration</name><comment>Number of nanoseconds from the start of one refresh cycle to the next</comment></member>
> @@ -2513,7 +2526,7 @@ server.
>               <member>const <type>void</type>*                      <name>pNext</name></member>
>               <member><type>VkBool32</type>               <name>viewportWScalingEnable</name></member>
>               <member><type>uint32_t</type>               <name>viewportCount</name></member>
> -            <member len="viewportCount">const <type>VkViewportWScalingNV</type>*      <name>pViewportWScalings</name></member>
> +            <member noautovalidity="true" optional="true" len="viewportCount">const <type>VkViewportWScalingNV</type>*      <name>pViewportWScalings</name></member>
>           </type>
>           <type category="struct" name="VkViewportSwizzleNV">
>               <member><type>VkViewportCoordinateSwizzleNV</type>          <name>x</name></member>
> @@ -3325,6 +3338,21 @@ server.
>               <member><type>VkPipelineStageFlagBits</type>   <name>stage</name></member>
>               <member noautovalidity="true"><type>void</type>* <name>pCheckpointMarker</name></member>
>           </type>
> +        <type category="struct" name="VkPhysicalDeviceDepthStencilResolvePropertiesKHR" structextends="VkPhysicalDeviceProperties2" returnedonly="true">
> +            <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR"><type>VkStructureType</type> <name>sType</name></member>
> +            <member><type>void</type>*                                <name>pNext</name></member>
> +            <member><type>VkResolveModeFlagsKHR</type>                <name>supportedDepthResolveModes</name><comment>supported depth resolve modes</comment></member>
> +            <member><type>VkResolveModeFlagsKHR</type>                <name>supportedStencilResolveModes</name><comment>supported stencil resolve modes</comment></member>
> +            <member><type>VkBool32</type>                             <name>independentResolveNone</name><comment>depth and stencil resolve modes can be set independently if one of them is none</comment></member>
> +            <member><type>VkBool32</type>                             <name>independentResolve</name><comment>depth and stencil resolve modes can be set independently</comment></member>
> +        </type>
> +        <type category="struct" name="VkSubpassDescriptionDepthStencilResolveKHR" structextends="VkSubpassDescription2KHR">
> +            <member values="VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR"><type>VkStructureType</type> <name>sType</name></member>
> +            <member>const <type>void</type>*                                              <name>pNext</name></member>
> +            <member><type>VkResolveModeFlagBitsKHR</type>                                 <name>depthResolveMode</name><comment>depth resolve mode</comment></member>
> +            <member><type>VkResolveModeFlagBitsKHR</type>                                 <name>stencilResolveMode</name><comment>stencil resolve mode</comment></member>
> +            <member optional="true">const <type>VkAttachmentReference2KHR</type>*         <name>pDepthStencilResolveAttachment</name><comment>depth/stencil resolve attachment</comment></member>
> +        </type>
>           <type category="struct" name="VkImageViewASTCDecodeModeEXT" structextends="VkImageViewCreateInfo">
>               <member values="VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT"><type>VkStructureType</type> <name>sType</name></member>
>               <member>const <type>void</type>*                      <name>pNext</name></member>
> @@ -3647,6 +3675,39 @@ server.
>               <member><type>void</type>*                               <name>pNext</name></member>
>               <member><type>VkBool32</type>                            <name>scalarBlockLayout</name></member>
>           </type>
> +        <type category="struct" name="VkPhysicalDeviceMemoryBudgetPropertiesEXT" structextends="VkPhysicalDeviceMemoryProperties2" returnedonly="true">
> +            <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT"><type>VkStructureType</type> <name>sType</name></member>
> +            <member noautovalidity="true"><type>void</type>*        <name>pNext</name></member>
> +            <member><type>VkDeviceSize</type>                       <name>heapBudget</name>[<enum>VK_MAX_MEMORY_HEAPS</enum>]</member>
> +            <member><type>VkDeviceSize</type>                       <name>heapUsage</name>[<enum>VK_MAX_MEMORY_HEAPS</enum>]</member>
> +        </type>
> +        <type category="struct" name="VkPhysicalDeviceMemoryPriorityFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
> +            <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member>
> +            <member noautovalidity="true"><type>void</type>*        <name>pNext</name></member>
> +            <member><type>VkBool32</type>                           <name>memoryPriority</name></member>
> +        </type>
> +        <type category="struct" name="VkMemoryPriorityAllocateInfoEXT" structextends="VkMemoryAllocateInfo">
> +            <member values="VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
> +            <member>const <type>void</type>*                        <name>pNext</name></member>
> +            <member><type>float</type>                              <name>priority</name></member>
> +        </type>
> +        <type category="struct" name="VkPhysicalDeviceBufferAddressFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
> +            <member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member>
> +            <member noautovalidity="true"><type>void</type>*        <name>pNext</name></member>
> +            <member><type>VkBool32</type>                           <name>bufferDeviceAddress</name></member>
> +            <member><type>VkBool32</type>                           <name>bufferDeviceAddressCaptureReplay</name></member>
> +            <member><type>VkBool32</type>                           <name>bufferDeviceAddressMultiDevice</name></member>
> +        </type>
> +        <type category="struct" name="VkBufferDeviceAddressInfoEXT">
> +            <member values="VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
> +            <member>const <type>void</type>*                                            <name>pNext</name></member>
> +            <member><type>VkBuffer</type>                                               <name>buffer</name></member>
> +        </type>
> +        <type category="struct" name="VkBufferDeviceAddressCreateInfoEXT" structextends="VkBufferCreateInfo">
> +            <member values="VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT"><type>VkStructureType</type> <name>sType</name></member>
> +            <member>const <type>void</type>*                      <name>pNext</name></member>
> +            <member><type>VkDeviceSize</type>                     <name>deviceAddress</name></member>
> +        </type>
>       </types>
>   
>       <comment>Vulkan enumerant (token) definitions</comment>
> @@ -4535,6 +4596,21 @@ server.
>           <enum value="1"     name="VK_VALIDATION_CHECK_SHADERS_EXT"/>
>               <comment>Placeholder for validation enums to be defined for VK_EXT_Validation_flags extension</comment>
>       </enums>
> +    <enums name="VkValidationFeatureEnableEXT" type="enum">
> +        <enum value="0"     name="VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT"/>
> +        <enum value="1"     name="VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT"/>
> +            <comment>Placeholder for validation feature enable enums to be defined for VK_EXT_validation_features extension</comment>
> +    </enums>
> +    <enums name="VkValidationFeatureDisableEXT" type="enum">
> +        <enum value="0"     name="VK_VALIDATION_FEATURE_DISABLE_ALL_EXT"/>
> +        <enum value="1"     name="VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT"/>
> +        <enum value="2"     name="VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT"/>
> +        <enum value="3"     name="VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT"/>
> +        <enum value="4"     name="VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT"/>
> +        <enum value="5"     name="VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT"/>
> +        <enum value="6"     name="VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT"/>
> +            <comment>Placeholder for validation feature disable enums to be defined for VK_EXT_validation_features extension</comment>
> +    </enums>
>       <enums name="VkSubgroupFeatureFlagBits" type="bitmask">
>           <enum bitpos="0"    name="VK_SUBGROUP_FEATURE_BASIC_BIT"              comment="Basic subgroup operations"/>
>           <enum bitpos="1"    name="VK_SUBGROUP_FEATURE_VOTE_BIT"               comment="Vote subgroup operations"/>
> @@ -4764,6 +4840,13 @@ server.
>       <enums name="VkConditionalRenderingFlagBitsEXT" type="bitmask">
>           <enum bitpos="0"    name="VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT"/>
>       </enums>
> +    <enums name="VkResolveModeFlagBitsKHR" type="bitmask">
> +        <enum value="0" name="VK_RESOLVE_MODE_NONE_KHR"/>
> +        <enum bitpos="0" name="VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR"/>
> +        <enum bitpos="1" name="VK_RESOLVE_MODE_AVERAGE_BIT_KHR"/>
> +        <enum bitpos="2" name="VK_RESOLVE_MODE_MIN_BIT_KHR"/>
> +        <enum bitpos="3" name="VK_RESOLVE_MODE_MAX_BIT_KHR"/>
> +    </enums>
>       <enums name="VkShadingRatePaletteEntryNV" type="enum">
>           <enum value="0" name="VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV"/>
>           <enum value="1" name="VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV"/>
> @@ -5151,7 +5234,7 @@ server.
>               <param><type>VkDeviceSize</type> <name>stride</name></param>
>               <param optional="true"><type>VkQueryResultFlags</type> <name>flags</name></param>
>           </command>
> -        <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY">
> +        <command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY,VK_ERROR_INVALID_DEVICE_ADDRESS_EXT">
>               <proto><type>VkResult</type> <name>vkCreateBuffer</name></proto>
>               <param><type>VkDevice</type> <name>device</name></param>
>               <param>const <type>VkBufferCreateInfo</type>* <name>pCreateInfo</name></param>
> @@ -7011,6 +7094,11 @@ server.
>               <param><type>VkImage</type> <name>image</name></param>
>               <param><type>VkImageDrmFormatModifierPropertiesEXT</type>* <name>pProperties</name></param>
>           </command>
> +        <command>
> +            <proto><type>VkDeviceAddress</type> <name>vkGetBufferDeviceAddressEXT</name></proto>
> +            <param><type>VkDevice</type> <name>device</name></param>
> +            <param>const <type>VkBufferDeviceAddressInfoEXT</type>* <name>pInfo</name></param>
> +        </command>
>       </commands>
>   
>       <feature api="vulkan" name="VK_VERSION_1_0" number="1.0" comment="Vulkan core API interface definitions">
> @@ -7847,7 +7935,8 @@ server.
>                   <enum bitpos="27" extends="VkPipelineStageFlagBits"     name="VK_PIPELINE_STAGE_RESERVED_27_BIT_KHR"/>
>                   <enum bitpos="30" extends="VkAccessFlagBits"            name="VK_ACCESS_RESERVED_30_BIT_KHR"/>
>                   <enum bitpos="31" extends="VkAccessFlagBits"            name="VK_ACCESS_RESERVED_31_BIT_KHR"/>
> -                <enum bitpos="14" extends="VkBufferUsageFlagBits"       name="VK_BUFFER_USAGE_RESERVED_14_BIT_KHR"/>
> +                <enum bitpos="15" extends="VkBufferUsageFlagBits"       name="VK_BUFFER_USAGE_RESERVED_15_BIT_KHR"/>
> +                <enum bitpos="16" extends="VkBufferUsageFlagBits"       name="VK_BUFFER_USAGE_RESERVED_16_BIT_KHR"/>
>                   <enum bitpos="13" extends="VkImageUsageFlagBits"        name="VK_IMAGE_USAGE_RESERVED_13_BIT_KHR"/>
>                   <enum bitpos="14" extends="VkImageUsageFlagBits"        name="VK_IMAGE_USAGE_RESERVED_14_BIT_KHR"/>
>                   <enum bitpos="15" extends="VkImageUsageFlagBits"        name="VK_IMAGE_USAGE_RESERVED_15_BIT_KHR"/>
> @@ -7865,6 +7954,7 @@ server.
>                   <enum bitpos="28" extends="VkAccessFlagBits"            name="VK_ACCESS_RESERVED_28_BIT_KHR"/>
>                   <enum bitpos="29" extends="VkAccessFlagBits"            name="VK_ACCESS_RESERVED_29_BIT_KHR"/>
>                   <enum bitpos="13" extends="VkBufferUsageFlagBits"       name="VK_BUFFER_USAGE_RESERVED_13_BIT_KHR"/>
> +                <enum bitpos="14" extends="VkBufferUsageFlagBits"       name="VK_BUFFER_USAGE_RESERVED_14_BIT_KHR"/>
>                   <enum bitpos="10" extends="VkImageUsageFlagBits"        name="VK_IMAGE_USAGE_RESERVED_10_BIT_KHR"/>
>                   <enum bitpos="11" extends="VkImageUsageFlagBits"        name="VK_IMAGE_USAGE_RESERVED_11_BIT_KHR"/>
>                   <enum bitpos="12" extends="VkImageUsageFlagBits"        name="VK_IMAGE_USAGE_RESERVED_12_BIT_KHR"/>
> @@ -9888,10 +9978,15 @@ server.
>                   <enum bitpos="8" extends="VkSubgroupFeatureFlagBits"        name="VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV"/>
>               </require>
>           </extension>
> -        <extension name="VK_KHR_extension_200" number="200" author="KHR" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="disabled">
> +        <extension name="VK_KHR_depth_stencil_resolve" number="200" type="device" requires="VK_KHR_create_renderpass2" author="KHR" contact="Jan-Harald Fredriksen @janharald" supported="vulkan">
>               <require>
> -                <enum value="0"                                         name="VK_KHR_EXTENSION_200_SPEC_VERSION"/>
> -                <enum value=""VK_KHR_extension_200""          name="VK_KHR_EXTENSION_200_EXTENSION_NAME"/>
> +                <enum value="1"                                             name="VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION"/>
> +                <enum value=""VK_KHR_depth_stencil_resolve""      name="VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME"/>
> +                <enum offset="0" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR"/>
> +                <enum offset="1" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR"/>
> +                <type name="VkSubpassDescriptionDepthStencilResolveKHR"/>
> +                <type name="VkPhysicalDeviceDepthStencilResolvePropertiesKHR"/>
> +                <type name="VkResolveModeFlagBitsKHR"/>
>               </require>
>           </extension>
>           <extension name="VK_KHR_swapchain_mutable_format" number="201" type="device" author="KHR" requires="VK_KHR_swapchain,VK_KHR_maintenance2,VK_KHR_image_format_list" contact="Daniel Rakos @drakos-arm" supported="vulkan">
> @@ -10173,16 +10268,22 @@ server.
>                   <enum value=""VK_KHR_extension_237""              name="VK_KHR_EXTENSION_237_EXTENSION_NAME"/>
>               </require>
>           </extension>
> -        <extension name="VK_KHR_extension_238" number="238" author="KHR" contact="Jeff Bolz @jeffbolznv" supported="disabled">
> +        <extension name="VK_EXT_memory_budget" number="238" type="device" requires="VK_KHR_get_physical_device_properties2" author="EXT" contact="Jeff Bolz @jeffbolznv" supported="vulkan">
>               <require>
> -                <enum value="0"                                             name="VK_KHR_EXTENSION_238_SPEC_VERSION"/>
> -                <enum value=""VK_KHR_extension_238""              name="VK_KHR_EXTENSION_238_EXTENSION_NAME"/>
> +                <enum value="1"                                             name="VK_EXT_MEMORY_BUDGET_SPEC_VERSION"/>
> +                <enum value=""VK_EXT_memory_budget""              name="VK_EXT_MEMORY_BUDGET_EXTENSION_NAME"/>
> +                <enum offset="0" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT"/>
> +                <type name="VkPhysicalDeviceMemoryBudgetPropertiesEXT"/>
>               </require>
>           </extension>
> -        <extension name="VK_KHR_extension_239" number="239" author="KHR" contact="Jeff Bolz @jeffbolznv" supported="disabled">
> +        <extension name="VK_EXT_memory_priority" number="239" type="device" requires="VK_KHR_get_physical_device_properties2"  author="EXT" contact="Jeff Bolz @jeffbolznv" supported="vulkan">
>               <require>
> -                <enum value="0"                                             name="VK_KHR_EXTENSION_239_SPEC_VERSION"/>
> -                <enum value=""VK_KHR_extension_239""              name="VK_KHR_EXTENSION_239_EXTENSION_NAME"/>
> +                <enum value="1"                                             name="VK_EXT_MEMORY_PRIORITY_SPEC_VERSION"/>
> +                <enum value=""VK_EXT_memory_priority""            name="VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME"/>
> +                <enum offset="0" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT"/>
> +                <enum offset="1" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT"/>
> +                <type name="VkPhysicalDeviceMemoryPriorityFeaturesEXT"/>
> +                <type name="VkMemoryPriorityAllocateInfoEXT"/>
>               </require>
>           </extension>
>           <extension name="VK_KHR_extension_240" number="240" author="KHR" contact="Sandeep Shinde @nvidia" supported="disabled">
> @@ -10215,10 +10316,20 @@ server.
>                   <enum value=""VK_MESA_extension_244""              name="VK_MESA_EXTENSION_244_EXTENSION_NAME"/>
>               </require>
>           </extension>
> -        <extension name="VK_NV_extension_245" number="245" author="NV" contact="Jeff Bolz @jeffbolznv" supported="disabled">
> +        <extension name="VK_EXT_buffer_device_address" number="245" type="device" requires="VK_KHR_get_physical_device_properties2" author="NV" contact="Jeff Bolz @jeffbolznv" supported="vulkan">
>               <require>
> -                <enum value="0"                                             name="VK_NV_EXTENSION_245_SPEC_VERSION"/>
> -                <enum value=""VK_NV_extension_245""               name="VK_NV_EXTENSION_245_EXTENSION_NAME"/>
> +                <enum value="2"                                             name="VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION"/>
> +                <enum value=""VK_EXT_buffer_device_address""      name="VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME"/>
> +                <enum offset="0" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT"/>
> +                <enum offset="1" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT"/>
> +                <enum offset="2" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT"/>
> +                <enum bitpos="17" extends="VkBufferUsageFlagBits"           name="VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT"/>
> +                <enum bitpos="4"  extends="VkBufferCreateFlagBits"          name="VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT"/>
> +                <enum offset="0" dir="-" extends="VkResult"                 name="VK_ERROR_INVALID_DEVICE_ADDRESS_EXT"/>
> +                <type name="VkPhysicalDeviceBufferAddressFeaturesEXT"/>
> +                <type name="VkBufferDeviceAddressInfoEXT"/>
> +                <type name="VkBufferDeviceAddressCreateInfoEXT"/>
> +                <command name="vkGetBufferDeviceAddressEXT"/>
>               </require>
>           </extension>
>           <extension name="VK_EXT_extension_246" number="246" author="EXT" contact="Tobias Hector @tobski" supported="disabled">
> @@ -10235,10 +10346,12 @@ server.
>                   <type name="VkImageStencilUsageCreateInfoEXT"/>
>               </require>
>           </extension>
> -        <extension name="VK_EXT_extension_248" number="248" author="EXT" contact="Karl Schultz @karlschultz" supported="disabled">
> +        <extension name="VK_EXT_validation_features" number="248" type="instance" author="LUNARG" contact="Karl Schultz @karl-lunarg" supported="vulkan">
>               <require>
> -                <enum value="0"                                             name="VK_EXT_EXTENSION_248_SPEC_VERSION"/>
> -                <enum value=""VK_EXT_extension_248""              name="VK_EXT_EXTENSION_248_EXTENSION_NAME"/>
> +                <enum value="1"                                             name="VK_EXT_VALIDATION_FEATURES_SPEC_VERSION"/>
> +                <enum value=""VK_EXT_validation_features""        name="VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME"/>
> +                <enum offset="0" extends="VkStructureType"                  name="VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT"/>
> +                <type name="VkValidationFeaturesEXT"/>
>               </require>
>           </extension>
>           <extension name="VK_KHR_extension_249" number="249" author="KHR" contact="Keith Packard @keithp" supported="disabled">
> @@ -10247,5 +10360,11 @@ server.
>                   <enum value=""VK_KHR_extension_249""              name="VK_KHR_EXTENSION_249_EXTENSION_NAME"/>
>               </require>
>           </extension>
> +        <extension name="VK_NV_extension_250" number="250" author="NV" contact="Jeff Bolz @jeffbolznv" supported="disabled">
> +            <require>
> +                <enum value="0"                                              name="VK_NV_EXTENSION_250_SPEC_VERSION"/>
> +                <enum value=""VK_NV_extension_250""                name="VK_NV_EXTENSION_250_EXTENSION_NAME"/>
> +            </require>
> +        </extension>
>       </extensions>
>   </registry>


More information about the mesa-dev mailing list