Check shaderInt64 feature support in memory tests
authorLisa Wu <lisa.wu@arm.com>
Wed, 20 Feb 2019 13:58:11 +0000 (14:58 +0100)
committerLisa Wu <lisa.wu@arm.com>
Thu, 21 Feb 2019 14:34:24 +0000 (15:34 +0100)
Not all vulkan implementations support int64 data type in shaders,
dEQP-VK.memory_model.* tests should check support before using "int64"
in the shader.

Affects: dEQP-VK.memory_model.*.u64.*

Components: Vulkan

VK-GL-CTS issue: 1621

Change-Id: Idefe662a7327708898b01777f14f6ca9637a35f3

external/vulkancts/modules/vulkan/memory_model/vktMemoryModelMessagePassing.cpp

index fcae572c0d17a41382d81c32b3484d06a87c7096..f88cc74d76e2089c56bfaae7aafb5cc0f867f05d 100644 (file)
@@ -207,6 +207,10 @@ void MemoryModelTestCase::checkSupport(Context& context) const
        }
        if (m_data.dataType == DATA_TYPE_UINT64)
        {
+               if (!context.getDeviceFeatures().shaderInt64)
+               {
+                       TCU_THROW(NotSupportedError, "64-bit integer in shaders not supported");
+               }
                if (!context.getShaderAtomicInt64Features().shaderBufferInt64Atomics &&
                        m_data.guardSC == SC_BUFFER)
                {