Fix validation problems with renderpass tests
authorRicardo Garcia <rgarcia@igalia.com>
Mon, 13 Apr 2020 10:17:42 +0000 (12:17 +0200)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Mon, 20 Apr 2020 07:57:05 +0000 (03:57 -0400)
commit697db54e70a2a52d954eee6345c9bc6ea5448b25
treeb1696802088f507aa50b92680cb62cfdab6ded8e
parentf78d2849cb39eadf3149710a15f90c787c8af14d
Fix validation problems with renderpass tests

This commit fixes several problems found while running the set of
renderpass tests with an up-to-date version of the validation layers.

* Stencil aspects of some images were not being properly transitioned to
  the expected layout used later in some tests.

* Fixed reported interface mismatch between vertex and geometry shaders.

* Invalid flush size for the vertex buffer in some tests, caused by not
  properly honoring nonCoherentAtomSize.

* In the same case as above, the allocation offset was being rounded up
  to the nearest multiple of nonCoherentAtomSize instead of being
  rounded down, which means some vertices could be left unflushed.

In addition, de::roundUp and de::roundDown are introduced by the commit
as they are somewhat frequent operations in some tests, but only updates
the affected renderpass tests to use them.

Affected tests:
dEQP-VK.renderpass.*

Components: Framework, Vulkan
VK-GL-CTS issue: 2307

Change-Id: Ic78b2fe4707c4ddb0ade91d85e124190e94a1ed2
external/vulkancts/modules/vulkan/renderpass/vktRenderPassSubpassDependencyTests.cpp
external/vulkancts/modules/vulkan/renderpass/vktRenderPassTests.cpp
framework/delibs/decpp/deDefs.hpp