build: Update to header 1.3.284
diff --git a/include/vulkan/utility/vk_safe_struct.hpp b/include/vulkan/utility/vk_safe_struct.hpp
index d8dcb9a..50df585 100644
--- a/include/vulkan/utility/vk_safe_struct.hpp
+++ b/include/vulkan/utility/vk_safe_struct.hpp
@@ -17118,6 +17118,49 @@
return reinterpret_cast<VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV const*>(this);
}
};
+struct safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT {
+ VkStructureType sType;
+ void* pNext{};
+ VkBool32 legacyVertexAttributes;
+
+ safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT(const VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT* in_struct,
+ PNextCopyState* copy_state = {}, bool copy_pnext = true);
+ safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT(const safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT& copy_src);
+ safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT& operator=(
+ const safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT& copy_src);
+ safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT();
+ ~safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT();
+ void initialize(const VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT* in_struct, PNextCopyState* copy_state = {});
+ void initialize(const safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT* copy_src, PNextCopyState* copy_state = {});
+ VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT* ptr() {
+ return reinterpret_cast<VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT*>(this);
+ }
+ VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT const* ptr() const {
+ return reinterpret_cast<VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT const*>(this);
+ }
+};
+struct safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT {
+ VkStructureType sType;
+ void* pNext{};
+ VkBool32 nativeUnalignedPerformance;
+
+ safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT(const VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT* in_struct,
+ PNextCopyState* copy_state = {}, bool copy_pnext = true);
+ safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT(
+ const safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT& copy_src);
+ safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT& operator=(
+ const safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT& copy_src);
+ safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT();
+ ~safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT();
+ void initialize(const VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT* in_struct, PNextCopyState* copy_state = {});
+ void initialize(const safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT* copy_src, PNextCopyState* copy_state = {});
+ VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT* ptr() {
+ return reinterpret_cast<VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT*>(this);
+ }
+ VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT const* ptr() const {
+ return reinterpret_cast<VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT const*>(this);
+ }
+};
struct safe_VkLayerSettingEXT {
const char* pLayerName{};
const char* pSettingName{};
diff --git a/include/vulkan/utility/vk_struct_helper.hpp b/include/vulkan/utility/vk_struct_helper.hpp
index 55dda0e..b0083a3 100644
--- a/include/vulkan/utility/vk_struct_helper.hpp
+++ b/include/vulkan/utility/vk_struct_helper.hpp
@@ -902,6 +902,8 @@
template <> inline VkStructureType GetSType<VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV; }
template <> inline VkStructureType GetSType<VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_FEATURES_NV; }
template <> inline VkStructureType GetSType<VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_PROPERTIES_NV; }
+template <> inline VkStructureType GetSType<VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT; }
+template <> inline VkStructureType GetSType<VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT; }
template <> inline VkStructureType GetSType<VkLayerSettingsCreateInfoEXT>() { return VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT; }
template <> inline VkStructureType GetSType<VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM; }
template <> inline VkStructureType GetSType<VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM>() { return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM; }
diff --git a/include/vulkan/vk_enum_string_helper.h b/include/vulkan/vk_enum_string_helper.h
index 8026787..e1f9bd7 100644
--- a/include/vulkan/vk_enum_string_helper.h
+++ b/include/vulkan/vk_enum_string_helper.h
@@ -1778,6 +1778,10 @@
return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT";
case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT:
return "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT:
return "VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM:
diff --git a/scripts/known_good.json b/scripts/known_good.json
index 58987c8..2fac837 100644
--- a/scripts/known_good.json
+++ b/scripts/known_good.json
@@ -7,7 +7,7 @@
"sub_dir": "Vulkan-Headers",
"build_dir": "Vulkan-Headers/build",
"install_dir": "Vulkan-Headers/build/install",
- "commit": "v1.3.283"
+ "commit": "v1.3.284"
},
{
"name": "googletest",
diff --git a/src/vulkan/vk_safe_struct_ext.cpp b/src/vulkan/vk_safe_struct_ext.cpp
index a399902..0c682ec 100644
--- a/src/vulkan/vk_safe_struct_ext.cpp
+++ b/src/vulkan/vk_safe_struct_ext.cpp
@@ -14788,6 +14788,110 @@
if (copy_src->pSpecializationInfo) pSpecializationInfo = new safe_VkSpecializationInfo(*copy_src->pSpecializationInfo);
}
+safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT::safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT(
+ const VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT* in_struct, [[maybe_unused]] PNextCopyState* copy_state,
+ bool copy_pnext)
+ : sType(in_struct->sType), legacyVertexAttributes(in_struct->legacyVertexAttributes) {
+ if (copy_pnext) {
+ pNext = SafePnextCopy(in_struct->pNext, copy_state);
+ }
+}
+
+safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT::safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT()
+ : sType(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT), pNext(nullptr), legacyVertexAttributes() {}
+
+safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT::safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT(
+ const safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT& copy_src) {
+ sType = copy_src.sType;
+ legacyVertexAttributes = copy_src.legacyVertexAttributes;
+ pNext = SafePnextCopy(copy_src.pNext);
+}
+
+safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT& safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT::operator=(
+ const safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT& copy_src) {
+ if (©_src == this) return *this;
+
+ FreePnextChain(pNext);
+
+ sType = copy_src.sType;
+ legacyVertexAttributes = copy_src.legacyVertexAttributes;
+ pNext = SafePnextCopy(copy_src.pNext);
+
+ return *this;
+}
+
+safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT::~safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT() {
+ FreePnextChain(pNext);
+}
+
+void safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT::initialize(
+ const VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT* in_struct, [[maybe_unused]] PNextCopyState* copy_state) {
+ FreePnextChain(pNext);
+ sType = in_struct->sType;
+ legacyVertexAttributes = in_struct->legacyVertexAttributes;
+ pNext = SafePnextCopy(in_struct->pNext, copy_state);
+}
+
+void safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT::initialize(
+ const safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT* copy_src, [[maybe_unused]] PNextCopyState* copy_state) {
+ sType = copy_src->sType;
+ legacyVertexAttributes = copy_src->legacyVertexAttributes;
+ pNext = SafePnextCopy(copy_src->pNext);
+}
+
+safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT::safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT(
+ const VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT* in_struct, [[maybe_unused]] PNextCopyState* copy_state,
+ bool copy_pnext)
+ : sType(in_struct->sType), nativeUnalignedPerformance(in_struct->nativeUnalignedPerformance) {
+ if (copy_pnext) {
+ pNext = SafePnextCopy(in_struct->pNext, copy_state);
+ }
+}
+
+safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT::safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT()
+ : sType(VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT),
+ pNext(nullptr),
+ nativeUnalignedPerformance() {}
+
+safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT::safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT(
+ const safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT& copy_src) {
+ sType = copy_src.sType;
+ nativeUnalignedPerformance = copy_src.nativeUnalignedPerformance;
+ pNext = SafePnextCopy(copy_src.pNext);
+}
+
+safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT& safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT::operator=(
+ const safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT& copy_src) {
+ if (©_src == this) return *this;
+
+ FreePnextChain(pNext);
+
+ sType = copy_src.sType;
+ nativeUnalignedPerformance = copy_src.nativeUnalignedPerformance;
+ pNext = SafePnextCopy(copy_src.pNext);
+
+ return *this;
+}
+
+safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT::~safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT() {
+ FreePnextChain(pNext);
+}
+
+void safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT::initialize(
+ const VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT* in_struct, [[maybe_unused]] PNextCopyState* copy_state) {
+ FreePnextChain(pNext);
+ sType = in_struct->sType;
+ nativeUnalignedPerformance = in_struct->nativeUnalignedPerformance;
+ pNext = SafePnextCopy(in_struct->pNext, copy_state);
+}
+
+void safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT::initialize(
+ const safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT* copy_src, [[maybe_unused]] PNextCopyState* copy_state) {
+ sType = copy_src->sType;
+ nativeUnalignedPerformance = copy_src->nativeUnalignedPerformance;
+ pNext = SafePnextCopy(copy_src->pNext);
+}
+
safe_VkLayerSettingEXT::safe_VkLayerSettingEXT(const VkLayerSettingEXT* in_struct, [[maybe_unused]] PNextCopyState* copy_state)
: type(in_struct->type), valueCount(in_struct->valueCount), pValues(in_struct->pValues) {
pLayerName = SafeStringCopy(in_struct->pLayerName);
diff --git a/src/vulkan/vk_safe_struct_utils.cpp b/src/vulkan/vk_safe_struct_utils.cpp
index 063c311..7c45d7d 100644
--- a/src/vulkan/vk_safe_struct_utils.cpp
+++ b/src/vulkan/vk_safe_struct_utils.cpp
@@ -1696,6 +1696,12 @@
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_PROPERTIES_NV:
safe_pNext = new safe_VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV(reinterpret_cast<const VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV *>(pNext), copy_state, false);
break;
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT:
+ safe_pNext = new safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT(reinterpret_cast<const VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT *>(pNext), copy_state, false);
+ break;
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT:
+ safe_pNext = new safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT(reinterpret_cast<const VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT *>(pNext), copy_state, false);
+ break;
case VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT:
safe_pNext = new safe_VkLayerSettingsCreateInfoEXT(reinterpret_cast<const VkLayerSettingsCreateInfoEXT *>(pNext), copy_state, false);
break;
@@ -3492,6 +3498,12 @@
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_PROPERTIES_NV:
delete reinterpret_cast<const safe_VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV *>(header);
break;
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT:
+ delete reinterpret_cast<const safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT *>(header);
+ break;
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT:
+ delete reinterpret_cast<const safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT *>(header);
+ break;
case VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT:
delete reinterpret_cast<const safe_VkLayerSettingsCreateInfoEXT *>(header);
break;