Adds geometry shader check for test
authorMatthew Netsch <quic_mnetsch@quicinc.com>
Wed, 28 Aug 2019 16:31:19 +0000 (12:31 -0400)
committerMatthew Netsch <quic_mnetsch@quicinc.com>
Tue, 5 May 2020 14:19:00 +0000 (10:19 -0400)
Components: Vulkan
VK-GL-CTS Issue: 1900

Affects:
dEQP-VK.query_pool.statistics_query.input_assembly*.primary.*adjacency

Change-Id: I6aeb72143231d59711cb1d6ea98bc2cc0264bc84
(cherry picked from commit c4416209513122ba8f21ca1d9c016a07d65bb7ba)

external/vulkancts/modules/vulkan/query_pool/vktQueryPoolStatisticsTests.cpp

index 578865f..0fa8a2e 100644 (file)
@@ -884,6 +884,19 @@ void VertexShaderTestInstance::createPipeline (void)
        const DeviceInterface&  vk              = m_context.getDeviceInterface();
        const VkDevice                  device  = m_context.getDevice();
 
+       switch (m_parametersGraphic.primitiveTopology)
+       {
+               case VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY:
+               case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY:
+               case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY:
+               case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY:
+                       if (!m_context.getDeviceFeatures().geometryShader)
+                               throw tcu::NotSupportedError("Geometry shader are not supported");
+                       break;
+               default:
+                       break;
+       }
+
        // Pipeline
        Unique<VkShaderModule> vs(createShaderModule(vk, device, m_context.getBinaryCollection().get("vertex"), 0));
        Unique<VkShaderModule> fs(createShaderModule(vk, device, m_context.getBinaryCollection().get("fragment"), 0));