platform/upstream/VK-GL-CTS.git
2 years agoAllow GL_RGB9_E5 as a valid fbo format
Matthew Netsch [Tue, 22 Dec 2020 19:40:32 +0000 (01:10 +0530)]
Allow GL_RGB9_E5 as a valid fbo format

If GL_QCOM_render_shared_exponent is available then treat
GL_RGB9_E5 as a valid internal format for fbo. Also, allow
copy of RGB9_E5 pixel data.

Components: OpenGL
VK-GL-CTS Issue: 2898

Affects:
KHR-GLES3.packed_pixels.rectangle.rgb9_e5
KHR-GLES3.packed_pixels.pbo_rectangle.rgb9_e5
KHR-GLES3.packed_pixels.varied_rectangle.rgb9_e5

Change-Id: Ie57d74b9bbd11cf7ccca175813077c22405a0926
(cherry picked from commit db8e2899b1f0ab4677aa24af6fad4119f5fe1fa2)

2 years agoAdd GL_RGB9_E5 as renderable ext format in fbo tests
Mohankumar Nekkarakalaya [Thu, 19 Aug 2021 19:05:36 +0000 (12:05 -0700)]
Add GL_RGB9_E5 as renderable ext format in fbo tests

-If GL_QCOM_render_shared_exponent is supported then treat
GL_RGB9_E5 as a renderable format for fbo completeness tests

Components: OpenGL
VK-GL-CTS Issue: 3066

Affects:
dEQP-GLES3.functional.fbo.completeness.renderable.renderbuffer.color0.rgb9_e5
dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.rgb9_e5

Change-Id: I74566a5b56c7528c89ac97423c5b6f9207397c70
(cherry picked from commit d18b37f7319839e2be970a96fecdeb2cdb1db7e4)

2 years agoMerge branch 'vulkan-cts-1.2.5' into vulkan-cts-1.2.6
Peter Kohaut [Fri, 3 Sep 2021 10:20:36 +0000 (12:20 +0200)]
Merge branch 'vulkan-cts-1.2.5' into vulkan-cts-1.2.6

Change-Id: Ia705e141206a3751d4abc2d6eccd958d7e3f2f0e

2 years agoMerge branch 'vulkan-cts-1.2.4' into vulkan-cts-1.2.5
Peter Kohaut [Fri, 3 Sep 2021 07:33:02 +0000 (09:33 +0200)]
Merge branch 'vulkan-cts-1.2.4' into vulkan-cts-1.2.5

Change-Id: I952af5b744206c52b4161d8c1102b6a8c2a53f58

2 years agoMerge branch 'vulkan-cts-1.2.3' into vulkan-cts-1.2.4
Peter Kohaut [Thu, 2 Sep 2021 20:22:53 +0000 (22:22 +0200)]
Merge branch 'vulkan-cts-1.2.3' into vulkan-cts-1.2.4

Change-Id: Ica9ea69514cd36415ad89f4b34e8384b0523181c

2 years agoMerge remote-tracking branch 'origin/vulkan-cts-1.2.2' into vulkan-cts-1.2.3
Peter Kohaut [Thu, 2 Sep 2021 17:05:54 +0000 (19:05 +0200)]
Merge remote-tracking branch 'origin/vulkan-cts-1.2.2' into vulkan-cts-1.2.3

Change-Id: I3c5b289149d9f2601b5d5ab8986d41b3f33f8bab

2 years agoCorrect Vulkan multiview 'tesellation' test names
Alex Walters [Thu, 12 Aug 2021 13:12:55 +0000 (14:12 +0100)]
Correct Vulkan multiview 'tesellation' test names

Tests are renamed from 'tesellation' to 'tessellation' but are otherwise
unchanged.

Affects:

dEQP-VK.multiview*tessellation*

Components: Vulkan
Change-Id: I1686bb6fb8a0e85e201853602f840e03e847169d

2 years agoFix protected memory ssbo pipeline barrier use
Mike Byrne [Mon, 9 Aug 2021 11:40:07 +0000 (12:40 +0100)]
Fix protected memory ssbo pipeline barrier use

Incorrect stage flags are passed to vkCmdPipelineBarrier in the copy
buffer operation in the dEQP-VK.protected_memory.ssbo.ssbo_read.*

These tests were introduced in origin/vulkan-cts-1.1.0

Components: Vulkan

Affects:
dEQP-VK.protected_memory.ssbo.*

VK-GL-CTS Issue: 3041

Change-Id: Iccdb96fee30e32bf26dec1e26d65ea8d5600c384

2 years agoAdd missing vertexPipelineStoresAndAtomics checks in ray query tests
John Anthony [Wed, 18 Aug 2021 20:16:53 +0000 (22:16 +0200)]
Add missing vertexPipelineStoresAndAtomics checks in ray query tests

Affected tests:
dEQP-VK.ray_query.acceleration_structures.*.vertex_shader.*
dEQP-VK.ray_query.acceleration_structures.*.tess_control_shader.*
dEQP-VK.ray_query.acceleration_structures.*.tess_evaluation_shader.*
dEQP-VK.ray_query.acceleration_structures.*.geometry_shader.*
dEQP-VK.ray_query.ray_flags.vertex_shader.*
dEQP-VK.ray_query.ray_flags.tess_control_shader.*
dEQP-VK.ray_query.ray_flags.tess_evaluation_shader.*
dEQP-VK.ray_query.ray_flags.geometry_shader.*
dEQP-VK.ray_query.traversal_control.vertex_shader.*
dEQP-VK.ray_query.traversal_control.tess_control_shader.*
dEQP-VK.ray_query.traversal_control.tess_evaluation_shader.*
dEQP-VK.ray_query.traversal_control.geometry_shader.*

Components: Vulkan

VK-GL-CTS Issue: 3069

Change-Id: I49c37d292380fda47b113bf4fa14a6395f8e81a5

2 years agoFix error in build_apk.py
Ilkka Saarelainen [Thu, 12 Aug 2021 07:22:22 +0000 (10:22 +0300)]
Fix error in build_apk.py

A typo caused build_apk.py to fail if required Android build
tools were missing.

Components: framework

Change-Id: Ia55b95a9057a37152e5a4c91773b1eaa3abc0156

