Fix image type in Uniform texel buffer tests
authorAlexander Galazin <alexander.galazin@arm.com>
Thu, 17 Jan 2019 11:56:27 +0000 (12:56 +0100)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Fri, 18 Jan 2019 08:45:16 +0000 (03:45 -0500)
Form the issue:
The Shader Resource and Storage Class Correspondence table
in the Descriptor Set Interface section of the Vulkan 1.1
specification clearly states that a descriptor resource
which is a uniform texel buffer should correspond to
an OpTypeImage(Dim=Buffer,Sampled=1) type.

The current tests in the binding_model category
generate OpTypeSampledImage for uniform texel buffer
resources instead, which I believe is incorrect.

This can be fixed by changing the GLSL declaration from
samplerBuffer to textureBuffer

Components: Vulkan

VK-GL-CTS public issue: 139

Affects:
dEQP-VK.binding_model.*uniform_texel_buffer.*

Change-Id: Ie1beb05cac69a6cf1220bbd47c2d7876eed7ff26

external/vulkancts/modules/vulkan/binding_model/vktBindingShaderAccessTests.cpp

index 11cb0cd..bac214e 100644 (file)
@@ -9085,7 +9085,7 @@ std::string TexelBufferDescriptorCase::genResourceDeclarations (vk::VkShaderStag
        DE_UNREF(stage);
 
        const bool                      isUniform               = isUniformDescriptorType(m_descriptorType);
-       const char* const       storageType             = (isUniform) ? ("samplerBuffer ") : ("readonly imageBuffer ");
+       const char* const       storageType             = (isUniform) ? ("textureBuffer ") : ("readonly imageBuffer ");
        const char* const       formatQualifier = (isUniform) ? ("") : (", rgba8");
        const deUint32          numSets                 = getDescriptorSetCount(m_descriptorSetCount);