Pawel Ksiezopolski [Fri, 19 Nov 2021 16:47:12 +0000 (17:47 +0100)]
Final modifications and corrections for Vulkan SC
Updated Vulkan SC specification version to 1.0.7.
Updated documentation in external/vulkancts/README.md
Components:
Framework VulkanSC
Affects tests:
dEQP-VKSC.*
Change-Id: I7a71c41be887122f0ee1dbdf7210c1d93b58032f
Pawel Ksiezopolski [Thu, 9 Sep 2021 15:13:46 +0000 (17:13 +0200)]
Implement reference offline pipeline compiler
Offline pipeliner compiler is a reference implementation that uses
normal Vulkan API functions to create pipeline cache.
Components:
Framework VulkanSC
Affects tests:
dEQP-VKSC.*
Change-Id: I6fc3cd78edbecc27250cca9d4f93260cdbd0377b
Pawel Ksiezopolski [Fri, 5 Nov 2021 21:55:53 +0000 (22:55 +0100)]
Merge branch 'master' into 'vulkan-sc-cts-dev'
Change-Id: I98db637e40b3caf8a590c35b38183222f6efcffb
Ricardo Garcia [Wed, 20 Oct 2021 07:55:51 +0000 (09:55 +0200)]
Add compute test with zero dispatch size
Add a few tests that check vkCmdDispatch works properly even if one of
the sizes is zero.
New tests:
dEQP-VK.compute.basic.empty_workgroup_*
Components: Vulkan
VK-GL-CTS issue: 3183
Change-Id: I689469e3d0bd87a3fd92616e5ef482009e3461dd
Ricardo Garcia [Tue, 26 Oct 2021 11:30:52 +0000 (13:30 +0200)]
Test contradictory parameters on swapchain creation
This commit adds new tests that check the implementation properly
ignores queueFamilyIndexCount and pQueueFamilyIndices on swapchain
creation when imageSharingMode is set to VK_SHARING_MODE_EXCLUSIVE, by
providing a null pointer in pQueueFamilyIndices and a nonzero
queueFamilyIndexCount.
In addition, swapchain creation tests using VK_SHARING_MODE_EXCLUSIVE
will no longer pass 1 in queueFamilyIndexCount and a list of
surface-compatible queues in pQueueFamilyIndices, setting
queueFamilyIndexCount to 0 and passing a null pointer instead.
Finally, the commit adds de::arrayLength as a more modern and constexpr
way of obtaining the size of statically-sized arrays, similar to
DE_LENGTH_OF_ARRAY, which can be used with static_assert.
New tests:
dEQP-VK.*exclusive_nonzero_queues
Affected tests:
dEQP-VK.*.swapchain.create.*
Components: Framework, Vulkan
VK-GL-CTS issue: 3244
Change-Id: I631aba22ac18d1fe6a2fcc8bf41890b2e8a2cc91
Paul Thomson [Tue, 28 Sep 2021 09:36:00 +0000 (10:36 +0100)]
Revert "Exclude cov-function-with-nested-loops-called-from-nested-loops"
This reverts commit
b0c3e7ba7d99a3e9e2052a498569cea0721dfb09.
Components: Vulkan
Affects:
dEQP-VK.graphicsfuzz.cov-function-with-nested-loops-called-from-nested-loops
VK-GL-CTS Issue: 3171
Change-Id: I590db29c6d57b68bd76478140fef798ea6127f91
Juha Heiskanen [Tue, 26 Oct 2021 05:09:27 +0000 (08:09 +0300)]
Add buffer feature check for depth/stencil formats
Tests that check the drivers are not exposing undesired format
features for depth/stencil formats.
Components: Vulkan
VK-GL-CTS Issue: 3155
New tests: dEQP-VK.api.buffer.invalid_buffer_features.*
Change-Id: I7cc72f19ff58899e087ee0365780a5a0f50b3a47
Matthew Netsch [Fri, 29 Oct 2021 17:57:43 +0000 (13:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master
Change-Id: I1fcf5038213aacef0a7fe7c1d3e4cc5e04e80e64
Piotr Byszewski [Fri, 22 Oct 2021 11:42:25 +0000 (13:42 +0200)]
Fix memory requirements tests for sparse images
When memory requirements tests are executed for sparse images
we need to check sparse image format properties first.
VK-GL-CTS issue: 3201
Components: Vulkan
Affects:
dEQP-VK.memory.requirements.*.image.sparse*
Change-Id: I058d6dd6c4eeabce89c3f6835fbc16e4386712d5
michal_jakubek [Mon, 25 Oct 2021 07:39:15 +0000 (09:39 +0200)]
Fix image requirements according to its usage
VK-GL-CTS issue: 3090
Components: Vulkan
Affects:
dEQP-VK.sparse_resources.shader_intrinsics.*
Change-Id: If6c8e55be75fd3a9a170c7d0d413dc658d40adfa
Graeme Leese [Fri, 22 Oct 2021 10:19:48 +0000 (11:19 +0100)]
Initialise new member of ImageTestParams struct
This doesn't appear to be used in the tests, but without this it
generates compiler warnings on some of our platforms.
Components: Vulkan
VK-GL-CTS issue: 3240
Affects: dEQP-VK.memory.requirements.*
Change-Id: I5c4dfd0443f0f318d45e89ae22d5103a1dae198e
Piers Daniell [Wed, 15 Sep 2021 13:41:49 +0000 (15:41 +0200)]
Ensure the vertex shader matches the vertex input definition
When doing the "reversed" variants of the extended dynamic
state tests, the vertex input attribute and binding information
was reversed, but the vertex shaders were not. The meant that
in some tests the vertex shader may try to fetch from unbound
or undefined vertex attributes or vertex attribute data.
This commit fixes the issue by swapping vertex shaders for the
affected variants.
Affects:
dEQP-VK.pipeline.extended_dynamic_state.*
Components: Vulkan
VK-GL-CTS issue: 3111
Change-Id: I7d9abbe7dab0b44127f6b194ee5da79755f7658c
Co-authored-by: Ricardo Garcia <rgarcia@igalia.com>
(cherry picked from commit
aebbea7b29507dfb24fb204697671ad7b4ac4fc1)
Matthew Netsch [Fri, 29 Oct 2021 15:48:02 +0000 (11:48 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: Ib53ac9424d4263b3114e46c532f28b55f522cf2c
Paul Thomson [Mon, 25 Oct 2021 18:41:00 +0000 (19:41 +0100)]
Update SPIRV-Headers
The SPIRV-Headers version for vulkan-cts-1.2.6 was ahead of 1.2.7. This
change brings SPIRV-Headers in 1.2.7 up to the same version.
Components: Vulkan
Change-Id: Ifff93c5251183d3a6ee3ef3f508e88274332116f
Matthew Netsch [Fri, 29 Oct 2021 14:41:15 +0000 (10:41 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I7535fbad6813c7a6dfec1324a2656329de792ebe
Mohankumar Nekkarakalaya [Tue, 12 Oct 2021 18:58:22 +0000 (11:58 -0700)]
Remove 64-bit int usage in dynamic_indexing test shaders
- "OpCapability Int64" is not a mandatory extension
- Replace with v2i32
Components: Vulkan
VK-GL-CTS Issue: 3205
Affected tests:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.dynamic_indexing.dynamic_indexing
dEQP-VK.ray_query.acceleration_structures.dynamic_indexing.dynamic_indexing
Change-Id: I04b7cf6309b42ef4572e5c79c8e9233aee2edec7
Matthew Netsch [Fri, 29 Oct 2021 13:52:23 +0000 (09:52 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I8a9f12e6adc0daf962a4f6f05d28216db4880ee8
Ricardo Garcia [Thu, 14 Oct 2021 11:27:46 +0000 (13:27 +0200)]
Check shaderInt64 in workgroup memory explicit layout alias tests
A few workgroup memory explicit layout alias tests were not checking
shaderInt64 while using 64-bit integers in shaders.
Affected tests:
dEQP-VK.compute.workgroup_memory_explicit_layout.alias.*u64*array*
dEQP-VK.compute.workgroup_memory_explicit_layout.alias.*array*u64*
Components: Vulkan
VK-GL-CTS issue: 3131
Change-Id: I1911018c471e9548603d5de987625163bb356eb9
Matthew Netsch [Thu, 28 Oct 2021 21:58:12 +0000 (17:58 -0400)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Change-Id: I3e4f47adf9a8446556351175e63b2cf3f1e8a399
Matthew Netsch [Thu, 28 Oct 2021 21:57:59 +0000 (17:57 -0400)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: Ibee0d474561af951a4ef33db864aaa4993ca38d5
Matthew Netsch [Thu, 28 Oct 2021 21:57:06 +0000 (17:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I54315f34095f396294bab85b0da4a1e3cf38aac8
Matthew Netsch [Thu, 28 Oct 2021 21:57:00 +0000 (17:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I2f2be91bd696c7de227f804202f9a8eb222cab03
Ricardo Garcia [Fri, 8 Oct 2021 07:50:00 +0000 (09:50 +0200)]
Fix VK_KHR_shader_clock feature checks
The shader clock tests were not checking if the implementation supported
64-bit integers for tests that required the feature and they were
checking supported features at test instance creation time instead of
the specific checkSupport method for test cases.
Affected tests:
dEQP-VK.glsl.shader_clock.*
Components: Vulkan
VK-GL-CTS issue: 3187
Change-Id: I0dc86a4fae619c0d27628d97f0ac11c5def5ff4f
Juha Heiskanen [Tue, 19 Oct 2021 11:38:09 +0000 (14:38 +0300)]
Fix dEQP-VK.tessellation.geometry_interaction.limits.output_required_max_geometry validation error
Adjust numSliceNodesComponentLimit in order to keep
m_numGeometryPrimitivesPerInvocation within minimum limits defined in
the spec.
Components: Vulkan
VK-GL-CTS Issue: 3180
Affects:
dEQP-VK.tessellation.geometry_interaction.limits.output_required_max_geometry
Change-Id: I72ca43bec27256cb75a11d75aab91b9b565be9ab
Jari Komppa [Tue, 5 Oct 2021 09:52:03 +0000 (12:52 +0300)]
Move log prints from test-ctor to test-inst-ctor
Some of the tesselation tests were printing values into the output log
from the test constructor, which meant that said prints end up in more
or less random place in the log. Moved those prints to the test instance
instead, so the information now resides within the test output.
The prints were also done in the amber-verify run mode.
Affects:
dEQP-VK.tessellation.geometry_interaction.scatter.*
dEQP-VK.tessellation.geometry_interaction.limits.*
Components: Vulkan
VK-GL-CTS issue: 3057
Change-Id: Ic5b2ce59369d1c20f25b8dc1c6cb594baac74f8f
Iván Briano [Mon, 11 Oct 2021 19:45:24 +0000 (12:45 -0700)]
x11_egl: only append library path if it's not empty
Pkg-config will strip out any -L if they match the default search
directory, so we ended up with a -L and no arguments to it, that would
consume whatever came next.
Components: EGL
VK-GL-CTS issue: 2726
Change-Id: Iba0f7d8e0a4ab66e5fd369f60e4d04ac5420df65
Pawel Ksiezopolski [Mon, 26 Apr 2021 09:35:52 +0000 (11:35 +0200)]
Add tests verifying Vulkan SC API
New tests verifying Vulkan SC API specifics,
VkDeviceObjectReservationCreateInfo struct,
VkPipelineIdentifierInfo struct, fault handling capabilities
and VK_KHR_object_refresh extension.
Components:
Framework Vulkan VulkanSC
Affects tests:
dEQP-VKSC.api.info.vulkan1p2_limits_validation.general
dEQP-VK.*
New tests:
dEQP-VKSC.sc.api.*
dEQP-VKSC.sc.device_object_reservation.*
dEQP-VKSC.sc.pipeline_identifier.*
dEQP-VKSC.sc.pipeline_cache.*
dEQP-VKSC.sc.fault_handling.*
dEQP-VKSC.sc.command_pool_memory_reservation.*
dEQP-VKSC.sc.object_refresh.*
Change-Id: Iafa03bfa91d0d17a0c0abb834c09a7cb148699e8
Ricardo Garcia [Fri, 15 Oct 2021 13:48:16 +0000 (15:48 +0200)]
Split multiple interpolation tests using the sample decoration
This commit separates the multiple interpolation tests in two groups,
one including the sample decoration in the set and another one excluding
it. The goal is to avoid requiring the sampleRateShading feature in all
tests, which is mandatory when using the sample decoration.
In addition, this commit makes sure the sampleRateShading feature is
required for those cases.
New tests:
dEQP-VK.draw.multiple_interpolation.*.no_sample_decoration.*
Affected tests:
dEQP-VK.draw.multiple_interpolation.*
Components: Vulkan
VK-GL-CTS issue: 3129
Change-Id: I8c190c70db9e7fef7505dc31bbf8b6626161f60e
Ari Suonpaa [Thu, 16 Sep 2021 10:58:44 +0000 (13:58 +0300)]
Allow EGL tests to use ES3 with EGL_KHR_create_context
Previously EGL tests that relied on ES3 required EGL 1.5. Now
these are also run when EGL_KHR_create_context is supported.
VK-GL-CTS Issue: 3122
Affects:
dEQP-EGL.functional.image.create.gles3*
Components: EGL
Change-Id: I05fe87a0d2e321310b28df9a998006867115e0f0
michal_jakubek [Tue, 12 Oct 2021 11:43:17 +0000 (13:43 +0200)]
Cover vkGetBufferMemoryRequirements*() routines tests
New tests:
dEQP-VK.api.buffer_memory_requirements.*
Components: Vulkan
VK-GL-CTS issue: 3163
Change-Id: I806d8a420e1e6d204061b3b740500736609263f8
Matthew Netsch [Fri, 22 Oct 2021 20:57:54 +0000 (16:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master
Change-Id: I2aaf2dbd77937a00f045727d428fc45437ca96df
Piotr Byszewski [Thu, 14 Oct 2021 18:29:36 +0000 (20:29 +0200)]
Fix multisample_with_fragment_shading_rate tests
Two tests in multisample group are added with helper
function addFunctionCaseWithPrograms. When those tests
were repeated for FSR then they were executed without
checking if required features are supported. This
change fixes that by reusing existing function
checkFragmentShadingRateRequirements (it was slightly
modified to work also with those two tests).
VK-GL-CTS issue: 3220
Components: Vulkan
Affects:
dEQP-VK.pipeline.multisample_with_fragment_shading_rate.*
Change-Id: I8dcbc09ac4a1d8d3c53eb95da591b916ded2f5b9
Neslisah [Thu, 12 Aug 2021 15:32:21 +0000 (11:32 -0400)]
dEQP-VK.renderpass*.load_store_op_none.* tests depth-stencil format support check
In this test case, depth stencil format is set to VK_FORMAT_D24_UNORM_S8_UINT by default without checking if it is supported or not. If this format is not supported, then the test case crashes without even giving "Not Supported" result.
In this update I defined a set of depth stencil formats, and added a separate test case for each depth_stencil format. If the depth_stencil format is not supported, "Not Supported" is returned.
Affects: dEQP-VK.renderpass*.load_store_op_none.*
Components: Vulkan
VK-GL-CTS issue: 3049
Change-Id: Ifea5d0955a8325ecbed7f27296da4120e473d463
(cherry picked from commit
79c44fc79b7d17b8c70d2469e113c764011c51c6)
James Fitzpatrick [Wed, 6 Oct 2021 13:22:03 +0000 (14:22 +0100)]
Increase tolerance for matrix precision tests
On hardware with a RTZ rounding mode the tolerance required in these
tests was too low and valid implementations of the functions would
fail the tests.
Increase the tolerance allowed to allow RTZ hardware to pass these
tests.
Affects:
dEQP-VK.glsl.builtin.precision*.determinant.*
dEQP-VK.glsl.builtin.precision*.inverse.*
Components: Vulkan
VK-GL-CTS issue: 3182
Change-Id: I83845aec8faa01aec0820852219b6b8c4326da4e
(cherry picked from commit
0593bd63803c16159db7553d8ca5191fd42126cc)
James Fitzpatrick [Tue, 5 Oct 2021 09:12:46 +0000 (10:12 +0100)]
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
(cherry picked from commit
4dbc15461d925429b6545bd162c97a86ba3f8a73)
Iván Briano [Mon, 18 Oct 2021 20:32:00 +0000 (13:32 -0700)]
Slightly increase tolerance for fp64 determinant test
VK-GL-CTS issue: 3229
Components: Vulkan
Affects:
dEQP-VK.glsl.builtin.precision_double.determinant.compute.mat3
Change-Id: I2e4d239a33e4c82e328a3df90e7a6c38056db4d8
Matthew Netsch [Fri, 22 Oct 2021 19:54:00 +0000 (15:54 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: Ic672c22814f2196db26725b7b2794629bbe130b6
Samuel Iglesias Gonsálvez [Fri, 1 Oct 2021 06:18:08 +0000 (08:18 +0200)]
Update drivers ids
From last version of Vulkan-Docs.
Components: Framework
VK-GL-CTS issue: 3173
Change-Id: I39aeb4f16d3bf19291a5a266595b215681ef2c83
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Matthew Netsch [Fri, 22 Oct 2021 19:38:57 +0000 (15:38 -0400)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Change-Id: I11af39aa7fcbecb367a721b7fe3a39b67cbf8550
Graeme Leese [Wed, 7 Jul 2021 10:15:41 +0000 (11:15 +0100)]
Remove invalid reserved keywords tests
These identifiers are not listed as reserved in any spec that I can
find.
Components: OpenGLES
Removed Tests: dEQP-GLES3.functional.shaders.keywords.reserved_keywords.image*Shadow_*
Change-Id: I444d9a8a49d3dda7402faa50b79859aaef0ee690
(cherry picked from commit
99df4bc28a2e9f755467fd0c6a88702ee2428232)
Matthew Netsch [Fri, 22 Oct 2021 18:23:39 +0000 (14:23 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I6f96b469518264e53fdd142f445187f8eb091c6d
Barry Ko [Wed, 27 Feb 2019 12:53:04 +0000 (20:53 +0800)]
Relax get_frame_timestamps
To prevent power side effect from legacy platform. We tend to relax the
deqp criteria from 3 vsyncs to 4 vsyncs. And verify timestamp 6 frames
ago.
Cherry pick from AOSP.
Original commit:
https://android.googlesource.com/platform/external/deqp/+/
db1f80ba923b9e89177562203c21192f8e7340c3
https://android-review.googlesource.com/c/platform/external/deqp/+/918914
Submitted on behalf of a third-party: barry.ko@mediatek.com
Component: EGL
Affected tests:
dEQP-EGL.functional.get_frame_timestamps.*
BUG:
123203074
Change-Id: I214b410d2ab8f0d6d4b3f9d6752c1c1d756cc28f
Chris Forbes [Wed, 13 Feb 2019 22:59:20 +0000 (14:59 -0800)]
Make renderdoc build-time integration optional
In some environments (Android Q CTS), renderdoc headers will not be
available.
Cherry pick from AOSP.
Original commit:
https://android.googlesource.com/platform/external/deqp/+/
7e79367bd8fa1430c0ea161a36f62d7b8edc6803
Components: Vulkan, Framework
Bug: b/
123431604
Change-Id: I7d4e36074e4f89a81f55dde83a217920653ad173
Matthew Netsch [Fri, 22 Oct 2021 17:09:17 +0000 (13:09 -0400)]
Merge vk-gl-cts/opengl-cts-4.6.1 into vk-gl-cts/master
Change-Id: I5779863db87742a103772ea394a08dc7e50fcb83
Matthew Netsch [Fri, 22 Oct 2021 17:09:08 +0000 (13:09 -0400)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: Ice7060c4fcd3e60ccd8b0bb76d65bfb409c3120b
Matthew Netsch [Fri, 22 Oct 2021 17:07:14 +0000 (13:07 -0400)]
Merges vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I1cbb115f9efbb2df6de81b0b133723b15e367427
Matthew Netsch [Fri, 22 Oct 2021 17:01:32 +0000 (13:01 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I6873657c378b02b383da36905a31886806519459
Matthew Netsch [Fri, 22 Oct 2021 17:01:27 +0000 (13:01 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I67159d811b780fc975c41a18043c177bceba6da7
Tapani Pälli [Wed, 22 Sep 2021 12:05:48 +0000 (15:05 +0300)]
Use GL_FRAMEBUFFER instead of GL_[DRAW|READ]_FRAMEBUFFER with GLES2
Affects:
KHR-GLES2.texture_3d.copy_sub_image.negative
KHR-GLES2.texture_3d.copy_sub_image.rgba
Components: OpenGL
VK-GL-CTS issue: 3133
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: Ia32e16e6231b53c9f58e99d85e6178dca5b7f012
Mika Väinölä [Wed, 13 Oct 2021 07:51:57 +0000 (10:51 +0300)]
Fix zx_handle_t typedef
Change from signed to unsigned 32-bit integer to match zircon/types.h.
Components: Framework, Vulkan
VK-GL-CTS issue: 3214
Change-Id: Ic887e90adc1583cfcd1518e21831d330e0f89b17
Jason Ekstrand [Mon, 21 Jun 2021 20:35:36 +0000 (15:35 -0500)]
Fix tessellation SPIR-V tests use of Restrict
Their usage of Restrict violates the SPIR-V spec which requires that it
only got on variables, not types or struct members.
Affected tests:
dEQP-VK.tessellation.*
Components: Vulkan
VK-GL-CTS issue: 2975
Change-Id: Ifbde1b493bf56d1ee6454a4ab54e98bcd05f839b
Mohd Faisal [Wed, 26 Aug 2020 10:51:25 +0000 (11:51 +0100)]
Allowing spirv1.4 shaders compilation
Components: Vulkan
VK-GL-CTS Issue: 2560
Affects: dEQP-VK.spirv_assembly.instruction.spirv1p4.*
Change-Id: Icbfe3ad623da98968eee401d08df5ed6b3b2db1e
(cherry picked from commit
c96d524d079fdada26b3548effd1539174415be6)
Ricardo Garcia [Mon, 4 Oct 2021 09:55:31 +0000 (11:55 +0200)]
Add tcu::Nothing to improve tcu::Maybe usability
When using tcu::Maybe<T>, tcu::just and tcu::nothing can create these
objects. However, while tcu::just can deduce type T from its arguments,
tcu::nothing cannot as it has no arguments. The type needs to be written
explicitly.
To avoid having to do that and to ease using tcu::Maybe, this commit
creates a new type tcu::Nothing_T and a global constexpr tcu::Nothing
following the same rules as std::nullopt_t and std::nullopt from C++17,
which allow using tcu::Nothing to initialize a tcu::Maybe<T> without the
need to write type T.
No test result should be affected by these changes.
Components: Framework
VK-GL-CTS issue: 3126
Change-Id: I093bbe6f1b77018aedc6e602a2893a4e7d5859a8
Ricardo Garcia [Fri, 8 Oct 2021 16:27:25 +0000 (18:27 +0200)]
Add basic signaled fence tests
Add a couple of tests that verify creating signaled fences works and
they can be immediately waited on.
New tests:
dEQP-VK.synchronization.basic.fence.*signaled
Components: Vulkan
VK-GL-CTS issue: 3181
Change-Id: I235e6eed68fb9253db614592924f6061008cfa98
Piotr Byszewski [Tue, 3 Aug 2021 11:02:35 +0000 (13:02 +0200)]
Attachment rate tests
Adds tests where shading rate values are setup in various ways.
Adds a test where two different shading rate attachments
are used in two-subpass render pass.
VK-GL-CTS issue: 2397
Components: Vulkan
Affects:
dEQP-VK.fragment_shading_rate.attachment_rate.*
Change-Id: If6d37028ebef7ac3d3c31fab8076338e1e928de1
Matthew Netsch [Fri, 15 Oct 2021 22:35:19 +0000 (18:35 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master
Change-Id: I26f3ac1627ccd632426b7bd15461dfb2de9d2094
Ricardo Garcia [Wed, 6 Oct 2021 16:09:14 +0000 (18:09 +0200)]
Add custom border color swizzle tests
New set of tests to check component swizzling with different border
colors, including custom border colors.
Note the tests currently suppose swizzling is applied to custom border
colors following the operation order in the "Texel Input Operations"
section.
Note that testing of opaque black and custom border colors with
non-identity swizzles is skipped unless VK_EXT_border_color_swizzle is
supported which has defined behavior for these combinations.
New tests:
dEQP-VK.pipeline.sampler.border_swizzle.*
Affected tests:
dEQP-VK.info.device_mandatory_features
Components: Vulkan
VK-GL-CTS issue: 2714
Change-Id: I5259744bbfa65db0386e94decb633b582d2fb17f
Piotr Byszewski [Tue, 12 Oct 2021 12:46:41 +0000 (14:46 +0200)]
Fix depth_different_ranges tests
Two multiview tests use depth that is outside of <0;1> range
but don't check/enable VK_EXT_depth_range_unrestricted. This
change fixes that.
VK-GL-CTS issue: 3206
Components: Vulkan
Affects:
dEQP-VK.multiview.depth_different_ranges.3_6_12_9_6_12_9_3_6_12_9_3
dEQP-VK.multiview.renderpass2.depth_different_ranges.3_6_12_9_6_12_9_3_6_12_9_3
Change-Id: Iba472af84e23ea197281a1ab88d0ac6c74e845bf
Matthew Netsch [Fri, 15 Oct 2021 21:33:16 +0000 (17:33 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I5d3d073763a72c7f6ec0fca08d030ef64b4457a4
Samuel Iglesias Gonsálvez [Fri, 8 Oct 2021 06:38:23 +0000 (08:38 +0200)]
Add check for shaderImageGatherExtended
There were validation errors in the tests when running them
through devsim layer and vulkan 1.0 spec minimum profile:
"VUID-RuntimeSpirv-OpImage-06376(ERROR / SPEC): msgNum:
70978435 -
Validation Error: [ VUID-RuntimeSpirv-OpImage-06376 ] Object 0: handle
= 0x66d3840, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x43b0b83 |
vkCreateShaderModule(): Shader uses OpImageGather with offset (-8)
less than VkPhysicalDeviceLimits::minTexelGatherOffset (0). The Vulkan
spec states: If an OpImage*Gather operation has an image operand of
Offset, ConstOffset, or ConstOffsets the offset value must be greater
than or equal to minTexelGatherOffset"
Components: Vulkan
VK-GL-CTS issue: 3186
Affects:
dEQP-VK.glsl.texture_gather.offset.*
Change-Id: I1c58d751a86dbe7a1a285a32daae19955b5b4582
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Mohd Faisal [Wed, 13 Oct 2021 14:09:01 +0000 (15:09 +0100)]
Fix missing self-subpass dependency
Self-subpass dependency required for read-after-write operation, in test
cases where the attachment is written using load-op-load at the start
of subpass and then the values are read inside the fragment shader.
Affects:
dEQP-
VK.renderpass.suballocation.subpass_dependencies.separate_channels.*
dEQP-
VK.renderpass2.suballocation.subpass_dependencies.separate_channels.*
Components: Vulkan
VK-GL-CTS issue: 3216
Change-Id: I6c72b81dccfb7526ec4607b255ff4872b13c4d22
Samuel Iglesias Gonsálvez [Wed, 13 Oct 2021 08:59:26 +0000 (10:59 +0200)]
Fix workgroup_memory_explicit_layout tests SPIR-V validation errors
Components: Vulkan
VK-GL-CTS issue: 3195
Affects:
dEQP-VK.compute.workgroup_memory_explicit_layout.*
Change-Id: I2ac798965d9a3518bc45cfe52e43f34facf4ccf4
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Erik Faye-Lund [Wed, 11 Aug 2021 14:18:37 +0000 (16:18 +0200)]
Verify line-stipple both with and without carry-over
The Vulkan spec specifies that carrying over the fractional parts of a
line is optional. Let's test both with and without, so we accept either.
Components: Vulkan, Framework
Public Issue: 280
Affected Tests: dEQP-VK.rasterization.primitives.static_stipple.*
dEQP-VK.rasterization.primitives_multisample_4_bit.*
Change-Id: Iaae3397ebfa1db7fbccefd479bd98c1ad8471ff8
Matthew Netsch [Fri, 15 Oct 2021 20:24:58 +0000 (16:24 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I02d8c267d85372b375fcdcb1df69f2c6dc97796c
Joe M. Kniss [Fri, 16 Nov 2018 16:59:30 +0000 (08:59 -0800)]
Add memoryBarrier before buffer map verify
OpenGL ES 3.2 Specification Section 7.11.2:
Shader Memory Access Synchronization ...
"Explicit syncronization is required to ensure the effects of buffer and
texture data stores performed by shaders will be visible to subsequent
operations using the same objects..."
Many of the ES3.1 compute tests lack a memory barrier before mapping and
verifiying buffer contents. This can lead to flaky test failures when
the buffer has not been completely written to by the dispatchCompute
command. Specifically, chromeos and it's android arc++ has seen
consistent, yet flaky failures in es31fSynchronizationTests.inter_invocation.
It is unclear why this test should fail when similar tests, which also
lack explicit synchronization, do not.
Cherry pick from AOSP.
Original commit:
https://android.googlesource.com/platform/external/deqp/+/
30c710319864b9e952daaaaf098df20845c2f70d
https://android-review.googlesource.com/c/platform/external/deqp/+/854112
TEST=chromeos caroline-arcnext (skylake)
Affects: dEQP-GLES31.functional.synchronization.*
Components: AOSP
Google Bug: b/
85161472
Change-Id: I5093e7e206996e7c13c8c3615ee01ebbadc42f58
Signed-off-by: Joe M. Kniss <djmk@google.com>
Paul Thomson [Thu, 7 Oct 2021 17:37:55 +0000 (18:37 +0100)]
Update Android test lists and Android files
Update Android test lists and other files to match AOSP
android12-tests-dev. Some tests are excluded from Android test lists and
some are moved between different Android test lists, but the tests
themselves do not change.
Components: AOSP
Change-Id: I28fdab5eb0b3fa75604f525a34fe843091836e75
Paul Thomson [Thu, 7 Oct 2021 17:37:55 +0000 (18:37 +0100)]
Update Android test lists and Android files
Update Android test lists and other files to match AOSP
android12-tests-dev. Some tests are excluded from Android test lists and
some are moved between different Android test lists, but the tests
themselves do not change.
Components: AOSP
Change-Id: I28fdab5eb0b3fa75604f525a34fe843091836e75
James Darpinian [Tue, 18 Dec 2018 00:46:59 +0000 (16:46 -0800)]
EXT_multisampled_render_to_texture test
Detects a bug where ReadPixels fails on multisampled textures.
See http://crbug.com/890002
Cherry pick from AOSP.
Original commit:
https://android.googlesource.com/platform/external/deqp/+/
accf1be52e32153c757cd84864607ee9c47dfe9a
https://android-review.googlesource.com/c/platform/external/deqp/+/796566
Submitted on behalf of a third-party: jdarpinian@chromium.org
Components: OpenGL
New test:
dEQP-GLES2.functional.multisampled_render_to_texture.readpixels
Bug: chromium:890002
Change-Id: I6e5e5d1fa3aa15daee69271339962a0b3ffc1927
sriharsha [Wed, 29 May 2019 05:02:22 +0000 (10:32 +0530)]
Increase tolearance for dithering tests
For small dimension render targets, gradient tests
require more tolerance, as variance in adjacent pixels
will be more compared to bigger render targets.
Cherry pick from AOSP.
Original commit:
https://android.googlesource.com/platform/external/deqp/+/
8dc015fa12e41a380b81c1b8fcc63a04bf34311a
https://android-review.googlesource.com/c/platform/external/deqp/+/971506
Submitted on behalf of a third-party: quic_spvasu@quicinc.com
Components: OpenGL
Affected tests:
dEQP-GLES3.functional.dither.*
Bug:
132146940
Change-Id: Ie48e119d164acf5763aa7956c3ff91da20ff9f38
Pierre Couillaud [Wed, 31 Oct 2018 11:57:40 +0000 (04:57 -0700)]
Add watchdog touches to descriptor_pool test
On some low-end devices, this test would hit the dEQP watchdog. Add some
watchdog touches to avoid this.
Cherry pick.
Original commit:
123de98482b779ca242f9498701508b12e9a5f01
https://gerrit.khronos.org/c/vk-gl-cts/+/3197
Affected tests:
dEQP-VK.api.descriptor_pool.*
Google Bug: b/
116847904
Component: Vulkan
Signed-off-by: Pierre Couillaud <pierre@broadcom.com>
VK-GL-CTS Issue: 1464
Change-Id: I18181aa274ab1dc191b5f0acbb58b41465b5cdad
Ricardo Garcia [Wed, 13 Oct 2021 09:47:43 +0000 (11:47 +0200)]
Check fragment shader stores in frag shader side effect tests
Fragment shader side effect tests were using storage buffer store
operations in fragment shaders without checking support for the
fragmentStoresAndAtomics feature.
In addition, the tests were verifying the implementation supported the
color attachment and transfer features for the VK_FORMAT_R8G8B8A8_UNORM
format, but they are mandatory by the spec. The checks can be safely
removed.
Affected tests:
dEQP-VK.rasterization.frag_side_effects.*
Components: Vulkan
VK-GL-CTS issue: 3208
Change-Id: I5d28b18dd6aedbbfb1ea3ce4b40b3ba82737c27b
Ricardo Garcia [Wed, 13 Oct 2021 08:23:04 +0000 (10:23 +0200)]
Use the correct view type in no_position tests
Multilayer no_position tests were creating image views with multiple
layers and the VK_IMAGE_VIEW_TYPE_2D type. When the number of layers is
greater than one, the type should be VK_IMAGE_VIEW_TYPE_2D_ARRAY.
Affected tests:
dEQP-VK.pipeline.no_position.*
Components: Vulkan
VK-GL-CTS issue: 3200
Change-Id: I9d24062c4f1ac80f12ac5dd1fe0e454ffade2f32
Ricardo Garcia [Wed, 13 Oct 2021 08:57:20 +0000 (10:57 +0200)]
Check fragment shader stores in robustness tests
Some robustness tests were using fragment shader stores without checking
for the fragmentStoresAndAtomics feature.
Affected tests:
dEQP-VK.robustness.*.frag
Components: Vulkan
VK-GL-CTS issue: 3209
Change-Id: I8032bd19f7de4f2d87d642542c2b7aaec20965b8
Ricardo Garcia [Wed, 13 Oct 2021 08:54:44 +0000 (10:54 +0200)]
Check cube array support in robustness tests
Some robustness tests were using VK_IMAGE_VIEW_TYPE_CUBE_ARRAY image
views without checking support for the imageCubeArray feature.
Affected tests:
dEQP-VK.robustness.*cube_array*
Components: Vulkan
VK-GL-CTS issue: 3210
Change-Id: Iafd363a6423251413a1093e15ae94aa50850af32
Matthew Netsch [Fri, 15 Oct 2021 17:57:59 +0000 (13:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I64019cfcae5bcedae55f3e343bc94f51b62aa877
Matthew Netsch [Fri, 15 Oct 2021 17:57:51 +0000 (13:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I0abe7100c16a273d62463b916957255150d344d0
Matthew Netsch [Fri, 15 Oct 2021 17:57:39 +0000 (13:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Ib23f14c29d67945839ab3763968963d7dcc91464
Samuel Iglesias Gonsálvez [Fri, 8 Oct 2021 13:26:21 +0000 (15:26 +0200)]
Fix validation errors with unnormalized coordinates samplers
Components: Vulkan
VK-GL-CTS issue: 3190
Affects:
dEQP-VK.pipeline.sampler.*unnormalized*
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Change-Id: I1dde344fe39289b945a434eab7276dc58deab881
Graeme Leese [Thu, 7 Oct 2021 17:15:51 +0000 (18:15 +0100)]
Fix descriptor indexing test dependency
The UBO and SSBO non-uniform indexing tests use runtimeDescriptorArray,
so this needs to be included in the checkSupport condition.
Components: Vulkan
Affects: dEQP-VK.ubo.*
dEQP-VK.ssbo.*
Change-Id: I54edb2d06135a8d1d549a42ac97014dabc80c9dd
Samuel Iglesias Gonsálvez [Wed, 2 Jun 2021 14:41:30 +0000 (16:41 +0200)]
Check resource limits properly
The tests were not checking the resource limits per stage when
creating the shaders, which could create potential issues on
some drivers. Specially the random generated tests.
Affected tests:
dEQP-VK.ssbo.layout.*
Components: Vulkan
VK-GL-CTS issue: 2953
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Change-Id: I7509dce38b849a0dd26f9e47d7f74e637930d897
Matthew Netsch [Fri, 15 Oct 2021 16:47:17 +0000 (12:47 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Change-Id: Id485bc8ae929179e7786039966a233dd6fa57cdc
Antto Mäkinen [Thu, 30 Sep 2021 15:05:57 +0000 (18:05 +0300)]
Add a batch of GraphicsFuzz coverage tests
This commit adds a batch of GraphicsFuzz coverage tests.
Components: Vulkan
New Tests:
dEQP-VK.graphicsfuzz.cov-copy-output-color-swizzle-array-indexing
dEQP-VK.graphicsfuzz.cov-do-while-loop-until-uniform-lt-itself
dEQP-VK.graphicsfuzz.cov-fract-trunc-always-zero
dEQP-VK.graphicsfuzz.cov-function-find-lsb-ivec2-one
dEQP-VK.graphicsfuzz.cov-function-unpack-unorm-2x16-one
dEQP-VK.graphicsfuzz.cov-global-loop-counter-texture-sample-loop-condition-set-array-element
dEQP-VK.graphicsfuzz.cov-ivec-shift-right-by-large-number
dEQP-VK.graphicsfuzz.cov-large-int-array-nested-loops-set-ivec-index-component-sum
dEQP-VK.graphicsfuzz.cov-min-negative-constant-always-below-one
dEQP-VK.graphicsfuzz.cov-nested-functions-loop-assign-global-array-element
dEQP-VK.graphicsfuzz.cov-nested-loops-global-loop-counter-fragcoord-negative-always-false
Change-Id: I78c78c2b681e4ea5a7b05fb787a6a6fe8f589f22
Antto Mäkinen [Thu, 30 Sep 2021 14:41:23 +0000 (17:41 +0300)]
Add a batch of GraphicsFuzz coverage tests
This commit adds a batch of GraphicsFuzz coverage tests.
Components: Vulkan
New Tests:
dEQP-VK.graphicsfuzz.cov-for-loop-condition-one-shift-right-integer-comparison-break
dEQP-VK.graphicsfuzz.cov-for-loop-start-negative-increment-variable
dEQP-VK.graphicsfuzz.cov-global-loop-counter-exhaust-calling-function-twice
dEQP-VK.graphicsfuzz.cov-global-loop-counter-read-past-matrix-size-never-executed
dEQP-VK.graphicsfuzz.cov-if-true-float-bits-to-int-one
dEQP-VK.graphicsfuzz.cov-index-array-using-uniform-bitwise-or-one
dEQP-VK.graphicsfuzz.cov-loop-increment-integer-findmsb-minus-uniform
dEQP-VK.graphicsfuzz.cov-loop-struct-array-field-set-value-self-dependency
dEQP-VK.graphicsfuzz.cov-nested-loop-initializer-value-increased-inside
dEQP-VK.graphicsfuzz.cov-nested-loops-clamp-ivec-push-constant-increment-global-counter
Change-Id: Id2bb89247693464600142ef6988d070f03f7d70e
Vidar Lilleboe [Tue, 7 Sep 2021 14:58:38 +0000 (16:58 +0200)]
VK_EXT_rgba10x6_formats
New tests:
dEQP-VK.pipeline.blend.format.r10x6g10x6b10x6a10x6_unorm_4pack16.*
dEQP-VK.renderpass.suballocation.multisample.r10x6g10x6b10x6a10x6_unorm_4pack16.*
dEQP-VK.renderpass.suballocation.multisample_resolve.r10x6g10x6b10x6a10x6_unorm_4pack16.*
dEQP-VK.renderpass.suballocation.multisample_resolve.layers_3.r10x6g10x6b10x6a10x6_unorm_4pack16.*
dEQP-VK.renderpass2.suballocation.multisample.r10x6g10x6b10x6a10x6_unorm_4pack16.*
dEQP-VK.renderpass2.suballocation.multisample_resolve.r10x6g10x6b10x6a10x6_unorm_4pack16.*
dEQP-VK.renderpass2.suballocation.multisample_resolve.layers_3.r10x6g10x6b10x6a10x6_unorm_4pack16.*
dEQP-VK.renderpass2.suballocation.sparserendertarget.r10x6g10x6b10x6a10x6_unorm_4pack16
dEQP-VK.texture.filtering.*r10x6g10x6b10x6a10x6_unorm*
Affected tests:
dEQP-VK.api.info.format_properties.r10x6g10x6b10x6a10x6_unorm_4pack16,
dEQP-VK.api.info.image_format_properties.2d.optimal.r10x6g10x6b10x6a10x6_unorm_4pack16
Components: Vulkan
VK-GL-CTS issue: 3115
Change-Id: I2dfd4004cfbbd923c71b2f7bcff426b4773c53a4
Vihanakangas [Wed, 29 Sep 2021 12:22:07 +0000 (15:22 +0300)]
Improve coverage of MSAA copies with different layouts
This commit adds a test that tests MSAA copies
with different image layout combinations.
New tests:
dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.*
Affects:
dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.*
Components: Vulkan
VK-GL-CTS issue: 3071
Change-Id: Iedf827aac72058f6bf7b7fe6e49e54816173d011
Antto Mäkinen [Mon, 4 Oct 2021 10:23:13 +0000 (13:23 +0300)]
Add a batch of GraphicsFuzz coverage tests
This commit adds a batch of GraphicsFuzz coverage tests.
Components: Vulkan
New Tests:
dEQP-VK.graphicsfuzz.cov-for-loop-struct-as-iterator
dEQP-VK.graphicsfuzz.cov-function-argument-uniform-float-loop-never-return
dEQP-VK.graphicsfuzz.cov-function-large-array-max-clamp
dEQP-VK.graphicsfuzz.cov-function-trivial-switch-case
dEQP-VK.graphicsfuzz.cov-increment-vector-function-call-conditional
dEQP-VK.graphicsfuzz.cov-loop-condition-clamp-vec-of-ones
dEQP-VK.graphicsfuzz.cov-loop-increment-array-elements-clamp-index
dEQP-VK.graphicsfuzz.cov-loop-switch-discard-never-hit
dEQP-VK.graphicsfuzz.cov-matrix-mult-round-even-asinh
dEQP-VK.graphicsfuzz.cov-nested-functions-struct-arrays-vector-lengths
dEQP-VK.graphicsfuzz.cov-nested-loop-large-array-index-using-vector-components
dEQP-VK.graphicsfuzz.cov-nested-loops-global-loop-counter-iterator-dependency
dEQP-VK.graphicsfuzz.cov-ucarryadd-one-and-one
dEQP-VK.graphicsfuzz.cov-uniform-vector-function-argument-mod-increment-integers
Change-Id: I82412672dfe0d5534e1ecd151e46976657a41baa
Lesniewska [Thu, 10 Dec 2020 11:47:26 +0000 (12:47 +0100)]
Change cache type to NO_CACHE in duplicate_batch_pipelines_no_cache test
The test case is called "duplicate_batch_pipelines_no_cache",
but it's TestParams were set to EXPLICIT_CACHE - making it use the
pipeline cache, despite it's name.
Components: Vulkan
VK-GL-CTS Issue: 2710
Affects: dEQP-VK.pipeline.creation_cache_control.graphics_pipelines.*
Change-Id: Iaa27b10f4895808c4821c6e3ac13fe8ad217e087
(cherry picked from commit
a5f16fb2d72ed1c377d03cfb938c4c718f5c814f)
Vihanakangas [Mon, 4 Oct 2021 10:52:27 +0000 (13:52 +0300)]
Move anisotropic filtering support check to a function
Support check for anisotropic filtering was done inside of iterate.
This change moves that check inside of a function for consistency
and performance.
Affects:
dEQP-VK.texture.filtering_anisotropy.*
Components: Vulkan
VK-GL-CTS issue: 3068
Change-Id: I3a1c0a1acff96b6f6b291bb53d3d9dc0bd122c17
(cherry picked from commit
522f4ba64beee8828030320591d20faa027a8e0a)
Tapani Pälli [Mon, 11 Oct 2021 10:08:41 +0000 (13:08 +0300)]
Remove direct state access usage from RenderbufferCase
Driver might not support GL_[ARB|EXT]_direct_state_access.
Affects:
KHR-GL*internalformat.renderbuffer.*
Components: OpenGL
VK-GL-CTS issue: 3092
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I89e50d51100fc45de159ce21191a38f3c4f2de49
Piotr Byszewski [Wed, 14 Jul 2021 19:29:00 +0000 (21:29 +0200)]
maintenance4: Add LocalSizeId tests
For each compute shader entry point, either a LocalSize or
LocalSizeId execution mode, or an object decorated with the
WorkgroupSize decoration must be specified.
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.spirv_assembly.instruction.compute.localsize*
Change-Id: I5d4c5fff1d536fe6fe46b9f60009af8c9fb4a7f6
(cherry picked from commit
81ceb64d651e1e6f949df40613a794ed1452ee03)
Graeme Leese [Mon, 9 Aug 2021 16:31:31 +0000 (17:31 +0100)]
Wire up support for maintenance4 validation
Pass the appropriate option to spirv-val if VK_KHR_maintenance4 is
supported.
Components: Vulkan
Affects: dEQP-VK.spirv_assembly.instruction.compute.*
Change-Id: I554bac9160dc55a017e1358a579b59249ed81079
(cherry picked from commit
aada936b73b7779fcab9c061a48768db1bc5470e)
Piotr Byszewski [Thu, 15 Jul 2021 17:46:24 +0000 (19:46 +0200)]
maintenance4: Add push-constant test
Test creates a pipeline with a push-constant, but not initialize
that push constant. The test runs without crashing when reading
that undefined value.
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.pipeline.push_constant.compute_pipeline.*
Change-Id: I0ca1d4082daccd628e26936b4b0b17550c698a1e
(cherry picked from commit
3cf045bd24cb47b660dc272a3a037c1afb8b3ce2)
Piotr Byszewski [Mon, 12 Jul 2021 19:00:36 +0000 (21:00 +0200)]
maintenance4: Add pipeline layout tests
Test destroying pipeline layout after creating
compute and graphics pipeline.
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.api.pipeline.*
Change-Id: I1a70c67f870ef6cb2341cf9a1236c6d9f127dc54
(cherry picked from commit
ee24e9dd50d0bcdd79a718a3205fc3a5cddf35e6)
Lionel Duc [Wed, 16 Jun 2021 13:19:56 +0000 (15:19 +0200)]
Add image query tests for VK_KHR_maintenance4
These new tests perform the same queries as the original
vkGet*MemoryRequirements, using the objects createInfo instead. We then
compare the results against the original results.
We also query the memory requirements of a smaller buffer or image and
make sure the returned size requirements are not larger for the smaller
resource.
Components: Vulkan, Framework
New Tests: dEQP-VK.memory.requirements.create_info*
Change-Id: I2b751883911d18c3265b25f9d42920bb7e44bdf7
(cherry picked from commit
b45609422d184acc425ad39da7f17816e865fbf1)
Piotr Byszewski [Mon, 19 Jul 2021 13:35:37 +0000 (15:35 +0200)]
maintenance4: Add requirements matching tests
New test does few things:
* creates a bunch of VkBuffer and VkImage objects with the same
create infos and makes sure their alignments all match
* makes sure that memory requirements returned by
vkGetBufferCreateInfoMemoryRequirementsKHR are identical to those
that would be returned by vkGetBufferMemoryRequirements2 if it were
called with a VkBuffer created with the same VkBufferCreateInfo
values
* similarly, vkGetImageCreateInfoMemoryRequirementsKHR will report
the same memory requirements as vkGetImageMemoryRequirements2
would if called with a VkImage created with the supplied
VkImageCreateInfo
* makes sure that size memory requiremen for VkImage is not greater
than that of another VkImage created with a greater or equal extent
dimension specified in VkImageCreateInfo when all other creation
parameters are identical
* makes sure that size memory requiremen for VkBuffer is not greater
than that of another VkBuffer created with a greater or size
specified in VkImageCreateInfo when all other creation parameters
are identical
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.api.invariance.memory_requirements_matching
Change-Id: Ide74041ee82440af68458f684e2eae622f31cedf
(cherry picked from commit
5401944127d55b2be660c6f3bb2009f895c7b41a)
Piotr Byszewski [Wed, 14 Jul 2021 07:52:10 +0000 (09:52 +0200)]
maintenance4: Add maxBufferSize limit tests
Verify that VkBuffer with maxBufferSize can be created
for both normal and sparse buffers.
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.api.buffer.basic.*
Change-Id: I439a4f9ab0d809367054e711dc128a3c2aabecf9
(cherry picked from commit
9333baedccdb4315178a888166fcfd3a1029351c)
Piotr Byszewski [Mon, 7 Jun 2021 11:49:31 +0000 (13:49 +0200)]
Extend decoration mismatch tests
Recent changes to specification changed interface matching
rules and this CL adds tests that check decoration
mismatch in structures.
Components: Vulkan
VK-GL-CTS issue: 2554
Affects:
dEQP-VK.pipeline.interface_matching.decoration_mismatch.*
Change-Id: I25930e6a4b02456acbcb6584f3308435898f475e
(cherry picked from commit
154f8217d9e078888e61c03ce7bb7adc739a77e4)
Piotr Byszewski [Fri, 28 May 2021 11:25:24 +0000 (13:25 +0200)]
Add tests for relaxed vector matching
VK_KHR_maintenance4 relaxed vector matching rules
in interface matching section.
Components: Vulkan
VK-GL-CTS issue: 2553
Affects:
dEQP-VK.pipeline.interface_matching.*
Change-Id: I79c96b88e41dba13570d518b07b8d5ef9a599d41
(cherry picked from commit
5e30ef7e7d2bcbf739797f69fe41f24bf8ac9e72)
Piotr Byszewski [Thu, 21 Jan 2021 15:53:23 +0000 (16:53 +0100)]
Add tests for vector matching
Components: Vulkan
VK-GL-CTS issue: 2553
New tests:
dEQP-VK.pipeline.interface_matching.*
Change-Id: I1354266e11ed7293c6b44526b2aa24427b0e86d5
(cherry picked from commit
13148e616b7811e1763eeea760f08b33deebddb3)
Piotr Byszewski [Thu, 21 Jan 2021 15:53:23 +0000 (16:53 +0100)]
Add decoration mismatch tests
Components: Vulkan
VK-GL-CTS issue: 2554
New tests:
dEQP-VK.pipeline.interface_matching.decoration_mismatch.*
Change-Id: I4f98d36b0568234d303e3234d78c2023f866b775
(cherry picked from commit
42fab9c7a4ff23fc086d4e5b6a8f4a009c36762c)