Skip to content

Commit b8eb2b9

Browse files
committed
build: Update to header 1.4.312
1 parent 723d6b4 commit b8eb2b9

File tree

7 files changed

+162
-7
lines changed

7 files changed

+162
-7
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
# ~~~
1919
cmake_minimum_required(VERSION 3.22.1)
2020

21-
project(VULKAN_LOADER VERSION 1.4.311 LANGUAGES C)
21+
project(VULKAN_LOADER VERSION 1.4.312 LANGUAGES C)
2222

2323
option(CODE_COVERAGE "Enable Code Coverage" OFF)
2424
if (CODE_COVERAGE)

loader/generated/vk_layer_dispatch_table.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -988,6 +988,11 @@ typedef struct VkLayerDispatchTable_ {
988988
PFN_vkCmdCudaLaunchKernelNV CmdCudaLaunchKernelNV;
989989
#endif // VK_ENABLE_BETA_EXTENSIONS
990990

991+
// ---- VK_QCOM_tile_shading extension commands
992+
PFN_vkCmdDispatchTileQCOM CmdDispatchTileQCOM;
993+
PFN_vkCmdBeginPerTileExecutionQCOM CmdBeginPerTileExecutionQCOM;
994+
PFN_vkCmdEndPerTileExecutionQCOM CmdEndPerTileExecutionQCOM;
995+
991996
// ---- VK_EXT_metal_objects extension commands
992997
#if defined(VK_USE_PLATFORM_METAL_EXT)
993998
PFN_vkExportMetalObjectsEXT ExportMetalObjectsEXT;
@@ -1191,6 +1196,11 @@ typedef struct VkLayerDispatchTable_ {
11911196
PFN_vkGetScreenBufferPropertiesQNX GetScreenBufferPropertiesQNX;
11921197
#endif // VK_USE_PLATFORM_SCREEN_QNX
11931198

1199+
// ---- VK_NV_external_compute_queue extension commands
1200+
PFN_vkCreateExternalComputeQueueNV CreateExternalComputeQueueNV;
1201+
PFN_vkDestroyExternalComputeQueueNV DestroyExternalComputeQueueNV;
1202+
PFN_vkGetExternalComputeQueueDataNV GetExternalComputeQueueDataNV;
1203+
11941204
// ---- VK_NV_cluster_acceleration_structure extension commands
11951205
PFN_vkGetClusterAccelerationStructureBuildSizesNV GetClusterAccelerationStructureBuildSizesNV;
11961206
PFN_vkCmdBuildClusterAccelerationStructureIndirectNV CmdBuildClusterAccelerationStructureIndirectNV;

loader/generated/vk_loader_extensions.c

Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1026,6 +1026,11 @@ VKAPI_ATTR void VKAPI_CALL loader_init_device_extension_dispatch_table(struct lo
10261026
table->CmdCudaLaunchKernelNV = (PFN_vkCmdCudaLaunchKernelNV)gdpa(dev, "vkCmdCudaLaunchKernelNV");
10271027
#endif // VK_ENABLE_BETA_EXTENSIONS
10281028

1029+
// ---- VK_QCOM_tile_shading extension commands
1030+
table->CmdDispatchTileQCOM = (PFN_vkCmdDispatchTileQCOM)gdpa(dev, "vkCmdDispatchTileQCOM");
1031+
table->CmdBeginPerTileExecutionQCOM = (PFN_vkCmdBeginPerTileExecutionQCOM)gdpa(dev, "vkCmdBeginPerTileExecutionQCOM");
1032+
table->CmdEndPerTileExecutionQCOM = (PFN_vkCmdEndPerTileExecutionQCOM)gdpa(dev, "vkCmdEndPerTileExecutionQCOM");
1033+
10291034
// ---- VK_EXT_metal_objects extension commands
10301035
#if defined(VK_USE_PLATFORM_METAL_EXT)
10311036
table->ExportMetalObjectsEXT = (PFN_vkExportMetalObjectsEXT)gdpa(dev, "vkExportMetalObjectsEXT");
@@ -1229,6 +1234,11 @@ VKAPI_ATTR void VKAPI_CALL loader_init_device_extension_dispatch_table(struct lo
12291234
table->GetScreenBufferPropertiesQNX = (PFN_vkGetScreenBufferPropertiesQNX)gdpa(dev, "vkGetScreenBufferPropertiesQNX");
12301235
#endif // VK_USE_PLATFORM_SCREEN_QNX
12311236

1237+
// ---- VK_NV_external_compute_queue extension commands
1238+
table->CreateExternalComputeQueueNV = (PFN_vkCreateExternalComputeQueueNV)gdpa(dev, "vkCreateExternalComputeQueueNV");
1239+
table->DestroyExternalComputeQueueNV = (PFN_vkDestroyExternalComputeQueueNV)gdpa(dev, "vkDestroyExternalComputeQueueNV");
1240+
table->GetExternalComputeQueueDataNV = (PFN_vkGetExternalComputeQueueDataNV)gdpa(dev, "vkGetExternalComputeQueueDataNV");
1241+
12321242
// ---- VK_NV_cluster_acceleration_structure extension commands
12331243
table->GetClusterAccelerationStructureBuildSizesNV = (PFN_vkGetClusterAccelerationStructureBuildSizesNV)gdpa(dev, "vkGetClusterAccelerationStructureBuildSizesNV");
12341244
table->CmdBuildClusterAccelerationStructureIndirectNV = (PFN_vkCmdBuildClusterAccelerationStructureIndirectNV)gdpa(dev, "vkCmdBuildClusterAccelerationStructureIndirectNV");
@@ -2934,6 +2944,11 @@ VKAPI_ATTR void* VKAPI_CALL loader_lookup_device_dispatch_table(const VkLayerDis
29342944
if (!strcmp(name, "CmdCudaLaunchKernelNV")) return (void *)table->CmdCudaLaunchKernelNV;
29352945
#endif // VK_ENABLE_BETA_EXTENSIONS
29362946

2947+
// ---- VK_QCOM_tile_shading extension commands
2948+
if (!strcmp(name, "CmdDispatchTileQCOM")) return (void *)table->CmdDispatchTileQCOM;
2949+
if (!strcmp(name, "CmdBeginPerTileExecutionQCOM")) return (void *)table->CmdBeginPerTileExecutionQCOM;
2950+
if (!strcmp(name, "CmdEndPerTileExecutionQCOM")) return (void *)table->CmdEndPerTileExecutionQCOM;
2951+
29372952
// ---- VK_EXT_metal_objects extension commands
29382953
#if defined(VK_USE_PLATFORM_METAL_EXT)
29392954
if (!strcmp(name, "ExportMetalObjectsEXT")) return (void *)table->ExportMetalObjectsEXT;
@@ -3137,6 +3152,11 @@ VKAPI_ATTR void* VKAPI_CALL loader_lookup_device_dispatch_table(const VkLayerDis
31373152
if (!strcmp(name, "GetScreenBufferPropertiesQNX")) return (void *)table->GetScreenBufferPropertiesQNX;
31383153
#endif // VK_USE_PLATFORM_SCREEN_QNX
31393154

3155+
// ---- VK_NV_external_compute_queue extension commands
3156+
if (!strcmp(name, "CreateExternalComputeQueueNV")) return (void *)table->CreateExternalComputeQueueNV;
3157+
if (!strcmp(name, "DestroyExternalComputeQueueNV")) return (void *)table->DestroyExternalComputeQueueNV;
3158+
if (!strcmp(name, "GetExternalComputeQueueDataNV")) return (void *)table->GetExternalComputeQueueDataNV;
3159+
31403160
// ---- VK_NV_cluster_acceleration_structure extension commands
31413161
if (!strcmp(name, "GetClusterAccelerationStructureBuildSizesNV")) return (void *)table->GetClusterAccelerationStructureBuildSizesNV;
31423162
if (!strcmp(name, "CmdBuildClusterAccelerationStructureIndirectNV")) return (void *)table->CmdBuildClusterAccelerationStructureIndirectNV;
@@ -7951,6 +7971,47 @@ VKAPI_ATTR void VKAPI_CALL CmdCudaLaunchKernelNV(
79517971

79527972
#endif // VK_ENABLE_BETA_EXTENSIONS
79537973

7974+
// ---- VK_QCOM_tile_shading extension trampoline/terminators
7975+
7976+
VKAPI_ATTR void VKAPI_CALL CmdDispatchTileQCOM(
7977+
VkCommandBuffer commandBuffer) {
7978+
const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
7979+
if (NULL == disp) {
7980+
loader_log(NULL, VULKAN_LOADER_FATAL_ERROR_BIT | VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_VALIDATION_BIT, 0,
7981+
"vkCmdDispatchTileQCOM: Invalid commandBuffer "
7982+
"[VUID-vkCmdDispatchTileQCOM-commandBuffer-parameter]");
7983+
abort(); /* Intentionally fail so user can correct issue. */
7984+
}
7985+
disp->CmdDispatchTileQCOM(commandBuffer);
7986+
}
7987+
7988+
VKAPI_ATTR void VKAPI_CALL CmdBeginPerTileExecutionQCOM(
7989+
VkCommandBuffer commandBuffer,
7990+
const VkPerTileBeginInfoQCOM* pPerTileBeginInfo) {
7991+
const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
7992+
if (NULL == disp) {
7993+
loader_log(NULL, VULKAN_LOADER_FATAL_ERROR_BIT | VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_VALIDATION_BIT, 0,
7994+
"vkCmdBeginPerTileExecutionQCOM: Invalid commandBuffer "
7995+
"[VUID-vkCmdBeginPerTileExecutionQCOM-commandBuffer-parameter]");
7996+
abort(); /* Intentionally fail so user can correct issue. */
7997+
}
7998+
disp->CmdBeginPerTileExecutionQCOM(commandBuffer, pPerTileBeginInfo);
7999+
}
8000+
8001+
VKAPI_ATTR void VKAPI_CALL CmdEndPerTileExecutionQCOM(
8002+
VkCommandBuffer commandBuffer,
8003+
const VkPerTileEndInfoQCOM* pPerTileEndInfo) {
8004+
const VkLayerDispatchTable *disp = loader_get_dispatch(commandBuffer);
8005+
if (NULL == disp) {
8006+
loader_log(NULL, VULKAN_LOADER_FATAL_ERROR_BIT | VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_VALIDATION_BIT, 0,
8007+
"vkCmdEndPerTileExecutionQCOM: Invalid commandBuffer "
8008+
"[VUID-vkCmdEndPerTileExecutionQCOM-commandBuffer-parameter]");
8009+
abort(); /* Intentionally fail so user can correct issue. */
8010+
}
8011+
disp->CmdEndPerTileExecutionQCOM(commandBuffer, pPerTileEndInfo);
8012+
}
8013+
8014+
79548015
// ---- VK_EXT_metal_objects extension trampoline/terminators
79558016

79568017
#if defined(VK_USE_PLATFORM_METAL_EXT)
@@ -9841,6 +9902,52 @@ VKAPI_ATTR VkResult VKAPI_CALL GetScreenBufferPropertiesQNX(
98419902

98429903
#endif // VK_USE_PLATFORM_SCREEN_QNX
98439904

9905+
// ---- VK_NV_external_compute_queue extension trampoline/terminators
9906+
9907+
VKAPI_ATTR VkResult VKAPI_CALL CreateExternalComputeQueueNV(
9908+
VkDevice device,
9909+
const VkExternalComputeQueueCreateInfoNV* pCreateInfo,
9910+
const VkAllocationCallbacks* pAllocator,
9911+
VkExternalComputeQueueNV* pExternalQueue) {
9912+
const VkLayerDispatchTable *disp = loader_get_dispatch(device);
9913+
if (NULL == disp) {
9914+
loader_log(NULL, VULKAN_LOADER_FATAL_ERROR_BIT | VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_VALIDATION_BIT, 0,
9915+
"vkCreateExternalComputeQueueNV: Invalid device "
9916+
"[VUID-vkCreateExternalComputeQueueNV-device-parameter]");
9917+
abort(); /* Intentionally fail so user can correct issue. */
9918+
}
9919+
return disp->CreateExternalComputeQueueNV(device, pCreateInfo, pAllocator, pExternalQueue);
9920+
}
9921+
9922+
VKAPI_ATTR void VKAPI_CALL DestroyExternalComputeQueueNV(
9923+
VkDevice device,
9924+
VkExternalComputeQueueNV externalQueue,
9925+
const VkAllocationCallbacks* pAllocator) {
9926+
const VkLayerDispatchTable *disp = loader_get_dispatch(device);
9927+
if (NULL == disp) {
9928+
loader_log(NULL, VULKAN_LOADER_FATAL_ERROR_BIT | VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_VALIDATION_BIT, 0,
9929+
"vkDestroyExternalComputeQueueNV: Invalid device "
9930+
"[VUID-vkDestroyExternalComputeQueueNV-device-parameter]");
9931+
abort(); /* Intentionally fail so user can correct issue. */
9932+
}
9933+
disp->DestroyExternalComputeQueueNV(device, externalQueue, pAllocator);
9934+
}
9935+
9936+
VKAPI_ATTR void VKAPI_CALL GetExternalComputeQueueDataNV(
9937+
VkExternalComputeQueueNV externalQueue,
9938+
VkExternalComputeQueueDataParamsNV* params,
9939+
void* pData) {
9940+
const VkLayerDispatchTable *disp = loader_get_dispatch(externalQueue);
9941+
if (NULL == disp) {
9942+
loader_log(NULL, VULKAN_LOADER_FATAL_ERROR_BIT | VULKAN_LOADER_ERROR_BIT | VULKAN_LOADER_VALIDATION_BIT, 0,
9943+
"vkGetExternalComputeQueueDataNV: Invalid externalQueue "
9944+
"[VUID-vkGetExternalComputeQueueDataNV-externalQueue-parameter]");
9945+
abort(); /* Intentionally fail so user can correct issue. */
9946+
}
9947+
disp->GetExternalComputeQueueDataNV(externalQueue, params, pData);
9948+
}
9949+
9950+
98449951
// ---- VK_NV_cluster_acceleration_structure extension trampoline/terminators
98459952

98469953
VKAPI_ATTR void VKAPI_CALL GetClusterAccelerationStructureBuildSizesNV(
@@ -11918,6 +12025,20 @@ bool extension_instance_gpa(struct loader_instance *ptr_instance, const char *na
1191812025
}
1191912026
#endif // VK_ENABLE_BETA_EXTENSIONS
1192012027

12028+
// ---- VK_QCOM_tile_shading extension commands
12029+
if (!strcmp("vkCmdDispatchTileQCOM", name)) {
12030+
*addr = (void *)CmdDispatchTileQCOM;
12031+
return true;
12032+
}
12033+
if (!strcmp("vkCmdBeginPerTileExecutionQCOM", name)) {
12034+
*addr = (void *)CmdBeginPerTileExecutionQCOM;
12035+
return true;
12036+
}
12037+
if (!strcmp("vkCmdEndPerTileExecutionQCOM", name)) {
12038+
*addr = (void *)CmdEndPerTileExecutionQCOM;
12039+
return true;
12040+
}
12041+
1192112042
// ---- VK_EXT_metal_objects extension commands
1192212043
#if defined(VK_USE_PLATFORM_METAL_EXT)
1192312044
if (!strcmp("vkExportMetalObjectsEXT", name)) {
@@ -12494,6 +12615,20 @@ bool extension_instance_gpa(struct loader_instance *ptr_instance, const char *na
1249412615
}
1249512616
#endif // VK_USE_PLATFORM_SCREEN_QNX
1249612617

12618+
// ---- VK_NV_external_compute_queue extension commands
12619+
if (!strcmp("vkCreateExternalComputeQueueNV", name)) {
12620+
*addr = (void *)CreateExternalComputeQueueNV;
12621+
return true;
12622+
}
12623+
if (!strcmp("vkDestroyExternalComputeQueueNV", name)) {
12624+
*addr = (void *)DestroyExternalComputeQueueNV;
12625+
return true;
12626+
}
12627+
if (!strcmp("vkGetExternalComputeQueueDataNV", name)) {
12628+
*addr = (void *)GetExternalComputeQueueDataNV;
12629+
return true;
12630+
}
12631+
1249712632
// ---- VK_NV_cluster_acceleration_structure extension commands
1249812633
if (!strcmp("vkGetClusterAccelerationStructureBuildSizesNV", name)) {
1249912634
*addr = (void *)GetClusterAccelerationStructureBuildSizesNV;

loader/generated/vk_object_types.h

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,10 @@ typedef enum VulkanObjectType {
9090
kVulkanObjectTypeMicromapEXT = 49,
9191
kVulkanObjectTypeOpticalFlowSessionNV = 50,
9292
kVulkanObjectTypeShaderEXT = 51,
93-
kVulkanObjectTypeIndirectExecutionSetEXT = 52,
94-
kVulkanObjectTypeIndirectCommandsLayoutEXT = 53,
95-
kVulkanObjectTypeMax = 54,
93+
kVulkanObjectTypeExternalComputeQueueNV = 52,
94+
kVulkanObjectTypeIndirectExecutionSetEXT = 53,
95+
kVulkanObjectTypeIndirectCommandsLayoutEXT = 54,
96+
kVulkanObjectTypeMax = 55,
9697
// Aliases for backwards compatibilty of "promoted" types
9798
kVulkanObjectTypeSamplerYcbcrConversionKHR = kVulkanObjectTypeSamplerYcbcrConversion,
9899
kVulkanObjectTypeDescriptorUpdateTemplateKHR = kVulkanObjectTypeDescriptorUpdateTemplate,
@@ -153,6 +154,7 @@ static const char * const object_string[kVulkanObjectTypeMax] = {
153154
"MicromapEXT",
154155
"OpticalFlowSessionNV",
155156
"ShaderEXT",
157+
"ExternalComputeQueueNV",
156158
"IndirectExecutionSetEXT",
157159
"IndirectCommandsLayoutEXT",
158160
};
@@ -211,6 +213,7 @@ const VkDebugReportObjectTypeEXT get_debug_report_enum[] = {
211213
VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeMicromapEXT
212214
VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeOpticalFlowSessionNV
213215
VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeShaderEXT
216+
VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeExternalComputeQueueNV
214217
VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeIndirectExecutionSetEXT
215218
VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, // kVulkanObjectTypeIndirectCommandsLayoutEXT
216219
};
@@ -269,6 +272,7 @@ const VkObjectType get_object_type_enum[] = {
269272
VK_OBJECT_TYPE_MICROMAP_EXT, // kVulkanObjectTypeMicromapEXT
270273
VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV, // kVulkanObjectTypeOpticalFlowSessionNV
271274
VK_OBJECT_TYPE_SHADER_EXT, // kVulkanObjectTypeShaderEXT
275+
VK_OBJECT_TYPE_EXTERNAL_COMPUTE_QUEUE_NV, // kVulkanObjectTypeExternalComputeQueueNV
272276
VK_OBJECT_TYPE_INDIRECT_EXECUTION_SET_EXT, // kVulkanObjectTypeIndirectExecutionSetEXT
273277
VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_EXT, // kVulkanObjectTypeIndirectCommandsLayoutEXT
274278
};

loader/loader.rc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
#include "winres.h"
2323

2424
// All set through CMake
25-
#define VER_FILE_VERSION 1, 4, 311, 0
26-
#define VER_FILE_DESCRIPTION_STR "1.4.311.Dev Build"
25+
#define VER_FILE_VERSION 1, 4, 312, 0
26+
#define VER_FILE_DESCRIPTION_STR "1.4.312.Dev Build"
2727
#define VER_FILE_VERSION_STR "Vulkan Loader - Dev Build"
2828
#define VER_COPYRIGHT_STR "Copyright (C) 2015-2025"
2929

scripts/known_good.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"sub_dir": "Vulkan-Headers",
88
"build_dir": "Vulkan-Headers/build",
99
"install_dir": "Vulkan-Headers/build/install",
10-
"commit": "v1.4.311"
10+
"commit": "v1.4.312"
1111
},
1212
{
1313
"name": "googletest",

tests/framework/layer/vk_dispatch_table_helper.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -623,6 +623,9 @@ static inline void layer_init_device_dispatch_table(VkDevice device, VkLayerDisp
623623
#if defined(VK_ENABLE_BETA_EXTENSIONS)
624624
table->CmdCudaLaunchKernelNV = (PFN_vkCmdCudaLaunchKernelNV)gpa(device, "vkCmdCudaLaunchKernelNV");
625625
#endif // VK_ENABLE_BETA_EXTENSIONS
626+
table->CmdDispatchTileQCOM = (PFN_vkCmdDispatchTileQCOM)gpa(device, "vkCmdDispatchTileQCOM");
627+
table->CmdBeginPerTileExecutionQCOM = (PFN_vkCmdBeginPerTileExecutionQCOM)gpa(device, "vkCmdBeginPerTileExecutionQCOM");
628+
table->CmdEndPerTileExecutionQCOM = (PFN_vkCmdEndPerTileExecutionQCOM)gpa(device, "vkCmdEndPerTileExecutionQCOM");
626629
#if defined(VK_USE_PLATFORM_METAL_EXT)
627630
table->ExportMetalObjectsEXT = (PFN_vkExportMetalObjectsEXT)gpa(device, "vkExportMetalObjectsEXT");
628631
#endif // VK_USE_PLATFORM_METAL_EXT
@@ -802,6 +805,9 @@ static inline void layer_init_device_dispatch_table(VkDevice device, VkLayerDisp
802805
#if defined(VK_USE_PLATFORM_SCREEN_QNX)
803806
table->GetScreenBufferPropertiesQNX = (PFN_vkGetScreenBufferPropertiesQNX)gpa(device, "vkGetScreenBufferPropertiesQNX");
804807
#endif // VK_USE_PLATFORM_SCREEN_QNX
808+
table->CreateExternalComputeQueueNV = (PFN_vkCreateExternalComputeQueueNV)gpa(device, "vkCreateExternalComputeQueueNV");
809+
table->DestroyExternalComputeQueueNV = (PFN_vkDestroyExternalComputeQueueNV)gpa(device, "vkDestroyExternalComputeQueueNV");
810+
table->GetExternalComputeQueueDataNV = (PFN_vkGetExternalComputeQueueDataNV)gpa(device, "vkGetExternalComputeQueueDataNV");
805811
table->GetClusterAccelerationStructureBuildSizesNV =
806812
(PFN_vkGetClusterAccelerationStructureBuildSizesNV)gpa(device, "vkGetClusterAccelerationStructureBuildSizesNV");
807813
table->CmdBuildClusterAccelerationStructureIndirectNV =

0 commit comments

Comments
 (0)