Add tests for VK_NV_mesh_shader
authorRicardo Garcia <rgarcia@igalia.com>
Thu, 28 Oct 2021 13:36:36 +0000 (15:36 +0200)
committerMatthew Netsch <quic_mnetsch@quicinc.com>
Fri, 5 Nov 2021 16:31:58 +0000 (16:31 +0000)
commit241241e28fe30f31a10e51aeb263c7c6b92b275c
tree775c3b5b7bc72779c4ed2fa86674a88a357aa78a
parentbbd6e1b5cd5880327d6119fc1e15e154e224e63d
Add tests for VK_NV_mesh_shader

Tests that verify multiple aspects of mesh shader pipelines work as
expected. This includes:

* Some basic smoke tests.
* API tests to check the new draw calls and different rules about them.
* Synchronization tests.
* Test a wide range of affected built-in variables.
* Miscellaneous tests:
  * Producing small and large amounts of different types of primitives.
  * Barriers.
  * Push constants.
  * Custom per-primitive attributes.
  * Complex structures in the task->mesh interface.

New tests:
dEQP-VK.mesh_shader.nv.*

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

Change-Id: I510296e4da326a2f0a3891d55a1116848d874c3f
47 files changed:
AndroidGen.mk
android/cts/master/vk-master-2021-03-01.txt
android/cts/master/vk-master-2021-03-01/mesh-shader.txt [new file with mode: 0644]
android/cts/master/vk-master.txt
android/cts/master/vk-master/mesh-shader.txt [new file with mode: 0644]
executor/tools/xeExtractShaderPrograms.cpp
executor/xeTestCaseResult.hpp
executor/xeTestLogWriter.cpp
executor/xeTestResultParser.cpp
external/openglcts/modules/common/glcSpirvUtils.cpp
external/vulkancts/framework/vulkan/vkDeviceExtensions.inl
external/vulkancts/framework/vulkan/vkObjUtil.cpp
external/vulkancts/framework/vulkan/vkObjUtil.hpp
external/vulkancts/framework/vulkan/vkPrograms.cpp
external/vulkancts/framework/vulkan/vkPrograms.hpp
external/vulkancts/framework/vulkan/vkShaderToSpirV.cpp
external/vulkancts/modules/vulkan/CMakeLists.txt
external/vulkancts/modules/vulkan/mesh_shader/CMakeLists.txt [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderApiTests.cpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderApiTests.hpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderBuiltinTests.cpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderBuiltinTests.hpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderMiscTests.cpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderMiscTests.hpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderPropertyTests.cpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderPropertyTests.hpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderSmokeTests.cpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderSmokeTests.hpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderSyncTests.cpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderSyncTests.hpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderTests.cpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/mesh_shader/vktMeshShaderTests.hpp [new file with mode: 0644]
external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsm64bitCompareTests.cpp
external/vulkancts/modules/vulkan/vktTestCase.cpp
external/vulkancts/modules/vulkan/vktTestPackage.cpp
external/vulkancts/mustpass/master/vk-default.txt
external/vulkancts/mustpass/master/vk-default/mesh-shader.txt [new file with mode: 0644]
external/vulkancts/scripts/src/extensions_data.txt
framework/common/tcuStringTemplate.cpp
framework/common/tcuStringTemplate.hpp
framework/opengl/gluShaderProgram.cpp
framework/opengl/gluShaderProgram.hpp
framework/opengl/gluShaderUtil.cpp
framework/opengl/gluShaderUtil.hpp
framework/qphelper/qpTestLog.c
framework/qphelper/qpTestLog.h
modules/gles31/functional/es31fProgramInterfaceDefinition.cpp