Sebastiano Cucinotta [Thu, 20 Jun 2019 13:14:13 +0000 (15:14 +0200)]
Add flags to check whether tests are supported
The function checkSupport was not receiving all the required testFlags,
which led the application to run not supported tests.
Affects:
dEQP-VK.draw.shader_draw_parameters.draw_index.*
Components: Vulkan
VK-GL-CTS issue: 1838
Change-Id: I0a89afe4c5e56d255a18a39c410ef4f1fe95b210
Samuel Iglesias Gonsálvez [Thu, 20 Jun 2019 06:46:56 +0000 (08:46 +0200)]
Fix depth stencil multisample image usage validation error
Usage for depth stencil multisample image must have
VK_IMAGE_USAGE_TRANSFER_SRC_BIT since multisampleAttachment's
finalLayout is VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL.
Affected tests:
dEQP-VK.renderpass2.depth_stencil_resolve.*
Components: Vulkan
VK-GL-CTS issue: 1835
Change-Id: I1e6b6e8883ad276e8eb817449f2fffba2d1840e4
Piotr Byszewski [Fri, 14 Jun 2019 10:50:57 +0000 (12:50 +0200)]
Fix protected memory swapchain tests
This change resolves assertion hits that are generated by
protected memory swapchain tests when NOT_PROTECTED debug
flag is set.
Components: Vulkan
VK-GL-CTS issue: 1734
Affects:
dEQP-VK.protected_memory.*.swapchain.*
Change-Id: I5cc49330e5957c91632eaa0290394ccf3f01a0de
Fabio [Tue, 4 Jun 2019 15:09:17 +0000 (17:09 +0200)]
Reduce memory consumption in log parsing scripts
Updated .qpa to .xml conversion scripts to reduce memory consumption.
Before, the script was reading the whole .qpa file and storing it all in
memory. On top of that, it created xml.dom.minidom objects for each
testcase in the .qpa which were also stored in memory.
With this change, we create the .xml file at the same time that we parse
the .qpa which results in only one xml.dom.minidom object being created at
a time.
Components: Scripts
VK-GL-CTS issue: 1813
Change-Id: Iba4cb3bf6a94f57c481eb98a324b28638924075e
Graeme Leese [Thu, 20 Jun 2019 10:06:25 +0000 (11:06 +0100)]
Fix typo in precision tests
The typedef is obviously for a vec2, not a vec1. This name isn't used
elsewhere in the tests, so this should not affect any actual tests.
Components: Vulkan
Affects: None
Change-Id: Ic425bce4f2f9ae52e6080cda02d64947d1336296
Boris Zanin [Fri, 21 Jun 2019 08:58:59 +0000 (10:58 +0200)]
Remove unessential non-ascii symbols from source
Several files contain symbols like zero width space,
unusual apostrophe, dash and several national symbols
instead of English.
This might be error prone (please see more details
in the issue).
Replace them to allow upcoming non-ascii validator
to pass.
Components: Framework
VK-GL-CTS issue: 1836
Change-Id: I3a274f14d117d5b1362f6ceeb20f096c8680b362
Boris Zanin [Wed, 19 Jun 2019 13:39:57 +0000 (15:39 +0200)]
Python3 compatibility: whitespace validation fix
Make encoding independend from environment by enforcing ascii.
And ignore decoding errors (i.e. bytes with code greater 127)
due to they are not essential for whitespace validation.
Components: Framework
VK-GL-CTS issue: 1665
Change-Id: I140ed7ff520c651d38d53ff1a99665242c71d54b
Slawomir Cygan [Tue, 18 Jun 2019 15:23:26 +0000 (17:23 +0200)]
Prevent fetch_sources.py from slaying the main repo
This fixes the unlikely case, when external/src/<foo>/.git folders
are missing, but <foo> folders somehow do exist.
Without this change fetch_sources.py would assume the <foo> folder
is a proper git checkout and just emit git commands in it - destroying
the main dEQP repository.
Instead, the git clone would just abort now.
Components: Framework
Change-Id: I226cd9e0771480f73fcf323b5e5f7313bc81fa8e
Billy Clack [Tue, 9 Apr 2019 17:40:20 +0000 (10:40 -0700)]
CTS for EXT_texture_shadow_lod
This is a modified port of the es3fShaderTextureFunctionTests from the
dEQP suite. This MR ports that test over to the openglcts glesext
location and modifies it to only exercise spec functions defined in the
proposed EXT_texture_shadow_lod extension
(https://gitlab.khronos.org/opengl/WG-Docs/merge_requests/37).
Additionally cube map array support is added to the glcShaderRenderCase
source to support exercising the shadow cube map array functions.
The compare image fuzz value in glcShaderRenderCase.cpp is bumped from
0.5 to 0.7 to match a similar change made to
modules/glshared/glsShaderRenderCase.cpp after glcShaderRenderCase.cpp
was already ported over from that file.
Add KHR-GLES32.core.ext_texture_shadow_lod.texture.sampler2darrayshadow_vertex
to exclusion list of mustpass due to ASOP bug
21620051
The following tests are added:
KHR-GL30.ext_texture_shadow_lod.*
KHR-GL31.ext_texture_shadow_lod.*
KHR-GL32.ext_texture_shadow_lod.*
KHR-GL33.ext_texture_shadow_lod.*
KHR-GL40.ext_texture_shadow_lod.*
KHR-GL41.ext_texture_shadow_lod.*
KHR-GL42.ext_texture_shadow_lod.*
KHR-GL43.ext_texture_shadow_lod.*
KHR-GL44.ext_texture_shadow_lod.*
KHR-GL45.ext_texture_shadow_lod.*
KHR-GL46.ext_texture_shadow_lod.*
KHR-GLES32.core.ext_texture_shadow_lod.*
KHR-GLESEXT.ext_texture_shadow_lod.*
Excluding the following test:
KHR-GLES32.core.ext_texture_shadow_lod.texture.sampler2darrayshadow_vertex
Change-Id: If81179ce4f7b088a009c883a82cb6915fc06c8e6
Graeme Leese [Tue, 18 Jun 2019 11:11:00 +0000 (12:11 +0100)]
Remove duplicate code from vktRenderPassTests.cpp
No functional change.
Components: Vulkan
Affects: dEQP-VK.renderpass{,2}.*
Change-Id: I5a929de896ebb851369de94073f456dd0f788158
Graeme Leese [Wed, 5 Jun 2019 09:28:35 +0000 (10:28 +0100)]
Only test precision in compute stages
These functions are unlikely to be implemented differently in different
shader stages, so only test them in a single stage. This makes the code
quite a bit simpler.
This change also removes a significant amount of duplicated code and
code that is never used.
Component: Vulkan
Affects: dEQP-VK.glsl.builtin.precision*
Tests removed: dEQP-VK.glsl.builtin.precision*vertex.*
dEQP-VK.glsl.builtin.precision*fragment.*
Change-Id: Id3d9a17b16796e70e20703fffe6dd8c0f2fecfd1
Pawel Ksiezopolski [Wed, 12 Jun 2019 19:21:27 +0000 (21:21 +0200)]
Fix synchronization issues in descriptor_indexing tests
Some of the operations in descriptor_indexing caused image contents to be discarded.
Affects tests:
dEQP-VK.descriptor_indexing.*
Components: Vulkan
VK-GL-CTS issue: 1803
Change-Id: If368012d5b8524ef81dd07da8d9be2f1cfb9a907
Alexander Galazin [Wed, 19 Jun 2019 09:22:06 +0000 (11:22 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Change-Id: I9be40b4aedc4dcc5ddfbbb6fe04250f9855183ef
Alexander Galazin [Wed, 19 Jun 2019 08:26:43 +0000 (10:26 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I790b99605bc605884329e9c71d58ce998443afe2
Samuel Iglesias Gonsálvez [Wed, 29 May 2019 14:42:29 +0000 (16:42 +0200)]
Add VK_EXT_shader_subgroup_vote extension tests
They are a subset of dEQP-VK.subgroups.vote* tests that check
invocationAnyARB(), invocationsAllARB() and invocationsAllEqualARB()
GLSL functions added by VK_EXT_shader_subgroup_vote on Vulkan.
Added tests:
dEQP-VK.subgroups.vote.ext_shader_subgroup_vote.*
Components: Vulkan
VK-GL-CTS issue: 1693
Change-Id: Iab549f5d470d58a3212f6161bbd257025060c2b5
Ricardo Garcia [Thu, 16 May 2019 12:10:06 +0000 (14:10 +0200)]
Test vkCmdClearAttachments with unused attachments
As described in VK-GL-CTS issue #1771, it is possible to call
vkCmdClearAttachments with an aspect mask set but while the
corresponding attachment reference in the subpass is set to
VK_ATTACHMENT_UNUSED. The color clearing operation should ignore that
attachment.
New tests:
dEQP-VK.renderpass*.unused_clear_attachments.*
Components: Vulkan
VK-GL-CTS issue: 1771
Change-Id: I09b31d3090444cfc09afb03c57c66a857deed1fe
Ilkka Saarelainen [Wed, 5 Jun 2019 10:25:42 +0000 (13:25 +0300)]
Merge common util functions, part 2
Many tests have their own util functions for creating commonly used
Vulkan objects.
This CL moves the following helper functions to the framework:
- makePipelineLayout()
- makeFramebuffer()
- makeCommandPool()
Affects: dEQP-VK.*
Components: Vulkan, Framework
VK-GL-CTS issue: 1709
Change-Id: Ibf57e036ba7475bef17d9c17e4a56f95d2d4c767
Matthew Netsch [Wed, 12 Jun 2019 19:47:26 +0000 (15:47 -0400)]
Fixes DeviceFeatures long execution time
Components: Framework
VK-GL-CTS Issue: 1828
Affects:
dEQP-VK.*
Change-Id: I43be4194aa7ef79b79d2fadd7ea4c7d12bfe5610
Ricardo Garcia [Tue, 11 Jun 2019 10:08:36 +0000 (12:08 +0200)]
Support validation layers in push descriptor tests
Push descriptor tests created custom instances and devices without
taking into account the --deqp-validation command line option.
This commit exposes a couple of getValidationLayers() functions from
vktTestCase that were previously internal and allow easily obtaining the
list of validation layers from any point in the application.
Affected tests:
dEQP-VK.pipeline.push_descriptor.*
Components: Vulkan
VK-GL-CTS issue: 1825
Change-Id: Ie35ffcbbc368e90755ff72c0579145aecadb036b
Chris Forbes [Fri, 14 Jun 2019 19:38:05 +0000 (12:38 -0700)]
Fix sample read tests to use sample rate shading
- The first shader uses gl_SampleID, so needs to run with sample rate
shading.
- Require the sampleRateShading device feature
Affects: dEQP-VK.renderpass*.sampleread.*
Components: Vulkan
VK-GL-CTS Issue: 1832
Change-Id: Ic99ac60581a546deb674db273d6438af8b5b7595
Jeff Bolz [Fri, 24 May 2019 18:55:44 +0000 (13:55 -0500)]
Pull in TOT Vulkan headers
Components: Vulkan, Framework
Affects: dEQP-VK.*
Change-Id: I36739ae4a5f5101712090767561cb5d50c2d6dab
Ari Suonpaa [Fri, 17 May 2019 07:48:05 +0000 (10:48 +0300)]
Add tests without color buffer and with vertex only pipe
Modifies the existing depth, stencil, and query tests
to include variants where a color buffer and a fragment
shader are disabled. Added a new test for a vertex
only pipeline where a vertex position is written
into an SSBO.
Backported Amber feature checking from vulkan-cts-next-dev.
Affects:
dEQP-VK.pipeline.depth.*
dEQP-VK.pipeline.stencil.*
dEQP-VK.query_pool.statistics_query.vertex_only.*
New tests:
dEQP-VK.pipeline.vertex_only.*
Components: Vulkan, Framework
VK-GL-CTS issue: 1770
Change-Id: Ie715583d850a6ab0c72775a2667ea06dbb139b21
Mika Väinölä [Tue, 11 Jun 2019 13:46:08 +0000 (16:46 +0300)]
Fix validation errors in YCbCr array layer tests
An unused array layer 0 produced image layout errors. Make sure it is
in the valid layout but different from layer 1 by zero filling it.
Affects: dEQP-VK.ycbcr.format.*array*
Components: Vulkan
VK-GL-CTS issue: 1790
Change-Id: I4e2002961095642a17f326530d66bdf49e4fa3bd
Tapani Pälli [Tue, 11 Jun 2019 05:53:12 +0000 (08:53 +0300)]
Fix parameters given to getSyncAttribFunc
EGL spec does not allow giving NULL as a value for the call. Patch
changes call parameters so that we give a proper value and invalid
parameter for fence that results in EGL_BAD_PARAMETER as expected
by the test.
VK-GL-CTS issue: 1812
Affects:
dEQP-EGL.functional.fence_sync.invalid.get_invalid_value
Change-Id: Iabec0c274cdcbff0ec4c7eaee5bcdc3a287f28ba
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Graeme Leese [Mon, 3 Jun 2019 09:55:34 +0000 (10:55 +0100)]
Fix texture limits in negative API tests
The tests were using MAX_TEXTURE_SIZE where MAX_ARRAY_TEXTURE_LAYERS was
intended.
Components: OpenGL
VK-GL-CTS issue: 1804
Affects: dEQP-GLES3.functional.negative_api.texture.*max_width_height_depth
dEQP-GLES31.functional.debug.negative_coverage.get_error.texture.*max_width_height_depth
Change-Id: I8ba0bf7171b5b3e8a5d82211e926aa9dd2fff1bd
Alexander Galazin [Sun, 16 Jun 2019 19:18:26 +0000 (21:18 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Change-Id: I919586de04b62658b2c75a9500bf7cab2eea99b0
Alexander Galazin [Sun, 16 Jun 2019 18:19:44 +0000 (20:19 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I98bb1ccddd45a95d1f146e3b37d77c89e712034b
Jeff Bolz [Sun, 9 Jun 2019 17:25:42 +0000 (12:25 -0500)]
Fix validation errors in buffer_device_address tests
These tests could violate the per-stage descriptor limits. Create an
empty descriptor set to use in place of the non-empty set if we run
out of space.
Components: Vulkan
Affects: dEQP-VK.binding_model.buffer_device_address.*
Change-Id: I7c252da604e7316f040fd3cc44091bfd405fc883
Ari Suonpaa [Thu, 6 Jun 2019 12:14:36 +0000 (15:14 +0300)]
Early support check for tests (part 1)
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 change is divided into multiple parts to avoid touching
all test groups at once.
Affects:
dEQP-VK.rasterization.*
dEQP-VK.protected_memory.*
dEQP-VK.sparse_resources.*
dEQP-VK.api.*
dEQP-VK.conditional_rendering.*
dEQP-VK.descriptor_indexing.*
dEQP-VK.device_group.*
dEQP-VK.draw.*
Components: Vulkan, Framework
VK-GL-CTS issue: 1786
Change-Id: Ib8ff54e501a843b346ac15c037e0e46e1eed2a24
Boris Zanin [Tue, 4 Jun 2019 07:51:23 +0000 (09:51 +0200)]
Make depth less predictable in renderpass tests
Tests were using quite standard depths of 0.0 and 1.0.
Test now designed to use some value in between that implementations
have likely no fast clear shortcut for.
Update tests:
* dEQP-VK.renderpass.*
Components: Vulkan
VK-GL-CTS issue: 1034
Change-Id: I32eb19fb86ad24d496e5832e4ed041bcf657ee97
Boris Zanin [Fri, 7 Jun 2019 07:50:18 +0000 (09:50 +0200)]
Python3 compatibility: silence gen_all.py and gen_egl.py
Return back Python 2 behavior, suppressing messages generated
by gen_all.py and gen_egl.py. These warnings seems make few
sense and most likely were blocked in Python2 for that reason.
Though they need to be analyzed, as some of them really reveal
inconsistencies in gl.xml and egl.xml files.
Components: Framework
VK-GL-CTS issue: 1665
VK-GL-CTS issue: 1820
Change-Id: I9858c374a251e84f85b3290158399e04a6d6ab76
Samuel Iglesias Gonsálvez [Tue, 23 Apr 2019 09:20:47 +0000 (11:20 +0200)]
Add VK_EXT_depth_range_unrestricted tests
Added tests check that depth values outside [0.0f, 1.0f] range are
properly supported by the drivers on different situations:
viewport depth range and clear value for depth buffer.
Also, it checks it works for different depth formats, if depth clamp is
enabled or disabled and for different values of W component of the
vertices.
Added new tests:
dEQP-VK.pipeline.depth_range_unrestricted.*
Components: Vulkan
VK-GL-CTS issue: 1754
Change-Id: I7e16c22ebb468392b4c3dd710f4358595c4ef297
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Boris Zanin [Thu, 30 May 2019 09:28:37 +0000 (11:28 +0200)]
Remove subpass clear colors initialization
Subpass clear colors initialization is not used anywhere.
Attachment clears between subpass either makes no sense
or unimplemented. This code present since year 2015.
I doubt anyone need it.
Affects:
* dEQP-VK.renderpass.*
Components: Vulkan
VK-GL-CTS issue: 1034
Change-Id: Ic0cd9be027b6b6c9523e8504a484266b383ea988
Graeme Leese [Mon, 3 Jun 2019 18:04:12 +0000 (19:04 +0100)]
Simplify precisions in GLSL precision tests
The legacy_precision functions obscured the fact that almost all of the
precisions for 32-bit are the same with the float16_int8 and without.
Preserve the switch only where there was a functioal difference in the
old code.
Also, remove some parts that are dealing with lowp. They're never used,
so they're just making the code more complicated.
Components: Vulkan
Affects: dEQP-VK.glsl.builtin.precision*.exp.*
dEQP-VK.glsl.builtin.precision*.exp2.*
dEQP-VK.glsl.builtin.precision*.log.*
dEQP-VK.glsl.builtin.precision*.log2.*
dEQP-VK.glsl.builtin.precision*.sin.*
dEQP-VK.glsl.builtin.precision*.cos.*
dEQP-VK.glsl.builtin.precision*.acos.*
dEQP-VK.glsl.builtin.precision*.atan.*
Change-Id: I1361ffb9ca7cd7327a2511f3b53ce2986c12a038
Graeme Leese [Wed, 5 Jun 2019 14:40:41 +0000 (15:40 +0100)]
Fix random number generation in GLSL precision tests
The random number generator was producing -1.0f with a probability of
15/16.
Component: Vulkan
VK-GL-CTS issue: 1815
Affects: dEQP-VK.glsl.builtin.precision.*
Change-Id: Ic740a78656b427acbb51ad15085bc53ed45a86dd
Alexander Galazin [Thu, 6 Jun 2019 07:25:19 +0000 (09:25 +0200)]
Raise CMake required version to 3.0
SPIR-V Projects are raising CMake version to 3.0
Components: Framework
Affects: dEQP-VK.*, dEQP-GL*, dEQP-EGL.*
Change-Id: Ic281a482038684940926474a9cc0bca23d934ef9
Alex Walters [Tue, 11 Jun 2019 15:42:33 +0000 (16:42 +0100)]
Fix image_extent test to handle OOM errors
The image_extent tests attempt to create a window with the maximum
supported extents, though it is not always possible to create such
a window due to platform memory constraints.
As long as the error was an out of memory error, allow the test to
pass. This fix only applies to the image_extent sub-test.
Affects:
dEQP-VK.wsi.*.swapchain.create.image_extent
Components: Vulkan
VK-GL-CTS issue: 1780
Change-Id: I5ac5439417424d101f6dc8d4f92da79b8fda2313
Alexander Galazin [Fri, 7 Jun 2019 09:15:43 +0000 (11:15 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: I3133019d090b8a674bb8cbeba493c65e62e768f9
Piotr Byszewski [Wed, 20 Feb 2019 14:45:18 +0000 (15:45 +0100)]
Improve VK_KHR_swapchain coverage
This change adds two tests that use two structures that were not used
till now in cts. Those structures are: VkImageSwapchainCreateInfoKHR
and VkBindImageMemorySwapchainInfoKHR.
image_swapchain_create_info test just creates swapchain images for
single device.
device_group2 test creates swapchain images for device group
consisting out of two devices. Half of each presentable imaga
is aliased to memory of diferent device in group.
Components: Vulkan
VK-GL-CTS issue: 1577
Affects:
dEQP-VK.wsi.*.swapchain.*.image_swapchain_create_info
dEQP-VK.wsi.*.swapchain.render.device_group2
Change-Id: I5927c607c808da5163655b4cc7a5fad5b595012c
Alexander Galazin [Tue, 21 May 2019 08:31:32 +0000 (10:31 +0200)]
Whitelist Vulkan CTS 1.1.4.2
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: I67bcb51a4bde4253c8cd81735729459cea3d0f24
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
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
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
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
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
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
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
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
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
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
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
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
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
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)
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
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
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
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
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
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Andres Gomez [Thu, 23 May 2019 16:34:13 +0000 (18:34 +0200)]
gl4cComputeShaderTests: correct conversion
Bug 13124 - gl45 conformance: Fix GL45-CTS.compute_shader.max to work with giant numbers
and
Bug 13582 - Checking values from glGet* incorrectly
didn't complete the job of avoiding conversion problems.
Now, we make sure that the comparison is done in the type that won't
cause a problem.
Components: OpenGL
VK-GL-CTS public issue: 149
Affects:
KHR-GLES31.core.compute_shader.dispatch-indirect
KHR-GLES31.core.compute_shader.max
KHR-GL43.compute_shader.dispatch-indirect
KHR-GL43.compute_shader.max
Change-Id: I69047d95ca4418a84f138ac9bfa7818fea45cc64
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
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
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
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
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
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)
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)
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
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