From 4dbc15461d925429b6545bd162c97a86ba3f8a73 Mon Sep 17 00:00:00 2001 From: James Fitzpatrick Date: Tue, 5 Oct 2021 10:12:46 +0100 Subject: [PATCH] Fix incorrect shader output format For test variants that write to a stencil buffer, the final attachment will be R8_UINT. For these tests ensure the fragment shader is outputing to this attachment as a uint. Affects: dEQP-VK.synchronization2.none_stage.* Components: Vulkan VK-GL-CTS issue: 3177 Change-Id: Ia7e185c8c8486c8b0e76e11038e0a5108770f21f --- .../vulkan/synchronization/vktSynchronizationNoneStageTests.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/external/vulkancts/modules/vulkan/synchronization/vktSynchronizationNoneStageTests.cpp b/external/vulkancts/modules/vulkan/synchronization/vktSynchronizationNoneStageTests.cpp index 49ce903..6c329c4 100644 --- a/external/vulkancts/modules/vulkan/synchronization/vktSynchronizationNoneStageTests.cpp +++ b/external/vulkancts/modules/vulkan/synchronization/vktSynchronizationNoneStageTests.cpp @@ -406,7 +406,7 @@ NoneStageTestInstance::NoneStageTestInstance(Context& context, const TestParams& m_referenceImageUsage |= VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT; // when we read stencil as color we need to use usampler2D - if (readAspect == VK_IMAGE_ASPECT_STENCIL_BIT || (readAspect == IMAGE_ASPECT_DEPTH_STENCIL && readStencilFromCombinedDepthStencil)) + if ((readAspect | writeAspect) == VK_IMAGE_ASPECT_STENCIL_BIT || (readAspect == IMAGE_ASPECT_DEPTH_STENCIL && readStencilFromCombinedDepthStencil)) m_readFragShaderName = "frag-stencil-to-color"; } } @@ -1232,7 +1232,7 @@ void NoneStageTestCase::initPrograms(SourceCollections& sourceCollections) const } if ((readLayout != VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL) && (readLayout != VK_IMAGE_LAYOUT_GENERAL) && - (readAspect == VK_IMAGE_ASPECT_STENCIL_BIT || (readAspect == IMAGE_ASPECT_DEPTH_STENCIL && m_testParams.readLayout == VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL))) + ((readAspect | writeAspect) == VK_IMAGE_ASPECT_STENCIL_BIT || (readAspect == IMAGE_ASPECT_DEPTH_STENCIL && m_testParams.readLayout == VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL))) { // use usampler2D and uvec4 for color sourceCollections.glslSources.add("frag-stencil-to-color") << glu::FragmentSource( -- 2.7.4