Piers Daniell [Wed, 29 Sep 2021 14:04:22 +0000 (08:04 -0600)]
Fix invalid layout transitions in some dynamic rendering tests
Some of the dynamic rendering tests do an image layout transition
from uninitialized when the image is already in use. This can lead
to corruption of the image content.
This CL removes an unnecessary barrier from the
dEQP-VK.multiview.dynamic_rendering.readback* tests and fixes
a barrier with the dEQP-VK.multiview.dynamic_rendering.depth.*
and dEQP-VK.multiview.dynamic_rendering.stencil.* tests.
Affects:
dEQP-VK.multiview.dynamic_rendering.depth.*
dEQP-VK.multiview.dynamic_rendering.stencil.*
dEQP-VK.multiview.dynamic_rendering.readback*
Components: Vulkan
VK-GL-CTS issue: 3164
Change-Id: Ib0847839528909337001d32bbde59c7e979ec9e9
Slawomir Cygan [Wed, 29 Sep 2021 16:26:49 +0000 (18:26 +0200)]
Do not chain dynamic render pass inheritance info in dEQP-VK.renderpass
This fixes the tests that do not use, enable or require dynamic rendering
to not chain the VkCommandBufferInheritanceRenderingInfoKHR structure,
which is only for inheritinh the dynamic renderpasses.
Affects: dEQP-VK.renderpass*
VK-GL-CTS Issue: 3165
Components: Vulkan
Change-Id: Idb8fed2bcd6a6bf664cf5516a664b8beaa94484a
Aaron Hagan [Mon, 27 Sep 2021 19:22:47 +0000 (15:22 -0400)]
Wrong format in load_store_op_none test.
One of the load_store_op_none tests is currently using the incorrect
VK_FORMAT_R8G8B8A8_UNORM format for the color attachments.
It should be using VK_FORMAT_R8G8B8A8_UINT instead.
VK-GL-CTS issue: 3154
Components: Vulkan
Affected tests:
dEQP-VK.renderpass_with_dynamic_rendering.suballocation.load_store_op_none.color_load_op_none_store_op_none_resolve
Change-Id: I7dd8b4da05fef58d91a8913ac49912ba683f033d
Matthew Netsch [Fri, 1 Oct 2021 22:05:39 +0000 (18:05 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: Icd53be0bdc32472d88bd464dffb0ee3a8ab3677e
Erik Faye-Lund [Wed, 7 Jul 2021 16:39:28 +0000 (18:39 +0200)]
Fix rectangular line tests
When we're testing against rectangular lines, we need to generate the
rectangular line geometry as well, otherwise we'll test against
parallelogram lines instead.
Components: Vulkan, Framework
Public issue: 274
Affected Tests: dEQP-VK.rasterization.primitives.*.rectangular_line_*
Change-Id: I514646e94d2faf1e996950fd6b3a738797f84ff0
Matthew Netsch [Fri, 1 Oct 2021 21:06:12 +0000 (17:06 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I015e15ff85941f0a8756bd4b13e93fcd9161d62e
Samuel Iglesias Gonsálvez [Fri, 24 Sep 2021 10:55:04 +0000 (12:55 +0200)]
Fix dEQP-VK.glsl.opaque_type_indexing.ssbo*_compute validation error
Tests were not checking maxPerStageDescriptorStorageBuffers limits
in the compute shaders, which use more (6) than the minimum limit
set by the spec for that (4).
Components: Vulkan
VK-GL-CTS issue: 3137
Affected tests:
dEQP-VK.glsl.opaque_type_indexing.ssbo*_compute
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Change-Id: I016fb5024d637e36869ae7e3f78467c91d0e8817
Juha Heiskanen [Fri, 24 Sep 2021 10:12:28 +0000 (13:12 +0300)]
Fix dEQP-VK.image.extended_usage_bit.texture_* validation errors
Shader requires fragmentStoresAndAtomics but there wasn't any support
check for this physical device feature.
Components: Vulkan
VK-GL-CTS Issue: 3144
Affects:
dEQP-VK.image.extended_usage_bit.texture_read.*
dEQP-VK.image.extended_usage_bit.texture_write.*
Change-Id: I87f69256501519fe524159f02eb14ee6ac0e0092
Ricardo Garcia [Tue, 21 Sep 2021 10:27:52 +0000 (12:27 +0200)]
Check depth bias clamp feature when needed
The inverted depth range tests were using the depth bias clamp feature
with a nonzero depth bias clamp value without checking if the feature
was available in the device.
Affected tests:
dEQP-VK.draw.inverted_depth_ranges.*
Components: Vulkan
VK-GL-CTS issue: 3128
Change-Id: I471235a0da38eb4c244e87e0d5851b8cb810f990
David Neto [Tue, 21 Sep 2021 21:25:22 +0000 (17:25 -0400)]
Add barrier between the atomic-compare-exchanges
Each of the second atomic-compare-exchange instructions relies on fact
that all the invocations have executed the first atomic-compare-exchange
instruction. So insert a workgroup barrier between the two.
Affects:
dEQP-VK.spirv_assembly.instruction.spirv1p4.entrypoint.comp_workgroup_entry_point
Components: Vulkan
VK-GL-CTS issue: 3120
Change-Id: I95f897ceebcea8fdd5d6bda885a701be20d07ab1
Matthew Netsch [Fri, 1 Oct 2021 19:33:00 +0000 (15:33 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I16fde981fb8a0d98d4ed0522cb69a429a68545d0
Matthew Netsch [Fri, 1 Oct 2021 19:32:56 +0000 (15:32 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I133af15a49b220d94c26f9db70e7830fbe167b72
Alexander Galazin [Fri, 18 Jun 2021 08:17:32 +0000 (10:17 +0200)]
Allow the use of the standard types
Removes the script that enforces the use of
the de-wrappers instead of the standard types.
VK-GL-CTS issue: 2963
Components: Framework
Change-Id: I5e2ff38a2b2cbc63a3c756a1e0260833ecd9381e
(cherry picked from commit
ce1ae17c4785a8a57214a16fac46e28832956fa9)
Piotr Byszewski [Tue, 21 Sep 2021 16:22:35 +0000 (18:22 +0200)]
Fix Vulkan 1.3 required features
vulkanMemoryModelAvailabilityVisibilityChains feature is now
optional in Vulkan 1.3
VK-GL-CTS issue: 3116
Components: Vulkan
Affects:
dEQP-VK.api.info.vulkan1p3.feature_extensions_consistency
Change-Id: If9d6e32f96c7053bdc0908ba361c1603498ae0df
Graeme Leese [Wed, 22 Sep 2021 13:16:25 +0000 (14:16 +0100)]
Allow 1.3.0.0 as a valid conformance version
Components: Vulkan
VK-GL-CTS issue: 3146
Affects: dEQP-VK.api.driver_properties.conformance_version
Change-Id: Ic77a90e47f9d649ebb5b3a3344876bcbc54835b9
James Fitzpatrick [Mon, 20 Sep 2021 13:20:56 +0000 (14:20 +0100)]
Fix warning introduced by 1.3 changes
Fixes the following warning in vktApiFeatureInfo.cpp, checkSupportFeatureBitInfluence was replaced by a generic function (checkApiVersionSupport<1,2>) in the changes to add 1.3 support.
.../external/vulkancts/modules/vulkan/api/vktApiFeatureInfo.cpp:1536:6: error: unused function 'checkSupportFeatureBitInfluence' [-Werror,-Wunused-function]
void checkSupportFeatureBitInfluence (Context& context)
^
1 error generated.
Components: Vulkan
VK-GL-CTS issue: 3132
Change-Id: Ia1996263f5a95730a50098c747c9f425c7e8a239
Samuel Iglesias Gonsálvez [Mon, 30 Aug 2021 15:45:20 +0000 (17:45 +0200)]
Fix early fragment tests validation errors
There are several issues in the tests which were found by running them
with turnip driver with sysmem mode and the validation layers enabled:
- There was a sync issue. The culprit was
srcAccessMask=VK_ACCESS_SHADER_WRITE_BIT in one image memory barrier
since per spec for the store op "For attachments with a depth/stencil
format, this uses the access type
VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT.". So the correct
synchronization should have src access mask
VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT.
- In the same image memory buffer, the image layout was wrong when
testing stencil images.
- There were validation errors related to wrong image layout settings.
VK-GL-CTS issue: 3083
Components: Vulkan
Affects:
dEQP-VK.fragment_operations.early_fragment.*
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Change-Id: If819abd6ccbe23460c4b20b46afeeaf98c7a2953
Matthew Netsch [Fri, 24 Sep 2021 18:42:08 +0000 (14:42 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: I369a1aefe1c5d8f263aaff18917aa153c0b80e03
Mohankumar Nekkarakalaya [Mon, 13 Sep 2021 19:04:03 +0000 (12:04 -0700)]
Limit storage buffer sizes in reconvergence tests
Return a not supported error if the storage buffer size is greater
than maxStorageBufferRange gpu limits.
Components: Vulkan
VK-GL-CTS Issue: 3114
Affected tests: dEQP-VK.reconvergence.*
Change-Id: Iecfbe0138b7d70420a353c2176110b843a49b091
Samuel Iglesias Gonsálvez [Thu, 23 Sep 2021 07:07:10 +0000 (09:07 +0200)]
Fix wrong VkAccessFlag when copying color image to buffer
Components: Vulkan
VK-GL-CTS issue: 3083
Affected tests:
dEQP-VK.fragment_operations.early_fragment.*
Change-Id: Idb809fdd9efad586166b3d94c2a305e8c234274f
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Matthew Netsch [Fri, 24 Sep 2021 16:26:36 +0000 (12:26 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: Ibbd5912f0843ba22ee8402ee4a96aaf6ed53b303
Matthew Netsch [Fri, 24 Sep 2021 16:26:29 +0000 (12:26 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: Iac3e8ce0a318caed752aeb933994227278d9582f
Matthew Netsch [Fri, 24 Sep 2021 15:04:24 +0000 (11:04 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: Ifc19ab1fcdcfa681d0fef9b3c5e3448d12813fdf
Matthew Netsch [Fri, 24 Sep 2021 15:04:20 +0000 (11:04 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Iab8e5c27a9f07ca0459c97bc8d72cd93b8ce675a
Matthew Netsch [Fri, 24 Sep 2021 15:04:16 +0000 (11:04 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Change-Id: Icdbb121ec7a828457ff9df34efe018fbf845e3f9
Mohankumar Nekkarakalaya [Wed, 25 Aug 2021 22:45:12 +0000 (15:45 -0700)]
Accept NaN as valid pass value in shader precision atan2 tests
Spec mentions that implementation may assume arguments are not
Inf if the entrypoint is not declared with SignedZeroInfNanPreserve
and can perform optimizations.
Components: Vulkan
VK-GL-CTS Issue: 3073
Affected tests:
dEQP-VK.spirv_assembly.instruction.compute.float16.*.atan2
dEQP-VK.spirv_assembly.instruction.graphics.float16.*.atan2*
dEQP-VK.glsl.builtin.precision.atan2.*
Change-Id: I6e1fbc14a5654422cf88e1453fae0774bfce0bb6
Piers Daniell [Mon, 13 Sep 2021 22:51:59 +0000 (16:51 -0600)]
Vulkan 1.3 SPIR-V 1.6 framework
Components: Vulkan, Framework
Affects:
dEQP-VK.*
Change-Id: I275ed504144eaf5553e81767425cf7f5c53f757f
Matthew Netsch [Fri, 17 Sep 2021 19:33:24 +0000 (15:33 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: I76cb05654f5fb575ce141f8c81d54e2192d53451
Matthew Netsch [Fri, 17 Sep 2021 18:11:27 +0000 (14:11 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I0e58f89d8cfdfaaa400f700ea87882cb281f080f
Matthew Netsch [Fri, 17 Sep 2021 15:57:13 +0000 (11:57 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I2d3ee8a323e62c13c9f3e5ff499ff3614c802b29
Matthew Netsch [Fri, 17 Sep 2021 15:56:59 +0000 (11:56 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I521f0b1f6f4c3a86e8612239ce2134be76e5d16a
Matthew Netsch [Fri, 17 Sep 2021 15:56:48 +0000 (11:56 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Ic1ab6043f9d70b8491192137c6d8c2fc12f2112d
Matthew Netsch [Thu, 16 Sep 2021 22:59:57 +0000 (22:59 +0000)]
Merge "Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.3.0" into vulkan-cts-1.3.0
Ari Suonpaa [Wed, 4 Aug 2021 12:10:21 +0000 (15:10 +0300)]
Added extra test case for load/store op none
Added a case that covers resolving a multisampled unsigned
integer color buffer using load and store op none.
VK-GL-CTS Issue: 2971
New tests:
dEQP-VK.renderpass*.suballocation.load_store_op_none.color_load_op_none_store_op_none_resolve
Components: Vulkan
Change-Id: Iab7f7340009d98283d9afb5683fe3bba273de110
(cherry picked from commit
48c886f0ef7dfbd839d9abcfd59911d0914e1188)
root [Thu, 16 Sep 2021 17:41:46 +0000 (13:41 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: Iffb51fe31abacfb802ee4e6fa924e6734afc6424
root [Thu, 16 Sep 2021 17:41:40 +0000 (13:41 -0400)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I7bd0d85348a194cda0ec5922fa93a2cb5dd02e19
Piotr Byszewski [Tue, 14 Sep 2021 09:32:10 +0000 (11:32 +0200)]
Test Vulkan 1.3 required features/properties
VK-GL-CTS issue: 3116
Components: Vulkan
Affects:
dEQP-VK.api.info.vulkan1p*
Change-Id: I9ef39e2331adfadb92e15991f5eabc001261ff64
Peter Kohaut [Mon, 13 Sep 2021 07:28:43 +0000 (09:28 +0200)]
Extend multidraw test with dynamic rendering and geom & tess
This combination was came up from a merge conflict, it was not tested before and was disabled.
Affects: dEQP-VK.draw_with_dynamic_rendering.multi_draw*
Components: Vulkan
Change-Id: I89582190df1af41a0c2537eb15a4ddc4764838dc
Neslisah [Thu, 12 Aug 2021 15:32:21 +0000 (11:32 -0400)]
dEQP-VK.renderpass*.load_store_op_none.* tests depth-stencil format support check
In this test case, depth stencil format is set to VK_FORMAT_D24_UNORM_S8_UINT by default without checking if it is supported or not. If this format is not supported, then the test case crashes without even giving "Not Supported" result.
In this update I defined a set of depth stencil formats, and added a separate test case for each depth_stencil format. If the depth_stencil format is not supported, "Not Supported" is returned.
Affects: dEQP-VK.renderpass*.load_store_op_none.*
Components: Vulkan
VK-GL-CTS issue: 3049
Change-Id: Ifea5d0955a8325ecbed7f27296da4120e473d463
(cherry picked from commit
79c44fc79b7d17b8c70d2469e113c764011c51c6)
Piers Daniell [Wed, 15 Sep 2021 13:41:49 +0000 (15:41 +0200)]
Ensure the vertex shader matches the vertex input definition
When doing the "reversed" variants of the extended dynamic
state tests, the vertex input attribute and binding information
was reversed, but the vertex shaders were not. The meant that
in some tests the vertex shader may try to fetch from unbound
or undefined vertex attributes or vertex attribute data.
This commit fixes the issue by swapping vertex shaders for the
affected variants.
Affects:
dEQP-VK.pipeline.extended_dynamic_state.*
Components: Vulkan
VK-GL-CTS issue: 3111
Change-Id: I7d9abbe7dab0b44127f6b194ee5da79755f7658c
Co-authored-by: Ricardo Garcia <rgarcia@igalia.com>
Ari Suonpaa [Tue, 14 Sep 2021 10:08:37 +0000 (13:08 +0300)]
Fix AHB external memory test mip levels
AHB external memory tests were testing mipmaps using a
queried maximum number of supported mipmap levels, but
at the same time using an image size of 64x64.
The number of mip levels need to match the number for a
full mip chain, in this case 7. Now a correct number of
mip levels is used, which also gets rid of a validation
error.
VK-GL-CTS Issue: 3112
Affects:
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.*
Components: Vulkan
Change-Id: I1c6d09f93c06ac1c52cea283fd86359ccde01e4f
Peter Kohaut [Sun, 5 Sep 2021 16:41:43 +0000 (18:41 +0200)]
Update glslang, SPIR-V Tools, headers to 1.6
Switched to internal Khronos repo until 1.6 is released.
Components: Framework
Change-Id: Idf3ea328a2ce03b5f12eb4c44fc1ba2e53ee396f
Piotr Byszewski [Mon, 6 Sep 2021 12:23:27 +0000 (14:23 +0200)]
Add support for Vulkan 1.3
Adds following extensions to core:
VK_KHR_copy_commands2
VK_KHR_dynamic_rendering
VK_KHR_format_feature_flags2
VK_KHR_maintenance4
VK_KHR_shader_integer_dot_product
VK_KHR_shader_non_semantic_info
VK_KHR_shader_terminate_invocation
VK_KHR_synchronization2
VK_KHR_zero_initialize_workgroup_memory
VK_EXT_4444_formats
VK_EXT_extended_dynamic_state
VK_EXT_extended_dynamic_state2
VK_EXT_image_robustness
VK_EXT_inline_uniform_block
VK_EXT_pipeline_creation_cache_control
VK_EXT_pipeline_creation_feedback
VK_EXT_private_data
VK_EXT_shader_demote_to_helper_invocation
VK_EXT_subgroup_size_control
VK_EXT_texel_buffer_alignment
VK_EXT_texture_compression_astc_hdr
VK_EXT_tooling_info
VK_EXT_ycbcr_2plane_444_formats
Components: Vulkan, Framework
Affects:
dEQP-VK.*
Change-Id: I18db39638deecae321bca89ddeade459e1f1ac31
Lionel Duc [Wed, 16 Jun 2021 13:19:56 +0000 (15:19 +0200)]
Add image query tests for VK_KHR_maintenance4
These new tests perform the same queries as the original
vkGet*MemoryRequirements, using the objects createInfo instead. We then
compare the results against the original results.
We also query the memory requirements of a smaller buffer or image and
make sure the returned size requirements are not larger for the smaller
resource.
Components: Vulkan, Framework
New Tests: dEQP-VK.memory.requirements.create_info*
Change-Id: I2b751883911d18c3265b25f9d42920bb7e44bdf7
Piotr Byszewski [Mon, 19 Jul 2021 13:35:37 +0000 (15:35 +0200)]
maintenance4: Add requirements matching tests
New test does few things:
* creates a bunch of VkBuffer and VkImage objects with the same
create infos and makes sure their alignments all match
* makes sure that memory requirements returned by
vkGetBufferCreateInfoMemoryRequirementsKHR are identical to those
that would be returned by vkGetBufferMemoryRequirements2 if it were
called with a VkBuffer created with the same VkBufferCreateInfo
values
* similarly, vkGetImageCreateInfoMemoryRequirementsKHR will report
the same memory requirements as vkGetImageMemoryRequirements2
would if called with a VkImage created with the supplied
VkImageCreateInfo
* makes sure that size memory requiremen for VkImage is not greater
than that of another VkImage created with a greater or equal extent
dimension specified in VkImageCreateInfo when all other creation
parameters are identical
* makes sure that size memory requiremen for VkBuffer is not greater
than that of another VkBuffer created with a greater or size
specified in VkImageCreateInfo when all other creation parameters
are identical
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.api.invariance.memory_requirements_matching
Change-Id: Ide74041ee82440af68458f684e2eae622f31cedf
Stuart Brady [Tue, 19 Jan 2021 14:19:40 +0000 (14:19 +0000)]
Add tests for VK_KHR_shader_integer_dot_product
Components: Vulkan, Framework
VK-GL-CTS issue: 2729
New tests:
dEQP-VK.spirv_assembly.instruction.compute.opsdotkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opudotkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opsudotkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opsdotaccsatkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opsudotaccsatkhr.*
Affects:
dEQP-VK.api.info.get_physical_device_properties2.features
dEQP-VK.api.info.get_physical_device_properties2.properties
Signed-off-by: Stuart Brady <stuart.brady@arm.com>
Signed-off-by: Pablo Cascón <pablo.cascon@arm.com>
Signed-off-by: Neil Hickey <neil.hickey@arm.com>
Change-Id: Ia618d9eb33369e72eedc5845342e17e1ee12da3a
(cherry picked from commit
12d5b5fe34a4cde919e1d9d3949154bf33ef21f2)
Peter Kohaut [Wed, 8 Sep 2021 18:17:43 +0000 (20:17 +0200)]
Merge branch 'master' into vulkan-cts-1.3.0
Change-Id: I06b7f4c93ba2475076b9bc28ad6e6e9393c8de93
Boris Zanin [Wed, 17 Mar 2021 11:27:26 +0000 (12:27 +0100)]
Fulfill OpControlBarrier requirement
The valid usage requirement in vulkan specification 1.2.170
VUID-StandaloneSpirv-None-04641 requires: "If the Scope for
memory is Invocation, then memory semantics must be None".
New SPIRV-Tools enforces it.
Fix tests:
* dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_function
* dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_switch
* dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_if
* dEQP-VK.spirv_assembly.instruction.graphics.barrier.after_divergent_if
* dEQP-VK.spirv_assembly.instruction.graphics.barrier.in_loop
Update tests:
* dEQP-VK.spirv_assembly.instruction.graphics.barrier.*
Components: Vulkan
Change-Id: Ie6997fdb36c0327d88a2b7b6b4826dfee690377d
Mika Väinölä [Tue, 7 Sep 2021 14:24:14 +0000 (17:24 +0300)]
Fix Clang -Wcomma warnings
Replace commas that were most likely intended to be semicolons
instead.
Components: Vulkan, OpenGL ES
VK-GL-CTS issue: 3097
Change-Id: I106292084a12db1517da33c26a88df5232ea33fd
Mika Väinölä [Tue, 7 Sep 2021 13:12:03 +0000 (16:12 +0300)]
Fix qpReleaseInfo generation with non-ASCII paths
On Windows CMake fails to generate qpReleaseInfo.inl if DE_GIT_DIR is a
path with non-ASCII characters. Specify ENCODING UTF8 for git output.
Components: Framework
VK-GL-CTS issue: 3096
Change-Id: I8368ba5e2670b723471e2d7a7beec1f11376c49f
Ari Suonpaa [Wed, 30 Jun 2021 22:11:44 +0000 (01:11 +0300)]
Add tests for VK_EXT_load_store_op_none
VK-GL-CTS Issue: 2971
New tests:
dEQP-VK.renderpass*.load_store_op_none.*
Components: Vulkan
Change-Id: If3eb79e75b14f96037d14fcaa469230d3434a729
(cherry picked from commit
b0025b814cad4fd699761578eaec575fe76f7f75)
Ilkka Saarelainen [Tue, 7 Sep 2021 13:03:46 +0000 (16:03 +0300)]
Remove invalid SPIR-V decorations
Some SPIR-V asm tests used invalid Binding and DescriptorSet decorations.
This CL removes those decorations.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.physical_pointers.complex_types_compute.*
dEQP-VK.spirv_assembly.instruction.compute.pointer_parameter.buffer_memory
dEQP-VK.spirv_assembly.instruction.graphics.pointer_parameter.buffer_memory*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.input_output_float_16_to_16x2.scalar
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.input_output_float_16_to_16x2.vec2
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.input_output_int_16_to_16x2.scalar_int
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.input_output_int_16_to_16x2.scalar_uint
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.input_output_int_16_to_16x2.ivec2
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.input_output_int_16_to_16x2.uvec2
Components: Vulkan
VK-GL-CTS issue: 3063
Change-Id: Icfee33f9ce041bf60a19fba55aef9fdab0747148
Peter Kohaut [Tue, 7 Sep 2021 16:42:49 +0000 (18:42 +0200)]
Merge branch 'vulkan-cts-1.2.7'
Change-Id: I206c4059e348c7163a597e47e76a2146e23d7fbc
Peter Kohaut [Tue, 7 Sep 2021 16:40:35 +0000 (18:40 +0200)]
Merge branch 'vulkan-cts-1.2.6' into vulkan-cts-1.2.7
Change-Id: Iec55ddd12f12935ab70d00af5841a8b22f9a3c89
Piotr Byszewski [Fri, 11 Jun 2021 15:31:44 +0000 (17:31 +0200)]
Test dynamic rendering with multiview tests
This CL generalizes aplicable multiview tests to also test
functionality added with VK_KHR_dynamic_rendering extension.
Components: Vulkan
VK-GL-CTS issue: 2858
Affets:
dEQP-VK.multiview.*
Change-Id: Idd7db7d9e385d08fb8536e80043794edf3a69952
Stuart Brady [Tue, 19 Jan 2021 14:19:40 +0000 (14:19 +0000)]
Add tests for VK_KHR_shader_integer_dot_product
Components: Vulkan, Framework
VK-GL-CTS issue: 2729
New tests:
dEQP-VK.spirv_assembly.instruction.compute.opsdotkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opudotkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opsudotkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opsdotaccsatkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opudotaccsatkhr.*
dEQP-VK.spirv_assembly.instruction.compute.opsudotaccsatkhr.*
Affects:
dEQP-VK.api.info.get_physical_device_properties2.features
dEQP-VK.api.info.get_physical_device_properties2.properties
Signed-off-by: Stuart Brady <stuart.brady@arm.com>
Signed-off-by: Pablo Cascón <pablo.cascon@arm.com>
Signed-off-by: Neil Hickey <neil.hickey@arm.com>
Change-Id: Ia618d9eb33369e72eedc5845342e17e1ee12da3a
Piers Daniell [Thu, 29 Jul 2021 23:57:51 +0000 (17:57 -0600)]
Updated framework for VK_KHR_maintenance4
This is just the vulkan_core.h and generated framework
for VK_KHR_maintenance4. Other CLs can be chained off
this one.
Affects: nothing
Components: Framework, Vulkan
VK-GL-CTS issue: 2996
Change-Id: Iaddaaa02c1523181b86f4beeeef40a17128c65bb
Piotr Byszewski [Wed, 14 Jul 2021 19:29:00 +0000 (21:29 +0200)]
maintenance4: Add LocalSizeId tests
For each compute shader entry point, either a LocalSize or
LocalSizeId execution mode, or an object decorated with the
WorkgroupSize decoration must be specified.
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.spirv_assembly.instruction.compute.localsize*
Change-Id: I5d4c5fff1d536fe6fe46b9f60009af8c9fb4a7f6
Graeme Leese [Mon, 9 Aug 2021 16:31:31 +0000 (17:31 +0100)]
Wire up support for maintenance4 validation
Pass the appropriate option to spirv-val if VK_KHR_maintenance4 is
supported.
Components: Vulkan
Affects: dEQP-VK.spirv_assembly.instruction.compute.*
Change-Id: I554bac9160dc55a017e1358a579b59249ed81079
Arkadiusz Sarwa [Thu, 17 Jun 2021 15:30:59 +0000 (17:30 +0200)]
Add ClearAttachments test to KHR_dynamic_rendering
VK-GL-CTS Issue: 2858
Components: Vulkan
Affects: dEQP-VK.dynamic_rendering.*
Change-Id: I2ce363d66c806c3369c50fc9710dc5245fd6546d
Piotr Byszewski [Tue, 1 Jun 2021 15:17:24 +0000 (17:17 +0200)]
Test dynamic rendering with FSR tests
This CL generalizes fragment_shading_rate tests to also
test functionality added with VK_KHR_dynamic_rendering extension.
Components: Vulkan
VK-GL-CTS issue: 2858
Affets:
dEQP-VK.fragment_shading_rate*
Change-Id: I769cf608344df04f38cc46e3978511e548124a82
Arkadiusz Sarwa [Wed, 2 Jun 2021 11:38:53 +0000 (13:38 +0200)]
Add additional tests for VK_KHR_dynamic_rendering
Change testing:
In one primary command buffer, record two render pass instances,
with the second resuming the first. In the first, draw one triangle
directly in the primary command buffer. For the second,
use CONTENTS_SECONDARY_COMMAND_BUFFER_BIT_KHR, draw the second
triangle in a secondary command buffer, and execute it in that
second render pass instance.
In one primary command buffer, record two render pass instances,
with the second resuming the first. In the first,
use CONTENTS_SECONDARY_COMMAND_BUFFER_BIT_KHR, draw the first triangle
in a secondary command buffer, and execute it in that first render pass
instance. In second, draw one triangle directly in primary command buffer.
In two primary command buffers, record two render pass instances,
with the second resuming the first. In the first, draw one triangle
directly in the primary command buffer. For the second,
use CONTENTS_SECONDARY_COMMAND_BUFFER_BIT_KHR, draw the second triangle
in a secondary command buffer, and execute it in that second render pass.
In two primary command buffers, record two render pass instances,
with the second resuming the first. In the first,
use CONTENTS_SECONDARY_COMMAND_BUFFER_BIT_KHR, draw the first triangle
in a secondary command buffer, and execute it in that first render pass.
In the second, draw one triangle directly in the primary command buffer.
New tests:
dEQP-VK.dynamic_rendering.contents_*secondary*cmdbuffers_resuming
Components: Vulkan
VK-GL-CTS issue: 2858
Change-Id: I0560c4bd1e2b3d8a3d9bcff8c72ab79e3c260cfe
Arkadiusz Sarwa [Thu, 15 Apr 2021 15:31:15 +0000 (17:31 +0200)]
Add new tests for VK_KHR_dynamic_rendering
Change testing:
Draw two triangles in a single primary command buffer,
beginning and ending the render pass instance
Draw two triangles in a single primary command buffer,
but across two render pass instances, with the second RESUMING first.
Draw two triangles in two primary command buffers,
across two render pass instances, with the second RESUMING the first.
Draw two triangles in two secondary command buffers,
across two render pass instances, with the second RESUMING the first,
both executed in the same primary command buffer.
Draw two triangles in two secondary command buffers,
across two render pass instances, with the second RESUMING the first,
executed in two primary command buffers.
Using CONTENTS_SECONDARY_COMMAND_BUFFER_BIT_KHR, draw two triangles in
one secondary command buffer, and execute it inside single render pass
instance in one primary command buffer.
Using CONTENTS_SECONDARY_COMMAND_BUFFER_BIT_KHR, draw two triangles in
two secondary command buffers, execute them inside a single render pass
instance in one primary command buffer.
Using CONTENTS_SECONDARY_COMMAND_BUFFER_BIT_KHR, draw two triangles in
two secondary command buffers, and execute them inside two render pass
instances, with the second RESUMING the first, both recorded in
the same primary command buffer.
Using CONTENTS_SECONDARY_COMMAND_BUFFER_BIT_KHR, draw two triangles in
two secondary command buffers, and execute them inside two render pass
instances, with second RESUMINGfirst, recorded into two primary
cmdbuffers.
New tests:
dEQP-VK.dynamic_rendering*
Components: Vulkan
VK-GL-CTS issue: 2858
Change-Id: I511b04022eaae8b0876a3733f3405eddba7309b1
Piotr Byszewski [Thu, 27 May 2021 11:58:42 +0000 (13:58 +0200)]
Test dynamic rendering with renderpass tests
This CL generalizes aplicable renderpass tests to also test
functionality added with VK_KHR_dynamic_rendering extension.
Components: Vulkan
VK-GL-CTS issue: 2858
Affets:
dEQP-VK.renderpass*
Change-Id: I3a8e25ba3dced9c92f3ca96bd98bd56f677d9bca
Piotr Byszewski [Sat, 15 May 2021 09:06:29 +0000 (11:06 +0200)]
Test dynamic rendering with draw tests
This CL generalizes most of draw tests to also test
functionality added with VK_KHR_dynamic_rendering extension.
Components: Vulkan
VK-GL-CTS issue: 2858
Affets:
dEQP-VK.draw*
dEQP-VK.conditional_rendering.draw.*
dEQP-VK.conditional_rendering.clear_attachments.*
Change-Id: Ie7898714ed16056d4ac94b4165f637c867eadfb0
Piotr Byszewski [Thu, 15 Jul 2021 17:46:24 +0000 (19:46 +0200)]
maintenance4: Add push-constant test
Test creates a pipeline with a push-constant, but not initialize
that push constant. The test runs without crashing when reading
that undefined value.
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.pipeline.push_constant.compute_pipeline.*
Change-Id: I0ca1d4082daccd628e26936b4b0b17550c698a1e
Piotr Byszewski [Mon, 12 Jul 2021 19:00:36 +0000 (21:00 +0200)]
maintenance4: Add pipeline layout tests
Test destroying pipeline layout after creating
compute and graphics pipeline.
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.api.pipeline.*
Change-Id: I1a70c67f870ef6cb2341cf9a1236c6d9f127dc54
Piotr Byszewski [Wed, 14 Jul 2021 07:52:10 +0000 (09:52 +0200)]
maintenance4: Add maxBufferSize limit tests
Verify that VkBuffer with maxBufferSize can be created
for both normal and sparse buffers.
Components: Vulkan
VK-GL-CTS issue: 2996
Affets:
dEQP-VK.api.buffer.basic.*
Change-Id: I439a4f9ab0d809367054e711dc128a3c2aabecf9
Piers Daniell [Thu, 8 Jul 2021 19:58:03 +0000 (13:58 -0600)]
Framework for VK_KHR_maintenance4
This is just the vulkan_core.h and generated framework
for VK_KHR_maintenance4. Other CLs can be chained off
this one.
Affects: nothing
Components: Framework, Vulkan
VK-GL-CTS issue: 2996
Change-Id: I9390991586dcd24c3e07fd39e0a9e2053c291324
Graeme Leese [Wed, 14 Jul 2021 13:45:17 +0000 (14:45 +0100)]
Change RobustnessExt tests to use format_features2
The no_fmt_qual variants of these tests can run on any format that
exposes the feature flag. This means that we get somewhat more coverage
on implementations that don't support both reading and writing without
format qualifiers.
Components: Vulkan
Affects: dEQP-VK.robustness.robustness2.*
dEQP-VK.robustness.image_robustness.*
Change-Id: I8564fcd9d1c4eefc28239657b61536a0b8ecdfb5
michal_jakubek [Wed, 5 May 2021 13:28:16 +0000 (15:28 +0200)]
Tests for VK_KHR_format_feature_flags2 extension
This CL also add tests for shadow sampling of R textures.
New tests:
dEQP-VK.api.format_feature_flags2.*
Affects:
dEQP-VK.image.store.*
dEQP-VK.image.load_store.*
dEQP-VK.texture.shadow.*
Components: Vulkan
VK-GL-CTS issue: 2826
Change-Id: I8f4ad7504b4f198f508b307346c4daa9ace72664
Piotr Byszewski [Mon, 7 Jun 2021 11:49:31 +0000 (13:49 +0200)]
Extend decoration mismatch tests
Recent changes to specification changed interface matching
rules and this CL adds tests that check decoration
mismatch in structures.
Components: Vulkan
VK-GL-CTS issue: 2554
Affects:
dEQP-VK.pipeline.interface_matching.decoration_mismatch.*
Change-Id: I25930e6a4b02456acbcb6584f3308435898f475e
Piotr Byszewski [Fri, 28 May 2021 11:25:24 +0000 (13:25 +0200)]
Add tests for relaxed vector matching
VK_KHR_maintenance4 relaxed vector matching rules
in interface matching section.
Components: Vulkan
VK-GL-CTS issue: 2553
Affects:
dEQP-VK.pipeline.interface_matching.*
Change-Id: I79c96b88e41dba13570d518b07b8d5ef9a599d41
Piotr Byszewski [Thu, 21 Jan 2021 15:53:23 +0000 (16:53 +0100)]
Add tests for vector matching
Components: Vulkan
VK-GL-CTS issue: 2553
New tests:
dEQP-VK.pipeline.interface_matching.*
Change-Id: I1354266e11ed7293c6b44526b2aa24427b0e86d5
Piotr Byszewski [Thu, 21 Jan 2021 15:53:23 +0000 (16:53 +0100)]
Add decoration mismatch tests
Components: Vulkan
VK-GL-CTS issue: 2554
New tests:
dEQP-VK.pipeline.interface_matching.decoration_mismatch.*
Change-Id: I4f98d36b0568234d303e3234d78c2023f866b775
Matthew Netsch [Tue, 22 Dec 2020 19:40:32 +0000 (01:10 +0530)]
Allow GL_RGB9_E5 as a valid fbo format
If GL_QCOM_render_shared_exponent is available then treat
GL_RGB9_E5 as a valid internal format for fbo. Also, allow
copy of RGB9_E5 pixel data.
Components: OpenGL
VK-GL-CTS Issue: 2898
Affects:
KHR-GLES3.packed_pixels.rectangle.rgb9_e5
KHR-GLES3.packed_pixels.pbo_rectangle.rgb9_e5
KHR-GLES3.packed_pixels.varied_rectangle.rgb9_e5
Change-Id: Ie57d74b9bbd11cf7ccca175813077c22405a0926
(cherry picked from commit
db8e2899b1f0ab4677aa24af6fad4119f5fe1fa2)
Peter Kohaut [Fri, 3 Sep 2021 12:11:08 +0000 (14:11 +0200)]
Merge branch 'vulkan-cts-1.2.7'
Change-Id: I0034a268b5c4dd313953bf4cd8b6511fd3b5635e
Mika Väinölä [Tue, 24 Aug 2021 10:51:42 +0000 (13:51 +0300)]
Remove unreachable breaks
Fix warnings for Clang builds with -Wunreachable-code-break.
Components: Framework, OpenGL, OpenGL ES, Vulkan
VK-GL-CTS issue: 3074
Change-Id: Ib658e631bad3d06d787c6151f744e8db3e850fb4
Mohankumar Nekkarakalaya [Thu, 19 Aug 2021 19:05:36 +0000 (12:05 -0700)]
Add GL_RGB9_E5 as renderable ext format in fbo tests
-If GL_QCOM_render_shared_exponent is supported then treat
GL_RGB9_E5 as a renderable format for fbo completeness tests
Components: OpenGL
VK-GL-CTS Issue: 3066
Affects:
dEQP-GLES3.functional.fbo.completeness.renderable.renderbuffer.color0.rgb9_e5
dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.rgb9_e5
Change-Id: I74566a5b56c7528c89ac97423c5b6f9207397c70
(cherry picked from commit
d18b37f7319839e2be970a96fecdeb2cdb1db7e4)
Antto Mäkinen [Fri, 4 Jun 2021 12:15:17 +0000 (15:15 +0300)]
Add a batch of GraphicsFuzz coverage tests
This commit adds a batch of GraphicsFuzz coverage tests.
The tests have been separated by a request.
Components: Vulkan
New Tests:
dEQP-VK.graphicsfuzz.cov-dfdx-dfdy-after-nested-loops
dEQP-VK.graphicsfuzz.cov-nested-loops-float-array-select-by-fragcoord
dEQP-VK.graphicsfuzz.cov-nested-loops-set-struct-data-verify-in-function
Change-Id: I33b01c2f14318fb65b1f895eea89433828c82d51
Peter Kohaut [Fri, 3 Sep 2021 11:11:48 +0000 (13:11 +0200)]
Merge branch 'vulkan-cts-1.2.6' into vulkan-cts-1.2.7
Change-Id: I5d1960f36c445e344a36442d03b7a71a50732038
Mika Väinölä [Tue, 10 Aug 2021 05:55:03 +0000 (08:55 +0300)]
Fix GLES3 Clang UBSan errors
Fix or avoid runtime errors detected by Clang's undefined behavior
sanitizer in the GLES3 module.
Affected tests:
dEQP-GLES3.functional.shaders.operator.unary_operator.minus.*
dEQP-GLES3.functional.fragment_out.basic.*
dEQP-GLES3.functional.texture.filtering.2d.formats.*
Components: OpenGL ES, Framework
VK-GL-CTS issue: 3018
Change-Id: Ic10ae433deb2f835ceb2fe3ab9664b05f72cd3d0
Peter Kohaut [Fri, 3 Sep 2021 10:20:36 +0000 (12:20 +0200)]
Merge branch 'vulkan-cts-1.2.5' into vulkan-cts-1.2.6
Change-Id: Ia705e141206a3751d4abc2d6eccd958d7e3f2f0e
Peter Kohaut [Fri, 3 Sep 2021 07:33:02 +0000 (09:33 +0200)]
Merge branch 'vulkan-cts-1.2.4' into vulkan-cts-1.2.5
Change-Id: I952af5b744206c52b4161d8c1102b6a8c2a53f58
Peter Kohaut [Thu, 2 Sep 2021 20:22:53 +0000 (22:22 +0200)]
Merge branch 'vulkan-cts-1.2.3' into vulkan-cts-1.2.4
Change-Id: Ica9ea69514cd36415ad89f4b34e8384b0523181c
Peter Kohaut [Thu, 2 Sep 2021 17:05:54 +0000 (19:05 +0200)]
Merge remote-tracking branch 'origin/vulkan-cts-1.2.2' into vulkan-cts-1.2.3
Change-Id: I3c5b289149d9f2601b5d5ab8986d41b3f33f8bab
Antto Mäkinen [Mon, 30 Aug 2021 09:55:27 +0000 (12:55 +0300)]
Add a batch of GraphicsFuzz coverage tests
This commit adds a batch of GraphicsFuzz coverage tests.
Components: Vulkan
New Tests:
dEQP-VK.graphicsfuzz.cov-condition-bitfield-extract-integer
dEQP-VK.graphicsfuzz.cov-condition-matrix-determinant-uniform
dEQP-VK.graphicsfuzz.cov-descending-loop-index-temporary-array
dEQP-VK.graphicsfuzz.cov-do-while-switch-case-bitcount-findmsb
dEQP-VK.graphicsfuzz.cov-dummy-function-loop-array-element-increment-never-read
dEQP-VK.graphicsfuzz.cov-fragcood-multiple-conditions-function-loop-global-counter
dEQP-VK.graphicsfuzz.cov-fragcoord-multiple-conditions-function-global-loop-counter-simplified
dEQP-VK.graphicsfuzz.cov-function-nested-do-whiles-looped-once
dEQP-VK.graphicsfuzz.cov-int-initialize-from-multiple-large-arrays
dEQP-VK.graphicsfuzz.cov-loop-break-after-first-iteration-set-array-element
dEQP-VK.graphicsfuzz.cov-loop-condition-bitfield-extract-set-array-elements
dEQP-VK.graphicsfuzz.cov-loop-condition-logical-or-never-iterated
dEQP-VK.graphicsfuzz.cov-loop-fragcoord-identical-condition
dEQP-VK.graphicsfuzz.cov-loop-set-vector-components-pow-two
dEQP-VK.graphicsfuzz.cov-multiple-fragcoord-conditions-false-never-return-sample-texture
dEQP-VK.graphicsfuzz.cov-multiple-fragcoord-conditions-never-return-color-uninitialized
dEQP-VK.graphicsfuzz.cov-nested-loop-continue-inner-copy-array-element
dEQP-VK.graphicsfuzz.cov-nested-loop-not-greater-than-increment-array-element
dEQP-VK.graphicsfuzz.cov-nested-loops-float-bits-to-int-increment-array
dEQP-VK.graphicsfuzz.cov-nested-loops-global-counter-increment-single-element
dEQP-VK.graphicsfuzz.cov-nested-loops-sample-opposite-corners
dEQP-VK.graphicsfuzz.cov-two-nested-loops-switch-case-matrix-array-increment
Change-Id: Ia02cb23ec103be95184ad65da475d8b95a8d8504
Juha Heiskanen [Fri, 27 Aug 2021 09:58:24 +0000 (12:58 +0300)]
Add test for finding unknown memory property flag sets
This test retrieves all the found propertyFlags from available memory
types, and then it makes a comparison between the found memory
propertyFlags and the acceptable propertyFlag sets. If an unknown
combination of memory propertyFlags is found, the test will fail.
Components: Vulkan
VK-GL-CTS Issue: 2704
New tests: dEQP-VK.memory.requirements.memory_property_flags.check_all
Change-Id: I9c456076bb7364572183ca4976f56775ffd5e286
Mika Väinölä [Tue, 31 Aug 2021 11:56:16 +0000 (14:56 +0300)]
Fix loop over cube map faces in GL4
Found when building with Clang with -Wunreachable-code-loop-increment
enabled. TextureViewUtilities::initTextureStorage is supposed to call
glTexImage2D for all cube map faces but stops after the first one
(GL_TEXTURE_CUBE_MAP_POSITIVE_X).
Affects:
KHR-GL4*.texture_view.gettexparameter
KHR-GL4*.texture_view.errors
Components: OpenGL
VK-GL-CTS issue: 3085
Change-Id: I3d85351ab50ad0bd8b779537b1a8b3bef162f80f
Lionel Landwerlin [Thu, 26 Aug 2021 11:42:53 +0000 (14:42 +0300)]
Fix fragment shading rate validation layer warning
We passing a number of layer > 1 for an image view type of
VK_IMAGE_VIEW_TYPE_2D.
Also if we're not using ATTACHMENT_MODE_2DARRAY, then there is only
one layer for the fragment rate shading attachment, so we should check
against layer 0.
Components: Vulkan
Affects:
dEQP-VK.fragment_shading_rate.srlayered.*
VK-GL-CTS issue: 3079
Change-Id: I351f880a9bdd934f773e517713839c67ad453766
Jari Komppa [Fri, 13 Aug 2021 10:10:49 +0000 (13:10 +0300)]
Add run mode that verifies amber requirements
This change adds a new run mode that verifies that .amber file
requirements match the ones defined in CTS.
Running CTS with --deqp-runmode=amber-verify goes through all
amber test cases and outputs any mismatches in the log file.
If any mismatches are found, the run ends with internal_error.
This change also contains fixes for all of the mismatches
that exist in CTS today. A couple required update in Amber,
and thus this change also updates it.
Affects:
dEQP-VK.compute.workgroup_memory_explicit_layout.copy_memory.variable_pointers
dEQP-VK.spirv_assembly.instruction.spirv1p4.*
dEQP-VK.spirv_assembly.instruction.terminate_invocation.*
Components: Vulkan, Framework
VK-GL-CTS issue: 2967
Change-Id: Ic30b5d555d9cdf293a2ece8a690a4a2a943b1b80
Mika Väinölä [Thu, 26 Aug 2021 14:10:28 +0000 (17:10 +0300)]
Remove extra semicolons
Fix warnings for Clang builds with -Wextra-semi, -Wextra-semi-stmt and
-Wc++98-compat-extra-semi.
Components: Framework, OpenGL, OpenGL ES, Vulkan
VK-GL-CTS issue: 3080
Change-Id: I1caa81b65415a1e94797c6df48fc8a4539e9635a
Graeme Leese [Fri, 23 Jul 2021 18:00:11 +0000 (19:00 +0100)]
Fix warning in gcc-8
The code for setting up the output buffer was duplicated into each of
the cases for different input types, and the compiler doesn't understand
that DE_ASSERT marks an unreachable path. Changing to using standard
assert fixes the warning:
vktShaderFConvertTests.cpp:541:19: error: ‘outputBufferSizeInfo::memorySizeBytes’
may be used uninitialized in this function [-Werror=maybe-uninitialized]
541 | BufferSizeInfo outputBufferSizeInfo;
| ^~~~~~~~~~~~~~~~~~~~
Component: Vulkan
Affects: dEQP-VK.glsl.builtin.precision_fconvert.*
Change-Id: Icf6302166d8bce7c3ae1447973c895c34465a726
Juha Heiskanen [Fri, 30 Jul 2021 09:10:16 +0000 (12:10 +0300)]
Enable Vulkan matrix determinant and inverse precision tests
A set of new matrix3x3/matrix4x4 determinant and inverse precision
tests for Amber.
Components: Vulkan
VK-GL-CTS Issue: 2878
New tests:
dEQP-VK.glsl.builtin.precision.determinant.highp.mat3
dEQP-VK.glsl.builtin.precision.inverse.highp.mat3
dEQP-VK.glsl.builtin.precision_fp16_storage16b.determinant.compute.mat3
dEQP-VK.glsl.builtin.precision_fp16_storage16b.inverse.compute.mat3
dEQP-VK.glsl.builtin.precision_fp16_storage32b.determinant.compute.mat3
dEQP-VK.glsl.builtin.precision_fp16_storage32b.inverse.compute.mat3
dEQP-VK.glsl.builtin.precision_double.determinant.compute.mat3
dEQP-VK.glsl.builtin.precision_double.inverse.compute.mat3
dEQP-VK.glsl.builtin.precision.determinant.highp.mat4
dEQP-VK.glsl.builtin.precision.inverse.highp.mat4
dEQP-VK.glsl.builtin.precision_fp16_storage16b.determinant.compute.mat4
dEQP-VK.glsl.builtin.precision_fp16_storage16b.inverse.compute.mat4
dEQP-VK.glsl.builtin.precision_fp16_storage32b.determinant.compute.mat4
dEQP-VK.glsl.builtin.precision_fp16_storage32b.inverse.compute.mat4
dEQP-VK.glsl.builtin.precision_double.determinant.compute.mat4
dEQP-VK.glsl.builtin.precision_double.inverse.compute.mat4
Change-Id: I5d748c1ecbaf4e8444a2d09eac8da60bfa54271c
Alex Walters [Thu, 12 Aug 2021 13:12:55 +0000 (14:12 +0100)]
Correct Vulkan multiview 'tesellation' test names
Tests are renamed from 'tesellation' to 'tessellation' but are otherwise
unchanged.
Affects:
dEQP-VK.multiview*tessellation*
Components: Vulkan
Change-Id: I1686bb6fb8a0e85e201853602f840e03e847169d
Juan A. Suarez Romero [Wed, 18 Aug 2021 11:01:15 +0000 (13:01 +0200)]
Do not overflow when copy data
As `vertexDataSize` is aligned with `nonCoherentAtomSize`, it could be
bigger than the actual size of m_data.
This is actually causing a heap-buffer overflow when executing in our
Rpi4 Vulkan driver.
Affected tests:
dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.basic_type.flat
Components: Vulkan
VK-GL-CTS issue: 3062
Change-Id: I6b1f449e9f0a42740adb051ed037ff911dac763a
Mike Byrne [Mon, 9 Aug 2021 11:40:07 +0000 (12:40 +0100)]
Fix protected memory ssbo pipeline barrier use
Incorrect stage flags are passed to vkCmdPipelineBarrier in the copy
buffer operation in the dEQP-VK.protected_memory.ssbo.ssbo_read.*
These tests were introduced in origin/vulkan-cts-1.1.0
Components: Vulkan
Affects:
dEQP-VK.protected_memory.ssbo.*
VK-GL-CTS Issue: 3041
Change-Id: Iccdb96fee30e32bf26dec1e26d65ea8d5600c384
Connor Abbott [Fri, 13 Aug 2021 15:37:54 +0000 (17:37 +0200)]
Don't alias image views in separate_channels subpass dependency tests
This is not allowed by the Vulkan spec:
> Multiple attachments that alias the same memory must not be used in a
> single subpass.
Instead we should have the input attachment and color attachment point
to the same attachment, which is allowed.
Components: Vulkan
Affects:
dEQP-VK.renderpass.suballocation.subpass_dependencies.separate_channels.*
dEQP-VK.renderpass2.suballocation.subpass_dependencies.separate_channels.*
VK-GL-CTS Issue: 3052
Change-Id: Iddb1111be5147f9816104fa879e023a9a3445555
Neslisah Torosdagli [Thu, 29 Jul 2021 16:20:51 +0000 (12:20 -0400)]
Issue in serial storage address computation
When serial storage and src/dst buildTypes are different, serial storage address computation is not correct. In the beginning of the test case, serial storage buildType is either set to host or device according to test case being run (cpu-built or gpu-built).
In the 2nd phase of this test case (deserialize all from the previous step to a new top-level AS) VkCopyMemoryToAccelerationStructureInfoKHR is filled with srcAddress according to testCase buildType, and dst acceleration structure is device.
In this stage, if testCase builtType is device, the serialStorage address computation is correct. However, if testCase buildType is host then the issue arises. The address is computed according to host, although device address is needed.
That is, for serial storage address computation: buildType of the acceleration structure (src or dst) should be used rather than serial storage buildType which is initially set according to test case being run.
Affects:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.header_bottom_address.*
Components: Vulkan
VK-GL-CTS issue: 3028
Change-Id: If8c0387862ce6f1db00fc61016dd0e602ff72ba8
Antto Mäkinen [Wed, 12 May 2021 07:47:10 +0000 (10:47 +0300)]
Add coverage for sampling a cubemap that has been rendered to
This test checks that a cubemap will be sampled correctly if its
contents have been modified by a draw call.
VK-GL-CTS issue: 2506
New Tests:
dEQP-VK.image.sample_cubemap.write_face_0
Components: Vulkan
Change-Id: I1ee62842d6c952b5628822fe49ee6a91c26ead04