Alexander Galazin [Tue, 7 Aug 2018 08:57:19 +0000 (10:57 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I3ebd996d37e078d937fe79ccc93718b51672e1c4
Simen Kaspersen [Wed, 1 Aug 2018 11:12:14 +0000 (13:12 +0200)]
Remove unconditional depth_clamping for 1.1.1
Changed depthClampEnable from VK_TRUE to VK_FALSE where it is not needed.
Depth clamp specific tests in builtin_var.fragdepth set as not supported for incompatible systems.
NB: Carries the same changes as 1.1.0 patch for depth_clamping, along with changes that are specific for 1.1.1.
Affects:
dEQP-VK.device_group.*
dEQP-VK.api.object_management.*.graphics_pipeline
dEQP-VK.binding_model.shader_access.*
dEQP-VK.glsl.builtin_var.fragdepth.*
dEQP-VK.synchronization.smoke.*
dEQP-VK.renderpass.*
dEQP-VK.spirv_assembly.*
dEQP-VK.api.smoke.unused_resolve_attachment
dEQP-VK.wsi.android.incremental_present.*
dEQP-VK.memory.pipeline_barrier.*
Components: Vulkan
VK-GL-CTS issue: 1286
Change-Id: I0e322c65561c25339fe56e3122401d92df7623a6
Simen Kaspersen [Mon, 30 Jul 2018 14:36:31 +0000 (16:36 +0200)]
Remove unconditional depth_clamping for 1.1.0
Changed depthClampEnable from VK_TRUE to VK_FALSE where it is not needed.
Depth clamp specific tests in builtin_var.fragdepth set as not supported for incompatible systems.
Affects:
dEQP-VK.device_group.*
dEQP-VK.api.object_management.*.graphics_pipeline
dEQP-VK.binding_model.shader_access.*
dEQP-VK.glsl.builtin_var.fragdepth.*
dEQP-VK.synchronization.smoke.*
dEQP-VK.renderpass.*
dEQP-VK.spirv_assembly.*
dEQP-VK.api.smoke.unused_resolve_attachment
dEQP-VK.wsi.android.incremental_present.*
dEQP-VK.memory.pipeline_barrier.*
Components: Vulkan
VK-GL-CTS issue: 1286
Change-Id: Ia869da75a74800543afb4f8fddd8bf5e8f7f4a7f
Alexander Galazin [Thu, 2 Aug 2018 08:27:48 +0000 (10:27 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I2b3ff32206b0408c16dd93bc643bdc9bf928dcda
Alexander Galazin [Thu, 2 Aug 2018 08:27:46 +0000 (10:27 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I178311e0fa4f5276ab325b65460074f60e42c222
Chris Forbes [Thu, 2 Aug 2018 00:16:17 +0000 (17:16 -0700)]
Fix build when SPIRV-Tools is not present
This function does not require SPIRV-Tools, and is still used when it
is not present.
Components: Framework
VK-GL-CTS: 1293
Change-Id: I9ce49db2e6e55e8d379c713c9fe39d15fb7ecbd6
Alexander Galazin [Tue, 3 Oct 2017 19:29:50 +0000 (21:29 +0200)]
Invalidate memory in draw tests
The test group writes to non-coherent device memory with device,
but fails to call the required invalidate on the region before
reading mapped memory with host.
Components: Vulkan
VK-GL-CTS issue: 529
Affects: dEQP-VK.draw.*
Change-Id: Icf4aa6ea80c8c046e41b37402457b7f094d7ae50
(cherry picked from commit
1ce6e233a6245a1cf81a2a4e88b87c5d381a119a)
Alexander Galazin [Fri, 20 Jul 2018 09:12:17 +0000 (11:12 +0200)]
Request queue with sparse support only when needed
Commit
a598fe87 added tests for sparse D/S/DS images and
at the same time turned many texture tests into NotSupported
on implementations what do not support sparse.
Components: Vulkan
Affects:
dEQP-VK.texture.compressed.*
dEQP-VK.glsl.texture_functions.texture.sparse*shadow*
dEQP-VK.glsl.texture_gather.*depth32f*sparse*
dEQP-VK.texture.shadow.*sparse*
VK-GL-CTS issue: 1277
Change-Id: I83392d4f1060efbe0b1eebb0dfa8c8d5306113db
Liam Middlebrook [Mon, 9 Jul 2018 19:27:02 +0000 (12:27 -0700)]
Don't fail DisplayPlaneProperties2 with no display
Instead, we should mark this test as not supported. The Vulkan spec
states that:
Devices must support at least one plane on each display
If there are no displays connected, the driver is allowed to return 0
planes.
VK-GL-CTS issue: 1271
Components: Vulkan
Change-Id: I097224fbdf3e25c921ac9b96d16954caab1bb895
Affects: dEQP-VK.wsi.display.get_display_plane_properties2
Arkadiusz Sarwa [Wed, 11 Jul 2018 14:47:23 +0000 (16:47 +0200)]
Fix 8bit uniform buffers arrays strides
Affects:
dEQP-VK.spirv_assembly.instruction.*.8bit_storage.*
Components: Vulkan
VK-GL-CTS issue: 1269
Change-Id: I3f761efbe6a7e5edc66bc6846eaf90ac4453bd78
Alexander Galazin [Fri, 13 Jul 2018 14:54:12 +0000 (16:54 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I92ddc3da6a7d67e926eb54beeaf1c190fcf7e87a
Sai Kiran Korwar [Tue, 3 Jul 2018 08:58:52 +0000 (14:28 +0530)]
Fix memory allocation tests
Use deviceMemoryAllocationGranularity to determine if some number
of allocations of a particular size will succeed.
This is useful on when platform specific alignment restrictions are
present.
Components: Vulkan
Affects: dEQP-VK.memory.allocation.basic.size_*
VK-GL-CTS issue: 1259
Change-Id: Iac4f2e7842a826bebf7c641fad1950f6c3d48946
Chris Forbes [Mon, 11 Jun 2018 22:50:16 +0000 (15:50 -0700)]
Allow two images worth of alignment slop in protected heap
We previously backed off by one image worth, but it's not enough in some
cases.
Components: Vulkan
VK-GL-CTS: 1262
Bug: b/
109757443
Test: dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create#min_image_count
Change-Id: I01b3a72986e9f35b4ec15a146e4dc576758c02ce
(cherry picked from Android commit
0fd6d1afa4d00ffd3da1d2d1898f32d4e879209d)
Stephen Gallimore [Thu, 5 Jul 2018 13:40:13 +0000 (14:40 +0100)]
Protected memory image access tests not flushing staging buffer
Affected tests:
dEQP-VK.protected_memory.image.access.*
Components: Vulkan
VK-GL-CTS issue: 1264
Change-Id: I30a6e3b0118b6874b9bfdf625aadec9c0fe54710
Alexander Galazin [Sun, 8 Jul 2018 16:11:11 +0000 (18:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Ifcbe9328d752355465f6ea56961e2b16205e6e12
Alexander Galazin [Sun, 8 Jul 2018 16:11:07 +0000 (18:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: Ie88a7283bd969891282983a549c6d18901a9ee7b
Marcin Rogucki [Wed, 25 Oct 2017 11:33:44 +0000 (13:33 +0200)]
gl_PrimitiveIDIn tests have sketchy loop bounds.
Components: Vulkan
VK-GL-CTS issue: 778
Updates:
dEQP-VK.geometry.basic.primitive_id_in
dEQP-VK.geometry.basic.primitive_id_in_restarted
Change-Id: Icd2be56814de18067ce058a5f2a1da80338f80d6
(cherry picked from commit
52b7de31e0bccf62ca28d820f4dc2d0d52793aa8)
Jarred Davies [Thu, 5 Apr 2018 09:51:23 +0000 (10:51 +0100)]
Drop linear filter requirement from YCbCr tests
Remove requirement for YCbCr base formats to support
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT from
format_properties tests.
The standard does not require support for this feature
from any YCbCr format.
Affects:
dEQP-VK.api.info.format_properties.g8_b8_r8_3plane_420_unorm
dEQP-VK.api.info.format_properties.g8_b8r8_2plane_420_unorm
Components: Vulkan
VK-GL-CTS issue: 1090
Change-Id: I6fa1c6c7a7f9768c2001972ae1f04173310aa652
(cherry picked from commit
eab78dce0d08f4ec22cece6be8003f554ede5882)
Alexander Galazin [Fri, 6 Jul 2018 20:13:57 +0000 (22:13 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I02b6ca03cf03b1280440b8bcc497afc98f85037f
Alexander Galazin [Fri, 6 Jul 2018 20:06:52 +0000 (22:06 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I141a0abc53983443da9a5bb7c905538f1ddb4f22
Alexander Galazin [Fri, 6 Jul 2018 10:24:12 +0000 (12:24 +0200)]
Merge vk-gl-cts/github-vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I29544b2f3f6b7bee65ac6ac1339eb52176efe5a5
Alexander Galazin [Fri, 6 Jul 2018 10:21:32 +0000 (12:21 +0200)]
Fix build error introduced by the previous commit
Components: Vulkan
Alexander Galazin [Wed, 4 Jul 2018 07:17:56 +0000 (09:17 +0200)]
Update SPIR-V tools and headers
Components: Framework
Change-Id: I6ed52b681738664ee471d78e59fc843c0b41319a
Chris Forbes [Fri, 2 Mar 2018 21:22:20 +0000 (13:22 -0800)]
Compile shaders for 1.0-compatible tests as SPIRV 1.0, not max supported
Components: Vulkan
VK-GL-CTS: 1232
Change-Id: I5a440f97f79be0e6d37d89018ae8b611e9d4e7c1
Maciej Jesionowski [Fri, 29 Jun 2018 09:52:54 +0000 (11:52 +0200)]
Check required peer memory features in sparse resources device group tests
This is a minimal fix to these cases to not use the memory in unsupported way.
The tests will return NotSupported if the required features are missing.
Affects:
dEQP-VK.sparse_resources.*device_group*
VK-GL-CTS issue: 1252
Components: Vulkan
Change-Id: Ia55509eef39c30e2283ba41d87ce55294edf6a17
Alexander Galazin [Mon, 25 Jun 2018 10:23:23 +0000 (12:23 +0200)]
Update SPIR-V tools/headers
Components: Framework
Change-Id: I3b67da0c17de5e637d44f0061b12b6024c940988
Arkadiusz Sarwa [Mon, 25 Jun 2018 07:52:17 +0000 (09:52 +0200)]
Fix: add extensions checking
Affects:
dEQP-VK.spirv_assembly.instruction.compute.*
Components: Vulkan
VK-GL-CTS issue: 1235
Change-Id: I816d832f4834fe61570f49648a9f92ebaca31a94
Arkadiusz Sarwa [Fri, 22 Jun 2018 10:40:40 +0000 (12:40 +0200)]
Fix: add extensions checking
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.*
Components: Vulkan
VK-GL-CTS issue: 1235
Change-Id: Ic312f6571534dfbb7117ca9f49b7c9067cfc04d6
Alexander Galazin [Fri, 22 Jun 2018 04:44:13 +0000 (00:44 -0400)]
Revert "Require geometry shader in multisample resolve"
This reverts commit
961ab17a006bccfa3b57ec34c8b88587482b78d3.
Change-Id: I3c7ae4d2b770b310ab264d270507a43beb2b30c1
Marcin Kańtoch [Thu, 7 Jun 2018 13:42:25 +0000 (15:42 +0200)]
Allowed device extensions list is missing entry
VK_KHR_create_renderpass2 is missing from the list of allowed
extensions in dEQP-VK.api.info.device.extensions test.
This causes the test to fail if the extension is exposed
in the driver.
Affects:
dEQP-VK.api.info.device.extensions
Components: Vulkan
VK-GL-CTS issue: 1208
Change-Id: I7024db0f775487b5601b5e8c82a807c58d070883
(cherry picked from commit
62deeb1fc1bcda275ff652c6466f9570a2fad75d)
Arkadiusz Sarwa [Mon, 22 Jan 2018 09:10:52 +0000 (10:10 +0100)]
Add tests for the VK_KHR_8bit_storage extension
Affect tests:
dEQP-VK.api.info.get_physical_device_properties2.features
Add tests:
dEQP-VK.spirv_assembly.instruction.compute.8bit_storage.*
dEQP-VK.spirv_assembly.instruction.graphics.8bit_storage.*
Components: Vulkan
VK-GL-CTS issue: 791
Change-Id: Ib29c03bf2cf59f70ad652f09bfa45260fef10e4f
(cherry picked from commit
dc7e8a60d7f241e64fcfde9648ba841f0db5ed79)
Boris Zanin [Fri, 18 May 2018 14:35:59 +0000 (16:35 +0200)]
Require geometry shader in multisample resolve
Updates tests:
* dEQP-VK.renderpass.suballocation.multisample_resolve.layers_3.*
* dEQP-VK.renderpass.suballocation.multisample_resolve.layers_6.*
* dEQP-VK.renderpass2.suballocation.multisample_resolve.layers_3.*
* dEQP-VK.renderpass2.suballocation.multisample_resolve.layers_6.*
Affects tests:
* dEQP-VK.renderpass.suballocation.multisample_resolve.*
Framework's Context class extended with function
* requireDeviceCoreFeature
Components: Vulkan, Framework
VK-GL-CTS issue: 1173
Change-Id: I8f4c8e85bf9ca97fa0a4024e132225714e281088
(cherry picked from commit
2584db9e45f73ade28f7b18614b32ac2ebef2d3a)
Boris Zanin [Tue, 20 Mar 2018 14:54:56 +0000 (15:54 +0100)]
Tests for VK_KHR_create_renderpass2: multiview
Add tests:
* dEQP-VK.multiview.renderpass2.*
Affects tests:
* dEQP-VK.multiview.*
Components: Vulkan
VK-GL-CTS issue: 1011
Change-Id: I6cd54231dae7ff30249ffb2f6f0799b1359f7790
Boris Zanin [Wed, 7 Mar 2018 10:37:46 +0000 (11:37 +0100)]
Tests for VK_KHR_create_renderpass2
Add tests:
* dEQP-VK.renderpass2.*
Affects tests:
* dEQP-VK.renderpass.*
Framework's Context class extended with functions
* requireDeviceExtension
* requireInstanceExtension
Components: Vulkan, Framework
VK-GL-CTS issue: 1011
Change-Id: I721563467dcd329f60da1b41e635feec228f5df2
Alexander Galazin [Thu, 21 Jun 2018 08:00:05 +0000 (10:00 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Iea6c9a56605b4c4407513face9be7fd4f61d3c83
Alexander Galazin [Fri, 15 Jun 2018 13:03:53 +0000 (15:03 +0200)]
Merge pull request #99 from AIOOB/patch-1
Require extension for the deviceFeatures2 test
Chris Forbes [Tue, 12 Jun 2018 18:03:59 +0000 (11:03 -0700)]
Fix protected memory buffer tests to do proper operation
Update and copy variants of these tests were doing the FILL operation
instead.
Change-Id: Iede9e71f50c1d2d5699b35ad9b86fc6237714977
Components: Vulkan
Affects: dEQP-VK.protected_memory.buffer.*
VK-GL-CTS: 1215
(cherry picked from commit
39fbe90f21cb24b46e1bbc2d49e75604453977c0)
Stephen Gallimore [Tue, 12 Jun 2018 14:35:46 +0000 (15:35 +0100)]
Memory binding tests not invaidating host memory before results check.
Affected tests:
dEQP-VK.memory.binding.*.buffer_*
Components: Vulkan
VK-GL-CTS issue: 1214
Change-Id: Ib347401ee818a42487df001f3ba76247b157321c
Prantit Lokre [Thu, 17 May 2018 18:41:16 +0000 (11:41 -0700)]
Fixes ycbcr copy tests to ignore padding
Copies are not expected to preserve the bits
in the padding for formats like R10X6.
Vulkan issue: 1122
Components: Vulkan
Affects:
dEQP-VK.ycbcr.copy.*
Change-Id: If617a32fbd4c690a0ef48e6831405fc674732865
Chris Forbes [Wed, 30 May 2018 16:26:57 +0000 (09:26 -0700)]
Don't rely on unspecified argument evaluation order in atomic swap tests
Bug: b/
78779994
Test: dEQP-VK.protected_memory.ssbo.ssbo_atomic.fragment.compswap.random.*
VK-GL-CTS: 1198
Components: Vulkan
Change-Id: Ifba8940745c28a32ca631beb374394a5e3fe508b
(cherry picked from Android commit
51e0000bcde19cee3c0e4686c0a3caec121b3c42)
Chris Forbes [Tue, 29 May 2018 19:26:19 +0000 (12:26 -0700)]
Request required 16bit storage features in UConvert/SConvert tests
These tests require specific features within the 16bit storage extension
Change-Id: I573b8ca69209ec36b3c249f5b9a638d4e7743209
Components: Vulkan
Bug: b/
78779994
VK-GL-CTS: 1195
Affects: dEQP-VK.spirv_assembly.instruction.compute.*
(cherry picked from Android commit
20426c97899d621fba9bcbae9374ec5439beedd6)
Dae Kim [Wed, 30 May 2018 12:55:30 +0000 (13:55 +0100)]
Added PointSize in shader used for drawing points
A SPIR-V assembly shader with undefined PointSize was being used with
point list topology.
Affects:
dEQP-VK.subgroups.*
Components: Vulkan
VK-GL-CTS issue: 1197
Change-Id: I2d38d367d413e205e00b32cdd96b8ca3ecf6eda4
Alexander Galazin [Mon, 28 May 2018 08:15:07 +0000 (10:15 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: If0ab08c681fd90e94d179ded910a531dcc518861
Slawomir Cygan [Wed, 18 Apr 2018 13:56:37 +0000 (15:56 +0200)]
Fix VkPipelineLayout use after free
The test destroys pipeline layout, used to create the graphics pipeline,
before the command buffer using this pipeline is recorded.
This is invalid according to spec:
"A VkPipelineLayout object must not be destroyed while any
command buffer that uses it is in the recording state."
Components: Vulkan
VK-GL-CTS Issue: 1134
Affects:
dEQP-VK.draw.differing_interpolation.*
Change-Id: I2dd692cfb69afaf0b9d6e8d8a29b86b945b7eaba
Joan Bonet Orantos [Tue, 22 May 2018 08:09:05 +0000 (10:09 +0200)]
Fix dependencies in vulkan pipeline test
The srcStageMask field in the subpass dependency was not strict
enough. This can cause that the incoming subpasses, that try to copy
samples from this subpass, may try to read content that may not be
written yet.
Affects:
dEQP-VK.pipeline.multisample.min_sample_shading.min_*
Components: Vulkan
VK-GL-CTS issue: 1185
Change-Id: Ide5e3d2a709e8fe26d23ada1d20bf2eb27beffd8
Alexander Galazin [Fri, 18 May 2018 13:01:32 +0000 (15:01 +0200)]
Whitelist VK_KHR_get_display_properties2
Components: Vulkan
Affects: dEQP-VK.api.info.device.extensions
Change-Id: Ic064e283e164cad2c9785ffe6253a2c192419668
Alexander Galazin [Fri, 18 May 2018 11:12:32 +0000 (13:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I4b35a41d666a707410f88f222c93b661f7d983a1
Jesse Hall [Wed, 16 May 2018 23:56:54 +0000 (16:56 -0700)]
Limit protected swapchain images based on memory
A surface's maxImageCount isn't based on the swapchain image extents
or format, so it's valid for swapchain creation to fail for
out-of-memory reasons even when the image count is within the
supported range.
This is particularly problematic for protected swapchains, since many
implementations have a limit on the total amount of protected memory
that can be allocated which is much smaller than total device memory.
This change estimates how much memory is used by protected swapchain
images, compares that to the size of heaps that support protected
memory types, and doesn't try to create swapchains that would have
more images than would fit within that size.
Components: Vulkan
VK-GL-CTS Issue: 1167
Affects:
dEQP-VK.protected_memory.interaction.wsi.*.swapchain.create.min_image_count
Change-Id: I6cc3bd25f7f22de8424f9e3375ade35fac26a884
Piers Daniell [Fri, 4 May 2018 22:53:25 +0000 (16:53 -0600)]
Don't use invalid sType as canary value for arrays
Using an invalid sType in an array is a violation of Vulkan
valid usage and will fail the test if validation layers
are enabled.
This CL also ensures the property structs passed into the
get functions have their sType initialized correctly.
Affects: dEQP-VK.wsi.display.*
Components: Vulkan
VK-GL-CTS issue: 1155
Change-Id: I4b9b00248265b2e3c7d0b2b652e98d2f0f5a0902
Graeme Leese [Thu, 26 Apr 2018 14:06:12 +0000 (15:06 +0100)]
Clear image layer 0 in memory commitment test
Components: Vulkan
Affected: dEQP-VK.api.get_memory_commitment.memory_commitment
VK-GL-CTS issue: 1151
Change-Id: I95676f18f91470248ac19270778b897626a31f2c
Ostrowski, Igor [Fri, 9 Feb 2018 10:56:15 +0000 (11:56 +0100)]
Add tests for VK_KHR_draw_indirect_count
This change add new tests for VK_KHR_draw_indirect_count
extension.
New Tests:
dEQP-VK.draw.indirect_draw.*.indirect_draw_count.*
dEQP-VK.draw.indirect_draw.*.indirect_draw_first_instance.*
dEQP-VK.draw.indirect_draw.*.indirect_draw_count_first_instance.*
dEQP-VK.draw.indirect_draw.*.indirect_draw_count_instanced.*
Affected tests:
dEQP-VK.api.info.device.extensions
Components: Vulkan, Framework
VK-GL-CTS issue: 1004
Change-Id: I3d53806eb1a45293a77b940d9c2fa540a6d83d50
(cherry picked from commit
7b47cd53c6656b866e7c3a3c0a590da85f3b2de1)
Tony Zlatinski [Thu, 3 May 2018 18:35:51 +0000 (13:35 -0500)]
Vulkan: Fix WIN32 NativeHandle importMemory leaks
importMemory(), incorrectly calls handle.disown()
that discards the reference that the handle originally
added via its copy constructor to the underlying memory
handle.
Affects:
dEQP-VK.api.external.memory.opaque_win32
Components: Vulkan
VK-GL-CTS issue: 1139
Change-Id: Idb5111b7efc2dfbf7d693d79b7ab57814329f33e
Alexander Galazin [Fri, 11 May 2018 14:45:49 +0000 (16:45 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I8ddf54dafd3de02f14526e98aa135176a6d3f3a3
Alexander Galazin [Fri, 11 May 2018 13:28:20 +0000 (15:28 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I06a95f88214707d9108a46f7374a5e8e0f9bdb59
Liam Middlebrook [Thu, 26 Apr 2018 21:43:25 +0000 (14:43 -0700)]
Do not fail plane tests when there is no display
Instead, we should mark these tests as not supported. The Vulkan spec
states that:
Devices must support at least one plane on each display
If there are no displays connected, the driver is allowed to return 0
planes.
VK-GL-CTS issue: 1138
Change-Id: Ie7ddc35f4f11fbfa54f8c31cc3864f52adb1bb7f
Affects: dEQP-VK.wsi.display.get_display_plane_capabilities
Affects: dEQP-VK.wsi.display.create_display_plane_surface
Damien Leone [Mon, 30 Oct 2017 23:15:25 +0000 (16:15 -0700)]
Do not fail display tests when there is no display
Instead, we should mark these tests as not supported. It is valid per the
Vulkan spec to have the extension report 0 displays connected.
Affects: dEQP-VK.wsi.display.*
Component: Vulkan
VK-GL-CTS issue: 1105
Change-Id: Iaae928a862dcc3827094d898a5455ecfe3920936
Slawomir Cygan [Tue, 24 Apr 2018 15:50:19 +0000 (17:50 +0200)]
Do not test CLEAR loadOp with read-only depth stencil image layouts
It is invalid to use implicit clears with depth stencil images, which first
render pass usage is in read only depth/stencil image layout
Spec:
"
For any member of pAttachments with a loadOp equal to VK_ATTACHMENT_LOAD_OP_CLEAR,
the first use of that attachment must not specify a layout equal to
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL.
For any member of pAttachments with a stencilLoadOp equal to VK_ATTACHMENT_LOAD_OP_CLEAR,
the first use of that attachment must not specify a layout equal to
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL."
Component: Vulkan
Affects:
dEQP-VK.renderpass.suballocation.formats.d*.clear.*_read_only
VK-GL-CTS Issue: 1144
Change-Id: Iad78473fe4bdf87dac5aff5bcc1c2b888e790cb8
Alexander Galazin [Tue, 24 Apr 2018 13:58:31 +0000 (15:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I64646658117df9f4dd0260d0e0065e3f093b93d8
Jarred Davies [Thu, 12 Apr 2018 12:57:14 +0000 (13:57 +0100)]
Remove 4K min size from dedicated image tests
The tests dEQP-VK.memory.mapping.dedicated_alloc.image.*
all create an image with a minimum size of 4Kx4K, so the
tests in this subgroup test the exact same image size
regardless of what size the test itself is supposed to be
testing.
This change removes the 4Kx4K minimum to enable
the test to actually test multiple sizes of images.
Affect:
dEQP-VK.memory.mapping.dedicated_alloc.image.*
Components: Vulkan
VK-GL-CTS issue: 1118
Change-Id: I2ba9fa671f20eeb9bfa8b14972c903ac20875425
Panagiotis Apostolou [Mon, 26 Mar 2018 11:21:26 +0000 (13:21 +0200)]
Missing pipeline barriers from fragment variants of dEQP-VK.subgroups.*
This commit adds a missing image pipeline barrier in the fragment variant
of the subgroups test group. After the end of the renderpass and before the
vkCmdCopyImageToBuffer, a pipeline barrier is required to delay the copy
command so that all the writes to the color attachment are complete.
Tests affected:
dEQP-VK.subgroups.*
Components: Vulkan
VK-GL-CTS issue: 1135
Change-Id: I82a5179f97cf4435f96dd378f123f37bc26bd082
Alexander Galazin [Sun, 22 Apr 2018 20:39:05 +0000 (22:39 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I7a172b0447b8e67d7384dada152f7eb489d03f79
AIOOB [Fri, 20 Apr 2018 00:16:03 +0000 (01:16 +0100)]
Require extension for the deviceFeatures2 test
Chris Forbes [Thu, 12 Apr 2018 15:54:00 +0000 (08:54 -0700)]
Request GPDP2 extension if required in shared presentable image tests
Change-Id: Ifa4b19c6046d4f0b95a5fc65443bcd1df051b6a5
Components: Vulkan
Affects: dEQP-VK.wsi.*.shared_presentable_image.*
VK-GL-CTS: 1078
Alexander Galazin [Thu, 5 Apr 2018 19:21:04 +0000 (21:21 +0200)]
Update Vulkan Readme
Update Vulkan Readme to reflect the current CTS version
Components: Vulkan
Change-Id: I1e69df3934e2d35a072823e7bf9e5d2d03b011fe
Damien Leone [Mon, 30 Oct 2017 23:15:25 +0000 (16:15 -0700)]
Do not fail display tests when there is no display
Instead, we should mark these tests as not supported. It is valid per the
Vulkan spec to have the extension report 0 displays connected.
Affects: dEQP-VK.wsi.display.*
Component: Vulkan
VK-GL-CTS issue: 1105
Change-Id: Idfe09ec588be7b4c6c782e306e7bf1506d78808f
Jarred Davies [Thu, 5 Apr 2018 09:51:23 +0000 (10:51 +0100)]
Drop linear filter requirement from YCbCr tests
Remove requirement for YCbCr base formats to support
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT from
format_properties tests.
The standard does not require support for this feature
from any YCbCr format.
Affects:
dEQP-VK.api.info.format_properties.g8_b8_r8_3plane_420_unorm
dEQP-VK.api.info.format_properties.g8_b8r8_2plane_420_unorm
Components: Vulkan
VK-GL-CTS issue: 1090
Change-Id: I6fa1c6c7a7f9768c2001972ae1f04173310aa652
Alexander Galazin [Thu, 5 Apr 2018 07:58:39 +0000 (09:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Idaa7c167a7485b1cc290dab87fab146e922887e9
Peter Quayle [Wed, 28 Mar 2018 17:18:28 +0000 (18:18 +0100)]
Fix improper use of vkCmdWaitEvents
dEQP-VK.synchronization.smoke.events was calling vkCmdWaitEvents inside
a render-pass, which is not allowed if the event is later triggerd using
vkSetEvent. Additionally, the test was only waiting 1ns to determine if
a queue had made forward progress, which is too short to give the
implementation a chance to do any work.
Affects:
dEQP-VK.synchronization.smoke.events
Components: Vulkan
VK-GL-CTS issue: 1089
Change-Id: I6d9c9a635d82840f49fd3d9ed3736f91c4b6f88d
Tony Wasserka [Tue, 3 Apr 2018 14:40:21 +0000 (15:40 +0100)]
Consider rounding mode differences in mipmap tests
The tests already tolerate a threshold for rounding mode differences
for the result of a downscaling vkCmdBlitImage, however the accumulated
difference between Round-To-Nearest and Round-To-Zero may exceed the
current threshold. With this change, the expected result is generated
from the preceding device-rendered mipmap instead, so any legitimate
error will always be within the threshold now.
Affects:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*_linear
Components: Vulkan
VK-GL-CTS issue: 1106
Change-Id: I0999419320d1b2384f42fbc8eddda29e79147bd4
Alexander Galazin [Fri, 30 Mar 2018 16:38:40 +0000 (18:38 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I752717cf0180806e0745a0a7d055e3471a2b203b
Matthew Netsch [Tue, 27 Mar 2018 21:55:58 +0000 (14:55 -0700)]
Fixes cap check for 16bit storage stress test
Missing cap check for StorageUniformBufferBlock16
Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16_to_16.stress_test
Components: Vulkan
VK-GL-CTS issue: 1091
Change-Id: Ifaf31eab31ca2b8fe9cf23c94087cf25542bd8ed
Dae Kim [Tue, 27 Mar 2018 09:54:23 +0000 (10:54 +0100)]
Fixed rounding issue in spirv_assembly tests
The test assumes that the host system and the device use the same
rounding mode. When this is not the case, the derived rounding errors
make the test fail unexpectedly. By rounding the input values down we
avoid differences in the test output caused by the rounding modes in
use.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.loop_control.dependency_infinite
Components: Vulkan
VK-GL-CTS issue: 1097
Change-Id: I3678e38cbe5c6d57cecef91e7398df0d04763851
Piers Daniell [Thu, 15 Feb 2018 19:33:15 +0000 (12:33 -0700)]
Account for differences in nan with fp16 comparison
When comparing fp16 values it's not possible to use a bitwise
comparison because there can be many different bit patterns
representing nan values, and all nans are equal. This CL updates
the computeCheckBuffersFloats function which compares two
buffers of fp16 values to take into account different forms
of nan.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16_to_16.stress_test
Components: Vulkan
VK-GL-CTS issue: 1018
Change-Id: I77013b49ce070d9615b287eae24dd32731b314b1
(cherry picked from commit
92d5909ab99bc97dc2ae4dd67e1cfa592dafb246)
Alexander Galazin [Wed, 14 Mar 2018 08:46:16 +0000 (09:46 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Id0a9cedc7822a3b3206e162f217f790d087c3392
Caio Marcelo de Oliveira Filho [Mon, 12 Mar 2018 17:25:58 +0000 (10:25 -0700)]
Fetch new tags when fetching new Git sources
Change-Id: I1a906ebf2698eac33c3acbf1da74df9642b775a2
Component: Framework
(cherry picked from commit
204d597504c94fa52ed0f5a2c21895482236d5cc)
Alexander Galazin [Mon, 12 Mar 2018 09:58:09 +0000 (10:58 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I25a00d37394a47b90d7cdf0f51738e71f151f4f2
Alexander Galazin [Wed, 7 Mar 2018 15:45:21 +0000 (16:45 +0100)]
Update glslang, SPIR-V commits
Components: Framework
Affects: dEQP-VK.*
Change-Id: If5830108278597a28f8043dd947bed3c20c9688d
Alexander Galazin [Fri, 2 Mar 2018 13:15:50 +0000 (14:15 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Ibf8696558e773e47e04e0f14e7b0deb566eaa5ce
Alexander Galazin [Fri, 2 Mar 2018 11:17:24 +0000 (12:17 +0100)]
Add a note to the README
Explain that the verification scrpt will report a warning
for a correctly generated git-log
Components: Vulkan
Change-Id: Ie8e0ab090f50c776150f9a7f4ce7d69583186953
Alexander Galazin [Fri, 2 Mar 2018 10:47:38 +0000 (11:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Ia75241c78980e6bac6358ade016d4849090f8444
Marcin Rogucki [Thu, 18 Jan 2018 09:55:07 +0000 (10:55 +0100)]
Validation errors fix in copying 3d images
A minor chages to fix validation errors.
Two tests are not passing currently!
Affected tests:
dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.3d_images.*
Components: Vulkan
VK-GL-CTS issue: 208
Change-Id: Id3c5ec869d52db6b1229f45bbeacf24e35e75e48
(cherry picked from commit
c23ba94d7978ba84f9ffd2e75b6afbf8e3395633)
Arkadiusz Sarwa [Tue, 27 Feb 2018 11:38:31 +0000 (12:38 +0100)]
Fix: Memory alignment
Affects:
dEQP-VK.memory.mapping*
Components: Vulkan
VK-GL-CTS issue: 1039
Change-Id: Ia5093148fa145c9eecc03fe3b76102cdf77ad472
Panagiotis Apostolou [Thu, 22 Feb 2018 15:28:54 +0000 (16:28 +0100)]
Spec relaxation for protected YCbCr Implicit chroma reconstruction
Incorporates spec relaxation in the protected memory YCbCr tests which
describes that when doing implicit reconstruction with nearest chroma
filtering, an implementation may behave as if both xChromaOffset and
yChromaOffset were VK_CHROMA_LOCATION_MIDPOINT.
Tests affected:
dEQP-VK.protected_memory.interaction.ycbcr.*
Components: Vulkan
VK-GL-CTS issue: 1032
Change-Id: I25ef589ed05b1b167475eb5b6d782b261b1b3532
Slawomir Cygan [Wed, 28 Feb 2018 18:11:21 +0000 (19:11 +0100)]
Set usable instance version in external memory tests
These tests were using vkEnumerateInstanceVersion() to get
instance version. This failed, when Vulkan 1.1 Loader is used with
Vulkan 1.0 ICD: the function was returning version 1.1,
so test was not requesting any needed instance extensions, as these
were assumed to be already in core.
This is out of sync with dispatch code dispatching to
1.0 + KHR extension functions, when calling entrypoints like
vkGetPhysicalDeviceExternalBufferProperties(). As no KHR extensions
were requested during instance creation, the behavior is undefined.
The dispatch code is using context.getUsedApiVersion() utility
to guess Vulkan version, so same utility should be used for instance
creation, avoiding raw calls to vkEnumerateInstanceVersion().
Components: Vulkan
VK-GL-CTS Issue: 1047, 854
Affects:
dEQP-VK.api.external.memory.*
dEQP-VK.api.external.fence.*
dEQP-VK.api.external.semaphore.*
Change-Id: Iecf9bb086e04c6d88118fee9c4867ac5647d1ab7
Panagiotis Apostolou [Thu, 22 Feb 2018 15:04:24 +0000 (16:04 +0100)]
Remove vertex stage variants from dEQP-VK.protected_memory.interaction.ycbcr.*
"Except for framebuffer-space pipeline stages, compute shader stage, and
transfer stage, any read from or write to protected memory during protected
queue operations results in undefined behavior"
The existing dEQP-VK.protected_memory.interaction.ycbcr.* group include
tests that sample the protected texture from inside the vertex shader. This
commit removes these tests.
Tests affected:
dEQP-VK.protected_memory.interaction.ycbcr.*
Components: Vulkan
VK-GL-CTS issue: 1031
Change-Id: I459da0f3028e418c90285e55fb17ac1fda8d8467
Alexander Galazin [Thu, 1 Mar 2018 14:12:16 +0000 (15:12 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Id333c16da0ab9db53d16b15ca068c1232d093f58
Alexander Galazin [Thu, 1 Mar 2018 13:24:31 +0000 (14:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I8c2317b97955bbee922af624b91287071fbc7661
Dae Kim [Fri, 23 Feb 2018 08:39:12 +0000 (08:39 +0000)]
Added missing gl_PointSizes when drawing points
Some tests using point list primitive topology were not specifying point
sizes with the gl_PointSize built-in.
Affects:
dEQP-VK.subgroups.*
dEQP-VK.synchronization.*
Components: Vulkan
VK-GL-CTS issue: 1035
Change-Id: I8588e26ee47c58f6ec4e9ee5fdce70546ec28903
Slawomir Cygan [Thu, 22 Feb 2018 17:55:01 +0000 (18:55 +0100)]
Do not access temporary C++ object members by reference
Fix undefined C++ behavior (resulting in errors when doing runtime memory checks),
where a temporary object returned by getInputAspects() method is used by a reference
to a member after the temporary is destructed.
It seems getInputAspects should just return reference.
Affects: dEQP-VK.renderpass.*.input*
Component: Vulkan
VK-GL-CTS Issue: 1033
Change-Id: I71edabed71ea63f46cdbc45c966d57cd020565ab
Peter Quayle [Wed, 21 Feb 2018 15:34:55 +0000 (15:34 +0000)]
Ensure sync_fd tests use valid file descriptors
The external.*.sync_fd.* tests fail on some implementations
because vkGet*FdKHR may return -1 (meaning pre-signalled) instead
of a valid file descriptor.
Affects:
dEQP-VK.api.external.semaphore.sync_fd*
dEQP-VK.api.external.fence.sync_fd*
Components: Vulkan
VK-GL-CTS issue: 957
Change-Id: I91087db1595a19605956dad460caa344e850491e
Dae Kim [Tue, 20 Feb 2018 13:37:39 +0000 (13:37 +0000)]
Fix verification in robust buffer access tests
Some buffer accesses to addresses less than 16 bytes away from the out
of bounds address where not considered potentially out of bounds, even
when there were out of bounds accesses in the same SPIR-V block.
Affects:
dEQP-VK.robustness.buffer_access.*:
Components: Vulkan
VK-GL-CTS issue: 1025
Change-Id: Ibcb61fb84cecc360d753ba5d3acc1f9d48169651
Dae Kim [Thu, 22 Feb 2018 15:43:54 +0000 (15:43 +0000)]
Added missing gl_PointSizes when drawing points
Some tests using point list primitive topology were not specifying
point sizes with the gl_PointSize built-in.
Affects:
dEQP-VK.subgroups.*
dEQP-VK.synchronization.*
Components: Vulkan
VK-GL-CTS issue: 1035
Change-Id: I6f1690adef24ac76103bc22a86405ceec77865f4
Alexander Galazin [Thu, 22 Feb 2018 13:03:32 +0000 (14:03 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I8cb0743b2ee95da2aecc89a20310b735aeff36eb
Alexander Galazin [Thu, 22 Feb 2018 11:45:50 +0000 (12:45 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I115b3e16d7282ef5f9abeb5bd382f744d891b5e3
Tom Cooper [Mon, 12 Feb 2018 16:20:58 +0000 (16:20 +0000)]
Fix low memory in dedicated_alloc buffer tests
Observe platform memory limits to avoid low memory conditions.
Components: Vulkan
VK-GL-CTS issue: 1008
Affects: dEQP-VK.api.buffer.dedicated_alloc.create_buffer_*
Change-Id: Ib184b648126e8cb6e1acff533447a86be9a1a612
Alexander Galazin [Wed, 14 Feb 2018 09:17:22 +0000 (10:17 +0100)]
Update glslang/spir-v headers tags
Components: Framework
Affects: dEQP-VK.*
Change-Id: I1282fe5924abfb86fba7d32d3c67b94993a252fe
Juan A. Suarez Romero [Fri, 10 Nov 2017 11:20:36 +0000 (11:20 +0000)]
Do not use depthClampEnable unconditionally.
Depth clamping is not needed by these tests, so
do not rely on the optional feature when creating
the pipeline object.
Affects:
dEQP-VK.spirv_assembly.*
Components: Vulkan
VK-GL-CTS issue: 846
Change-Id: I248759e6ac209ccbd7661068c3ef5f1dfb8ca501
(cherry picked from commit
d33f62c935d51b4ecba0b6b97ea1baafe67ea3f4)
Lionel Landwerlin [Fri, 9 Feb 2018 15:20:25 +0000 (15:20 +0000)]
YCbCr: go through the correct location ranges when sampling
Affects: dEQP-VK.ycbcr.conversion.*
Components: Vulkan
VK-GL-CTS issue: 1005
Change-Id: Ifac1026e82e1bb48195fc7ab5429951a15324042
Slawomir Cygan [Fri, 19 Jan 2018 13:20:47 +0000 (14:20 +0100)]
dEQP-VK.renderpass.sparserendertarget: bind metadata
Memory was not bound to METADATA aspect, when COLOR aspect
mip tail size was 0. METADATA requirements are not related
to mip tails in other aspects - memory must be always and
unconditionally bound to METADATA.
Additionally, change VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT
condition to layerNdx == 0, as imageMipTailMemoryBinds vector
is now used both for metadata and other mip tails.
Affects: dEQP-VK.renderpass.sparserendertarget.*
Components: Vulkan
VK-GL-CTS issue: 958
Change-Id: I34661c82e0d9829448ac85546055c72151bfe85e
(cherry picked from commit
d04c2b650db561fb28f5888ae3de244fc70e6748)
Alexander Galazin [Mon, 5 Feb 2018 13:29:26 +0000 (14:29 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I477feb14b24a78b12cd6cf72adbdfa4d997dbaf9