diff --git a/scripts/vulkaninfo_generator.py b/scripts/vulkaninfo_generator.py index 59cd3f37e..d5008d101 100644 --- a/scripts/vulkaninfo_generator.py +++ b/scripts/vulkaninfo_generator.py @@ -92,6 +92,8 @@ 'VkSurfaceCapabilities2KHR', 'VkSurfaceCapabilities2EXT'] # don't generate these structures STRUCT_BLACKLIST = ['VkVideoProfileListInfoKHR', 'VkVideoProfileInfoKHR', 'VkDrmFormatModifierPropertiesListEXT', 'VkDrmFormatModifierPropertiesEXT', 'VkDrmFormatModifierPropertiesList2EXT'] +# These structures are only used in version 1.1, otherwise they are included in the promoted structs +STRUCT_1_1_LIST = ['VkPhysicalDeviceProtectedMemoryFeatures', 'VkPhysicalDeviceShaderDrawParametersFeatures', 'VkPhysicalDeviceSubgroupProperties', 'VkPhysicalDeviceProtectedMemoryProperties'] # generate these structures such that they only print when not in json mode (as json wants them separate) PORTABILITY_STRUCTS = ['VkPhysicalDevicePortabilitySubsetFeaturesKHR', 'VkPhysicalDevicePortabilitySubsetPropertiesKHR'] @@ -801,7 +803,9 @@ def PrintChainStruct(listName, structures, all_structures, chain_details, extTyp else: assert False, 'Should never get here' if has_version: - if has_printed_condition: + if s.name in STRUCT_1_1_LIST: + out += f'{version_desc} == {version.constant}' + elif has_printed_condition: out += f')\n && {version_desc} < {version.constant}' else: out += f'{version_desc} >= {version.constant}' @@ -891,7 +895,9 @@ def PrintChainStruct(listName, structures, all_structures, chain_details, extTyp else: assert False, 'Should never get here' if has_version: - if has_printed_condition: + if s.name in STRUCT_1_1_LIST: + out += f'{version_desc} == {version.constant}' + elif has_printed_condition: out += f') &&\n {version_desc} < {version.constant}' else: out += f'{version_desc} >= {version.constant}' diff --git a/vulkaninfo/generated/vulkaninfo.hpp b/vulkaninfo/generated/vulkaninfo.hpp index 003dac877..9b3ac2106 100644 --- a/vulkaninfo/generated/vulkaninfo.hpp +++ b/vulkaninfo/generated/vulkaninfo.hpp @@ -3495,7 +3495,7 @@ struct phys_device_props2_chain { if (gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME)) chain_members.push_back(reinterpret_cast(&PhysicalDevicePortabilitySubsetPropertiesKHR)); #endif // VK_ENABLE_BETA_EXTENSIONS - if (gpu.api_version >= VK_API_VERSION_1_1) + if (gpu.api_version == VK_API_VERSION_1_1) chain_members.push_back(reinterpret_cast(&PhysicalDeviceProtectedMemoryProperties)); if (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME)) chain_members.push_back(reinterpret_cast(&PhysicalDeviceProvokingVertexPropertiesEXT)); @@ -3519,7 +3519,7 @@ struct phys_device_props2_chain { chain_members.push_back(reinterpret_cast(&PhysicalDeviceShaderObjectPropertiesEXT)); if (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_SHADER_TILE_IMAGE_EXTENSION_NAME)) chain_members.push_back(reinterpret_cast(&PhysicalDeviceShaderTileImagePropertiesEXT)); - if (gpu.api_version >= VK_API_VERSION_1_1) + if (gpu.api_version == VK_API_VERSION_1_1) chain_members.push_back(reinterpret_cast(&PhysicalDeviceSubgroupProperties)); if ((gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME)) && gpu.api_version < VK_API_VERSION_1_3) @@ -3796,7 +3796,7 @@ void chain_iterator_phys_device_props2(Printer &p, AppInstance &inst, AppGpu &gp } #endif // VK_ENABLE_BETA_EXTENSIONS if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES && - (gpu.api_version >= VK_API_VERSION_1_1)) { + (gpu.api_version == VK_API_VERSION_1_1)) { VkPhysicalDeviceProtectedMemoryProperties* props = (VkPhysicalDeviceProtectedMemoryProperties*)structure; DumpVkPhysicalDeviceProtectedMemoryProperties(p, "VkPhysicalDeviceProtectedMemoryProperties", *props); p.AddNewline(); @@ -3864,7 +3864,7 @@ void chain_iterator_phys_device_props2(Printer &p, AppInstance &inst, AppGpu &gp p.AddNewline(); } if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES && - (gpu.api_version >= VK_API_VERSION_1_1)) { + (gpu.api_version == VK_API_VERSION_1_1)) { VkPhysicalDeviceSubgroupProperties* props = (VkPhysicalDeviceSubgroupProperties*)structure; DumpVkPhysicalDeviceSubgroupProperties(p, "VkPhysicalDeviceSubgroupProperties", *props); p.AddNewline(); @@ -4389,7 +4389,7 @@ struct phys_device_features2_chain { if ((gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_PRIVATE_DATA_EXTENSION_NAME)) && gpu.api_version < VK_API_VERSION_1_3) chain_members.push_back(reinterpret_cast(&PhysicalDevicePrivateDataFeatures)); - if (gpu.api_version >= VK_API_VERSION_1_1) + if (gpu.api_version == VK_API_VERSION_1_1) chain_members.push_back(reinterpret_cast(&PhysicalDeviceProtectedMemoryFeatures)); if (gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME)) chain_members.push_back(reinterpret_cast(&PhysicalDeviceProvokingVertexFeaturesEXT)); @@ -4429,7 +4429,7 @@ struct phys_device_features2_chain { if ((gpu.CheckPhysicalDeviceExtensionIncluded(VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME)) && gpu.api_version < VK_API_VERSION_1_3) chain_members.push_back(reinterpret_cast(&PhysicalDeviceShaderDemoteToHelperInvocationFeatures)); - if (gpu.api_version >= VK_API_VERSION_1_1) + if (gpu.api_version == VK_API_VERSION_1_1) chain_members.push_back(reinterpret_cast(&PhysicalDeviceShaderDrawParametersFeatures)); if ((gpu.CheckPhysicalDeviceExtensionIncluded(VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME)) && gpu.api_version < VK_API_VERSION_1_2) @@ -4995,7 +4995,7 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place) p.AddNewline(); } if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES && - (gpu.api_version >= VK_API_VERSION_1_1)) { + (gpu.api_version == VK_API_VERSION_1_1)) { VkPhysicalDeviceProtectedMemoryFeatures* props = (VkPhysicalDeviceProtectedMemoryFeatures*)structure; DumpVkPhysicalDeviceProtectedMemoryFeatures(p, "VkPhysicalDeviceProtectedMemoryFeatures", *props); p.AddNewline(); @@ -5102,7 +5102,7 @@ void chain_iterator_phys_device_features2(Printer &p, AppGpu &gpu, void * place) p.AddNewline(); } if (structure->sType == VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES && - (gpu.api_version >= VK_API_VERSION_1_1)) { + (gpu.api_version == VK_API_VERSION_1_1)) { VkPhysicalDeviceShaderDrawParametersFeatures* props = (VkPhysicalDeviceShaderDrawParametersFeatures*)structure; DumpVkPhysicalDeviceShaderDrawParametersFeatures(p, gpu.api_version >= VK_API_VERSION_1_1 ?"VkPhysicalDeviceShaderDrawParametersFeatures":"VkPhysicalDeviceShaderDrawParameterFeatures", *props); p.AddNewline(); diff --git a/windows-runtime-installer/VulkanRT-License.txt b/windows-runtime-installer/VulkanRT-License.txt index b799d85f5..e8cd1a73c 100644 --- a/windows-runtime-installer/VulkanRT-License.txt +++ b/windows-runtime-installer/VulkanRT-License.txt @@ -1,6 +1,6 @@ -Copyright (c) 2015-2023 The Khronos Group Inc. -Copyright (c) 2015-2023 LunarG, Inc. -Copyright (c) 2015-2023 Valve Corporation +Copyright (c) 2015-2024 The Khronos Group Inc. +Copyright (c) 2015-2024 LunarG, Inc. +Copyright (c) 2015-2024 Valve Corporation The Vulkan Runtime is comprised of 100% open-source components (MIT, and Apache 2.0). The text of such licenses is included below along with the @@ -30,9 +30,9 @@ under the License. ============================MIT============================ Copyright (c) 2009 Dave Gamble -Copyright (c) 2015-2023 The Khronos Group Inc. -Copyright (c) 2015-2023 Valve Corporation -Copyright (c) 2015-2023 LunarG, Inc. +Copyright (c) 2015-2024 The Khronos Group Inc. +Copyright (c) 2015-2024 Valve Corporation +Copyright (c) 2015-2024 LunarG, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -55,9 +55,9 @@ THE SOFTWARE. ============================MIT============================ Copyright (c) 2014 joseph werle -Copyright (c) 2015-2023 The Khronos Group Inc. -Copyright (c) 2015-2023 Valve Corporation -Copyright (c) 2015-2023 LunarG, Inc. +Copyright (c) 2015-2024 The Khronos Group Inc. +Copyright (c) 2015-2024 Valve Corporation +Copyright (c) 2015-2024 LunarG, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and/or associated documentation files (the "Materials"), to