From: Chris Forbes Date: Thu, 16 May 2019 00:18:47 +0000 (-0700) Subject: Check for required features in memory model tests X-Git-Tag: upstream/1.3.5~2002^2~9^2~8 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=164c181785f92899c8efdeba58b77c064a721fb1;p=platform%2Fupstream%2FVK-GL-CTS.git Check for required features in memory model tests All of these tests expect to be able to write to storage buffers; check for the vertexPipelineStoresAndAtomics or fragmentStoresAndAtomics features as appropriate. VK-GL-CTS Issue: 1777 Components: Vulkan Affects: dEQP-VK.memory_model.* Change-Id: I51adeda82ba7af22368c239a6abfc481479700f1 --- diff --git a/external/vulkancts/modules/vulkan/memory_model/vktMemoryModelMessagePassing.cpp b/external/vulkancts/modules/vulkan/memory_model/vktMemoryModelMessagePassing.cpp index ecef086..093088d 100644 --- a/external/vulkancts/modules/vulkan/memory_model/vktMemoryModelMessagePassing.cpp +++ b/external/vulkancts/modules/vulkan/memory_model/vktMemoryModelMessagePassing.cpp @@ -223,6 +223,20 @@ void MemoryModelTestCase::checkSupport(Context& context) const TCU_THROW(NotSupportedError, "64-bit integer shared atomics not supported"); } } + if (m_data.stage == STAGE_VERTEX) + { + if (!context.getDeviceFeatures().vertexPipelineStoresAndAtomics) + { + TCU_THROW(NotSupportedError, "vertexPipelineStoresAndAtomics not supported"); + } + } + if (m_data.stage == STAGE_FRAGMENT) + { + if (!context.getDeviceFeatures().fragmentStoresAndAtomics) + { + TCU_THROW(NotSupportedError, "fragmentStoresAndAtomics not supported"); + } + } }