aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Schuchardt <mikes@lunarg.com>2023-03-31 10:09:34 -0600
committerMike Schuchardt <mikes@lunarg.com>2023-03-31 12:29:19 -0600
commit4ad4313da0a8d374efc61d744e7132c38b2a2dbd (patch)
tree7e7215c8123502118eb9c7ac75a6cef2eb917d7e
parente60c43a479ce53c24588f621b6a9fb0ab9f6eff7 (diff)
downloadusermoji-4ad4313da0a8d374efc61d744e7132c38b2a2dbd.tar.xz
build: Update to header 1.3.246
- Update known-good - Generate source
-rw-r--r--build-android/vulkan-headers_revision_android2
-rw-r--r--common/vulkan_wrapper.cpp4
-rw-r--r--icd/generated/mock_icd.cpp43
-rw-r--r--icd/generated/mock_icd.h32
-rw-r--r--icd/generated/vk_typemap_helper.h45
-rwxr-xr-xscripts/generate_vulkan_wrapper.py20
-rw-r--r--scripts/known_good.json4
-rw-r--r--vulkaninfo/generated/vulkaninfo.hpp62
8 files changed, 205 insertions, 7 deletions
diff --git a/build-android/vulkan-headers_revision_android b/build-android/vulkan-headers_revision_android
index 96b1f2c0..605c6630 100644
--- a/build-android/vulkan-headers_revision_android
+++ b/build-android/vulkan-headers_revision_android
@@ -1 +1 @@
-v1.3.245
+v1.3.246
diff --git a/common/vulkan_wrapper.cpp b/common/vulkan_wrapper.cpp
index 782d4052..089ae541 100644
--- a/common/vulkan_wrapper.cpp
+++ b/common/vulkan_wrapper.cpp
@@ -1142,6 +1142,10 @@ PFN_vkCreateOpticalFlowSessionNV vkCreateOpticalFlowSessionNV;
PFN_vkDestroyOpticalFlowSessionNV vkDestroyOpticalFlowSessionNV;
PFN_vkBindOpticalFlowSessionImageNV vkBindOpticalFlowSessionImageNV;
PFN_vkCmdOpticalFlowExecuteNV vkCmdOpticalFlowExecuteNV;
+PFN_vkCreateShadersEXT vkCreateShadersEXT;
+PFN_vkDestroyShaderEXT vkDestroyShaderEXT;
+PFN_vkGetShaderBinaryDataEXT vkGetShaderBinaryDataEXT;
+PFN_vkCmdBindShadersEXT vkCmdBindShadersEXT;
PFN_vkGetFramebufferTilePropertiesQCOM vkGetFramebufferTilePropertiesQCOM;
PFN_vkGetDynamicRenderingTilePropertiesQCOM vkGetDynamicRenderingTilePropertiesQCOM;
PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR;
diff --git a/icd/generated/mock_icd.cpp b/icd/generated/mock_icd.cpp
index 58be4a98..dca59bf0 100644
--- a/icd/generated/mock_icd.cpp
+++ b/icd/generated/mock_icd.cpp
@@ -6034,6 +6034,7 @@ static VKAPI_ATTR void VKAPI_CALL CmdDrawMultiIndexedEXT(
+
static VKAPI_ATTR VkResult VKAPI_CALL CreateMicromapEXT(
VkDevice device,
const VkMicromapCreateInfoEXT* pCreateInfo,
@@ -6564,6 +6565,48 @@ static VKAPI_ATTR void VKAPI_CALL CmdOpticalFlowExecuteNV(
+static VKAPI_ATTR VkResult VKAPI_CALL CreateShadersEXT(
+ VkDevice device,
+ uint32_t createInfoCount,
+ const VkShaderCreateInfoEXT* pCreateInfos,
+ const VkAllocationCallbacks* pAllocator,
+ VkShaderEXT* pShaders)
+{
+ unique_lock_t lock(global_lock);
+ for (uint32_t i = 0; i < createInfoCount; ++i) {
+ pShaders[i] = (VkShaderEXT)global_unique_handle++;
+ }
+ return VK_SUCCESS;
+}
+
+static VKAPI_ATTR void VKAPI_CALL DestroyShaderEXT(
+ VkDevice device,
+ VkShaderEXT shader,
+ const VkAllocationCallbacks* pAllocator)
+{
+//Destroy object
+}
+
+static VKAPI_ATTR VkResult VKAPI_CALL GetShaderBinaryDataEXT(
+ VkDevice device,
+ VkShaderEXT shader,
+ size_t* pDataSize,
+ void* pData)
+{
+//Not a CREATE or DESTROY function
+ return VK_SUCCESS;
+}
+
+static VKAPI_ATTR void VKAPI_CALL CmdBindShadersEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t stageCount,
+ const VkShaderStageFlagBits* pStages,
+ const VkShaderEXT* pShaders)
+{
+//Not a CREATE or DESTROY function
+}
+
+
static VKAPI_ATTR VkResult VKAPI_CALL GetFramebufferTilePropertiesQCOM(
VkDevice device,
VkFramebuffer framebuffer,
diff --git a/icd/generated/mock_icd.h b/icd/generated/mock_icd.h
index cbea896d..0f1af10e 100644
--- a/icd/generated/mock_icd.h
+++ b/icd/generated/mock_icd.h
@@ -345,6 +345,7 @@ static const std::unordered_map<std::string, uint32_t> device_extension_map = {
{"VK_EXT_image_view_min_lod", 1},
{"VK_EXT_multi_draw", 1},
{"VK_EXT_image_2d_view_of_3d", 1},
+ {"VK_EXT_shader_tile_image", 1},
{"VK_EXT_opacity_micromap", 2},
{"VK_NV_displacement_micromap", 1},
{"VK_EXT_load_store_op_none", 1},
@@ -370,6 +371,7 @@ static const std::unordered_map<std::string, uint32_t> device_extension_map = {
{"VK_NV_optical_flow", 1},
{"VK_EXT_legacy_dithering", 1},
{"VK_EXT_pipeline_protected_access", 1},
+ {"VK_EXT_shader_object", 1},
{"VK_QCOM_tile_properties", 1},
{"VK_SEC_amigo_profiling", 1},
{"VK_QCOM_multiview_per_view_viewports", 1},
@@ -3680,6 +3682,7 @@ static VKAPI_ATTR void VKAPI_CALL CmdDrawMultiIndexedEXT(
+
static VKAPI_ATTR VkResult VKAPI_CALL CreateMicromapEXT(
VkDevice device,
const VkMicromapCreateInfoEXT* pCreateInfo,
@@ -4012,6 +4015,31 @@ static VKAPI_ATTR void VKAPI_CALL CmdOpticalFlowExecuteNV(
+static VKAPI_ATTR VkResult VKAPI_CALL CreateShadersEXT(
+ VkDevice device,
+ uint32_t createInfoCount,
+ const VkShaderCreateInfoEXT* pCreateInfos,
+ const VkAllocationCallbacks* pAllocator,
+ VkShaderEXT* pShaders);
+
+static VKAPI_ATTR void VKAPI_CALL DestroyShaderEXT(
+ VkDevice device,
+ VkShaderEXT shader,
+ const VkAllocationCallbacks* pAllocator);
+
+static VKAPI_ATTR VkResult VKAPI_CALL GetShaderBinaryDataEXT(
+ VkDevice device,
+ VkShaderEXT shader,
+ size_t* pDataSize,
+ void* pData);
+
+static VKAPI_ATTR void VKAPI_CALL CmdBindShadersEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t stageCount,
+ const VkShaderStageFlagBits* pStages,
+ const VkShaderEXT* pShaders);
+
+
static VKAPI_ATTR VkResult VKAPI_CALL GetFramebufferTilePropertiesQCOM(
VkDevice device,
VkFramebuffer framebuffer,
@@ -4892,6 +4920,10 @@ static const std::unordered_map<std::string, void*> name_to_funcptr_map = {
{"vkDestroyOpticalFlowSessionNV", (void*)DestroyOpticalFlowSessionNV},
{"vkBindOpticalFlowSessionImageNV", (void*)BindOpticalFlowSessionImageNV},
{"vkCmdOpticalFlowExecuteNV", (void*)CmdOpticalFlowExecuteNV},
+ {"vkCreateShadersEXT", (void*)CreateShadersEXT},
+ {"vkDestroyShaderEXT", (void*)DestroyShaderEXT},
+ {"vkGetShaderBinaryDataEXT", (void*)GetShaderBinaryDataEXT},
+ {"vkCmdBindShadersEXT", (void*)CmdBindShadersEXT},
{"vkGetFramebufferTilePropertiesQCOM", (void*)GetFramebufferTilePropertiesQCOM},
{"vkGetDynamicRenderingTilePropertiesQCOM", (void*)GetDynamicRenderingTilePropertiesQCOM},
{"vkCreateAccelerationStructureKHR", (void*)CreateAccelerationStructureKHR},
diff --git a/icd/generated/vk_typemap_helper.h b/icd/generated/vk_typemap_helper.h
index 113d538f..4fc33283 100644
--- a/icd/generated/vk_typemap_helper.h
+++ b/icd/generated/vk_typemap_helper.h
@@ -6181,6 +6181,24 @@ template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_O
typedef VkPhysicalDeviceImage2DViewOf3DFeaturesEXT Type;
};
+// Map type VkPhysicalDeviceShaderTileImageFeaturesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT
+template <> struct LvlTypeMap<VkPhysicalDeviceShaderTileImageFeaturesEXT> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT> {
+ typedef VkPhysicalDeviceShaderTileImageFeaturesEXT Type;
+};
+
+// Map type VkPhysicalDeviceShaderTileImagePropertiesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT
+template <> struct LvlTypeMap<VkPhysicalDeviceShaderTileImagePropertiesEXT> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT> {
+ typedef VkPhysicalDeviceShaderTileImagePropertiesEXT Type;
+};
+
// Map type VkMicromapBuildInfoEXT to id VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT
template <> struct LvlTypeMap<VkMicromapBuildInfoEXT> {
static const VkStructureType kSType = VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT;
@@ -6718,6 +6736,33 @@ template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTEC
typedef VkPhysicalDevicePipelineProtectedAccessFeaturesEXT Type;
};
+// Map type VkPhysicalDeviceShaderObjectFeaturesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT
+template <> struct LvlTypeMap<VkPhysicalDeviceShaderObjectFeaturesEXT> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT> {
+ typedef VkPhysicalDeviceShaderObjectFeaturesEXT Type;
+};
+
+// Map type VkPhysicalDeviceShaderObjectPropertiesEXT to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT
+template <> struct LvlTypeMap<VkPhysicalDeviceShaderObjectPropertiesEXT> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT> {
+ typedef VkPhysicalDeviceShaderObjectPropertiesEXT Type;
+};
+
+// Map type VkShaderCreateInfoEXT to id VK_STRUCTURE_TYPE_SHADER_CREATE_INFO_EXT
+template <> struct LvlTypeMap<VkShaderCreateInfoEXT> {
+ static const VkStructureType kSType = VK_STRUCTURE_TYPE_SHADER_CREATE_INFO_EXT;
+};
+
+template <> struct LvlSTypeMap<VK_STRUCTURE_TYPE_SHADER_CREATE_INFO_EXT> {
+ typedef VkShaderCreateInfoEXT Type;
+};
+
// Map type VkPhysicalDeviceTilePropertiesFeaturesQCOM to id VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM
template <> struct LvlTypeMap<VkPhysicalDeviceTilePropertiesFeaturesQCOM> {
static const VkStructureType kSType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM;
diff --git a/scripts/generate_vulkan_wrapper.py b/scripts/generate_vulkan_wrapper.py
index 75c3194b..d798f33f 100755
--- a/scripts/generate_vulkan_wrapper.py
+++ b/scripts/generate_vulkan_wrapper.py
@@ -1359,6 +1359,9 @@ VK_EXT_multi_draw = Extension(name='VK_EXT_multi_draw', version=1, guard=None, c
VK_EXT_image_2d_view_of_3d = Extension(name='VK_EXT_image_2d_view_of_3d', version=1, guard=None, commands=[
])
+VK_EXT_shader_tile_image = Extension(name='VK_EXT_shader_tile_image', version=1, guard=None, commands=[
+])
+
VK_EXT_opacity_micromap = Extension(name='VK_EXT_opacity_micromap', version=2, guard=None, commands=[
Command(name='vkCreateMicromapEXT', dispatch='VkDevice'),
Command(name='vkDestroyMicromapEXT', dispatch='VkDevice'),
@@ -1376,9 +1379,6 @@ VK_EXT_opacity_micromap = Extension(name='VK_EXT_opacity_micromap', version=2, g
Command(name='vkGetMicromapBuildSizesEXT', dispatch='VkDevice'),
])
-VK_NV_displacement_micromap = Extension(name='VK_NV_displacement_micromap', version=1, guard=None, commands=[
-])
-
VK_EXT_load_store_op_none = Extension(name='VK_EXT_load_store_op_none', version=1, guard=None, commands=[
])
@@ -1498,6 +1498,13 @@ VK_EXT_legacy_dithering = Extension(name='VK_EXT_legacy_dithering', version=1, g
VK_EXT_pipeline_protected_access = Extension(name='VK_EXT_pipeline_protected_access', version=1, guard=None, commands=[
])
+VK_EXT_shader_object = Extension(name='VK_EXT_shader_object', version=1, guard=None, commands=[
+ Command(name='vkCreateShadersEXT', dispatch='VkDevice'),
+ Command(name='vkDestroyShaderEXT', dispatch='VkDevice'),
+ Command(name='vkGetShaderBinaryDataEXT', dispatch='VkDevice'),
+ Command(name='vkCmdBindShadersEXT', dispatch='VkCommandBuffer'),
+])
+
VK_QCOM_tile_properties = Extension(name='VK_QCOM_tile_properties', version=1, guard=None, commands=[
Command(name='vkGetFramebufferTilePropertiesQCOM', dispatch='VkDevice'),
Command(name='vkGetDynamicRenderingTilePropertiesQCOM', dispatch='VkDevice'),
@@ -1704,6 +1711,9 @@ VK_EXT_video_encode_h264 = Extension(name='VK_EXT_video_encode_h264', version=10
VK_EXT_video_encode_h265 = Extension(name='VK_EXT_video_encode_h265', version=10, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
])
+VK_NV_displacement_micromap = Extension(name='VK_NV_displacement_micromap', version=1, guard='VK_ENABLE_BETA_EXTENSIONS', commands=[
+])
+
extensions = [
VK_core_0,
VK_core_1,
@@ -1961,8 +1971,8 @@ extensions = [
VK_EXT_image_view_min_lod,
VK_EXT_multi_draw,
VK_EXT_image_2d_view_of_3d,
+ VK_EXT_shader_tile_image,
VK_EXT_opacity_micromap,
- VK_NV_displacement_micromap,
VK_EXT_load_store_op_none,
VK_HUAWEI_cluster_culling_shader,
VK_EXT_border_color_swizzle,
@@ -1987,6 +1997,7 @@ extensions = [
VK_NV_optical_flow,
VK_EXT_legacy_dithering,
VK_EXT_pipeline_protected_access,
+ VK_EXT_shader_object,
VK_QCOM_tile_properties,
VK_SEC_amigo_profiling,
VK_QCOM_multiview_per_view_viewports,
@@ -2031,6 +2042,7 @@ extensions = [
VK_KHR_video_encode_queue,
VK_EXT_video_encode_h264,
VK_EXT_video_encode_h265,
+ VK_NV_displacement_micromap,
]
# end of generated code
diff --git a/scripts/known_good.json b/scripts/known_good.json
index 0ce254c7..dbdad444 100644
--- a/scripts/known_good.json
+++ b/scripts/known_good.json
@@ -6,7 +6,7 @@
"sub_dir" : "Vulkan-Headers",
"build_dir" : "Vulkan-Headers/build",
"install_dir" : "Vulkan-Headers/build/install",
- "commit": "v1.3.245"
+ "commit": "v1.3.246"
},
{
"name" : "MoltenVK",
@@ -30,7 +30,7 @@
"sub_dir" : "Vulkan-Loader",
"build_dir" : "Vulkan-Loader/build",
"install_dir" : "Vulkan-Loader/build/install",
- "commit": "v1.3.245",
+ "commit": "v1.3.246",
"deps" : [
{
"var_name" : "VULKAN_HEADERS_INSTALL_DIR",
diff --git a/vulkaninfo/generated/vulkaninfo.hpp b/vulkaninfo/generated/vulkaninfo.hpp
index 7d5d3d0f..6c685e21 100644
--- a/vulkaninfo/generated/vulkaninfo.hpp
+++ b/vulkaninfo/generated/vulkaninfo.hpp
@@ -519,6 +519,7 @@ std::string VkResultString(VkResult value) {
case (VK_OPERATION_NOT_DEFERRED_KHR): return "OPERATION_NOT_DEFERRED_KHR";
case (VK_ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR): return "ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR";
case (VK_ERROR_COMPRESSION_EXHAUSTED_EXT): return "ERROR_COMPRESSION_EXHAUSTED_EXT";
+ case (VK_ERROR_INCOMPATIBLE_SHADER_BINARY_EXT): return "ERROR_INCOMPATIBLE_SHADER_BINARY_EXT";
default: return std::string("UNKNOWN_VkResult_value") + std::to_string(value);
}
}
@@ -2519,6 +2520,17 @@ void DumpVkPhysicalDeviceShaderModuleIdentifierPropertiesEXT(Printer &p, std::st
p.SetMinKeyWidth(39);
p.PrintKeyValue("shaderModuleIdentifierAlgorithmUUID", obj.shaderModuleIdentifierAlgorithmUUID);
}
+void DumpVkPhysicalDeviceShaderObjectFeaturesEXT(Printer &p, std::string name, const VkPhysicalDeviceShaderObjectFeaturesEXT &obj) {
+ ObjectWrapper object{p, name};
+ p.SetMinKeyWidth(12);
+ p.PrintKeyBool("shaderObject", static_cast<bool>(obj.shaderObject));
+}
+void DumpVkPhysicalDeviceShaderObjectPropertiesEXT(Printer &p, std::string name, const VkPhysicalDeviceShaderObjectPropertiesEXT &obj) {
+ ObjectWrapper object{p, name};
+ p.SetMinKeyWidth(20);
+ p.PrintKeyValue("shaderBinaryUUID", obj.shaderBinaryUUID);
+ p.PrintKeyValue("shaderBinaryVersion", obj.shaderBinaryVersion);
+}
void DumpVkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(Printer &p, std::string name, const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures &obj) {
ObjectWrapper object{p, name};
p.SetMinKeyWidth(27);
@@ -2534,6 +2546,20 @@ void DumpVkPhysicalDeviceShaderTerminateInvocationFeatures(Printer &p, std::stri
p.SetMinKeyWidth(25);
p.PrintKeyBool("shaderTerminateInvocation", static_cast<bool>(obj.shaderTerminateInvocation));
}
+void DumpVkPhysicalDeviceShaderTileImageFeaturesEXT(Printer &p, std::string name, const VkPhysicalDeviceShaderTileImageFeaturesEXT &obj) {
+ ObjectWrapper object{p, name};
+ p.SetMinKeyWidth(32);
+ p.PrintKeyBool("shaderTileImageColorReadAccess", static_cast<bool>(obj.shaderTileImageColorReadAccess));
+ p.PrintKeyBool("shaderTileImageDepthReadAccess", static_cast<bool>(obj.shaderTileImageDepthReadAccess));
+ p.PrintKeyBool("shaderTileImageStencilReadAccess", static_cast<bool>(obj.shaderTileImageStencilReadAccess));
+}
+void DumpVkPhysicalDeviceShaderTileImagePropertiesEXT(Printer &p, std::string name, const VkPhysicalDeviceShaderTileImagePropertiesEXT &obj) {
+ ObjectWrapper object{p, name};
+ p.SetMinKeyWidth(48);
+ p.PrintKeyBool("shaderTileImageCoherentReadAccelerated", static_cast<bool>(obj.shaderTileImageCoherentReadAccelerated));
+ p.PrintKeyBool("shaderTileImageReadSampleFromPixelRateInvocation", static_cast<bool>(obj.shaderTileImageReadSampleFromPixelRateInvocation));
+ p.PrintKeyBool("shaderTileImageReadFromHelperInvocation", static_cast<bool>(obj.shaderTileImageReadFromHelperInvocation));
+}
void DumpVkPhysicalDeviceSparseProperties(Printer &p, std::string name, const VkPhysicalDeviceSparseProperties &obj) {
if (p.Type() == OutputType::json)
p.ObjectStart("sparseProperties");
@@ -3042,6 +3068,8 @@ struct phys_device_props2_chain {
VkPhysicalDeviceSamplerFilterMinmaxProperties PhysicalDeviceSamplerFilterMinmaxProperties{};
VkPhysicalDeviceShaderIntegerDotProductProperties PhysicalDeviceShaderIntegerDotProductProperties{};
VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT PhysicalDeviceShaderModuleIdentifierPropertiesEXT{};
+ VkPhysicalDeviceShaderObjectPropertiesEXT PhysicalDeviceShaderObjectPropertiesEXT{};
+ VkPhysicalDeviceShaderTileImagePropertiesEXT PhysicalDeviceShaderTileImagePropertiesEXT{};
VkPhysicalDeviceSubgroupProperties PhysicalDeviceSubgroupProperties{};
VkPhysicalDeviceSubgroupSizeControlProperties PhysicalDeviceSubgroupSizeControlProperties{};
VkPhysicalDeviceTexelBufferAlignmentProperties PhysicalDeviceTexelBufferAlignmentProperties{};
@@ -3096,6 +3124,8 @@ struct phys_device_props2_chain {
PhysicalDeviceSamplerFilterMinmaxProperties.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES;
PhysicalDeviceShaderIntegerDotProductProperties.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES;
PhysicalDeviceShaderModuleIdentifierPropertiesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT;
+ PhysicalDeviceShaderObjectPropertiesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT;
+ PhysicalDeviceShaderTileImagePropertiesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT;
PhysicalDeviceSubgroupProperties.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES;
PhysicalDeviceSubgroupSizeControlProperties.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES;
PhysicalDeviceTexelBufferAlignmentProperties.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES;
@@ -3150,6 +3180,8 @@ struct phys_device_props2_chain {
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSamplerFilterMinmaxProperties));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderIntegerDotProductProperties));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderModuleIdentifierPropertiesEXT));
+ chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderObjectPropertiesEXT));
+ chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderTileImagePropertiesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSubgroupProperties));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSubgroupSizeControlProperties));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceTexelBufferAlignmentProperties));
@@ -3293,9 +3325,11 @@ struct phys_device_features2_chain {
VkPhysicalDeviceShaderIntegerDotProductFeatures PhysicalDeviceShaderIntegerDotProductFeatures{};
char padding[64];
VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT PhysicalDeviceShaderModuleIdentifierFeaturesEXT{};
+ VkPhysicalDeviceShaderObjectFeaturesEXT PhysicalDeviceShaderObjectFeaturesEXT{};
VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures PhysicalDeviceShaderSubgroupExtendedTypesFeatures{};
VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR{};
VkPhysicalDeviceShaderTerminateInvocationFeatures PhysicalDeviceShaderTerminateInvocationFeatures{};
+ VkPhysicalDeviceShaderTileImageFeaturesEXT PhysicalDeviceShaderTileImageFeaturesEXT{};
VkPhysicalDeviceSubgroupSizeControlFeatures PhysicalDeviceSubgroupSizeControlFeatures{};
VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT PhysicalDeviceSubpassMergeFeedbackFeaturesEXT{};
VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT PhysicalDeviceSwapchainMaintenance1FeaturesEXT{};
@@ -3407,9 +3441,11 @@ struct phys_device_features2_chain {
PhysicalDeviceShaderImageAtomicInt64FeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT;
PhysicalDeviceShaderIntegerDotProductFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES;
PhysicalDeviceShaderModuleIdentifierFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT;
+ PhysicalDeviceShaderObjectFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT;
PhysicalDeviceShaderSubgroupExtendedTypesFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES;
PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR;
PhysicalDeviceShaderTerminateInvocationFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES;
+ PhysicalDeviceShaderTileImageFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT;
PhysicalDeviceSubgroupSizeControlFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES;
PhysicalDeviceSubpassMergeFeedbackFeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT;
PhysicalDeviceSwapchainMaintenance1FeaturesEXT.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT;
@@ -3521,9 +3557,11 @@ struct phys_device_features2_chain {
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderImageAtomicInt64FeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderIntegerDotProductFeatures));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderModuleIdentifierFeaturesEXT));
+ chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderObjectFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderSubgroupExtendedTypesFeatures));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderTerminateInvocationFeatures));
+ chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceShaderTileImageFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSubgroupSizeControlFeatures));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSubpassMergeFeedbackFeaturesEXT));
chain_members.push_back(reinterpret_cast<VkBaseOutStructure*>(&PhysicalDeviceSwapchainMaintenance1FeaturesEXT));
@@ -3925,6 +3963,18 @@ void chain_iterator_phys_device_props2(Printer &p, AppInstance &inst, AppGpu &gp
DumpVkPhysicalDeviceShaderModuleIdentifierPropertiesEXT(p, "VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT", *props);
p.AddNewline();
}
+ if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT &&
+ (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_SHADER_OBJECT_EXTENSION_NAME))) {
+ VkPhysicalDeviceShaderObjectPropertiesEXT* props = (VkPhysicalDeviceShaderObjectPropertiesEXT*)structure;
+ DumpVkPhysicalDeviceShaderObjectPropertiesEXT(p, "VkPhysicalDeviceShaderObjectPropertiesEXT", *props);
+ p.AddNewline();
+ }
+ if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT &&
+ (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_SHADER_TILE_IMAGE_EXTENSION_NAME))) {
+ VkPhysicalDeviceShaderTileImagePropertiesEXT* props = (VkPhysicalDeviceShaderTileImagePropertiesEXT*)structure;
+ DumpVkPhysicalDeviceShaderTileImagePropertiesEXT(p, "VkPhysicalDeviceShaderTileImagePropertiesEXT", *props);
+ p.AddNewline();
+ }
if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES &&
(gpu.api_version.minor >= 1)) {
VkPhysicalDeviceSubgroupProperties* props = (VkPhysicalDeviceSubgroupProperties*)structure;
@@ -4539,6 +4589,12 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place)
DumpVkPhysicalDeviceShaderModuleIdentifierFeaturesEXT(p, "VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT", *props);
p.AddNewline();
}
+ if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT &&
+ (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_SHADER_OBJECT_EXTENSION_NAME))) {
+ VkPhysicalDeviceShaderObjectFeaturesEXT* props = (VkPhysicalDeviceShaderObjectFeaturesEXT*)structure;
+ DumpVkPhysicalDeviceShaderObjectFeaturesEXT(p, "VkPhysicalDeviceShaderObjectFeaturesEXT", *props);
+ p.AddNewline();
+ }
if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES &&
(gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME) ||
gpu.api_version.minor >= 2)) {
@@ -4559,6 +4615,12 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place)
DumpVkPhysicalDeviceShaderTerminateInvocationFeatures(p, gpu.api_version.minor >= 3 ?"VkPhysicalDeviceShaderTerminateInvocationFeatures":"VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR", *props);
p.AddNewline();
}
+ if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT &&
+ (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_SHADER_TILE_IMAGE_EXTENSION_NAME))) {
+ VkPhysicalDeviceShaderTileImageFeaturesEXT* props = (VkPhysicalDeviceShaderTileImageFeaturesEXT*)structure;
+ DumpVkPhysicalDeviceShaderTileImageFeaturesEXT(p, "VkPhysicalDeviceShaderTileImageFeaturesEXT", *props);
+ p.AddNewline();
+ }
if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES &&
(gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME) ||
gpu.api_version.minor >= 3)) {