platform/upstream/VK-GL-CTS.git
5 years agoMerge remote-tracking branch 'khronos/master' into deqp-dev
Chris Forbes [Thu, 6 Jun 2019 18:55:04 +0000 (11:55 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev

Change-Id: If46e902d09e87e4e2fabe9749ae7e8d95b537786

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Thu, 6 Jun 2019 15:49:37 +0000 (17:49 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: I593e042d8a7ac25a1d09b07d3a222fe51bef4ebf

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Thu, 6 Jun 2019 15:10:54 +0000 (17:10 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: Id4adb91216cbc973009a884cf29f1d6fa4412980

5 years agoHandle 1.0 vs 1.1 differences for VK_KHR_device_group
Joerg Wagner [Sun, 2 Jun 2019 16:11:57 +0000 (18:11 +0200)]
Handle 1.0 vs 1.1 differences for VK_KHR_device_group

Several entry points are expected to be enabled through
VK_KHR_device_group under Vulkan 1.0 but were moved to
VK_KHR_swapchain under Vulkan 1.1

Account for the subtle difference by taking the apiVersion
into account when checking extension entry point exposure.

Affects:

dEQP-VK.api.version_check.entry_points

Components: Framework, Vulkan

VK-GL-CTS issue: 1802

Change-Id: Ic47d53cd4dcac24282d054eeae671464509235c9

5 years agoCheck for toplevel sparse binding support bit in sparse pipeline tests
Chris Forbes [Mon, 3 Jun 2019 14:38:47 +0000 (07:38 -0700)]
Check for toplevel sparse binding support bit in sparse pipeline tests

VK-GL-CTS Issue: 1806
Components: Vulkan
Bug: b/130838280
Affects: dEQP-VK.pipeline.multisample.*sparse
Change-Id: I18f0960228e24dddcfee6d85c2c4ae647439a3c6

5 years agoAdd smoke test with unknown extension structure
Ricardo Garcia [Wed, 29 May 2019 15:28:00 +0000 (17:28 +0200)]
Add smoke test with unknown extension structure

Create a smoke test that uses a non-existant dummy extension structure
as the pNext field in many API calls to draw a basic rectangle. This
extension structure must be ignored by implementations and everything
must work as if a null pointer had been passed instead.

New tests:
dEQP-VK.api.smoke.triangle_ext_structs

Components: Vulkan
VK-GL-CTS issue: 1799

Change-Id: Ie39b9ec74940e273a19e6784d82dce02c1b0c7d1

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Thu, 6 Jun 2019 13:33:21 +0000 (15:33 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: I63bcf7eb6c51188f2098111ac80cac947e294bfa

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Thu, 6 Jun 2019 12:14:06 +0000 (14:14 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: Iacf5cbc1f08c49bf71e46b0959514ee9dcfeb21f

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Thu, 6 Jun 2019 11:25:43 +0000 (13:25 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: Ie2fcbf82b366c324d4b48ddeaffd0b5654cf2d60

5 years agoAdd a checker for vkQueuePresent returning VK_SUBOPTIMAL_KHR
Yiwei Zhang [Tue, 4 Jun 2019 02:18:13 +0000 (19:18 -0700)]
Add a checker for vkQueuePresent returning VK_SUBOPTIMAL_KHR

Components: Vulkan

VK-GL-CTS Issue: 1811

Affects: dEQP-VK.wsi.*
Affects: dEQP-VK.protected_memory.interaction.wsi.*

Change-Id: I81320fb9fee34c6d1ec006d0a66d482eb2f8fb7c

5 years agoFix more sampleShading issues in dEQP-VK.pipeline.multisample_shader_builtin.*
Chris Forbes [Mon, 3 Jun 2019 17:45:28 +0000 (10:45 -0700)]
Fix more sampleShading issues in dEQP-VK.pipeline.multisample_shader_builtin.*

The `pattern` case here does not require per-sample shading, and the
request for the feature is easily disabled. The `write` case could
potentially also run without per-sample shading, but is plumbed
differently, so I have not adjusted it to run per-pixel.

All remaining cases which used per-sample shading have been
adjusted to check for the sampleShading feature efore running.

VK-GL-CTS Issue: 1807
Affects: dEQP-VK.pipeline.multisample_shader_builtin.sample_mask.*
Components: Vulkan

Change-Id: Iab86205fa89ace6f55ad00ba3fc51e2745a28744

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Wed, 5 Jun 2019 11:18:31 +0000 (13:18 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: I6543c42627662dc3872bef9ada5fb523f1bddd03

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Wed, 5 Jun 2019 10:38:33 +0000 (12:38 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: Idfd64426bcfb647d1725a05becd0e0a30f59768b

5 years agoPython3 compatibility: Fix build_apk.py
Boris Zanin [Mon, 3 Jun 2019 12:14:17 +0000 (14:14 +0200)]
Python3 compatibility: Fix build_apk.py

The files build_apk need to be updated ti run under Python 3.

Components: Framework

VK-GL-CTS issue: 1665

Change-Id: I0c21e7114f2f4d55ebf31353c270cadfbe98dd96

5 years agoFix for SSBO offset alignment
Martin Freebody [Fri, 24 May 2019 13:30:32 +0000 (14:30 +0100)]
Fix for SSBO offset alignment

Affects: dEQP-VK.ssbo.unsized_array_length.*

Components: Vulkan

VK-GL-CTS issue: 1796

Change-Id: I8953c2a58fe90a3165aa3255e542336a0c6d0a1e
(cherry picked from commit eaa8fbf9c0e15e36e7c202947fbc13216761dbf6)

5 years agoFix for SSBO offset alignment
Martin Freebody [Fri, 24 May 2019 13:30:32 +0000 (14:30 +0100)]
Fix for SSBO offset alignment

Affects: dEQP-VK.ssbo.unsized_array_length.*

Components: Vulkan

VK-GL-CTS issue: 1796

Change-Id: I8953c2a58fe90a3165aa3255e542336a0c6d0a1e

5 years agoCompile only necessary shaders in texture tests
Ari Suonpaa [Fri, 10 May 2019 07:11:26 +0000 (10:11 +0300)]
Compile only necessary shaders in texture tests

Some of the texture tests were compiling multiple
fragment shaders. Now only the correct one is added.

Affects:

dEQP-VK.texture.filtering.*
dEQP-VK.texture.mipmap.*

Components: Vulkan

VK-GL-CTS issue: 1749
Change-Id: Icf959b0e2ba6f95584f37f5704aa831e54901b66

5 years agoUpdate glslang SPIR-V Tools and Headers
Alexander Galazin [Tue, 4 Jun 2019 07:14:01 +0000 (09:14 +0200)]
Update glslang SPIR-V Tools and Headers

Components: Framework

Affects: dEQP-VK.*

Change-Id: Ifda49531bdb250276bb903991739628af1c3845b

5 years agoPython3 compatibility: fix check_build_sanity.py
Boris Zanin [Mon, 20 May 2019 13:23:49 +0000 (15:23 +0200)]
Python3 compatibility: fix check_build_sanity.py

Update dependend scripts to allow check_build_sanity.py to
run under python 3.

Changes:
 * Fixed registry functions to avoid crashes
 * Hash calculation of downloaded xml files
 * Version check comparision function

After the changes check_build_sanity.py is able to run
under python 3 and generates same derivative source files
with exception of two following:
 * framework/egl/wrapper/eglwEnums.inl
 * framework/egl/wrapper/eglwEnumsC.inl

Five defines in these two files are different from previous.
These changes seems reasonable, because they remove
duplicated defines.

Under python 3 a lot of warnings and messages are issued by
check_build_sanity.py. These messages are not the result of
introduced changes, but a result of different handling of
badly configured logging facility in python 3. These messages
are hidden under python 2 with two oneline messages:

  No handlers could be found for logger "khr_util.registry"

These messages can be revealed under python 2 by adding
following line into khr_util/registry.py:

 * logging.basicConfig()

These messages are subject of another issue, probably
within OpenGL/ES subsystem.

Affects: dEQP-VK.*, dEQP-EGL.*, dEQP-GL*, builds

Components: Framework

VK-GL-CTS issue: 1665

Change-Id: I4e7eb1e90aa36c7142e824b7824bdc5e40d3e656

5 years agoMake check_all.py run on windows/python3
Jeff Bolz [Thu, 30 May 2019 01:58:08 +0000 (20:58 -0500)]
Make check_all.py run on windows/python3

This is mostly handling the more strict text vs binary file distinction
in python 3.x.

Components: Framework
VK-GL-CTS issue: 1665

Change-Id: If02ab24a825e7a5f3b2169d57a442c66f17eaf5c

5 years agoAdd VK_EXT_host_query_reset tests for transform feedback stream queries
Samuel Iglesias Gonsálvez [Mon, 25 Mar 2019 11:01:34 +0000 (12:01 +0100)]
Add VK_EXT_host_query_reset tests for transform feedback stream queries

New tests:

dEQP-VK.transform_feedback.simple.host_query_reset_*

Components: Vulkan
VK-GL-CTS issue: 1653

Change-Id: I9e4c6cc9aa57ed07d3ba68a56be4d5cbcddd4e6c
(cherry picked from commit 577b36b7e6e26ca9b69a8ba4eb1b72772fd074d4)

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Fri, 31 May 2019 12:04:50 +0000 (14:04 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: Iede8b9b3af634f8d4c1779345aef30a1d04556c3

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Fri, 31 May 2019 09:59:41 +0000 (11:59 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I9d51446c4b7c61633be355ded691af9785645802

5 years agoSplit incremental_present tests into more dimensions to avoid timeout
Yiwei Zhang [Thu, 16 May 2019 05:22:36 +0000 (22:22 -0700)]
Split incremental_present tests into more dimensions to avoid timeout

Components: Vulkan

VK-GL-CTS Issue: 1778

Affects: dEQP-VK.wsi.android.incremental_present.*

Bug: 132817706
Test: dEQP-VK.wsi.android.incremental_present.*

Change-Id: I54168fe61bda31654696fcfbd71b37ce29fc7ba4

5 years agoAutogenerate check(Device|Instance)Extensions
Piotr Byszewski [Thu, 23 May 2019 10:13:37 +0000 (12:13 +0200)]
Autogenerate check(Device|Instance)Extensions

This change generates lists of allowed device and instance extensions.

Components: Framework

VK-GL-CTS issue: 1769

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

Change-Id: I1e45b7367b562b28b89500ebf4242fcf6d985b0f

5 years agoFix build for GCC/Clang
Mika Väinölä [Fri, 31 May 2019 07:59:54 +0000 (10:59 +0300)]
Fix build for GCC/Clang

Add missing pointSize to AlphaToCoverageColorUnusedAttachmentTest.

Affects:
dEQP-VK.pipeline.multisample.alpha_to_coverage_unused_attachment.*

Components: Vulkan

VK-GL-CTS issue: 1800

Change-Id: Ibb9ad728e774fc780021f688e2076c70eb775121

5 years agoAdd alpha to coverage test with unused attachment
Ari Suonpaa [Thu, 9 May 2019 09:34:26 +0000 (12:34 +0300)]
Add alpha to coverage test with unused attachment

Added new tests where color output at location 0
has been set unused. Writing alpha value there
should control the coverage for pixels being
written to location 1.

New tests:

dEQP-VK.pipeline.multisample.alpha_to_coverage_unused_attachment.*

Components: Vulkan

VK-GL-CTS issue: 1586
Change-Id: If4bba7543659b08f6bdb7ff5349e1f5900e617fd

5 years agoAdd tests for VK_EXT_calibrated_timestamps
Ricardo Garcia [Fri, 5 Apr 2019 11:37:29 +0000 (13:37 +0200)]
Add tests for VK_EXT_calibrated_timestamps

Add tests to verify vkGetPhysicalDeviceCalibrateableTimeDomainsEXT and
vkGetCalibratedTimestampsEXT return reasonable values. The device time
domain is verified to be reasonable and consistent with
vkCmdWriteTimestamp, while host time domains are verified to be
reasonable and consistent with the corresponding host-native APIs.

New tests:

dEQP-VK.pipeline.timestamp.calibrated.*

Components: Vulkan
VK-GL-CTS issue: 1674

Change-Id: I3778fbd606a456a68431c6640d63b6966cdadb07

5 years agoFixes protected memory swapchain image format oom
Matthew Netsch [Tue, 28 May 2019 23:37:16 +0000 (19:37 -0400)]
Fixes protected memory swapchain image format oom

Some image format test cases (like the image extent cases)
could create configs too large for the protected heap

Components: Vulkan
VK-GL-CTS Issue: 1793

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

Change-Id: If98f43a85ff289d091e3bb7c75d998a666efac80

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Thu, 30 May 2019 13:01:59 +0000 (15:01 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: I50b6ed2e152156ab2145fd5fca586655f05f32e6

5 years agoSplit compute workload into multiple submissions
Matthew Netsch [Wed, 29 May 2019 17:13:34 +0000 (13:13 -0400)]
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: I4834dda74b95b802b2e39df42af9efd3c643208a

5 years agoFix vkGetPhysicalDevicePresentRectanglesKHR() call
Samuel Iglesias Gonsálvez [Fri, 12 Apr 2019 11:19:17 +0000 (13:19 +0200)]
Fix vkGetPhysicalDevicePresentRectanglesKHR() call

Removed the 'if' that forced the execution of this function when
present mode was
VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR, so now it can
be tested on other present modes.

Affected tests:

   dEQP-VK.wsi.*.surface.query_devgroup_present_modes

Components: Vulkan
VK-GL-CTS issue: 1428

Change-Id: Ife8820e4f15091e350acf60d758d983c26056e5f

5 years agoExtend image store/load tests
Toni Merilehti [Thu, 9 May 2019 12:04:44 +0000 (15:04 +0300)]
Extend image store/load tests

This CL extends the image store, load_store and format_reinterpret
tests with the extended storage image formats.

New tests:

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

Components: Vulkan

VK-GL-CTS issue: 1742
Change-Id: I000996a50cccd1f83b87ca087afb4139a9774e8a

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Thu, 30 May 2019 10:29:11 +0000 (12:29 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I7a134ecbc159b4f01dfbb3456ffd9c526a0d9f22

5 years agoAdd test for mandatory device features ( chapter 35.1 )
Pawel Ksiezopolski [Fri, 24 May 2019 13:08:17 +0000 (15:08 +0200)]
Add test for mandatory device features ( chapter 35.1 )

Support for some of the device features is mandatory as defined in specification ( chapter "35.1. Feature Requirements" )

New tests:

dEQP-VK.api.info.device.mandatory_features

Components: Vulkan

VK-GL-CTS issue: 1753

Change-Id: Ie5e7b502011b2e5a8ceafec05f9b1e89631df336

5 years agoRequire independentBlend in write mask tests
Toni Merilehti [Tue, 28 May 2019 10:18:53 +0000 (13:18 +0300)]
Require independentBlend in write mask tests

dEQP-VK.renderpass.*.attachment_write_mask.* tests use different
VkPipelineColorBlendAttachmentState settings for individual
attachments and therefore require independentBlend feature.

Affects:

dEQP-VK.renderpass.*.attachment_write_mask.*

Components: Vulkan

VK-GL-CTS issue: 1774

Change-Id: I6e9e6f052c76c32205c19583e47f4828e218bb51

5 years agoRequire variablePointersStorageBuffer feature in pointer_parameter tests
Chris Forbes [Tue, 28 May 2019 16:32:39 +0000 (09:32 -0700)]
Require variablePointersStorageBuffer feature in pointer_parameter tests

These tests declare OpCapability VariablePointersStorageBuffer but don't
check for the feature.

Components: Vulkan
Affects: dEQP-VK.spirv_assembly.instruction.graphics.pointer_parameter.buffer_memory_variable_pointers*
VK-GL-CTS Issue: 1792

Change-Id: I81fb83b473c484b151caf212ecd2348c72494f1d

5 years agoUse square dimensions for CUBE_COMPATIBLE 2D images
Slawomir Cygan [Mon, 27 May 2019 10:53:31 +0000 (12:53 +0200)]
Use square dimensions for CUBE_COMPATIBLE 2D images

VK-GL-CTS Issue: 1789

Components: Vulkan

Affects: dEQP-VK.api.image_clearing.core.*_attachment.cube_*

Change-Id: I17fd12d1941f44e8c7393b1e37f3c59731b1f3a0

5 years agoFixes precise occlusion query tests
Matthew Netsch [Thu, 23 May 2019 13:06:45 +0000 (09:06 -0400)]
Fixes precise occlusion query tests

Individual test cases were not isolated
so they interfered with each other

Components: Vulkan
VK-GL-CTS Issue: 1784

Affects:
dEQP-VK.query_pool.occlusion_query.*precise*

Change-Id: I6ad422612c80c6aa5efc90fd90e0e7ce91e9f8bb

5 years agoUnify getShaderStageName helper
Ilkka Saarelainen [Wed, 22 May 2019 10:25:49 +0000 (13:25 +0300)]
Unify getShaderStageName helper

Clean out helper functions used to create shader stage
and precision names.

Note: affects only the test case name generation.

Affects:

dEQP-VK.ycbcr.format.*
dEQP-VK.glsl.builtin.function.*
dEQP-VK.protected_memory.ssbo.ssbo_atomic.*

Components: Vulkan, Framework, OpenGL

VK-GL-CTS issue: 1736

Change-Id: Id326c3c241ecf1a60c0dda3ee8c31b155114fc3c

5 years agoPython3 compatibility: end-of-lines
Boris Zanin [Mon, 20 May 2019 13:17:44 +0000 (15:17 +0200)]
Python3 compatibility: end-of-lines

Python 3 writing text files silently replaces \n with \r\n
under Windows. Text formatted files now need to be written
in binary mode to avoid end-of-lines modification.

Components: Framework

VK-GL-CTS issue: 1665

Change-Id: I11e1521d815362b2263a809605f1e85c6dc27765

5 years agoAdd more tests for YCbCr samplers
Pawel Ksiezopolski [Thu, 28 Mar 2019 12:51:08 +0000 (13:51 +0100)]
Add more tests for YCbCr samplers

Additional tests for sampler bindings greater than 0 and for arrays of samplers.

New tests:
 * dEQP-VK.ycbcr.conversion.*

Affects tests:
 * dEQP-VK.ycbcr.conversion.*

Components: Vulkan

VK-GL-CTS issue: 1419

Change-Id: I23cdba3013e62015d449ae6c31e1348398a65c01

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Fri, 24 May 2019 10:22:17 +0000 (12:22 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: I3b92d27be116c6cbde9c6b5f712733aaede26c5b

5 years agoAdd tests for EXT_separate_stencil_usage
Kaori Tomihara [Wed, 24 Apr 2019 09:27:39 +0000 (05:27 -0400)]
Add tests for EXT_separate_stencil_usage

This change added tests for VK_EXT_separate_stencil_usage by extending
the existing tests for sampling and input attachment.

New Tests:

dEQP-VK.pipeline.sampler.separate_stencil_usage.*
dEQP-VK.renderpass.*.multisample.separate_stencil_usage.*
dEQP-VK.renderpass2.*.multisample.separate_stencil_usage.*

Components: Vulkan, Framework
VK-GL-CTS issue: 1691

Change-Id: Ia2b7516ef6a0bf40c17656f3b28d62e1f8ea65f8

5 years agoAdd barriers to read query data after copy
Samuel Iglesias Gonsálvez [Fri, 17 May 2019 06:18:41 +0000 (08:18 +0200)]
Add barriers to read query data after copy

When the query pool results that were copied out to a buffer, a barrier
should be placed to ensure the data is written before the host read it,
specially if the memory allocated is non-host-coherent. The invalidation
of the mapped memory is not enough in that case.

Affected tests:

  dEQP-VK.query_pool.occlusion_query.copy*
  dEQP-VK.pipeline.timestamp.transfer_tests.*copy_query_pool_results*
  dEQP-VK.pipeline.timestamp.misc_tests.two_cmd_buffers_primary*

Components: Vulkan
VK-GL-CTS issue: 1756

Change-Id: I115c9e62f1b369e0f1ad9a30f9a6982c876beb74

5 years agoUse separate filtering precision for each channel
Ari Suonpaa [Fri, 3 May 2019 08:13:51 +0000 (11:13 +0300)]
Use separate filtering precision for each channel

Texture filtering tests were using the same precision
for each channel even when the channel bit depths
differed. Now the precisions are calculated based on
the depth of each channel.

Affects:

dEQP-VK.texture.explicit_lod.*.formats.*_linear
dEQP-VK.ycbcr.conversion.*
dEQP-VK.protected_memory.interaction.ycbcr.*

Components: Vulkan

VK-GL-CTS issue: 1733
Change-Id: I0af8302743732b7a8d7d4e003d50b0f8cdc2b86f

5 years agoAdd tests for VK_EXT_external_memory_dma_buf
Ricardo Garcia [Fri, 26 Apr 2019 08:45:38 +0000 (10:45 +0200)]
Add tests for VK_EXT_external_memory_dma_buf

VK_EXT_external_memory_dma_buf defines a new type of external memory
corresponding to a file descriptor for a Linux dma_buf called
VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT. It is similar in nature
to VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT.

New tests:
dEQP-VK.api.external.memory.dma_buf.*

Components: Vulkan
VK-GL-CTS issue: 1684

Change-Id: I368f2b7e2c8a9c63c5234d68ff01aa5f6d4355ca

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Fri, 24 May 2019 08:50:49 +0000 (10:50 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: Iaf1958f4db9588eba3ea77b4a1e7d41b4fc20c13

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Fri, 24 May 2019 07:48:11 +0000 (09:48 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: Ided1b0de70eddb65bb70983ed341435dc3a99621

5 years agoGenerate all DeviceFeatures related code
Piotr Byszewski [Thu, 16 May 2019 10:31:20 +0000 (12:31 +0200)]
Generate all DeviceFeatures related code

This patch re-enables new DeviceFeatures and generates inl files for
vk::Context and DefaultDevice containing device features related
accessors.

Affects: dEQP-VK.*

Components: Framework

Change-Id: I71c8f5cbe2d06075e59f0c94e1c94691443d870b

5 years agoWaiver for device-scope core memory model tests.
Jeff Bolz [Fri, 7 Dec 2018 01:38:40 +0000 (19:38 -0600)]
Waiver for device-scope core memory model tests.

https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/1356

Components: Vulkan
Affects: dEQP-VK.memory_model.*core11*.device.*
Change-Id: Ibf5d1ca0232471246ac16a9491d9ae54d87c74a8

5 years agoAdd SPIR-V unused variable tests
Ricardo Garcia [Thu, 9 May 2019 08:01:37 +0000 (10:01 +0200)]
Add SPIR-V unused variable tests

These tests check everything works when a shader contains references to
variables that have a binding which is not present in the pipeline
layout. For the test to be legal, the variable cannot be used from the
entry point. The tests have two variants: either the variable is simply
unused or the variable is used by a function that is not part of the
entry point call tree.

New tests:
dEQP-VK.spirv_assembly.instruction.*.unused_variables.*

Components: Vulkan
VK-GL-CTS issue: 1038

Change-Id: Ib54c79da4d164e494c0004f0cb1503783e38bc70

5 years agoPython3 compatibility: explicit imports
Boris Zanin [Mon, 20 May 2019 13:14:43 +0000 (15:14 +0200)]
Python3 compatibility: explicit imports

Python 3 require explicit import module names.

Components: Framework

VK-GL-CTS issue: 1665

Change-Id: I8c373cb2b8527eeb032d6e11f00dff65e951ab3a

5 years agoPython3 compatibility: compiler requirements
Boris Zanin [Mon, 20 May 2019 13:00:40 +0000 (15:00 +0200)]
Python3 compatibility: compiler requirements

Python 3 disallows mix of spaces and tabs in indent and also
needs exceptions in a new layout.

Components: Framework

VK-GL-CTS issue: 1665

Change-Id: I82c596293ea500f7113cb855921f4e75c35beff8

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Wed, 22 May 2019 12:51:25 +0000 (14:51 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: I06a76c86b0cb050bfcb9fba7c81715a313e9581e

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Wed, 22 May 2019 10:21:27 +0000 (12:21 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: Ibdcd0cae47c3eca35db283b67a62e21de81e5cf3

5 years agoAdd GeometryPointSize feature check
Ilkka Saarelainen [Wed, 15 May 2019 12:01:14 +0000 (15:01 +0300)]
Add GeometryPointSize feature check

Some tests were using gl_PointSize without checking if the
shaderTessellationAndGeometryPointSize feature is supported and enabled.

This CL adds the feature checks to those tests. If the feature is not
supported/enabled, an alternative geometry shader code without
gl_PointSize will be used.

Affects:

dEQP-VK.glsl.*geometry
dEQP-VK.ycbcr.*geometry*
dEQP-VK.query_pool.*
dEQP-VK.transform_feedback.simple.streams_pointsize*

Components: Vulkan

VK-GL-CTS issue: 1763

Change-Id: If58bb5129144bae8d51dca84a3d0c89b46be1343
(cherry picked from commit d4b80f34b70ae497b6bb0573859209ae28197a35)

5 years agoAdd GeometryPointSize feature check
Ilkka Saarelainen [Wed, 15 May 2019 12:01:14 +0000 (15:01 +0300)]
Add GeometryPointSize feature check

Some tests were using gl_PointSize without checking if the
shaderTessellationAndGeometryPointSize feature is supported and enabled.

This CL adds the feature checks to those tests. If the feature is not
supported/enabled, an alternative geometry shader code without
gl_PointSize will be used.

Affects:

dEQP-VK.glsl.*geometry
dEQP-VK.ycbcr.*geometry*
dEQP-VK.query_pool.*
dEQP-VK.transform_feedback.simple.streams_pointsize*

Components: Vulkan

VK-GL-CTS issue: 1763

Change-Id: If58bb5129144bae8d51dca84a3d0c89b46be1343
(cherry picked from commit d4b80f34b70ae497b6bb0573859209ae28197a35)

5 years agoPython3 compatibility: print function
Boris Zanin [Mon, 20 May 2019 12:42:42 +0000 (14:42 +0200)]
Python3 compatibility: print function

Replace statement-style calls with function-style calls
for print python operator/function.

Components: Framework

VK-GL-CTS issue: 1665

Change-Id: I46e3452f80124f37064f4b0a335e1b3201ead9dd

5 years agoUpdate SPIR-V Tools/Headers, glslang
Alexander Galazin [Wed, 22 May 2019 07:27:33 +0000 (09:27 +0200)]
Update SPIR-V Tools/Headers, glslang

Components: Framework

Affects: dEQP-VK.*

Change-Id: I3779d9584e5cf0a4d30b95a4fb23872acbc622bf

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Wed, 22 May 2019 06:46:41 +0000 (08:46 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: Iaaff1bd558b7938a73c553c312f8271a8e288cd3

5 years agoRecord command line arguments in .qpa file
Pawel Ksiezopolski [Tue, 30 Apr 2019 13:24:37 +0000 (15:24 +0200)]
Record command line arguments in .qpa file

Command line parameters are written to .qpa file in sessionInfo section.

Components: Framework

VK-GL-CTS issue: 1666

Change-Id: If8fb1ce85408141362f046c318016039e06e228a

5 years agoRemove frexp tests from the list of test issues
Ricardo Garcia [Mon, 13 May 2019 11:24:45 +0000 (13:24 +0200)]
Remove frexp tests from the list of test issues

After fixing VK-GL-CTS issue #1762, frexp function tests no longer have
any issues and should be run on every implementation.

Affected tests:
dEQP-VK.glsl.builtin.function.common.frexp.float_highp_vertex
dEQP-VK.glsl.builtin.function.common.frexp.vec2_highp_vertex
dEQP-VK.glsl.builtin.function.common.frexp.vec3_highp_vertex
dEQP-VK.glsl.builtin.function.common.frexp.vec4_highp_vertex

Components: Vulkan
VK-GL-CTS issue: 1359

Change-Id: I92cf1682a50c39206171cb2698c86b793bb06214

5 years agoCheck sampleRateShading on sample shading tests
Ricardo Garcia [Fri, 17 May 2019 12:08:59 +0000 (14:08 +0200)]
Check sampleRateShading on sample shading tests

The physical device feature sampleRateShading must be available in order
to set sampleShadingEnable to true inside
VkPipelineMultisampleStateCreateInfo structures.

Note this commit renames one of the tests for consistency.

Removed tests:
dEQP-VK.glsl.builtin_var.fragcoord_msaa.64-bit

New tests:
dEQP-VK.glsl.builtin_var.fragcoord_msaa.64_bit

Affected tests:
dEQP-VK.pipeline.multisample_shader_builtin.sample*
dEQP-VK.glsl.builtin_var.fragcoord_msaa.*

Components: Vulkan
VK-GL-CTS issue: 1462

Change-Id: I9012491d18c430c1c94091490d28d9e5f1402a68

5 years agoAdd feature checks to shader builtin tests
Toni Merilehti [Wed, 15 May 2019 14:49:42 +0000 (17:49 +0300)]
Add feature checks to shader builtin tests

Some shader builtin tests use SampleId and SamplePosition BuiltIns
in shaders, which both require the SampleRateShading OpCapability
and the sampleRateShading Vulkan feature. This CL adds the missing
feature checks when required by the shaders.

Affects:

dEQP-VK.pipeline.multisample_shader_builtin.sample_id.*
dEQP-VK.pipeline.multisample_shader_builtin.sample_position.*

Components: Vulkan

VK-GL-CTS issue: 1744

Change-Id: I4557b5cd79191f7ca1202562416d12d3b1d8ce60
(cherry picked from commit 3f2ce1e5bcf568fe0a65a4ed638e0589b8694482)

5 years agoAdd feature checks to shader builtin tests
Toni Merilehti [Wed, 15 May 2019 14:49:42 +0000 (17:49 +0300)]
Add feature checks to shader builtin tests

Some shader builtin tests use SampleId and SamplePosition BuiltIns
in shaders, which both require the SampleRateShading OpCapability
and the sampleRateShading Vulkan feature. This CL adds the missing
feature checks when required by the shaders.

Affects:

dEQP-VK.pipeline.multisample_shader_builtin.sample_id.*
dEQP-VK.pipeline.multisample_shader_builtin.sample_position.*

Components: Vulkan

VK-GL-CTS issue: 1744

Change-Id: I4557b5cd79191f7ca1202562416d12d3b1d8ce60

5 years agoCheck for imageCubeArray feature in image tests
Chris Forbes [Fri, 17 May 2019 15:48:42 +0000 (08:48 -0700)]
Check for imageCubeArray feature in image tests

Components: Vulkan
Affects: dEQP-VK.image.*cube_array*
VK-GL-CTS Issue: #1781

Change-Id: Idbf3e96481336820520a46293ca3eaf74b21654d

5 years agoCheck for required features in memory model tests
Chris Forbes [Thu, 16 May 2019 00:18:47 +0000 (17:18 -0700)]
Check for required features in memory model tests

All of these tests expect to be able to write to storage buffers; check
for the vertexPipelineStoresAndAtomics or fragmentStoresAndAtomics
features as appropriate.

VK-GL-CTS Issue: 1777
Components: Vulkan
Affects: dEQP-VK.memory_model.*

Change-Id: I51adeda82ba7af22368c239a6abfc481479700f1

5 years agoFix image sizes for formats that need a multiple of 2.
Bas Nieuwenhuizen [Thu, 2 May 2019 21:13:14 +0000 (23:13 +0200)]
Fix image sizes for formats that need a multiple of 2.

All these have in their format definition something like

"Images in this format must be defined with a width that is a multiple
 of two."

in their format definition.

This patch makes sure we actually use even sizes for images with these
formats.

It is not ideal that I have to hardcode these lists but I don't know a
better source to get them from.

Affects:

dEQP-VK.api.invariance.random

Components: Vulkan

VK-GL-CTS issue: 1766

Change-Id: Ie19583db56e7ae483136e1fb4651ae625efb9c02

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Mon, 20 May 2019 12:04:25 +0000 (14:04 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: I703896cbce7472a65a7cc8d87d955b6b10ea3691

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Mon, 20 May 2019 10:24:42 +0000 (12:24 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I7cb87c9d21e2ba725b199ee59663ece150333993

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Mon, 20 May 2019 09:40:23 +0000 (11:40 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I782d2f2d769d92e11f7e558cdefb56d187fe53e6

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Mon, 20 May 2019 08:58:43 +0000 (10:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: I0fd601c9fc32f66eb7e45322801a930d4f33c4dc

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Mon, 20 May 2019 08:12:17 +0000 (10:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: Ib38bd02e2ed4c74ee845e19eb25b8de05fb0e312

5 years agoCheck for largePoints feature and add 1px test variant
Ari Suonpaa [Tue, 30 Apr 2019 10:36:09 +0000 (13:36 +0300)]
Check for largePoints feature and add 1px test variant

Pipeline multisample tests were using point size of 3
without checking for largePoints feature. Now the feature
is checked and a 1 pixel variant is also added.

Affects:

dEQP-VK.pipeline.multisample.*.primitive_point

New tests:

dEQP-VK.pipeline.multisample.*.primitive_point_1px

Components: Vulkan

VK-GL-CTS issue: 1739
Change-Id: I0eef68b8194a1026a98b19579d1d3c1b7f9c9cc7
(cherry picked from commit c382ec855438509b201c4aa5eff6b730534f2f3c)

5 years agoRemove incorrect unroll_dont_unroll test
Boris Zanin [Thu, 16 May 2019 15:23:19 +0000 (17:23 +0200)]
Remove incorrect unroll_dont_unroll test

According SPIR-V validator: Unroll and DontUnroll
loop controls must not both be specified.

Remove tests:
 * dEQP-VK.spirv_assembly.instruction.compute.loop_control.unroll_dont_unroll

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

VK-GL-CTS issue: 1779

Change-Id: Ib799f96a290bb08df1175f1dc6f6d212314665af

5 years agoAdd tests for VK_EXT_descriptor_indexing
Michal Jakubek [Thu, 27 Dec 2018 09:54:56 +0000 (09:54 +0000)]
Add tests for VK_EXT_descriptor_indexing

Adds:
dEQP-VK.descriptor_indexing.*

Components: Vulkan, Framework

VK-GL-CTS issue: 1003

Change-Id: Ia9790d6e60997aae4f448e2a0a98302cd5189bcd
(cherry picked from commit b20c2824cd8c0fe8e6bffd70cb65062f91accee3)

5 years agoAdd tests for VK_EXT_pipeline_creation_feedback extension
Samuel Iglesias Gonsálvez [Fri, 17 May 2019 11:30:33 +0000 (13:30 +0200)]
Add tests for VK_EXT_pipeline_creation_feedback extension

Tests implement the following for both compute and graphics pipelines.
They create a pipeline cache and checks the pipeline creation feedback
for three different pipelines: first pipeline should not hit the cache,
second pipeline is the same than the first one, third pipeline is a
pipeline derivative from the first one.

Then they verify that the creation feedback for all of the pipelines is
valid, the first pipeline did not hit the cache and that first and
second pipelines are not setting
VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT as
they are not pipeline derivatives.

Also, if pPipelineStageCreationFeedbacks for each pipeline and stage is
not valid, check that none of the flags is set.

They also print to the test log the content of the
pPipelineCreationFeedback for each pipeline and, if
pPipelineStageCreationFeedbacks for each pipeline and stage is valid,
its content too.

New tests:

dEQP-VK.pipeline.creation_feedback.*

Components: Vulkan
VK-GL-CTS issue: 1671

Change-Id: I5e8b728bd83c256b3b4f084c6d0840a132afbcae

5 years agoAdd GeometryPointSize feature check
Ilkka Saarelainen [Wed, 15 May 2019 12:01:14 +0000 (15:01 +0300)]
Add GeometryPointSize feature check

Some tests were using gl_PointSize without checking if the
shaderTessellationAndGeometryPointSize feature is supported and enabled.

This CL adds the feature checks to those tests. If the feature is not
supported/enabled, an alternative geometry shader code without
gl_PointSize will be used.

Affects:

dEQP-VK.glsl.*geometry
dEQP-VK.ycbcr.*geometry*
dEQP-VK.query_pool.*
dEQP-VK.transform_feedback.simple.streams_pointsize*

Components: Vulkan

VK-GL-CTS issue: 1763

Change-Id: If58bb5129144bae8d51dca84a3d0c89b46be1343

5 years agoMake validation function more robust
Boris Zanin [Thu, 14 Mar 2019 14:58:34 +0000 (15:58 +0100)]
Make validation function more robust

This change modifies validateSpirV function.
Code should expect spvBinaryToText can leave some
parameters uninitialized (at least pText).
Also expect some other functions to return
uninitialized results (spvValidatorOptionsCreate,
spvContextCreate).

Affects:
 * dEQP-VK.*

Components: Framework, Vulkan

VK-GL-CTS issue: 1645

Change-Id: Ia5af2c5451d33247af2b8934fe4e5391badc8163

5 years agoDon't set sampleShadingEnable in dEQP-VK.pipeline.framebuffer_attachment.*
Chris Forbes [Wed, 15 May 2019 17:38:01 +0000 (10:38 -0700)]
Don't set sampleShadingEnable in dEQP-VK.pipeline.framebuffer_attachment.*

These tests don't need per-sample shading, and didn't check for whether
it was supported by the device.

Components: Vulkan
Affects: dEQP-VK.pipeline.framebuffer_attachment.*ms
VK-GL-CTS Issue: 1776
Change-Id: Ic8477262410e1531c1acabe494c2cf64c199dd6b

5 years agoAdd multiview tests iterating with VK_EXT_vertex_attribute_divisor
Samuel Iglesias Gonsálvez [Tue, 7 May 2019 11:11:11 +0000 (13:11 +0200)]
Add multiview tests iterating with VK_EXT_vertex_attribute_divisor

Tests are the same than the existing vertex attribute divisor ones but
adding 2 views that are rendering the same scene. Expected result is
the same for both views.

Added tests:

   dEQP-VK.draw.instanced.*_multiview

Components: Vulkan
VK-GL-CTS issue: 1290

Change-Id: I1cfc3868d56c6c7ce02a3a2d7b07107acea59759

5 years agoCheck for largePoints feature and add 1px test variant
Ari Suonpaa [Tue, 30 Apr 2019 10:36:09 +0000 (13:36 +0300)]
Check for largePoints feature and add 1px test variant

Pipeline multisample tests were using point size of 3
without checking for largePoints feature. Now the feature
is checked and a 1 pixel variant is also added.

Affects:

dEQP-VK.pipeline.multisample.*.primitive_point

New tests:

dEQP-VK.pipeline.multisample.*.primitive_point_1px

Components: Vulkan

VK-GL-CTS issue: 1739
Change-Id: I0eef68b8194a1026a98b19579d1d3c1b7f9c9cc7

5 years agoCheck queries unavailable with reset and copy
Ricardo Garcia [Thu, 4 Apr 2019 08:05:38 +0000 (10:05 +0200)]
Check queries unavailable with reset and copy

If running vkCmdResetQueryPool() just before using
vkCmdCopyQueryPoolResults(), the query should be unavailable. This can
be checked by asking for the availability status.

New tests:

dEQP-VK.pipeline.timestamp.misc_tests.reset_query_before_copy
dEQP-VK.query_pool.occlusion_query.copy_reset_*
dEQP-VK.query_pool.statistics_query.reset_before_copy.*

Components: Vulkan
VK-GL-CTS issue: 1721

Change-Id: I01204906c19a515b73e228ee582bbeadaed95809

5 years agoFix spelling of "preserve" in float controls tests
Graeme Leese [Wed, 15 May 2019 17:11:47 +0000 (18:11 +0100)]
Fix spelling of "preserve" in float controls tests

Change-Id: I9995cb1aace758452eb8d677eb67080063c5c848

5 years agoDon't pass YcbcrConversion objects when not used
Graeme Leese [Wed, 8 May 2019 11:51:50 +0000 (12:51 +0100)]
Don't pass YcbcrConversion objects when not used

ImageViews created with SamplerYcbcrConversions are only allowed to be
used with immutable samplers, which these are not.

Components: Vulkan
VK-GL-CTS Issue: 1767
Affects: dEQP-VK.ycbcr.plane_view.*

Change-Id: Ibc11b09c0b063154dc32ee4bc61c6b099ea36507

5 years agoVary vertex buffer stride in pipeline barrier tests
Ricardo Garcia [Tue, 30 Apr 2019 14:19:54 +0000 (16:19 +0200)]
Vary vertex buffer stride in pipeline barrier tests

Pipeline barrier tests were using vertex buffers with a stride of 2
bytes, which is not supported by Vulkan Portability on Metal due to
Metal forcing the vertex stride to be a multiple of 4.

This prevented some pipeline barrier tests from being run on Vulkan
Portability on Metal, even if they were not actually testing vertex
buffers.

This commit makes vertex buffers in pipeline barrier tests be used with
both strides of 2 and 4 bytes. Tests with stride 2 can be skipped under
Vulkan Portability on Metal knowing the same pipeline barrier test will
also run with stride 4. Test coverage is not decreased because stride 2
tests are preserved.

Removed tests:
dEQP-VK.memory.pipeline_barrier.*_vertex_buffer.1024
dEQP-VK.memory.pipeline_barrier.*_vertex_buffer.8192
dEQP-VK.memory.pipeline_barrier.*_vertex_buffer.65536
dEQP-VK.memory.pipeline_barrier.*_vertex_buffer.1048576
dEQP-VK.memory.pipeline_barrier.all.1024
dEQP-VK.memory.pipeline_barrier.all.8192
dEQP-VK.memory.pipeline_barrier.all.65536
dEQP-VK.memory.pipeline_barrier.all.1048576
dEQP-VK.memory.pipeline_barrier.all_device.1024
dEQP-VK.memory.pipeline_barrier.all_device.8192
dEQP-VK.memory.pipeline_barrier.all_device.65536
dEQP-VK.memory.pipeline_barrier.all_device.1048576

New tests:
dEQP-VK.memory.pipeline_barrier.*vertex_buffer_stride*
dEQP-VK.memory.pipeline_barrier.*vertex_buffer_stride*

Components: Vulkan
VK-GL-CTS issue: 1201

Change-Id: If6ecc653085b4259977d94bb2fed3e43b9109f8a

5 years agoChange spir-v optimizer recipes
Jari Komppa [Tue, 30 Apr 2019 12:30:35 +0000 (15:30 +0300)]
Change spir-v optimizer recipes

This change changes the spir-v optimizer recipes by removing all the
existing ones and replacing them with a set provided by spirv-opt:
optimize performance or optimize size. Other recepies can be added later
if needed.

This does not affect any tests directly as the optimizer is not used by
default. It affects all tests when in use.

Affects: none

Components: Vulkan, Framework

VK-GL-CTS issue: 1741

Change-Id: Id7278fcd479ac2511a474f19c3d25bd23d943944

5 years agoFix API usage errors in subgroups.* tests
Ilkka Saarelainen [Wed, 27 Mar 2019 10:52:42 +0000 (12:52 +0200)]
Fix API usage errors in subgroups.* tests

Many subgroup tests were missing gl_PointSize in vertex and geometry
shaders. Also some tests were using VK_IMAGE_LAYOUT_UNDEFINED image
layout but the command buffer expects VK_IMAGE_LAYOUT_GENERAL. These
errors were caught by validation layers.

This CL adds the missing gl_PointSizes to the shaders and transitions
the images to the correct image layout.

Affects:

dEQP-VK.subgroups.*

Components: Vulkan

VK-GL-CTS issue: 1644

Change-Id: Ie0e0ab8bcfeedc4faba847e004908ce5eaadceb0

5 years agoFix stack underflow in incremental present test
Lingfeng Yang [Fri, 8 Feb 2019 15:36:00 +0000 (07:36 -0800)]
Fix stack underflow in incremental present test

This uses the current object's m_queueFamilyIndex instead of a queue
family index that is on the stack, avoiding using a stale stack address
when the test runs.

VK-GL-CTS issue: 1585

Affects:
dEQP-VK.wsi.*.incremental_present.*

Components: Vulkan

Change-Id: I80228651b799d3444676cdcbf5cc845bcb195fe9
(cherry picked from commit a268922558ed0c353a7d8b6845f8d6279b72af29)

5 years agoAdd *_MAX_ENUM to enum definitions
Piotr Byszewski [Tue, 14 May 2019 13:00:56 +0000 (15:00 +0200)]
Add *_MAX_ENUM to enum definitions

Components: Framework

VK-GL-CTS issue: 1700

Affects: *

Change-Id: I9d94342c306e2fbf0914fb31fc361dec8146a7c7

5 years agoFix shader common function tests
Ricardo Garcia [Thu, 2 May 2019 14:25:40 +0000 (16:25 +0200)]
Fix shader common function tests

Shader common function tests were not correctly filling values on some
input buffers and not taking into account implementations may ignore the
sign of zeros when doing optimizations on the SPIR-V code.

Affected tests:
dEQP-VK.glsl.builtin.function.common.*

Components: Vulkan
VK-GL-CTS issue: 1359, 1762

Change-Id: Ic27a298e32f7e9e7a9c50ac340ee9d095f1559f9

5 years agoUpdate glslang, SPIRV-Tools/Headers
Alexander Galazin [Fri, 10 May 2019 10:09:49 +0000 (12:09 +0200)]
Update glslang, SPIRV-Tools/Headers

Components: Framework

Affets: dEQP-VK.*

Change-Id: I6487bfa7eac58063269ca21d667ab708d63fd723

5 years agoUpdate fetch_sources.py to Python 3
Alexander Galazin [Fri, 10 May 2019 10:06:12 +0000 (12:06 +0200)]
Update fetch_sources.py to Python 3

Components: Framework

Change-Id: I7f75a084e5128b1a19be7649a06a315e91a36688
(cherry picked from commit 9c4f100a056b084876e874a1b115192225b9a61a)

5 years agoUpdate fetch_sources.py to Python 3
Alexander Galazin [Fri, 10 May 2019 10:06:12 +0000 (12:06 +0200)]
Update fetch_sources.py to Python 3

Components: Framework

Change-Id: I7f75a084e5128b1a19be7649a06a315e91a36688

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Fri, 10 May 2019 08:27:27 +0000 (10:27 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: I4ef987d75f3e0a595ef5ed56a68b237285cedbb8

5 years agoTests for VK_KHR_uniform_buffer_standard_layout
Graeme Leese [Mon, 14 Jan 2019 19:01:56 +0000 (19:01 +0000)]
Tests for VK_KHR_uniform_buffer_standard_layout

Enables the existing std430 UBO tests based on support for the
extension.

Components: Vulkan
Affects: dEQP-VK.ubo.*.std430.*

Change-Id: I224377696979eea0ac8ca0b3f190414909ddc0a8
(cherry picked from commit 00a15d59264d0853c5d9ef2a0178293f536a3d29)

5 years agoFix run command for Windows
Samuel Iglesias Gonsálvez [Fri, 10 May 2019 06:32:33 +0000 (08:32 +0200)]
Fix run command for Windows

In Windows the directory separator is backslash for running commands.

Components: Vulkan

Change-Id: I917dd7c05a6d4a085130c1ec58945d4e03d3dc85

5 years agoWhitelist Vulkan CTS 1.1.4.1
Alexander Galazin [Fri, 10 May 2019 06:14:38 +0000 (08:14 +0200)]
Whitelist Vulkan CTS 1.1.4.1

Components: Vulkan

Affects: dEQP-VK.api.driver_properties.properties

Change-Id: Iad3e3c27e48585dc2143f8bf800a4ed56d9f2f01

5 years agoUpdate gen_framework_c.py for python3
Alexander Galazin [Thu, 9 May 2019 18:40:58 +0000 (20:40 +0200)]
Update gen_framework_c.py for python3

Components: Framework

Change-Id: If332d1f79f6f861fd49d16ee700967bdcf80b598