platform/upstream/VK-GL-CTS.git
2 years agoSupport VK_KHR_portability_enumeration
Charles Giessen [Wed, 30 Mar 2022 22:41:48 +0000 (16:41 -0600)]
Support VK_KHR_portability_enumeration

Fixes #3644 by adding VK_KHR_portability_enumeration to the list
of known extensions with the addition of a corresponding json file.

Components: Vulkan

Affected Tests:
All vulkan tests

Change-Id: I80bf42509ea01712e6a6e5123a6e097fce00aacc

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/main
Matthew Netsch [Fri, 6 May 2022 15:42:40 +0000 (15:42 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/main

Change-Id: Iaec16bec07e014cdcb25f22e8fadd26777fefb03

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 5 May 2022 20:38:52 +0000 (13:38 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I4378bcd20e3ec3e88838dbf9a2f6d6372ba463b6

2 years agoIncrease tolerance in fp64 mat3determinant compute
zhangkai [Thu, 14 Apr 2022 02:13:08 +0000 (19:13 -0700)]
Increase tolerance in fp64 mat3determinant compute

On QNX, the library function `strtod` has different behavior
from other platforms. It would convert string to a double value
slightly different. So increasing the tolerance slightly would
solve the problem.

Affected tests:
    dEQP-VK.glsl.builtin.precision_double.determinant.compute.mat3

VK-GL-CTS issue: 3642
Components: Vulkan

Change-Id: I2c30029d0d6297b660e2900217d6aeb5d3bf3186

2 years agoFix extension data for EXT_texel_buffer_alignment
Piotr Byszewski [Mon, 25 Apr 2022 12:14:16 +0000 (14:14 +0200)]
Fix extension data for EXT_texel_buffer_alignment

Only the properties structure was promoted for
VK_EXT_texel_buffer_alignment, the feature structure was not
promoted. This change removes specification of "core" attribute
from "register_extension" tag for this extension as only fully
promoted extensions can have it defined.

VK-GL-CTS issue: 3564

Components: Framework, Vulkan

Affects:
dEQP-VK.*

Change-Id: If1873b8292f1e79ef557876ebb7d8d9cf9d7de83

2 years agoSupport VK_KHR_portability_enumeration
Charles Giessen [Wed, 30 Mar 2022 22:41:48 +0000 (16:41 -0600)]
Support VK_KHR_portability_enumeration

The portability enumeration extension needs to be enabled if it is
present to allow for CTS to enumerate portability devices.

This commit refactors createDefaultInstance so that it only enumerates
the available instance extensions once instead of twice.

It fixees #3644 by adding VK_KHR_portability_enumeration to the list
of known extensions with the addition of a corresponding json file.

Components: Vulkan

Affected Tests:
All vulkan tests

Change-Id: Ib828ee9f385f2eb2e68e03a6b3b3632443da10df

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 5 May 2022 18:41:19 +0000 (18:41 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: Ia788a27e2bb8cf6ca92e09e378af26db6f50f68f

2 years agoReduce advertised sys mem on 32 bit Android
Ilkka Saarelainen [Tue, 29 Mar 2022 10:30:06 +0000 (13:30 +0300)]
Reduce advertised sys mem on 32 bit Android

This CL reduces the advertised system memory amount in 32 bit Android
builds to address some memory fragmentation issues in certain tests
that rely on the advertised memory amount.

Affects:

dEQP-VK.api.buffer.suballocation.*
dEQP-VK.api.buffer.dedicated_alloc.*
dEQP-VK.api.object_management.*
dEQP-VK.memory.allocation.*
dEQP-VK.memory.device_group_allocation.*
dEQP-VK.pipeline.render_to_image.*.small.*
dEQP-VK.pipeline.render_to_image.*.huge.*

Components: Framework, Vulkan

VK-GL-CTS issue: 3586

Change-Id: I15ef027e3f69ddbb87e8704d0cff479782b6bda6

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 5 May 2022 18:13:29 +0000 (18:13 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Iba260ee0d9195e18e2e41ee3ec525cf5e66faa0d

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 5 May 2022 16:48:43 +0000 (09:48 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: Iaeb3f5ee3ef401ef4c0d4d7db27703e8f5b6012d

2 years agoDon't alias image views in separate_channels subpass dependency tests
Connor Abbott [Fri, 13 Aug 2021 15:37:54 +0000 (17:37 +0200)]
Don't alias image views in separate_channels subpass dependency tests

This is not allowed by the Vulkan spec:

> Multiple attachments that alias the same memory must not be used in a
> single subpass.

Instead we should have the input attachment and color attachment point
to the same attachment, which is allowed.

Components: Vulkan

Affects:
dEQP-VK.renderpass.suballocation.subpass_dependencies.separate_channels.*
dEQP-VK.renderpass2.suballocation.subpass_dependencies.separate_channels.*

VK-GL-CTS Issue: 3052

Change-Id: Iddb1111be5147f9816104fa879e023a9a3445555
(cherry picked from commit a3e659e828a535582207149cf58a8580d45a0342)

2 years agoFix DeqpTestRunnerTest
Paul Thomson [Wed, 13 Apr 2022 18:38:46 +0000 (19:38 +0100)]
Fix DeqpTestRunnerTest

Component: Android

Google bug: b/206657494
Google bug: b/201652781

Change-Id: I3438b200105bc04ee63b0454a7ce32e4acd4de4b

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 5 May 2022 15:50:24 +0000 (15:50 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I4dbdafea321464fe25499e0a7d415488729d77ce

2 years agoSynchronize input attachment reads in IO chains
Ricardo Garcia [Tue, 19 Apr 2022 09:26:29 +0000 (11:26 +0200)]
Synchronize input attachment reads in IO chains

Each subpass in the render pass IO chain tests attempts to read the
output of the previous subpass as an input attachment, but the subpass
dependencies are missing VK_ACCESS_INPUT_ATTACHMENT_READ_BIT from the
flags in dstAccessMask.

Affected tests:
dEQP-VK.renderpass*.attachment_allocation.*

Components: Vulkan
VK-GL-CTS issue: 3643

Change-Id: I63b49709ee8cb03e364050253dc2a8a48c5b58cd

2 years agoWait for idle queue after submitting an empty job
Ricardo Garcia [Tue, 19 Apr 2022 09:53:54 +0000 (11:53 +0200)]
Wait for idle queue after submitting an empty job

The test below imports an external signaled semaphore and submits to the
queue an empty job that waits on that signaled sempahore, but the test
returns without any further wait, which means the external sempahore may
be destroyed before the driver has had a chance to use it.

Affected tests:
dEQP-VK.api.external.semaphore.sync_fd.import_signaled_temporary

Components: Vulkan
VK-GL-CTS issue: 3636

Change-Id: I3e8daa9146f6fd542ad20539a7e9b6c9f0242978

2 years agoLimit dimensionality of arrays-of-arrays in random SSBO tests
Boris Zanin [Wed, 13 Apr 2022 11:57:22 +0000 (13:57 +0200)]
Limit dimensionality of arrays-of-arrays in random SSBO tests

One of these tests used a 5 dimensional array-of-arrays, resulting
in thousands of instructions that caused issues on devices with low
ram. This change limits the total dimensionality to prevent this.

Components: Vulkan

VK-GL-CTS issue: 1829

Solves:
dEQP-VK.ssbo.layout.random.scalar.75

Affects:
dEQP-VK.ssbo.*.random.*

Change-Id: Ibee39ccb0bd1543dafce7c498f56def1e05b4815

2 years agoFix 32-bit compilation warning
Piers Daniell [Wed, 20 Apr 2022 23:10:12 +0000 (17:10 -0600)]
Fix 32-bit compilation warning

There was a call to new[] in vktSpvAsmTrinaryMinMaxTests.cpp that used
a 64-bit values as an allocation size, which is not the type the
new operator expects when compiling for a 32-bit target.

Add a cast to fix the warning.

Affects:

dEQP-VK.spirv_assembly.instruction.amd_trinary_minmax.*

Components: Vulkan
Change-Id: I0941033614d67530f6cc157b5923e47bdca5c5a9

2 years agoMerge vk-gl-cts/github-main into vk-gl-cts/main
Matthew Netsch [Thu, 14 Apr 2022 21:03:31 +0000 (21:03 +0000)]
Merge vk-gl-cts/github-main into vk-gl-cts/main

Change-Id: If663da5dc063fd97bed82597175d269a29816912

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/main
Matthew Netsch [Thu, 14 Apr 2022 20:00:03 +0000 (20:00 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/main

Change-Id: I877de4d3a18e22d812b8016f2cdaf9e2894f337d

2 years agoFix accidentally removed extension
James Fitzpatrick [Thu, 14 Apr 2022 09:46:59 +0000 (10:46 +0100)]
Fix accidentally removed extension

VK_KHR_global_priority was accidentally removed from the list of allowed
extensions.

Affects:
dEQP-VK.info.device_extensions
dEQP-VK.info.device_mandatory_features

Components: vulkan

VK-GL-CTS issue: 3639

Change-Id: I3173fa11c27358ad04fb970518b53ecf0e917865

2 years agoUpdate known conformance version for 1.3.1.1
Piers Daniell [Wed, 13 Apr 2022 15:23:40 +0000 (09:23 -0600)]
Update known conformance version for 1.3.1.1

Components: Framework, Vulkan
VK-GL-CTS Issue: 3628

Affects:
dEQP-VK.api.driver_properties.conformance_version

Change-Id: I3aa80d23caf74db9a5b00be19f3e80013c6d5a5a

2 years agoexplicitly provides ssh urls to GitRepo declarations
Luc Ma [Thu, 14 Oct 2021 12:50:44 +0000 (20:50 +0800)]
explicitly provides ssh urls to GitRepo declarations

In case of poor cyber condition, git fetches based on ssh protocol
instead of https may be a better choice. The only thing that needs
is an appropriate url.

Also fixes issue 289

Signed-off-by: Luc Ma <onion0709@gmail.com>
Components: Framework
VK-GL-CTS public issue: 289

Change-Id: I6e121a50cfe3f0361defd34a8b961777e9f5751e

2 years agoFix support check in transform feedback tests
Toni Merilehti [Wed, 6 Apr 2022 12:42:13 +0000 (15:42 +0300)]
Fix support check in transform feedback tests

Vulkan transform feedback simple tests currently require
transformFeedbackRasterizationStreamSelect property for all test cases
using vertex streams other than zero. This CL changes the support check
to require the property only for test cases that rasterize vertex
streams other than zero. This CL also moves the support check to
checkSupport function which is called before initPrograms.

Affects:
dEQP-VK.transform_feedback.simple.*

Components: Vulkan

VK-GL-CTS issue: 3597

Change-Id: I09db67690aca607d5a9664b4967d65a8b07fb4a7

2 years agoFix framebuffer size for some GraphicsFuzz tests
Ari Suonpaa [Mon, 4 Apr 2022 05:20:52 +0000 (08:20 +0300)]
Fix framebuffer size for some GraphicsFuzz tests

A recent commit changed the draw size of some of the GraphicsFuzz
tests, but the frame buffer size was left untouched. This commit
fixes the frame buffer sizes.

Affects:

dEQP-VK.graphicsfuzz.cov-dfdx-dfdy-after-nested-loops
dEQP-VK.graphicsfuzz.cov-nested-loops-different-iteration-rates-function-copy-array-elements
dEQP-VK.graphicsfuzz.cov-nested-loops-set-struct-data-verify-in-function

Components: Vulkan
Change-Id: Ib3c42a03041ea66830692ab23468c2d7752a03b3

2 years agoRay query helper invocations
michal_jakubek [Wed, 9 Feb 2022 00:01:03 +0000 (01:01 +0100)]
Ray query helper invocations

New tests:
dEQP-VK.ray_query.helper_invocations.*

Components: Vulkan

VK-GL-CTS issue: 3254

Change-Id: I2f62c4eb2dea21184587c086768297322a3f45d8

2 years agoModified ray tracing inactive triangle definition
Marcin Zając [Fri, 18 Mar 2022 13:25:27 +0000 (14:25 +0100)]
Modified ray tracing inactive triangle definition

New definition of inactive triangle has been established
so that any vertex of the triangle can now set it's
x component to NaN making it inactive.
Because of that test is now covering all possible
configuration of vertices that can trigger this.

Components: Vulkan

VK-GL-CTS issue: 3568

Affects:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.empty*
dEQP-VK.ray_query.acceleration_structures.empty*

Change-Id: Ibbc4036d134b3b31590b6d2bd9d29896783aec6d

2 years agoAdd robustness2 limits validation test
Boris Zanin [Wed, 6 Apr 2022 08:56:47 +0000 (10:56 +0200)]
Add robustness2 limits validation test

Implements VK_EXT_robustness2 properties and features
validation test.

Add:
dEQP-VK.api.info.vulkan1p2_limits_validation.robustness2

Components: Vulkan
VK-GL-CTS issue: 3388

Change-Id: I2e14f062ad2b6826751d223d88db45ce855d0c74

2 years agoAdd a batch of GraphicsFuzz coverage tests
Ari Suonpaa [Wed, 13 Apr 2022 08:10:43 +0000 (11:10 +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-function-global-loop-counter-sample-texture
dEQP-VK.graphicsfuzz.cov-function-index-array-redundant-clamps
dEQP-VK.graphicsfuzz.cov-function-loop-condition-constant-array-always-false
dEQP-VK.graphicsfuzz.cov-function-max-all-ones-select-always-true
dEQP-VK.graphicsfuzz.cov-function-struct-int-array-loop-check-element
dEQP-VK.graphicsfuzz.cov-loop-break-fragcoord-x-empty-loop
dEQP-VK.graphicsfuzz.cov-loop-condition-constant-struct-field-data
dEQP-VK.graphicsfuzz.cov-loop-global-counter-increment-iterator-select-uniform
dEQP-VK.graphicsfuzz.cov-loop-never-iterated-constant-vector-condition
dEQP-VK.graphicsfuzz.cov-loop-start-fragcoord-while-iterates-once
dEQP-VK.graphicsfuzz.cov-multiple-functions-global-never-change
dEQP-VK.graphicsfuzz.cov-nested-functions-vec4-array-element-argument
dEQP-VK.graphicsfuzz.cov-nested-loops-global-loop-counter-reached-second-iteration
dEQP-VK.graphicsfuzz.cov-two-loops-global-loop-counter-clamp-ivec-elements-index-array
dEQP-VK.graphicsfuzz.cov-two-loops-never-iterated

Change-Id: Ia12ea0e32ab889c203e3f3ef12459807252f30b5

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main
Matthew Netsch [Thu, 14 Apr 2022 18:31:24 +0000 (18:31 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main

Change-Id: Ib38e0f175e993fd68742f3b009ee85788f8409b1

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 14 Apr 2022 17:53:50 +0000 (10:53 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I3e2c87a50425072269106efb75c250d0cc0be061

2 years agoFix dEQP-VK.image.sample_texture.* tests write out-of-bounds bug
Juha Heiskanen [Tue, 29 Mar 2022 09:02:53 +0000 (12:02 +0300)]
Fix dEQP-VK.image.sample_texture.* tests write out-of-bounds bug

Compute shader writing to the view is now made by using block size
instead of pixel count.

Components: Vulkan

VK-GL-CTS Issue: 3442

Affects: dEQP-VK.image.sample_texture.*
Change-Id: Ie351fb1d2730c5377c8110453bc34629c20b5d82

2 years agoFix one more missed extension promotion
Graeme Leese [Tue, 12 Apr 2022 16:04:36 +0000 (17:04 +0100)]
Fix one more missed extension promotion

VK_EXT_extended_dynamic_state2 was not marked as having been promoted,
which meant that the CTS code which uses the core function names
exclusively doesn't work on versions that support 1.2 + the extension.

Components: Vulkan
VK-GL-CTS issue: 3631
Affects: dEQP-VK.*

Change-Id: Ia942b96f778d57337fa087042f176086d5bde608

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 14 Apr 2022 17:16:14 +0000 (17:16 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I786f14d2785e81098664f94cac78ac635da571fd

2 years agoFix dEQP-VK.image.sample_texture.* tests write out-of-bounds bug
Juha Heiskanen [Wed, 30 Mar 2022 12:38:24 +0000 (15:38 +0300)]
Fix dEQP-VK.image.sample_texture.* tests write out-of-bounds bug

Compute shader writing to the view is now made by using block size
instead of pixel count.

Components: Vulkan

VK-GL-CTS Issue: 3595

Affects: dEQP-VK.image.sample_texture.*

Change-Id: I50879fd7bb48f623e565c8972e7a517fb26f0ed0

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 14 Apr 2022 16:49:27 +0000 (16:49 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Id90879713fa5388ab2a4ebdd6811b454b0675763

2 years agoFix extension promotions
Iván Briano [Mon, 11 Apr 2022 20:26:06 +0000 (13:26 -0700)]
Fix extension promotions

VK_EXT_shader_image_atomic_int64 was promoted instead of
VK_KHR_shader_atomic_int64.
VK_KHR_external_semaphore lost its promotion.
VK_KHR_vulkan_memory_model was promoted to the wrong core version.

VK-GL-CTS issue: 3631

Affects:
dEQP-VK.*

Change-Id: I78712093945796adf4076e75f6f3e5c07a4ec832

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 14 Apr 2022 16:23:18 +0000 (16:23 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: Ie2a23e7c3811d6cebc0b7ace2351d5a4779bd7d0

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 14 Apr 2022 15:58:41 +0000 (15:58 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I6ab43b2abea09721ad28bdba33565c7c0f0be5fd

2 years agoFix warnings with clang and GCC
Ricardo Garcia [Mon, 4 Apr 2022 08:14:57 +0000 (10:14 +0200)]
Fix warnings with clang and GCC

Affected tests:
No test result should be affected by these changes.

Components: OpenGL, Vulkan
VK-GL-CTS issue: 3602

Change-Id: If2eb0736d296add732aaff53c80a705cc306d7a3

2 years agoMerge pull request #312 from lfrb/windows-flush
Matthew Netsch [Thu, 14 Apr 2022 15:32:14 +0000 (11:32 -0400)]
Merge pull request #312 from lfrb/windows-flush

Flush stdout after printing test name and result on Windows

2 years agoAdd a batch of GraphicsFuzz coverage tests
Ari Suonpaa [Mon, 4 Apr 2022 11:03:37 +0000 (14:03 +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-double-negation-fragcoord-cast-ivec2-bitwise-and
dEQP-VK.graphicsfuzz.cov-function-always-return-negative-bitfield-extract
dEQP-VK.graphicsfuzz.cov-function-loop-clamp-no-effect
dEQP-VK.graphicsfuzz.cov-function-loops-vector-mul-matrix-never-executed
dEQP-VK.graphicsfuzz.cov-function-multiple-loops-compare-integer-return
dEQP-VK.graphicsfuzz.cov-global-loop-counter-findlsb-zero
dEQP-VK.graphicsfuzz.cov-loop-decrease-vector-component-only-first-iteration
dEQP-VK.graphicsfuzz.cov-loop-function-call-negative-argument
dEQP-VK.graphicsfuzz.cov-loop-iterator-start-shift-left-right
dEQP-VK.graphicsfuzz.cov-loop-min-max-clamp-increment-only-first-iteration
dEQP-VK.graphicsfuzz.cov-loops-and-conditions-fragcoord-always-false-floats-one
dEQP-VK.graphicsfuzz.cov-loops-same-code-outside-loop
dEQP-VK.graphicsfuzz.cov-nested-loops-array-choose-red-last-iteration
dEQP-VK.graphicsfuzz.cov-nested-loops-global-loop-counter-index-array-vec2
dEQP-VK.graphicsfuzz.cov-struct-array-ivec-negative-modulus-empty-function

Change-Id: I8d5bd2e526450b87f17fd1e1acc12641b634d380

2 years agoAdd a batch of GraphicsFuzz coverage tests
Ari Suonpaa [Tue, 22 Mar 2022 13:02:37 +0000 (15:02 +0200)]
Add a batch of GraphicsFuzz coverage tests

This commit adds a batch of GraphicsFuzz coverage tests.

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.cov-function-divide-argument-until-lt-one
dEQP-VK.graphicsfuzz.cov-function-loop-check-determinant-zero-return-vector
dEQP-VK.graphicsfuzz.cov-function-parameter-zero-divided-by-uniform
dEQP-VK.graphicsfuzz.cov-function-round-unpack-half-2x16
dEQP-VK.graphicsfuzz.cov-function-switch-case-constant-clamp-transpose-identity-matrices
dEQP-VK.graphicsfuzz.cov-increment-array-element-usub-borrow
dEQP-VK.graphicsfuzz.cov-large-number-of-false-conditions-return-discard-continue
dEQP-VK.graphicsfuzz.cov-loop-iterator-bitwise-negate
dEQP-VK.graphicsfuzz.cov-loop-overwrite-sample-texture-as-color-output
dEQP-VK.graphicsfuzz.cov-min-vec2-transpose-mat2-identity
dEQP-VK.graphicsfuzz.cov-nested-loops-assign-vector-elements-from-matrix-no-negative-indexing
dEQP-VK.graphicsfuzz.cov-nested-loops-fragcoord-conditions-empty-blocks
dEQP-VK.graphicsfuzz.cov-one-bitwise-and-bitwise-or-full-bits
dEQP-VK.graphicsfuzz.cov-set-array-elements-to-uniform-check-value-break
dEQP-VK.graphicsfuzz.cov-small-array-overwrite-most-uniform-value-check-data-break

Change-Id: I20d10f67d1e5ab4510c673cfc3a90446221700b7

2 years agoAdd a batch of GraphicsFuzz coverage tests
Ari Suonpaa [Tue, 22 Mar 2022 13:23:08 +0000 (15:23 +0200)]
Add a batch of GraphicsFuzz coverage tests

This commit adds a batch of GraphicsFuzz coverage tests.

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.cov-enable-bits-pixel-location-negate-not-equal-one
dEQP-VK.graphicsfuzz.cov-fragcoord-and-one-or-same-value
dEQP-VK.graphicsfuzz.cov-fragcoord-loop-limit-negative-decrease-sum-first-iteration
dEQP-VK.graphicsfuzz.cov-function-call-twice-clamp-global-variable
dEQP-VK.graphicsfuzz.cov-function-loop-variable-multiplied-unused
dEQP-VK.graphicsfuzz.cov-loop-array-element-bitfield-insert-undefined-never-read
dEQP-VK.graphicsfuzz.cov-loop-find-lsb-eight-fragcoord-never-discard
dEQP-VK.graphicsfuzz.cov-loop-index-array-max-negative-zero
dEQP-VK.graphicsfuzz.cov-loop-max-divide-integer-by-ten
dEQP-VK.graphicsfuzz.cov-loop-sampled-texel-integer-counter
dEQP-VK.graphicsfuzz.cov-loop-variable-less-than-itself
dEQP-VK.graphicsfuzz.cov-mix-uninitialized-float-never-selected
dEQP-VK.graphicsfuzz.cov-nested-loop-decrease-vector-components
dEQP-VK.graphicsfuzz.cov-nested-loops-while-condition-integer-range-increment-variable
dEQP-VK.graphicsfuzz.cov-uadd-carry-bit-count-index-array

Change-Id: I4160d3418b1a8fa3a29695f939af6aa79ded319d

2 years agoAdd a batch of GraphicsFuzz coverage tests
Ari Suonpaa [Wed, 23 Mar 2022 06:42:08 +0000 (08:42 +0200)]
Add a batch of GraphicsFuzz coverage tests

This commit adds a batch of GraphicsFuzz coverage tests.

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.cov-bitwise-or-uniform-zero-tenth-bit-loop-limit-find-lsb
dEQP-VK.graphicsfuzz.cov-copy-array-elements-except-first-nested-loop-replace-identical-values
dEQP-VK.graphicsfuzz.cov-decrement-vector-elements-clamp-index
dEQP-VK.graphicsfuzz.cov-function-large-loop-break-argument-lte-global-loop-bound
dEQP-VK.graphicsfuzz.cov-function-set-struct-field-zero-loop-reset-first-element
dEQP-VK.graphicsfuzz.cov-global-loop-count-array-struct-field-set-int-array-element
dEQP-VK.graphicsfuzz.cov-increment-one-array-element-check-index-from-fragcoord
dEQP-VK.graphicsfuzz.cov-loop-array-struct-field-index-array-with-uniforms
dEQP-VK.graphicsfuzz.cov-loop-construct-vec4-from-vec4-clamp-same-min-max
dEQP-VK.graphicsfuzz.cov-loop-copy-previous-array-element-first-undefined
dEQP-VK.graphicsfuzz.cov-loop-decrease-vector-components-assign-multiple-times
dEQP-VK.graphicsfuzz.cov-loop-increment-array-index-array-usuborrow-feedback
dEQP-VK.graphicsfuzz.cov-loop-large-array-index-clamp-negative-value
dEQP-VK.graphicsfuzz.cov-nested-loops-never-change-array-element-one
dEQP-VK.graphicsfuzz.cov-nested-loops-switch-add-zero-matrix-elements

Change-Id: Icbab932af39ff6070b622e5d71c360a890382e89

2 years agoAdd a batch of GraphicsFuzz coverage tests
Ari Suonpaa [Wed, 23 Mar 2022 07:02:46 +0000 (09:02 +0200)]
Add a batch of GraphicsFuzz coverage tests

This commit adds a batch of GraphicsFuzz coverage tests.

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.cov-fragcoord-integer-loop-reduce-to-range
dEQP-VK.graphicsfuzz.cov-function-infinite-loop-return-identical-condition
dEQP-VK.graphicsfuzz.cov-function-loop-modify-ivec-components-infinite-loop-never-executed
dEQP-VK.graphicsfuzz.cov-function-unused-argument-single-loop-iteration-icrement-global-counter
dEQP-VK.graphicsfuzz.cov-large-loop-break-early-condition-iterator-divided
dEQP-VK.graphicsfuzz.cov-large-loop-multiply-integer-by-uniform-one
dEQP-VK.graphicsfuzz.cov-loop-condition-increment-integer-fallback-global-counter
dEQP-VK.graphicsfuzz.cov-loop-multiple-iterator-variables-copy-array-elements
dEQP-VK.graphicsfuzz.cov-loop-read-array-index-from-array-data
dEQP-VK.graphicsfuzz.cov-nested-loops-decrease-ivec-component
dEQP-VK.graphicsfuzz.cov-nested-loops-identical-iterators-compare-same-array-elements
dEQP-VK.graphicsfuzz.cov-nested-loops-temporary-copy-output-color-index-matrix
dEQP-VK.graphicsfuzz.cov-nested-loops-while-min-iterator-condition-always-false
dEQP-VK.graphicsfuzz.cov-struct-int-array-select-uniform-ivec
dEQP-VK.graphicsfuzz.cov-two-functions-loops-copy-elements-infinite-loops-never-executed

Change-Id: Ia735b9f7c54ef62316dde087460df0bd7d2684f9

2 years agoAdd vkGetDeviceQueue2 tests for Protected memory feature
Ralph Potter [Wed, 2 Mar 2022 15:17:46 +0000 (16:17 +0100)]
Add vkGetDeviceQueue2 tests for Protected memory feature

The existing tests did not cover a wide range of vkGetDeviceQueue2 calls.
Added new tests that includes accessing Queues with different
VkDeviceQueueCreateFlags and Queue Family indices.

In addition the existing device_init.create_device_queue2_unmatched_flags
test is removed as it tries to perform a test case which is not allowed
by valid usage descriptions.

These changes are due to an update in Vulkan specification.
Additional details on the specification change:

https://gitlab.khronos.org/vulkan/vulkan/-/issues/2978
https://gitlab.khronos.org/vulkan/vulkan/-/merge_requests/5056

New Tests:

dEQP-VK.api.device_init.create_device_queue2_two_queues
dEQP-VK.api.device_init.create_device_queue2_all_protected
dEQP-VK.api.device_init.create_device_queue2_all_unprotected
dEQP-VK.api.device_init.create_device_queue2_split
dEQP-VK.api.device_init.create_device_queue2_all_families
dEQP-VK.api.device_init.create_device_queue2_all_families_protected
dEQP-VK.api.device_init.create_device_queue2_all_combinations

Affects:

dEQP-VK.api.device_init.create_device_queue2_unmatched_flags

Components: Vulkan

Vulkan issue: 5056

Change-Id: I53abb2818480305aaef5c236489c05fbf6b0f5ce

2 years agoCheck conditional rendering with non-zero memory offset
Ricardo Garcia [Wed, 6 Apr 2022 08:43:27 +0000 (10:43 +0200)]
Check conditional rendering with non-zero memory offset

This commit adds a new set of tests that check the conditional rendering
buffer works properly when the allocation is bound with a non-zero
offset to the buffer.

New tests:
dEQP-VK.conditional_rendering.dispatch.alloc_offset.*

Affected tests:
dEQP-VK.conditional_rendering.*

VK-GL-CTS issue: 3591
Components: Vulkan

Change-Id: I6485e6dc96f625d17b96c4771121ea540cab8d6a

2 years agoAdd coverage for IsHelperInvocationEXT
Juha Heiskanen [Thu, 24 Mar 2022 05:55:11 +0000 (07:55 +0200)]
Add coverage for IsHelperInvocationEXT

This test verifies helper invocations remain active in subgroup quad
operations after being demoted.

Components: Vulkan

VK-GL-CTS Issue: 3377

New tests: dEQP-VK.draw.renderpass.shader_invocation.helper_invocation

Change-Id: Ibcb31e19f7f5465358750c4b59dcd805a14621a1

2 years agoAdd notice of withdrawal for 1.2.6.x
Matthew Netsch [Thu, 7 Apr 2022 17:18:27 +0000 (10:18 -0700)]
Add notice of withdrawal for 1.2.6.x

Components: Framework
Change-Id: Ib81e63bd69e6a28c00655b1790e8c6bdf59cf6e7

2 years agoInterpolateAt{Offset, Sample} with linear interpolation tests
Juha Heiskanen [Thu, 17 Feb 2022 06:11:22 +0000 (08:11 +0200)]
InterpolateAt{Offset, Sample} with linear interpolation tests

This CL adds interpolateAtOffset and interpolateAtSample with linear
interpolation tests for Vulkan. These new tests can also be run by
using dynamic rendering.

Components: Vulkan

VK-GL-CTS Issue: 3191

New tests: dEQP-VK.draw.*.linear_interpolation.*

Change-Id: I9a5d39d1c7cf2d1101dd380e481b155265793c25

2 years agoImage extended usage should include VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT
Martin Freebody [Mon, 14 Mar 2022 15:47:17 +0000 (15:47 +0000)]
Image extended usage should include VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT

In the vkGetPhysicalDeviceImageFormatProperties, VkImageCreateFlags
requires VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT as well as
VK_IMAGE_CREATE_EXTENDED_USAGE_BIT to allow compatibility with
all view formats.

Components: Vulkan

VK-GL-CTS issue: 3574

Affects: dEQP-VK.image.extended_usage_bit_compatibility.*

Change-Id: Ie05db422d5a511245ef7a5e8cbff3f0fb93e2f82

2 years agoAdd a batch of GraphicsFuzz coverage tests
Ari Suonpaa [Wed, 23 Mar 2022 07:34:40 +0000 (09:34 +0200)]
Add a batch of GraphicsFuzz coverage tests

This commit adds a batch of GraphicsFuzz coverage tests.

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.cov-array-cast-bool-float-div-by-zero-no-effect
dEQP-VK.graphicsfuzz.cov-array-set-element-condition-negative-modulus
dEQP-VK.graphicsfuzz.cov-clamp-min-bitcount-uniform
dEQP-VK.graphicsfuzz.cov-condition-clamp-min-from-uniform-never-larger
dEQP-VK.graphicsfuzz.cov-function-clamp-min-identical-shift-right
dEQP-VK.graphicsfuzz.cov-function-infinite-loop-always-return
dEQP-VK.graphicsfuzz.cov-function-loop-switch-increment-array-element-return
dEQP-VK.graphicsfuzz.cov-function-min-integer-large-shift-unused
dEQP-VK.graphicsfuzz.cov-loop-decrease-integer-never-break
dEQP-VK.graphicsfuzz.cov-loop-global-counter-break-set-ivec-elements
dEQP-VK.graphicsfuzz.cov-nested-loops-inner-loop-min-copy-array-elements
dEQP-VK.graphicsfuzz.cov-nested-loops-return-inside-while-never-executed
dEQP-VK.graphicsfuzz.cov-nested-loops-substract-matrix-element-change-float
dEQP-VK.graphicsfuzz.cov-nested-loops-switch-case-fallthrough-increment-array-element
dEQP-VK.graphicsfuzz.cov-two-loops-increment-integer-global-counter-break-square-threshold

Change-Id: Id55832113b3ebcd48fc4e6a2a8e0502725766944

2 years agoFix freeing custom device in dynamic state tests
Ricardo Garcia [Mon, 4 Apr 2022 15:58:55 +0000 (17:58 +0200)]
Fix freeing custom device in dynamic state tests

Some dynamic state tests use a custom device that was not being properly
freed when existing a test group that used the device. This sometimes
caused crashes on program termination.

No tests should be affected by this change. This fix only touches the
test hierarchy. However, to check the fix doesn't break anything:

dEQP-VK.dynamic_state.*

Components: Vulkan
VK-GL-CTS issue: 3602

Change-Id: I6bf97900497b6e795c1fbacef5b3fc68619a9ff4
(cherry picked from commit 33fba799401ba8e74907bf4bf7893d50f188e842)

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/main
Matthew Netsch [Fri, 8 Apr 2022 19:07:28 +0000 (12:07 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/main

Change-Id: I01fbe10ddaa35327ce769510b48d2c491af16e38

2 years agoAdd tests for surfaceless queries
Jari Komppa [Wed, 9 Mar 2022 12:18:13 +0000 (14:18 +0200)]
Add tests for surfaceless queries

This change adds tests for the VK_GOOGLE_surfaceless_query
extension.

New tests:
dEQP-VK.wsi.*.surface.query_formats_surfaceless
dEQP-VK.wsi.*.surface.query_formats2_surfaceless
dEQP-VK.wsi.*.surface.query_present_modes_surfaceless

Components: Vulkan
VK-GL-CTS issue: 3557

Change-Id: I6febafc855b500052e8dedcba810dd80fb5c1e71

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Fri, 8 Apr 2022 17:52:41 +0000 (10:52 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I7a3dfef17070866462056327110f798dde9f119d

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Fri, 8 Apr 2022 16:14:23 +0000 (09:14 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I35b6b6a32a0ef4bb72d628f26b96a1ac8df46858

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 7 Apr 2022 20:56:53 +0000 (13:56 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I2c051a776b06d23239eb3ce501a999088cd0c1de

2 years agoRework extensions_data and mandatory_features
Piotr Byszewski [Mon, 25 Oct 2021 19:11:51 +0000 (21:11 +0200)]
Rework extensions_data and mandatory_features

Data from mandatory_features.txt was split to multiple json files
one per extension/vulkan_version. Those files now also include data
that was previously stored in extensions_data.txt .

VK-GL-CTS issue: 3197

Components: Framework, Vulkan

Affects:
dEQP-VK.*

Change-Id: I9756237829366ff4140dcf59dc7548a8f4328cb7

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 7 Apr 2022 18:47:24 +0000 (11:47 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: I69f0b9b087df9c33b26ddd014fc1a291fc50dbdd

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 7 Apr 2022 17:48:16 +0000 (17:48 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I4a1b44642747f72803ff97dafd55f4ba3fabad9e

2 years agoUse associated physical device from custom instance
Ari Suonpaa [Tue, 29 Mar 2022 08:56:44 +0000 (11:56 +0300)]
Use associated physical device from custom instance

Some of the API feature info tests created a custom instance,
but still used the default physical device. This is fixed by
choosing a physical device using the custom instance.

Comparison of VkPhysicalDeviceMemoryProperties was also
changed to only check the active memoryTypes and memoryHeaps
array elements instead of doing one large deMemCmp.

VK-GL-CTS Issue: 3590

Affects:

dEQP-VK.api.info.*

Components: Vulkan
Change-Id: I2378bcd1e97b7f85e533d34c5b5f6ac3e4fa9b93

2 years agoWait for deferred operations before obtaining RT pipeline handle
Ricardo Garcia [Tue, 29 Mar 2022 14:51:18 +0000 (16:51 +0200)]
Wait for deferred operations before obtaining RT pipeline handle

The ray tracing utils, when creating ray tracing pipelines and using
deferred operations, were using the VkPipeline pointer and handler
before the deferred operation had completed, which is against the spec.

Affected tests:
dEQP-VK.ray_tracing_pipeline.pipeline_library.configurations.multithreaded_compilation_dho.*
dEQP-VK.ray_tracing_pipeline.large_shader_set.cpu_ht*

Components: Vulkan
VK-GL-CTS issue: 3588

Change-Id: Ied8f443c01e99878180130963b8988852171b8a0

2 years agoFix subgroup size control failure logging
Mike Blumenkrantz [Thu, 31 Mar 2022 13:07:29 +0000 (15:07 +0200)]
Fix subgroup size control failure logging

One of the failure messages was missing the message terminator, which
prevented it from ever being logged.

Affects:
dEQP-VK.subgroups.size_control*

Components: Vulkan
VK-GL-CTS issue: 3596

Change-Id: If649a11e0f6cf0f5e69e438d46b385b26e57dfe4

2 years agoParse test case result version when converting to XML
Ricardo Garcia [Fri, 1 Apr 2022 10:01:40 +0000 (12:01 +0200)]
Parse test case result version when converting to XML

When parsing QPA files, extract the test case result version so it can
be later used to print the proper version when converting to XML files.

Components: Framework
VK-GL-CTS issue: 3573
VK-GL-CTS public issue: 287

Change-Id: I34d005621685b0ef31a7092ec7c40e6626bf20e3

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Matthew Netsch [Thu, 7 Apr 2022 17:24:00 +0000 (17:24 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: I25f8f2f56ab07a9c3f04e8cfa54f2efc11bfd80a

2 years agoAdd queue ownership release in modifier tests
Nanley Chery [Wed, 16 Mar 2022 20:08:04 +0000 (13:08 -0700)]
Add queue ownership release in modifier tests

Queue ownership transfers require a release operation and an acquire
operation. Before this patch, this test only performed the acquire
operation.

Components: Vulkan

VK-GL-CTS issue: 3575

Affects: dEQP-VK.drm_format_modifiers.export_import.*
Change-Id: I2998d7928d1042d6a159e1173257ee551c1120a5

2 years agoFix incorrect layout transition in modifier tests
Nanley Chery [Wed, 16 Mar 2022 20:40:46 +0000 (13:40 -0700)]
Fix incorrect layout transition in modifier tests

The queue family ownership acquire operation specifies a layout
transition from the pre-initialized layout. The image isn't in the
pre-initialized layout however, it's in the transfer dst optimal layout.
Align with the Vulkan spec, which says:

When performing a layout transition on an image subresource, the
old layout value must either equal the current layout of the
image subresource (at the time the transition executes), or else
be VK_IMAGE_LAYOUT_UNDEFINED (implying that the contents of the
image subresource need not be preserved).

Components: Vulkan

VK-GL-CTS issue: 3575

Affects: dEQP-VK.drm_format_modifiers.export_import.*
Change-Id: I76dbb54c699ed7d34e964de17f71ef01bc9e98a5

2 years agoFix lossy layout transitions in modifier tests
Nanley Chery [Wed, 16 Mar 2022 20:07:07 +0000 (13:07 -0700)]
Fix lossy layout transitions in modifier tests

The test performs several layout transitions that use
VK_IMAGE_LAYOUT_UNDEFINED for the initial layout. The spec says that
these transitions cause images to become undefined. The test expects
defined data from these images however. Replace these initial layouts
with layouts that don't cause data loss.

Components: Vulkan

VK-GL-CTS issue: 3575

Affects: dEQP-VK.drm_format_modifiers.export_import.*
Change-Id: I5e57dd197d461fba800d50239803d525c5334ac4

2 years agoFixes pipeline library merge
Matthew Netsch [Mon, 4 Apr 2022 15:10:33 +0000 (08:10 -0700)]
Fixes pipeline library merge

Components: Vulkan, Framework
VK-GL-CTS Issue: 3606

Change-Id: I0c14e4dac195977ac6bc13a5cc817e9089b65266

2 years agoFlush stdout after printing test name and result on Windows
Louis-Francis Ratté-Boulianne [Sat, 2 Apr 2022 03:54:06 +0000 (23:54 -0400)]
Flush stdout after printing test name and result on Windows

On other platforms, the standard output mode is changed to line
buffered, but that isn't possible on Windows. To allow other tools
(such as deqp-runner) to properly parse the output even if a
crash occurs, we need to flush after printing the test case name
and result.

Signed-off-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com>
2 years agoMerge changes I12ee2542,Ic8530cb6 into main
Matthew Netsch [Fri, 1 Apr 2022 21:07:07 +0000 (21:07 +0000)]
Merge changes I12ee2542,Ic8530cb6 into main

* changes:
  Merge vk-gl-cts/dev/VK_EXT_pipeline_library into vk-gl-cts/main
  Merge vk-gl-cts/dev/VK_EXT_primitives_generated_query into vk-gl-cts/main

2 years agoAdd more video exclusions to gen_framework.py
Charles Johnston [Thu, 31 Mar 2022 21:45:29 +0000 (17:45 -0400)]
Add more video exclusions to gen_framework.py

Prevents build errors.

Components: Vulkan

VK-GL-CTS issue: 3551

Change-Id: I2b59ef06a3bcfbb8d328db748152ef3e4a7bf7bf

2 years agoRemove a wrong qualityWarning for fbo completeness test
houlei1994 [Sun, 27 Feb 2022 04:32:06 +0000 (12:32 +0800)]
Remove a wrong qualityWarning for fbo completeness test

Components: OpenGL
VK-GL-CTS public issue: 296

Affects:
dEQP-GLES2.functional.fbo.completeness.attachment_combinations.*

Change-Id: Ic0ebb0d861cf9e5503d2be1368050a88d2b4d9b7

2 years agoMerge vk-gl-cts/dev/VK_EXT_pipeline_library into vk-gl-cts/main
Matthew Netsch [Fri, 1 Apr 2022 20:55:22 +0000 (13:55 -0700)]
Merge vk-gl-cts/dev/VK_EXT_pipeline_library into vk-gl-cts/main

Change-Id: I12ee2542aa31e0942a3827ea59abc64e20624daf

2 years agoMerge vk-gl-cts/dev/VK_EXT_primitives_generated_query into vk-gl-cts/main
Matthew Netsch [Fri, 1 Apr 2022 20:52:51 +0000 (13:52 -0700)]
Merge vk-gl-cts/dev/VK_EXT_primitives_generated_query into vk-gl-cts/main

Change-Id: Ic8530cb607cee5062611ccf40f409549edfa94aa

2 years agoMerge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_primitives_generated_query
Matthew Netsch [Fri, 1 Apr 2022 20:50:55 +0000 (13:50 -0700)]
Merge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_primitives_generated_query

Change-Id: Id9a4afa9f27f79bc0c2fe5023197e82ca979157a

2 years agoFixes Conditional Rendering local memory tests
Matthew Netsch [Fri, 1 Apr 2022 20:36:43 +0000 (13:36 -0700)]
Fixes Conditional Rendering local memory tests

Commit was not up to date with android CTS
update

Components: Vulkan

Affects:
dEQP-VK.conditional_rendering.*

Change-Id: Idd3b56426888e788cd255f44ef6ba35672310944

2 years agoMerge main into VK_KHR_graphics_pipeline_library
Piotr Byszewski [Fri, 1 Apr 2022 14:40:35 +0000 (16:40 +0200)]
Merge main into VK_KHR_graphics_pipeline_library

Components: Vulkan

VK-GL-CTS issue: 3310

Affects:
dEQP-VK.dynamic_state.*
dEQP-VK.pipeline.*
dEQP-VK.fragment_shading_rate.*

Change-Id: I93de4c5a0c029b67484c1c23cf285649ff12189c

2 years agoReduce framebuffer size on some graphicsfuzz tests
Graeme Leese [Wed, 23 Mar 2022 11:44:36 +0000 (11:44 +0000)]
Reduce framebuffer size on some graphicsfuzz tests

Many graphicsfuzz tests are using a 256x256 framebuffer even though all
pixels or almost all pixels are generating the same results. This CL
reduces the framebuffer size to 16x16 for a some of the tests that are
causing problems in some of our test builds.

Components: Vulkan
Affects: dEQP-VK.graphicsfuzz.cov-dfdx-dfdy-after-nested-loops
         dEQP-VK.graphicsfuzz.cov-nested-loop-large-array-index-using-vector-components
         dEQP-VK.graphicsfuzz.cov-nested-loops-different-iteration-rates-function-copy-array-elements
         dEQP-VK.graphicsfuzz.cov-nested-loops-set-struct-data-verify-in-function

Change-Id: I25fbbb09473d86140a23b1218db344484b563653

2 years agoSimplify isDeviceFunctionalitySupported
Graeme Leese [Thu, 3 Mar 2022 17:55:48 +0000 (17:55 +0000)]
Simplify isDeviceFunctionalitySupported

Add comments explaining the two parts of the check and simplify the
checking of extensions that the device reports are supported -- the
feature bits are compulsory when the extension is supported.

Components: Vulkan
VK-GL-CTS issue: 3149
Affects: dEQP-VK.*

Change-Id: Iec81cdf588146d2adb07871b5950024d3cdcf189

2 years agoExtend conditional rendering tests to use buffer with device local memory
Illia Abernikhin [Wed, 16 Mar 2022 13:05:08 +0000 (15:05 +0200)]
Extend conditional rendering tests to use buffer with device local memory

Components: Vulkan

Affects:
dEQP-VK.conditional_rendering.*

Change-Id: I3ce597cf8850ff6cebf5f3e2db0b7fbe68d476b0

2 years agoActually test compatible depth/stencil attachment formats
Jason Ekstrand [Sat, 12 Feb 2022 05:36:02 +0000 (23:36 -0600)]
Actually test compatible depth/stencil attachment formats

These tests claimed to test "compatible" depth resolve formats, i.e.,
resolving to a depth-only format from a depth/stencil format.  However,
it only set the depth-only format on the renderpass and not on the
single-sampled image.  This meant it was in violation of the following
VU because the image view and attachment format didn't match:

    VUID-VkRenderPassBeginInfo-framebuffer-03216

    If framebuffer was created with a VkFramebufferCreateInfo::flags
    value that included VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT, each
    element of the pAttachments member of a
    VkRenderPassAttachmentBeginInfo structure included in the pNext
    chain must be a VkImageView of an image created with a value of
    VkImageViewCreateInfo::format equal to the corresponding value of
    VkAttachmentDescription::format in renderPass

Unfortunately, once I fixed the format, it turned into a bit of a rabbit
hole because aspects were also messed up various places and then layouts
as well.

Components: Vulkan
Affects: dEQP-VK.renderpass2.depth_stencil_resolve.*separate_layouts.*

Change-Id: I34f5dd2cbccae2a695cbe05a22908ba544b0a6a6

2 years agoAdd a GraphicsFuzz coverage test
Antto Mäkinen [Thu, 20 Jan 2022 09:15:52 +0000 (11:15 +0200)]
Add a GraphicsFuzz coverage test

Adds a GraphicsFuzz coverage test which has been separated by request.

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.cov-global-loop-counter-accumulate-integer-condition-large-array-elements

Change-Id: I3c90c09743f50f6ab23d271706f54269d703416d

2 years agoAdd coverage for depth bias with polygon topologies and fill modes
Juha Heiskanen [Tue, 21 Sep 2021 05:52:28 +0000 (08:52 +0300)]
Add coverage for depth bias with polygon topologies and fill modes

In these test we are applying the depth bias by using
depthBiasConstantFactor. Polygon topologies with fill, line and point
polygon modes are tested.

Components: Vulkan

VK-GL-CTS Issue: 3055

New tests: dEQP-VK.draw.renderpass.depth_bias.depth_bias_*

Change-Id: I5cb5a1c8ee13fa0f6c56edaf21eda4e19b6d144c

2 years agoFix feature checks in rasterization order attachment tests
Ricardo Garcia [Fri, 25 Feb 2022 13:02:21 +0000 (14:02 +0100)]
Fix feature checks in rasterization order attachment tests

This commit fixes the following issues:

* Do not filter the extension by default.
* Do not require Vulkan 1.2 in the tests.
* Chain the features struct in the right place when requesting it.
* Choose a supported depth/stencil format at runtime.
* Do not require the extension in explicit synchronization variants.
* Add missing VK_DEPENDENCY_BY_REGION_BIT in some barriers.

Affected tests:
dEQP-VK.rasterization.rasterization_order_attachment_access.*

Components: Vulkan
VK-GL-CTS issue: 3528

Change-Id: If8b96227174689e834efd5c71620082d389f4f80

2 years agoAdd a batch of GraphicsFuzz coverage tests
Ari Suonpaa [Wed, 23 Mar 2022 06:52:06 +0000 (08:52 +0200)]
Add a batch of GraphicsFuzz coverage tests

This commit adds a batch of GraphicsFuzz coverage tests.

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.cov-function-nested-loops-limit-uniform-xor-uniform
dEQP-VK.graphicsfuzz.cov-loop-array-index-decrement-never-negative
dEQP-VK.graphicsfuzz.cov-loop-condition-filter-some-iterations-never-discard
dEQP-VK.graphicsfuzz.cov-loop-increase-iterator-condition-uniform-copy-array-elements
dEQP-VK.graphicsfuzz.cov-loop-iterator-plus-one-variable-outside-index-array
dEQP-VK.graphicsfuzz.cov-loop-limiter-min-findlsb
dEQP-VK.graphicsfuzz.cov-loop-limiter-uniform-bitwise-and-one-always-break
dEQP-VK.graphicsfuzz.cov-loop-replace-output-color-restore-original
dEQP-VK.graphicsfuzz.cov-negative-integer-bitwise-or-uniform-increment-loop
dEQP-VK.graphicsfuzz.cov-nested-loops-copy-array-elements-skip-first
dEQP-VK.graphicsfuzz.cov-nested-loops-fragcoord-never-return-descending-loop
dEQP-VK.graphicsfuzz.cov-nested-loops-global-loop-counter-output-color-from-backup
dEQP-VK.graphicsfuzz.cov-nested-loops-identical-iterator-names-multiply-divide
dEQP-VK.graphicsfuzz.cov-two-functions-modify-struct-array-element-return-from-loop
dEQP-VK.graphicsfuzz.cov-vec2-dot-max-uniform

Change-Id: I3694d496c3e26f4fc429ac69161bb49d1cb6e9b8

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/main
Matthew Netsch [Fri, 1 Apr 2022 16:52:45 +0000 (16:52 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/main

Change-Id: Id0703e74d7bb5553e60e33bfeedf35f1941ae797

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Fri, 1 Apr 2022 16:29:11 +0000 (16:29 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: Ie7c9018ebfa517b331f6e48ca68abc0cfc4d171d

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Fri, 1 Apr 2022 16:01:34 +0000 (16:01 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I31de5eca8b8354c5dbc80545d89e63be98d2509a

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Fri, 1 Apr 2022 15:35:04 +0000 (15:35 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I4713730ea2497ef56f0c939a5e73a6bdc0cdcb6e

2 years agoFix memory leaks when creating test hierarchy
Ricardo Garcia [Mon, 28 Mar 2022 13:40:57 +0000 (15:40 +0200)]
Fix memory leaks when creating test hierarchy

The lack of a virtual destructor in one of the classes used as part of
some test parameters made createDescriptorValveMutableTests() leak
memory whenever it was called, in the moment the test hierarchy is being
destroyed. The leak will happen not only when running mutable descriptor
test, but when the binding_model test group needs to be generated for
any reason, including running tests in adjacent groups.

Hence, the change has no specific list of affected tests. At the same
time, no test result should be affected by the change.

Components: Vulkan
VK-GL-CTS issue: 3583

Change-Id: I7e847b5927359cef27f9992cd53991dd1a7cb781

2 years agoUse proper image tiling in synchronization test support checks
Ricardo Garcia [Thu, 17 Mar 2022 08:41:32 +0000 (09:41 +0100)]
Use proper image tiling in synchronization test support checks

Some test variants use LINEAR instead of OPTIMAL tiling and the proper
tiling mode features need to be checked.

Affected tests:
dEQP-VK.synchronization.*

Components: Vulkan
VK-GL-CTS issue: 3572

Change-Id: I16042ace7fb3a2f93b1503e539a5bbe59e03ae14

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 31 Mar 2022 19:30:35 +0000 (12:30 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: I5e73a149353915a09697633abab737ee8a38fdca

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 31 Mar 2022 17:26:55 +0000 (17:26 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I4624140325b398fc901142f54425375b5ffa3d66

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Matthew Netsch [Thu, 31 Mar 2022 17:02:52 +0000 (17:02 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: Ibcfcfa0cf5ad247b4c80017ad298d15a5139868f

2 years agomodifiers: Use dedicated memory consistently
James Jones [Fri, 27 Aug 2021 23:33:24 +0000 (16:33 -0700)]
modifiers: Use dedicated memory consistently

When a dedicated allocation device memory object
is exported, it must be imported as a dedicated
allocation created with a compatible resource as
well.  This change makes the DRM format modifier
tests self-consistent in that regard.

Components: Vulkan

Affected tests: dEQP-VK.drm_format_modifiers.export_import.*

VK-GL-CTS issue: 3544

Change-Id: I93a35180b9a5a1b98e0d4fa1f2934258134cef1b

2 years agodEQP-VK.pipeline.graphics_library
Boris Zanin [Tue, 8 Mar 2022 13:27:39 +0000 (14:27 +0100)]
dEQP-VK.pipeline.graphics_library

Include VkGraphicsPipelineLibraryCreateInfoEXT into chain
for empty flags.

Affected test:
 * dEQP-VK.pipeline.graphics_library.*

Components: Vulkan

VK-GL-CTS issue: 3553

Change-Id: I93a5a4dcc4dacc8a57cbb57834c4faa5f9485f16

2 years agoTest pSetLayouts in graphics_pipeline_library
Piotr Byszewski [Wed, 23 Mar 2022 15:44:55 +0000 (16:44 +0100)]
Test pSetLayouts in graphics_pipeline_library

VK_EXT_graphics_pipeline_library allows the entrys in
VkPipelineLayoutCreateInfo::pSetLayouts to be nullptr if
VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT is set.
This change adds test that use nullptrs in various combinations
of pSetLayouts.

Components: Vulkan

VK-GL-CTS issue: 3567

Affects:
dEQP-VK.pipeline.pipeline_library.graphics_library.misc.*

New tests:
dEQP-VK.pipeline.pipeline_library.graphics_library.misc.bind_null_descriptor_set.*

Change-Id: I3d8958a1e234e4d47e4f65d31c09fe3f4ddb3b54

2 years agoallow non-preferred line interpolation for gles
Erik Faye-Lund [Thu, 24 Mar 2022 15:23:45 +0000 (16:23 +0100)]
allow non-preferred line interpolation for gles

The OpenGL ES 3.2 spec, section 13.6.2.1 ("Wide Lines") says the
following:

Change-Id: I1cff239a9cc712b9e8677966f7b3b1adfe72499a

---8<---
The preferred method of attribute interpolation for a wide line is to
generate the same attribute values for all fragments in the row or
column described above, as if the adjusted line were used for
interpolation and those values replicated to the other fragments,
except for gl_FragCoord which is interpolated as usual. An
implementation may instead interpolate each fragment according to the
formula in "Basic Line Segment Rasterization", using the original
line segment endpoints.
---8<---

However, the code that verified the interpolation only checked against
the preferred interpolation.

Luckily, we have code that does the right checking. By marking the ES2
and ES3 line-rasterization tests with a bit to allow this, we can hook
this up as appropriate.

Components: OpenGL ES, Framework

VK-GL-CTS public Issue: 273

Affected Tests:
dEQP-GLES2.functional.rasterization.interpolation.*_wide
dEQP-GLES3.functional.rasterization.interpolation.line_wide
dEQP-GLES3.functional.rasterization.fbo.rbo_singlesample.interpolation.lines_wide
dEQP-GLES3.functional.rasterization.fbo.texture_2d.interpolation.lines_wide

Change-Id: Iacd493416dc945711410eb08f73f9e234b78ec61