From: Maciej Jesionowski Date: Thu, 5 Oct 2017 12:40:53 +0000 (+0200) Subject: Fix instance-rate vertex attribute verification X-Git-Tag: upstream/1.3.5~2565^2~6^2~93 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=63af86bda39902339b7d46a3b6a9b64b6a884d32;p=platform%2Fupstream%2FVK-GL-CTS.git Fix instance-rate vertex attribute verification There was a bug in the test where it expected instance-rate vertex attribute data at incorrect offsets in the input buffer. As a result these attributes were always treated as out of bounds. Affects: dEQP-VK.robustness.vertex_access.* VK-GL-CTS issue: 752 Components: Vulkan Change-Id: Ied900ab4174d4e8c25fd07c95e90d3c8228d5a26 --- diff --git a/external/vulkancts/modules/vulkan/robustness/vktRobustnessVertexAccessTests.cpp b/external/vulkancts/modules/vulkan/robustness/vktRobustnessVertexAccessTests.cpp index 0f15ba1..a0c33f4 100644 --- a/external/vulkancts/modules/vulkan/robustness/vktRobustnessVertexAccessTests.cpp +++ b/external/vulkancts/modules/vulkan/robustness/vktRobustnessVertexAccessTests.cpp @@ -129,7 +129,7 @@ public: deUint32 numInstanceValues, deUint32 numVertices, deUint32 numInstances, - const std::vector indices); + const std::vector& indices); virtual ~VertexAccessInstance (void) {} virtual tcu::TestStatus iterate (void); @@ -420,14 +420,14 @@ TestInstance* DrawIndexedAccessTest::createInstance (Context& context) const // VertexAccessInstance -VertexAccessInstance::VertexAccessInstance (Context& context, - Move device, - VkFormat inputFormat, - deUint32 numVertexValues, - deUint32 numInstanceValues, - deUint32 numVertices, - deUint32 numInstances, - const std::vector indices) +VertexAccessInstance::VertexAccessInstance (Context& context, + Move device, + VkFormat inputFormat, + deUint32 numVertexValues, + deUint32 numInstanceValues, + deUint32 numVertices, + deUint32 numInstances, + const std::vector& indices) : vkt::TestInstance (context) , m_device (device) @@ -792,7 +792,7 @@ bool VertexAccessInstance::verifyResult (void) numInBufferValues = m_numInstanceValues; inBufferPtr = m_instanceRateBufferAlloc->getHostPtr(); inBufferAllocSize = m_instanceRateBufferAllocSize; - inBufferValueIndex = (getIndex(elementIndex) * numChannels) + (valueNdx % numScalarsPerVertex) - (2 * numChannels); + inBufferValueIndex = (elementIndex * numChannels) + (valueNdx % numScalarsPerVertex) - (2 * numChannels); } else {