Alexander Galazin [Sat, 26 Oct 2019 07:15:50 +0000 (09:15 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: Ic06c88a4f8c25b5664a1c1fb87df125694e5b11f
Alexander Galazin [Fri, 25 Oct 2019 16:08:28 +0000 (18:08 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I29e9c508144c70edd96aec27c6fde1e32f1c4149
Alexander Galazin [Fri, 25 Oct 2019 14:29:30 +0000 (16:29 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Id21fae15bb0fad00a22e2d5798f958e6640804e2
Alexander Galazin [Fri, 25 Oct 2019 11:58:22 +0000 (13:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I58c329c990cacdb992c4c9be0b95cb65aa469a80
Piotr Byszewski [Fri, 4 Oct 2019 12:17:42 +0000 (14:17 +0200)]
VkPhysicalDeviceVulkan1{1,2}Features in framework
Use VkPhysicalDeviceVulkan11Features and
VkPhysicalDeviceVulkan12Features in DefaultDevice chain.
This change also adds Context::isDeviceFunctionalitySupported and
Context::isInstanceFunctionalitySupported methods that checks if
extension are available and if proper feature bit are set (when
needed).
Components: Framework
VK-GL-CTS issue: 2005
Affects:
dEQP-VK.*
Change-Id: I81cf677fe46ae5bd870fde37253e97bdfcc4ae3a
Alexander Galazin [Thu, 24 Oct 2019 17:50:37 +0000 (19:50 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I32be1e098131623df73a3c70ed5fc7fac2f9e3a6
Arkadiusz Sarwa [Wed, 23 Oct 2019 15:15:12 +0000 (17:15 +0200)]
Fix incorrect assumption for pipeline cache hit
The test incorrectly assumes that adding a pipeline creation flag bit
VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT to only one pipeline
still should cause a cache hit. Fixed the problem by adding the
VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT flag bit to both pipelines.
Affects:
dEQP-VK.pipeline.creation_feedback.compute_tests.compute_stage
Components: Vulkan
VK-GL-CTS issue: 2068
Change-Id: Idb963219a4e894eee6a0bb3b1fc20797d5b0323e
Ricardo Garcia [Thu, 13 Jun 2019 09:43:52 +0000 (11:43 +0200)]
Enable validation layers for custom devices and instances
Honor the --deqp-validation=enable command line option in tests using
custom devices and instances.
Affected tests:
dEQP-VK.api.buffer.*
dEQP-VK.api.device_init.*
dEQP-VK.api.external.memory.*
dEQP-VK.api.info.*
dEQP-VK.api.object_management.*
dEQP-VK.api.version_check.*
dEQP-VK.compute.basic.*
dEQP-VK.compute.device_group.*
dEQP-VK.device_group.*
dEQP-VK.image.swapchain_mutable.*
dEQP-VK.memory.allocation.*
dEQP-VK.memory.device_group_allocation.*
dEQP-VK.multiview.*
dEQP-VK.pipeline.push_descriptor.*
dEQP-VK.protected_memory.*
dEQP-VK.robustness.*
dEQP-VK.sparse_resources.*
dEQP-VK.synchronization.basic.semaphore.*
dEQP-VK.synchronization.cross_instance.*
dEQP-VK.synchronization.internally_synchronized_objects.*
dEQP-VK.synchronization.op.multi_queue.*
dEQP-VK.synchronization.smoke.*
dEQP-VK.synchronization.win32_keyed_mutex.*
dEQP-VK.wsi.*
dEQP-VK.ycbcr.format.*
Components: Vulkan
VK-GL-CTS issue: 1831
Change-Id: I569f2362cfbc2446ba099d38da48d58be451ebeb
Alexander Galazin [Tue, 22 Oct 2019 17:00:27 +0000 (19:00 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I3cb15875a0283934251bddc35af68cab1c3394c5
Lionel Landwerlin [Wed, 16 Oct 2019 18:39:50 +0000 (21:39 +0300)]
Fix waitSemaphoreCount value in signal ordering tests
VK-GL-CTS Issue: 2059
Components: Vulkan
Affects: dEQP-VK.synchronization.signal_order.*timeline_semaphore.*
Change-Id: I25b86f1ae2b8e3650e061f9f2e345147c01419c6
Arkadiusz Sarwa [Thu, 17 Oct 2019 15:02:40 +0000 (17:02 +0200)]
Fix external memory import
Fix adds checking for flag
VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT
when external memory is being imported.
Affects:
dEQP-VK.synchronization.signal_order.*
Components: Vulkan
VK-GL-CTS issue: 2063
Change-Id: Iebc72ba0ed89ba3ca2b83a5b97d6b24ab7871edb
Matthew Netsch [Mon, 21 Oct 2019 15:58:29 +0000 (11:58 -0400)]
Fixes VS num instances assumption
Components: Vulkan
VK-GL-CTS Issue: 2022
Affects:
dEQP-VK.spirv_assembly.instruction.*
Change-Id: Ibb0a17d8843c03cd1cf15d2c5af1f547481e8452
Jeff Bolz [Fri, 18 Oct 2019 17:05:46 +0000 (12:05 -0500)]
Fix LAYOUT_UNDEFINED transitions in descriptor_indexing tests
Commit
7b7ba4e0 caused the UNDEFINED->COLOR layout transition to be applied four
times, corrupting 3/4 of the image. Change the tests to do the layout transition
once, right after the framebuffer is created.
VK-GL-CTS Issue: 2064
Components: Vulkan
Affects: dEQP-VK.descriptor_indexing.*
Change-Id: Ie599ba76ba75af6fee1f4163bd96ea2bd6e4c145
Natalia Sobkiewicz [Mon, 2 Sep 2019 08:33:55 +0000 (10:33 +0200)]
Add tests for counters with command buffer scope
Component: Vulkan
VK-GL-CTS Issue: 1972
Affects: dEQP-VK.query_pool.performance_query.*
Change-Id: Ibf14aaef5b76bf2b2f5dc1f78779eb577c126e23
Alexander Galazin [Thu, 17 Oct 2019 20:13:33 +0000 (22:13 +0200)]
Whitelist Vulkan CTS 1.2.0.1
Components: Vulkan
Change-Id: Ic95049203b246c17b535d86fcaad2ee431c6b751
Alexander Galazin [Thu, 17 Oct 2019 18:33:19 +0000 (20:33 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I5955793c43464b3046180ca90c1a64fa0e9379b3
Alexander Galazin [Thu, 17 Oct 2019 17:58:35 +0000 (19:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I2aa94658d6c8b6543fd9c4899f7da481ba1120a1
Alexander Galazin [Thu, 17 Oct 2019 15:46:59 +0000 (17:46 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I0954d6799d7b0e4a527cd0fbbdcf61237ca7e9a7
Alan Baker [Sun, 25 Aug 2019 17:57:24 +0000 (13:57 -0400)]
Remove float16 derivatives tests
SPIR-V restricts derivatives to 32-floating point scalars and vectors
only.
Component: Vulkan
VK-GL-CTS Issue: 1931
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_*.*
Change-Id: Icc5341e697b797045080cc55428dbc2c02d71def
(cherry picked from commit
436d6dd5e7a0c0811bf1b6059542d1cdbccb9566)
Alex Walters [Mon, 14 Oct 2019 16:32:12 +0000 (17:32 +0100)]
Make texture aniso basic self tests less sensitive
The tests cases first check with a fuzzy diff that the images are more
or less the same.
The second diff then checks with a standard image comparison + tolerance
that the images are not identical.
Some of IMG's implementations produce a closer image than the test is
currently expecting - we need to lower the tolerance from 0.05 to 0.02
in order for the diff algorithm to detect that the images are
different 'enough'.
Though there is no actual spec requirement, it is 'generally going to
be the case', for any implementation, that the images will have some
amount of difference. It is potentially useful to still have this test
inplace to check againsty aniso being accidently disabled in the tested
implementation, rather than remove it altogether.
Affects:
dEQP-VK.texture.filtering_anisotropy.basic.*
Components: Vulkan
VK-GL-CTS Issue: 2047
Change-Id: Ia9148e12172ac1c4757f5007e57b3a2b3a3434eb
Matthew Netsch [Fri, 4 Oct 2019 18:57:40 +0000 (14:57 -0400)]
Relaxes line rasterization tolerances
Components: Framework
VK-GL-CTS Issue: 2033
Affects:
dEQP-VK.rasterization.*
Change-Id: Ib41552b1bb6d9aa2b25d0cbc6f02d51ce997f4e3
Alexander Galazin [Thu, 17 Oct 2019 15:11:04 +0000 (11:11 -0400)]
Revert "Fixes VS num instances assumption"
This reverts commit
bac8df251bb6103d7844bfeacbb29bf14011b7cb.
Change-Id: I60aa83d860b0b11ec7fc58fb97806635a1eebdca
Piers Daniell [Fri, 6 Sep 2019 18:27:31 +0000 (12:27 -0600)]
Generate a non-zero exit code on test failure
If there are any failed tests, or the test run was not
compelte, the process will now generate EXIT_FAILURE (1)
instead of EXIT_SUCCESS (0).
Affects:
dEQP-VK.*
Components: Framework
VK-GL-CTS issue: 1982
Change-Id: I061d9a3b6703e1f23c48ce8a31e943744f915c92
(cherry picked from commit
cfa72a70ef8371eab29da003dbb4d932adba189a)
Alexander Galazin [Wed, 16 Oct 2019 13:01:00 +0000 (15:01 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I01ffb4e6195d7754314ec4a72be0c03f595b6e02
Alexander Galazin [Wed, 16 Oct 2019 11:44:00 +0000 (13:44 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Iea7706e036758d8a648ef7938b3d08e21321a087
Joerg Wagner [Wed, 9 Oct 2019 18:53:46 +0000 (20:53 +0200)]
Fix wrong wait stage mask
The wait stage mask wasn't accounting for the
stages the readers actually operate in, hence
being effectless.
Track the union of the reader's stage masks
and use that to block execution on the semaphore.
Affects:
dEQP-VK.synchronization.signal_order.*
Components: Vulkan
VK-GL-CTS issue: 2044
Change-Id: Ia4d5c7bcb9dd6eec25e7245dc41754acccd1b995
Panagiotis Apostolou [Thu, 10 Oct 2019 13:33:32 +0000 (15:33 +0200)]
Fix in shadercacheLoad
There is a slim chance that function shadercacheLoad() can pass a null
pointer into the std::string constructor, causing an exception. This can
happen in the case there is a mismatch between the calculated hash and
the one stored in the cache file.
This commit makes the code more robust, handling this case as a miss.
Components: Vulkan
VK-GL-CTS issue: 2052
Change-Id: I84a382dec51f487314304ec9057cefdff22920c3
Alexander Galazin [Tue, 15 Oct 2019 07:44:20 +0000 (09:44 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: Ic6e8b920be9a0ff25a8765b7c11d57248fb400a3
Alexander Galazin [Tue, 15 Oct 2019 07:13:20 +0000 (03:13 -0400)]
Merge "Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev" into vulkan-cts-next-dev
Pawel Ksiezopolski [Wed, 9 Oct 2019 08:53:05 +0000 (10:53 +0200)]
Relax deviceName and deviceInfo string comparison
Change deMemCmp() to strncmp() for two char arrays in
VkPhysicalDeviceVulkan12Properties struct, so that we don't
compare bytes after null termination character.
Affects:
dEQP-VK.api.info.vulkan1p2.properties
Components: Vulkan
VK-GL-CTS issue: 2040
Change-Id: I312575c5b29705c1cb2010f2a2d247055680bf97
Alexander Galazin [Fri, 11 Oct 2019 10:13:41 +0000 (12:13 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: Ie09cc3cac8462a7669c3fa0c25edb40d8e05d062
Alexander Galazin [Fri, 11 Oct 2019 09:52:19 +0000 (11:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Ibb2b736bbe1c62688044aa21dc75205f6fa32f1c
Alexander Galazin [Fri, 11 Oct 2019 09:50:16 +0000 (11:50 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I79fdf16146cf659aeae510fb6fb2ad72f641ba3e
Alexander Galazin [Fri, 11 Oct 2019 09:48:34 +0000 (11:48 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Ia0d88c0631e427241c7795931a834d9baf43e5a3
Graeme Leese [Mon, 7 Oct 2019 17:23:10 +0000 (18:23 +0100)]
RelaxedPrecision tests for image extend operands
Where the decoration makes sense (that is, for images with fewer than 16
bits per channel), add test that use the RelaxedPrecision decoration.
Components: Vulkan
VK-GL-CTS issue: 2038
New tests: dEQP-VK.image.extend_operands_spirv1p4.*_relaxed_*
Change-Id: I26e42a1d7bb807616ac50ce461dd37a55effd6f8
Graeme Leese [Mon, 7 Oct 2019 12:43:19 +0000 (13:43 +0100)]
Add tests for SignExtend with 'unsigned' types
SPIR-V wants to allow 'unsigned' as meaning 'unknown-signedness', in
which case a signed access will have an unsigned SampledType and the
SignExtend operand. Add tests for this combination.
Components: Vulkan
VK-GL-CTS issue: 2038
Affects: dEQP-VK.image.extend_operands_spirv1p4.*
Change-Id: Icd2ea0f41fcaab36d03ea3cff919449db3bd469a
Lionel Landwerlin [Fri, 27 Sep 2019 11:28:23 +0000 (14:28 +0300)]
Skip test with no display plane is available
Similarly to dEQP-VK.wsi.display.get_display_properties that skips
when no display available.
Components: Vulkan
Affects: dEQP-VK.wsi.display.get_display_plane_capabilities2
Change-Id: I46af976a9ba3e77e250504d0164dec6ac4cdd607
(cherry picked from commit
fd915c2d0ec7b544b670192447223061fe4b6cf3)
Piers Daniell [Thu, 5 Sep 2019 18:19:24 +0000 (12:19 -0600)]
Limit the apiVersion of the instance within the CTS framework
This CL allows older CTS tests to run on implementations that
support a newer instance version not supported by this version
of CTS.
The dEQP-VK.api.version_check.version test was modified to
fail if this version of CTS is run on an implementation
it does not support. This is to stop old CTS from passing
on newer implementations, where the newer CTS should have
been used.
Affects:
dEQP-VK.api.version_check.version
dEQP-VK.*
Components: Vulkan
VK-GL-CTS issue: 1979
Change-Id: I97cd17b0aae9b3cba7c2e000d21636ad37c1fd80
Alexander Galazin [Fri, 11 Oct 2019 08:45:43 +0000 (10:45 +0200)]
Fix SEMAPHORE_TYPE_TIMELINE enum
Components: Vulkan
Change-Id: Id4949383bed578436e321c621a8ff495157da895
Alexander Galazin [Fri, 11 Oct 2019 08:32:13 +0000 (10:32 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I6597defb9bda8c8e6393033bf444befd4b9301fb
John Corbally [Wed, 2 Oct 2019 16:31:55 +0000 (17:31 +0100)]
Fix relaxed precision and no perspective dEQP tests
In the RelaxedPrecision case, change epsilon to 2e-3 for a 16-bit float.
In the NoPerspective case, change epsilon to 3e-7 for a 32-bit float.
The epsilon is now relative to the correct value.
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.interface_blocks.*
Components: Vulkan
VK-GL-CTS issue: 1818
Change-Id: Id21382ce4b1cb58458ec3fb521630ab75e1910a3
Alexander Galazin [Thu, 10 Oct 2019 15:31:00 +0000 (17:31 +0200)]
Update glslang
Affects: dEQP-VK.binding_model.buffer_device_address.*
Components: Vulkan
VK-GL-CTS issue: 2046
Change-Id: I60e3579df3bb3f81732fec0c46803a97fc00953a
Peter Quayle [Wed, 9 Oct 2019 16:43:32 +0000 (17:43 +0100)]
Fixed flags used to select queue in dEQP-VK.synchronization.op.multi_queue
getDefaultQueue takes a VkQueueFlags argument and returns an appropriate VkQueue.
This function was being called with inappropriate arguments
causing the wrong queue to be returned. This could ultimately lead to work
being submitted to a queue which lacked support for it (e.g. graphics work
on a sparse queue).
Affects:
dEQP-VK.synchronization.op.multi_queue*
Components: Vulkan
VK-GL-CTS issue: 2043
Change-Id: I7887d1b4da8c916aed032433c6634c99b723f285
(cherry picked from commit
1bd32d3221dd65087de14ae061f798b78ac7ce0d)
Peter Quayle [Wed, 9 Oct 2019 16:43:32 +0000 (17:43 +0100)]
Fixed flags used to select queue in dEQP-VK.synchronization.op.multi_queue
getDefaultQueue takes a VkQueueFlags argument and returns an appropriate VkQueue.
This function was being called with inappropriate arguments
causing the wrong queue to be returned. This could ultimately lead to work
being submitted to a queue which lacked support for it (e.g. graphics work
on a sparse queue).
Affects:
dEQP-VK.synchronization.op.multi_queue*
Components: Vulkan
VK-GL-CTS issue: 2043
Change-Id: I7887d1b4da8c916aed032433c6634c99b723f285
Peter Quayle [Tue, 8 Oct 2019 16:35:04 +0000 (17:35 +0100)]
Fix semaphore creation in smoke tests
The test was calling createSemaphore instead of createSemaphoreType,
meaning that the semaphoreType value would incorrectly be interpreted
as a VkSemaphoreCreateFlags.
Additionally, the VkTimelineSemaphoreSubmitInfo struct was not being
added into the pNext chain of the submits. This probably went unnoticed
because the first bug could cause the test to use binary semaphores
even if semaphoreType was TIMELINE.
Affects:
dEQP-VK.synchronization.smoke.binary_semaphores
dEQP-VK.synchronization.smoke.timeline_semaphores
Components: Vulkan
VK-GL-CTS issue: 2041
Change-Id: I6936013b7f5a7e25f4af1fb4776d4d7273243d7a
(cherry picked from commit
a8238c0aa023c121f79f09c6565875e235292f27)
Peter Quayle [Tue, 8 Oct 2019 16:35:04 +0000 (17:35 +0100)]
Fix semaphore creation in smoke tests
The test was calling createSemaphore instead of createSemaphoreType,
meaning that the semaphoreType value would incorrectly be interpreted
as a VkSemaphoreCreateFlags.
Additionally, the VkTimelineSemaphoreSubmitInfo struct was not being
added into the pNext chain of the submits. This probably went unnoticed
because the first bug could cause the test to use binary semaphores
even if semaphoreType was TIMELINE.
Affects:
dEQP-VK.synchronization.smoke.binary_semaphores
dEQP-VK.synchronization.smoke.timeline_semaphores
Components: Vulkan
VK-GL-CTS issue: 2041
Change-Id: I6936013b7f5a7e25f4af1fb4776d4d7273243d7a
Mike Byrne [Mon, 30 Sep 2019 13:57:05 +0000 (14:57 +0100)]
Split descriptor set indexing render pass workload
The render pass workload for descriptor set indexing tests should be
split into multiple submissions to prevent timeouts observed in tests
for the VK_DESCRIPTOR_TYPE_SAMPLER,
VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,
VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER and
VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE descriptor types.
Affects: dEQP-VK.descriptor_indexing*
Components: Vulkan
VK-GL-CTS Issue: 2026
Change-Id: I3b4876ec204fe1c1ebf174e06328653f0a5532d3
Alexander Galazin [Thu, 10 Oct 2019 11:21:55 +0000 (13:21 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I288a90fcda0d3cbd7fbb1f8d622dee03f6b74f62
Alexander Galazin [Thu, 10 Oct 2019 09:38:02 +0000 (11:38 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I45e2e3c52d89424f714c43c76fc2dd9aea2a793d
Jeff Bolz [Mon, 30 Sep 2019 14:06:29 +0000 (09:06 -0500)]
Share device across synchronization tests (again)
This change reverts the deletion of this logic in the cross_instance
tests, and ports the logic to the new timeline semaphore tests.
Components: Vulkan
Affects: dEQP-VK.synchronization.cross_instance.*
Affects: dEQP-VK.synchronization.timeline_semaphore.*
Affects: dEQP-VK.synchronization.signal_order.*
Change-Id: I6dec095a8314aea3062f2ad532a4b4bdede398eb
Chris Forbes [Wed, 25 Sep 2019 23:51:40 +0000 (16:51 -0700)]
Add feature requirements to existing amber files
Updates the amber files themselves to mirror the constraints enforced on the C++ side.
Components: Vulkan
Change-Id: I698a39732b02cb99fe1aeb369f1054ac9a769bfb
VK-GL-CTS: 1965
Chris Forbes [Thu, 29 Aug 2019 04:31:39 +0000 (21:31 -0700)]
Add variable pointers requirement for vktSpvAsmPtrAccessChainTests
These tests did not check for the variablePointers feature they need.
Components: Vulkan
VK-GL-CTS Issue: 1965
Affects: dEQP-VK.spirv_assembly.instruction.compute.ptr_access_chain.*
Change-Id: Ied75a1c5661755549cc599b2397a18345bc727f9
Matthew Netsch [Fri, 4 Oct 2019 21:09:39 +0000 (17:09 -0400)]
Fixes VS num instances assumption
Components: Vulkan
VK-GL-CTS Issue: 2022
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.graphics.writes*
Change-Id: Ie1d784733774ae357698cf8a5672fcccdb0c1e1e
Alexander Galazin [Thu, 10 Oct 2019 09:16:58 +0000 (11:16 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: Ia9c94f0f78ea32deab67c4930668b8844daefb45
Alexander Galazin [Wed, 9 Oct 2019 19:46:15 +0000 (21:46 +0200)]
Update SPIR-V Tools
Components: Framework
Affects: dEQP-VK.*
Change-Id: I84a18fe6c29279f7acce7b081300475f83e76c80
Alexander Galazin [Wed, 9 Oct 2019 08:22:19 +0000 (10:22 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master
Change-Id: I3a4370f43b25316f8cf4abf013eb08d0831dca91
Alexander Galazin [Wed, 9 Oct 2019 07:35:35 +0000 (09:35 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I465c7fe7fd21384210cb5162947fd8342c9c49a4
Samuel Iglesias Gonsálvez [Fri, 27 Sep 2019 09:43:10 +0000 (11:43 +0200)]
Add pipeline derivatives to compute subgroup tests
Affected tests:
dEQP-VK.subgroups.*compute*
Components: Vulkan
VK-GL-CTS issue: 2019
Change-Id: I8b4b52945e32d488fc986687e0ba4d6d5676d584
Change-Id: Ib9aadba5d74daea5f9679b006ec1efa093174dd8
Boris Zanin [Thu, 26 Sep 2019 08:57:58 +0000 (10:57 +0200)]
Check extension limits
Add extension limits validaty check. The tests are per-extention.
Add tests:
* dEQP-VK.api.info.vulkan1p2_limits_validation.khr_push_descriptor
* dEQP-VK.api.info.vulkan1p2_limits_validation.khr_multiview
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_discard_rectangles
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_sample_locations
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_external_memory_host
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_blend_operation_advanced
* dEQP-VK.api.info.vulkan1p2_limits_validation.khr_maintenance_3
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_conservative_rasterization
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_descriptor_indexing
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_inline_uniform_block
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_vertex_attribute_divisor
* dEQP-VK.api.info.vulkan1p2_limits_validation.nv_mesh_shader
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_transform_feedback
* dEQP-VK.api.info.vulkan1p2_limits_validation.fragment_density_map
* dEQP-VK.api.info.vulkan1p2_limits_validation.nv_ray_tracing
* dEQP-VK.api.info.vulkan1p2_limits_validation.timeline_semaphore
* dEQP-VK.api.info.vulkan1p2_limits_validation.ext_line_rasterization
Rename and update test:
* dEQP-VK.api.info.vulkan1p2.limits_validation
to
* dEQP-VK.api.info.vulkan1p2_limits_validation.general
Components: vulkan
VK-GL-CTS issue: 2008
Change-Id: I5350ef499ba70e0194d360008a893209242a28a8
Graeme Leese [Fri, 6 Sep 2019 10:39:27 +0000 (11:39 +0100)]
Test all quad broadcasts in one test
Make them like the full-subgroup broadcast tests, rather than having a
separate test for broadcasting from each lane index.
Components: Vulkan
Affects: dEQP-VK.subgroups.quad.*.subgroupquadbroadcast*
(Tests are also renamed to remove the lane ID from the test name)
Change-Id: I1c22b9683acdce0c37b8a3fba3cae620e2d06adf
Graeme Leese [Fri, 6 Sep 2019 10:39:27 +0000 (11:39 +0100)]
Use a single test source for quad tests
Rather than repeat this through all the various combinations, just keep
one copy of the test source, so that changing it is not such a massive
pain.
Also, use a single source for the extension enables in the tests.
Components: Vulkan
Affects: dEQP-VK.subgroups.quad.*
Change-Id: I26ca2b035483aa47e021de7aefb3c94879c497d0
Alexander Galazin [Wed, 9 Oct 2019 07:12:17 +0000 (09:12 +0200)]
Remove unnecessary initializers
Components: Vulkan
Affects: dEQP-VK.glsl.shader_clock.*
Change-Id: I4526c05cdd5464f26450bba67f573b467881f4ff
Alexander Galazin [Tue, 8 Oct 2019 17:58:13 +0000 (19:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I3a4a19f9d8bba49c51d01cc6f07fda4ceb496b45
Igor Ostrowski [Thu, 26 Sep 2019 13:09:28 +0000 (15:09 +0200)]
Check timeline semaphore features only when used.
Affects:
dEQP-VK.synchronization.op.multi_queue.*
Components: Vulkan
VK-GL-CTS issue: 2025
Change-Id: I8c586bcb0199ab00fe6fffb9290abd2b06523916
(cherry picked from commit
c20bf2e3023cb209ae3ec04b6e6339f8c3930dfb)
Alexander Galazin [Tue, 8 Oct 2019 17:28:47 +0000 (19:28 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I44be4e273707047428a95e8243734259c859fe0a
Alexander Galazin [Tue, 8 Oct 2019 14:24:57 +0000 (16:24 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Ifd05cb161b5f393a1d5539f18a1d521482a2039f
Alexander Galazin [Tue, 8 Oct 2019 11:20:43 +0000 (13:20 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I0d5e01912df4dd2cca3c9b2d15693c8d8473d0d0
Jeff Bolz [Mon, 7 Oct 2019 14:39:02 +0000 (09:39 -0500)]
remove opconstantnull physical storage pointer tests
These are no longer considered valid after recent spec changes.
Components: Vulkan
Affects: Removes dEQP-VK.spirv_assembly.*phys*opconstantnull*
Change-Id: I79566387a8f5a1f12dbd2ab5996ad69d43079ea2
Venni Ihanakangas [Mon, 30 Sep 2019 09:28:14 +0000 (12:28 +0300)]
dEQP-VK.graphicsfuzz.unreachable-continue-statement
Components: Vulkan
New Tests:
dEQP-VK.graphicsfuzz.unreachable-continue-statement
Change-Id: Ic74b02597a27ad0c433675698035d3d5be35092a
Alejandro Piñeiro [Thu, 26 Sep 2019 09:55:49 +0000 (11:55 +0200)]
Don't check color outcome for tests that expect undefined behaviour
draw_indirect.misc-reservedMustBeZero-elements and its arrays
equivalent for both OpenGL and OpenGL ES tests the following paragraph
from the spec:
"Results are undefined if reservedMustBeZero is non-zero, but must
not lead to GL interruption or termination."
So it should check if there is no errors or crashes. But right now
those tests are also expecting a given color, that doesn't make sense
if the expected behaviour by spec is undefined.
This seems a C&P error from other tests.
Components: OpenGL, OpenGL ES
VK-GL-CTS issue: 2023
Affects:
KHR-GL41.draw_indirect.misc-reservedMustBeZero-arrays
KHR-GL41.draw_indirect.misc-reservedMustBeZero-elements
KHR-GLES31.core.draw_indirect.misc-reservedMustBeZero-arrays
KHR-GLES31.core.draw_indirect.misc-reservedMustBeZero-elements
Change-Id: I3e9a5d04893eec9359b55ea6c5130e940c943cf2
Alejandro Piñeiro [Thu, 26 Sep 2019 09:29:42 +0000 (11:29 +0200)]
GL43: Use zero for DrawArraysIndirectCommand reserved field
The test negative-gshIncompatible-arrays is using a non-zero value for
the DrawArraysIndirectCommand reserved field, but quoting its Title,
Purpose and Method:
"Negative: incompatible the input primitive type of gsh - glDrawArrayIndirect";
"Verify that a driver sets error and no driver crash occurred";
"1. Bind non-zero buffer"
"2. Set data"
"3. Set wrong geometry shader"
"4. Call glDrawArrayIndirect"
Testing non-zero values for the reserved field is not one of its
objectives. This seems a C&P error.
Components: OpenGL
VK-GL-CTS issue: 2023
Affects:
KHR-GL43.draw_indirect.negative-gshIncompatible-arrays
Change-Id: I8f0676b3a82266fa41becdfb720b04893720b6fc
Graeme Leese [Wed, 18 Sep 2019 10:48:16 +0000 (11:48 +0100)]
Fix random bool generation in GL subgroup tests
This is a port of https://gerrit.khronos.org/c/4594/ to the GL version
of the subgroups tests.
Components: OpenGL
VK-GL-CTS issue: 1998
Affects: KHR-Single-*.subgroups.*_bool*
KHR-Single-*.subgroups.*_bvec*
Change-Id: I89e9e6bca667043f32ee2698064b16b7dbd2e4a0
Graeme Leese [Tue, 1 Oct 2019 16:43:35 +0000 (17:43 +0100)]
Trivial changes to shader code formatting
These changes should have no functional effect (they're mostly in
comments), but they mess the bracket matching of my editor up.
Components: Vulkan
Change-Id: I306af082b7e839a53c9064cc6385ca8905c91a12
Jeff Bolz [Thu, 22 Aug 2019 18:43:57 +0000 (13:43 -0500)]
integer cooperative matrix tests
This change adds testing for integer cooperative matrix types, and also refactors
the tests so that the specific matrix sizes don't need to be enumerated in the
test source.
Components: Vulkan
Affects: dEQP-VK.compute.cooperative_matrix.*
Change-Id: I30c3c1a2c9252ed7b1fca055b12fe9f0bdd1521e
Alexander Galazin [Mon, 7 Oct 2019 08:41:09 +0000 (10:41 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I0a937c9e53ae0e6ab009ac865b338cc0e0467523
Piers Daniell [Fri, 4 Oct 2019 21:15:21 +0000 (15:15 -0600)]
Whitelist newly supported VK_KHR* extensions in CTS 1.1.5
The following extensions are now supported by
vulkan-cts-1.1.5.2:
- VK_KHR_timeline_semaphore
- VK_KHR_shader_clock
Affects:
dEQP-VK.api.info.device.extensions
Change-Id: I6fc4bbc5ab95557ac83c8ff8172679a343d46b23
Components: Vulkan
Eric Werness [Fri, 16 Nov 2018 21:50:40 +0000 (13:50 -0800)]
Support Python3 as well in gen_release_info.py
The CMake file version check can end up picking python3 in some cases -
making the Python code compatible with python3 seems easier than
adjusting the version check.
Components: Frameworks
Change-Id: Iab37090ab813dcb7839490225ca2a4bf2f721c12
Alexander Galazin [Fri, 4 Oct 2019 18:03:18 +0000 (20:03 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I77bc57566a8da83cddd2840900c4a7b0ae03d393
Alexander Galazin [Fri, 4 Oct 2019 12:23:19 +0000 (14:23 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I1ebe95eeffdca5e1d3c049a5b2486f8bf8d5f0ff
Alexander Galazin [Fri, 4 Oct 2019 10:00:48 +0000 (12:00 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I324081fe021529d107b664b57edb46d9206c65bb
Tapani Pälli [Tue, 27 Aug 2019 10:50:09 +0000 (13:50 +0300)]
tcuThreadUtil: fix data races on m_status
Fixes data race where m_status is being read by Thread::getStatus() and
simultaneously written by Thread::run(). There are multiple instances of
these errors during dEQP-EGL.functional.sharing.gles2.multithread.*
tests.
==14810== Possible data race during write of size 4 at 0x5E79E30 by thread #4
==14810== Locks held: none
==14810== at 0x7214AF: tcu::ThreadUtil::Thread::run()
==14810== by 0x74F348: de::threadFunc(void*)
==14810== by 0x756B89: startThread
==14810== by 0x483F76D: mythread_wrapper (hg_intercepts.c:389)
==14810== by 0x4A195A1: start_thread (in /usr/lib64/libpthread-2.29.so)
==14810== by 0x4ED8022: clone (in /usr/lib64/libc-2.29.so)
==14810==
==14810== This conflicts with a previous read of size 4 by thread #1
==14810== Locks held: none
==14810== at 0x48E076: tcu::ThreadUtil::Thread::getStatus() const
==14810== by 0x47E911: deqp::egl::GLES2SharingRandomTest::iterate()
==14810== by 0x45F044: deqp::egl::TestCaseWrapper::iterate(tcu::TestCase*)
==14810== by 0x6F7829: tcu::TestSessionExecutor::iterateTestCase(tcu::TestCase*)
==14810== by 0x6F6854: tcu::TestSessionExecutor::iterate()
==14810== by 0x6C84C2: tcu::App::iterate()
==14810== by 0x45A57A: main
==14810== Address 0x5e79e30 is 96 bytes inside a block of size 200 alloc'd
Components: EGL
VK-GL-CTS issue: 1955
Affects: dEQP-EGL.functional.sharing.gles2.multithread.*
Change-Id: I9b8a069743fc2271a962e69dd0c7f18490119e97
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Mika Väinölä [Tue, 27 Aug 2019 11:44:20 +0000 (14:44 +0300)]
Enable roundtrip for scaled formats in TCU
Currently some swizzle tests attempting to use scaled formats end up
testing integer formats instead and pass even though the implementation
does not actually support the required scaled format features. This CL
adds scaled TCU TextureFormats which should behave identically to
integer formats but enable scaled VkFormats to be mapped correctly.
Affects:
dEQP-VK.texture.swizzle.*scaled*
Components: Framework, Vulkan
VK-GL-CTS issue: 1752
Change-Id: I038f0f82448f3c44af8d4fec0b6f258013d90f5e
Pablo De La Garza [Wed, 10 Jul 2019 21:29:45 +0000 (14:29 -0700)]
Fix basicMultiFenceWaitAllFalseCase test
Test basicMultiFenceWaitAllFalseCase was passing implementations
that only return successfully when all fences have been signaled
(even if the waitAll parameter is set to false).
Affects:
dEQP-VK.synchronization.basic.fence.multi_waitall_false
Components: Vulkan
VK-GL-CTS issue: 1883
Change-Id: If12bdb69fcfec7f4eb506f49d2d6488e12cf287c
Ilkka Saarelainen [Tue, 17 Sep 2019 12:40:40 +0000 (15:40 +0300)]
dEQP-VK.graphicsfuzz.nested-for-loops-with-return
Components: Vulkan
New tests:
dEQP-VK.graphicsfuzz.nested-for-loops-with-return
Change-Id: I9cb56f58d4e78d6e5ee10ee8c3119602408daf2a
Jeff Bolz [Thu, 22 Aug 2019 18:43:57 +0000 (13:43 -0500)]
integer cooperative matrix tests
This change adds testing for integer cooperative matrix types, and also refactors
the tests so that the specific matrix sizes don't need to be enumerated in the
test source.
Components: Vulkan
Affects: dEQP-VK.compute.cooperative_matrix.*
Change-Id: I30c3c1a2c9252ed7b1fca055b12fe9f0bdd1521e
Ricardo Garcia [Fri, 19 Jul 2019 10:39:48 +0000 (12:39 +0200)]
Test blitting with 1D and 3D depth/stencil images
Add tests to check blitting operations on 1D and 3D depth, stencil and
depth/stencil images.
Affected tests:
dEQP-VK.api.copy_and_blit.*.depth_stencil.*
Components: Vulkan
VK-GL-CTS issue: 1888
Change-Id: Ic8a9c9a356d4a93f8b43e1afd7662164e99c7d3d
Alexander Galazin [Fri, 4 Oct 2019 08:32:36 +0000 (10:32 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I0a07d3af2bc1a7904a6022a6b2db4a6f34b92468
Alexander Galazin [Fri, 4 Oct 2019 06:14:08 +0000 (08:14 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: Id151cb044b6c8c1df2b6ff43ae012f6ec8cd7c57
Aaron Hagan [Mon, 20 May 2019 19:22:08 +0000 (15:22 -0400)]
Add tests for VK_KHR_shader_clock
Affects:
dEQP-VK.glsl.shader_clock.*
Components: Vulkan
VK-GL-CTS issue: https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/1758
(cherry picked from commit
9de5b8e48869ab025ed11982c6362e7f7082115f)
Change-Id: Iaca2d845ffb7a3037cee0c9cf38ff4844e7c9a48
Lionel Landwerlin [Wed, 11 Sep 2019 16:17:24 +0000 (19:17 +0300)]
Fix print of uninitialized value
Just fixing a printout in the result file.
Change-Id: Id1b4d3ee9879a07f452c5f5a0310a16d72051848
(cherry picked from commit
2d48a5baf07daeabeca8412ca6ff56d9ac92e2ca)
Lionel Landwerlin [Tue, 10 Sep 2019 11:36:19 +0000 (14:36 +0300)]
Add signal ordering tests
We want to verify that the signaling of semaphores in multiple
VkSubmitInfo a vkQueueSubmit() is ordered.
Add tests:
dEQP-VK.synchronization.signal_order.*
Change-Id: Ibf47e7e4105f479ab33b5bafeda3efdd4c2782b5
(cherry picked from commit
70ed33e49cd109a494b85a0daeb73ff40d3157f9)
Lionel Landwerlin [Fri, 1 Mar 2019 17:03:15 +0000 (17:03 +0000)]
Add tests for VK_KHR_timeline_semaphore
Renames existing semaphore tests from .*semaphore.* into .*binary_semaphore.*
Affects: dEQP-VK.synchronization.*
Change-Id: I48173432da6410a609c0d2000f21c379d4a64429
Components: Vulkan
(cherry picked from commit
a86d535bb75d21445df66cdfcce0b9dc79c37604)
Jari Komppa [Wed, 31 Jul 2019 10:29:15 +0000 (13:29 +0300)]
Speed up hierarchy traversal, part 2
Some of the tests do premature heavy work during test hierarchy
traversal, meaning that they waste time regardless of whether the tests
are run or not. These changes move some of that work to later stage of
test run, or otherwise speed things up a bit.
Affects:
dEQP-VK.pipeline.stencil.*
dEQP-VK.synchronization.cross_instance.*
dEQP-VK.synchronization.op.multi_queue.*
dEQP-VK.transform_feedback.fuzz.*
Components: Vulkan
VK-GL-CTS issue: 1830
Change-Id: I1c124cbf17068e56375ef2e467036e959cde8aa4
(cherry picked from commit
41527af467623bae596b2bd319b0694c11f8cbf8)
Jeff Bolz [Thu, 18 Jul 2019 19:45:02 +0000 (14:45 -0500)]
Share instance/device across test case instances in dEQP-VK.synchronization.*
Some of the dEQP-VK.synchronization.* test groups create new devices or new
instances for each test case. This is a really expensive thing to do tens of
thousands of times, and makes this the longest-running test group in the CTS.
This change uses singleton objects to store the instance/device, and adds
cleanup callbacks to destroy the singletons when the group is finished.
VK-GL-CTS Issue: 1886
Components: Vulkan
Affects: dEQP-VK.synchronization.*
Change-Id: If935b457276790faf4a86e6f2afb5fd911987a85
(cherry picked from commit
90e05499c49c88fc4063748574931c3be5652b07)
Alexander Galazin [Thu, 3 Oct 2019 15:36:34 +0000 (17:36 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: Iafc8f446321736c9ccc8ffac9da0c3d453750780
Alexander Galazin [Thu, 3 Oct 2019 15:33:04 +0000 (17:33 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: Idcd78cbc60325522a070c7c777317f0d811377c7
Piotr Byszewski [Fri, 27 Sep 2019 14:00:31 +0000 (16:00 +0200)]
Fix 64bit type promotions in subgroup tests
VK-GL-CTS issue: 1948
Components: Vulkan
Affects:
dEQP-VK.subgroups.*.ext_shader_subgroup_ballot.*
Change-Id: I7b8a1a8979bb16f1f4f4fcfd8579c764aa3820f0
(cherry picked from commit
57e251b094d00ad5332e1500af9cbfb490dcbe90)
Alexander Galazin [Thu, 3 Oct 2019 09:13:32 +0000 (11:13 +0200)]
Whitelist Vulkan CTS 1.1.5.2
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: I4a372accb5bc99345f55cea56140bd013b96b3f2
Yahan Zhou [Mon, 30 Sep 2019 22:12:45 +0000 (15:12 -0700)]
Extended: texel_view_compatible: image: fix image coord
Image coords in compute shaders need manual +0.5.
Affects:
dEQP-VK.image.texel_view_compatible.compute.extended.*.texture.*
Components: Vulkan
VK-GL-CTS issue: 1890
Change-Id: Iec93340004807252b0956e3d2fa19bacb899ff7b
Piotr Byszewski [Fri, 27 Sep 2019 14:00:31 +0000 (16:00 +0200)]
Fix 64bit type promotions in subgroup tests
VK-GL-CTS issue: 1948
Components: Vulkan
Affects:
dEQP-VK.subgroups.*.ext_shader_subgroup_ballot.*
Change-Id: I7b8a1a8979bb16f1f4f4fcfd8579c764aa3820f0