platform/upstream/VK-GL-CTS.git
3 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Thu, 8 Apr 2021 07:36:00 +0000 (10:36 +0300)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: Ib6b4439d2c64221cb9923295668db391a12188fa

3 years agoRemove in-repo verify_submission scripts
Alexander Galazin [Fri, 19 Mar 2021 11:12:55 +0000 (14:12 +0300)]
Remove in-repo verify_submission scripts

These scripts are now replaced by the CTS Tools repo:
https://github.com/KhronosGroup/VK-GL-CTS-Tools

Components: Vulkan, OpenGL

Change-Id: If0f47b4186ed10f9946852e8d37956d7328625a8
(cherry picked from commit bdfb5d67b268ab2dba5178618cc1515f68087be3)

3 years agoUpdate Vulkan/GL Readme
Alexander Galazin [Mon, 22 Feb 2021 09:14:11 +0000 (10:14 +0100)]
Update Vulkan/GL Readme

Update the Readme files to point to the new
submission verifcation script

Components: Vulkan, OpenGL

Change-Id: I6fb35a383fcc49e543ae67822be22d744c5fcd9c
(cherry picked from commit 412f5a3363eb228ca1a63be337de172a2e622571)
(cherry picked from commit 0b536d84fdb4a4fb697ab852dadc643c5dac9736)

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master
Alexander Galazin [Wed, 7 Apr 2021 16:14:33 +0000 (19:14 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master

Change-Id: I7e3d844b6fc36cc819fcd3af6c8f17008e228439

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Wed, 7 Apr 2021 15:15:08 +0000 (18:15 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I402128a712866638b2b8cc04ac38143712237ebf

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Wed, 7 Apr 2021 14:49:03 +0000 (17:49 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: Id90fcd730ba632a3a08f25a01226098421486753

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Wed, 7 Apr 2021 13:11:48 +0000 (16:11 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: Iffa708c815ea869d459d6b5a951f69a3fae7d351

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Wed, 7 Apr 2021 09:51:46 +0000 (12:51 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: I452f719e084e6decc02066064c6f0397e4b915e6

3 years agoAdd CMake detection logic for libdrm include files
James Jones [Tue, 12 Jan 2021 18:42:26 +0000 (10:42 -0800)]
Add CMake detection logic for libdrm include files

Determine if the base DRM header files are
available, and if so, add their paths to the
include directories and add a definition
indicating they were found.

Change-Id: Iaf014dc0978ba050995ed3ad61c0ddc6b751e3ea

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Tue, 6 Apr 2021 14:13:37 +0000 (17:13 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I2947e16b40c26feb3c95922e18e36e36acbc43b9

3 years agoMerge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1
Alexander Galazin [Tue, 6 Apr 2021 11:46:52 +0000 (14:46 +0300)]
Merge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1

Change-Id: Id775a0b8cb86bd5929b61c49fbfac4825421c7a7

3 years agoAdd early fragment tests
Juha Heiskanen [Wed, 17 Mar 2021 08:15:32 +0000 (10:15 +0200)]
Add early fragment tests

When early fragment tests are enabled, any depth value computed by the
fragment shader has no effect. This CL adds 6 new tests, which are
enabling the Early Fragment Test Mode for depth calculations.

Components: Vulkan

VK-GL-CTS Issue: 2738

New Tests:
dEQP-VK.spirv_assembly.instruction.graphics.early_fragment*

Change-Id: Ieed7012fa413bdd43a4d71acb052d9ded0ae9bf3

3 years agoAdd tests for multisample resolve to level != 0
michal_jakubek [Fri, 19 Mar 2021 18:16:40 +0000 (19:16 +0100)]
Add tests for multisample resolve to level != 0

This test extends existent tests to be able to
render to an arbitrary mip level, not only 0.

It also introduces overloaded copyImageToBuffer()
routine which allows you to copy any image mip level
to a buffer with the appropriate amount of allocated
memory.

Components: Vulkan

VK-GL-CTS issue: 2782

Affects:
dEQP-VK.renderpass.suballocation.multisample_resolve.*

Change-Id: I119632180de4a7176e501e82889fb98b83635e28

3 years agoAdd coverage for 1D, 1D array and Cube array shadow images
Boris Zanin [Mon, 15 Feb 2021 22:13:03 +0000 (23:13 +0100)]
Add coverage for 1D, 1D array and Cube array shadow images

Add tests:
 * dEQP-VK.texture.shadow.1d.*
 * dEQP-VK.texture.shadow.1d_array.*
 * dEQP-VK.texture.shadow.cube_array.*

Affect tests:
 * dEQP-VK.pipeline*.1d_array.*

Components: Vulkan

VK-GL-CTS issue: 2521

Change-Id: I84b899ca5e5e47592b9bb831bbf80c4f9a2218c4

3 years agoAdd subgroup testing for ray tracing pipelines
Boris Zanin [Thu, 28 Jan 2021 16:30:59 +0000 (17:30 +0100)]
Add subgroup testing for ray tracing pipelines

Add tests:
 * dEQP-VK.subgroups.*.ray_tracing.*

Affected tests:
 * dEQP-VK.subgroups.*

In current implementation following tests will always
pass. Fix them.

Fix tests:
 * dEQP-VK.subgroups.builtin_var.graphics.subgroupinvocationid
 * dEQP-VK.subgroups.builtin_var.framebuffer.subgroupinvocationid*

Components: Framework, Vulkan

VK-GL-CTS issue: 2653

Change-Id: I7afa33c3d618f0dce54d656fad810273b36a3c98

3 years agoTest interaction between Workgroup explicit layout and zero initialization
Caio Marcelo de Oliveira Filho [Sat, 16 Jan 2021 07:31:56 +0000 (23:31 -0800)]
Test interaction between Workgroup explicit layout and zero initialization

Test interaction between VK_KHR_workgroup_memory_explicit_layout and
VK_KHR_zero_initialize_workgroup_memory.  Tests use SPIR-V ASM since
there's no syntax in GLSL to initialize a block.

Component: Vulkan
VK-GL-CTS Issue: 2524
New Tests: dEQP-VK.compute.workgroup_memory_explicit_layout.zero_ext.*

Change-Id: I015ba350bd15472d06b3bee657ce67f283e8e1e7

3 years agoMerge "Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master"
Alexander Galazin [Fri, 2 Apr 2021 08:00:17 +0000 (08:00 +0000)]
Merge "Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master"

3 years agoAdd waived tests support for cts tools
Cheryl Wei [Tue, 16 Mar 2021 07:43:48 +0000 (15:43 +0800)]
Add waived tests support for cts tools

Add TESTSTATUSCODE_WAIVER definition for cts tools to support waived tests.

Components: OpenGL ES
VK-GL-CTS issue: 2666

Change-Id: I99811c73bb96ec45cb0e5cbfab7d073bca4653db

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master
Alexander Galazin [Fri, 2 Apr 2021 07:18:54 +0000 (10:18 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master

Change-Id: I313cc115e39d09a7f40365d160b5ba3502b68269

3 years agoFixes transform feedback query tests
Matthew Netsch [Wed, 31 Mar 2021 15:51:36 +0000 (11:51 -0400)]
Fixes transform feedback query tests

Tests were not reseting the query pool prior
to using the queries, as is required by the spec.

Components: Vulkan
VK-GL-CTS Issue: 2866

Affects:
dEQP-VK.transform_feedback.simple.multiquery*

Change-Id: If62c75476f1c9a97ee4d819712bb9904dc6d83c7

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Thu, 1 Apr 2021 16:57:27 +0000 (19:57 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I373a9df4f575b5f9d90b2c9f651c1a69b9265f1d

3 years agoFix test does not return failure status
Marcin Kantoch [Tue, 30 Mar 2021 14:47:11 +0000 (16:47 +0200)]
Fix test does not return failure status

Affected tests:
dEQP-VK.wsi.display_control.register_device_event

Components: Vulkan
VK-GL-CTS issue: 2864

Change-Id: I282ffc5e7b910209a509ae57ee8e38c662b97815

3 years agoFixes Fragment Shading Rate layered tests
Matthew Netsch [Wed, 31 Mar 2021 15:08:41 +0000 (11:08 -0400)]
Fixes Fragment Shading Rate layered tests

Test was exporting Layer and ViewportIndex
decorations in Vertex Shader in the
Geometry Shader tests without checking
for support.

Components: Vulkan
VK-GL-CTS Issue: 2865

Affects:
dEQP-VK.fragment_shading_Rate.srlayered.*.gs
dEQP-VK.fragment_shading_Rate.colorlayered.*.gs

Change-Id: Idbf6be2c14bb8409feec2d7262efb9a402cf35a2

3 years agoRemove duplicate dataSafe function from deSTLUtil
Ricardo Garcia [Wed, 24 Mar 2021 14:14:27 +0000 (15:14 +0100)]
Remove duplicate dataSafe function from deSTLUtil

The dataSafe() and dataOrNull() STL util functions were added almost at
the same time by two different CLs, with the same purpose and nearly
identical code.

No test should be affected by this simple change.

Components: Vulkan, Framework

Change-Id: I39f72c043d32522d1bf3b05e49b68fb3a0f088b2

3 years agoAdd keys deqp-log-decompiled-spirv and deqp-log-empty-loginfo
Boris Zanin [Tue, 7 Jul 2020 17:33:59 +0000 (19:33 +0200)]
Add keys deqp-log-decompiled-spirv and deqp-log-empty-loginfo

Add two keys to deqp-vk command line to optimize generated
TestResults.qpa for high level source shader analysis and comparision.

The key deqp-log-decompiled-spirv allows to control output of decompiled
SPIR-V sources. By default it is enabled to keep existing behaviour.

The key deqp-log-empty-loginfo allows to control output of empty LogInfo
section into the TestResults.qpa. By default it is enabled to keep
existing behaviour.

Components: Framework

VK-GL-CTS issue: 2447

Change-Id: I1f53cd89e7cb689236f4969fb4c82d9369a46f0f

3 years agoCheck for drawIndirectFirstInstance should only affect indirect draw calls
Alejandro Piñeiro [Tue, 23 Mar 2021 23:38:35 +0000 (00:38 +0100)]
Check for drawIndirectFirstInstance should only affect indirect draw calls

Without this change, if any driver doesn't support that feature, then
non-indirect draw calls, like vkCmdDrawIndexed are also tested using
only firstInstance==0.

Affects:
dEQP-VK.draw.instanced.*

Components: Vulkan

VK-GL-CTS issue: 2857

Change-Id: I432d5760258848d30e101baf702495980d2116fe

3 years agoSupport GL 4.5 in the uniform location tests
Alexander Galazin [Wed, 17 Mar 2021 13:45:56 +0000 (16:45 +0300)]
Support GL 4.5 in the uniform location tests

Components: AOSP

Affects:
dEQP-GLES31.functional.uniform_location.*
dEQP-GL45.functional.uniform_location.*

Change-Id: Icf467c7261295cb072a235083cc681d0fd964717

3 years agoSupport GL 4.5 in the multisample texture tests
Alexander Galazin [Wed, 17 Mar 2021 12:31:19 +0000 (15:31 +0300)]
Support GL 4.5 in the multisample texture tests

Components: AOSP

Affects:
dEQP-GLES31.functional.texture.multisample.*
dEQP-GL45.functional.texture.multisample.*

Change-Id: I03924cadf2076c4e7fb2cf2e5042ce8abd5ddd0e

3 years agoSupport GL 4.5 in the EXT_texture_border_clamp tests
Alexander Galazin [Tue, 16 Mar 2021 13:27:07 +0000 (16:27 +0300)]
Support GL 4.5 in the EXT_texture_border_clamp tests

Components: AOSP

Affects:
dEQP-GLES31.functional.texture.border_clamp.*
dEQP-GL45.functional.texture.border_clamp.*

Change-Id: Iea33af4d6cb90fa5dbf1108be6074a2d48c96f20

3 years agoUpdate Vulkan headers
Alexander Galazin [Mon, 29 Mar 2021 08:26:40 +0000 (11:26 +0300)]
Update Vulkan headers

Components: Vulkan

Change-Id: I1f2650958b9ec4d9af8eb5e6310afa3c72395880

3 years agoSupport GL 4.5 in the geometry shading tests
Alexander Galazin [Tue, 16 Mar 2021 11:13:47 +0000 (14:13 +0300)]
Support GL 4.5 in the geometry shading tests

Components: AOSP

Affects:
dEQP-GLES31.functional.geometry_shading.*
dEQP-GL45.functional.geometry_shading.*

Change-Id: I6dd14a7339e29ddf55ea762c729934fe6fc277ba

3 years agoSupport GL 4.5 in the tessellation tests
Alexander Galazin [Tue, 16 Mar 2021 08:27:49 +0000 (11:27 +0300)]
Support GL 4.5 in the tessellation tests

Components: AOSP

Affects:
dEQP-GLES31.functional.tessellation.*
dEQP-GL45.functional.tessellation.*

Change-Id: I875246c095b91e8011f6170d19901f5aab69b8b8

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Alexander Galazin [Tue, 30 Mar 2021 07:16:29 +0000 (10:16 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master

Change-Id: I02d3645912b70e9c7c807d9f08a3896079d0f9e6

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master
Alexander Galazin [Tue, 30 Mar 2021 06:22:14 +0000 (09:22 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/master

Change-Id: I532c8c99ffbca33a036d2a458f6f5f8c8f44b02c

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Tue, 30 Mar 2021 06:21:00 +0000 (09:21 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: If1bdcafe2e19121b0d5d7f89bf44f89db1877f74

3 years agoRevise the render_list string of angle vulkan waiver
junxu01 [Mon, 15 Mar 2021 08:07:54 +0000 (16:07 +0800)]
Revise the render_list string of angle vulkan waiver

Use 'ANGLE (*Vulkan *' to replace 'ANGLE (Vulkan*'.

Components: OpenGL ES
VK-GL-CTS issue: 2770

Change-Id: I8e5c8a86a81a538b829873a7c133a4c14b181087

3 years agoSupport GL 4.5 in the copy image tests
Alexander Galazin [Mon, 15 Mar 2021 08:59:56 +0000 (11:59 +0300)]
Support GL 4.5 in the copy image tests

Components: AOSP

Affects:
dEQP-GLES31.functional.copy_image.*
dEQP-GL45.functional.copy_image.*

Change-Id: I22e6789a5e1d9c82c955f22808aa71c0191a3a69

3 years agoAllow more conservative coverage for degenerate triangles
Piers Daniell [Wed, 24 Mar 2021 22:53:56 +0000 (16:53 -0600)]
Allow more conservative coverage for degenerate triangles

Some implementations of conservative rasterization with degenerate
triangles produce more than one pixel worth of coverage, which is
allowed by the Vulkan specification.

This CL modifies the test to allow some extra coverage so it works
on these implementations.

Affects:

dEQP-VK.rasterization.conservative.overestimate.*.triangles.degenerate.*

Components: Vulkan

VK-GL-CTS issue: 2859

Change-Id: I65c6508813c04d5faa2312e26832efe16e44cea2

3 years agoFix insufficient BLAS indirect buffer size
Neslisah Torosdagli [Sat, 27 Mar 2021 03:27:06 +0000 (23:27 -0400)]
Fix insufficient BLAS indirect buffer size

BLAS indirect buffer size is not set correctly. It is set to
sizeof(VkAccelerationStructureBuildRangeInfoKHR) however
geometries number times sizeof(VkAccelerationStructureBuildRangeInfoKHR)
indirect buffer space is needed.

Components: Vulkan

https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/2862

Affects: dEQP-VK.ray_tracing_pipeline.indirect.build_structure
Change-Id: I2b5df039aac6c3f2a51177c8bf9f5095ae5c7886

3 years agoAdded tests for most-negative snorm values in images
michal_jakubek [Tue, 8 Dec 2020 09:25:22 +0000 (10:25 +0100)]
Added tests for most-negative snorm values in images

This commit adds test for most-negative snorm values in images when using linear filtering.
Component: Vulkan

New tests:
  dEQP-VK.texture.conversion.snorm_clamp_linear.*

VK-GL-CTS issue: 2618

Change-Id: I414ab5aac47307e135563a3eb9870fa1484b7ba9

3 years agoNotice of withdrawal of Vulkan CTS 1.2.2.x
Alexander Galazin [Fri, 26 Mar 2021 07:23:05 +0000 (10:23 +0300)]
Notice of withdrawal of Vulkan CTS 1.2.2.x

Components: Vulkan

Change-Id: Ifda4ec091ba5e8e3b362aa7d828837dd3bad2202

3 years agoChange format used in pipeline cache control tests
James Fitzpatrick [Tue, 23 Mar 2021 11:39:48 +0000 (11:39 +0000)]
Change format used in pipeline cache control tests

The format used as a colour attachment by the pipeline creation cache
control tests is not required to be supported as a color attachment and
the tests do not query for it being supported.

Change it to R8G8B8A8 which is required to be supported as the specific
format is not important for this test.

Affects:
dEQP-VK.pipeline.creation_cache_control.graphics_pipelines.*

Components: Vulkan

VK-GL-CTS issue: 2856

Change-Id: I7ecfc4de8584dba6824101cb717313247070f12f

3 years agoInclude sys/system_properties.h in teglAndroidUtil.cpp
Tim Van Patten [Thu, 18 Mar 2021 22:15:34 +0000 (16:15 -0600)]
Include sys/system_properties.h in teglAndroidUtil.cpp

The following CL added a call to __system_property_get():
https://github.com/KhronosGroup/VK-GL-CTS/commit/8a537a0c916e1a10e134f648801f0812c4c749ba

However, it's failing to build:

  ../../third_party/angle/third_party/VK-GL-CTS/src/modules/egl/teglAndroidUtil.cpp:78:3:
  error: use of undeclared identifier '__system_property_get'
                __system_property_get("ro.build.version.sdk", value);

This is caused by teglAndroidUtil.cpp not including
sys/system_properties.h. Including the file fixes the error.

Change-Id: I0e63fcc9dfe0e872832da07e3b8d7f2f78f9d835
(cherry picked from commit 968b6ee77b11267cb6afb6fdbd9bef847eb14868)

3 years agoInclude sys/system_properties.h in teglAndroidUtil.cpp
Tim Van Patten [Thu, 18 Mar 2021 22:15:34 +0000 (16:15 -0600)]
Include sys/system_properties.h in teglAndroidUtil.cpp

The following CL added a call to __system_property_get():
https://github.com/KhronosGroup/VK-GL-CTS/commit/8a537a0c916e1a10e134f648801f0812c4c749ba

However, it's failing to build:

  ../../third_party/angle/third_party/VK-GL-CTS/src/modules/egl/teglAndroidUtil.cpp:78:3:
  error: use of undeclared identifier '__system_property_get'
                __system_property_get("ro.build.version.sdk", value);

This is caused by teglAndroidUtil.cpp not including
sys/system_properties.h. Including the file fixes the error.

Change-Id: I0e63fcc9dfe0e872832da07e3b8d7f2f78f9d835

3 years agoAdd a batch of GraphicsFuzz tests
Alastair Donaldson [Thu, 26 Nov 2020 16:04:36 +0000 (16:04 +0000)]
Add a batch of GraphicsFuzz tests

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.spv-stable-bubblesort-flag-complex-conditionals
dEQP-VK.graphicsfuzz.spv-stable-maze-O-dead-code
dEQP-VK.graphicsfuzz.spv-stable-maze-O-memory-accesses
dEQP-VK.graphicsfuzz.spv-stable-mergesort-dead-code
dEQP-VK.graphicsfuzz.spv-stable-quicksort-dontinline
dEQP-VK.graphicsfuzz.spv-stable-sampler-loop-extra-instructions
dEQP-VK.graphicsfuzz.spv-stable-sampler-polar-simple-O-access-chain

Change-Id: Id21ca55bcbc067b29105bb0b66f78b15f2a52a8d

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Alexander Galazin [Thu, 25 Mar 2021 10:15:11 +0000 (13:15 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master

Change-Id: Ic5abe4e31f3520d5ba7d02a31f38c256a26b56f2

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Thu, 25 Mar 2021 07:51:47 +0000 (10:51 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: I5517ebda304e88850ec6cd29bebce290aa237723

3 years agoQPA image viewer updates
Ricardo Garcia [Wed, 24 Mar 2021 14:19:50 +0000 (15:19 +0100)]
QPA image viewer updates

This commit fixes two issues with the HTML QPA image viewer tool:

* Make Firefox use nearest scaling for images.
* Add a "clear text" button to the text paste input field.

Change-Id: I3eb4222c4962c0de90978b580c768c1157abb1f4

3 years agoFulfill OpControlBarrier requirement
Boris Zanin [Wed, 17 Mar 2021 11:27:26 +0000 (12:27 +0100)]
Fulfill OpControlBarrier requirement

The valid usage requirement in vulkan specification 1.2.170
VUID-StandaloneSpirv-None-04641 requires: "If the Scope for
memory is Invocation, then memory semantics must be None".
New SPIRV-Tools enforces it.

Fix tests:
 * dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_function
 * dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_switch
 * dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_if
 * dEQP-VK.spirv_assembly.instruction.graphics.barrier.after_divergent_if
 * dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_loop

Update tests:
 * dEQP-VK.spirv_assembly.instruction.graphics.barrier.*

Components: Vulkan

Change-Id: Ie6997fdb36c0327d88a2b7b6b4826dfee690377d

3 years agoAdd an option to terminate after first failure, update READMEs
Sławomir Cygan [Fri, 5 Mar 2021 16:02:06 +0000 (17:02 +0100)]
Add an option to terminate after first failure, update READMEs

New command line argument: --deqp-terminate-on-fail=enable

Moreover update the READMEs:
 - update the command line documentation in OpenGL CTS Readme
 - add a chapter on Vulkan CTS command line
 - Move --deqp-runner-type= from chapter describing allowed CTS command line

Components: Framework

VK-GL-CTS Issue 2844

Change-Id: I4c6b339838a50fc2ddc0d493ac905f502179792d

3 years agoTerminate with an error if unrecognized arguments are passed to dEQP executable
Slawomir Cygan [Wed, 10 Mar 2021 16:50:37 +0000 (17:50 +0100)]
Terminate with an error if unrecognized arguments are passed to dEQP executable

de::cmdline seems to support options (starting with '-' or '--') and generic
arguments.

It seems the command line interface of dEQP, which wraps de:cmdline,  was
not making any use of the arguments, but at the same time ignored them.
This made a possibility for unrecognized command line arguments to be
completely ignored, instead of throwing and error

Components: Framework

VK-GL-CTS Issue: 2727

Change-Id: Ibea7413edec2899d33484ac8bb8183c4f4d398ac

3 years agoEnsure only Unix paths are added to deqp.apk
Vihanakangas [Mon, 15 Mar 2021 13:07:25 +0000 (15:07 +0200)]
Ensure only Unix paths are added to deqp.apk

Workaround for adding paths to deqp.apk
when using Windows as a build platform.

Components: Framework, Android

VK-GL-CTS issue: 2810

Change-Id: Id37cb13f3ab8a2636e43454ed0e00275a0e2ff52

3 years agoMerge vk-gl-cts/github-master into vk-gl-cts/master
Alexander Galazin [Fri, 19 Mar 2021 11:05:09 +0000 (12:05 +0100)]
Merge vk-gl-cts/github-master into vk-gl-cts/master

Change-Id: I228e2d537618b1c9b6b0cd631bd0fd1f8db13d82

3 years agoRemove in-repo verify_submission scripts
Alexander Galazin [Fri, 19 Mar 2021 11:12:55 +0000 (14:12 +0300)]
Remove in-repo verify_submission scripts

These scripts are now replaced by the CTS Tools repo:
https://github.com/KhronosGroup/VK-GL-CTS-Tools

Components: Vulkan, OpenGL

Change-Id: If0f47b4186ed10f9946852e8d37956d7328625a8

3 years agoMerge pull request #216 from werman/tests/xfb_explicit_location
Alexander Galazin [Fri, 19 Mar 2021 11:04:23 +0000 (14:04 +0300)]
Merge pull request #216 from werman/tests/xfb_explicit_location

Add tests for XFB output of matrices/arrays/structs with explicit location (GL_ARB_enhanced_layouts)

3 years agoAdd tests to exercise 'readonly' SSBOs
Jeff Bolz [Thu, 3 Dec 2020 13:55:34 +0000 (07:55 -0600)]
Add tests to exercise 'readonly' SSBOs

Extend the robustness2 and ssbo test groups to have 'readonly'
SSBO variants. These declare the SSBO variable as 'readonly' and
skip the stores.

Change the SSBO tests from 'result = result && compare()' to
'result = compare() && result'. This puts multiple loads in the
same basic block and makes vectorization more likely, which makes
the tests more stressful.

Component: Vulkan
Affects: dEQP-VK.robustness.robustness2.*
Affects: dEQP-VK.ssbo.*
Change-Id: Ic35fdb00a382cf0d2911e51da7ab9fc50846340d

3 years agoAllow Vulkan CTS 1.2.6.0
Alexander Galazin [Thu, 18 Mar 2021 18:04:32 +0000 (21:04 +0300)]
Allow Vulkan CTS 1.2.6.0

Affects: dEQP-VK.api.driver_properties.properties

Components: Vulkan

Change-Id: Ia8779d2c3ac92ec1a90d43225b551b7efabef023

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master
Alexander Galazin [Thu, 18 Mar 2021 17:22:15 +0000 (20:22 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master

Change-Id: Ie1fb3817afbffd0b18a695230594c2790f6a5d8c

3 years agoAllow false positive hits from build-in AABBs intersector
Sławomir Cygan [Tue, 16 Mar 2021 16:07:16 +0000 (17:07 +0100)]
Allow false positive hits from build-in AABBs intersector

This change allows the test to execute any hit shader,
in case of AABB geometry is used and the ray falsely 'intersects'
it.

This is needed, as the test does not calculate the proper
intersection in 'intersection' stage - it uses a shader that always
reports TRUE. Hence the test relies on build-in AABB
intersector, which may report false positives according to the
specification.

VK-GL-CTS Issue: 2848

Components: Vulkan

Affects: dEQP-VK.ray_tracing_pipeline.build.*aabbs*

Change-Id: Ib90f45227a7cd4c412fd4d1c97598f32a80eb6ca

3 years agoFix required features checks in shaderRecordExplicitScalarOffset_6 test case
Sławomir Cygan [Fri, 12 Mar 2021 09:27:57 +0000 (10:27 +0100)]
Fix required features checks in shaderRecordExplicitScalarOffset_6 test case

Due to typo in ShaderRecordBlockTest::isTest(), the test case was not
checked for optional features, required by ShaderRecordBlockTest class.

Components: Vulkan

VK-GL-CTS Issues: 2845

Affects: dEQP-VK.ray_tracing_pipeline.misc.shaderRecordExplicitScalarOffset_6
Change-Id: I437637e69294f10343f69d9f5b9a0abfe3acc7a5

3 years agoAdd VK_EXT_headless_surface surface tests
Tom Cooper [Mon, 20 Jul 2020 09:53:28 +0000 (11:53 +0200)]
Add VK_EXT_headless_surface surface tests

Adds vulkan_headless target which uses VK_EXT_headless_surface
for swapchain surface creation.

New tests:
dEQP-VK.image.swapchain_mutable.headless.*
dEQP-VK.wsi.headless.*
dEQP-VK.protected_memory.interaction.wsi.headless.*

Components: Vulkan

VK-GL-CTS issue: 2825

Change-Id: I21536c41c839b7bb795f05a17cbea68f8125133a

3 years agoFix robust buffer access result checking for partially out of bound cases
Junda Liu [Tue, 9 Mar 2021 08:21:32 +0000 (16:21 +0800)]
Fix robust buffer access result checking for partially out of bound cases

The spec says:
Out-of-bounds buffer loads will return any of the following values:
...
Values from anywhere within the memory range(s) bound to the buffer (possibly including bytes of memory past the end of the buffer, up to the end of the bound range).
...

So partially out of bound load may return memory content for the in bound part. E.g., loading a 64-bit value from a buffer with 3B size (allocated 4B size), the first 4B can be value within the buffer.

Affected tests:
dEQP-VK.robustness.buffer_access.through_pointers.*

Change-Id: I1fab8d3819cf4d5935904a1c7762c3660c67379b

3 years agoRemove the tests with too large device AS build workload
Sławomir Cygan [Tue, 16 Mar 2021 15:40:21 +0000 (16:40 +0100)]
Remove the tests with too large device AS build workload

This removes the tests that submit accelleration structure
builds with 1048576 instances * geometries * 'squares'.

The accelleation structure builds performed by these tests
were too long and may hit the device timeout imposed by
the operating system.

Components: Vulkan

VK-GL-CTS Issue: 2849

Removed Tests:

dEQP-VK.ray_tracing_pipeline.build.gpu*_1_1_1048576
dEQP-VK.ray_tracing_pipeline.build.gpu*_1_1048576_1
dEQP-VK.ray_tracing_pipeline.build.gpu*_1_1048576_1
dEQP-VK.ray_tracing_pipeline.build.gpu*_4_4_65536
dEQP-VK.ray_tracing_pipeline.build.gpu*_4_65536_4
dEQP-VK.ray_tracing_pipeline.build.gpu*_65536_4_4

Change-Id: Ief53cc01da4f749fd8a030bd8e2ebb5652208ce4

3 years agoUse linear tiling with external_memory_host tests
Tapani Pälli [Tue, 16 Feb 2021 14:58:19 +0000 (16:58 +0200)]
Use linear tiling with external_memory_host tests

With linear, app can query the image's memory layout with
vkGetImageSubresourceLayout. With optimal tiling there is no way for app
to query or provide memory layout, therefore we must use linear.

Component: Vulkan
Affects: dEQP-VK.memory.external_memory_host*
VK-GL-CTS issue: 2794

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I71e97a937415abe6170e6edd81eaec26a5c68867

3 years agoFix precision issue in NearestEdgeTests shaders
Ancheng Qiao [Mon, 22 Feb 2021 10:25:25 +0000 (18:25 +0800)]
Fix precision issue in NearestEdgeTests shaders

We should also use the calculated offset in shader.

Affects:
KHR-GLES32.core.nearest_edge.*

Components: OpenGL ES

VK-GL-CTS issue: 2651

Change-Id: I9427d3a95a98e3be58dd7ea16a2bf96822f33450
(cherry picked from commit b5328021844d8fcca5d0facc327f1e31785ed880)

3 years agoFix precision issue in NearestEdgeTests shaders
Ancheng Qiao [Mon, 22 Feb 2021 10:25:25 +0000 (18:25 +0800)]
Fix precision issue in NearestEdgeTests shaders

We should also use the calculated offset in shader.

Affects:
KHR-GLES32.core.nearest_edge.*

Components: OpenGL ES

VK-GL-CTS issue: 2651

Change-Id: I9427d3a95a98e3be58dd7ea16a2bf96822f33450

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master
Alexander Galazin [Wed, 17 Mar 2021 15:53:06 +0000 (18:53 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master

Change-Id: I8e05ada30678a379a588756779ae4faf6a41851c

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Wed, 17 Mar 2021 15:26:27 +0000 (18:26 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: If51e7d93c6b84f7d3fde339f35ae351d8443a7ce

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Wed, 17 Mar 2021 14:28:28 +0000 (17:28 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: Id84d297899a981b1fae39d923280446925730cd0

3 years agoEnable shadow filtering tests for non-filterable formats
Graeme Leese [Thu, 4 Mar 2021 21:29:59 +0000 (21:29 +0000)]
Enable shadow filtering tests for non-filterable formats

The spec says that you don't need to be able to filter the actual format
in order to filter the results of a shadow comparison. Enable this in
the texture tests.

Component: Vulkan
VK-GL-CTS issue: 2834
Affects: dEQP-VK.texture.shadow.*

Change-Id: I0879d8e77b84493d0be9677e9b4811a240c812b5

3 years agoAdd BGR and BGRA formats to image view tests
Ricardo Garcia [Tue, 9 Mar 2021 10:12:37 +0000 (11:12 +0100)]
Add BGR and BGRA formats to image view tests

Test image views, including sampling and swizzling, with BGR and BGRA
formats so as to make sure the ordering of color components in image
memory does not affect the meaning of color component names.

New tests:
dEQP-VK.pipeline.image_view.*b8g8r8*

Components: Vulkan
VK-GL-CTS issue: 2841

Change-Id: I6005ab518e78d40d3e590882ebdedc102fb70d38

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Wed, 17 Mar 2021 13:01:48 +0000 (16:01 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: I6bad956acaf784565692e1ea539a219064deed57

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Alexander Galazin [Wed, 17 Mar 2021 12:24:52 +0000 (15:24 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master

Change-Id: I2a972a234184ede3227a4dc55758407a447483f0

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Wed, 17 Mar 2021 12:14:31 +0000 (15:14 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I64b979022925b98680602154ad32b13080a04871

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Wed, 17 Mar 2021 11:34:22 +0000 (14:34 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ied31bf3a3891e6809c3472c70598ac7448a31066

3 years agoMerge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1
Alexander Galazin [Wed, 17 Mar 2021 11:33:21 +0000 (14:33 +0300)]
Merge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1

Change-Id: If6077d356659193696b2e41c318b5bda2f5ca1d1

3 years agoAdd tests for standard multisample positions
Jari Komppa [Fri, 19 Feb 2021 12:59:04 +0000 (14:59 +0200)]
Add tests for standard multisample positions

This set of tests renders a triangle per multisample position
and then checks whether the correct colors can be found in
the samples.

New tests:
dEQP-VK.pipeline.multisample.standardsampleposition.*

Components: Vulkan
VK-GL-CTS issue: 2755

Change-Id: I79e941f330952b0473c978554f178c09bfc84af2

3 years agoPush constant overwrite tests
Ricardo Garcia [Thu, 25 Feb 2021 14:55:55 +0000 (15:55 +0100)]
Push constant overwrite tests

Add tests that update constant data ranges using multiple commands and
vary data values between draw or dispatch calls.

In addition, add a convenience function to create compute pipelines.
Many other tests use a similar custom function, but this commit does not
attempt to replace previous uses.

New tests:
dEQP-VK.pipeline.push_constant.*.overwrite

Components: Vulkan
VK-GL-CTS issue: 2805

Change-Id: I4358250940639a0812aeb81c51649ebb27c8bd8d

3 years agoTest large command buffers with many draw commands
Ricardo Garcia [Mon, 1 Mar 2021 13:59:22 +0000 (14:59 +0100)]
Test large command buffers with many draw commands

Test recording a large number of draw commands in primary and secondary
command buffers, making sure every command is recorded and executed
properly.

New tests:
dEQP-VK.api.command_buffers.record_many_draws_*

Components: Vulkan
VK-GL-CTS issue: 2813

Change-Id: Ife8957242fd5a0babc5e525f28a4014d46b29d3d

3 years agoTest barycentric coordinates in ray tracing hits
Ricardo Garcia [Tue, 2 Mar 2021 08:49:27 +0000 (09:49 +0100)]
Test barycentric coordinates in ray tracing hits

Add some tests to check the reported barycentric coordinates both in hit
attributes when ray tracing and also in ray queries have the expected
values and correspond to factors b and c in the barycentric coordinates
equation:

  p = a pa + b pb + c pc

New tests:
dEQP-VK.ray_tracing_pipeline.barycentric_coordinates.*
dEQP-VK.ray_query.barycentric_coordinates.*

Components: Vulkan
VK-GL-CTS issue: 2812

Change-Id: I1beba46045ea4efdfe7dab2318c331c4046d2d1d

3 years agoAdd missing mandatory features
Ricardo Garcia [Fri, 5 Mar 2021 11:49:13 +0000 (12:49 +0100)]
Add missing mandatory features

This commit fixes several missing mandatory feature checks:

* shaderSampledImageArrayDynamicIndexing was missing as mandatory when
  descriptorIndexing is supported.

* Ditto for shaderStorageBufferArrayDynamicIndexing.

* The ray tracing extensions were missing many mandatory features.

Affected tests:
dEQP-VK.info.device_mandatory_features

Components: Vulkan
VK-GL-CTS issue: 2829

Change-Id: I90896df608cdca228fb357b2feabc4deea393db2

3 years agoEnsure WSI colorspace has no effect on image contents
Vihanakangas [Mon, 23 Nov 2020 13:23:34 +0000 (15:23 +0200)]
Ensure WSI colorspace has no effect on image contents

This test makes sure that rendering is invariant
with regards to the swapchain colorspace.
Fixes validation errors on dEQP-VK.wsi.*.colorspace.* tests.

Affects:

dEQP-VK.wsi.*.colorspace.*

New tests:

dEQP-VK.wsi.*.colorspace_compare.*

Components: Vulkan

VK-GL-CTS issue: 1915

Change-Id: Ic8d4c52e182bbef73c1cfe85be9ea054545c86d8

3 years agoreset minSampleShading only with OpenGL Core 4.0+
Tapani Pälli [Wed, 3 Mar 2021 07:47:56 +0000 (09:47 +0200)]
reset minSampleShading only with OpenGL Core 4.0+

This fixes crashes seen with many tests when context state is
reset and gl.minSampleShading is NULL.

Affects: KHR-GL*

Components: OpenGL

VK-GL-CTS issue: 2827

Fixes: 327ee5674 ("Support GL 4.5 in various multisample tests")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I4b67a30264d4bdb6de8a5f7e811ae8bb8ee8a696

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Alexander Galazin [Tue, 16 Mar 2021 11:07:53 +0000 (14:07 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master

Change-Id: Id15497476682a03dd2b2fe4c0e5f9ea5d27d27e7

3 years agoUpdate Vulkan/GL Readme
Alexander Galazin [Mon, 22 Feb 2021 09:14:11 +0000 (10:14 +0100)]
Update Vulkan/GL Readme

Update the Readme files to point to the new
submission verifcation script

Components: Vulkan, OpenGL

Change-Id: I6fb35a383fcc49e543ae67822be22d744c5fcd9c
(cherry picked from commit 412f5a3363eb228ca1a63be337de172a2e622571)

3 years agoUpdate Vulkan/GL Readme
Alexander Galazin [Mon, 22 Feb 2021 09:14:11 +0000 (10:14 +0100)]
Update Vulkan/GL Readme

Update the Readme files to point to the new
submission verifcation script

Components: Vulkan, OpenGL

Change-Id: I6fb35a383fcc49e543ae67822be22d744c5fcd9c
(cherry picked from commit 412f5a3363eb228ca1a63be337de172a2e622571)

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master
Alexander Galazin [Tue, 16 Mar 2021 06:57:18 +0000 (09:57 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master

Change-Id: I49df5c172965f67acfc561b8055a6fe9dd4c75de

3 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Tue, 16 Mar 2021 06:16:52 +0000 (09:16 +0300)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: Ia707d071b963951d00f6836be3f24fd1a0877cca

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Mon, 15 Mar 2021 15:50:59 +0000 (18:50 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: I07fc25f375c0228279e54582fc909876a370d251

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Mon, 15 Mar 2021 14:58:34 +0000 (17:58 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: I78e06ea1256567bd761e1ffa5678338eb1f7aa85

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Mon, 15 Mar 2021 14:09:42 +0000 (17:09 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: I15d9b2b0dbaab175d891a824c190198bbcda1b20

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Mon, 15 Mar 2021 12:55:47 +0000 (15:55 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: Iccb63bb8842b2d3b8ae22b78853a0534500aebdf

3 years agoEnable validation for all custom devices
Ricardo Garcia [Fri, 5 Mar 2021 15:31:07 +0000 (16:31 +0100)]
Enable validation for all custom devices

This commit changes some tests that use custom devices so they rely on
the custom device helper functions to create these custom devices with
the validation layers enabled if requested from the command line.

In addition, some "createDevice" functions are renamed so a simple
search for "createDevice" only reports uses of the createDevice instance
interface method and RefUtil helper function.

The affected tests should only behave differently with validation
enabled. Running these tests without validation should not result in any
changes.

Affected tests:
dEQP-VK.api.buffer_marker.*
dEQP-VK.api.info.vulkan1p2.feature_bits_influence
dEQP-VK.draw.concurrent.compute_and_triangle_list
dEQP-VK.ray_tracing_pipeline.capture_replay.*
dEQP-VK.synchronization*.signal_order.*
dEQP-VK.synchronization.timeline_semaphore.*
dEQP-VK.synchronization2.timeline_semaphore.*

Components: Vulkan
VK-GL-CTS issue: 2835

Change-Id: I6e8028428faa69d92ab9a8a0e8ba25540d04810f

3 years agoRemove multiview requirement in extended dyn state tests
Ricardo Garcia [Fri, 5 Mar 2021 12:17:57 +0000 (13:17 +0100)]
Remove multiview requirement in extended dyn state tests

VK_KHR_multiview was wrongly being required for extended dynamic states
using several viewports, when the only needed check is to verify the
number of viewports does not exceed the maxViewports limit.

Affected tests:
dEQP-VK.pipeline.extended_dynamic_state.*2_viewports*
dEQP-VK.pipeline.extended_dynamic_state.*2_scissors*

Components: Vulkan
VK-GL-CTS issue: 2832

Change-Id: I72b2c09153ed2303b7d64bdd78c756ddfa838137

3 years agoFix recursion depth requirement in complexcontrolflow
Boris Zanin [Mon, 8 Mar 2021 10:25:12 +0000 (11:25 +0100)]
Fix recursion depth requirement in complexcontrolflow

Checks recursion depth required is supported
(i.e. is lower than maxRayRecursionDepth).
Also properly specifies maxPipelineRayRecursionDepth
in VkRayTracingPipelineCreateInfoKHR.

Updates tests:
 * dEQP-VK.ray_tracing_pipeline.complexcontrolflow.*.trace_ray.chit
 * dEQP-VK.ray_tracing_pipeline.complexcontrolflow.*.trace_ray.miss

Affects tests:
 * dEQP-VK.ray_tracing_pipeline.complexcontrolflow.*

Components: Vulkan

VK-GL-CTS issue: 2836

Change-Id: Ieb2854e3980ac729344a780dc4efaaf7a33c64a0

3 years agoCheck image extent support in watertightness tests
Ricardo Garcia [Tue, 9 Mar 2021 11:55:36 +0000 (12:55 +0100)]
Check image extent support in watertightness tests

"Closed fan" watertightness ray tracing tests may use 3D images with
large depth dimensions that go over the minimum value for the maximum
depth as required by the spec, so they need to check if such an extent
is supported.

Additionally, this commit fixes two other issues:

* The result verification logic was incorrect for cases with quality
  warnings (i.e. when the miss shader was executed).

* Output buffer memory invalidation triggered validation errors in some
  implementations due to not using VK_WHOLE_SIZE when attempting to
  invalidate the whole range.

Affected tests:
dEQP-VK.ray_tracing_pipeline.watertightness.*

Components: Vulkan
VK-GL-CTS issue: 2833

Change-Id: I607dd9d46f5212a71cf109a711e418ae05011b69

3 years agoRead deserealization size from stream
Boris Zanin [Mon, 8 Mar 2021 14:49:41 +0000 (15:49 +0100)]
Read deserealization size from stream

Deserialization should read deserialized data size
from serialized data stream, rather than use serialized
data size. To allow reading of this data from stream
command buffer recording should be completed and restarted.

Updates tests:
 * dEQP-VK.ray_tracing_pipeline.acceleration_structures.operations.serialization.*
 * dEQP-VK.ray_tracing_pipeline.capture_replay.acceleration_structures.serialization.*
 * dEQP-VK.ray_query.acceleration_structures.operations.*.serialization.*

Components: Framework, Vulkan

VK-GL-CTS issue: 2545

Change-Id: I460d82ae9ebfe8e43f24b4478154854a01491602

3 years agoFix flush/invalidate in mismatched_write_op tests
Graeme Leese [Thu, 25 Feb 2021 17:40:04 +0000 (17:40 +0000)]
Fix flush/invalidate in mismatched_write_op tests

The memory flush/invalidate logic was incorrect, causing memory updates
to be lost. Having access functions do invalidates makes it difficult to
reuse the code (because the accessor can only be used when no writes are
outstanding, but this is not obvious from the naming), so put these
operations explicitly in around the device commands that need them.

Components: Vulkan
VK-GL-CTS issue: 2817
Affects: dEQP-VK.image.mismatched_write_op.mismatched_vector_sizes.*

Change-Id: I594c6dd9911b2d2a21b2ba88e9570eb4fe09ebd4

3 years agoFix sync validation for mismatched_write_op tests
Graeme Leese [Thu, 25 Feb 2021 17:17:53 +0000 (17:17 +0000)]
Fix sync validation for mismatched_write_op tests

The pipeline stages and accesss bits were incorrect in some cases and
the validation layer was complaining about write-after-write hazards.

Components: Vulkan
VK-GL-CTS issue: 2817
Affects: dEQP-VK.image.mismatched_write_op.mismatched_vector_sizes.*

Change-Id: I254ab3b65342552d71fd3890da271e8586eb1fab

3 years agoCheck if image sample count supported by VkSampleCountFlags
Tapani Pälli [Tue, 2 Mar 2021 09:43:57 +0000 (11:43 +0200)]
Check if image sample count supported by VkSampleCountFlags

There might be limitations based on format, usage and sample count set.

VK-GL-CTS Issue: 2824

Components: Vulkan

Affects: dEQP-VK.synchronization.cross_instance.*multisample*

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I4702f7df809671f78183fc647d183d7838bf31c3