2 years agoFix partial_image_npot_diff_format_clear fail
Lowry Li (Arm Technology China) [Wed, 11 Aug 2021 10:14:41 +0000 (18:14 +0800)]
Fix partial_image_npot_diff_format_clear fail

The tests added in fffc9484834599de9eb5559205cec7cf0105379b /
VK-GL-CTS Issue: 2678 are missing a pipeline barrier between
the new clearing operation the following transfer operation
targeting the same resource.

Components: Vulkan

Affects:
dEQP-VK.api.copy_and_blit.*.image_to_image.simple_tests.
partial_image_npot_diff_format_clear

VK-GL-CTS issue: 3056

Change-Id: I3edf4d98e697e97c4b7934238cdbfc86f2d48632

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Thu, 12 Aug 2021 19:53:13 +0000 (21:53 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I8d78e920b4007ea7f47e66d64852693dfed22003

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Thu, 12 Aug 2021 18:56:51 +0000 (20:56 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: Id1af44b78cbe4ba82cc76c656e0a22421ac20073

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Thu, 12 Aug 2021 18:03:29 +0000 (20:03 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: I13ff1ac57c064dc46bbc7c555ba1fed07e04080c

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Thu, 12 Aug 2021 18:02:19 +0000 (20:02 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: Iab13500b9aaa9b6da0e99ea9d93fe9cabc66da33

2 years agoIncrease error threshold for some geometry shader tests
Iago Toral Quiroga [Mon, 2 Aug 2021 09:31:14 +0000 (11:31 +0200)]
Increase error threshold for some geometry shader tests

Components: Vulkan
VK-GL-CTS issue: 3034

Affected tests:
dEQP-VK.geometry.*

Change-Id: I5ed440019ab45f6f31787d199695630d06bb2a51

2 years agoFix variable pointer tests for geometry stages on tilers
Iago Toral Quiroga [Mon, 2 Aug 2021 07:33:49 +0000 (09:33 +0200)]
Fix variable pointer tests for geometry stages on tilers

On tilers we may execute any geometry stage more than once, not just
the vertex shader.

Components: Vulkan
VK-GL-CTS issue: 3033

Affected tests:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.graphics.writes_single_buffer_*

Change-Id: I3ee5db4aa8176d09b10720d7683338ef8e8a8098

2 years agoFix DRM modifier list tests
Ricardo Garcia [Thu, 29 Jul 2021 15:13:51 +0000 (17:13 +0200)]
Fix DRM modifier list tests

* dEQP-VK.drm_format_modifiers.list_modifiers.* tests now check every
  supported modifier instead of returning prematurely if any of the
  modifiers was not supported for the image usage flags the tests uses.

* dEQP-VK.drm_format_modifiers.create_list_modifiers.* tests check
  modifier compatibility first before attempting to use compatible
  modifier lists of different lengths. Test results no longer depend on
  the order of modifiers returned by the implementation and do not
  return NotSupported prematurely.

* dEQP-VK.drm_format_modifiers.export_import.* tests suffered from
  similar issues. They tried to detect which of the supported modifiers
  for a format met a list of requirements and returned early with
  NotSupported if any of them failed to match those requirements,
  instead of running the tests in all possible modifiers.

Affected tests:
dEQP-VK.drm_format_modifiers.*

Components: Vulkan
VK-GL-CTS issue: 3026

Change-Id: I4c6600b87f3c2b4b9b165fdc17988efe2e0cf670

3 years agoRelax protected heap allocation tests
Ari Suonpaa [Fri, 6 Aug 2021 12:08:21 +0000 (15:08 +0300)]
Relax protected heap allocation tests

Some implementations have limitations on protected heap
allocations, and these limitations cannot be queried
using the Vulkan API. This change allows an out-of-memory
to happen after a certain number of allocations to
compensate that.

VK-GL-CTS Issue: 3038

Affects:

dEQP-VK.memory.*allocation.*

Components: Vulkan
Change-Id: I3a34637c8c15eb8670613dce9b6e394a622a4c71

3 years agoFix transform_feedback.simple.multiquery* tests
Daniel Koch [Tue, 27 Jul 2021 21:14:02 +0000 (17:14 -0400)]
Fix transform_feedback.simple.multiquery* tests

Tests were using host query reset which may not be present pre-VK 1.2.
Change tests to use device query reset (there are other dedicated tests which test HOST_QUERY_RESET).

Components: Vulkan
VK-GL-CTS Issue: 2866

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

Change-Id: Ib8c943a53542f4e21167f6afb0005200043477c6

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Tue, 27 Jul 2021 11:34:05 +0000 (13:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I1e865999cbff46e84b9045400eb2dde830296094

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Tue, 27 Jul 2021 10:25:19 +0000 (12:25 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: I22fcd718aadfed74408323615cc4bf58618d979a

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Tue, 27 Jul 2021 09:29:33 +0000 (11:29 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: If23bb885846d42651d7ac77b375b6c44ea02fa93

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Tue, 27 Jul 2021 08:01:37 +0000 (10:01 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: If1bb9f63d56815c3ced2ac72d17d4e55ec090f39

3 years agoFix early destruction of VkPipelineLayout
Samuel Iglesias Gonsálvez [Thu, 15 Jul 2021 10:15:09 +0000 (12:15 +0200)]
Fix early destruction of VkPipelineLayout

Components: Vulkan
VK-GL-CTS issue: 3004

Affected:

    dEQP-VK.sparse_resources.shader_intrinsics.*

Change-Id: Id5508fac89961c5bb934005257d2caa26d32f2dd
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
3 years agoFix validation errors in AHB tests
Ari Suonpaa [Wed, 9 Sep 2020 11:27:26 +0000 (14:27 +0300)]
Fix validation errors in AHB tests

AHB protected memory tests were also removed as the test
tried to use protected memory without creating a device
and queue that would support protected operations.

VK-GL-CTS Issue: 2508

Affects:

dEQP-VK.api.external.memory.android_hardware_buffer.*

Components: Vulkan
Change-Id: I307e7450d06d20b6497f2a529e5724ae0538e5a9

3 years agoClean ExternalMemoryUtil
Piotr Byszewski [Thu, 9 Apr 2020 11:41:09 +0000 (13:41 +0200)]
Clean ExternalMemoryUtil

This change separates choosing of memory type from
allocateExportableMemory utility function. This makes
use of this functions more clear.
Previous implementation needed to be done ASAP and
involved passing of non-const reference to
allocateExportableMemory which was then filled.
This workaround made code unnecessarily hard to follow.

Components: Vulkan

VK-GL-CTS issue: 587

Affects:
dEQP-VK.api.external.memory.*
dEQP-VK.synchronization.signal_order.*
dEQP-VK.synchronization.cross_instance.*

Change-Id: I781388db390f13c7c03785dd0ae34ae0128ec31c

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Fri, 16 Jul 2021 07:01:36 +0000 (09:01 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I73e4fbe8f154f15a77498121181c6a48028203fe

3 years agoRemove tests with too many overlapping instances in the accelleration structure
Sławomir Cygan [Thu, 15 Jul 2021 13:22:26 +0000 (15:22 +0200)]
Remove tests with too many overlapping instances in the accelleration structure

These tests generate a grid of random triangles and assign them to the large
number of instances in the acceleration structure. Because of the randomness,
all instances overlap with each other and the accelleration structure is extremely
slow to trace - as each ray must traverse through all instances.

This change removes some tests cases with 65536 instances and tests cases with
1048576 instances to avoid device timeouts.

The tests apply only to implementations with host accelleration structure builds
supported.

Components: Vulkan

VK-GL-CTS Issue: 3005

Change-Id: I94bcde596cd097672cf8e00c6fe018328998cb37
Affects: dEQP-VK.ray_tracing_pipeline.build.*

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Thu, 8 Jul 2021 19:01:12 +0000 (21:01 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I8cfb44dac31df4a46280d3c050e561c5f9c84538

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Thu, 8 Jul 2021 18:08:17 +0000 (20:08 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: I41d5f00d649218e1418c13591f50885858624198

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Thu, 8 Jul 2021 17:09:43 +0000 (19:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: I166b558acc75b2d9259620be5fb8ba89eaa10841

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Thu, 8 Jul 2021 16:27:33 +0000 (18:27 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: Ic61d3218b466b8fd2c50127867a0cfdb77c07637

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Thu, 8 Jul 2021 15:37:58 +0000 (17:37 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I7c0abe6efdeab69b5928cc0e67a6365f15b1e5c5

3 years agoCall computeFixedPointError only for fixed point case
Mohankumar Nekkarakalaya [Wed, 7 Jul 2021 23:00:03 +0000 (16:00 -0700)]
Call computeFixedPointError only for fixed point case

Calling computeFixedPointError for integer case (numAccurateBits=32)
is incorrect and causes crash.
Added assert to make sure numAccurateBits is in legal range.

Affected tests: dEQP-VK.sparse_resources.image_sparse_residency.*

Components: Vulkan

VK-GL-CTS issue: 2994

Change-Id: Ib357cbbbda0f7980ec2d7115053cabc6825a18d3

3 years agoAvoid overflowing arrays in GLSL atomic tests
Iago Toral Quiroga [Tue, 6 Jul 2021 09:10:04 +0000 (11:10 +0200)]
Avoid overflowing arrays in GLSL atomic tests

Tilers may need to execute vertex pipeline stages more than once,
leading to additional shader invocations. This is a problem for atomic
tests, since their result depends on the number of shader invocations
executed.

This is already handled properly for vertex shaders but not for other
vertex pipeline stages.

Affected tests:
dEQP-VK.glsl.atomic_operations.*

Components: Vulkan
VK-GL-CTS issue: 2987

Co-authored-by: Ricardo Garcia <rgarcia@igalia.com>
Change-Id: Iab08e3fb2ef40fc29dcf073817e5fd5dd49e7875

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Thu, 1 Jul 2021 15:12:58 +0000 (17:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: Iffe181f31ff661ead2142e7e7f0abb314bf1a2e1

3 years agoFix semaphore leak in image atomic operations test
Sławomir Cygan [Fri, 25 Jun 2021 14:08:23 +0000 (16:08 +0200)]
Fix semaphore leak in image atomic operations test

The class 'Image', being base class for `SparseImage` class needs to be
marked as virtual, so objects of SparseImage type can be owned and
destroyed through a pointer of `Image` type.  Without that the implicit
destructor of `SparseImage` class is never called.

As SparseImage class has a semaphore member, this fixes the
semaphore VK object leak.

Components: Vulkan

VK-GL-CTS Issue: 2981

Change-Id: Ice24f7018cf9144f4c1adbb8987b730d5f1ca2aa
Affects: dEQP-VK.image.atomic_operations.*

3 years agoFix use of binary semaphore in signaled state
Lars-Ivar Hesselberg Simonsen [Fri, 23 Apr 2021 10:04:44 +0000 (12:04 +0200)]
Fix use of binary semaphore in signaled state

Vulkan spec specifies that binary semaphore waits and signals should
occur in discrete 1:1 pairs.

This change ensures that the binary semaphore signaled by
synchronizationWrapper[SECOND] is waited on before being used again,
which resolves the corresponding validation layer error.

In addition, the change fixes an issue where the second submission pair
did not correctly swap semaphore info.

Components: Vulkan

Affects:
dEQP-VK.synchronization.basic.binary_semaphore.multi_queue
dEQP-VK.synchronization.basic.binary_semaphore.multi_queue_typed
dEQP-VK.synchronization.basic.timeline_semaphore.multi_queue

VK-GL-CTS Issue: 2910

Change-Id: Id2fb2211a43150e3acb5c07dd6c205c7a42296d5
(cherry picked from commit a017db3c0d1fbf89f30253254d57fb869f57a430)

3 years agoFix wait semaphore count value
Samuel Iglesias Gonsálvez [Tue, 1 Jun 2021 10:46:49 +0000 (12:46 +0200)]
Fix wait semaphore count value

Components: Vulkan
VK-GL-CTS issue: 2949
Fixes: a47665a6e "Generalize synchronization tests"

Affected tests:

   dEQP-VK.synchronization.op.single_queue.binary_semaphore.*

Change-Id: I14bb0d79b67e444b20683a766b769ce3a94a3222
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
(cherry picked from commit bfe111789be62a974f403d452073ba30b24e5632)

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Tue, 29 Jun 2021 07:24:05 +0000 (09:24 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I820d94d27c30ea492dd04637b805dd78db2353d8

3 years agoProperly enable Sample Shading in Fragment Shading Rate tests
Sebastiano Cucinotta [Mon, 14 Jun 2021 15:15:40 +0000 (17:15 +0200)]
Properly enable Sample Shading in Fragment Shading Rate tests

Vulkan spec states:

> Sample shading is enabled for a graphics pipeline:
>
> * If the interface of the fragment shader entry point of the graphics
>   pipeline includes an input variable decorated with SampleId or
>   SamplePosition. In this case minSampleShadingFactor takes the value
>   1.0.
> * Else if the sampleShadingEnable member of the
>   VkPipelineMultisampleStateCreateInfo structure specified when
>   creating the graphics pipeline is set to VK_TRUE. In this case
>   minSampleShadingFactor takes the value of
>   VkPipelineMultisampleStateCreateInfo::minSampleShading.
>
> Otherwise, sample shading is considered disabled.

This change ensures that sample shading is properly enabled in the
Fragment Shading Rate tests relying on it by using gl_SampleId.

Components: Vulkan

Affects:
dEQP-VK.fragment_shading_rate.sampleshadinginput.*

VK-GL-CTS Issue: 2966

Change-Id: I7fad0ed7694a2d26ef7db9ea268fa5d6f93264a6

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Wed, 16 Jun 2021 08:16:56 +0000 (10:16 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I2e92c964d1df15e5abfc47567f8a914892fc7cd9

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Wed, 16 Jun 2021 07:43:06 +0000 (09:43 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: I01d6cedef0b807be928ba68d3aab64fd3d045d8d

3 years agoFix dEQP-VK.info.device_extensions not working
Ricardo Garcia [Wed, 9 Jun 2021 11:28:55 +0000 (13:28 +0200)]
Fix dEQP-VK.info.device_extensions not working

The test is using the list of extension dependencies for instances
instead of devices, so it's actually not checking anything in most
cases.

Affected tests:
dEQP-VK.info.device_extensions

Components: Vulkan
VK-GL-CTS issue: 2959

Change-Id: I8ee2ea10f98e1dd45590edc2b5cc8e0c3e21890b

3 years agoSPIR-V 1.4 test fixes
Ricardo Garcia [Wed, 9 Jun 2021 10:11:56 +0000 (12:11 +0200)]
SPIR-V 1.4 test fixes

This commit fixes a couple of SPIR-V 1.4 tests that had inconsistent
requirements in the Amber script and in the CTS side. In one case we're
dropping the requirement from Amber and in the other one we're adding
the requirement to CTS.

Affected tests:
dEQP-VK.spirv_assembly.instruction.spirv1p4.opptrnotequal.variable_pointers_vars_wg_not_equal
dEQP-VK.spirv_assembly.instruction.spirv1p4.hlsl_functionality1.member_decorate_string

Components: Vulkan
VK-GL-CTS issue: 2958

Change-Id: If1e58bc028ce3756623a241bb259024ef077c815

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Wed, 16 Jun 2021 06:52:23 +0000 (08:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: I89ac6a1c9b0b7d908be65033c47371f60cc880cb

3 years agoDo not exceed heap size when allocating memory
Slawomir Cygan [Wed, 19 May 2021 15:18:48 +0000 (17:18 +0200)]
Do not exceed heap size when allocating memory

It is invalid to make larger allocations than heap size.

Components: Vulkan

VK-GL-CTS Issue: 2927

Change-Id: I738356254d95a152a2bb89d711eb6b3f047b405c
Affects: dEQP-VK.memory.mapping

3 years agoOptimize the AS build tests to not use host uncached memory
Slawomir Cygan [Tue, 11 May 2021 14:53:20 +0000 (16:53 +0200)]
Optimize the AS build tests to not use host uncached memory

Use userspace host memory for scratch buffer (instead mapped device memory)
and try using HOST_CACHED memory (if supported) for the accelleration structure.

Components: Vulkan

VK-GL-CTS Issue: 2922

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

Change-Id: I7592c3f93f2e10766cd1276f37ca51924e1cc16f

3 years agoAdd missing cull flags when counting intersections of rays with triangle-based cubes
Sławomir Cygan [Fri, 4 Jun 2021 15:49:38 +0000 (17:49 +0200)]
Add missing cull flags when counting intersections of rays with triangle-based cubes

Add a cull flags, so each convex geometry is counted once, instead of twice.

Components: Vulkan

VK-GL-CTS Issue: 2890

Affects:
    dEQP-VK.ray_tracing_pipeline.misc.*stress*
    dEQP-VK.ray_tracing_pipeline.misc.cullmask*
    dEQP-VK.ray_tracing_pipeline.misc.mixedPrimTL

Change-Id: Ie2e74149be8bb710c7ae3afb77f5854dca247aca

3 years agoRevert "Move the hit counting from any hit to closest hit shader stage"
Slawomir Cygan [Fri, 4 Jun 2021 15:45:39 +0000 (15:45 +0000)]
Revert "Move the hit counting from any hit to closest hit shader stage"

The problem with this test was in cull flags, rather than counting
in 'any hit' shader stage.

This reverts commit 2f33c7beac25308ef85a1856032d7a5936197f83.

VK-GL-CTS Issue: 2890

Change-Id: I066fac55a80ff4f4a93748425517785df8777d06
Affects: dEQP-VK.ray_tracing_pipeline.misc.*stress*

3 years agoAllow Vulkan CTS 1.2.6.2
Alexander Galazin [Thu, 3 Jun 2021 11:57:54 +0000 (13:57 +0200)]
Allow Vulkan CTS 1.2.6.2

Affects: dEQP-VK.api.driver_properties.properties

Components: Vulkan

Change-Id: Ie6657c70c6a1c51911361570977dd2fb205bd6c1

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Thu, 3 Jun 2021 15:15:02 +0000 (17:15 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: Id8117502d12cca36e3a414da3df7b8a3bb661cf5

3 years agoFix several issues in swapchain tests
Ricardo Garcia [Fri, 28 May 2021 11:53:56 +0000 (13:53 +0200)]
Fix several issues in swapchain tests

This commit fixes the following issues found in the swapchain tests:

- The initial image layout in some render passes did not match the
  actual image layout when starting the render pass.

- image_swapchain_create_info tests were using VK_KHR_bind_memory2
  functions without activating the extension on the device or making
  sure it was core in the used Vulkan API version.

- Many devices were being created with the wrong instance, using the
  context instance instead of the custom instance created for the tests.

- Several tests using VK_SHARING_MODE_CONCURRENT did not check for the
  availability of two queues or were always using one, which is invalid.

- VkDeviceGroupSwapchainCreateInfoKHR had a wrong sType.

- Swapchain resize tests were calling vkBeginCommandBuffer() on active
  command buffers without waiting for them to complete execution.

- Typos and other minor issues.

Affected tests:
dEQP-VK.wsi.*.swapchain.*

Components: Vulkan
VK-GL-CTS issue: 2941

Change-Id: I54d5f46cbcb76617260439a59bf3aef4028309bb

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Fri, 28 May 2021 08:37:34 +0000 (10:37 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: Ia66e6fb7a5444ffd1f1a5f14ef456c5129e0fd8f

3 years agoFix surfaceless platform for Android
Paul Thomson [Tue, 18 May 2021 10:54:54 +0000 (11:54 +0100)]
Fix surfaceless platform for Android

Fix Vulkan library path on Android and fix config selection when
glu::RenderConfig::DONT_CARE is used.

Affected tests:
dEQP-VK.*

Components: Framework
Change-Id: I8809dd691e144223991a693aa9b90c03cd829a63

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Wed, 26 May 2021 10:03:17 +0000 (12:03 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I693041c49bff85c924472119584f938c958ea7eb

3 years agoAllow false positive hits from build-in AABBs intersector
Slawomir Cygan [Wed, 19 May 2021 16:04:58 +0000 (18:04 +0200)]
Allow false positive hits from build-in AABBs intersector

This extends the fix from 7ff1f9cd to 'mixed' tests, which
also use AABBs.

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.*mix*

Change-Id: Ia962992df866b68f84714dcb6429a1a90499d9b6

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Wed, 26 May 2021 09:15:08 +0000 (11:15 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: I5a38303ad269d39786584512a105e0e4b636eca1

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Wed, 26 May 2021 08:45:36 +0000 (10:45 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: I2182f671aa88657e150c9d987713b93920377b23

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Wed, 26 May 2021 07:43:38 +0000 (09:43 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: I6a05c3d94da3f1f6397b029997d6d43db2439548

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Wed, 26 May 2021 07:01:29 +0000 (09:01 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: Ib9e1ec8639e95a5bda7c361e1db102b5f4f94194

3 years agoFixes ycbcr copy tests using NaNs
Matthew Netsch [Fri, 26 Feb 2021 19:51:41 +0000 (11:51 -0800)]
Fixes ycbcr copy tests using NaNs

Removes NaNs from the source images

Components: Vulkan
VK-GL-CTS issue: 2772

Affects:
dEQP-VK.ycbcr.copy.*

Change-Id: I52d279633e081ecce0ef93681c4d199296de6107

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Fri, 21 May 2021 13:36:11 +0000 (15:36 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: If63af4526f72fc1f214b60c4c9d891718bf2b440

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Fri, 21 May 2021 12:12:54 +0000 (14:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: I768331416f61a0a76c6bff504e0fedd545080f22

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Fri, 21 May 2021 11:34:48 +0000 (13:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: I9ac48fcdfe6e253139ccde50371b9dbfa31ce437

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Fri, 21 May 2021 10:05:50 +0000 (12:05 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: I9a085c6867ee119951a839b0d5eecb7fcf351029

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Fri, 21 May 2021 09:18:08 +0000 (11:18 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I575ea750c7a89ec9f8306537a4bc3f7fbb64a619

3 years agoRevert "Remove too long ray_tracing.build tests"
Slawomir Cygan [Thu, 13 May 2021 12:00:14 +0000 (12:00 +0000)]
Revert "Remove too long ray_tracing.build tests"

This reverts commit 6e14c25f5d049cb0dadebdd8a48392721b8a4d0b.

This reinstates long ray_tracing.build tests

VK-GL-CTS Issue: 2896

Components: Vulkan

Change-Id: I1b0ecaa3eeb63f5ca82d7bffe790979e21d08b7c
Affects: dEQP-VK.ray_tracing_pipeline.build.*

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Thu, 13 May 2021 18:24:40 +0000 (20:24 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: Ice572c5618871869c8dfea2d78f9d02b8125fc9c

3 years agoFix inconsistent ray payloads in RT barrier tests
Ricardo Garcia [Fri, 30 Apr 2021 08:27:31 +0000 (10:27 +0200)]
Fix inconsistent ray payloads in RT barrier tests

Ray payload declarations (outgoing and incoming) were not consistent
across all ray shader stages in the ray tracing pipeline barrier tests.

In addition, this commit fixes payload and callable data names to make
it clear they are not used.

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

VK-GL-CTS issue: 2900
Components: Vulkan

Change-Id: If764cf3cde9effb5868a7c03a0b2200cf9d90cb8

3 years agoFixes image sparse tests
Matthew Netsch [Thu, 6 May 2021 19:30:22 +0000 (15:30 -0400)]
Fixes image sparse tests

Tests use sparseImageLoadARB in shader
but not checking for sparse_residency

Components: Vulkan
VK-GL-CTS Issue: 2913

Affects:
dEQP-VK.image.mismatched_formats.sparse_image_read*

Change-Id: I6896c7cec530a69be8ea172205d9155ff71873f9

3 years agoFix crash issue when AHB extension is not supported
Yuxiang Qian [Fri, 30 Apr 2021 03:22:04 +0000 (03:22 +0000)]
Fix crash issue when AHB extension is not supported

The Ahb test doesn't check if the vulkan extension
VK_ANDROID_external_memory_android_hardware_buffer is supported and
called AHB function directly, then it crashes when the extension is not
supported.
This patch will let the test first check if this extension is supported.

Affects:

dEQP-VK.draw.ahb.*

Components: Vulkan

VK-GL-CTS issue: 2915

Change-Id: Id470caef3e034f10d08cfa3bad6e9ec705104b53

3 years agoFixes sparse image padding tests
Matthew Netsch [Fri, 7 May 2021 15:40:31 +0000 (11:40 -0400)]
Fixes sparse image padding tests

Tests were attempting to verify the
values inside the padding X bits of
formats like 10x6, where spec says
they are undefined.

Components: Vulkan
VK-GL-CTS Issue: 2916

Affects:
dEQP-VK.sparse_resources.image_sparse_binding.2d*

Change-Id: Ic785fba111ecebb5a030673642b78872c404d925

3 years agoFixes for robust buffer with variable pointer tests
Ricardo Garcia [Tue, 4 May 2021 08:09:55 +0000 (10:09 +0200)]
Fixes for robust buffer with variable pointer tests

This commit fixes several issues with robust buffer access with variable
pointers tests:

* The variable pointer tests were checking support for the
  variablePointersStorageBuffer feature but they weren't actually
  activating the feature when creating the robust buffer access device.

* Support checks were being done at instance creation time instead of
  using the proper checkSupport method.

* In-bound checks for 64-bit format accesses were only checking 4 out of
  every 8 bytes in the buffer.

* The verification routines were not taking into account 64-bit
  nonatomic accesses could be legally split into two 32-bit accesses
  that could be checked independently.

* The possibility of satisfying a (0,0,0,x) pattern in output data was
  not being checked correctly for 64-bit formats, always using 32-bit
  vectors and values.

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

Components: Vulkan
VK-GL-CTS issue: 2908

Change-Id: I85aeb085cb31d63b70acec08551c53fcc7d2be3c

3 years agoFixes fragment density map tests
Matthew Netsch [Fri, 23 Apr 2021 15:40:52 +0000 (11:40 -0400)]
Fixes fragment density map tests

Multiview extension struct being passed to
render pass 2 is not valid. Need to use
viewMask in the render pass 2 structs instead.

Components: Vulkan
VK-GL-CTS Issue: 2899

Affects:
dEQP-VK.renderpass2.fragment_density_map.*

Change-Id: Ieedaacae4fe7ba6d3c222610d96f1785fa01719a

3 years agoSync master and vulkan-cts-1.2.6 headers
Alexander Galazin [Fri, 23 Apr 2021 06:54:50 +0000 (09:54 +0300)]
Sync master and vulkan-cts-1.2.6 headers

Components: Vulkan

Change-Id: I7865f441d2d987f8126e1e8542a494c90fe5b45c

3 years agoAllow Vulkan CTS 1.2.6.1
Alexander Galazin [Fri, 23 Apr 2021 05:39:18 +0000 (08:39 +0300)]
Allow Vulkan CTS 1.2.6.1

Affects: dEQP-VK.api.driver_properties.properties

Components: Vulkan

Change-Id: I40bad2fda3a901a164b5e9e738e27d39776f028c

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Alexander Galazin [Fri, 23 Apr 2021 05:24:16 +0000 (08:24 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I558d95e4d43099527b53f45a6aef6e0c66d93fc4

3 years agoRemove too long ray_tracing.build tests
Sławomir Cygan [Mon, 19 Apr 2021 14:22:35 +0000 (16:22 +0200)]
Remove too long ray_tracing.build tests

The tests have too large runtime (up to 1h20m per
single test case) due to large AS being built on the
host.

VK-GL-CTS Issue: 2896

Components: Vulkan

Affects: dEQP-VK.ray_tracing_pipeline.build.*

Change-Id: Ib298b18967ed76d79bd150ac53d90d36332adc60

3 years agoAdd new tests for VK_EXT_extended_dynamic_state2
Vikram Kushwaha [Thu, 1 Apr 2021 23:29:39 +0000 (16:29 -0700)]
Add new tests for VK_EXT_extended_dynamic_state2

Components: Vulkan

New Tests:

dEQP-VK.pipeline.extended_dynamic_state.cmd_buffer_start.depth_bias_enable
dEQP-VK.pipeline.extended_dynamic_state.cmd_buffer_start.depth_bias_disable
dEQP-VK.pipeline.extended_dynamic_state.before_draw.depth_bias_enable
dEQP-VK.pipeline.extended_dynamic_state.before_draw.depth_bias_disable
dEQP-VK.pipeline.extended_dynamic_state.between_pipelines.depth_bias_enable
dEQP-VK.pipeline.extended_dynamic_state.between_pipelines.depth_bias_disable
dEQP-VK.pipeline.extended_dynamic_state.after_pipelines.depth_bias_enable
dEQP-VK.pipeline.extended_dynamic_state.after_pipelines.depth_bias_disable
dEQP-VK.pipeline.extended_dynamic_state.before_good_static.depth_bias_enable
dEQP-VK.pipeline.extended_dynamic_state.before_good_static.depth_bias_disable
dEQP-VK.pipeline.extended_dynamic_state.two_draws_dynamic.depth_bias_enable
dEQP-VK.pipeline.extended_dynamic_state.two_draws_dynamic.depth_bias_disable
dEQP-VK.pipeline.extended_dynamic_state.two_draws_static.depth_bias_enable
dEQP-VK.pipeline.extended_dynamic_state.two_draws_static.depth_bias_disable
dEQP-VK.pipeline.extended_dynamic_state.cmd_buffer_start.enable_raster
dEQP-VK.pipeline.extended_dynamic_state.cmd_buffer_start.disable_raster
dEQP-VK.pipeline.extended_dynamic_state.before_draw.enable_raster
dEQP-VK.pipeline.extended_dynamic_state.before_draw.disable_raster
dEQP-VK.pipeline.extended_dynamic_state.between_pipelines.enable_raster
dEQP-VK.pipeline.extended_dynamic_state.between_pipelines.disable_raster
dEQP-VK.pipeline.extended_dynamic_state.after_pipelines.enable_raster
dEQP-VK.pipeline.extended_dynamic_state.after_pipelines.disable_raster
dEQP-VK.pipeline.extended_dynamic_state.before_good_static.enable_raster
dEQP-VK.pipeline.extended_dynamic_state.before_good_static.disable_raster
dEQP-VK.pipeline.extended_dynamic_state.two_draws_dynamic.enable_raster
dEQP-VK.pipeline.extended_dynamic_state.two_draws_dynamic.disable_raster
dEQP-VK.pipeline.extended_dynamic_state.two_draws_static.enable_raster
dEQP-VK.pipeline.extended_dynamic_state.two_draws_static.disable_raster
dEQP-VK.pipeline.extended_dynamic_state.cmd_buffer_start.logic_op_or
dEQP-VK.pipeline.extended_dynamic_state.before_draw.logic_op_or
dEQP-VK.pipeline.extended_dynamic_state.between_pipelines.logic_op_or
dEQP-VK.pipeline.extended_dynamic_state.after_pipelines.logic_op_or
dEQP-VK.pipeline.extended_dynamic_state.before_good_static.logic_op_or
dEQP-VK.pipeline.extended_dynamic_state.two_draws_dynamic.logic_op_or
dEQP-VK.pipeline.extended_dynamic_state.two_draws_static.logic_op_or
dEQP-VK.pipeline.extended_dynamic_state.cmd_buffer_start.prim_restart_enable
dEQP-VK.pipeline.extended_dynamic_state.before_draw.prim_restart_enable
dEQP-VK.pipeline.extended_dynamic_state.between_pipelines.prim_restart_enable
dEQP-VK.pipeline.extended_dynamic_state.after_pipelines.prim_restart_enable
dEQP-VK.pipeline.extended_dynamic_state.before_good_static.prim_restart_enable
dEQP-VK.pipeline.extended_dynamic_state.two_draws_dynamic.prim_restart_enable
dEQP-VK.pipeline.extended_dynamic_state.two_draws_static.prim_restart_enable
dEQP-VK.pipeline.extended_dynamic_state.cmd_buffer_start.patch_control_points
dEQP-VK.pipeline.extended_dynamic_state.before_draw.patch_control_points
dEQP-VK.pipeline.extended_dynamic_state.between_pipelines.patch_control_points
dEQP-VK.pipeline.extended_dynamic_state.after_pipelines.patch_control_points
dEQP-VK.pipeline.extended_dynamic_state.before_good_static.patch_control_points
dEQP-VK.pipeline.extended_dynamic_state.two_draws_dynamic.patch_control_points
dEQP-VK.pipeline.extended_dynamic_state.two_draws_static.patch_control_points

Change-Id: I0c95f38c90bb411ea6e801885d11fbd931fdbe84
(cherry picked from commit 03816ca23aa419f73d87ee5830a5bf9f903bc226)

3 years agoVulkan CTS coverage for VK_EXT_ycbcr_2plane_444_formats
Piers Daniell [Fri, 12 Mar 2021 23:22:49 +0000 (16:22 -0700)]
Vulkan CTS coverage for VK_EXT_ycbcr_2plane_444_formats

This extension adds a few new 2-plane 444 YCbCr formats:
VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT
VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT
VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT
VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT

This CL extends existing YCbCr coverage to include these new formats.
In most cases the tests leverage vkGetPhysicalDeviceImageFormatProperties
to determine whether the format is supported and what image properties
it supports.

New tests:

dEQP-VK.*2plane_444*

Affects:

dEQP-VK.api.info.format_properties.*
dEQP-VK.api.info.image_format_properties.*
dEQP-VK.api.info.image_format_properties2.*
dEQP-VK.sparse_resources.*
dEQP-VK.ycbcr.*
dEQP-VK.protected_memory.interaction.ycbcr.*

Change-Id: I7b86ea1db14a953213e5277e87f274efb794d350
Components: Vulkan
(cherry picked from commit 81cc90f3eff3e224bb7c862c67a5a1b7ed6a9148)
(cherry picked from commit 5ec7dba1fbcf14b8dacdf47b9c715b9a22f6b897)

3 years agoAdd missing memory barrier between device transfer write and host read
Sławomir Cygan [Fri, 16 Apr 2021 08:51:36 +0000 (10:51 +0200)]
Add missing memory barrier between device transfer write and host read

The tests are missing a barrier between buffer being written by transfer operation
on device and reading the buffer contents on host.

Some tests were not missing this barrier, but the access flags were not reflecting
the dependency.

Components: Vulkan

VK-GL-CTS Issue: 2894

Affects:
dEQP-VK.ray_query.*
dEQP-VK.ray_tracing.*

Change-Id: I3e90e53f7db2a885805bd95d5f6033468ff8a927

3 years agoMove the hit counting from any hit to closest hit shader stage
Slawomir Cygan [Thu, 15 Apr 2021 15:20:21 +0000 (17:20 +0200)]
Move the hit counting from any hit to closest hit shader stage

Fix the counting of ray hits by moving it from any hit to closest hit shader,
as any hit shader may execute multiple times per geometry - what may happen
because triangle primitives are arranged into grid of cubes.

VK-GL-CTS Issue: 2890

Affects: dEQP-VK.ray_tracing_pipeline.misc.*stress*

Change-Id: Id7e10181d15f99685c2997003dd579ab735dc4ee
Components: Vulkan

3 years agoUse actual pipeline recursion depth when computing stack size
Slawomir Cygan [Fri, 9 Apr 2021 13:48:51 +0000 (15:48 +0200)]
Use actual pipeline recursion depth when computing stack size

Use the maximum recursion depth as set in the used pipeline,
rather than the maximum recursion depth supported by a physical
device to avoid overflowing uint32 when computing the dynamic
stack size and/or creating exceptionally large stack, not needed by
the pipeline used in this test.

Components: Vulkan

Affects: dEQP-VK.ray_tracing_pipeline.misc.callableshaderstress*

VK-GL-CTS Issue: 2880

Change-Id: Ia4feee82099d34300c70af8eab13245d29d037d9

3 years agoTests for VK_EXT_color_write_enable
Sharif Elcott [Fri, 26 Feb 2021 07:44:56 +0000 (16:44 +0900)]
Tests for VK_EXT_color_write_enable

Tests new pipeline state pColorWriteEnables, in new struct
VkPipelineColorWriteCreateInfoEXT, chained off of
VkPipelineColorBlendStateCreateInfo. Also the corresponding new dynamic
state VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT and
vkCmdSetColorWriteEnableEXT.

New tests:

dEQP-VK.pipeline.color_write_enable.*

Components: Vulkan
VK-GL-CTS issue: 2823

Change-Id: I07e6d47e647b319b14e6a50d2feb2700b2bab24e
(cherry picked from commit dcd384bb52a4ac8fc68d52f4a82f14941ba5b277)
(cherry picked from commit 520a31980be30c559a55af8985194be5028cef18)

3 years agoTests for VK_EXT_vertex_input_dynamic_state
Piers Daniell [Tue, 6 Oct 2020 22:06:46 +0000 (16:06 -0600)]
Tests for VK_EXT_vertex_input_dynamic_state

This CL expands the existing dEQP-VK.pipeline.extended_dynamic_state.*
tests to also include coverage for the vertex input pipeline state
being dynamic. The new vertex_input tests utilize the same
extended_dynamic_state test framework which verifies all combinations
of setting the dynamic state before and after the static pipeline
state works correctly.

New tests:

dEQP-VK.pipeline.extended_dynamic_state.*.vertex_input

Affects:

dEQP-VK.pipeline.extended_dynamic_state.*

Components: Vulkan

VK-GL-CTS issue: 2610

Change-Id: I669f60ddec743571d9e3eff1120f0112a829ecb7
(cherry picked from commit 92aa842b6fd13ba0fdfea9a0fe07577816815d31)
(cherry picked from commit 416ab7627b21e1938b88045f6d4a79b3c2fe8971)

3 years agoAdd VK_NV_inherited_viewport_scissor tests
David Zhao Akeley [Tue, 16 Mar 2021 22:24:46 +0000 (15:24 -0700)]
Add VK_NV_inherited_viewport_scissor tests

Components: Vulkan AOSP

New tests:

dEQP-VK.dynamic_state.inheritance.baseline
dEQP-VK.dynamic_state.inheritance.primary
dEQP-VK.dynamic_state.inheritance.secondary
dEQP-VK.dynamic_state.inheritance.split
dEQP-VK.dynamic_state.inheritance.primary_with_count
dEQP-VK.dynamic_state.inheritance.secondary_with_count

Change-Id: I39177c2e8b58c3ff25028ddcd8fca330aac25a9c
(cherry picked from commit 5a05fa25b8df2d807f59ef3f5561706539439f27)
(cherry picked from commit 2ddddcba017b028ccd655f7d9ec715d3b56ad9db)

3 years agoReduce the number of RayQueryExt objects allocated in shader
Sławomir Cygan [Thu, 15 Apr 2021 13:22:56 +0000 (15:22 +0200)]
Reduce the number of RayQueryExt objects allocated in shader

This reduces number of RayQueryExt object allocated simultanously
in shader, to avoid running out of memory of local variables.

Components: Vulkan

VK-GL-CTS Issue: 2889

Change-Id: I16ce02af52af6ee0b10a3cf382d132b32f3cf40a
Affects: dEQP-VK.ray_query.misc.dynamic_indexing*

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

Change-Id: Ic854c92253dc5745bd4718fab12b567832228861

3 years agoAndroid: test list change dEQP-VK.glsl.builtin.*
Paul Thomson [Tue, 20 Apr 2021 10:00:04 +0000 (11:00 +0100)]
Android: test list change dEQP-VK.glsl.builtin.*

Move the following tests from the Android 2019 test list to the 2020
test list.

dEQP-VK.glsl.builtin.precision.asin.highp.scalar
dEQP-VK.glsl.builtin.precision.asin.highp.vec2
dEQP-VK.glsl.builtin.precision.asin.highp.vec3
dEQP-VK.glsl.builtin.precision.asin.highp.vec4

Components: AOSP

Change-Id: I6586b0cfb39be6d43278cf61378563b3f894d641

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Wed, 21 Apr 2021 09:08:43 +0000 (12:08 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: I83fff4847e0bc12be0d574bd064a511784a72e09

3 years agoUpdate Vulkan headers
Alexander Galazin [Mon, 19 Apr 2021 08:29:14 +0000 (11:29 +0300)]
Update Vulkan headers

Components: Vulkan

Change-Id: I53ee070a94d444ca3f3d5198b205a4a7a0f3423d
(cherry picked from commit e360c1b13cdc98be2741b53e63a7a53204bb289a)

3 years agoUpdate Vulkan beta Headers
Alexander Galazin [Tue, 13 Apr 2021 09:57:15 +0000 (12:57 +0300)]
Update Vulkan beta Headers

Components: Vulkan

Change-Id: I29364f15c3c9c83424a7c0814b7634aaadfd4ab2
(cherry picked from commit 476acb91ebc242858d6d73253f54b7f8521f4d98)

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Wed, 21 Apr 2021 08:18:37 +0000 (11:18 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: Ib3ccf6adeedb2a55ba8a96bfabb75273a1c664ea

3 years agoUpdate Vulkan Headers
Alexander Galazin [Tue, 13 Apr 2021 09:55:34 +0000 (12:55 +0300)]
Update Vulkan Headers

Components: Vulkan

Change-Id: I489a247c5d32a19dd48768654ab1ef76cce3687c
(cherry picked from commit aa398b9cbd0ea035bdcc5d48da460c005654e507)

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
(cherry picked from commit e58814865924d9222859eaf8e4132e0eb842eb49)

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Wed, 21 Apr 2021 06:56:03 +0000 (09:56 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I90603cf34d44bb7c6f10e81f7b594834391da05e

3 years agoAndroid: test list change dEQP-VK.glsl.builtin.*
Paul Thomson [Tue, 20 Apr 2021 10:00:04 +0000 (11:00 +0100)]
Android: test list change dEQP-VK.glsl.builtin.*

Move the following tests from the Android 2019 test list to the 2020
test list.

dEQP-VK.glsl.builtin.precision.asin.highp.scalar
dEQP-VK.glsl.builtin.precision.asin.highp.vec2
dEQP-VK.glsl.builtin.precision.asin.highp.vec3
dEQP-VK.glsl.builtin.precision.asin.highp.vec4

Components: AOSP

Change-Id: I6586b0cfb39be6d43278cf61378563b3f894d641

3 years agoDrop unnecessary barrier
Sagar Ghuge [Tue, 13 Apr 2021 06:06:49 +0000 (23:06 -0700)]
Drop unnecessary barrier

This extra barrier which does the transition from UNDEFINED-> GENERAL,
image data is read immediately after that, which leads to the test
failure after enabling the storage image compression.

Components: Vulkan

VK-GL-CTS Issue: 2884

Affects:
dEQP-VK.synchronization.*
dEQP-VK.synchronization2.*

Change-Id: I2ef7ca40b9c869f69654797872ebabb83bfbec10
(cherry picked from commit 4e830b7e271d5b77bc303f91ee11c7f703f14176)