Add missing extension checks in extended dynamic state tests
authorziga-lunarg <ziga@lunarg.com>
Fri, 18 Nov 2022 15:35:25 +0000 (16:35 +0100)
committerMatthew Netsch <quic_mnetsch@quicinc.com>
Thu, 1 Dec 2022 23:41:46 +0000 (23:41 +0000)
A check for VK_EXT_index_type_uint8 is missing when index buffer is used
in extended dynamic state tests and a check for VK_EXT_mesh_shader when
mesh shaders are used

Components: Vulkan

VK-GL-CTS issue: 4117

Affected tests:
dEQP-VK.pipeline.*.extended_dynamic_state.*

Change-Id: I90d783f3f7e3c73aea9f5f89f59d5c3b093e3320

external/vulkancts/modules/vulkan/pipeline/vktPipelineExtendedDynamicStateTests.cpp

index 5c0463f..c13bd6d 100644 (file)
@@ -1521,6 +1521,15 @@ void ExtendedDynamicStateTest::checkSupport (Context& context) const
                        TCU_THROW(NotSupportedError, "Depth bias clamp not supported");
        }
 
+       if (m_testConfig.useMeshShaders || m_testConfig.bindUnusedMeshShadingPipeline)
+       {
+               context.requireDeviceFunctionality("VK_EXT_mesh_shader");
+       }
+       if (m_testConfig.needsIndexBuffer())
+       {
+               context.requireDeviceFunctionality("VK_EXT_index_type_uint8");
+       }
+
        // Check color image format support (depth/stencil will be chosen at runtime).
        const vk::VkFormatFeatureFlags  kColorFeatures  = (vk::VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT | vk::VK_FORMAT_FEATURE_TRANSFER_SRC_BIT);