platform/upstream/VK-GL-CTS.git
2 years agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main
Matthew Netsch [Thu, 16 Jun 2022 19:54:06 +0000 (19:54 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main

Change-Id: I867ce0fbe8b02eca111330e6d7d9625aee25e41c

2 years agoSet pipeline layout for fragment_shading_rate tests
Piers Daniell [Mon, 13 Jun 2022 17:53:30 +0000 (11:53 -0600)]
Set pipeline layout for fragment_shading_rate tests

The Vulkan spec requires there be a valid pipeline layout, even
when pipeline libraries are being used.

Components: Vulkan

Affects:

dEQP-VK.fragment_shading_rate.*.pipeline_library.*

VK-GL-CTS issue: 3764

Change-Id: I83486240c2e5e15f13a5d9610ee66d2e37ef06b9

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Matthew Netsch [Thu, 16 Jun 2022 18:39:31 +0000 (18:39 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: I8bda2888165efe5813666980c95ab76b2481d7f1

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Thu, 16 Jun 2022 18:07:42 +0000 (18:07 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: Ie9da086ce3cfaa7b9aa768fdf700905f0512f446

2 years agoSynchronize clears and reads in transient attachment tests
Ricardo Garcia [Thu, 9 Jun 2022 08:55:46 +0000 (10:55 +0200)]
Synchronize clears and reads in transient attachment tests

These tests use a render pass with no draw operations to clear a color
or depth/stencil attachment and use it as an input attachment in a
second render pass, but they were missing a barrier to synchronize both
operations.

Affected tests:
dEQP-VK.fragment_operations.transient_attachment_bit*

Components: Vulkan
VK-GL-CTS issue: 3717

Change-Id: Ifcd1817fa631973e4f74866546dfad4e021a16bc

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

Change-Id: I5830bb9dc3d462de2df81a0af118a40953315102

2 years agofix dEQP-VK.subgroups.size_control.compute.required_subgroup_size_*_require_full_subg...
Mike Blumenkrantz [Tue, 26 Apr 2022 18:30:12 +0000 (14:30 -0400)]
fix dEQP-VK.subgroups.size_control.compute.required_subgroup_size_*_require_full_subgroups_spirv16

the spirv16 cases weren't fixed in an earlier change which addressed the same problem

Affects:
dEQP-VK.subgroups.size_control.compute.required_subgroup_size_max_require_full_subgroups_spirv16
dEQP-VK.subgroups.size_control.compute.required_subgroup_size_min_require_full_subgroups_spirv16

Change-Id: Ic70024e080cff8c824ffa126774f27f2d378c52d

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

Change-Id: I4ce72e2de0508fd24ef31b5cf2ae190ad73ad2bc

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 16 Jun 2022 16:48:03 +0000 (16:48 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Ieac8dac110e196cd1d83bff11be45fdec6a72f2b

2 years agoAdd missing barrier in ray tracing tests
Thomas Aven [Mon, 30 May 2022 09:38:02 +0000 (11:38 +0200)]
Add missing barrier in ray tracing tests

When running the CPU build acceleration structure tests, no acceleration
structure commands are recorded, resulting in a missing execution
barrier. Add the missing barrier between vkCmdClearColorImage and
vkCmdTraceRaysKHR. This barrier is the same barrier used in the
equivalent ray query tests.

Affects:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.*

Components: Vulkan

VK-GL-CTS issue: 3750

Change-Id: Ib9fc047e6e3a45165e5028846f8f10e96aca53c1

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 16 Jun 2022 16:20:42 +0000 (16:20 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: If7368ce72c121d0642e902c08c0f79d6c99ad73c

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 16 Jun 2022 15:55:55 +0000 (15:55 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I238c6805dbba58a1dddb7639663cd9c9b83b7f64

2 years agoMerge "Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3" into vulkan...
Matthew Netsch [Fri, 10 Jun 2022 14:51:04 +0000 (14:51 +0000)]
Merge "Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3" into vulkan-cts-1.3.3

2 years agoFix Android build
Peter Kohaut [Thu, 9 Jun 2022 09:03:07 +0000 (11:03 +0200)]
Fix Android build

Fixes copy & paste error.
Disables Sys V shared memory for Android as it is unsupported.

Components: Vulkan

Affects:
*

VK-GL-CTS issue: 3756

Change-Id: I45a24916e57a8c77a1fb0e88e89927ca34069b52
(cherry picked from commit c51f848880bf03bd8c303a34aee7d92185185a61)

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/main
Matthew Netsch [Thu, 9 Jun 2022 19:30:09 +0000 (12:30 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/main

Change-Id: Ib8d390597800227dfd8133588700a1a58d3d8c37

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Matthew Netsch [Thu, 9 Jun 2022 19:25:38 +0000 (12:25 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: Icf1eec1fba1f1272f424878113e510fa6fb8a92a

2 years agoForbid implicit cast from Move<T> to bool
Ricardo Garcia [Wed, 1 Jun 2022 15:31:23 +0000 (17:31 +0200)]
Forbid implicit cast from Move<T> to bool

Take the following code:

  Move<VkPipelineLayout> smartLayout = ...;
  VkPipelineLayout rawLayout = smartLayout;

That builds and applies the following implicit conversions:

  Move<T> -> bool -> VkPipelineLayout

Which doesn't make any sense (the raw handle ends up having value "1")
and it's arguably an easy typo to make, when the second line should
actually have been one of:

  VkPipelineLayout rawLayout = *smartLayout;
  VkPipelineLayout rawLayout = smartLayout.get();

This commit disallows the implicit conversions from Move<T> to bool and
makes the typo fail compilatoin on purpose.

It also fixes one instance of such typo in the affected test, which was
causing issues when implementing graphics pipeline libraries in RADV.

Note the test also touches vktRenderPassTests.cpp, but the change should
not affect any test result there.

Affected tests:
dEQP-VK.pipeline.pipeline_library.graphics_library.misc.timing.compare_link_times

VK-GL-CTS issue: 3735
Components: Vulkan

Change-Id: Id968a1e74f6246e592257f7b3675c80e3363feaf

2 years agoFix extension checks in DRM format modifier tests
Ricardo Garcia [Wed, 25 May 2022 10:36:00 +0000 (12:36 +0200)]
Fix extension checks in DRM format modifier tests

Some of the checks for supported extensions made the tests error out
instead of marking them as not supported.

Affected tests:
dEQP-VK.drm_format_modifiers.*

Components: Vulkan
VK-GL-CTS issue: 3720

Change-Id: I47c1f051128e425d5faae3bed5c2830218df4881

2 years agoFix device and memory allocation mix-up
Ricardo Garcia [Wed, 1 Jun 2022 14:19:25 +0000 (16:19 +0200)]
Fix device and memory allocation mix-up

compute_transfer dynamic state tests were allocating memory on one
device and binding it to a buffer created on a separate device. This
commit fixes the issue and make sure the right devices and allocators
are always used.

Affected tests:
dEQP-VK.dynamic_state.monolithic.compute_transfer.*

VK-GL-CTS issue: 3727
Components: Vulkan

Change-Id: I8f8aeffd0d4946465af1a600d5f7331e4040638a

2 years agoFix Android build
Peter Kohaut [Thu, 9 Jun 2022 09:03:07 +0000 (11:03 +0200)]
Fix Android build

Fixes copy & paste error.
Disables Sys V shared memory for Android as it is unsupported.

Components: Vulkan

Affects:
*

VK-GL-CTS issue: 3756

Change-Id: I45a24916e57a8c77a1fb0e88e89927ca34069b52

2 years agoShrink the framebuffer in more graphicsfuzz tests
Graeme Leese [Fri, 20 May 2022 14:34:28 +0000 (15:34 +0100)]
Shrink the framebuffer in more graphicsfuzz tests

These are all resolution independent but use large framebuffers and are
executing slowly on some of our low-end platforms.

Components: Vulkan
Affects: dEQP-VK.graphicsfuzz.arr-value-set-to-arr-value-squared
         dEQP-VK.graphicsfuzz.cov-array-copies-loops-with-limiters
         dEQP-VK.graphicsfuzz.cov-blockfrequency-several-for-loops
         dEQP-VK.graphicsfuzz.cov-do-while-negative-iterator-nested-loops-increment-array-element
         dEQP-VK.graphicsfuzz.cov-dummy-function-loop-array-element-increment-never-read
         dEQP-VK.graphicsfuzz.cov-for-array-initializing-modulo
         dEQP-VK.graphicsfuzz.cov-function-loop-condition-variable-less-than-min-itself
         dEQP-VK.graphicsfuzz.cov-function-loop-copy-array-elements-based-on-arguments
         dEQP-VK.graphicsfuzz.cov-function-two-loops-limit-using-arguments-array-element-copies
         dEQP-VK.graphicsfuzz.cov-increment-int-loop-counter-mod-array
         dEQP-VK.graphicsfuzz.cov-initialize-integer-array-variable-divided-by-itself
         dEQP-VK.graphicsfuzz.cov-instruction-simplify-inst-combine-calls-for-compare-function-call-result
         dEQP-VK.graphicsfuzz.cov-integer-minus-one-increased-before-indexing-array
         dEQP-VK.graphicsfuzz.cov-loop-clamp-to-one-empty-condition
         dEQP-VK.graphicsfuzz.cov-loop-condition-bitfield-extract-set-array-elements
         dEQP-VK.graphicsfuzz.cov-loop-condition-divide-by-uniform-always-false
         dEQP-VK.graphicsfuzz.cov-loop-struct-array-field-set-value-self-dependency
         dEQP-VK.graphicsfuzz.cov-nested-functions-struct-arrays-vector-lengths
         dEQP-VK.graphicsfuzz.cov-nested-loop-not-greater-than-increment-array-element
         dEQP-VK.graphicsfuzz.cov-nested-loop-undefined-smoothstep-never-executed
         dEQP-VK.graphicsfuzz.cov-nested-loops-float-bits-to-int-increment-array
         dEQP-VK.graphicsfuzz.cov-nested-loops-global-loop-counter-do-while-accumulate-float
         dEQP-VK.graphicsfuzz.cov-nir-array-access
         dEQP-VK.graphicsfuzz.cov-optimize-phis-for-for-do-while-if-if
         dEQP-VK.graphicsfuzz.cov-optimize-phis-for
         dEQP-VK.graphicsfuzz.cov-register-coalescer-live-intervals-target-instr-info-for-discard-for-discard
         dEQP-VK.graphicsfuzz.cov-scaled-number-nested-loops
         dEQP-VK.graphicsfuzz.cov-set-output-color-function-call-nested-loop
         dEQP-VK.graphicsfuzz.cov-two-loops-global-loop-counter-shift-right-zero-increment-array-element
         dEQP-VK.graphicsfuzz.cov-unused-matrix-copy-inside-loop
         dEQP-VK.graphicsfuzz.cov-value-tracking-selection-dag-negation-clamp-loop
         dEQP-VK.graphicsfuzz.flag-always-false-if
         dEQP-VK.graphicsfuzz.nested-for-break-mat-color

Change-Id: I108ea54ee35f07911f062d89840d2577f2385528

2 years agoRemove superfluous 'resolution' from graphicsfuzz test
Graeme Leese [Fri, 20 May 2022 14:38:35 +0000 (15:38 +0100)]
Remove superfluous 'resolution' from graphicsfuzz test

This wasn't referenced and doesn't seem related to the point of the
test, so remove it.

Components: Vulkan
Affects: dEQP-VK.graphicsfuzz.arr-value-set-to-arr-value-squared

Change-Id: I0057ccca5adb841d0c31d9ba06fe38ba70e78ed5

2 years agoAdd KHR-GLESEXT.fragment_shading_rate tests
Younggwan Kim [Thu, 24 Feb 2022 13:47:25 +0000 (13:47 +0000)]
Add KHR-GLESEXT.fragment_shading_rate tests

add basic test and complex test for verify GL_EXT_fragment_shading_rate
extension.
 - GLESEXT.fragment_shading_rate.api.basic
 - GLESEXT.fragment_shading_rate.api.errors
 - GLESEXT.fragment_shading_rate.complex.*
 - GLESEXT.fragment_shading_rate.render_target.*

Change-Id: I6673c0643c038bf4b1e4b717b2916daf4b79a84c

2 years agoRun DR draw tests with secondary command buffers
Piotr Byszewski [Fri, 11 Mar 2022 09:29:00 +0000 (10:29 +0100)]
Run DR draw tests with secondary command buffers

Dynamic rendering tests in draw group were replaced with three
sub groups: primary_cmd_buff, partial_secondary_cmd_buff and
complete_secondary_cmd_buff.
* primary_cmd_buff subgroup contains previously existing dynamic
rendering tests where drawing is done in primary command buffer.
* partial_secondary_cmd_buff contains tests where drawing commands
are recorded in secondary command buffer but begin/endRendering
are recorded to primary command buffer.
* complete_secondary_cmd_buff executes tests with secondaries that
completely contain the dynamic render pass.

This change also removes 4 tests that were added 2 years ago:
* static_scissor_framebuffer_border_out
* dynamic_scissor_framebuffer_border_out
* static_scissor_oversized
* dynamic_scissor_oversized
Above tests render outside of the renderArea and are invalid.

Components: Vulkan

VK-GL-CTS issue: 3516

Affects:
dEQP-VK.draw.*

New tests:
dEQP-VK.draw.dynamic_rendering.partial_secondary_cmd_buff.*
dEQP-VK.draw.dynamic_rendering.complete_secondary_cmd_buff.*

Change-Id: If6a0d82b98948f155e9350f841931c329e474b07

2 years agoAdd recipe for amber-verify run mode
Jari Komppa [Mon, 30 May 2022 09:28:04 +0000 (12:28 +0300)]
Add recipe for amber-verify run mode

Changes build check scripts to include a recipe for checking that amber
device requirements match with what CTS asks for.

Changes amber-verify code to also print out the errors in stderr to make
finding the errors easier by looking at the console log.

Affects: none

Components: Framework
VK-GL-CTS issue: 3368

Change-Id: Id064420425563111ac3e2038dd27d7becdccdcb6

2 years agoAdd new test cases for VK_EXT_load_store_op_none
Ari Suonpaa [Thu, 2 Jun 2022 05:10:45 +0000 (08:10 +0300)]
Add new test cases for VK_EXT_load_store_op_none

These new cases make sure one of the aspects in depth stencil
buffer stays unmodified when load and store ops are none and
only the other aspect is written.

VK-GL-CTS Issue: 3722

New tests:

dEQP-VK.*.load_store_op_none.depthstencil*

Components: Vulkan
Change-Id: I04611087bc39290e2cb5b461326c11b5eb8d2622

2 years agoUpdate Vulkan headers
Peter Kohaut [Thu, 9 Jun 2022 11:15:25 +0000 (13:15 +0200)]
Update Vulkan headers

Components: Vulkan
Change-Id: I96104b2ed4bf5c9fadf2119c7ef70f9492f78eba

2 years agoMerge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main
Matthew Netsch [Thu, 9 Jun 2022 18:25:33 +0000 (18:25 +0000)]
Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main

Change-Id: Ia8e90590750d6428ab9f55ec9447f184be48d439

2 years agofurther improve sparse texture shader typing
Mike Blumenkrantz [Wed, 11 May 2022 21:39:32 +0000 (17:39 -0400)]
further improve sparse texture shader typing

this handles the multisample-array mismatch

Affects:
KHR-GL46.sparse_texture2_tests.UncommittedRegionsAccess

Change-Id: I45a8fd3ab576fb833100d2fbea36936e279a1bb5

2 years agofix GL sparse texture gather offset constness
Mike Blumenkrantz [Wed, 11 May 2022 12:49:21 +0000 (08:49 -0400)]
fix GL sparse texture gather offset constness

the offsets array must be a constant value, which, as defined by the spec,
must be constant before optimizations, so declaring them in this way
was illegal

Affects:
KHR-GL46.sparse_texture2_tests.SparseTexture2Lookup

Change-Id: I8d03931e59ac15674ae55902f693338b2ce99cb2

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main
Matthew Netsch [Thu, 9 Jun 2022 17:42:02 +0000 (17:42 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main

Change-Id: I643f0e3cbc9aa9d9012a6eba830d779b45cd643d

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Matthew Netsch [Thu, 9 Jun 2022 17:14:49 +0000 (17:14 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8

Change-Id: Iea933cfe50d4538966618000204b04bc2f60ba1e

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Thu, 9 Jun 2022 16:42:55 +0000 (16:42 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: I5a907b609b2763a74587533edac269be72027909

2 years agoFix signed integer overflow in random indirect draw tests
Ari Suonpaa [Wed, 25 May 2022 12:11:11 +0000 (15:11 +0300)]
Fix signed integer overflow in random indirect draw tests

VK-GL-CTS Issue: 3331

Affects:

dEQP-GLES31.functional.draw_indirect.random.*

Components: OpenGL ES
Change-Id: I75a57a0ee14f00d049e0c27628017c86b7078174

2 years agoFix signed integer overflow in random shader tests
Ari Suonpaa [Wed, 18 May 2022 11:33:13 +0000 (14:33 +0300)]
Fix signed integer overflow in random shader tests

VK-GL-CTS Issue: 3334

Affects:

dEQP-GLES3.functional.shaders.random.*

Components: OpenGL ES, Framework
Change-Id: I8a0ea222ba62c08180244d34adc0f4f0b5e4db9e

2 years agoAllow not supporting separate depth/stencil with combined formats
Thomas Spurden [Mon, 11 Apr 2022 13:00:17 +0000 (14:00 +0100)]
Allow not supporting separate depth/stencil with combined formats

Components: OpenGL
Affects: dEQP-GLES3.functional.fbo.*

Change-Id: I2eb2433921b3d8f7da30d5d546c07da46bebb343

2 years agoUpdate known conformance version for 1.3.3.0
Matthew Netsch [Thu, 9 Jun 2022 03:55:12 +0000 (20:55 -0700)]
Update known conformance version for 1.3.3.0

Components: Vulkan, Framework

Affects:
dEQP-VK.api.driver_properties.conformance_version

Change-Id: Id2a541585bb9bff2c6b929d7b045c2c08fc58db6

2 years agoSplit pipeline.txt mustpass into multiple files
Piotr Byszewski [Wed, 11 May 2022 14:44:02 +0000 (16:44 +0200)]
Split pipeline.txt mustpass into multiple files

Scripts that generate mustpass files were changed to allow
specification of test groups that should be spitted to separate
.txt files. With this change python dictionaries are heavily
used (not just lists) and because of that order of groups in
all .txt files has changed. (Dictionaries are sorted)
This change uses new functionality for pipeline group that now
will be splited to 3 files (each representing subgroup).

Components: Framework

VK-GL-CTS issue: 3641

Affects:
*

Change-Id: I8e339fa71cb2348a5074f53697f9d283c9ba9c35

2 years agoAdd R8_UNORM to the external AHB memory tests
Trevor David Black [Mon, 16 May 2022 03:43:09 +0000 (03:43 +0000)]
Add R8_UNORM to the external AHB memory tests

New Tests:
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.r8_unorm

Components: Vulkan
Change-Id: I40a76b4b6112ae6d0b053cf3427e313a6894a873

2 years agoMore EXT_color_write_enable tests.
michal_jakubek [Wed, 20 Apr 2022 08:42:30 +0000 (10:42 +0200)]
More EXT_color_write_enable tests.

New tests:
dEQP-VK.pipeline.*.color_write_enable_maxa.*

Components: Vulkan

VK-GL-CTS issue: 3569

Change-Id: I9db26fe0cbee3134b174efcebf8a795b7b676a28

2 years agoMerge vk-gl-cts/dev/VK_EXT_image_compression_control into vk-gl-cts/main
Matthew Netsch [Thu, 2 Jun 2022 14:08:13 +0000 (07:08 -0700)]
Merge vk-gl-cts/dev/VK_EXT_image_compression_control into vk-gl-cts/main

Change-Id: I893a082eb8816ed9ef7f20f0246781e19d999029

2 years agoMerge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_image_compression_control
Matthew Netsch [Tue, 31 May 2022 21:21:26 +0000 (14:21 -0700)]
Merge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_image_compression_control

Change-Id: I67f8b39b34d0de496292c3f0db2d182d63a31140

2 years agoMerge vk-gl-cts/dev/VK_KHR_fragment_shader_barycentric into vk-gl-cts/main
Matthew Netsch [Thu, 2 Jun 2022 14:13:18 +0000 (07:13 -0700)]
Merge vk-gl-cts/dev/VK_KHR_fragment_shader_barycentric into vk-gl-cts/main

Change-Id: Iee05a3a148b62122de199cad70cda8f9f3f2170c

2 years agoMerge vk-gl-cts/main into vk-gl-cts/dev/VK_KHR_fragment_shader_barycentric
Matthew Netsch [Wed, 1 Jun 2022 19:55:08 +0000 (12:55 -0700)]
Merge vk-gl-cts/main into vk-gl-cts/dev/VK_KHR_fragment_shader_barycentric

Change-Id: Ib4407c269be86851031a8a6ce1abc93d4e553996

2 years agoMerge vk-gl-cts/dev/VK_KHR_ray_tracing_maintenance1 into vk-gl-cts/main
Matthew Netsch [Thu, 2 Jun 2022 14:07:03 +0000 (07:07 -0700)]
Merge vk-gl-cts/dev/VK_KHR_ray_tracing_maintenance1 into vk-gl-cts/main

Change-Id: I1b78dec2819e963937d831f1b8c3e11e2428184a

2 years agoMerge vk-gl-cts/main into vk-gl-cts/VK_KHR_ray_tracing_maintenance1
Matthew Netsch [Wed, 1 Jun 2022 17:59:31 +0000 (10:59 -0700)]
Merge vk-gl-cts/main into vk-gl-cts/VK_KHR_ray_tracing_maintenance1

Change-Id: I2502165363120c2aa71e0356f607fe895bdc8eb2

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/main
Matthew Netsch [Mon, 6 Jun 2022 19:58:19 +0000 (12:58 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/main

Change-Id: I0038924e2f520376d3dbe078d5ad0a2e60585f2b

2 years agoFix modifier tests - Add Invalidate memory before host read.
Matthew Netsch [Mon, 6 Jun 2022 15:54:27 +0000 (08:54 -0700)]
Fix modifier tests - Add Invalidate memory before host read.

Test cases for extension VK_EXT_image_drm_format_modifier were failing randomly due to image mismatch.
This was due to after performing copyImagetoBuffer buffers are not invalidated before reading from host.
Added the invalidate operation for buffer before reading.

Components: Vulkan
VK-GL-CTS Issue: 3744

Affects:
dEQP-VK.drm_format_modifiers.*

Change-Id: I57b27bf9c0beea0ed822b36ea379b024f9d1690a

2 years agoDeclare atomic_payload array coherent
Jesse Archer [Fri, 20 May 2022 21:15:10 +0000 (14:15 -0700)]
Declare atomic_payload array coherent

Data in the release_acquire_atomic_payload uses atomic functions
on an array, so this array needs to be declared coherent.

Affected tests:
dEQP-VK.memory_model.message_passing.permuted_index.release_acquire_atomic_payload

Components: Vulkan

VK-GL-CTS issue: 3706

Change-Id: I6f285e3000368d083369bda5b3782a3b44c9b64d

2 years agoFix spec info in pipeline max varyings tests
Tomasz Owczarek [Tue, 10 May 2022 14:46:28 +0000 (15:46 +0100)]
Fix spec info in pipeline max varyings tests

Add missing VkSpecializationInfo to fragment shader stage.

Components: Vulkan

VK-GL-CTS issue: 3677

Affects:
dEQP-VK.pipeline.*.max_varyings*

Change-Id: Icf702ca953ad996e9081aa9197fbdcedd21dd191

2 years agoAdd threshold to rasterization order depth checks
Ricardo Garcia [Mon, 23 May 2022 14:43:16 +0000 (16:43 +0200)]
Add threshold to rasterization order depth checks

These tests compared floating point depth values expecting exact
matches, which was causing trouble for some implementations. This commit
adds an error threshold to the check.

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

Components: Vulkan
VK-GL-CTS issue: 3711

Change-Id: If6798dfd473f57341775e83d68188e39bdf27caa

2 years agoFix test using LAYOUT_CREATE_INDEPENDENT_SETS_BIT
Piotr Byszewski [Sat, 21 May 2022 21:49:08 +0000 (23:49 +0200)]
Fix test using LAYOUT_CREATE_INDEPENDENT_SETS_BIT

Original test plan for testing VK_EXT_graphics_pipeline_library had
one test that actually doesn't require pipeline library extension.
This test wrongfully created pipeline layout using
VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT flag
violating VUID-VkPipelineLayoutCreateInfo-flags-parameter.

Components: Vulkan

VK-GL-CTS issue: 3704

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

Change-Id: I6842fcfd7dd686af32f989cd1b0fcd2730305d9e

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Fri, 3 Jun 2022 21:43:02 +0000 (14:43 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I4ff955997673df5a3ad35e6de3f5be8f0679dd2f

2 years agoFix regression from CL-9387 to handle empty cache properly
Piers Daniell [Fri, 3 Jun 2022 18:21:00 +0000 (12:21 -0600)]
Fix regression from CL-9387 to handle empty cache properly

The new program cache code from CL-9387 didn't handle the case where
cacheSearch() is called with an empty cache. It would look at the
first node key regardless, which is uninitialized data, and
attempt to follow the left/right node pointers, which were
also uninitialized. This could result in crash or worse.

This CL simply checks if the cache is empty, and if so doesn't
attempt to read the invalid first node.

Affects:
* (all tests with shaders)

VK-GL-CTS issue: 3565

Components: Vulkan, Framework
Change-Id: Ia813d8caf3170b0c1995bdc43a5f345b578ab615

2 years agoFix deqp-vksc build break from CL-9046
Piers Daniell [Fri, 3 Jun 2022 20:38:57 +0000 (14:38 -0600)]
Fix deqp-vksc build break from CL-9046

This module was being compiled for deqp-vksc but referenced
tokens not in the Vulkan SC API.

This fix just ifdefs those references out for VULKANSC.

Components: Vulkan

VK-GL-CTS Issue: 3552

Affects:
dEQP-VK.ycbcr.subresource_offset.*
dEQP-VK.image.subresource_layout.*_offset

Change-Id: Ia8d4f16f134bc7d3357bb59f336e12dd92ab73e0

2 years agoFix aliasing issue for globalPriorityQuery feature
John Anthony [Thu, 12 May 2022 14:39:22 +0000 (16:39 +0200)]
Fix aliasing issue for globalPriorityQuery feature

Affects:
dEQP-VK.info.device_mandatory_features

Components: Vulkan

VK-GL-CTS issue: 3675

Change-Id: Id7e18078bcd9650667834915ed4bbe3453ede91c

2 years agoSeparate create with unsupported feature tests
Jari Komppa [Fri, 8 Apr 2022 11:51:17 +0000 (14:51 +0300)]
Separate create with unsupported feature tests

This change separates the create device with unsupported features tests
into separate tests so they can be ignored on case by case basis.

The change also changes the hierarchy of device_init.*, moving the
existing tests to new .basic leaves.

Affects:
dEQP-VK.api.device_init.*

New tests:
dEQP-VK.api.device_init.create_device_unsupported_features.*

Subsystem: Vulkan
VK-GL-CTS issue: 3585

Change-Id: I05b79cbc7b74eeaeeea256c7bf5fa0bd53e3d43d

2 years agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Fri, 3 Jun 2022 20:23:08 +0000 (13:23 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: If2b3f337e48dea10ccfb3fd457f17badde5c4f43

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Fri, 3 Jun 2022 19:47:51 +0000 (19:47 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I2b98a1c69c321ed574eae1878442a1b1cb5012d3

2 years agoFix redundant writes to compressed texture
Connor Abbott [Thu, 24 Mar 2022 18:40:19 +0000 (19:40 +0100)]
Fix redundant writes to compressed texture

We already dispatch one workgroup per block, so there's no need to then
loop over all the blocks in the compute shader. Just write one block per
invocation.

Components: Vulkan

Affects:
dEQP-VK.image.sample_texture.128_bit_compressed_format*
dEQP-VK.image.sample_texture.64_bit_compressed_format*

VK-GL-CTS Issue: 3582

Change-Id: If1cf7d4a79e00dcfe735aa9c4d97220242283a12

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Fri, 3 Jun 2022 15:45:00 +0000 (08:45 -0700)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Id52b20aa498ddcc1b9dc05b7415b8d67259e2043

2 years agoMerge "Merge vk-gl-cts/vulkansc-cts-1.0.0 into vk-gl-cts/main" into main
Matthew Netsch [Fri, 3 Jun 2022 14:49:27 +0000 (14:49 +0000)]
Merge "Merge vk-gl-cts/vulkansc-cts-1.0.0 into vk-gl-cts/main" into main

2 years agoThread safe releaseQueue
Marcin Zając [Tue, 17 May 2022 16:46:08 +0000 (18:46 +0200)]
Thread safe releaseQueue

Failure discovered on ARM platform coused by commandBuffer
deleter being called after queues.releaseQueue()
is now protected by mutex lock

Components: Vulkan

Affects:
dEQP-VK.synchronization.internally_synchronized_objects.*

VK-GL-CTS issue: 3688

Change-Id: Ib743dd52a3ed5cc066268aa0618c2b770e2524dc

2 years agoFix extension check in transform feedback tests
Toni Merilehti [Tue, 17 May 2022 13:00:15 +0000 (16:00 +0300)]
Fix extension check in transform feedback tests

Check support for VK_EXT_transform_feedback extension before checking
if transformFeedback feature is supported.

Affects:
dEQP-VK.transform_feedback.simple.*

Components: Vulkan

VK-GL-CTS issue: 3697

Change-Id: I478669a0c4f4e0a88ab2161f926d39186f719585

2 years agoFix amber-verify mismatch in builtin precision tests
Juha Heiskanen [Wed, 25 May 2022 05:45:31 +0000 (08:45 +0300)]
Fix amber-verify mismatch in builtin precision tests

VK_KHR_16bit_storage and VK_KHR_storage_buffer_storage_class
requirements have been now removed from highp and fp64 matrix precision
tests.

Components: Vulkan

VK-GL-CTS Issue: 3719

Affects:
dEQP-VK.glsl.builtin.precision*.determinant.*mat3
dEQP-VK.glsl.builtin.precision*.determinant.*mat4
dEQP-VK.glsl.builtin.precision*.inverse.*mat3
dEQP-VK.glsl.builtin.precision*.inverse.*mat4

Change-Id: I204bac46129ec9843e5077032e329caed3758446

2 years agoShrink the framebuffer in 2 graphicsfuzz tests
Graeme Leese [Thu, 26 May 2022 16:42:51 +0000 (17:42 +0100)]
Shrink the framebuffer in 2 graphicsfuzz tests

This is the same change that was previously applied to a different
maze-O test.

Components: Vulkan
Affects: dEQP-VK.graphicsfuzz.spv-stable-maze-O-dead-code
         dEQP-VK.graphicsfuzz.spv-stable-maze-O-memory-accesses

Change-Id: I669a659d16019760e35c1c23c0974a72e7fc851c

2 years agoTest VkSubresourceLayout::offset is relative to the start of an image
Antto Mäkinen [Thu, 24 Mar 2022 15:35:25 +0000 (17:35 +0200)]
Test VkSubresourceLayout::offset is relative to the start of an image

This commit adds new tests that verify VkSubresourceLayout includes
the right value for an offset if an image is bound with the offset.

VK-GL-CTS Issue: 3552

New tests:
dEQP-VK.ycbcr.subresource_offset.*
dEQP-VK.image.subresource_layout.*_offset

Components: Vulkan

Change-Id: Iefaa1a6e0266f8dd599abace0b5f6bb6617fe4af

2 years agoAdd inter-process communcation to shader cache
Jari Komppa [Mon, 16 May 2022 09:28:54 +0000 (12:28 +0300)]
Add inter-process communcation to shader cache

This change allows running several instances of CTS which share a single
shader cache.

std::map which was used to hold the cache index was replaced by a simple
binary search tree implementation in order to play nice in a
pre-allocated buffer. Benchmarking gives approximately same performance
or better in random cases. Worst case behavior is terrible, but did not
occur while testing after integrating with CTS.

By default the size of the index is 1M entries, taking 16M of memory.
This memory pool is not resized dynamically, and will assert if over 1M
unique shaders are inserted to the cache.

Additional small improvement to the shader cache behavior avoids
re-hashing the cache key at cache miss.

For platforms that do not support IPC, the IPC code can be compiled out
using a predefined macro DISABLE_SHADERCACHE_IPC.

The IPC behavior is disabled by default, leading to old behavior, except
for the std::map to bst change and no re-hashing.

Affects:
*

VK-GL-CTS issue: 3565

Change-Id: I4f2433256968b76de26c9bd50981454bb4accae0

2 years agoAdd command line parameter to override Vulkan library path
Jeff Bolz [Fri, 20 May 2022 03:33:03 +0000 (22:33 -0500)]
Add command line parameter to override Vulkan library path

Components: Vulkan, VulkanSC
Change-Id: I368d4673dac8ba235e3cc30e827dccf1f37c5153

2 years agoDynamic rendering with NULL shading rate image
Juha Heiskanen [Tue, 10 May 2022 13:45:57 +0000 (16:45 +0300)]
Dynamic rendering with NULL shading rate image

VK_KHR_dynamic_rendering attachments tests are now including cases,
where VK_NULL_HANDLE is passed to
VkRenderingFragmentShadingRateAttachmentInfoKHR.imageView.

Components: Vulkan

VK-GL-CTS Issue: 3577

New tests:
dEQP-VK.fragment_shading_rate.dynamic_rendering.primary_cmd_buff.monolithic.attachment_rate.*null_shading

Change-Id: I98f4b798e8e691ff64e9a2b2248732089016373f

2 years agoTest imageSize() on 2D image views from 3D images
Ricardo Garcia [Tue, 17 May 2022 13:30:21 +0000 (15:30 +0200)]
Test imageSize() on 2D image views from 3D images

This needs VK_EXT_image_2d_view_of_3d.

New tests:
dEQP-VK.image.image_size.*2d_view_*

Affected tests:
dEQP-VK.image.image_size.*

Components: Vulkan
VK-GL-CTS issue: 3651

Change-Id: I369805ed26094cbc8812826eb9c79f352fca2e61

2 years agoBug fix for current variableSampleLocations tests + new tests
Juha Heiskanen [Fri, 27 May 2022 08:24:56 +0000 (11:24 +0300)]
Bug fix for current variableSampleLocations tests + new tests

Support check for variableSampleLocations has been added to previously
created sample_locations_ext.verify_location tests. This CL adds also
new tests, which are now using pPostSubpassSampleLocations
correctly if variableSampleLocations == FALSE.

Components: Vulkan

VK-GL-CTS Issue: 3623

Affects:
dEQP-VK.pipeline.*.sample_locations_ext.verify_location.samples_2
dEQP-VK.pipeline.*.sample_locations_ext.verify_location.samples_4
dEQP-VK.pipeline.*.sample_locations_ext.verify_location.samples_8
dEQP-VK.pipeline.*.sample_locations_ext.verify_location.samples_16
dEQP-VK.pipeline.*.sample_locations_ext.verify_location.samples*dynamic
dEQP-VK.pipeline.*.sample_locations_ext.verify_location.samples*packed

New tests:
dEQP-VK.pipeline.*.sample_locations_ext.verify_location.samples*_invariable

Change-Id: I0e87c290c370ce3c534243280c40eda7b4fc6021

2 years agoTest single-path switch statements
Toni Merilehti [Fri, 6 May 2022 06:23:56 +0000 (09:23 +0300)]
Test single-path switch statements

This CL tests switch statements that only have a default case and also
an empty case that falls through into a default case.

New tests:
dEQP-GLES3.functional.shaders.switch.default_only*
dEQP-GLES3.functional.shaders.switch.empty_case_default*

VK-GL-CTS Issue: 3659

Components: OpenGL

Change-Id: I9a59582ec2829d73f590f1fe62d841b36e02e915

2 years agoRemove usages of std::iterator
Jamie Madill [Thu, 19 May 2022 20:10:45 +0000 (16:10 -0400)]
Remove usages of std::iterator

std::iterator is deprecated in C++17.

VK-GL-CTS issue: 3703

Change-Id: Ic914f1443457bbdfb62d47e5e6245c1ee4fad31d

2 years agoFix ShaderBallotFunctionRead test
Pierre-Eric Pelloux-Prayer [Thu, 5 May 2022 15:36:35 +0000 (17:36 +0200)]
Fix ShaderBallotFunctionRead test

The current version of the test draws at 2x2 quad, expecting the value of the
4 pixels to be the same because readFirstInvocationARB is used.

The problem is that depending on the resolution used: if the 4 fragments are
processed in more than one sub-group, then the test will fail.
For instance, on AMD hw the test would pass using the default resolution, but
fail for 256x256.

Fix this by drawing in the top-left corner instead of the middle of the screen.

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

Affects:
KHR-GL*shader_ballot_tests.ShaderBallotFunctionRead

Change-Id: Ib182976aeeaab1380d3a5e1cad97fe898cbcdb8e

2 years agoAdd autogenerate with GL_EXT_fragment_shading_rate
Younggwan Kim [Thu, 21 Apr 2022 14:42:58 +0000 (15:42 +0100)]
Add autogenerate with GL_EXT_fragment_shading_rate

Change-Id: I6595c65e411b0f6c192e35dc63407e319bc9d676

2 years agoRemove usages of std::iterator
Alan Zhao [Thu, 19 May 2022 18:54:48 +0000 (14:54 -0400)]
Remove usages of std::iterator

std::iterator is deprecated in C++17, and its presence is blocking
Chromium from updating libc++ (https://crbug.com/1273285).

Components: Framework
VK-GL-CTS Issue: 3703

Change-Id: I4f8a50a3d0fc09b20c7f94807902770beb09d295

2 years agoUpdate gl.xml and fix script to build properly
Younggwan Kim [Mon, 11 Apr 2022 09:07:40 +0000 (10:07 +0100)]
Update gl.xml and fix script to build properly

gles spec sha: b0643365776c260efc6317d2ff67dd8bf5078be9
fix scripts/opengl/gen_call_log_wrapper.py script file to build

Components: Framerwork, OpenGL

Change-Id: I9dbeec42a1127469f0e98cdd68a2f88d12007642

2 years agoMerge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main
Matthew Netsch [Thu, 2 Jun 2022 22:03:39 +0000 (22:03 +0000)]
Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main

Change-Id: I87fcdfdea92e5a3ba36454128ee4e2092c33c4f9

2 years agoRework sparse texture shader typing
Mike Blumenkrantz [Fri, 22 Apr 2022 13:12:26 +0000 (09:12 -0400)]
Rework sparse texture shader typing

This previously would try to jam 2D textures into 2DArray-using
shaders and vice versa, so instead just use layered image
binding when appropriate and pass both texture targets to ensure
that everything always matches up nicely.

Affects:
KHR-GL46.sparse_texture2_tests.SparseTexture2Commitment
KHR-GL46.sparse_texture2_tests.SparseTexture2Lookup
KHR-GL46.sparse_texture2_tests.UncommittedRegionsAccess
KHR-GL46.sparse_texture_clamp_tests.SparseTextureClampLookupColor
KHR-GL46.sparse_texture_clamp_tests.SparseTextureClampLookupResidency
KHR-GL46.sparse_texture_tests.SparseTextureAllocation
KHR-GL46.sparse_texture_tests.SparseTextureCommitment

Components: OpenGL
VK-GL-CTS issue: 3653

Change-Id: Iea7d1027784aaad4969b01372895939ac96968bc

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main
Matthew Netsch [Thu, 2 Jun 2022 21:22:12 +0000 (21:22 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main

Change-Id: I011f48b25cfd0f2b951425ea770220a6dcaa3e1a

2 years agoFix extension checks for EGL external image tests
Andy Candet [Sat, 16 Apr 2022 20:16:53 +0000 (21:16 +0100)]
Fix extension checks for EGL external image tests

Commit 2090c97 extended dEQP-EGL.functional.image.modify.* with new
actions to test sampling from an external image. The actions implement
getRequiredExtension, so they were likely intended to be skipped if
GL_OES_EGL_image_external is not available.

However, extension checks are only performed for actions invoked through
ImageFormatCase. These actions are invoked one level down the call
stack, through RenderTryAll.

The result is that 22 tests in dEQP-EGL.functional.image.modify.* fail
during shader compilation if the extension is not available.

This commit adds an extension check to RenderTryAll::invokeGLES. Actions
will be skipped if the check fails. This is probably what was intended
in the first place, since RenderTryAll ignores NotSupported results.

Affects: dEQP-EGL.functional.image.modify.*

Components: EGL

Change-Id: Id1106d69fbe71d39695fc32513d80d23f1e94b40

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Matthew Netsch [Thu, 2 Jun 2022 20:51:45 +0000 (20:51 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8

Change-Id: Ib621fd1a176f1921e3b12c8e9df7f51f552df695

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Thu, 2 Jun 2022 20:14:29 +0000 (20:14 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: I6edc6c1598e5a0e4d92c1e3d5aeb7baa1688c888

2 years agoFix sample mask calculation
Ari Suonpaa [Wed, 18 May 2022 10:14:47 +0000 (13:14 +0300)]
Fix sample mask calculation

Sample mask calculation path was executed even when sample
was -1, causing a large number to be used for a shift. Now
a sample mask of zero is chosen instead.

VK-GL-CTS Issue: 3329

Affects:

dEQP-GLES31.functional.texture.multisample.*.sample_mask_and_alpha_to_coverage

Components: OpenGL ES
Change-Id: Ie5600ead5a5b0228a3ed255d7e4cc49a314a7ba6

2 years agoMerge vk-gl-cts/vulkansc-cts-1.0.0 into vk-gl-cts/main
Matthew Netsch [Thu, 2 Jun 2022 20:13:01 +0000 (13:13 -0700)]
Merge vk-gl-cts/vulkansc-cts-1.0.0 into vk-gl-cts/main

Change-Id: I25fc44097a2c5271bdc9fa082fab612558e35b2b

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

Change-Id: I8931b5406a04f317c172c1357c1ab3b2c7b12be3

2 years agoFix for the bounding box tests with GL 4.5
Tapani Pälli [Fri, 10 Sep 2021 12:06:10 +0000 (15:06 +0300)]
Fix for the bounding box tests with GL 4.5

Affects:
dEQP-GL*functional.primitive_bounding_box.*

Components: AOSP
VK-GL-CTS issue: 3104

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I38db9fc893a685893dbd6c2de8ab15ab3e0db11e
(cherry picked from commit 9e6d211ebf47f228f6648c7a30be8eb98cec41a9)

2 years agoFix missing self-subpass dependency
Mohd Faisal [Wed, 13 Oct 2021 14:09:01 +0000 (15:09 +0100)]
Fix missing self-subpass dependency

Self-subpass dependency required for read-after-write operation, in test
cases where the attachment is written using load-op-load at the start
of subpass and then the values are read inside the fragment shader.

Affects:

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

Components: Vulkan

VK-GL-CTS issue: 3216

Change-Id: I6c72b81dccfb7526ec4607b255ff4872b13c4d22
(cherry picked from commit 305ee4bd7e5b372b2c910b615a146f2aa4416527)

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Thu, 2 Jun 2022 19:06:02 +0000 (19:06 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: Ic4e0dff0f0b61669584c3eff4602af9971552ab4

2 years agoFix int64 robustness bugs
Andreas Flöjt [Thu, 5 May 2022 12:18:06 +0000 (14:18 +0200)]
Fix int64 robustness bugs

First bug: VkImage and VkImageView that use different formats without
specifying the VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT flag on the image.

Second bug: Using a shader with a multisampled storage image without
checking the shaderStorageImageMultisample feature.

Affects:
dEQP-VK.robustness.image_robustness.*.r64i.*

Components: Vulkan

VK-GL-CTS issue: 3680

Change-Id: I7b984c3c7b6b2ee551618b7a32d4a841e942cd95

2 years agoskip non-compresed 3D views of compressed images
Ilan Aelion [Mon, 4 Apr 2022 18:51:22 +0000 (11:51 -0700)]
skip non-compresed 3D views of compressed images

dEQP-VK.image.texel_view_compatible.graphic.*.3d_image.texture_read
tests violate VUID-VkImageViewCreateInfo-image-04739 - "If image was
created with the VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT flag
and format is a non-compressed format, viewType must not be
VK_IMAGE_VIEW_TYPE_3D"

Components: Vulkan
Affected Tests:
dEQP-VKSC.image.texel_view_compatible.graphic.*.3d_image.texture_read.*

Change-Id: I48512da1cdedbaecc73ac1ae1289cbbb4bc2f70c

2 years agoFix leak on SimpleAllocator
Juan A. Suarez Romero [Fri, 13 May 2022 09:50:30 +0000 (11:50 +0200)]
Fix leak on SimpleAllocator

SimpleAllocator object is leaked in some tests.

Affected tests:
dEQP-VK.compute.basic.concurrent_compute
dEQP-VK.draw.concurrent.compute_and_triangle_list

Components: Vulkan
VK-GL-CTS issue: 3634

Change-Id: Ief51211f94f2754b9133285ff7374971b7ea20e3

2 years agoFix entry points check for VK_KHR_draw_indirect_count
Ricardo Garcia [Thu, 12 May 2022 14:26:44 +0000 (16:26 +0200)]
Fix entry points check for VK_KHR_draw_indirect_count

VK_KHR_draw_indirect_count was promoted to core in Vulkan 1.2, but its
non-KHR entry points (vkCmdDrawIndirectCount and
vkCmdDrawIndexedIndirectCount) are not mandatory unless the device
supports the extension. In that case, the drawIndirectCount feature bit
will also be true. Any of the two checks is valid.

Affected tests:
dEQP-VK.api.version_check.entry_points

VK-GL-CTS issue: 3679
Components: Vulkan

Change-Id: I95666c1a22bed7da33f58a50307294c4048cd8ff

2 years agoInclude the proper formats in pViewFormats list
Ricardo Garcia [Fri, 20 May 2022 10:02:06 +0000 (12:02 +0200)]
Include the proper formats in pViewFormats list

Imageless framebuffer variants in fragment shading rate basic tests were
not including the render pass image view formats in the list of view
formats when creating the framebuffer, resulting in validation errors
with code VUID-VkFramebufferCreateInfo-flags-03205.

Affected tests:
dEQP-VK.fragment_shading_rate.basic.*

Components: Vulkan
VK-GL-CTS issue: 3705

Change-Id: I7389b8a0a2f24b3085f3963064508c8c388e43bc

2 years agoFix state binding in multiview tests
Ricardo Garcia [Mon, 23 May 2022 08:40:23 +0000 (10:40 +0200)]
Fix state binding in multiview tests

According to the spec, when multiview is enabled all non-render pass
state is undefined at the beginning of each subpass, but multiview tests
were binding vertex buffers, index buffers and descriptor sets before
beginning the render pass. This commit moves the binding commands to the
same point the pipeline is bound for each subpass.

In addition, it fixes some validation errors related to the following
VUIDs:

  - VUID-VkSubpassDependency-srcSubpass-02243
  - VUID-VkSubpassDependency2-srcSubpass-02245

Due to some subpass dependencies missing the VK_DEPENDENCY_BY_REGION_BIT
bit in their flags despite being mandated by the spec.

Affected tests:
dEQP-VK.multiview.*

Components: Vulkan
VK-GL-CTS issue: 3701

Change-Id: I4f91f3dad0305e93dce68bb43497215c628df543

2 years agoImprove comparison of VkPhysicalDeviceMemoryProperties
Chia-I Wu [Sat, 28 May 2022 00:47:42 +0000 (17:47 -0700)]
Improve comparison of VkPhysicalDeviceMemoryProperties

VkMemoryType should be fine, but VkMemoryHeap normally has a 4-byte
padding which can be garbage.  Compare individual members rather than
doing deMemCmp.

VK-GL-CTS Issue: 3590

Affects: dEQP-VK.api.info.get_physical_device_properties2.memory_properties

Components: Vulkan
Change-Id: I49e276ee15d10ca40f11c7a5fd3fb50b84ff1de3

2 years agoFix shader operator tests' precision expectation
Shahbaz Youssefi [Mon, 22 Nov 2021 20:30:26 +0000 (15:30 -0500)]
Fix shader operator tests' precision expectation

es3fShaderOperatorTests.cpp takes the reported precision for lowp and
mediump (through glGetShaderPrecisionFormat) and tests that that many
bits are actually supported by the type.

glGetShaderPrecisionFormat is a legacy function that's not very
meaningful on modern hardware (see Vulkan issue #2931), and there is no
equivalent for its functionality in Vulkan.

This relevant tests are changed such that the test now verifies that _at
least_ that many bits are used in lowp and mediump operations, rather
than _exactly_.  This aligns with the semantics of RelaxedPrecision in
SPIR-V.

Affected tests:
dEQP-GLES3.functional.shaders.operator.*

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

Change-Id: I88a38d6ee067de8313f25327578c6666c257dc8b
(cherry picked from commit 23d62b971cec55ae49cddc9a9e37614bc9f80668)

2 years agoFix GL_MAX_FRAGMENT_INTERPOLATION_OFFSET limit check
Shahbaz Youssefi [Fri, 27 Aug 2021 03:11:56 +0000 (23:11 -0400)]
Fix GL_MAX_FRAGMENT_INTERPOLATION_OFFSET limit check

The spec is fixed to align with Vulkan, requiring the minimum value for
GL_MAX_FRAGMENT_INTERPOLATION_OFFSET to be 0.5-ULP, where

    ULP = 1/pow(2,GL_FRAGMENT_INTERPOLATION_OFFSET_BITS)

Affects:
dEQP-GL45.functional.state_query.multisample_interpolation.max_fragment_interpolation_offset.get_float
dEQP-GLES31.functional.state_query.multisample_interpolation.max_fragment_interpolation_offset.get_float
KHR-GL44.shader_multisample_interpolation.api.api
KHR-GL45.shader_multisample_interpolation.api.api
KHR-GL46.shader_multisample_interpolation.api.api
KHR-GLES31.core.shader_multisample_interpolation.api.api
KHR-GL45.limits.max_fragment_interpolation_offset
KHR-GL46.limits.max_fragment_interpolation_offset

Components: OpenGL
Khronos OpenGL issue: #149

Change-Id: I153a05ef6db8f50a6aa337188e5aeb8d504fbbdd
(cherry picked from commit 5d72b170aad664e4fcf770863d37bd041d45ff9b)

2 years agowriteSupportedExtensions for VKSC
Marcin Zając [Tue, 17 May 2022 15:40:26 +0000 (17:40 +0200)]
writeSupportedExtensions for VKSC

Remove depreciated extensions_data.txt file in gen_framework.py
for vkSupportedExtensions.inl file generation

Components: Vulkan

VK-GL-CTS issue: 3690

Change-Id: Id216ea169c4245fc81177ca02677bbbf7320b803