From 164c181785f92899c8efdeba58b77c064a721fb1 Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Wed, 15 May 2019 17:18:47 -0700 Subject: [PATCH] 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 --- .../vulkan/memory_model/vktMemoryModelMessagePassing.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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"); + } + } } -- 2.7.4