platform/upstream/VK-GL-CTS.git
22 months agoMerge "Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main" into main
Matthew Netsch [Mon, 29 Aug 2022 16:00:45 +0000 (16:00 +0000)]
Merge "Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main" into main

22 months agoAdd dynamic rendering test for mixed inside/outside render pass commands
Aitor Camacho [Thu, 4 Aug 2022 13:13:16 +0000 (15:13 +0200)]
Add dynamic rendering test for mixed inside/outside render pass commands

New test:
dEQP-VK.dynamic_rendering.basic.secondary_cmdbuffer_out_of_rendering_commands

Components: Vulkan

VK-GL-CTS issue: 3394

Change-Id: Iafebdeab6e365e376be0cf0a85af46b94836b6ca

22 months agoTests for AMD_shader_early_and_late_fragment_tests
Arkadiusz Sarwa [Thu, 4 Nov 2021 13:57:40 +0000 (14:57 +0100)]
Tests for AMD_shader_early_and_late_fragment_tests

New tests:
dEQP-VK.fragment_operations.early_fragment.*early_and_late*
dEQP-VK.fragment_shading_rate.*.fragdepth_early_late.*
dEQP-VK.fragment_shading_rate.*.fragstencil_early_late.*
dEQP-VK.pipeline.*.op_replace_early_and_late
dEQP-VK.spirv_assembly.instruction.graphics.early_and_late_fragment.*
dEQP-VK.fragment_operations.early_fragment.*early_and_late*

Affected:
dEQP-VK.fragment_operations.early_fragment.*
dEQP-VK.fragment_shading_rate.*
dEQP-VK.pipeline.fast_linked_library.shader_stencil_export.*
dEQP-VK.pipeline.monolithic.shader_stencil_export.*
dEQP-VK.pipeline.pipeline_library.shader_stencil_export.*
dEQP-VK.spirv_assembly.instruction.graphics.*
dEQP-VK.fragment_operations.early_fragment.*

Components: Vulkan
VK-GL-CTS issue: 3866

Change-Id: I279310ed8be42c3a6cd4ed83febcb6a404752a1a

22 months agoMerge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main
Matthew Netsch [Mon, 29 Aug 2022 15:10:22 +0000 (08:10 -0700)]
Merge vk-gl-cts/opengl-es-cts-3.2.8 into vk-gl-cts/main

Change-Id: I32263338d6ff1c7c9da96a1ed44cb418fbb27ada

