diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h
index caa5542430e..c8127fb8fdc 100644
--- a/include/vulkan/vulkan_core.h
+++ b/include/vulkan/vulkan_core.h
@@ -69,7 +69,7 @@ extern "C" {
#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
// Version of this file
-#define VK_HEADER_VERSION 292
+#define VK_HEADER_VERSION 294
// Complete version of this file
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
@@ -189,6 +189,8 @@ typedef enum VkResult {
VK_ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR = -1000299000,
VK_ERROR_COMPRESSION_EXHAUSTED_EXT = -1000338000,
VK_INCOMPATIBLE_SHADER_BINARY_EXT = 1000482000,
+ VK_PIPELINE_BINARY_MISSING_KHR = 1000483000,
+ VK_ERROR_NOT_ENOUGH_SPACE_KHR = -1000483000,
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,
@@ -1043,6 +1045,16 @@ typedef enum VkStructureType {
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_PIPELINE_BINARY_FEATURES_KHR = 1000483000,
+ VK_STRUCTURE_TYPE_PIPELINE_BINARY_CREATE_INFO_KHR = 1000483001,
+ VK_STRUCTURE_TYPE_PIPELINE_BINARY_INFO_KHR = 1000483002,
+ VK_STRUCTURE_TYPE_PIPELINE_BINARY_KEY_KHR = 1000483003,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR = 1000483004,
+ VK_STRUCTURE_TYPE_RELEASE_CAPTURED_PIPELINE_DATA_INFO_KHR = 1000483005,
+ VK_STRUCTURE_TYPE_PIPELINE_BINARY_DATA_INFO_KHR = 1000483006,
+ VK_STRUCTURE_TYPE_PIPELINE_CREATE_INFO_KHR = 1000483007,
+ VK_STRUCTURE_TYPE_DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR = 1000483008,
+ VK_STRUCTURE_TYPE_PIPELINE_BINARY_HANDLES_INFO_KHR = 1000483009,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM = 1000484000,
VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM = 1000484001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC = 1000485000,
@@ -1121,6 +1133,7 @@ typedef enum VkStructureType {
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV = 1000546000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAW_ACCESS_CHAINS_FEATURES_NV = 1000555000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_RELAXED_EXTENDED_INSTRUCTION_FEATURES_KHR = 1000558000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMMAND_BUFFER_INHERITANCE_FEATURES_NV = 1000559000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_FEATURES_KHR = 1000562000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_PROPERTIES_KHR = 1000562001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_LIST_KHR = 1000562002,
@@ -1420,6 +1433,7 @@ typedef enum VkObjectType {
VK_OBJECT_TYPE_MICROMAP_EXT = 1000396000,
VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV = 1000464000,
VK_OBJECT_TYPE_SHADER_EXT = 1000482000,
+ VK_OBJECT_TYPE_PIPELINE_BINARY_KHR = 1000483000,
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,
@@ -11183,6 +11197,7 @@ static const VkPipelineCreateFlagBits2KHR VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCE
static const VkPipelineCreateFlagBits2KHR VK_PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXT = 0x40000000ULL;
static const VkPipelineCreateFlagBits2KHR VK_PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV = 0x10000000ULL;
static const VkPipelineCreateFlagBits2KHR VK_PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT = 0x20000000ULL;
+static const VkPipelineCreateFlagBits2KHR VK_PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR = 0x80000000ULL;
typedef VkFlags64 VkBufferUsageFlags2KHR;
@@ -11317,6 +11332,128 @@ typedef struct VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR {
+// VK_KHR_pipeline_binary is a preprocessor guard. Do not pass it to API calls.
+#define VK_KHR_pipeline_binary 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineBinaryKHR)
+#define VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR 32U
+#define VK_KHR_PIPELINE_BINARY_SPEC_VERSION 1
+#define VK_KHR_PIPELINE_BINARY_EXTENSION_NAME "VK_KHR_pipeline_binary"
+typedef struct VkPhysicalDevicePipelineBinaryFeaturesKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 pipelineBinaries;
+} VkPhysicalDevicePipelineBinaryFeaturesKHR;
+
+typedef struct VkPhysicalDevicePipelineBinaryPropertiesKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 pipelineBinaryInternalCache;
+ VkBool32 pipelineBinaryInternalCacheControl;
+ VkBool32 pipelineBinaryPrefersInternalCache;
+ VkBool32 pipelineBinaryPrecompiledInternalCache;
+ VkBool32 pipelineBinaryCompressedData;
+} VkPhysicalDevicePipelineBinaryPropertiesKHR;
+
+typedef struct VkDevicePipelineBinaryInternalCacheControlKHR {
+ VkStructureType sType;
+ const void* pNext;
+ VkBool32 disableInternalCache;
+} VkDevicePipelineBinaryInternalCacheControlKHR;
+
+typedef struct VkPipelineBinaryKeyKHR {
+ VkStructureType sType;
+ void* pNext;
+ uint32_t keySize;
+ uint8_t key[VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR];
+} VkPipelineBinaryKeyKHR;
+
+typedef struct VkPipelineBinaryDataKHR {
+ size_t dataSize;
+ void* pData;
+} VkPipelineBinaryDataKHR;
+
+typedef struct VkPipelineBinaryKeysAndDataKHR {
+ uint32_t binaryCount;
+ const VkPipelineBinaryKeyKHR* pPipelineBinaryKeys;
+ const VkPipelineBinaryDataKHR* pPipelineBinaryData;
+} VkPipelineBinaryKeysAndDataKHR;
+
+typedef struct VkPipelineCreateInfoKHR {
+ VkStructureType sType;
+ void* pNext;
+} VkPipelineCreateInfoKHR;
+
+typedef struct VkPipelineBinaryCreateInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ const VkPipelineBinaryKeysAndDataKHR* pKeysAndDataInfo;
+ VkPipeline pipeline;
+ const VkPipelineCreateInfoKHR* pPipelineCreateInfo;
+} VkPipelineBinaryCreateInfoKHR;
+
+typedef struct VkPipelineBinaryInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t binaryCount;
+ const VkPipelineBinaryKHR* pPipelineBinaries;
+} VkPipelineBinaryInfoKHR;
+
+typedef struct VkReleaseCapturedPipelineDataInfoKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkPipeline pipeline;
+} VkReleaseCapturedPipelineDataInfoKHR;
+
+typedef struct VkPipelineBinaryDataInfoKHR {
+ VkStructureType sType;
+ void* pNext;
+ VkPipelineBinaryKHR pipelineBinary;
+} VkPipelineBinaryDataInfoKHR;
+
+typedef struct VkPipelineBinaryHandlesInfoKHR {
+ VkStructureType sType;
+ const void* pNext;
+ uint32_t pipelineBinaryCount;
+ VkPipelineBinaryKHR* pPipelineBinaries;
+} VkPipelineBinaryHandlesInfoKHR;
+
+typedef VkResult (VKAPI_PTR *PFN_vkCreatePipelineBinariesKHR)(VkDevice device, const VkPipelineBinaryCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPipelineBinaryHandlesInfoKHR* pBinaries);
+typedef void (VKAPI_PTR *PFN_vkDestroyPipelineBinaryKHR)(VkDevice device, VkPipelineBinaryKHR pipelineBinary, const VkAllocationCallbacks* pAllocator);
+typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineKeyKHR)(VkDevice device, const VkPipelineCreateInfoKHR* pPipelineCreateInfo, VkPipelineBinaryKeyKHR* pPipelineKey);
+typedef VkResult (VKAPI_PTR *PFN_vkGetPipelineBinaryDataKHR)(VkDevice device, const VkPipelineBinaryDataInfoKHR* pInfo, VkPipelineBinaryKeyKHR* pPipelineBinaryKey, size_t* pPipelineBinaryDataSize, void* pPipelineBinaryData);
+typedef VkResult (VKAPI_PTR *PFN_vkReleaseCapturedPipelineDataKHR)(VkDevice device, const VkReleaseCapturedPipelineDataInfoKHR* pInfo, const VkAllocationCallbacks* pAllocator);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCreatePipelineBinariesKHR(
+ VkDevice device,
+ const VkPipelineBinaryCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkPipelineBinaryHandlesInfoKHR* pBinaries);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyPipelineBinaryKHR(
+ VkDevice device,
+ VkPipelineBinaryKHR pipelineBinary,
+ const VkAllocationCallbacks* pAllocator);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineKeyKHR(
+ VkDevice device,
+ const VkPipelineCreateInfoKHR* pPipelineCreateInfo,
+ VkPipelineBinaryKeyKHR* pPipelineKey);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPipelineBinaryDataKHR(
+ VkDevice device,
+ const VkPipelineBinaryDataInfoKHR* pInfo,
+ VkPipelineBinaryKeyKHR* pPipelineBinaryKey,
+ size_t* pPipelineBinaryDataSize,
+ void* pPipelineBinaryData);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkReleaseCapturedPipelineDataKHR(
+ VkDevice device,
+ const VkReleaseCapturedPipelineDataInfoKHR* pInfo,
+ const VkAllocationCallbacks* pAllocator);
+#endif
+
+
// VK_KHR_cooperative_matrix is a preprocessor guard. Do not pass it to API calls.
#define VK_KHR_cooperative_matrix 1
#define VK_KHR_COOPERATIVE_MATRIX_SPEC_VERSION 2
@@ -19309,6 +19446,18 @@ typedef struct VkPhysicalDeviceRawAccessChainsFeaturesNV {
+// VK_NV_command_buffer_inheritance is a preprocessor guard. Do not pass it to API calls.
+#define VK_NV_command_buffer_inheritance 1
+#define VK_NV_COMMAND_BUFFER_INHERITANCE_SPEC_VERSION 1
+#define VK_NV_COMMAND_BUFFER_INHERITANCE_EXTENSION_NAME "VK_NV_command_buffer_inheritance"
+typedef struct VkPhysicalDeviceCommandBufferInheritanceFeaturesNV {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 commandBufferInheritance;
+} VkPhysicalDeviceCommandBufferInheritanceFeaturesNV;
+
+
+
// VK_NV_shader_atomic_float16_vector is a preprocessor guard. Do not pass it to API calls.
#define VK_NV_shader_atomic_float16_vector 1
#define VK_NV_SHADER_ATOMIC_FLOAT16_VECTOR_SPEC_VERSION 1
diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml
index 0413c0a5971..ea615475ec9 100644
--- a/src/vulkan/registry/vk.xml
+++ b/src/vulkan/registry/vk.xml
@@ -175,7 +175,7 @@ branch of the member gitlab server.
#define VKSC_API_VERSION_1_0 VK_MAKE_API_VERSION(VKSC_API_VARIANT, 1, 0, 0)// Patch version should always be set to 0
// Version of this file
-#define VK_HEADER_VERSION 292
+#define VK_HEADER_VERSION 294
// Complete version of this file
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
// Version of this file
@@ -550,6 +550,7 @@ typedef void* MTLSharedEvent_id;
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineCache)
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineBinaryKHR)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkIndirectCommandsLayoutNV)
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplate)
@@ -877,6 +878,7 @@ typedef void* MTLSharedEvent_id;
+
Enumerated types in the header, but not used by the API
@@ -1461,7 +1463,7 @@ typedef void* MTLSharedEvent_id;
const char* pNameNull-terminated entry point name
const VkSpecializationInfo* pSpecializationInfo
-
+
VkStructureType sType
const void* pNext
VkPipelineCreateFlags flagsPipeline creation flags
@@ -1600,7 +1602,7 @@ typedef void* MTLSharedEvent_id;
float minDepthBounds
float maxDepthBounds
-
+
VkStructureType sType
const void* pNext
VkPipelineCreateFlags flagsPipeline creation flags
@@ -1667,6 +1669,54 @@ typedef void* MTLSharedEvent_id;
uint32_t offsetStart of the range, in bytes
uint32_t sizeSize of the range, in bytes
+
+ VkStructureType sType
+ const void* pNext
+ const VkPipelineBinaryKeysAndDataKHR* pKeysAndDataInfo
+ VkPipeline pipeline
+ const VkPipelineCreateInfoKHR* pPipelineCreateInfo
+
+
+ VkStructureType sType
+ const void* pNext
+ uint32_t pipelineBinaryCount
+ VkPipelineBinaryKHR* pPipelineBinaries
+
+
+ size_t dataSize
+ void* pData
+
+
+ uint32_t binaryCount
+ const VkPipelineBinaryKeyKHR* pPipelineBinaryKeys
+ const VkPipelineBinaryDataKHR* pPipelineBinaryData
+
+
+ VkStructureType sType
+ void* pNext
+ uint32_t keySize
+ uint8_t key[VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR]
+
+
+ VkStructureType sType
+ const void* pNext
+ uint32_t binaryCount
+ const VkPipelineBinaryKHR* pPipelineBinaries
+
+
+ VkStructureType sType
+ void* pNext
+ VkPipeline pipeline
+
+
+ VkStructureType sType
+ void* pNext
+ VkPipelineBinaryKHR pipelineBinary
+
+
+ VkStructureType sType
+ void* pNext
+
VkStructureType sType
const void* pNext
@@ -2255,7 +2305,7 @@ typedef void* MTLSharedEvent_id;
const char* pSettingName
VkLayerSettingTypeEXT typeThe type of the object
uint32_t valueCountNumber of values of the setting
- const void* pValuesValues to pass for a setting
+ const void* pValuesValues to pass for a setting
VkStructureType sType
@@ -4624,7 +4674,7 @@ typedef void* MTLSharedEvent_id;
uint32_t intersectionShader
const void* pShaderGroupCaptureReplayHandle
-
+
VkStructureType sType
const void* pNext
VkPipelineCreateFlags flagsPipeline creation flags
@@ -4637,7 +4687,7 @@ typedef void* MTLSharedEvent_id;
VkPipeline basePipelineHandleIf VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is nonzero, it specifies the handle of the base pipeline this is a derivative of
int32_t basePipelineIndexIf VK_PIPELINE_CREATE_DERIVATIVE_BIT is set and this value is not -1, it specifies an index into pCreateInfos of the base pipeline this is a derivative of
-
+
VkStructureType sType
const void* pNext
VkPipelineCreateFlags flagsPipeline creation flags
@@ -7891,6 +7941,25 @@ typedef void* MTLSharedEvent_id;
void* pNext
VkBool32 graphicsPipelineLibrary
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 pipelineBinaries
+
+
+ VkStructureType sType
+ const void* pNext
+ VkBool32 disableInternalCache
+
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 pipelineBinaryInternalCache
+ VkBool32 pipelineBinaryInternalCacheControl
+ VkBool32 pipelineBinaryPrefersInternalCache
+ VkBool32 pipelineBinaryPrecompiledInternalCache
+ VkBool32 pipelineBinaryCompressedData
+
VkStructureType sType
void* pNext
@@ -8755,7 +8824,7 @@ typedef void* MTLSharedEvent_id;
void* pNext
VkBool32 shaderEnqueue
-
+
VkStructureType sType
const void* pNext
VkPipelineCreateFlags flags
@@ -9140,6 +9209,11 @@ typedef void* MTLSharedEvent_id;
void* pNext
VkBool32 shaderRawAccessChains
+
+ VkStructureType sType
+ void* pNext
+ VkBool32 commandBufferInheritance
+
VkStructureType sType
void* pNext
@@ -9198,6 +9272,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -11317,6 +11392,8 @@ typedef void* MTLSharedEvent_id;
+
+
@@ -11775,6 +11852,39 @@ typedef void* MTLSharedEvent_id;
uint32_t srcCacheCount
const VkPipelineCache* pSrcCaches
+
+ VkResult vkCreatePipelineBinariesKHR
+ VkDevice device
+ const VkPipelineBinaryCreateInfoKHR* pCreateInfo
+ const VkAllocationCallbacks* pAllocator
+ VkPipelineBinaryHandlesInfoKHR* pBinaries
+
+
+ void vkDestroyPipelineBinaryKHR
+ VkDevice device
+ VkPipelineBinaryKHR pipelineBinary
+ const VkAllocationCallbacks* pAllocator
+
+
+ VkResult vkGetPipelineKeyKHR
+ VkDevice device
+ const VkPipelineCreateInfoKHR* pPipelineCreateInfo
+ VkPipelineBinaryKeyKHR* pPipelineKey
+
+
+ VkResult vkGetPipelineBinaryDataKHR
+ VkDevice device
+ const VkPipelineBinaryDataInfoKHR* pInfo
+ VkPipelineBinaryKeyKHR* pPipelineBinaryKey
+ size_t* pPipelineBinaryDataSize
+ void* pPipelineBinaryData
+
+
+ VkResult vkReleaseCapturedPipelineDataKHR
+ VkDevice device
+ const VkReleaseCapturedPipelineDataInfoKHR* pInfo
+ const VkAllocationCallbacks* pAllocator
+
VkResult vkCreateGraphicsPipelines
VkDevice device
@@ -15569,6 +15679,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16113,6 +16224,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16293,6 +16405,9 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -16307,6 +16422,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16315,10 +16431,16 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
+
+
@@ -16381,6 +16503,9 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -16394,6 +16519,10 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
@@ -16406,6 +16535,9 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -16420,14 +16552,17 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -16442,11 +16577,13 @@ typedef void* MTLSharedEvent_id;
+
+
@@ -16467,6 +16604,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16512,6 +16650,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16523,6 +16662,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16540,6 +16680,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16548,6 +16689,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16583,14 +16725,17 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -16631,6 +16776,8 @@ typedef void* MTLSharedEvent_id;
+
+
@@ -16687,6 +16834,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16719,6 +16867,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -16751,6 +16900,16 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
+
+
+
+
+
+
@@ -16808,6 +16967,9 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -16886,6 +17048,11 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
+
@@ -17376,6 +17543,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -17615,6 +17783,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -17914,6 +18083,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -17938,6 +18108,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -18125,11 +18296,7 @@ typedef void* MTLSharedEvent_id;
-
-
-
-
-
+
@@ -18151,6 +18318,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -18169,6 +18337,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -18359,7 +18528,7 @@ typedef void* MTLSharedEvent_id;
-
+
@@ -18380,6 +18549,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -18445,6 +18615,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -18477,6 +18648,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -18583,6 +18755,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -18644,6 +18817,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -18838,6 +19012,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -18883,6 +19058,10 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
@@ -19123,6 +19302,9 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -19130,6 +19312,9 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -19174,6 +19359,11 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
+
@@ -19182,6 +19372,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -19300,6 +19491,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -19395,6 +19587,21 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -19412,6 +19619,9 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -19578,7 +19788,7 @@ typedef void* MTLSharedEvent_id;
-
+
@@ -19626,6 +19836,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -19640,6 +19851,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -19670,6 +19882,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -19678,6 +19891,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -19759,6 +19973,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -19781,6 +19996,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -19980,6 +20196,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20041,6 +20258,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20079,6 +20297,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20117,6 +20336,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20141,6 +20361,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20175,6 +20396,8 @@ typedef void* MTLSharedEvent_id;
+
+
@@ -20200,6 +20423,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20256,6 +20480,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20264,12 +20489,14 @@ typedef void* MTLSharedEvent_id;
-
+
+
+
@@ -20278,6 +20505,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20302,6 +20530,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20334,6 +20563,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20413,6 +20643,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20474,6 +20705,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20482,6 +20714,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20495,6 +20728,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20515,10 +20749,7 @@ typedef void* MTLSharedEvent_id;
-
-
-
-
+
@@ -20554,6 +20785,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20596,6 +20828,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20623,6 +20856,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20661,6 +20895,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20703,6 +20938,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20737,10 +20973,10 @@ typedef void* MTLSharedEvent_id;
-
+
@@ -20769,9 +21005,10 @@ typedef void* MTLSharedEvent_id;
+
-
+
@@ -20813,6 +21050,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20821,6 +21059,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20895,6 +21134,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20905,6 +21145,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20930,6 +21171,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20945,6 +21187,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -20977,6 +21220,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21051,6 +21295,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21067,6 +21312,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21086,6 +21332,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21107,6 +21354,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21394,6 +21642,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21515,6 +21764,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21558,6 +21808,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21566,6 +21817,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21584,6 +21836,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21598,6 +21851,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21657,6 +21911,8 @@ typedef void* MTLSharedEvent_id;
+
+
@@ -21722,6 +21978,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21730,6 +21987,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21786,6 +22044,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21799,6 +22058,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21814,6 +22074,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21832,6 +22093,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21905,9 +22167,10 @@ typedef void* MTLSharedEvent_id;
+
-
+
@@ -21919,6 +22182,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21943,9 +22207,10 @@ typedef void* MTLSharedEvent_id;
+
-
+
@@ -21953,6 +22218,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -21961,6 +22227,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22212,6 +22479,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22225,6 +22493,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22243,6 +22512,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22278,6 +22548,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22287,6 +22558,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22315,6 +22587,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22343,6 +22616,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22365,6 +22639,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22379,6 +22654,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22388,6 +22664,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22405,6 +22682,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22471,6 +22749,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22487,6 +22766,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22588,6 +22868,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22615,6 +22896,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22639,6 +22921,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22653,6 +22936,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22664,6 +22948,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22693,6 +22978,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22702,6 +22988,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22724,6 +23011,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22785,6 +23073,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22801,6 +23090,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22830,6 +23120,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22852,6 +23143,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -22883,6 +23175,9 @@ typedef void* MTLSharedEvent_id;
+
+
+
@@ -22963,6 +23258,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23123,6 +23419,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23167,6 +23464,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23238,6 +23536,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23252,6 +23551,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23270,6 +23570,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23303,6 +23604,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23489,6 +23791,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23549,6 +23852,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23617,11 +23921,43 @@ typedef void* MTLSharedEvent_id;
-
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -23634,6 +23970,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23667,6 +24004,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23734,6 +24072,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23754,6 +24093,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23764,6 +24104,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23792,6 +24133,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23877,6 +24219,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23959,6 +24302,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23968,6 +24312,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -23987,6 +24332,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24010,6 +24356,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24041,6 +24388,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24054,6 +24402,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24076,6 +24425,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24124,6 +24474,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24206,6 +24557,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24224,6 +24576,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24252,6 +24605,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24323,6 +24677,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24343,12 +24698,16 @@ typedef void* MTLSharedEvent_id;
+
-
+
-
-
+
+
+
+
+
@@ -24380,6 +24739,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24388,6 +24748,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24396,6 +24757,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24461,6 +24823,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24473,6 +24836,7 @@ typedef void* MTLSharedEvent_id;
+
@@ -24634,6 +24998,27 @@ typedef void* MTLSharedEvent_id;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -27170,7 +27555,7 @@ typedef void* MTLSharedEvent_id;
-
+
@@ -27197,7 +27582,7 @@ typedef void* MTLSharedEvent_id;
-
+