dEQP-VK.geometry: use proper layout for sampling the image
authorSlawomir Cygan <slawomir.cygan@intel.com>
Wed, 30 Aug 2017 13:36:27 +0000 (15:36 +0200)
committerSlawomir Cygan <slawomir.cygan@intel.com>
Wed, 30 Aug 2017 13:40:54 +0000 (15:40 +0200)
While 'GENERAL' layout is acceptable layout for sampling image, the barrier in
geometry\vktGeometryBasicGeometryShaderTests.cpp:235
transitions the image to `SHADER_READ_ONLY_OPTIMAL` layout.

Both layout must much, otherwise the behavior is undefined.

Affects:
dEQP-VK.geometry.basic.output_vary_by_texture_instancing
dEQP-VK.geometry.basic.output_vary_by_texture

Components: Vulkan

VK-GL-CTS issue: 648

Change-Id: I2b947a150173f0a060cfbf851d117ef91097c1d8

external/vulkancts/modules/vulkan/geometry/vktGeometryBasicGeometryShaderTests.cpp

index afbb786..4508bb9 100644 (file)
@@ -490,7 +490,7 @@ void VaryingOutputCountTestInstance::bindDescriptorSets (const DeviceInterface&
                                                                                                                        },                                                                                      // VkImageSubresourceRange      subresourceRange;
                                                                                                                };
                m_imageView                                                                             = createImageView(vk, device, &viewParams);
-               const VkDescriptorImageInfo descriptorImageInfo = makeDescriptorImageInfo (*m_sampler, *m_imageView, VK_IMAGE_LAYOUT_GENERAL);
+               const VkDescriptorImageInfo descriptorImageInfo = makeDescriptorImageInfo (*m_sampler, *m_imageView, VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL);
                DescriptorSetUpdateBuilder()
                        .writeSingle(*m_descriptorSet, DescriptorSetUpdateBuilder::Location::binding(0u), VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, &descriptorImageInfo)
                        .update(vk, device);