22 months agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Matthew Netsch [Fri, 26 Aug 2022 16:56:32 +0000 (09:56 -0700)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8

Change-Id: Ib61101e1c720a4f28429af20dba9554ad03dd94e

22 months agoMerge "Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main" into main
Matthew Netsch [Fri, 26 Aug 2022 15:40:40 +0000 (15:40 +0000)]
Merge "Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main" into main

22 months agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Fri, 26 Aug 2022 15:23:22 +0000 (08:23 -0700)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ia00eca74b753f1f88ac794c6d3664a769cfc2c6f

22 months agoFix triangle strip adjacency tests vertex ordering
ziga-lunarg [Mon, 25 Jul 2022 15:14:31 +0000 (17:14 +0200)]
Fix triangle strip adjacency tests vertex ordering

OpenGL got an update where the ordering of vertices captured
by transform feedback when GL_TRIANGLE_STRIP_ADJACENCY is used
can either match the old OpenGL ordering or the new Vulkan ordering

Components: OpenGL

VK-GL-CTS issue: 3671

Affected tests:
KHR-GLES31.core.geometry_shader.*
KHR-GLES32.core.geometry_shader.*

Change-Id: I7f75b357593429110cc4517d0852b5cf2f7bb8db

22 months agoFix enabling of partially promoted extensions
Piotr Byszewski [Tue, 23 Aug 2022 11:18:48 +0000 (13:18 +0200)]
Fix enabling of partially promoted extensions

Recent framework change that generates .inl files
directly from vk.xml introduced an error in which
partially promoted extensions were added to core
device extensions list. This resulted in not
enabling those extensions which lead to failure of
some tests. This change fixed this.

VK-GL-CTS issue: 3892

Components: Framework, Vulkan

Affects:
dEQP-VK.pipeline.monolithic.extended_dynamic_state.*.logic_op_or
dEQP-VK.*

Change-Id: Ieb6b9e2d469be14d30ecd86b4b112655c82e297c

22 months agoFix subpassMergeFeedback mandatory feature check
Piotr Byszewski [Wed, 24 Aug 2022 14:07:12 +0000 (16:07 +0200)]
Fix subpassMergeFeedback mandatory feature check

While checking subpassMergeFeedback mandatory feature test
checked presence of VK_KHR_create_renderpass2 instead of
VK_EXT_subpass_merge_feedback.

VK-GL-CTS issue: 3879

Components: Framework, Vulkan

Affects:
dEQP-VK.info.device_mandatory_features

Change-Id: Idaeb522c1bda0e07a4a0286d59ded7ca51b1c6cb

22 months agoFix aliases of aliases
Piotr Byszewski [Tue, 23 Aug 2022 14:44:05 +0000 (16:44 +0200)]
Fix aliases of aliases

Recent framework change that generates .inl files directly from
vk.xml introduced an error in which aliases of aliases were missing
from vkBasicTypes.inl. This change fixed this.

VK-GL-CTS issue: 3875

Components: Framework, Vulkan

Affects:
dEQP-VK.*

Change-Id: I98fbe520d9f611077254454721732a6142efaf06

22 months agoDepth and stencil clears in dynamic rendering
Marcin Zając [Thu, 7 Jul 2022 11:17:33 +0000 (13:17 +0200)]
Depth and stencil clears in dynamic rendering

Exposure of cleaning values for depth and stencil
attachments. Different values are to ensure
that corresponding attachments are using dedicated
clearing values

Components: Vulkan

VK-GL-CTS issue: 3695

Affects:
dEQP-VK.dynamic_rendering.basic.*

Change-Id: I9b833b2fa2e6e5468b63b8e1d3cd51bafbc8d709

22 months agoAdd support for VK_EXT_rasterization_order_attachment_access
John Anthony [Thu, 18 Aug 2022 12:31:03 +0000 (14:31 +0200)]
Add support for VK_EXT_rasterization_order_attachment_access

Modify existing tests for VK_ARM_rasterization_order_attachment_access
to also run if only the EXT version of the extension is supported.

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

Components: Vulkan

Change-Id: Ia5ad0ee82c7a2aa8fa9681a3ba0a34f6e3818059

22 months agoTest clears of 3D depth/stencil images
Piotr Byszewski [Wed, 27 Jul 2022 15:36:26 +0000 (17:36 +0200)]
Test clears of 3D depth/stencil images

Existing clear tests checked only 2D depth/stencil images.
This change extend these tests to exercise also 3D depth/stencil
clears. It also adds missing barrier that was reported by layers.

Components: Vulkan

VK-GL-CTS issue: 3693

Affects:
dEQP-VK.api.image_clearing.*

Change-Id: Ia84c2ef8de49f3e0db1ace2e7a59450e4d5c2202

22 months agoUse multi-level multi-layer compressed image views
Piers Daniell [Mon, 6 Jun 2022 23:31:55 +0000 (17:31 -0600)]
Use multi-level multi-layer compressed image views

This test verifies whether implementations can handle multi-layer and multi-level
compressed image views of compressed images created with
VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT.

Currently the specification states:
https://www.khronos.org/registry/vulkan/specs/1.3/html/vkspec.html#VUID-VkImageViewCreateInfo-image-01584
If image was created with the VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT flag,
the levelCount and layerCount members of subresourceRange must both be 1

The proposal is to only require levelCount and layerCount to be 1 when the view
uses an uncompressed format:
https://gitlab.khronos.org/vulkan/vulkan/-/merge_requests/5149

Affects:

dEQP-VK.image.texel_view_compatible.*

Components: Vulkan

VK-GL-CTS issue: 3749

Change-Id: I6a7cc858f4464b07fbc216547e53c961e130dd2c

22 months agoReenable texel_view_compatible 3d_image tests
Piers Daniell [Fri, 15 Jul 2022 15:44:05 +0000 (09:44 -0600)]
Reenable texel_view_compatible 3d_image tests

These tests are disabled because they violate VUID-VkImageViewCreateInfo-image-04739.
This was removed from the spec.

See https://gitlab.khronos.org/vulkan/vulkan/-/issues/3164 for the spec issue.

Affects:

dEQP-VK.image.texel_view_compatible.*.3d_image.*
dEQP-VKSC.image.texel_view_compatible.*.3d_image.*

Components: Vulkan

VK-GL-CTS issue: 3835

Change-Id: Id513c29dd9b042d498dd0a12ca2f5d3b6257b705

22 months agoMerge vk-gl-cts/vulkansc-cts-1.0.1 into vk-gl-cts/main
Matthew Netsch [Thu, 25 Aug 2022 21:02:37 +0000 (21:02 +0000)]
Merge vk-gl-cts/vulkansc-cts-1.0.1 into vk-gl-cts/main

Change-Id: Ife4384ed5b6c254cd4e72cc425549624f34f261d

22 months agoAdd CTS tests for VK_EXT_application_parameters
Stanley Tang [Mon, 25 Jul 2022 17:00:09 +0000 (17:00 +0000)]
Add CTS tests for VK_EXT_application_parameters

New tests:
dEQP-VKSC.sc.application_parameters.*

New command-line option:
--deqp-app-params-input-file=<path>

Components: Vulkan SC, Framework

VK-GL-CTS issue: 3850

Change-Id: I19807696fd3c7fccab3b7f719474c8cfaf62f766

22 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main
Matthew Netsch [Thu, 25 Aug 2022 21:01:33 +0000 (14:01 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main

Change-Id: Ie46b51dc959d6a3c5c73e61b9698dec7dc921f5d

22 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Matthew Netsch [Thu, 25 Aug 2022 18:54:32 +0000 (18:54 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: I80a5e97d6ee8d7d15c8d67de7f084f7f3fd239e0

22 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Thu, 25 Aug 2022 18:23:24 +0000 (18:23 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I3dcb14db985ef75cff08dae8e346cefd7a27ff19

22 months agoAdds reset watchdog timer to timeline sempahore tests
Matthew Netsch [Wed, 10 Aug 2022 16:29:24 +0000 (09:29 -0700)]
Adds reset watchdog timer to timeline sempahore tests

Tests go through many iterations which exceeds test
max time when matchdog timer is enabled

Components: Vulkan
VK-GL-CTS Issue: 3884

Affects:
dEQP-VK.synchronization*.basic.timeline_semaphore.chain

Change-Id: Id257b7162d49cfaf5b78c198cdc932f74c0d4a2b

22 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 25 Aug 2022 17:58:42 +0000 (17:58 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I1be609e78cf12d03a7db1430364c332ec1ac37ae

22 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 25 Aug 2022 17:31:45 +0000 (17:31 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: If088fd987f51bff07712612cfc9672f1cddd1df6

22 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 25 Aug 2022 17:04:58 +0000 (17:04 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I17c7fc7a6c0dde2555e90873105027b0f26e94ad

22 months agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 25 Aug 2022 16:37:33 +0000 (16:37 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: Ia1e9c64b9149680d40e6c2deff9e64725c227439

22 months agoImprove the error message when storing uncomressed images fails.
Hyunjun Ko [Mon, 22 Aug 2022 06:55:24 +0000 (15:55 +0900)]
Improve the error message when storing uncomressed images fails.

It's been ambiguous since the output doesn't have any information when
storing an uncompressed image fails.

Affects:
dEQP-VK.image.texel_view_compatible.compute.basic.*

Components: Vulkan

VK-GL-CTS issue: 3897

Change-Id: I923efb15a9927c87c581dc3c96115b5d6c0b2580

22 months agoFix loop continue construct for SPIR-V assembly
Graeme Leese [Thu, 18 Aug 2022 14:33:53 +0000 (15:33 +0100)]
Fix loop continue construct for SPIR-V assembly

The multi-block continue construct tests were setting the continue
target to the loop header itself, which is not valid according to the
new structural dominance rules. Set it to the first block inside the
loop instead, which still gives a multi-block continue construct but
also follows the validation rules.

Components: Vulkan
VK-GL-CTS issue: 3896
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.loop.multi_block_continue_construct_*

Change-Id: I7480f6107696ec8587625bfa110aa7478308512f

22 months agoFix SPIRV validation for decoration tests
Graeme Leese [Thu, 18 Aug 2022 11:36:28 +0000 (12:36 +0100)]
Fix SPIRV validation for decoration tests

The decoration matching tests were incorrectly using Flat and
NoPerspective decoration on vertex inputs. The validator has been
updated to catch these errors, so the tests now cause an InternalError.

Compoennts: Vulkan
VK-GL-CTS issue: 3895
Affects: dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.basic_type.flat
         dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.basic_type.no_perspective
         dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.interface_blocks.flat
         dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.interface_blocks.no_perspective

Change-Id: I818868ca87d15d068430e9721204be620b28e225

22 months agoRun DR tests with secondary command buffers
Piotr Byszewski [Mon, 11 Apr 2022 11:21:27 +0000 (13:21 +0200)]
Run DR tests with secondary command buffers

dynamic_rendering tests 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 using secondaries that
completely contain the dynamic render pass.

Components: Vulkan

VK-GL-CTS issue: 3516

Affects:
dEQP-VK.dynamic_rendering.*
dEQP-VK.renderpass*

Change-Id: Id640e0fb8f6e9382d48844d3cdee4a7e040eb609

22 months agoFix division by zero in glsBuiltinPrecisionTests
Antto Mäkinen [Fri, 17 Jun 2022 10:52:15 +0000 (13:52 +0300)]
Fix division by zero in glsBuiltinPrecisionTests

GLSL precision tests were using 1 / InverseSqrt(x) to calculate
reference values for square root. This is problematic when x = 0,
as it causes a division by zero.

VK-GL-CTS Issue: 3330

Affects:

dEQP-GLES3*.functional.shaders.builtin_functions.precision.*

Components: OpenGL ES
Change-Id: I199f16b2eeb66ab042f0bb1ab6b588246efeb6d5

22 months agoMerge vk-gl-cts/dev/VK_EXT_attachment_feedback_loop_layout into vk-gl-cts/main
Matthew Netsch [Wed, 24 Aug 2022 19:52:18 +0000 (12:52 -0700)]
Merge vk-gl-cts/dev/VK_EXT_attachment_feedback_loop_layout into vk-gl-cts/main

Change-Id: Ic7fcede2a0f71c344a41e76cbb1e9cd68301dfb8

22 months agoMerge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_attachment_feedback_loop_layout
Matthew Netsch [Wed, 24 Aug 2022 18:06:37 +0000 (11:06 -0700)]
Merge vk-gl-cts/main into vk-gl-cts/dev/VK_EXT_attachment_feedback_loop_layout

Change-Id: Ieb2f535a96807e0d1fcd8ca6a84cac46651fc8f3

22 months agoFix barrier VK_AMD_buffer_marker
Arkadiusz Sarwa [Tue, 23 Aug 2022 15:08:55 +0000 (17:08 +0200)]
Fix barrier VK_AMD_buffer_marker

Affected tests:
dEQP-VK.api.buffer_marker.*

Components: Vulkan
VK-GL-CTS issue: 3854

Change-Id: Ia65c7ec44db3019125012b7d7e2d1b65e0f942f6

22 months agoUpdate Amber to fix Clang 11 build
Mika Väinölä [Mon, 26 Oct 2020 21:19:59 +0000 (23:19 +0200)]
Update Amber to fix Clang 11 build

Building Amber with Clang 11 failed due to -Werror and several
-Wsuggest-destructor-override warnings.

Affects: dEQP-VK.*

VK-GL-CTS issue: 2628

Change-Id: Ibae8dbc955d32bb50eb6f5c26cd62579bc6967dd

22 months agoUpdate Amber
Alexander Galazin [Wed, 16 Sep 2020 07:12:43 +0000 (09:12 +0200)]
Update Amber

Components: Framework
Affects: dEQP-VK.*

Change-Id: I0bb5016b2ec063396cd797060e14d6de474b96af

22 months agoUpdate Amber to fix regression
Paul Thomson [Mon, 20 Jul 2020 15:00:08 +0000 (16:00 +0100)]
Update Amber to fix regression

Affects:

dEQP-VK.glsl.combined_operations.*
dEQP-VK.compute.basic.write_ssbo_array
dEQP-VK.draw.output_location.array.*
dEQP-VK.graphicsfuzz.*
dEQP-VK.pipeline.vertex_only.position_to_ssbo
dEQP-VK.rasterization.provoking_vertex.*
dEQP-VK.rasterization.line_continuity.*
dEQP-VK.spirv_assembly.*
dEQP-VK.texture.conversion.*
dEQP-VK.texture.multisample.*
dEQP-VK.texture.subgroup_lod.*
dEQP-VK.texture.texel_buffer.*

Components: Vulkan

VK-GL-CTS issue: 2443

Change-Id: I3c6ec1eb0ee8695468c54f95c210cc81b50a4f1a

22 months agoAdd test for writing to an SSBO array
Ari Suonpaa [Sat, 20 Jun 2020 07:27:41 +0000 (10:27 +0300)]
Add test for writing to an SSBO array

VK-GL-CTS Issue: 2285

New tests:

dEQP-VK.compute.basic.write_ssbo_array

Components: Vulkan
Change-Id: I6650aa1e087a5fb3c2bdad5eb3788b944faf996e

22 months agoAdd modfStruct comparison tests
Mika Väinölä [Thu, 14 May 2020 19:50:16 +0000 (22:50 +0300)]
Add modfStruct comparison tests

Add tests for comparing the output of modf and modfStruct with 32-bit floats
and vectors as input. Update Amber and implement delegate for loading buffers
from files in AmberScript.

New tests:
dEQP-VK.spirv_assembly.instruction.*.float32.comparison_*.modfstruct*

Components: Vulkan

VK-GL-CTS issue: 1728

Change-Id: If2ee37779472be543038bae313792e2367051bdf

22 months agoFix Fedora 32 gcc/clang warnings
Alexander Galazin [Thu, 7 May 2020 14:16:08 +0000 (16:16 +0200)]
Fix Fedora 32 gcc/clang warnings

Component: AOSP, OpenGL, Vulkan

VK-GL-CTS issue: 2350

Affects:
KHR*direct_state_access.vertex_arrays*
KHR*core.arrays_of_arrays.sized_declarations_invalid*
dEQP-VK.geometry.*

Change-Id: I55680ac671d0610917d45f7187deec6e883dd6b7

23 months agoMerge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main
Matthew Netsch [Fri, 19 Aug 2022 14:46:11 +0000 (07:46 -0700)]
Merge vk-gl-cts/opengl-cts-4.6.2 into vk-gl-cts/main

Change-Id: Idb23c14d0c59ef6dd554b27ecca20ee9dfdbcb0c

23 months agoMerge vk-gl-cts/opengl-cts-4.6.1 into vk-gl-cts/opengl-cts-4.6.2
Matthew Netsch [Thu, 18 Aug 2022 21:33:28 +0000 (21:33 +0000)]
Merge vk-gl-cts/opengl-cts-4.6.1 into vk-gl-cts/opengl-cts-4.6.2

Change-Id: I621d54886cc3e3521d3e02f456017abad2085796

23 months agoAdd missing checks for update after bind support
Jeff Bolz [Tue, 16 Aug 2022 16:51:31 +0000 (11:51 -0500)]
Add missing checks for update after bind support

Some descriptor_copy tests use update-after-bind without checking
the corresponding field of VkPhysicalDeviceDescriptorIndexingFeatures.

Affects: dEQP-VKSC.binding_model.descriptor_copy.*

Components: Vulkan, VulkanSC
Change-Id: I3cfefda0b118bb05d210c47dbcf504a9a985c123

23 months agoAdd coverage for MaxAtomicCounterBufferSize
Piotr Byszewski [Thu, 28 Jul 2022 18:09:31 +0000 (20:09 +0200)]
Add coverage for MaxAtomicCounterBufferSize

Test if placing an atomic counter into a buffer
at such an offset that the buffer is too large results
in a compilation error.

Components: OpenGL

VK-GL-CTS issue: 3124

Affects:
KHR-GL42.shader_atomic_counters.negative-large-offset
KHR-GLES31.core.shader_atomic_counters.negative-large-offset

Change-Id: Ib1ea21f2c1035d0a86ab2d4b3e4260756c88bfba

23 months agoCheck that image*Shadow are not reserved keywords
Piotr Byszewski [Fri, 29 Jul 2022 17:07:09 +0000 (19:07 +0200)]
Check that image*Shadow are not reserved keywords

There used to be a tests that treated: image1DShadow, image2DShadow,
image1DArrayShadow, image2DArrayShadow as reserved keywords but they
were removed because the spec doesn't actually reserve them. Any
drivers that were passing the old test were behaving incorrectly so
this change adds new tests that check if these keywords are not
reserved.

Components: OpenGL ES

VK-GL-CTS issue: 3007

Affects:
dEQP-GLES3.functional.shaders.keywords.allowed_keywords.*

Change-Id: Ic6b4463e51b45611441481d661d71735570dd15a

23 months agoFix vkGetPhysicalDeviceProperties2 query
Piotr Byszewski [Thu, 4 Aug 2022 10:10:59 +0000 (12:10 +0200)]
Fix vkGetPhysicalDeviceProperties2 query

Recent framework change added few invalid structures to
pNext chain of vkGetPhysicalDeviceProperties2.

VK-GL-CTS issue: 3872

Components: Framework, Vulkan

Affects:
dEQP-VK.*

Change-Id: Iae75d84e454ee4c55ae31db3ea0b756574747066

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main
Matthew Netsch [Thu, 18 Aug 2022 20:33:01 +0000 (20:33 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main

Change-Id: Iaa17ebf16e629e5d5c221511fbd198d392dd92d5

23 months agoCheck device and group indices before using them
Ricardo Garcia [Thu, 4 Aug 2022 09:22:27 +0000 (11:22 +0200)]
Check device and group indices before using them

dEQP-VK.info.device_group_peer_memory_features was using the device and
group indices without checking if they were valid first for the array of
reported physical device groups.

Affects:
dEQP-VK.info.device_group_peer_memory_features

Components: Vulkan
VK-GL-CTS issue: 3873

Change-Id: I2601e74158496f0ee7ec1cdb42af2faf1c587216

23 months agoRemove invalid depth stencil resolve tests
ziga-lunarg [Sat, 2 Jul 2022 11:33:34 +0000 (13:33 +0200)]
Remove invalid depth stencil resolve tests

Tests where both depthResolveMode and stencilResolveMode are
VK_RESOLVE_MODE_NONE are invalid as they violate VUID 03178

Components: Vulkan

VK-GL-CTS issue: 3798

Affects:
dEQP-VK.renderpass2.depth_stencil_resolve.*

Change-Id: I06b9bd5207cd9d119ff2aa3877edaf7fd472bde2

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Matthew Netsch [Thu, 18 Aug 2022 19:48:08 +0000 (19:48 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: I36762c268b845c6acb978ea9bfdafac065ecaa59

23 months agoAdded valid vertex geometry to PGQ tests
Marcin Kańtoch [Mon, 25 Jul 2022 16:32:38 +0000 (18:32 +0200)]
Added valid vertex geometry to PGQ tests

Undefined output of VS causes AMD HW to cull such primitives.
Added valid vertex geometry to PGQ tests to avoid such culling.

Affects:
dEQP-VK.transform_feedback.primitives_generated_query*

Components: Vulkan

VK-GL-CTS issue: 3830

Change-Id: Ibc3cde7c2c490a72eedd95b30e5db7a57c30cf86

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Thu, 18 Aug 2022 19:14:24 +0000 (19:14 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: Ia6467ac46eff3121b5bff009e333896eca33aa60

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 18 Aug 2022 18:49:41 +0000 (18:49 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I5f375b6bff37ba08cc50312cfa343687d0c47100

23 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 18 Aug 2022 18:21:18 +0000 (18:21 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: Ie7efa23462961766664d6368f320b20e2c78ae2b

23 months agoUse correct render target format in YCbCr view tests
ziga-lunarg [Thu, 4 Aug 2022 01:20:33 +0000 (03:20 +0200)]
Use correct render target format in YCbCr view tests

For render target use the same format type as plane
compatibility format

Components: Vulkan

VK-GL-CTS issue: 3601

Affected tests:
dEQP-VK.ycbcr.plane_view.image_view.*

Change-Id: I7f03c90069b21a6ea84c6ee9d6d85c31cee3e3ad

23 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 18 Aug 2022 17:53:46 +0000 (17:53 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Ie4a4557846994113b7ebf52e35851c0547faf815

23 months agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 18 Aug 2022 17:27:14 +0000 (17:27 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: Id059134a7e90b7b6c1c35ad9955ec1bc994db896

23 months agoCorrect the image barrier in ray tracing test
yaozhong.zhang [Thu, 4 Aug 2022 10:59:54 +0000 (18:59 +0800)]
Correct the image barrier in ray tracing test

When running the ray tracing pipeline CPU build tests, the image
barrier is not actually used, as no acceleration structure commands
are recorded. On the other hand, the image is used by trace ray
command, instead of building acceleration structure. So, change the
barrier for trace ray command.

Affects:
dEQP-VK.ray_tracing_pipeline.build.*

Components: Vulkan

VK-GL-CTS issue: 3874

Change-Id: Ie70fd57fe9f81952dff21f670a194244856c3d3b

23 months agoFix undefined behaviour by bit-shifting with negative value.
Hyunjun Ko [Tue, 16 Aug 2022 09:34:12 +0000 (18:34 +0900)]
Fix undefined behaviour by bit-shifting with negative value.

When getTextureFormatMantissaBitDepth returns 0 for the non-existent channels,
it leads to 1u << (0u - 1u), that is undefined behaviour, especially
leads to unexpected results on arm64.

Affects:
dEQP-VK.image.store.*
dEQP-VK.image.load_store.*
dEQP-VK.image.format_reinterpret.*

Components: Vulkan

VK-GL-CTS issue: 3888

Change-Id: I669eebb1f78c78dc89fb456e71f2ca0af3b66836

23 months agoDisable interval watchdog for sets32 in vktBindingDescriptorSetRandomTests
Yiwei Zhang [Thu, 4 Aug 2022 18:38:51 +0000 (18:38 +0000)]
Disable interval watchdog for sets32 in vktBindingDescriptorSetRandomTests

There're certain sets32 tests doing super long shader compilations.To be
noted that the re-enablement is placed after fence waiting to favor
virtualization drivers that making asynchronous pipeline creation calls
to the host. The long blocking shader compilation will show up upon
guest waiting for the fence to signal.

Affects: dEQP-VK.binding_model.descriptorset_random.sets32.*

Components: Vulkan

VK-GL-CTS issue: 3878

Change-Id: Id25378e9546950bed463f1f278c6859306e0e0d8

23 months agoThrow NotSupportedError for SPIR-V 1.6 in VulkanSC
Jeff Bolz [Tue, 16 Aug 2022 19:01:27 +0000 (14:01 -0500)]
Throw NotSupportedError for SPIR-V 1.6 in VulkanSC

Replace an assert(0) with a NotSupportedError.

Affects: dEQP-VKSC.spirv_assembly.*

Components: VulkanSC
Change-Id: I91d05425c99f2be69c4d9e48c0684e3a4acb9988

23 months agoAdd tests making sure dynamic states are not overwritten
ziga-lunarg [Wed, 15 Jun 2022 21:34:04 +0000 (23:34 +0200)]
Add tests making sure dynamic states are not overwritten

Verify that clear, blit, resolve and copy operations do not
overwrite dynamic states.

Components: Vulkan

VK-GL-CTS issue: 3600

New Tests:
dEQP-VK.dynamic_state.*.image.clear
dEQP-VK.dynamic_state.*.image.blit
dEQP-VK.dynamic_state.*.image.copy
dEQP-VK.dynamic_state.*.image.resolve

dEQP-VKSC.dynamic_state.*.image.clear
dEQP-VKSC.dynamic_state.*.image.blit
dEQP-VKSC.dynamic_state.*.image.copy
dEQP-VKSC.dynamic_state.*.image.resolve

Change-Id: Iecbfaaca2b28dc6e06b7ebe7804f23adb2f38c95

23 months agoTest interaction of image_view_min_lod, robustness2 and gather
Ricardo Garcia [Mon, 1 Aug 2022 12:25:11 +0000 (14:25 +0200)]
Test interaction of image_view_min_lod, robustness2 and gather

This commits adds a new set of tests that verify texture gather
operations interact correctly with robustness2 and image_view_min_lod.
Specifically, texture gathering always retrieves pixel values from the
base level, and image_view_min_lod may not make that level available on
the sampled texture. With robustness2, reading from those texels should
result in zeros.

New tests:
dEQP-VK.texture.mipmap.min_lod_gather.*

Components: Vulkan
VK-GL-CTS issue: 3808

Change-Id: Id6e5fe445e45e75bb419bebe0da59ea22cf452d9

23 months agoInteraction between FDM and imageless framebuffer
Piotr Byszewski [Thu, 21 Jul 2022 08:38:11 +0000 (10:38 +0200)]
Interaction between FDM and imageless framebuffer

Add test for interaction between VK_EXT_fragment_density_map and
VK_KHR_imageless_framebuffer by extending existing FDM tests.

VK-GL-CTS issue: 3801

Components: Vulkan

Affects:
dEQP-VK.renderpass*.fragment_density_map.*
dEQP-VK.dynamic_rendering.fragment_density_map.*

Change-Id: I02b517d71504878a2f2df4d8f94aa39a03afe10f

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main
Matthew Netsch [Thu, 11 Aug 2022 19:56:48 +0000 (12:56 -0700)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main

Change-Id: I657e2758e52b9eba16b296ea0bcde5b58196c6e8

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Matthew Netsch [Thu, 11 Aug 2022 18:43:03 +0000 (18:43 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: Ia3482d6b8bfeea370916e54dd55369780cef1b88

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Thu, 11 Aug 2022 18:07:33 +0000 (18:07 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: I5ffe3fdbd584548af00e8d053aa3e0bcfc70ad24

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 11 Aug 2022 17:42:52 +0000 (17:42 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I5471c3248524c729578e31e79b8b6d82716d9855

23 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 11 Aug 2022 17:14:28 +0000 (17:14 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: Iadc5e30854c3e3cb44290af6464c9511bf1f147e

23 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 11 Aug 2022 16:45:57 +0000 (16:45 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I1c0a72196ea1fe9774e494d1b4dd204931e433a9

23 months agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 11 Aug 2022 16:19:15 +0000 (16:19 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: I77d7ce7559662f59a9a0eee5d2734171421c9e1e

23 months agoFix physical_device_groups custom instance usage
Ricardo Garcia [Thu, 4 Aug 2022 15:43:33 +0000 (17:43 +0200)]
Fix physical_device_groups custom instance usage

The test is using a custom instance but misusing the default instance in
some API calls and expecting some consistency in the results.

In addition, the custom instance was not correctly collecting validation
error messages and some VkPhysicalDeviceGroupProperties structures were
not setting the sType as expected.

Affects:
dEQP-VK.info.physical_device_groups

Components: Vulkan
VK-GL-CTS issue: 3876

Change-Id: I3900723034bddb2dee0aaaab549cc6d362b1339e

23 months agoFix memory barrier for alias sparse memory
Pan Gao [Wed, 3 Aug 2022 12:48:18 +0000 (20:48 +0800)]
Fix memory barrier for alias sparse memory

Memory read/write order through different views that are aliased
need to be handled in application. Otherwise, implementation may
give undefined results.

Affects:
dEQP-VK.sparse_resources.image_sparse_memory_aliasing.*

Components: Vulkan

VK-GL-CTS issue: 3709

Change-Id: I8739aeeaf05103942158451196480734f62ab835

23 months agoFix compute-only custom device creation for Vulkan SC
Aidan Fabius [Mon, 25 Jul 2022 15:44:53 +0000 (11:44 -0400)]
Fix compute-only custom device creation for Vulkan SC

Components: Vulkan

VK-GL-CTS issue: 3848

Affects:
dEQP-VKSC.compute.indirect_dispatch.*compute_only_queue
dEQP-VK.compute.indirect_dispatch.*compute_only_queue

Change-Id: I1660cb9ff3ca576f0b8cd3b17ff7ddfb4629587f

23 months agoRevert "Fix undefined behaviour by allowing NaNs"
Matthew Netsch [Wed, 10 Aug 2022 15:58:15 +0000 (15:58 +0000)]
Revert "Fix undefined behaviour by allowing NaNs"

This reverts commit 8b95b2a1da75ca3dc3a2cfac98ce10d9a699687e.

Reason for revert: Amber verify failures on main

Components: Vulkan
VK-GL-CTS Issue: 3787

Affects:
dEQP-VK.graphicsfuzz.cov-instruction-simplify-atanh-log-undefined

Change-Id: Ifdf1a47a32091182fa51353748ffcf4eeab92d51
(cherry picked from commit a554b6f8422254f351b588d10fd14934792eb89f)

23 months agoRemove tests for VK_EXT_color_write_enable extension
Matthew Netsch [Wed, 10 Aug 2022 16:19:56 +0000 (09:19 -0700)]
Remove tests for VK_EXT_color_write_enable extension

These tests regressed a couple of vendors after a recent fix

VK-GL-CTS Issue: 3759
Components: Vulkan

Affects:
dEQP-VK.pipeline.*.color_write_enable_maxa.cwe_after_bind.*
dEQP-VK.pipeline.*.color_write_enable_maxa.cwe_before_bind.*

Change-Id: I5ff3e8ec1197919e35cae60d378dd0e21da861df

23 months agoRevert "Fix undefined behaviour by allowing NaNs"
Matthew Netsch [Wed, 10 Aug 2022 15:58:15 +0000 (15:58 +0000)]
Revert "Fix undefined behaviour by allowing NaNs"

This reverts commit 8b95b2a1da75ca3dc3a2cfac98ce10d9a699687e.

Reason for revert: Amber verify failures on main

Components: Vulkan
VK-GL-CTS Issue: 3787

Affects:
dEQP-VK.graphicsfuzz.cov-instruction-simplify-atanh-log-undefined

Change-Id: Ifdf1a47a32091182fa51353748ffcf4eeab92d51

23 months agoTest dynamic rendering with no framebuffer attachments
ziga-lunarg [Mon, 1 Aug 2022 22:50:46 +0000 (00:50 +0200)]
Test dynamic rendering with no framebuffer attachments

Components: Vulkan

VK-GL-CTS issue: 3464

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

Change-Id: I8334ffb8b30ad8dd325cff82387c1823fcac3711

23 months ago Add another alternative to reflect() precision tests
Piotr Sobczak [Thu, 21 Jul 2022 13:57:13 +0000 (15:57 +0200)]
Add another alternative to reflect() precision tests

    AMDGPU started generating it following a reassociation change
    in the shader compiler backend.

    This commit adds one more case for a scalar type. The rest of
    the alternatives are copied from the vector case, but the scalar
    one allows for more reassociation since the dot is just a multiplication.

    It is possible to handle even more cases here. This commit is just
    a minimal change that fixes the issue in test.

    Components: Vulkan
    Vk-GL-CTS Issue: 3862

    Affects:
    dEQP-VK.glsl.builtin.precision*reflect.*scalar

Change-Id: I3b9ebce38e76757af314129a6e080902297d7352

23 months agoAdd VK_EXT_attachment_feedback_loop_layout tests
Samuel Iglesias Gonsálvez [Fri, 5 Aug 2022 10:40:23 +0000 (12:40 +0200)]
Add VK_EXT_attachment_feedback_loop_layout tests

Test variations:

* Combined image sampler and sampled image tests
   - Sample/read only tests.
   - Sample/read and write as framebuffer attachment.
      + Sample one pixel, write to the same one.
      + Sample one half of the image, write to the other half.
   - For Depth-Stencil formats:
      + Test depth and stencil aspect separately.
      + Read one component, writo the other.
   - For color formats:
      + Read/write all components.
      + Read GA components and write the values to RB components.

Components: Vulkan
VK-GL-CTS issue: 2998

Added tests:

   dEQP-VK.pipeline.*.attachment_feedback_loop_layout.*

Change-Id: I92efec2f3d5cde6506c146459beeff28198ef320
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Co-authored-by: Ricardo Garcia <rgarcia@igalia.com>
23 months agoMerge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main
Matthew Netsch [Thu, 4 Aug 2022 19:00:47 +0000 (19:00 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.3 into vk-gl-cts/main

Change-Id: Ie616a9e381799690d2e3035268291ba93a736301

23 months agoRemove tests for acceleration structure size query
Sławomir Cygan [Thu, 28 Jul 2022 16:59:07 +0000 (18:59 +0200)]
Remove tests for acceleration structure size query

These tests assume that acceleration structure serialization size
equals to acceleration structure size + header size, what does not
seem required by the specification.

VK-GL-CTS Issue: 3836

Components: Vulkan

Affects: dEQP-VK.ray_tracing_pipeline.acceleration_structures.query_pool_results.*.size
Change-Id: Ib44ae28e709cfbf148cf16477896ec92f66c81a3

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3
Matthew Netsch [Thu, 4 Aug 2022 18:16:14 +0000 (18:16 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.2 into vk-gl-cts/vulkan-cts-1.3.3

Change-Id: I2d77f0749df442841a3c3953657c08ace8596e44

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2
Matthew Netsch [Thu, 4 Aug 2022 17:43:11 +0000 (17:43 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/vulkan-cts-1.3.2

Change-Id: Ia295b5cb206ab598dcb747f66c2565d5046a57ed

23 months agoFix dEQP-VK.api.buffer_memory_requirements tests
Matthew Netsch [Fri, 29 Jul 2022 19:25:22 +0000 (12:25 -0700)]
Fix dEQP-VK.api.buffer_memory_requirements tests

Tests attempt to allocate large amounts of virtual
memory (256GB), which can cause the test time to
exceed the max watchdog execution time (30s).

Reset the watchdog timer to prevent it from failing
when the test is still making progress.

Components: Vulkan
VK-GL-CTS Issue: 3864

Affects:
dEQP-VK.api.buffer_memory_requirements.*

Change-Id: Ic41a6b5a8b368fd5839279bc6052c278c6f32677

23 months agoMerge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Matthew Netsch [Thu, 4 Aug 2022 17:18:14 +0000 (17:18 +0000)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1

Change-Id: I239d4b02c3c3de37b3034387774ae38802cf6873

23 months agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Matthew Netsch [Thu, 4 Aug 2022 16:48:59 +0000 (16:48 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0

Change-Id: I87f90200bc8aa2c12c9627c0ae112b6b06b7b7fd

23 months agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Thu, 4 Aug 2022 16:21:38 +0000 (16:21 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I4d02b59e782c15f9add2d29da2eaa960847e1d93

23 months agoFix undefined behaviour by allowing NaNs
Marcin Kańtoch [Tue, 26 Jul 2022 15:25:41 +0000 (17:25 +0200)]
Fix undefined behaviour by allowing NaNs

One graphicsfuzz test contains computations with the float constant 0x1.8p+128.
This constant represents a NaN value. The computation with undef in the test
allows any optimization/triggers undefined behavior and the driver is free
to crash. Adding OpExecutionMode %4 SignedZeroInfNanPreserve 32 to the CTS fixes
this by allowing NaNs.

Affects:
dEQP-VK.graphicsfuzz.cov-instruction-simplify-atanh-log-undefined

Components: Vulkan

VK-GL-CTS issue: 3787

Change-Id: Id7140deddec240fdc5d9b1712c974199fa06b250

23 months agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Matthew Netsch [Thu, 4 Aug 2022 15:54:42 +0000 (15:54 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7

Change-Id: I2adb1c6a23f05f9b1bc09a86852a39d3aa12ceaf

23 months agoFix Api version check with loaders
Matthew Netsch [Fri, 29 Jul 2022 17:43:14 +0000 (10:43 -0700)]
Fix Api version check with loaders

Loaders return instance version that they support,
which may be greater than version ICDs support.

Change version check to use device version instead
of instance version for the purposes of verifying if
this version of CTS is legal to be used with the ICD.

Components: Vulkan
VK-GL-CTS Issue: 3863

Affects:
* dEQP-VK.api.version_check.version

Change-Id: I57e9a4aeee0ebda3fee1396c780d03941959ba6f

23 months agoFix partial heap usage in protected_memory android swapchain tests
Chris Hambacher [Thu, 21 Jul 2022 18:28:01 +0000 (13:28 -0500)]
Fix partial heap usage in protected_memory android swapchain tests

On devices with small amounts of protected memory, limitting usage to
25% of the total protected memory causes tests to be skipped. Tweak
to allow for full usage of the protected heap.

Affects:
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create.min_image_count
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create.image_format
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create.image_extent

Components: Vulkan

VK-GL-CTS Issue: 3296

Change-Id: I43c1cfc8d0e44d401952317158829f1a2da241a1

23 months agoFix pass condition for atomic usage tests
Danylo Piliaiev [Wed, 3 Aug 2022 14:59:28 +0000 (17:59 +0300)]
Fix pass condition for atomic usage tests

Any vertex processing shader could be called an implementation defined
number of times.

OpenGL 4.6 spec, "11.1.3 Shader Execution":

"Implementations are allowed to skip the execution of certain shader
 invocations, and to execute additional shader invocations for any shader
 type during programmable vertex processing due to implementation dependent
 reasons, including the execution of shader invocations that do not have an
 active program object present for the particular shader stage, as long as
 the results of rendering otherwise remain unchanged [...]"

Components: OpenGL

Affects: KHR-Single-GL4*.arrays_of_arrays_gl.AtomicUsage

Change-Id: I14385afa1de874c6f0fa21fe2a6ad73cb4ff0e7d

23 months agoAdd tests for non-uniform interpolant indexing
Ari Suonpaa [Wed, 9 Mar 2022 14:54:51 +0000 (16:54 +0200)]
Add tests for non-uniform interpolant indexing

VK-GL-CTS Issue: 3507

New tests:

dEQP-VK.pipeline.monolithic.multisample_interpolation.nonuniform_interpolant_indexing.*

Components: Vulkan
Change-Id: I3914e6ecb0d122981d0c29f2f3d1ff3ccdead475

23 months agoTest NULL set layouts with non-independent sets
Piotr Byszewski [Wed, 6 Jul 2022 09:51:49 +0000 (11:51 +0200)]
Test NULL set layouts with non-independent sets

This change ads a test that uses VK_NULL_HANDLE for descriptor set
layout when creating a pipeline layout without independent sets.
VK_NULL_HANDLE is also used in vkCmdBindDescriptorSets.
Note that this functionality is allowed only when
VK_EXT_graphics_pipeline_library is enabled.

This change also fixes 3 validation errors in
bind_null_descriptor_set group which is also part of misc group.

VK-GL-CTS issue: 3681

Components: Vulkan

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

Change-Id: I466ca645fafd845dc89a2c7980e6958ec27ca05b

23 months agoRead vk.xml instead of vulkan_core.h
Piotr Byszewski [Fri, 3 Jun 2022 12:32:42 +0000 (14:32 +0200)]
Read vk.xml instead of vulkan_core.h

* gen_framework.py now reads vk.xml instead of vulkan_core.h
  (but only for Vulkan API, for SC old script is called)
* added gen_framework_sc.py script that reads vulkan_sc_core.h
  (gen_framework_sc.py is renamed previous version of
  gen_framework.py as currently we can't read .xml for SC because
  it is not ready yet; when it will be ready gen_framework_sc.py
  will be removed and gen_framework.py will work on xml for SC too)
* note that gen_framework.py still contains all changes that were
  done for SC; also gen_framework_sc.py should not change much so
  in future there should be no extra work in merging aside from
  adjusting gen_framework.py to read vksc.xml
* removed gen_ext_deps.py as operation from it now could be move
  to gen_framework.py (gen_ext_deps.py exited silently for VkSC)
* generation for Vulkan API is now much faster, many algorithms
  were simplified and in some cases new code was generated that
  previusly was mised as it required handling of special cases
  that were mised(see vkDeviceFeatures2.inl)
* resolved few issues related to aliases - now all objects (enums,
  enumerators, structures, functions, etc.) store list of their
  aliases; with this it was possible to remove all
  checks for "VK_KHR_buffer_device_address" to determine if
  getBufferDeviceAddress or getBufferDeviceAddressEXT should be
  called (this is now handled in vkInitDeviceFunctionPointers.inl)

VK-GL-CTS issue: 3151

Components: Framework, Vulkan

Affects:
dEQP-VK.*

Change-Id: If5020819630914e77dc5b0bc8bff22e45fbc5d97

23 months agoRemove mandatory_features.txt
Piotr Byszewski [Mon, 25 Jul 2022 12:54:29 +0000 (14:54 +0200)]
Remove mandatory_features.txt

Since CL8327 data that was stored in mandatory_features.txt is read
from individual .json files. mandatory_features.txt was readded by
mistake together with SC changes. In this change it is removed.

VK-GL-CTS issue: 3197

Components: Framework, Vulkan

Affects:
dEQP-VK.*

Change-Id: I8655764ab1af792f488f285c13fe02f992e5bf2c

23 months agoPort deqp-vk to Fuchsia
John Bauman [Wed, 13 Oct 2021 21:43:53 +0000 (21:43 +0000)]
Port deqp-vk to Fuchsia

"Fuchsia is a modern open source operating system that's simple, secure,
updatable, and performant." See fuchsia.dev for details.

This change only modifies the code so it can be build in a
Fuchsia-specific environment. Build rules depend on the exact version of
the Fuchsia SDK in use, and will be added later.

VK-GL-CTS Issue: 3849

Components: Framework
Change-Id: Ia869ec251ba8392c2a6712859e33c38bea88a099

23 months agoFix passing temporary object as reference
ziga-lunarg [Mon, 25 Jul 2022 21:44:21 +0000 (23:44 +0200)]
Fix passing temporary object as reference

Components:
Vulkan, OpenGL, EGL, Framework

VK-GL-CTS issue: 3382

Affects:
dEQP-VK*
dEQP-GL*
dEQP-EGL*

Change-Id: Ibff4e4a7bc8c9da3ea82337a84da6c4118608b11

23 months agoImprove image capability check compressed image tests
Piers Daniell [Mon, 6 Jun 2022 16:10:39 +0000 (10:10 -0600)]
Improve image capability check compressed image tests

The image creation routine for the dEQP-VK.image.texel_view_compatible.*
tests was throwing false "Not Supported" because it was checking if the
compressed image format supported image load/store, but the tests didn't
need it.

This CL replaces the false check with an improved capability check that
uses the actual image creationg parameters the tests uses. This allows
extended usage to be taken into account where the uncompressed image views
can support image load/store.

Affects:

dEQP-VK.image.texel_view_compatible.*

Components: Vulkan

VK-GL-CTS issue: 3745

Change-Id: I14be9f7bbf48b8700ef522d1e0481a8d69295b94