Skip to content

Commit

Permalink
build: Update to header 1.3.276
Browse files Browse the repository at this point in the history
- Update known-good
- Exclude FloatControls2 and QuadControlKHR from spirv_validation_helper
  until SPIRV-Tools is updated
- Entrypoint and constant promotion from VK_EXT_line_rasterization to
  KHR
- Re-number VUID-03649 VUID-09547
- Copyright date updates
- Generate source
  • Loading branch information
mikes-lunarg committed Jan 26, 2024
1 parent 6ebabb7 commit 284b920
Show file tree
Hide file tree
Showing 67 changed files with 3,337 additions and 1,695 deletions.
2 changes: 1 addition & 1 deletion layers/VkLayer_khronos_validation.json.in
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"name": "VK_LAYER_KHRONOS_validation",
"type": "GLOBAL",
"library_path": "@JSON_LIBRARY_PATH@",
"api_version": "1.3.275",
"api_version": "1.3.276",
"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 Valiation Layer can be enabled to assist development by enabling developers to verify their applications correctly use the Vulkan API.",
Expand Down
6 changes: 3 additions & 3 deletions layers/core_checks/cc_cmd_buffer_dynamic.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -198,9 +198,9 @@ bool CoreChecks::ValidateGraphicsDynamicStateSetStatus(const LastBound& last_bou
pipeline.topology_at_rasterizer == VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY) {
skip |= ValidateDynamicStateIsSet(state_status_cb, CB_DYNAMIC_STATE_LINE_WIDTH, objlist, loc,
vuid.dynamic_line_width_07833);
const auto *line_state = vku::FindStructInPNextChain<VkPipelineRasterizationLineStateCreateInfoEXT>(rp_state);
const auto *line_state = vku::FindStructInPNextChain<VkPipelineRasterizationLineStateCreateInfoKHR>(rp_state);
if (line_state && line_state->stippledLineEnable) {
skip |= ValidateDynamicStateIsSet(state_status_cb, CB_DYNAMIC_STATE_LINE_STIPPLE_EXT, objlist, loc,
skip |= ValidateDynamicStateIsSet(state_status_cb, CB_DYNAMIC_STATE_LINE_STIPPLE_KHR, objlist, loc,
vuid.dynamic_line_stipple_ext_07849);
}
}
Expand Down Expand Up @@ -1233,7 +1233,7 @@ bool CoreChecks::ValidateDrawDynamicStateShaderObject(const LastBound& last_boun
}
if (cb_state.dynamic_state_status.cb[CB_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT] &&
cb_state.dynamic_state_value.stippled_line_enable) {
skip |= ValidateDynamicStateIsSet(cb_state.dynamic_state_status.cb, CB_DYNAMIC_STATE_LINE_STIPPLE_EXT, objlist, loc,
skip |= ValidateDynamicStateIsSet(cb_state.dynamic_state_status.cb, CB_DYNAMIC_STATE_LINE_STIPPLE_KHR, objlist, loc,
vuid.set_line_stipple_08672);
}
}
Expand Down
2 changes: 1 addition & 1 deletion layers/core_checks/cc_pipeline_graphics.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3005,7 +3005,7 @@ bool CoreChecks::ValidatePipelineDrawtimeState(const LastBound &last_bound_state
const bool dynamic_line_stipple_enable = pipeline->IsDynamic(VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT);
if (dynamic_line_stipple_enable || dynamic_line_raster_mode) {
const auto raster_line_state =
vku::FindStructInPNextChain<VkPipelineRasterizationLineStateCreateInfoEXT>(raster_state->pNext);
vku::FindStructInPNextChain<VkPipelineRasterizationLineStateCreateInfoKHR>(raster_state->pNext);

const VkLineRasterizationModeEXT line_rasterization_mode =
(dynamic_line_raster_mode) ? cb_state.dynamic_state_value.line_rasterization_mode
Expand Down
2 changes: 1 addition & 1 deletion layers/core_checks/cc_ray_tracing.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1436,7 +1436,7 @@ bool CoreChecks::PreCallValidateCmdBuildAccelerationStructuresIndirectKHR(VkComm
bool skip = false;
skip |= ValidateCmd(*cb_state, error_obj.location);
if (!cb_state->unprotected) {
skip |= LogError("VUID-vkCmdBuildAccelerationStructuresIndirectKHR-commandBuffer-03649", commandBuffer, error_obj.location,
skip |= LogError("VUID-vkCmdBuildAccelerationStructuresIndirectKHR-commandBuffer-09547", commandBuffer, error_obj.location,
"called in a protected command buffer.");
}
for (uint32_t i = 0; i < infoCount; ++i) {
Expand Down
2 changes: 1 addition & 1 deletion layers/state_tracker/state_tracker.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2565,7 +2565,7 @@ void ValidationStateTracker::PostCallRecordCmdSetLineWidth(VkCommandBuffer comma
void ValidationStateTracker::PostCallRecordCmdSetLineStippleEXT(VkCommandBuffer commandBuffer, uint32_t lineStippleFactor,
uint16_t lineStipplePattern, const RecordObject &record_obj) {
auto cb_state = GetWrite<vvl::CommandBuffer>(commandBuffer);
cb_state->RecordStateCmd(record_obj.location.function, CB_DYNAMIC_STATE_LINE_STIPPLE_EXT);
cb_state->RecordStateCmd(record_obj.location.function, CB_DYNAMIC_STATE_LINE_STIPPLE_KHR);
}

void ValidationStateTracker::PostCallRecordCmdSetDepthBias(VkCommandBuffer commandBuffer, float depthBiasConstantFactor,
Expand Down
10 changes: 5 additions & 5 deletions layers/stateless/sl_cmd_buffer_dynamic.cpp
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* Copyright (c) 2015-2023 The Khronos Group Inc.
* Copyright (c) 2015-2023 Valve Corporation
* Copyright (c) 2015-2023 LunarG, Inc.
* Copyright (C) 2015-2023 Google Inc.
/* Copyright (c) 2015-2024 The Khronos Group Inc.
* Copyright (c) 2015-2024 Valve Corporation
* Copyright (c) 2015-2024 LunarG, Inc.
* Copyright (C) 2015-2024 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -570,7 +570,7 @@ bool StatelessValidation::manual_PreCallValidateCmdSetLineWidth(VkCommandBuffer
return skip;
}

bool StatelessValidation::manual_PreCallValidateCmdSetLineStippleEXT(VkCommandBuffer commandBuffer, uint32_t lineStippleFactor,
bool StatelessValidation::manual_PreCallValidateCmdSetLineStippleKHR(VkCommandBuffer commandBuffer, uint32_t lineStippleFactor,
uint16_t lineStipplePattern,
const ErrorObject &error_obj) const {
bool skip = false;
Expand Down
28 changes: 14 additions & 14 deletions layers/stateless/sl_pipeline.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1177,7 +1177,7 @@ bool StatelessValidation::manual_PreCallValidateCreateGraphicsPipelines(
if (line_state->stippledLineEnable && !dynamic_line_stipple_enable) {
if (line_state->lineStippleFactor < 1 || line_state->lineStippleFactor > 256) {
skip |= LogError("VUID-VkGraphicsPipelineCreateInfo-stippledLineEnable-02767", device,
rasterization_loc.pNext(Struct::VkPipelineRasterizationLineStateCreateInfoEXT,
rasterization_loc.pNext(Struct::VkPipelineRasterizationLineStateCreateInfoKHR,
Field::lineStippleFactor),
"is %" PRIu32 ".", line_state->lineStippleFactor);
}
Expand All @@ -1189,26 +1189,26 @@ bool StatelessValidation::manual_PreCallValidateCreateGraphicsPipelines(
line_state->lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT)) {
if (create_info.pMultisampleState->alphaToCoverageEnable) {
skip |= LogError("VUID-VkGraphicsPipelineCreateInfo-lineRasterizationMode-02766", device,
rasterization_loc.pNext(Struct::VkPipelineRasterizationLineStateCreateInfoEXT,
rasterization_loc.pNext(Struct::VkPipelineRasterizationLineStateCreateInfoKHR,
Field::lineStippleFactor),
"is %s, but pCreateInfos[%" PRIu32
"].pMultisampleState->alphaToCoverageEnable == VK_TRUE.",
string_VkLineRasterizationModeEXT(line_state->lineRasterizationMode), i);
string_VkLineRasterizationModeKHR(line_state->lineRasterizationMode), i);
}
if (create_info.pMultisampleState->alphaToOneEnable) {
skip |= LogError("VUID-VkGraphicsPipelineCreateInfo-lineRasterizationMode-02766", device,
rasterization_loc.pNext(Struct::VkPipelineRasterizationLineStateCreateInfoEXT,
rasterization_loc.pNext(Struct::VkPipelineRasterizationLineStateCreateInfoKHR,
Field::lineStippleFactor),
"is %s, but pCreateInfos[%" PRIu32 "].pMultisampleState->alphaToOneEnable == VK_TRUE.",
string_VkLineRasterizationModeEXT(line_state->lineRasterizationMode), i);
string_VkLineRasterizationModeKHR(line_state->lineRasterizationMode), i);
}
if (create_info.pMultisampleState->sampleShadingEnable) {
skip |=
LogError("VUID-VkGraphicsPipelineCreateInfo-lineRasterizationMode-02766", device,
rasterization_loc.pNext(Struct::VkPipelineRasterizationLineStateCreateInfoEXT,
rasterization_loc.pNext(Struct::VkPipelineRasterizationLineStateCreateInfoKHR,
Field::lineStippleFactor),
"is %s, but pCreateInfos[%" PRIu32 "].pMultisampleState->sampleShadingEnable == VK_TRUE.",
string_VkLineRasterizationModeEXT(line_state->lineRasterizationMode), i);
string_VkLineRasterizationModeKHR(line_state->lineRasterizationMode), i);
}
}

Expand All @@ -1218,22 +1218,22 @@ bool StatelessValidation::manual_PreCallValidateCreateGraphicsPipelines(
(!line_features || !line_features->rectangularLines)) {
skip |= LogError(
"VUID-VkPipelineRasterizationLineStateCreateInfoEXT-lineRasterizationMode-02768", device,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesEXT,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesKHR,
Field::lineRasterizationMode),
"is VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT but the rectangularLines feature was not enabled.");
}
if (line_state->lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT &&
(!line_features || !line_features->bresenhamLines)) {
skip |=
LogError("VUID-VkPipelineRasterizationLineStateCreateInfoEXT-lineRasterizationMode-02769", device,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesEXT,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesKHR,
Field::lineRasterizationMode),
"is VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT but the bresenhamLines feature was not enabled.");
}
if (line_state->lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT &&
(!line_features || !line_features->smoothLines)) {
skip |= LogError("VUID-VkPipelineRasterizationLineStateCreateInfoEXT-lineRasterizationMode-02770", device,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesEXT,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesKHR,
Field::lineRasterizationMode),
"is VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT but the smoothLines feature was not "
"enabled.");
Expand All @@ -1242,31 +1242,31 @@ bool StatelessValidation::manual_PreCallValidateCreateGraphicsPipelines(
if (line_state->lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT &&
(!line_features || !line_features->stippledRectangularLines)) {
skip |= LogError("VUID-VkPipelineRasterizationLineStateCreateInfoEXT-stippledLineEnable-02771", device,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesEXT,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesKHR,
Field::lineRasterizationMode),
"is VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT and stippledLineEnable was VK_TRUE, "
"but the stippledRectangularLines feature was not enabled.");
}
if (line_state->lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT &&
(!line_features || !line_features->stippledBresenhamLines)) {
skip |= LogError("VUID-VkPipelineRasterizationLineStateCreateInfoEXT-stippledLineEnable-02772", device,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesEXT,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesKHR,
Field::lineRasterizationMode),
"is VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT and stippledLineEnable was VK_TRUE, but "
"the stippledBresenhamLines feature was not enabled.");
}
if (line_state->lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT &&
(!line_features || !line_features->stippledSmoothLines)) {
skip |= LogError("VUID-VkPipelineRasterizationLineStateCreateInfoEXT-stippledLineEnable-02773", device,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesEXT,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesKHR,
Field::lineRasterizationMode),
"is VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT and stippledLineEnable was "
"VK_TRUE, but the stippledSmoothLines feature was not enabled.");
}
if (line_state->lineRasterizationMode == VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT &&
(!line_features || !line_features->stippledRectangularLines || !device_limits.strictLines)) {
skip |= LogError("VUID-VkPipelineRasterizationLineStateCreateInfoEXT-stippledLineEnable-02774", device,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesEXT,
rasterization_loc.pNext(Struct::VkPhysicalDeviceLineRasterizationFeaturesKHR,
Field::lineRasterizationMode),
"is VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT and stippledLineEnable was VK_TRUE, but "
"the stippledRectangularLines feature was not enabled.");
Expand Down
2 changes: 1 addition & 1 deletion layers/stateless/stateless_validation.h
Original file line number Diff line number Diff line change
Expand Up @@ -801,7 +801,7 @@ class StatelessValidation : public ValidationObject {
const VkAllocationCallbacks *pAllocator, VkFramebuffer *pFramebuffer,
const ErrorObject &error_obj) const;

bool manual_PreCallValidateCmdSetLineStippleEXT(VkCommandBuffer commandBuffer, uint32_t lineStippleFactor,
bool manual_PreCallValidateCmdSetLineStippleKHR(VkCommandBuffer commandBuffer, uint32_t lineStippleFactor,
uint16_t lineStipplePattern, const ErrorObject &error_obj) const;

bool manual_PreCallValidateCmdBindIndexBuffer(VkCommandBuffer commandBuffer, VkBuffer buffer, VkDeviceSize offset,
Expand Down
6 changes: 3 additions & 3 deletions layers/vulkan/generated/best_practices.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@

/***************************************************************************
*
* 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.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
8 changes: 5 additions & 3 deletions layers/vulkan/generated/best_practices.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@

/***************************************************************************
*
* 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.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -1107,6 +1107,7 @@ const vvl::unordered_map<std::string, DeprecationData> deprecated_extensions = {
{"VK_EXT_separate_stencil_usage", {kExtPromoted, "VK_VERSION_1_2"}},
{"VK_EXT_validation_features", {kExtDeprecated, "VK_EXT_layer_settings"}},
{"VK_EXT_host_query_reset", {kExtPromoted, "VK_VERSION_1_2"}},
{"VK_EXT_index_type_uint8", {kExtPromoted, "VK_KHR_index_type_uint8"}},
{"VK_EXT_extended_dynamic_state", {kExtPromoted, "VK_VERSION_1_3"}},
{"VK_EXT_shader_demote_to_helper_invocation", {kExtPromoted, "VK_VERSION_1_3"}},
{"VK_EXT_texel_buffer_alignment", {kExtPromoted, "VK_VERSION_1_3"}},
Expand All @@ -1119,6 +1120,7 @@ const vvl::unordered_map<std::string, DeprecationData> deprecated_extensions = {
{"VK_VALVE_mutable_descriptor_type", {kExtPromoted, "VK_EXT_mutable_descriptor_type"}},
{"VK_EXT_extended_dynamic_state2", {kExtPromoted, "VK_VERSION_1_3"}},
{"VK_EXT_global_priority_query", {kExtPromoted, "VK_KHR_global_priority"}},
{"VK_EXT_load_store_op_none", {kExtPromoted, "VK_KHR_load_store_op_none"}},
};
const vvl::unordered_map<std::string, std::string> special_use_extensions = {
{"VK_KHR_performance_query", "devtools"},
Expand Down
Loading

0 comments on commit 284b920

Please sign in to comment.