platform/upstream/VK-GL-CTS.git
4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Alexander Galazin [Thu, 29 Aug 2019 12:53:47 +0000 (14:53 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0

Change-Id: I2601738259c16747c7cbd70189d0af546ce37525

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Thu, 29 Aug 2019 12:06:21 +0000 (14:06 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: Ic4d2bda684057e57ae78e3894e646a8b4653da74

4 years agoAdd a command line option to run a fraction of tests
Jeff Bolz [Tue, 16 Jul 2019 16:34:11 +0000 (11:34 -0500)]
Add a command line option to run a fraction of tests

This is useful to easily parallelize test runs across several CPU cores.
A command line option like --deqp-case-fraction=0,2 will run 1/2 of the
tests (use 1,2 in another process to run the other half).

Components: Framework
Change-Id: I0fd2755d5b6fe458c72c22930c24346decaccbb0
(cherry picked from commit 7fdd5db62c826ec0f4e3ca17cc4252ec408ca914)

4 years agoImprove verification in sampled image tests
Toni Merilehti [Thu, 25 Jul 2019 10:46:52 +0000 (13:46 +0300)]
Improve verification in sampled image tests

Currently the tests use texelFetch (OpImageFetch) to get sample colors
per texel from a multisampled image and verifies that the color is
either the clear color or the primitive color used. This CL makes
the verification more strict by requiring that at least some texels
have samples of both colors as the image used is multisampled.

Affects:

dEQP-VK.pipeline.multisample.sampled_image.*

Components: Vulkan

VK-GL-CTS issue: 1797

Change-Id: I266538cad5f655ad96eb7221fbdd601b8b055ae8
(cherry picked from commit e0cd1b0113c54ae4e48d8633f29149a4c12cbffe)

4 years agoUpdate dependency test
Alexander Galazin [Mon, 26 Aug 2019 14:47:34 +0000 (16:47 +0200)]
Update dependency test

Components: Vulkan

Affects: dEQP-VK.api.info.device.extensions

Change-Id: Ia034c1521edfe2bdf3770b06c3b19416675540fa
(cherry picked from commit 6627cdcaada240502dd7a729c85cc5d508d67f95)

4 years ago1d_image: enforce height 1 in decompress stage as well
Lingfeng Yang [Thu, 15 Aug 2019 22:41:23 +0000 (15:41 -0700)]
1d_image: enforce height 1 in decompress stage as well

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

Components: Vulkan

VK-GL-CTS issue: 1920

Change-Id: Id98f0a8dd132da5bcd6a3f1426021c8f36a48149
(cherry picked from commit 367c958793953cfff9c59e0f397378ab6f28c605)

4 years agoRemove unnecessary 16-bit storage requirement
Alan Baker [Wed, 21 Aug 2019 14:42:44 +0000 (10:42 -0400)]
Remove unnecessary 16-bit storage requirement

Remove Vulkan 16-bit storage extension from float16 constant composite
tests. These tests do not load/store half floats.

Components: Vulkan

VK-GL-CTS issue: 1931

Affects:
dEQP-VK.spirv_assembly.instruction.compute.opconstantcomposite.*

Change-Id: I5dc26a8f2d922862f68eec01910164d827e9fd8a
(cherry picked from commit da5c09f2d67257bc5979d2f2dec826e09001761d)

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Thu, 29 Aug 2019 10:34:59 +0000 (12:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I75388239129fe489793729297b9aff59da4d77da

4 years agoexternal fence tests: account for sync fd -1 in multiple export case
Lingfeng Yang [Wed, 21 Aug 2019 15:45:10 +0000 (08:45 -0700)]
external fence tests: account for sync fd -1 in multiple export case

Spec allows for sync fd == -1 to be returned from vkGetFenceFdKHR
as a signal that the fence is signaled.

VK-GL-CTS issue: 1937

Components: Vulkan

Affects:
dEQP-VK.api.external.fence.sync_fd.export_multiple_times_temporary

Change-Id: I7391d180bdc1a585c7b57930fc1750d13f7151e1
(cherry picked from commit e266d2f1ee82d20c06c3c48064f60ac4fecd8b1d)

4 years agoExplicitly use -A Win32 platform in CMake Visual Studio 2019 builds
Slawomir Cygan [Fri, 23 Aug 2019 12:33:19 +0000 (14:33 +0200)]
Explicitly use -A Win32 platform in CMake Visual Studio 2019 builds

There is a new CMake switch "-A" for selecting a platform in
Visual Studion CMake generators.

It was set only for 64-bit builds (to x64), however it seems it does not
default to Win32 - so it must be set also for 32-bit builds.

Components: Framework

VK-GL-CTS Issue: 1950

Change-Id: I4d0e9f1a9c8dd0f3060e138f613c8e5326b6fc9f

4 years agoAdds cubic filter to allowed ycbcr format features
Matthew Netsch [Mon, 26 Aug 2019 16:26:12 +0000 (12:26 -0400)]
Adds cubic filter to allowed ycbcr format features

Components: Vulkan
VK-GL-CTS Issue: 1938

Affects:
dEQP-VK.api.info.format_properties.*

Change-Id: I9f32b902820d7a50db9ae51a5ba61f8bab9042ba

4 years agoUpdate VK_KHR_performance_query headers
Alexander Galazin [Thu, 22 Aug 2019 18:22:07 +0000 (20:22 +0200)]
Update VK_KHR_performance_query headers

Align CTS header for VK_KHR_performance_query with API MR 3268
Components: Vulkan

Affects:
 dEQP-VK.query_pool.performance_query.*
 dEQP-VK.api.info.get_physical_device_properties2.features
 dEQP-VK.api.info.get_physical_device_properties2.properties

VK-GL-CTS issue: 1947

Change-Id: I7ac34348d34122f0e9a33dd566be407ec44d55c7

4 years agoCheck supported features and properties for transform feedback tests
John Anthony [Thu, 11 Jul 2019 14:54:59 +0000 (16:54 +0200)]
Check supported features and properties for transform feedback tests

Builtin tests using shaderClipDistance and/or shaderCullDistance should
check if the features they need are supported. BackwardDependency test
should check if transformFeedbackDraw is supported.

Affects:
- dEQP-VK.transform_feedback.simple.xfb_clipdistance_*
- dEQP-VK.transform_feedback.simple.xfb_culldistance_*
- dEQP-VK.transform_feedback.simple.xfb_clip_and_cull_*
- dEQP-VK.transform_feedback.simple.backward_dependency

Components: Vulkan

VK-GL-CTS issue: 1934

Change-Id: I76b22a506ba608d3e3f4ea5586c74b0b7ca1066a

4 years agoFixes stencil load/store flags in renderpass tests
Matthew Netsch [Wed, 21 Aug 2019 15:43:35 +0000 (11:43 -0400)]
Fixes stencil load/store flags in renderpass tests

Components: Vulkan
VK-GL-CTS Issue: 1939

Affects:
dEQP-VK.renderpass*.simple.*stencil

Change-Id: I042c08b9bee6ba00ea3237e24f3fb6b2f1aebd9b

4 years agoHave just one definition of AmberTestCase
Chris Forbes [Thu, 29 Aug 2019 02:13:38 +0000 (19:13 -0700)]
Have just one definition of AmberTestCase

There were two -- an empty stub in the util header, and the real one.
This made it impossible to actually use the full API to set
feature/extension requirements, etc.

Instead, I have forward-declared the Amber Recipe type so that including
vktAmberTestCase.hpp does not involve pulling in Amber headers.

Add geometryShader feature requirement to provoking vertex Amber tests,
allowing them to skip properly on devices which do not support geometry
shaders.

Affects: dEQP-VK.rasterization.provoking_vertex.*
VK-GL-CTS Issue: 1964

Change-Id: Id6d1068c45b2aacc29d07527edd53d65953c49a3

4 years agoFix AmberTestCase feature mapping for geometryShader
Chris Forbes [Thu, 29 Aug 2019 00:44:47 +0000 (17:44 -0700)]
Fix AmberTestCase feature mapping for geometryShader

This was accidentally wired up to tessellationShader instead

VK-GL-CTS Issue: 1963
Change-Id: Id11fd09cf5c0c1353d3df4ecdcbe95bdfa9fa397

4 years agoAdd tests for VK_KHR_timeline_semaphore
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)

4 years agoTest SPIR-V 1.4 SignExtend and ZeroExtend
Piotr Byszewski [Wed, 12 Jun 2019 14:53:49 +0000 (15:53 +0100)]
Test SPIR-V 1.4 SignExtend and ZeroExtend

SPIR-V 1.4 has 2 new extra image operands (SignExtend and ZeroExtend)
indicating if the resulting texel of the operation should be sign
or zero extended.

Components: Vulkan

Affects:
dEQP-VK.image.extend_operands_spirv1p4.*

Change-Id: Ie0ca0125d4f536c318428fc95ebaf000c3f7136f
(cherry picked from commit 6c4f066ef6aac566e8ec400e4343de86a089143c)

4 years agoAllow Vulkan 1.2 in api.info.device.properties
Alexander Galazin [Mon, 26 Aug 2019 09:18:44 +0000 (11:18 +0200)]
Allow Vulkan 1.2 in api.info.device.properties

Components: Vulkan

Affects: dEQP-VK.api.info.device.properties

VK-GL-CTS issue: 1952

Change-Id: I810a4aab69a611823703ad7b06b37c75c5f5d292

4 years agoValidate Vulkan 1.2 mandatory features
Boris Zanin [Fri, 16 Aug 2019 13:51:21 +0000 (15:51 +0200)]
Validate Vulkan 1.2 mandatory features

Check new mandatory features for Vulkan 1.2.

Updates:
 * dEQP-VK.api.info.device.mandatory_features
 * dEQP-VK.api.info.vulkan1p2.*
 * dEQP-VK.descriptor_indexing.*
 * dEQP-VK.binding_model.descriptorset_random*

Components: Vulkan

VK-GL-CTS issue: 1891, 1925, 1929

Change-Id: I59107cced3331fbaf1a54ab89e177dae68c71667

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Alexander Galazin [Tue, 27 Aug 2019 08:09:07 +0000 (10:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0

Change-Id: I0c2d8b0e0fc665ae231559d1d1e0a1bad8ca1baf

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Tue, 27 Aug 2019 07:13:13 +0000 (09:13 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: I99471c0d878e8abb8c01d7b43a71a9b3e7fbe285

4 years agoVK_EXT_fragment_shader_interlock tests
Jeff Bolz [Thu, 16 May 2019 04:27:53 +0000 (23:27 -0500)]
VK_EXT_fragment_shader_interlock tests

Components: Vulkan
New Tests: dEQP-VK.fragment_shader_interlock.*
VK-GL-CTS issue: 1856

Change-Id: I0246519ac51fcb2eb30fa264b02eb1f30c763e24
(cherry picked from commit 36005ceedd19e39bd11972dd39c419521767dac6)

4 years agoNew tests for VK_EXT_shader_demote_to_helper_invocation
Jeff Bolz [Sun, 2 Jun 2019 04:11:00 +0000 (23:11 -0500)]
New tests for VK_EXT_shader_demote_to_helper_invocation

Based on dEQP-VK.glsl.discard.*

New Tests: dEQP-VK.glsl.demote.*

Components: Vulkan
Change-Id: I9c2346592cac51cfe2de10f9586c4790c04766b6
(cherry picked from commit 529b996513d092334de3dabd4b3e44031201bdd9)

4 years agoWhitelist 1.1.4.3 and 1.1.3.3 versions
Alexander Galazin [Mon, 26 Aug 2019 12:15:18 +0000 (14:15 +0200)]
Whitelist 1.1.4.3 and 1.1.3.3 versions

Affects: dEQP-VK.api.driver_properties.properties

Components: Vulkan

Change-Id: Ia071c4983326e9e47a58d268264e568bea777c1c

4 years agoTest coverage for VK_EXT_index_type_uint8
Piers Daniell [Wed, 24 Jul 2019 05:07:47 +0000 (23:07 -0600)]
Test coverage for VK_EXT_index_type_uint8

Adds coverage for VK_EXT_index_type_uint8 by adding
a new VK_INDEX_TYPE_UINT8_EXT variant to the existing
input_assembly tests. The coverage includes drawing
all the primitive topologies with uint8 indices,
and also primitive restart.

Affects:

dEQP-VK.pipeline.input_assembly.*

Change-Id: I939c1e0d2c3d4fcfd4386b8b4e419a8ca0e73413
Components: Vulkan
(cherry picked from commit e0e648699ac9279650486609cf16ec6e10d73042)

4 years agoFix features2 test for VK_EXT_buffer_device_address
Alexander Galazin [Thu, 22 Aug 2019 12:56:03 +0000 (14:56 +0200)]
Fix features2 test for VK_EXT_buffer_device_address

Take into account that VK_EXT_buffer_device_address wasn't promoted to KHR
and retained separate enum entries

Components: Vulkan

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

VK-GL-CTS issue: 1932

Change-Id: I0714802865d8ef35fb41d6fbab7393c46a0b3a68

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Alexander Galazin [Thu, 22 Aug 2019 18:38:57 +0000 (20:38 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0

Change-Id: Icc06dc631471d963bd6812ca84b794b2448b4b39

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Thu, 22 Aug 2019 15:46:27 +0000 (17:46 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: If70c0a43c7453bdea1cfe4666be9bdc946108a31

5 years agoSpeed up hierarchy traversal, part 2
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)

5 years agoAdd touch tests for volatile atomics
Jeff Bolz [Wed, 24 Jul 2019 18:09:04 +0000 (13:09 -0500)]
Add touch tests for volatile atomics

Volatile atomics are a late addition to the SPV_KHR_vulkan_memory_model
extension. This change adds variants of the spirv_assembly opatomic tests
that use the bit to make sure it is accepted, but don't actually prove
that the access is treated as volatile.

SPIR-V issue: 476
Components: Vulkan
Affects: dEQP-VK.spirv_assembly.*atomic*

Change-Id: I38202242dade7dcf42aa2bbcd1927a1cac1bc9ad
(cherry picked from commit 8072a83ab9f95f35f75cf28c2e5643e1b638bc01)

5 years agoMerge common util functions, part 3
Ilkka Saarelainen [Tue, 23 Jul 2019 12:32:46 +0000 (15:32 +0300)]
Merge common util functions, part 3

Many tests have their own util functions for creating commonly used
Vulkan objects.
This CL moves the following helper functions to the framework:

- bindImage()
- bindBuffer()
- zeroBuffer()
- makeBuffer()
- makeImage()
- makeBufferCreateInfo()
- makeBufferImageCopy()

Affects: dEQP-VK.*

Components: Vulkan, Framework

VK-GL-CTS issue: 1709

Change-Id: I77c09d4213ca708fb3255d00d2aa2506077def40
(cherry picked from commit 3aad357b11d6c84f8b29dfa97cce4d0f36fb22ec)

5 years agoTexel view compatible: Image: proper check for image format supports
Yahan Zhou [Fri, 9 Aug 2019 18:35:15 +0000 (11:35 -0700)]
Texel view compatible: Image: proper check for image format supports

The queried image usage is different from what is acutally used. Fix it
so that we would not end up with an unsupported usage.

Affects:
dEQP-VK.image.texel_view_compatible*

Components: Vulkan

Google bug: 139193497
VK-GL-CTS issue: 1920

Change-Id: Ib8db61808db5f9391a54b7722f965b6608e7e694
(cherry picked from commit afcca0b7bd29e11643ab5c15a3c37028b7df2b5b)

5 years agoFloat controls: graphics: fix 16bit storage validation
David Neto [Fri, 12 Jul 2019 16:38:08 +0000 (12:38 -0400)]
Float controls: graphics: fix 16bit storage validation

For graphics shaders:

Add Float16 capability and shaderFloat16 when the test case uses
16bit float in a way not supported by the 16bit storage extension.

If not using the Float16 capability, drop definitions of 16bit
constants.

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.float_controls.*

VK-GL-CTS issue: 1874

Change-Id: I1e25a706e0667a45b3e5b0a6c496c77feac90465
(cherry picked from commit d081b36582101f53e08fe9f3c6219013e82765e6)

5 years agoNeed Float16 capability for float16 tests
David Neto [Fri, 12 Jul 2019 20:20:13 +0000 (16:20 -0400)]
Need Float16 capability for float16 tests

Fixes validation of 2537 tests.

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.compute.float16.*
dEQP-VK.spirv_assembly.instruction.graphics.float16.*

VK-GL-CTS issue: 1874

Change-Id: I68bf7951939b5ff8382ab40e9adcaa8e1ee61c4d
(cherry picked from commit 633e2c204c70c185ab48a93e35a876beab88de1f)

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Thu, 22 Aug 2019 11:42:23 +0000 (13:42 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I4059d84b79a3ad4504f436fa39dc2cddb294f8d7

5 years agoSplit compute workload into multiple submissions
Matthew Netsch [Wed, 14 Aug 2019 11:08:32 +0000 (16:38 +0530)]
Split compute workload into multiple submissions

Reduces workload per submission

Components: Vulkan
VK-GL-CTS Issue: 1751

Affects:
dEQP-VK.memory_model.message_passing.*

Change-Id: Ia9e9b63851b18ae1d5c1b65426ee864d760bf87c

5 years ago1d_image: basic: compute: texel_view_compatible: set size.y to 1
Yahan Zhou [Wed, 7 Aug 2019 19:44:50 +0000 (12:44 -0700)]
1d_image: basic: compute: texel_view_compatible: set size.y to 1

1d images need to have size.y=1. Otherwise Vulkan validation layer will
complain.

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

Components: Vulkan

VK-GL-CTS issue: 1920

Change-Id: I0dd24d612aafb416a74b5eb6f16bb55c76175a0f
(cherry picked from commit fe76a662df108542ff27e1c4f5a83077b54444c4)

5 years agoFix incorrect layout transition in render pass
Piers Daniell [Tue, 13 Aug 2019 22:11:23 +0000 (16:11 -0600)]
Fix incorrect layout transition in render pass

For the dEQP-VK.device_group.* tests the renderImage was
created with an UNDEFINED layout and then explicitly
transitioned to COLOR_ATTACHMENT_OPTIMAL during the test
initialization. Then the renderPass was created using the
makeRenderPass() utility function which assumed the
image was in the UNDEFINED state. This caused the
image to be transitioned again from UNDEFINED
to COLOR_ATTACHMENT_OPTIMAL at begin render pass time,
which might modify any valid image data.

The solution is to fix the render pass creation
to indicate that the renderImage is already in the
COLOR_ATTACHMENT_OPTIMAL layout.

Affects:

dEQP-VK.device_group.*

VK-GL-CTS issue: 1922

Change-Id: I5e1dff19eb854af9651615a7318379a318b8c273
Components: Vulkan

5 years agoAdd pipeline barriers flushing buffer data to host
Panagiotis Apostolou [Thu, 25 Jul 2019 10:29:18 +0000 (12:29 +0200)]
Add pipeline barriers flushing buffer data to host

This commit adds a few buffer pipeline barriers whose purpose is to flush
gpu caches, making the buffer data visible to the host.

Affects:
dEQP-VK.pipeline.push_constant.compute_pipeline.simple_test
dEQP-VK.glsl.builtin.precision.*
dEQP-VK.glsl.builtin.function.*
dEQP-VK.api.command_buffers.record_simul_use_secondary_one_primary
dEQP-VK.synchronization.op.single_queue.*
dEQP-VK.query_pool.occlusion_query.*

Components: Vulkan

VK-GL-CTS issue: 1898

Change-Id: Ic6a467b4d1db6cebebf34c8d386e519016fc3fe9

5 years agoShare instance/device across test case instances in dEQP-VK.synchronization.*
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)

5 years agoTests for VK_KHR_separate_depth_stencil_layouts
Piers Daniell [Tue, 30 Apr 2019 22:50:00 +0000 (16:50 -0600)]
Tests for VK_KHR_separate_depth_stencil_layouts

Test coverage for VK_KHR_separate_depth_stencil_layouts. See
https://gitlab.khronos.org/vulkan/vulkan/merge_requests/3172

This change modifies several test groups to use a single
image aspect bit for depth+stencil formats rather than the
VU required D+S aspects.

Where appropriate the tests are also modified to use
the new depth-only or stencil-only optimal layouts.

Affects:

dEQP-VK.api.copy_and_blit.*d16_unorm_s8_uint*
dEQP-VK.api.copy_and_blit.*d24_unorm_s8_uint*
dEQP-VK.api.copy_and_blit.*d32_sfloat_s8_uint*

dEQP-VK.api.image_clearing*d16_unorm_s8_uint*
dEQP-VK.api.image_clearing*d24_unorm_s8_uint*
dEQP-VK.api.image_clearing*d32_sfloat_s8_uint*

dEQP-VK.pipeline.stencil*d16_unorm_s8_uint*
dEQP-VK.pipeline.stencil*d24_unorm_s8_uint*
dEQP-VK.pipeline.stencil*d32_sfloat_s8_uint*

dEQP-VK.pipeline.depth*d16_unorm_s8_uint*
dEQP-VK.pipeline.depth*d24_unorm_s8_uint*
dEQP-VK.pipeline.depth*d32_sfloat_s8_uint*

dEQP-VK.*.depth_stencil_resolve*d16_unorm_s8_uint*
dEQP-VK.*.depth_stencil_resolve*d24_unorm_s8_uint*
dEQP-VK.*.depth_stencil_resolve*d32_sfloat_s8_uint*

Change-Id: I147f3736614cc897f1319c5aac5ed1fdba2d7b66
Compontents: Vulkan
(cherry picked from commit 39e17004ec33f0e546e6f391f933fb938e8c507d)

5 years agoUpdate glslang
Alexander Galazin [Tue, 20 Aug 2019 06:08:57 +0000 (07:08 +0100)]
Update glslang

Components: Framework

Affects: dEQP-VK.*

Change-Id: I1b412973f9db15bcd6881a5148e314fd57715afe

5 years agoTest coverage for VK_EXT_index_type_uint8
Piers Daniell [Wed, 24 Jul 2019 05:07:47 +0000 (23:07 -0600)]
Test coverage for VK_EXT_index_type_uint8

Adds coverage for VK_EXT_index_type_uint8 by adding
a new VK_INDEX_TYPE_UINT8_EXT variant to the existing
input_assembly tests. The coverage includes drawing
all the primitive topologies with uint8 indices,
and also primitive restart.

Affects:

dEQP-VK.pipeline.input_assembly.*

Change-Id: I939c1e0d2c3d4fcfd4386b8b4e419a8ca0e73413
Components: Vulkan

5 years agoNew tests for VK_EXT_shader_demote_to_helper_invocation
Jeff Bolz [Sun, 2 Jun 2019 04:11:00 +0000 (23:11 -0500)]
New tests for VK_EXT_shader_demote_to_helper_invocation

Based on dEQP-VK.glsl.discard.*

New Tests: dEQP-VK.glsl.demote.*

Components: Vulkan
Change-Id: I9c2346592cac51cfe2de10f9586c4790c04766b6
(cherry picked from commit 529b996513d092334de3dabd4b3e44031201bdd9)

5 years agoFloat controls: break out extra functions as separate from constants
David Neto [Fri, 12 Jul 2019 16:27:07 +0000 (12:27 -0400)]
Float controls: break out extra functions as separate from constants

This should not be a functional change.

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.compute.float_controls.*
dEQP-VK.spirv_assembly.instruction.graphics.float_controls.*

Change-Id: I03d3f2d4d9792786b159e5472368859d518cdc3e
(cherry picked from commit 3f15cf0997a51831fa37f3a5fde2e9898ae7bcb4)

5 years agoFix Float16 validation for 16bt storage tests
David Neto [Mon, 15 Jul 2019 15:02:20 +0000 (11:02 -0400)]
Fix Float16 validation for 16bt storage tests

* Refactor interface functions to avoid arithmetic capabilities
  * new string template

Components: Vulkan

VK-GL-CTS issue: 1874

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.*
dEQP-VK.spirv_assembly.instruction.graphics.indexing.*

Change-Id: I05198eedb59a545785a65026847885ea7fae85bf
(cherry picked from commit 6d615d59eab72e305f1f5da2b2e1dda1b48ea108)

5 years agoVK_KHR_pipeline_executable_properties tests
Jason Ekstrand [Tue, 21 May 2019 23:35:19 +0000 (18:35 -0500)]
VK_KHR_pipeline_executable_properties tests

Components: Vulkan
New Tests: dEQP-VK.pipeline.executable_properties.*

Change-Id: I5534d945e65e645b8e43c23008b887797f4a5b85

5 years agoSupport SPIR-V 1.5
Piotr Byszewski [Mon, 27 May 2019 13:38:04 +0000 (15:38 +0200)]
Support SPIR-V 1.5

At this point there is no support in tools therefore
some references to SPIR-V 1.5 are commented out.

Components: Vulkan, Framework

VK-GL-CTS issue: 1783

Change-Id: I27fcf14977b4b536af68ca469ff8de1db593f307

5 years agoAllow tests to be executed with SPIR-V 1.4
Victor Lomuller [Wed, 12 Jun 2019 14:53:49 +0000 (15:53 +0100)]
Allow tests to be executed with SPIR-V 1.4

Components: Framework

Change-Id: I3135d7b0d96234bec53bbc4ec0185f4c816a5dcf

5 years agoAllow optimization for SPIR-V 1.4
Boris Zanin [Mon, 27 May 2019 11:07:02 +0000 (13:07 +0200)]
Allow optimization for SPIR-V 1.4

This commit updates function optimizeCompiledBinary with
missing optimization reciepe for SPIR-V 1.4.

Also makes supports_VK_KHR_spirv_1_4 as an optional argument of
SpirVAsmBuildOptions constructor, though defaulting it to disable
support of SPIR-V 1.4.

The change affects if run with optimization command line arguments,
i.e. --deqp-optimize-spirv=enable and --deqp-optimization-recipe=!0

Affects:
 * dEQP-VK.spirv_assembly.instruction.spirv1p4.*

Components: Framework

VK-GL-CTS issue: 1636

Change-Id: If0af53ea37521e686ca7d422cab9589cc0460dc5

5 years agoAdd tests for Vulkan 1.2 structs defining features and properties
Pawel Ksiezopolski [Thu, 1 Aug 2019 09:51:19 +0000 (11:51 +0200)]
Add tests for Vulkan 1.2 structs defining features and properties

Adds tests for the following structures: VkPhysicalDeviceVulkan11Features,
VkPhysicalDeviceVulkan11Properties, VkPhysicalDeviceVulkan12Features and
VkPhysicalDeviceVulkan12Properties.

Affects tests:
dEQP-VK.api.info.get_physical_device_properties2.features
dEQP-VK.api.info.get_physical_device_properties2.properties

Components: Vulkan

VK-GL-CTS issue: 1891

Change-Id: I999863acd6f633f84031c2b983b80af61e6cfd51

5 years agoAdd support for Vulkan 1.2
Piotr Byszewski [Tue, 5 Feb 2019 12:59:59 +0000 (13:59 +0100)]
Add support for Vulkan 1.2

Adds following extensions to core:
VK_KHR_image_format_list
VK_KHR_sampler_mirror_clamp_to_edge
VK_KHR_draw_indirect_count
VK_KHR_create_renderpass2
VK_KHR_8bit_storage
VK_KHR_driver_properties
VK_KHR_shader_atomic_int64
VK_KHR_shader_float16_int8
VK_KHR_shader_float_controls
VK_EXT_descriptor_indexing
VK_KHR_depth_stencil_resolve
VK_EXT_scalar_block_layout
VK_EXT_shader_viewport_index_layer
VK_EXT_buffer_device_address
VK_EXT_separate_stencil_usage
VK_EXT_sampler_filter_minmax
VK_KHR_imageless_framebuffer
VK_KHR_vulkan_memory_model
VK_KHR_shader_subgroup_extended_types
VK_KHR_spirv_1_4
VK_KHR_uniform_buffer_standard_layout
VK_EXT_host_query_reset

Components: Vulkan

Change-Id: I9a1e15caf459e981a4c1a4689a5c0dac482f4e5e

5 years agoHandle spir-v 1.4 in SpvAsmUtils
Piotr Byszewski [Mon, 22 Jul 2019 09:21:01 +0000 (11:21 +0200)]
Handle spir-v 1.4 in SpvAsmUtils

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.*

Change-Id: Ib960d1c4786c44c5c30ef9b4080e315681cb80aa

5 years agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Alexander Galazin [Wed, 14 Aug 2019 17:23:52 +0000 (19:23 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev

Change-Id: I277ac1827a20a8363d4c1ed071db0081f934f764

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master
Alexander Galazin [Wed, 14 Aug 2019 15:09:33 +0000 (17:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master

Change-Id: Idbd535ccaa0b8db6fcace470af92c29a999dede7

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Wed, 14 Aug 2019 14:11:55 +0000 (16:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: I9cc0f3b31193377219058dce043d7b8a929b9eea

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Wed, 14 Aug 2019 12:04:45 +0000 (14:04 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I6c972fa2e2028e4f813ab96eb565c93c440faf9d

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Wed, 14 Aug 2019 11:52:47 +0000 (13:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I7f00708e05e1cf20c6439e52287d21eacf32ca01

5 years agoEarly support check for tests (part 2)
Ari Suonpaa [Tue, 25 Jun 2019 12:33:55 +0000 (15:33 +0300)]
Early support check for tests (part 2)

Moved feature and extension checks into checkSupport function
which gets called before initPrograms. This speeds up the
test execution in case a test is not supported.

This the second batch of changes.

Affects:

dEQP-VK.dynamic_state.*
dEQP-VK.fragment_operations.*
dEQP-VK.geometry.*
dEQP-VK.image.*
dEQP-VK.memory.*
dEQP-VK.multiview.*
dEQP-VK.pipeline.*

Components: Vulkan

VK-GL-CTS issue: 1786

Change-Id: Ibbf0b32425cce048d937b5da324ff097b46afd23

5 years agoProvide a highp variable to MAKE_HIGH_BALLOT_RESULT
Hsin-Hsiao Lin [Thu, 25 Jul 2019 07:13:34 +0000 (09:13 +0200)]
Provide a highp variable to MAKE_HIGH_BALLOT_RESULT

The MAKE_HIGH_BALLOT_RESULT macro assumes the input is 32bit.
Given a mediump variable, ex: gl_SubgroupSize, would produce an
undefined result when the input value is >= 16 and the computation
is in 16 bits.
Provide a highp input would ensure the computation is in 32 bits.

Affects:
  dEQP-VK.subgroups.ballot_other.*

Components: vulkan

VK-GL-CTS issue: 1894

Change-Id: I22987f20be3d08444c52cb722fc23494777a5636

5 years agoFloat controls: compute: fix for strict 16bit storage validation
David Neto [Thu, 11 Jul 2019 19:12:37 +0000 (15:12 -0400)]
Float controls: compute: fix for strict 16bit storage validation

Emit definitions of float constants only if those constants
are used in the rest of the shader.  In the case of 16bit
float this saves us from having to also declare a Float16 capability.

Non-storage-related use of fp16 requires Float16 capability,
and shaderFloat16 Vulkan feature from VK_KHR_shader_float16_int8.
Such uses include declaring constants, using fp16 arithmetic, etc.

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.compute.float_controls.*

VK-GL-CTS issue: 1874

Change-Id: Ia403aac8ae32646329f67bf48d6231af233e9c20

5 years agoUpdate device_group test to ignore VK_SUBOPTIMAL_KHR
Fabio [Thu, 25 Jul 2019 15:08:16 +0000 (17:08 +0200)]
Update device_group test to ignore VK_SUBOPTIMAL_KHR

The transform used to create the swapchain does not match the
surface rotation. This causes vkQueuePresentKHR to return
VK_SUBOPTIMAL_KHR. This return code can be ignored.

Components: Vulkan

VK-GL-CTS Issue: 1899

Affects: dEQP-VK.wsi.android.swapchain.render.device_group

Change-Id: I27d8e61007dd049b8e9cc532918056b8493a9b52

5 years agoAdd result buffer invalidates to depth stencil resolve tests
Stephen Gallimore [Wed, 31 Jul 2019 15:24:57 +0000 (16:24 +0100)]
Add result buffer invalidates to depth stencil resolve tests

Components: Vulkan
VK-GL-CTS issue: 1907
Affects: dEQP-VK.renderpass2.depth_stencil_resolve.*

Change-Id: I90920f6005b0d6a72a78c588f4c3abec81826516

5 years agoAdd missing invalidates in depth/stencil resolve tests
Ricardo Garcia [Wed, 7 Aug 2019 14:18:53 +0000 (16:18 +0200)]
Add missing invalidates in depth/stencil resolve tests

If the driver returns a non-coherent heap then the
dEQP-VK.renderpass2.depth_stencil_resolve.* may fail unpredictably as
the verify methods do not invalidate the result buffer before reading
the contents.

Affected tests:
dEQP-VK.renderpass2.depth_stencil_resolve.*

Components: Vulkan
VK-GL-CTS issue: 1907

Change-Id: I61c3fdc58ff521b751f1181282291ec1d941206b

5 years agoAdd missing checks for sampleShading feature
Chris Forbes [Sun, 28 Jul 2019 20:34:13 +0000 (13:34 -0700)]
Add missing checks for sampleShading feature

These cases were missed in the previous pass as they were masked by the
(correct) check for fragmentStoresAndAtomics.

Components: Vulkan

Affects: dEQP-VK.glsl.builtin_var.*

VK-GL-CTS Issue: 1901

Change-Id: I4d19c5075d14f60ead4c6df6370fffc870cde68a

5 years agoAlways dynamically lookup egl functions
Courtney Goeltzenleuchter [Wed, 10 Apr 2019 21:25:16 +0000 (15:25 -0600)]
Always dynamically lookup egl functions

Android's latest NDK includes support for EGL 1.5 functions.
However, only for API level 29. But due to unified headers
folks building for older API levels will also see the new
functions but won't be able to link. Making the egl functions
dynamic avoids build time issues.

Change-Id: I718e28c7422faf3c7b964ca70b86a1711a08ae54
Affects: EGL
Bug: 1873

5 years agoExplicitly set current values before drawing
James Dong [Mon, 8 Jul 2019 16:39:27 +0000 (10:39 -0600)]
Explicitly set current values before drawing

dEQP-GLES3.functional.vertex_array_objects.all_attributes was relying on
the value of disabled integer attributes. This behavior results in
undefined values, as the initial values for all vertex attributes are of
floating-point type.

Affects:

dEQP-GLES3.functional.vertex_array_objects.all_attributes

Components: AOSP

VK-GL-CTS public issue: 153

Change-Id: I8ffe4b581f100884b46fe68a751bf991cccb71e3

5 years agoBackport performance fix from cts-next-dev
Graeme Leese [Wed, 10 Jul 2019 11:13:29 +0000 (12:13 +0100)]
Backport performance fix from cts-next-dev

The subgroups tests on next-dev have been changed to run on a reduced
set of workgroup sizes to improve performance, so apply that change to
master as well.

Components: Vulkan
Affects: dEQP-VK.subgroups.*

Change-Id: I4fb386b567666589688f7265e5efe6c72d5fd0cd

5 years agoRemove superfluous shuffle code
Graeme Leese [Wed, 10 Jul 2019 10:53:32 +0000 (11:53 +0100)]
Remove superfluous shuffle code

The supportedCheck was checking whether the case was supported but the
actual test code was checking it again.

Components: Vulkan
Affects: dEQP-VK.subgroups.shuffle.*

Change-Id: Ie98cb3aef8fe3f50068fd908feae95735b892f9c

5 years agoUpdate Vulkan headers to 1.1.117
Jeff Bolz [Thu, 8 Aug 2019 04:40:54 +0000 (23:40 -0500)]
Update Vulkan headers to 1.1.117

Should be no functional change, just brings the header up to date
to ease submitting new tests for those extensions. Two minor name
remaps were necessary in gen_framework.py

Components: Vulkan
Change-Id: I44a07f3a5ccd3426c22e95c70f231a24daf0d994

5 years agoMerge vk-gl-cts/gl-subgroups-dev into vk-gl-cts/master
Alexander Galazin [Fri, 9 Aug 2019 13:08:17 +0000 (15:08 +0200)]
Merge vk-gl-cts/gl-subgroups-dev into vk-gl-cts/master

Change-Id: Ib69ac2a513b45fbd1c3bfd72d72ae2b3ed9da046

5 years agoRename subgroup.partitioned tests
Jeff Bolz [Mon, 15 Jul 2019 19:51:44 +0000 (14:51 -0500)]
Rename subgroup.partitioned tests

Somehow the grouping of tests got out of sync with the other subgroup
tests like arithmetic/clustered. This fixes the naming/grouping to
be consistent with those.

Components: Vulkan
Affects: dEQP-VK.subgroups.partitioned.*
Change-Id: Ia8e02fd6ea7df04b91d0d086fcfdbd4e3e265d38

5 years agoUse templates instead of copying code
Graeme Leese [Wed, 26 Jun 2019 12:14:30 +0000 (13:14 +0100)]
Use templates instead of copying code

The precision tests make heavy use of templates yet they still have code
copied rather than making use of the templates. Squash some of the test
factory code into templates.

Components: Vulkan
Affects: dEQP-VK.glsl.builtin.precision*

Change-Id: Ic10cd7b3f65a632bd57b6f3beb01d087185e705a

5 years agoFix 16bit/8bit storage validation for workgroup memory tests
David Neto [Fri, 12 Jul 2019 20:52:03 +0000 (16:52 -0400)]
Fix 16bit/8bit storage validation for workgroup memory tests

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.compute.workgroup_memory.int8
dEQP-VK.spirv_assembly.instruction.compute.workgroup_memory.uint8
dEQP-VK.spirv_assembly.instruction.compute.workgroup_memory.float16

VK-GL-CTS issue: 1874

Change-Id: Ife60e90a6d190fa37b7d8055c1260b363c051e3d

5 years agoNeed Float16 in some derivative tests
David Neto [Fri, 12 Jul 2019 22:07:41 +0000 (18:07 -0400)]
Need Float16 in some derivative tests

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.*
dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.*
dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.*

VK-GL-CTS issue: 1874

Change-Id: Ia75d608568c7580c1f11137507b142e1dbd397fd

5 years agoCheck if the statistics query results are linear
Pawel Ksiezopolski [Wed, 19 Jun 2019 09:07:37 +0000 (11:07 +0200)]
Check if the statistics query results are linear

Current tests check if query results are greater than or equal to
minimum values defined by the specification.
The task of this commit is to create additional constraint that
checks if query results do not produce some random garbage values.
In case of vertex, geometry and tesselation queries it is enough
to perform the same tests few times with varying number of
input vertices and to check if query results are linear.
Linearity of query results is estimated using Pearson correlation
coefficient.

Affects tests:
dEQP-VK.query_pool.statistics_query.*

Components: Vulkan

VK-GL-CTS issue: 876

Change-Id: Ie58b53d2a35291f565ac9c88773a4c2fa5d89656

5 years agoTest input attachments in random descriptor sets test group
Ricardo Garcia [Fri, 5 Jul 2019 09:44:54 +0000 (11:44 +0200)]
Test input attachments in random descriptor sets test group

Add support for input attachments in the random descriptor sets tests
group. This will improve test coverage and allow us to test
vkUpdateDescriptorSetWithTemplate with
VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, which is a case known to be missing
coverage.

Note: every descriptorset_random test will get a new component in its
name with several variants.

Affected tests:
dEQP-VK.binding_model.descriptorset_random.*

Components: Vulkan
VK-GL-CTS issue: 1869

Change-Id: I64ac976f24c291884e71aafb0c058a9340b584c1

5 years agoTest buffer and image properties with external host memory
Ricardo Garcia [Tue, 16 Jul 2019 09:02:40 +0000 (11:02 +0200)]
Test buffer and image properties with external host memory

This commit adds image and buffer property checks to the existing
external host memory tests (VK_EXT_external_memory_host).

In addition, fix a couple of validation errors in the existing memory
synchronization test.

Affected tests:
dEQP-VK.memory.external_memory_host.*

Components: Vulkan
VK-GL-CTS issue: 1884

Change-Id: I95aa3701769cb97ac0aa8873db4a43a1bd9f3667

5 years agoAdd barrier to access chain workgroup tests
Martin Freebody [Mon, 22 Jul 2019 13:30:24 +0000 (14:30 +0100)]
Add barrier to access chain workgroup tests

These tests can complete with a failure to match expected
result in the last array element due to a race condition
with the parallel work-items.

The first work-item should set the last array element to 0
before a function to read the last array element is executed
on a parallel work-item.

Without the barrier it's possible on occasional test runs
to read uninitialised memory into the last array element.

Components: Vulkan

VK-GL-CTS issue: 1893

Affects:
dEQP-VK.spirv_assembly.instruction.compute.ptr_access_chain.*

Change-Id: I072299f7995b8f65e26195cfddd12f49cffcc9ff

5 years agoFix wrong image usage flags in external memory info tests
Slawomir Cygan [Tue, 6 Aug 2019 19:53:18 +0000 (21:53 +0200)]
Fix wrong image usage flags in external memory info tests

According to spec:
  "If usage includes VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, usage must
   also contain at least one of VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
   VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, or
   VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT."

This change adds adds COLOR, DEPTH or INPUT usage bit alongside TRANSIENT usage.

VK-GL-CTS Issue: 1913

Components: Vulkan

Change-Id: If7d4b3889f9b8709af09d448fdb24e61d493ebde
Affects: dEQP-VK.api.external.memory*info

5 years agoMake random number usage platform independent
Ari Suonpaa [Tue, 23 Apr 2019 11:57:47 +0000 (14:57 +0300)]
Make random number usage platform independent

Generating multiple random numbers in argument
list can happen in different order depending on
implementation. This change makes these happen
in the same order with all implementations.

Affects:

dEQP-VK.api.granularity.*
dEQP-VK.draw.basic_draw.*
dEQP-VK.protected_memory.*
dEQP-VK.glsl.builtin.function.common.*
dEQP-VK.glsl.builtin.function.pack_unpack.*
dEQP-VK.glsl.texture_gather.*
dEQP-VK.spirv_assembly.*
dEQP-GLES3*.functional.shaders.builtin_functions.common.*

Components: Vulkan, OpenGL, Framework

(cherry picked from commit 0106f01209fe7abb7f4daf029318a1de17844c48)

VK-GL-CTS issue: 1591

Change-Id: Iaaff9625fd331ed7184efd50b89fc835c701ac6f

5 years agoUpdate Opengl registry files
Daniel Koch [Mon, 29 Jul 2019 15:29:24 +0000 (11:29 -0400)]
Update Opengl registry files

from latest public registry

Component: OpenGL
VK-GL-CTS Issue: 1698

Change-Id: I0eda9b7af5d13689a141e67f968a697241f32e1f

5 years agoAdd VK_EXT_shader_subgroup_ballot gl_SubGroup*MaskARB tests
Samuel Iglesias Gonsálvez [Thu, 13 Jun 2019 09:13:45 +0000 (11:13 +0200)]
Add VK_EXT_shader_subgroup_ballot gl_SubGroup*MaskARB tests

Added tests:

   dEQP-VK.subgroups.ballot_mask.ext_shader_subgroup_ballot.*

Components: Vulkan
VK-GL-CTS issue: 1692

Change-Id: I2c2523ac6f8bb6ab13b084700137227dd6882850

5 years agoFixes 64bit random values for 32bit CTS build
Arkadiusz Sarwa [Wed, 24 Jul 2019 10:41:42 +0000 (12:41 +0200)]
Fixes 64bit random values for 32bit CTS build

In 32bit build a 64bit random value is assigned
to 32bit value what cause different path of execution.

Components: Vulkan
VK-GL-CTS Issue: 1895

Affects:
dEQP-VK.memory.pipeline_barrier.all.*

Change-Id: I1f51b8b30be9a70ae82326609bc382431b8f3b80

5 years agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Alexander Galazin [Wed, 24 Jul 2019 10:36:32 +0000 (12:36 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev

Change-Id: Ibfac59f75f2c4cfe34f96ff9391dc82f50dfd21e

5 years agoTesting for sampleShadingEnable
Boris Zanin [Fri, 5 Jul 2019 10:09:06 +0000 (12:09 +0200)]
Testing for sampleShadingEnable

Additional testing for sampleShadingEnable.

Add:
 * dEQP-VK.pipeline.multisample.min_sample_shading_enabled.*
 * dEQP-VK.pipeline.multisample.min_sample_shading_disabled.*

Components: vulkan

VK-GL-CTS issue: 1782

Change-Id: Idc7b5ab964a7f65fa6bb12a0dd9668fba2fa4bec

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master
Alexander Galazin [Wed, 24 Jul 2019 09:11:56 +0000 (11:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master

Change-Id: Ica3065aaf5d56791205074a44bcce66bfa26f6cd

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Wed, 24 Jul 2019 06:56:55 +0000 (08:56 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: I1e2517f737ee503fdd0f50c517270e35ed25b203

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Tue, 23 Jul 2019 18:02:50 +0000 (20:02 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I4ed438d3edefade78a1602957d3d26fa777175c2

5 years agodEQP-VK.graphicsfuzz.unreachable-loops-in-switch
Alastair Donaldson [Thu, 4 Jul 2019 22:14:06 +0000 (23:14 +0100)]
dEQP-VK.graphicsfuzz.unreachable-loops-in-switch

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.unreachable-loops-in-switch

Change-Id: If080620b03201031c0e7cf5af67fa30d0fee57d3

5 years agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Alexander Galazin [Mon, 22 Jul 2019 10:08:44 +0000 (12:08 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev

Change-Id: Ie2ea3810bf5148a50fc2ef2d6c9f675ffa9be7c3

5 years agoFix check-all under Windows
Boris Zanin [Fri, 19 Jul 2019 10:43:43 +0000 (12:43 +0200)]
Fix check-all under Windows

filter out original Vulkan header sources under Windows as well.

Change-Id: I441cc132af94c4df69d92a94f4731287d05d083c

5 years agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Alexander Galazin [Fri, 19 Jul 2019 14:10:23 +0000 (16:10 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev

Change-Id: I510f56d1a706648f1b8da895436df251ffecad3d

5 years agodEQP-VK.graphicsfuzz.return-in-loop-in-function
Alastair Donaldson [Fri, 5 Jul 2019 10:39:16 +0000 (11:39 +0100)]
dEQP-VK.graphicsfuzz.return-in-loop-in-function

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.return-in-loop-in-function

Change-Id: Ibcbc14690b61bfb5694154c350643430f779eedf

5 years agoIncrease mediump precision testing
Graeme Leese [Thu, 6 Jun 2019 15:16:00 +0000 (16:16 +0100)]
Increase mediump precision testing

The spec requires a relative precision of 2^-10 and a minimum exponent
of 2^-14, so use those for mediump testing. This tightens the
requirements over what was used before.

To compensate somewhat, where the float16_int8 extension previously
allowed more ULP, change the mediump tests to use that. In some cases
this means that tests are still getting slightly stricter, in some cases
slightly less strict.

Components: Vulkan
Affects: dEQP-VK.glsl.builtin.precision.*.mediump.*

Change-Id: I039f1eb551ff449b500972480bab961ae6ee63f6

5 years agoDon't generate then squash subnormal numbers
Graeme Leese [Tue, 9 Jul 2019 10:10:51 +0000 (11:10 +0100)]
Don't generate then squash subnormal numbers

The tests don't want subnormal numbers but were explicitly generating
them and then removing them again afterwards. For mediump tests values
the values that are subnormal in 16-bit float were not being removed
again causing issues on some implementations.

Components: Vulkan
Affects: dEQP-VK.glsl.builtin.precision_*

Change-Id: I6201bf28870bb601dae029eefb61b6924bc60016

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master
Alexander Galazin [Fri, 19 Jul 2019 13:26:37 +0000 (15:26 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master

Change-Id: I03a9826af64fb5624f7c53cb7d7880fdd19cfa45

5 years agoFix command line parameters processing of TestLog
Tony Zlatinski [Fri, 19 Jul 2019 00:04:44 +0000 (19:04 -0500)]
Fix command line parameters processing of TestLog

Change 7b7791a40f for issue 1666 has added functionality
to TestLog by adding extra parameters to the constructor.
The change, however, has patchied only one of the uses of the
class, breaking the other 3 uses of it. This has caused the
log flags to be wrong, and the new functionality introduced
by 7b7791a40f to not work, as expected.

This change fixes the rest of the locations and is adding one
more constructor for the TestLog class targeted for use by Android.

Components: Framework

VK-GL-CTS issue: 1887

Change-Id: I8d52d40ee5dffb120b8a4945b0f865c8f3e7b7dd

5 years agoInclude header that defines unique_ptr
Alexander Galazin [Thu, 18 Jul 2019 14:12:30 +0000 (16:12 +0200)]
Include header that defines unique_ptr

Add <memory> as some compilers otherwise don't see definition of std::unique_ptr

Components: Vulkan

Affects: some builds

VK-GL-CTS issue: 1872 (follow up)

Change-Id: If3eb42daa2d1d85af7b30bbf5afeed76bb31bd4b