Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ cmake_minimum_required(VERSION 3.22.1)
# The VERSION field is generated with the "--generated-version" flag in the generate_source.py script
#
# If working with unreleased extensions, make sure the header and validation version are all on the same header version
project(VVL VERSION 1.4.341 LANGUAGES CXX)
project(VVL VERSION 1.4.342 LANGUAGES CXX)

# This variable enables downstream users to customize the target API
# variant (e.g. Vulkan SC)
Expand Down
2 changes: 1 addition & 1 deletion layers/VkLayer_khronos_validation.json.in
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"prefix": "vvl",
"type": "GLOBAL",
"library_path": "@JSON_LIBRARY_PATH@",
"api_version": "1.4.341",
"api_version": "1.4.342",
"implementation_version": "1",
"description": "Khronos Validation Layer",
"introduction": "The main, comprehensive Khronos validation layer.\n\nVulkan is an Explicit API, enabling direct control over how GPUs actually work. By design, minimal error checking is done inside a Vulkan driver. Applications have full control and responsibility for correct operation. Any errors in how Vulkan is used can result in a crash. \n\nThe Khronos Validation Layer can be enabled to assist development by enabling developers to verify their applications correctly use the Vulkan API.",
Expand Down
6 changes: 6 additions & 0 deletions layers/vulkan/generated/device_features.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -915,6 +915,12 @@ void GetEnabledDeviceFeatures(const VkDeviceCreateInfo *pCreateInfo, DeviceFeatu
features->representativeFragmentTest |= enabled->representativeFragmentTest == VK_TRUE;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_CONVERSION_FEATURES_QCOM: {
const VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM *enabled =
reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM *>(pNext);
features->cooperativeMatrixConversion |= enabled->cooperativeMatrixConversion == VK_TRUE;
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV: {
const VkPhysicalDeviceMeshShaderFeaturesNV *enabled =
reinterpret_cast<const VkPhysicalDeviceMeshShaderFeaturesNV *>(pNext);
Expand Down
2 changes: 2 additions & 0 deletions layers/vulkan/generated/device_features.h
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,8 @@ struct DeviceFeatures {
bool cooperativeMatrixTensorAddressing;
// VkPhysicalDeviceCooperativeMatrix2FeaturesNV
bool cooperativeMatrixWorkgroupScope;
// VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM
bool cooperativeMatrixConversion;
// VkPhysicalDeviceCooperativeMatrixFeaturesKHR, VkPhysicalDeviceCooperativeMatrixFeaturesNV
bool cooperativeMatrix;
// VkPhysicalDeviceCooperativeMatrixFeaturesKHR, VkPhysicalDeviceCooperativeMatrixFeaturesNV
Expand Down
2 changes: 1 addition & 1 deletion layers/vulkan/generated/enum_flag_bits.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
#include <array>
#include "vulkan/vulkan.h"
// clang-format off
const uint32_t GeneratedVulkanHeaderVersion = 341;
const uint32_t GeneratedVulkanHeaderVersion = 342;
const VkAccessFlags AllVkAccessFlagBits = VK_ACCESS_INDIRECT_COMMAND_READ_BIT|VK_ACCESS_INDEX_READ_BIT|VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT|VK_ACCESS_UNIFORM_READ_BIT|VK_ACCESS_INPUT_ATTACHMENT_READ_BIT|VK_ACCESS_SHADER_READ_BIT|VK_ACCESS_SHADER_WRITE_BIT|VK_ACCESS_COLOR_ATTACHMENT_READ_BIT|VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT|VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT|VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT|VK_ACCESS_TRANSFER_READ_BIT|VK_ACCESS_TRANSFER_WRITE_BIT|VK_ACCESS_HOST_READ_BIT|VK_ACCESS_HOST_WRITE_BIT|VK_ACCESS_MEMORY_READ_BIT|VK_ACCESS_MEMORY_WRITE_BIT|VK_ACCESS_NONE|VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT|VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT|VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT|VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT|VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT|VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR|VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR|VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT|VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR|VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_EXT|VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_EXT;
const VkImageAspectFlags AllVkImageAspectFlagBits = VK_IMAGE_ASPECT_COLOR_BIT|VK_IMAGE_ASPECT_DEPTH_BIT|VK_IMAGE_ASPECT_STENCIL_BIT|VK_IMAGE_ASPECT_METADATA_BIT|VK_IMAGE_ASPECT_PLANE_0_BIT|VK_IMAGE_ASPECT_PLANE_1_BIT|VK_IMAGE_ASPECT_PLANE_2_BIT|VK_IMAGE_ASPECT_NONE|VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT|VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT|VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT|VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT;
const VkInstanceCreateFlags AllVkInstanceCreateFlagBits = VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR;
Expand Down
5 changes: 5 additions & 0 deletions layers/vulkan/generated/error_location_helper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1410,6 +1410,7 @@ const char* String(Struct structure) {
{"VkPhysicalDeviceConservativeRasterizationPropertiesEXT", 55},
{"VkPhysicalDeviceCooperativeMatrix2FeaturesNV", 45},
{"VkPhysicalDeviceCooperativeMatrix2PropertiesNV", 47},
{"VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM", 56},
{"VkPhysicalDeviceCooperativeMatrixFeaturesKHR", 45},
{"VkPhysicalDeviceCooperativeMatrixFeaturesNV", 44},
{"VkPhysicalDeviceCooperativeMatrixPropertiesKHR", 47},
Expand Down Expand Up @@ -2438,6 +2439,7 @@ const char* String(Field field) {
{"conversion", 11},
{"cooperativeMatrix", 18},
{"cooperativeMatrixBlockLoads", 28},
{"cooperativeMatrixConversion", 28},
{"cooperativeMatrixConversions", 29},
{"cooperativeMatrixFlexibleDimensions", 36},
{"cooperativeMatrixFlexibleDimensionsMaxDimension", 48},
Expand Down Expand Up @@ -6177,6 +6179,7 @@ const char* String(Extension extension) {
{"VK_NV_win32_keyed_mutex", 24},
{"VK_OHOS_external_memory", 24},
{"VK_OHOS_surface", 16},
{"VK_QCOM_cooperative_matrix_conversion", 38},
{"VK_QCOM_data_graph_model", 25},
{"VK_QCOM_filter_cubic_clamp", 27},
{"VK_QCOM_filter_cubic_weights", 29},
Expand Down Expand Up @@ -8125,6 +8128,8 @@ Struct StypeToStruct(VkStructureType stype) {
return Struct::VkPhysicalDeviceImageViewImageFormatInfoEXT;
case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT:
return Struct::VkFilterCubicImageViewImageFormatPropertiesEXT;
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_CONVERSION_FEATURES_QCOM:
return Struct::VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM;
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT:
return Struct::VkImportMemoryHostPointerInfoEXT;
case VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT:
Expand Down
3 changes: 3 additions & 0 deletions layers/vulkan/generated/error_location_helper.h
Original file line number Diff line number Diff line change
Expand Up @@ -1404,6 +1404,7 @@ enum class Struct {
VkPhysicalDeviceConservativeRasterizationPropertiesEXT,
VkPhysicalDeviceCooperativeMatrix2FeaturesNV,
VkPhysicalDeviceCooperativeMatrix2PropertiesNV,
VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM,
VkPhysicalDeviceCooperativeMatrixFeaturesKHR,
VkPhysicalDeviceCooperativeMatrixFeaturesNV,
VkPhysicalDeviceCooperativeMatrixPropertiesKHR,
Expand Down Expand Up @@ -2429,6 +2430,7 @@ enum class Field {
conversion,
cooperativeMatrix,
cooperativeMatrixBlockLoads,
cooperativeMatrixConversion,
cooperativeMatrixConversions,
cooperativeMatrixFlexibleDimensions,
cooperativeMatrixFlexibleDimensionsMaxDimension,
Expand Down Expand Up @@ -6159,6 +6161,7 @@ enum class Extension {
_VK_NV_win32_keyed_mutex,
_VK_OHOS_external_memory,
_VK_OHOS_surface,
_VK_QCOM_cooperative_matrix_conversion,
_VK_QCOM_data_graph_model,
_VK_QCOM_filter_cubic_clamp,
_VK_QCOM_filter_cubic_weights,
Expand Down
11 changes: 11 additions & 0 deletions layers/vulkan/generated/feature_not_present.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -537,6 +537,17 @@ void Instance::ReportErrorFeatureNotPresent(VkPhysicalDevice gpu, const VkDevice
}
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_CONVERSION_FEATURES_QCOM: {
VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM supported = vku::InitStructHelper();
features_2.pNext = &supported;
DispatchGetPhysicalDeviceFeatures2(gpu, &features_2);
const VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM *enabling =
reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM *>(current);
if (enabling->cooperativeMatrixConversion && !supported.cooperativeMatrixConversion) {
ss << "VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM::cooperativeMatrixConversion is not supported\n";
}
break;
}
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR: {
VkPhysicalDeviceCooperativeMatrixFeaturesKHR supported = vku::InitStructHelper();
features_2.pNext = &supported;
Expand Down
42 changes: 29 additions & 13 deletions layers/vulkan/generated/feature_requirements_helper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -851,6 +851,22 @@ FeatureAndName AddFeature(APIVersion api_version, vkt::Feature feature, void **i
"VkPhysicalDeviceCooperativeMatrix2FeaturesNV::cooperativeMatrixWorkgroupScope"};
}

case Feature::cooperativeMatrixConversion: {
auto vk_struct = const_cast<VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM *>(
vku::FindStructInPNextChain<VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM>(*inout_pnext_chain));
if (!vk_struct) {
vk_struct = new VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM;
*vk_struct = vku::InitStructHelper();
if (*inout_pnext_chain) {
vvl::PnextChainAdd(*inout_pnext_chain, vk_struct);
} else {
*inout_pnext_chain = vk_struct;
}
}
return {&vk_struct->cooperativeMatrixConversion,
"VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM::cooperativeMatrixConversion"};
}

case Feature::cooperativeMatrix: {
auto vk_struct = const_cast<VkPhysicalDeviceCooperativeMatrixFeaturesKHR *>(
vku::FindStructInPNextChain<VkPhysicalDeviceCooperativeMatrixFeaturesKHR>(*inout_pnext_chain));
Expand Down Expand Up @@ -4779,21 +4795,21 @@ FeatureAndName AddFeature(APIVersion api_version, vkt::Feature feature, void **i
}
#ifdef VK_ENABLE_BETA_EXTENSIONS

case Feature::constantAlphaColorBlendFactors: {
auto vk_struct = const_cast<VkPhysicalDevicePortabilitySubsetFeaturesKHR *>(
vku::FindStructInPNextChain<VkPhysicalDevicePortabilitySubsetFeaturesKHR>(*inout_pnext_chain));
if (!vk_struct) {
vk_struct = new VkPhysicalDevicePortabilitySubsetFeaturesKHR;
*vk_struct = vku::InitStructHelper();
if (*inout_pnext_chain) {
vvl::PnextChainAdd(*inout_pnext_chain, vk_struct);
} else {
*inout_pnext_chain = vk_struct;
case Feature::constantAlphaColorBlendFactors : {
auto vk_struct = const_cast<VkPhysicalDevicePortabilitySubsetFeaturesKHR *>(
vku::FindStructInPNextChain<VkPhysicalDevicePortabilitySubsetFeaturesKHR>(*inout_pnext_chain));
if (!vk_struct) {
vk_struct = new VkPhysicalDevicePortabilitySubsetFeaturesKHR;
*vk_struct = vku::InitStructHelper();
if (*inout_pnext_chain) {
vvl::PnextChainAdd(*inout_pnext_chain, vk_struct);
} else {
*inout_pnext_chain = vk_struct;
}
}
return {&vk_struct->constantAlphaColorBlendFactors,
"VkPhysicalDevicePortabilitySubsetFeaturesKHR::constantAlphaColorBlendFactors"};
}
return {&vk_struct->constantAlphaColorBlendFactors,
"VkPhysicalDevicePortabilitySubsetFeaturesKHR::constantAlphaColorBlendFactors"};
}
#endif // VK_ENABLE_BETA_EXTENSIONS
#ifdef VK_ENABLE_BETA_EXTENSIONS

Expand Down
2 changes: 2 additions & 0 deletions layers/vulkan/generated/feature_requirements_helper.h
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,8 @@ enum class Feature {
cooperativeMatrixTensorAddressing,
// VkPhysicalDeviceCooperativeMatrix2FeaturesNV
cooperativeMatrixWorkgroupScope,
// VkPhysicalDeviceCooperativeMatrixConversionFeaturesQCOM
cooperativeMatrixConversion,
// VkPhysicalDeviceCooperativeMatrixFeaturesKHR, VkPhysicalDeviceCooperativeMatrixFeaturesNV
cooperativeMatrix,
// VkPhysicalDeviceCooperativeMatrixFeaturesKHR, VkPhysicalDeviceCooperativeMatrixFeaturesNV
Expand Down
Loading