Alexander Galazin [Wed, 14 Mar 2018 08:46:20 +0000 (09:46 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: I768567546e111ed9af5e35293d4af079453abccf
Alexander Galazin [Wed, 14 Mar 2018 08:46:16 +0000 (09:46 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Id0a9cedc7822a3b3206e162f217f790d087c3392
Arkadiusz Sarwa [Fri, 12 Jan 2018 14:13:30 +0000 (15:13 +0100)]
Add runtime time report of a CTS run
New section have been added to file TestResults.qpa.
"#beginTestsCasesTime" - section contains a time summary for groups.
bottleneck_report.py - script which helps to find bottlenecks in CTS
Components: Framework
VK-GL-CTS issue: 879
Change-Id: I73773d820ddcd0f5b3c50c2128b8961cd1227b0e
Caio Marcelo de Oliveira Filho [Mon, 12 Mar 2018 17:25:58 +0000 (10:25 -0700)]
Fetch new tags when fetching new Git sources
Change-Id: I1a906ebf2698eac33c3acbf1da74df9642b775a2
Component: Framework
(cherry picked from commit
204d597504c94fa52ed0f5a2c21895482236d5cc)
Caio Marcelo de Oliveira Filho [Mon, 12 Mar 2018 17:25:58 +0000 (10:25 -0700)]
Fetch new tags when fetching new Git sources
Change-Id: I1a906ebf2698eac33c3acbf1da74df9642b775a2
Component: Framework
Caio Marcelo de Oliveira Filho [Thu, 22 Feb 2018 01:22:46 +0000 (17:22 -0800)]
Use sys.executable instead of "python"
When Python scripts call other python scripts, prefer using whatever
interpreter was used for the topmost call instead of "python". In some
environments "python" is already pointing to a Python 3 interpreter.
Components: Framework
Change-Id: Ifba9b2965901ffcf9c1897ccabe5fa183f359707
Caio Marcelo de Oliveira Filho [Thu, 22 Feb 2018 01:54:57 +0000 (17:54 -0800)]
Handle gcc 7 warnings
- "-Wimplicit-fallthrough" warns on case conditions that
fallthrough. GCC does have a way to accept conditions that have a
comment about falling through inside the cases, but the codebase has
other cases where a single comment explains the fallthrough for the
whole switch. This warning is being ignored. It was not possible to
use "-Wno-error=WARNING" because older GCCs fail -- but they do
accept "-Wno-WARNING" where WARNING is unknown (since at least gcc
4.6.4).
- "-Wint-in-bool-context" warns (among other things) about result of
multiplication being used in boolean context. Code was changed to
use de::max() instead.
- "-Wmaybe-uninitialized" warned about some attributes of a struct not
being initialized depending on the case. Code was changed to
initialize the struct in question.
Components: Framework, Vulkan
Change-Id: Iabb26f01e047353c6e2a704ab27b673e85b185be
Piotr Byszewski [Tue, 27 Feb 2018 12:34:13 +0000 (13:34 +0100)]
Fix internal formats conversions
This change resolves Windows compilation errors that
were triggered by the use of snprintf. This function was
replaced with StringTemplate.
This change also fixes few warnings.
Components: OpenGL
Affects:
KHR-GLES3.copy_tex_image_conversions.*
Change-Id: I70c9fdaac3f971e563378a2bcffc65b5386ca914
Jari Komppa [Thu, 1 Mar 2018 12:49:25 +0000 (14:49 +0200)]
Replaced deprecated windows version detect
The old windows version reporting API has been deprecated and has been
lying since Windows 8.1 - all windows versions since that version have
been reported as Windows 8.0. (It is possible to add manifest files to
the executable to accept later windows versions, but that would require
the UUID of every existing and future versions of Windows).
There is no direct replacement, as Microsoft would prefer applications
to be written against available features instead of relying on Windows
version numbers.
The official workaround is to look at the version numbers in system DLL
files. In addition, the registry contains several strings which tell the
version number. This change attempts to do both, in case future Windows
versions change this behavior.
Windows can also lie about the bit-ness of the operating system; reading
the windows version from registry from a 32bit application may report
the operating system as 32 bit even if it's actually 64 bit. Separate
64-bit detect function is also included. (Hypothetical future 128 bit
Windows will likely report as 64 bit, but I'll leave that problem to the
future generations).
Affects:
dEQP-VK.info.platform
Components: Framework
VK-GL-CTS issue: 1044
Change-Id: I80062d6eefb14b2ce04818a6c3176db0b172419e
James Glanville [Thu, 22 Feb 2018 14:58:05 +0000 (14:58 +0000)]
Restrict alpha range for rgba5551 surfaces
The tests were blending against an rgba5551 surface and expecting alpha
to be quantized to 1 bit between every drawcall. The spec does not
forbid implementations to use higher precision internal representations
where this quantisation may not occur to the same extent. This change
restricts fragment outputs to be either 0 or 1, so the issue is avoided
Components: OpenGL
VK-GL-CTS issue: 988
Affects:
dEQP-EGL.functional.render.*rgba5551*
Change-Id: Id8fa5068931124d79ae7fa1b9b8a41845c73e507
Piotr Byszewski [Fri, 23 Feb 2018 13:00:46 +0000 (14:00 +0100)]
Test layout(location) qualifier with opaque types
layout(location) is tested with images and samplers.
Components: OpenGL
VK-GL-CTS issue: 870
Affects:
KHR-GL45.layout_location.*
KHR-GLES31.shaders.layout_location.*
Change-Id: I3abacfe2fbc93860cfd7744f77733189db531dce
Nicolai Hähnle [Mon, 20 Nov 2017 15:08:51 +0000 (16:08 +0100)]
teglImageFormatTests: call glFinish after creating the buffer in the client API
According to section 3.7.3.2 (Order of Rendering Operations Between
Contexts) of the EGL spec, the application is responsible for
synchronization between different rendering contexts even in the same
thread.
Some of the tests execute a sequence of operations like this (see
MultiContextRenderTests::init):
1. ctx0: create image
2. ctx0: read from image
3. ctx0: clear image
4. ctx1: recreate image
5. ctx0: read from image
6. ctx1: read from image
This change adds a call to glFinish between steps 4 and 5 that is needed
for correctness. Note that other parts of the same file already call
glFinish, e.g. the various Render actions.
Components: EGL
VK-GL-CTS issue: 857
Affects:
dEQP-EGL.functional.image.render_multiple_contexts.gles2_*_read_pixels
Change-Id: I4dc50f7516374405596653d7006165819b95b6fa
Juan A. Suarez Romero [Fri, 23 Feb 2018 16:40:34 +0000 (16:40 +0000)]
Take account of alignment for data to skip
When making the gradient for packed pixels tests, in some cases it is
required to generate data that will be skip by the operations, like when
using GL_UNPACK_SKIP_IMAGES.
But also the images need to be aligned with the proper
GL_UNPACK_ALIGNMENT, so the data to skip need to account for this
alignment too.
Besides this main fix, a minor fix included is to not increase the
buffer size to account for the skipped images, as the depth already
considered them.
Components: OpenGL
VK-GL-CTS issue: 1017
Affects:
KHR-GLES3.packed_pixels.*
KHR-GL3*.packed_pixels.*
KHR-GL4*.packed_pixels.*
Change-Id: I2fc0626ad2c5bb900db1c67dd1b06bf8a7f25ef9
Alexander Galazin [Mon, 12 Mar 2018 09:58:13 +0000 (10:58 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: Ib0f3fa2db421ec19b464cb42230a08ae26d9860e
Alexander Galazin [Mon, 12 Mar 2018 09:58:09 +0000 (10:58 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I25a00d37394a47b90d7cdf0f51738e71f151f4f2
Alexander Galazin [Thu, 8 Mar 2018 09:29:21 +0000 (10:29 +0100)]
Merge vk-gl-cts/vulkan-cts-next-dev into vk-gl-cts/master
Change-Id: I45c9f0676f47400c617f7ba1fa6d31812fb5cff6
Alexander Galazin [Wed, 7 Mar 2018 15:45:21 +0000 (16:45 +0100)]
Update glslang, SPIR-V commits
Components: Framework
Affects: dEQP-VK.*
Change-Id: If5830108278597a28f8043dd947bed3c20c9688d
Paavo Pessi [Wed, 7 Mar 2018 09:35:52 +0000 (11:35 +0200)]
Add fixed clipping tests to 1.0.3 mustpass
Change-Id: I53fa94455924d1c03a961ce4f35076dc8fc354d5
Components: Vulkan
Paavo Pessi [Wed, 21 Feb 2018 09:50:37 +0000 (11:50 +0200)]
Allow pop-free behavior in line clipping tests
Existing line clipping tests were modified to allow both popping and
pop-free behavior. The tests support both strict and non strict lines.
Affects:
dEQP-VK.clipping.clip_volume.clipped.wide_lines_axis_aligned
dEQP-VK.clipping.clip_volume.clipped.wide_lines_diagonal
Components: Vulkan
VK-GL-CTS issue: 98
Change-Id: I30301327076ddbd42986b7a58bd3f49786fe993a
Juan A. Suarez Romero [Thu, 18 Jan 2018 10:48:45 +0000 (10:48 +0000)]
Write only R channel on GL_DEPTH_COMPONENT and OpenGL ES
The affected tests fuzzily compare the results of using sized depth
textures (GL_DEPTH_COMPONENT{16,24,32}) with unsized depth texture
(GL_DEPTH_COMPONENT), which is used as reference.
According to OpenGL ES, the formers write the depth in R channel, (D,
0.0, 0.0, 1.0), while the later writes the depth in the three RGB
channels (D, D, D, 1.0).
Roughly speaking, the image in the former case is red-ish, while the
second is grayscale, and thus the comparison fails.
As only the depth is interested, just modify the test to write the red
channel in the last case.
To allow comparing them, let's just use one channel in the reference.
Components: OpenGL
VK-GL-CTS issue: 999
Affects:
KHR-GLES2.core.internalformat.texture2d.depth*
KHR-GL4*.internalformat.texture2d.depth*
Change-Id: I0bd9eea951eec0dcf91b072c476fbe0ae5292df1
Courtney Goeltzenleuchter [Mon, 22 Jan 2018 19:15:39 +0000 (11:15 -0800)]
Add test for VkSetHdrMetadata
Affects: dEQP-VK.wsi.*.colorspace.*
Change-Id: I767b19cd94d7387d7df19b3d85553f62ad6f891b
Components: Vulkan
Boris Zanin [Tue, 6 Feb 2018 16:54:00 +0000 (17:54 +0100)]
Tests for layered resolve attachments
Add tests:
* dEQP-VK.renderpass.multisample_resolve.layers_3.*
* dEQP-VK.renderpass.multisample_resolve.layers_6.*
* dEQP-VK.renderpass.suballocation.multisample_resolve.layers_3.*
* dEQP-VK.renderpass.suballocation.multisample_resolve.layers_6.*
Update tests:
* dEQP-VK.renderpass.multisample_resolve.*
* dEQP-VK.renderpass.suballocation.multisample_resolve.*
Components: Vulkan
VK-GL-CTS issue: 960
Change-Id: Ic52f813d5590b7a17301016af193256eae1f85b5
Mikael Tuomisalo [Mon, 5 Mar 2018 18:33:33 +0000 (20:33 +0200)]
Use de::min instead of std::min
std::min was used without including algorithm, which breaks build on
at least VS2017
Components: OpenGL ES
VK-GL-CTS issue: 1054
Affects:
dEQP-GLES2.functional.texture.size.*
dEQP-GLES3.functional.texture.size.*
Change-Id: Id3edb237931d6957095cf6b8fcb38359422decd3
Paavo Pessi [Fri, 16 Feb 2018 14:30:07 +0000 (16:30 +0200)]
Test creating empty descriptor set layouts
Two new test cases were added. The first case creates a descriptor set
layout with zero bindings and without optional flags. The second case
creates a descriptor set layout with zero bindings and uses the
VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR flag.
The test passes as long as the descriptor set layout is created
successfully.
New tests:
dEQP-VK.api.descriptor_set.descriptor_set_layout.empty_set.normal
dEQP-VK.api.descriptor_set.descriptor_set_layout.empty_set.push_descriptor
Components: Vulkan, Framework
VK-GL-CTS issue: 1013
VK-GL-CTS public issue: 80
Change-Id: I75abe4e3f0f14902a4d7178e7e763ccdec90dc8c
Arkadiusz Sarwa [Mon, 29 Jan 2018 17:25:35 +0000 (18:25 +0100)]
Extend coverage in subgroups: vote, builtinMaskVar
Affects:
dEQP-VK.subgroups.vote.*
dEQP-VK.subgroups.builtin_mask_var.*
Add tests:
dEQP-VK.subgroups.vote.*_frag_helper
Components: Vulkan
VK-GL-CTS issue: 965, 799
Change-Id: I32fe052e4cbfc6d1dfefb9b3be7d1e4d54124b16
Ari Suonpaa [Tue, 20 Feb 2018 09:12:58 +0000 (11:12 +0200)]
Use common utility function for queue submit and wait
Queue submit and wait is being used in almost every test case. Some
test groups already implement an utility function to create a fence,
submit commands and wait for the fence. Others do it inline. These
are now replaced with a single utility function.
Affects:
dEQP-VK.api.buffer_view.access.*
dEQP-VK.api.command_buffers.*
dEQP-VK.api.copy_and_blit.*
dEQP-VK.api.fill_and_update_buffer.*
dEQP-VK.api.get_memory_commitment.*
dEQP-VK.api.smoke.*
dEQP-VK.api.image_clearing.*
dEQP-VK.binding_model.shader_access.*
dEQP-VK.device_group.*
dEQP-VK.draw.*
dEQP-VK.dynamic_state.*
dEQP-VK.fragment_operations.*
dEQP-VK.geometry.*
dEQP-VK.image.*
dEQP-VK.memory.binding.*
dEQP-VK.memory.pipeline_barrier.*
dEQP-VK.multiview.*
dEQP-VK.pipeline.*
dEQP-VK.query_pool.occlusion_query.*
dEQP-VK.query_pool.statistics_query.*
dEQP-VK.rasterization.*
dEQP-VK.renderpass.multisample_resolve.*
dEQP-VK.renderpass.multisample.*
dEQP-VK.renderpass.sampleread.*
dEQP-VK.renderpass.sparserendertarget.*
dEQP-VK.glsl.*
dEQP-VK.spirv_assembly.*
dEQP-VK.ssbo.*
dEQP-VK.synchronization.internally_synchronized_objects.*
dEQP-VK.synchronization.op.*queue.*
dEQP-VK.tessellation.*
dEQP-VK.texture.*
dEQP-VK.ubo.*
dEQP-VK.ycbcr.*
Components: Vulkan
VK-GL-CTS issue: 1015
Change-Id: I27c05269b1c546c7079f8197f84cdc7f2c8bda17
Yiwei Zhang [Sat, 3 Feb 2018 01:39:06 +0000 (17:39 -0800)]
Add tests for vkGetDeviceQueue2
Add tests verifying behavior of vkGetDeviceQueue2 when the provided
flags match and do not match.
Components: Vulkan
New tests: dEQP-VK.api.device_init.create_device_queue2*
Change-Id: I0654a0e4e20e56571220268e65f54a923bec2ff8
Alexander Galazin [Fri, 2 Mar 2018 14:43:57 +0000 (15:43 +0100)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I4e0d4ac0cab7b8cc9ffd010bc6cc53c60b485e88
Alexander Galazin [Fri, 2 Mar 2018 13:47:51 +0000 (14:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I30ffdaf2b3e30f6ac490ef4bf4e5169d98f0c66c
Alexander Galazin [Fri, 2 Mar 2018 13:15:50 +0000 (14:15 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Ibf8696558e773e47e04e0f14e7b0deb566eaa5ce
Alexander Galazin [Fri, 2 Mar 2018 11:09:38 +0000 (12:09 +0100)]
Unfreeze Vulkan CTS 1.0.3 mustpass
Change-Id: Icee32789f1a86ee873f20139787222d416456bfd
Alexander Galazin [Fri, 2 Mar 2018 11:17:24 +0000 (12:17 +0100)]
Add a note to the README
Explain that the verification scrpt will report a warning
for a correctly generated git-log
Components: Vulkan
Change-Id: Ie8e0ab090f50c776150f9a7f4ce7d69583186953
Alexander Galazin [Fri, 2 Mar 2018 10:47:38 +0000 (11:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Ia75241c78980e6bac6358ade016d4849090f8444
Alexander Galazin [Fri, 2 Mar 2018 10:15:31 +0000 (11:15 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.3 into vk-gl-cts/master
Change-Id: I28a337678dc76cf49f090fc0ee304b5d7a137cf0
Marcin Rogucki [Thu, 18 Jan 2018 09:55:07 +0000 (10:55 +0100)]
Validation errors fix in copying 3d images
A minor chages to fix validation errors.
Two tests are not passing currently!
Affected tests:
dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.3d_images.*
Components: Vulkan
VK-GL-CTS issue: 208
Change-Id: Id3c5ec869d52db6b1229f45bbeacf24e35e75e48
(cherry picked from commit
c23ba94d7978ba84f9ffd2e75b6afbf8e3395633)
Arkadiusz Sarwa [Tue, 27 Feb 2018 11:38:31 +0000 (12:38 +0100)]
Fix: Memory alignment
Affects:
dEQP-VK.memory.mapping*
Components: Vulkan
VK-GL-CTS issue: 1039
Change-Id: Ia5093148fa145c9eecc03fe3b76102cdf77ad472
Panagiotis Apostolou [Thu, 22 Feb 2018 15:28:54 +0000 (16:28 +0100)]
Spec relaxation for protected YCbCr Implicit chroma reconstruction
Incorporates spec relaxation in the protected memory YCbCr tests which
describes that when doing implicit reconstruction with nearest chroma
filtering, an implementation may behave as if both xChromaOffset and
yChromaOffset were VK_CHROMA_LOCATION_MIDPOINT.
Tests affected:
dEQP-VK.protected_memory.interaction.ycbcr.*
Components: Vulkan
VK-GL-CTS issue: 1032
Change-Id: I25ef589ed05b1b167475eb5b6d782b261b1b3532
Alexander Galazin [Thu, 1 Mar 2018 15:21:19 +0000 (16:21 +0100)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: I43efda824345475ca1305ed3fb2c68e0adb2cc29
Marcin Rogucki [Thu, 18 Jan 2018 09:55:07 +0000 (10:55 +0100)]
Validation errors fix in copying 3d images
A minor chages to fix validation errors.
Two tests are not passing currently!
Affected tests:
dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_image.3d_images.*
Components: Vulkan
VK-GL-CTS issue: 208
Change-Id: Id3c5ec869d52db6b1229f45bbeacf24e35e75e48
Slawomir Cygan [Wed, 28 Feb 2018 18:11:21 +0000 (19:11 +0100)]
Set usable instance version in external memory tests
These tests were using vkEnumerateInstanceVersion() to get
instance version. This failed, when Vulkan 1.1 Loader is used with
Vulkan 1.0 ICD: the function was returning version 1.1,
so test was not requesting any needed instance extensions, as these
were assumed to be already in core.
This is out of sync with dispatch code dispatching to
1.0 + KHR extension functions, when calling entrypoints like
vkGetPhysicalDeviceExternalBufferProperties(). As no KHR extensions
were requested during instance creation, the behavior is undefined.
The dispatch code is using context.getUsedApiVersion() utility
to guess Vulkan version, so same utility should be used for instance
creation, avoiding raw calls to vkEnumerateInstanceVersion().
Components: Vulkan
VK-GL-CTS Issue: 1047, 854
Affects:
dEQP-VK.api.external.memory.*
dEQP-VK.api.external.fence.*
dEQP-VK.api.external.semaphore.*
Change-Id: Iecf9bb086e04c6d88118fee9c4867ac5647d1ab7
Panagiotis Apostolou [Thu, 22 Feb 2018 15:04:24 +0000 (16:04 +0100)]
Remove vertex stage variants from dEQP-VK.protected_memory.interaction.ycbcr.*
"Except for framebuffer-space pipeline stages, compute shader stage, and
transfer stage, any read from or write to protected memory during protected
queue operations results in undefined behavior"
The existing dEQP-VK.protected_memory.interaction.ycbcr.* group include
tests that sample the protected texture from inside the vertex shader. This
commit removes these tests.
Tests affected:
dEQP-VK.protected_memory.interaction.ycbcr.*
Components: Vulkan
VK-GL-CTS issue: 1031
Change-Id: I459da0f3028e418c90285e55fb17ac1fda8d8467
Dave Airlie [Thu, 21 Dec 2017 03:03:22 +0000 (13:03 +1000)]
Don't run sparse texture tests if format isn't sparse supported
These tests weren't checking if the format was support for sparse
operations, so add a check before executing the test.
Affects:
dEQP-VK.texture.shadow.*.sparse*
Components: Vulkan
VK-GL-CTS issue: 918
Change-Id: I5e55c2e4d8d1105df9d3ed8cbdf1b22e51b56b2a
Marcin Rogucki [Tue, 17 Oct 2017 14:56:49 +0000 (16:56 +0200)]
Robust buffer access through variable pointers
Components: Vulkan
VK-GL-CTS issue: 418
Adds:
dEQP-VK.robustness.buffer_access.through_pointers.graphics.*
dEQP-VK.robustness.buffer_access.through_pointers.compute.*
Change-Id: I79d261a13fd2efc01da4f4d5984631d26d2b5cdd
Alexander Galazin [Thu, 1 Mar 2018 14:55:18 +0000 (15:55 +0100)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I8e4b6db4f5c8310bf117bb3093adb6d335862462
Alexander Galazin [Thu, 1 Mar 2018 14:30:47 +0000 (15:30 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I316b17e1a7fb74fb0940b1463df9fa738532548e
Alexander Galazin [Thu, 1 Mar 2018 14:12:16 +0000 (15:12 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Id333c16da0ab9db53d16b15ca068c1232d093f58
Alexander Galazin [Thu, 1 Mar 2018 13:24:31 +0000 (14:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I8c2317b97955bbee922af624b91287071fbc7661
Alexander Galazin [Thu, 1 Mar 2018 13:15:58 +0000 (14:15 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.3 into vk-gl-cts/master
Change-Id: If5b14c7b39f8ed894d9da5129d781d9db3ad2acb
Alexander Galazin [Thu, 1 Mar 2018 12:28:03 +0000 (13:28 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.0.3
Change-Id: I41e9aca9c2a5bd2bbb13b55584a4f5faf433aa12
Mika Väinölä [Thu, 22 Feb 2018 12:01:38 +0000 (14:01 +0200)]
Fix validation errors in image clearing tests
Remove access flags which are not supported by
VK_PIPELINE_STAGE_TRANSFER_BIT.
Affects:
dEQP-VK.api.image_clearing.*
Components: Vulkan
VK-GL-CTS issue: 1030
Change-Id: Ia0b4e097766ec674be149dbde4fad652482c1e39
Dae Kim [Fri, 23 Feb 2018 08:39:12 +0000 (08:39 +0000)]
Added missing gl_PointSizes when drawing points
Some tests using point list primitive topology were not specifying point
sizes with the gl_PointSize built-in.
Affects:
dEQP-VK.subgroups.*
dEQP-VK.synchronization.*
Components: Vulkan
VK-GL-CTS issue: 1035
Change-Id: I8588e26ee47c58f6ec4e9ee5fdce70546ec28903
Slawomir Cygan [Thu, 22 Feb 2018 17:55:01 +0000 (18:55 +0100)]
Do not access temporary C++ object members by reference
Fix undefined C++ behavior (resulting in errors when doing runtime memory checks),
where a temporary object returned by getInputAspects() method is used by a reference
to a member after the temporary is destructed.
It seems getInputAspects should just return reference.
Affects: dEQP-VK.renderpass.*.input*
Component: Vulkan
VK-GL-CTS Issue: 1033
Change-Id: I71edabed71ea63f46cdbc45c966d57cd020565ab
Piotr Byszewski [Fri, 16 Feb 2018 13:35:13 +0000 (14:35 +0100)]
Cover gl_WorkGroupSize negative cases
Check if compile-time error is generatef when gl_WorkGroupSize
is used before its declaration.
This change also verifies if omitted dimensions are set to 1.
Components: OpenGL
VK-GL-CTS issue: 951
Affects:
KHR-GLES31.core.compute_shader.work-group-size-usage
Change-Id: I8f3c72401c4f15d9a53d41f0a005d5399527072c
neilmonday [Thu, 8 Feb 2018 15:33:48 +0000 (10:33 -0500)]
Destroy debug context if a failure occurs.
For gl4cKHRDebugTests, Adding TestBase::done before the exception is
thrown so that the temporary context is properly deleted and the
original is restored.
Affects:
KHR-GL46.khr_debug.api_errors_non_debug
KHR-GL46.khr_debug.labels_non_debug
KHR-GL46.khr_debug.receiveing_messages
KHR-GL46.khr_debug.groups
KHR-GL46.khr_debug.api_errors_debug
KHR-GL46.khr_debug.labels_debug
KHR-GL46.khr_debug.synchronous_calls
Components: OpenGL
VK-GL-CTS issue: 976
Change-Id: Ia0b061b6cc5d4b309d2df2a6d4acf25caad0114c
Oliver Wohlmuth [Fri, 2 Feb 2018 13:41:08 +0000 (14:41 +0100)]
Added handling for EGL_YUV_BUFFER_EXT
YUV framebuffer formats are not handled for dEQP-
EGL.functional.color_clears.single_context.gles2.other
which results in an assertion. This patchset handles them similar to
float pixel formats.
Affects:
dEQP-EGL.functional.color_clears.single_context.gles2.other
Components: Framework, AOSP
VK-GL-CTS issue: 894
Change-Id: I4ac65c939819a8de7c464601491bb8df78623171
Chris Forbes [Tue, 27 Feb 2018 17:27:45 +0000 (09:27 -0800)]
Merge remote-tracking branch 'aosp/master' into deqp-dev
Change-Id: If842464627ad7b6c07c8b2fb259ce7abe1e084b5
Alexander Galazin [Tue, 27 Feb 2018 14:08:05 +0000 (15:08 +0100)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I6b88acb64b5ff7cd03e1d52d61d93545c27bf21e
Chris Forbes [Tue, 27 Feb 2018 15:54:49 +0000 (07:54 -0800)]
Rename Interval::warning's parameters to avoid shadowing
GCC 4.9 warns about this, causing build failures with -Werror
Change-Id: Ic3579de84f4b3f1f231240910dbd15dafe90c6bc
Components: Framework
Alexander Galazin [Tue, 27 Feb 2018 12:42:27 +0000 (07:42 -0500)]
Merge "Merge vk-gl-cts/github-master into vk-gl-cts/master"
Alexander Galazin [Tue, 27 Feb 2018 12:21:11 +0000 (13:21 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.3 into vk-gl-cts/master
Change-Id: I1f5b1b2621033ffa3551bd2cdf8c057cf89e9539
Alexander Galazin [Tue, 27 Feb 2018 11:16:52 +0000 (12:16 +0100)]
Merge vk-gl-cts/github-master into vk-gl-cts/master
Change-Id: I8990b1e682cdb59cdf15eeddbc91af817b9e3e30
Alexander Galazin [Tue, 27 Feb 2018 09:13:28 +0000 (10:13 +0100)]
Merge pull request #79 from imirkin/master
glx: add getProcAddress override
Piotr Byszewski [Thu, 21 Sep 2017 13:36:36 +0000 (15:36 +0200)]
Handle edge case in GL FP64 tests
mod(a,b) is defined as: a - b * floor(a/b)
mod(a,a) should be 0 however OpenGL allows for some error in
division, so a/a could actually end up being 1.0 - 1ULP. In
such a case, floor(a/a) would end up as 0, with mod(a,a)
becoming a. This patchset detects this case and adjusts the
expected result accordingly.
Components: OpenGL
VK-GL-CTS issue: 641
Affects:
KHR-GL40.gpu_shader_fp64.builtin.*
Change-Id: I9535d337b2132519c985f8ac8eb18bf938a89ea7
Piotr Byszewski [Tue, 23 Jan 2018 13:29:34 +0000 (14:29 +0100)]
Fix gl_FragData usage in draw_buffers test
ES3 specification states that "if some, but not all user-defined
output variables are written, the values of fragment colors
corresponding to unwritten variables are (...) undefined".
Components: OpenGL
VK-GL-CTS issue: 291
Affects:
dEQP-GLES3.functional.shaders.fragdata.draw_buffers
Change-Id: I83f1904e9cf905634a421b6fc5530e0e0510ccb1
Arkadiusz Sarwa [Wed, 21 Feb 2018 08:35:42 +0000 (09:35 +0100)]
Fix: Remove workaround nonCoherentAtomSize
Affects:
dEQP-VK.memory.mapping*
Components: Vulkan
VK-GL-CTS issue: 962
Change-Id: Ibb81d8e829b003bd931a018c20d1d2ee640d816f
Piers Daniell [Thu, 15 Feb 2018 19:33:15 +0000 (12:33 -0700)]
Account for differences in nan with fp16 comparison
When comparing fp16 values it's not possible to use a bitwise
comparison because there can be many different bit patterns
representing nan values, and all nans are equal. This CL updates
the computeCheckBuffersFloats function which compares two
buffers of fp16 values to take into account different forms
of nan.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16_to_16.stress_test
Components: Vulkan
VK-GL-CTS issue: 1018
Change-Id: I77013b49ce070d9615b287eae24dd32731b314b1
Slawomir Cygan [Mon, 19 Feb 2018 13:37:08 +0000 (14:37 +0100)]
Fix wrong layout used in vkCmdImageResolve
VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL is not
a valid source layout for vkCmdImageResolve operation.
Image is already in VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
layout after transition performed ~48LOC above the offending resolve,
so just use current image layout here.
Components: Vulkan
VK-GL-CTS Issue: 1023
Change-Id: Ibcc3359c030d709c5a947316cea2a9cb19736b21
Affects: dEQP-VK.glsl.builtin_var.fragdepth.*multisample_*
Chris Forbes [Mon, 26 Feb 2018 17:22:55 +0000 (09:22 -0800)]
Merge remote-tracking branch 'khronos/master' into deqp-dev
Change-Id: Id50b4722e499965b7ad9dd5acc771f8b84d30cfc
Peter Quayle [Wed, 21 Feb 2018 15:34:55 +0000 (15:34 +0000)]
Ensure sync_fd tests use valid file descriptors
The external.*.sync_fd.* tests fail on some implementations
because vkGet*FdKHR may return -1 (meaning pre-signalled) instead
of a valid file descriptor.
Affects:
dEQP-VK.api.external.semaphore.sync_fd*
dEQP-VK.api.external.fence.sync_fd*
Components: Vulkan
VK-GL-CTS issue: 957
Change-Id: I91087db1595a19605956dad460caa344e850491e
Bas Nieuwenhuizen [Fri, 23 Feb 2018 22:15:37 +0000 (22:15 +0000)]
DO NOT MERGE: Fix dEQP-VK.api.copy_and_blit.image_to_image_depth value range. am:
f03effb5a0 -s ours am:
7c8b312fbe -s ours
am:
5be6880be9 -s ours
Change-Id: I89fdca56007f43c479e6129183fb2f8c76b5193b
Bas Nieuwenhuizen [Fri, 23 Feb 2018 22:09:07 +0000 (22:09 +0000)]
DO NOT MERGE: Fix dEQP-VK.api.copy_and_blit.image_to_image_depth value range. am:
f03effb5a0 -s ours
am:
7c8b312fbe -s ours
Change-Id: I7302bfbf8d9c38c8a01e604253a9cca1bba8b76c
Bas Nieuwenhuizen [Fri, 23 Feb 2018 22:03:07 +0000 (22:03 +0000)]
DO NOT MERGE: Fix dEQP-VK.api.copy_and_blit.image_to_image_depth value range.
am:
f03effb5a0 -s ours
Change-Id: I26792ef93ead582aabb8bd5beb386588846c7489
Dae Kim [Tue, 20 Feb 2018 13:37:39 +0000 (13:37 +0000)]
Fix verification in robust buffer access tests
Some buffer accesses to addresses less than 16 bytes away from the out
of bounds address where not considered potentially out of bounds, even
when there were out of bounds accesses in the same SPIR-V block.
Affects:
dEQP-VK.robustness.buffer_access.*:
Components: Vulkan
VK-GL-CTS issue: 1025
Change-Id: Ibcb61fb84cecc360d753ba5d3acc1f9d48169651
Dae Kim [Thu, 22 Feb 2018 15:43:54 +0000 (15:43 +0000)]
Added missing gl_PointSizes when drawing points
Some tests using point list primitive topology were not specifying
point sizes with the gl_PointSize built-in.
Affects:
dEQP-VK.subgroups.*
dEQP-VK.synchronization.*
Components: Vulkan
VK-GL-CTS issue: 1035
Change-Id: I6f1690adef24ac76103bc22a86405ceec77865f4
Alexander Galazin [Thu, 22 Feb 2018 17:11:04 +0000 (12:11 -0500)]
Revert "Fix texture lookups tests"
This reverts commit
0dd89ea7126f19cca176ffaa6bb47a259671570f.
Change-Id: I3612c45a6b85819e4cc3f5dcef992743f3964c65
Paavo Pessi [Fri, 9 Feb 2018 14:33:16 +0000 (16:33 +0200)]
Use framebuffer with a compatible render pass
This test has the same functionality as
VkLayerTest.RenderPassInUseDestroyedSignaled, which breaks some
shipping drivers in the validation tests.
The test creates two compatible render passes having differing image
layouts and load/store operations. The first render pass is used to
create a framebuffer and the framebuffer is used to begin the second
render pass.
The test passes as long as no crash happens.
New tests:
dEQP-VK.api.pipeline.renderpass.framebuffer_compatible_renderpass
Components: Vulkan
VK-GL-CTS issue: 830
Change-Id: I0b47c8620c06ac3d0ca5288f642908de6dff656b
Chris Forbes [Thu, 22 Feb 2018 18:14:13 +0000 (10:14 -0800)]
Merge remote-tracking branch 'khronos/master' into deqp-dev
Change-Id: Iadea35019f1362e92a5e67ca7383df27cba6d1fd
Ari Suonpaa [Wed, 7 Feb 2018 05:51:33 +0000 (07:51 +0200)]
Added pipeline creation test matching a crashing layer test
Added test similar to
VkPositiveLayerTest.CreatePipelineInputAttachmentPositive. Some
shipping drivers were crashing these tests. Results are not checked
and the tests pass as long as no crash happens.
New tests:
dEQP-VK.pipeline.matched_attachments.*
Components: Vulkan
VK-GL-CTS issue: 834
Change-Id: I955dd3f852b69e52d70b1f14919ad6d75964d30b
Paavo Pessi [Tue, 16 Jan 2018 13:16:00 +0000 (15:16 +0200)]
Extend combined image sampler tests
Two types of new tests were added. The first type has a single combined
image sampler descriptor which is accessed in shader with separate
image and sampler variables using the same binding value.
The second type has two combined image sampler descriptors with
separate image and sampler variables. Sampler from the first descriptor
and image from the second descriptor are used to form a new sampled
image.
New tests:
dEQP-VK.spirv_assembly.instruction.compute.image_sampler.imagefetch.combined_image_sampler_separate_variables.*
dEQP-VK.spirv_assembly.instruction.compute.image_sampler.imagefetch.combined_image_sampler_separate_descriptors.*
dEQP-VK.spirv_assembly.instruction.compute.image_sampler.imagesample.combined_image_sampler_separate_variables.*
dEQP-VK.spirv_assembly.instruction.compute.image_sampler.imagesample.combined_image_sampler_separate_descriptors.*
dEQP-VK.spirv_assembly.instruction.graphics.image_sampler.imagefetch.combined_image_sampler_separate_variables.*
dEQP-VK.spirv_assembly.instruction.graphics.image_sampler.imagefetch.combined_image_sampler_separate_descriptors.*
dEQP-VK.spirv_assembly.instruction.graphics.image_sampler.imagesample.combined_image_sampler_separate_variables.*
dEQP-VK.spirv_assembly.instruction.graphics.image_sampler.imagesample.combined_image_sampler_separate_descriptors.*
Components: Vulkan
VK-GL-CTS issue: 940
VK-GL-CTS public issue: 75
Change-Id: I56fc049001f3ac4d59cdaa7c28749ba57c46ce29
Panagiotis Apostolou [Wed, 17 Jan 2018 09:45:06 +0000 (10:45 +0100)]
New dEQP-VK.ycbcr.conversion.one_to_one subgroup
Added subgroup one_to_one in dEQP-VK.ycbcr.conversion which adds 16 tests. The
purspose is to test rendering into a destination with the same dimensions
as the sampled YCbCr image (1:1 mapping).
New tests:
dEQP-VK.ycbcr.conversion.one_to_one.implicit_nearest_16x16_*
dEQP-VK.ycbcr.conversion.one_to_one.implicit_nearest_20x12_*
Components: Vulkan
VK-GL-CTS issue: 980
Change-Id: Ifb7d3cfa8fa4ec7dd99094ef94be680a53c7d5e7
Alexander Galazin [Thu, 22 Feb 2018 14:23:23 +0000 (15:23 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I34f59a239f54a494734f6934cdadf9cc45d02fcb
Piotr Byszewski [Fri, 16 Feb 2018 17:06:36 +0000 (18:06 +0100)]
Suppress irrelevant packed pixels log
PackedPixelsTests log statistics during test destruction. That log
is needed only when therea are changes applyed to packed pixels so
there is no need for it to be printed during every glcts execution.
Change-Id: I4be85db2fa31c4218bb3715c32f46cf09ae2e0a5
Components: OpenGL
Piotr Byszewski [Mon, 5 Feb 2018 14:42:27 +0000 (15:42 +0100)]
Test internal formats conversions
This change contains a port of GTFTestCopyTexImageConversions.c
This test verifies that glCopyTexImage2D() implementation accepts
internalformats that are compatible with effective internalformat
of current read buffer.
Components: OpenGL
VK-GL-CTS issue: 978
Affects:
KHR-GLES3.copy_tex_image_conversions.*
Change-Id: Ic51c5bb758debe2e1aaa01d6d110c89310a4e21e
Piotr Byszewski [Mon, 22 Jan 2018 13:31:08 +0000 (14:31 +0100)]
Fix negative texture and fbo attachment tests
Negative GetFramebufferAttachmentParameteriv test
for ES2 properly handles case when it is executed on
ES3 capable hardware.
This change also resolves enum issue for negative
TexSubImage2D test. Invalid enum caused generation
of different error code then expected.
Components: OpenGL
VK-GL-CTS issue: 316
Affects:
dEQP-GLES2.functional.negative_api.texture.texsubimage2d_neg_wdt_hgt
dEQP-GLES2.functional.negative_api.state.get_framebuffer_attachment_parameteriv
Change-Id: Ib22eeba95fca7af3a66ab25934bdaf88362de2b2
Alexander Galazin [Thu, 22 Feb 2018 13:03:32 +0000 (14:03 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I8cb0743b2ee95da2aecc89a20310b735aeff36eb
Alexander Galazin [Thu, 22 Feb 2018 12:54:58 +0000 (13:54 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.3 into vk-gl-cts/master
Change-Id: Ie121814de1999c5d3f67080646ea53228f30f7d3
Piotr Byszewski [Thu, 18 Jan 2018 11:40:35 +0000 (12:40 +0100)]
Fix ES2 attachement query test
Error codes changed for ES3 and because of that different
version of test should be used when ES2 context is created
on ES3 compatible hardware.
Components: OpenGL
VK-GL-CTS issue: 287
Affects:
dEQP-GLES2.functional.fbo.api.attachment_query_empty_fbo
Change-Id: I04cb2f4796892d166d56ea0b9584401af3fc3363
Piotr Byszewski [Fri, 26 Jan 2018 16:34:24 +0000 (17:34 +0100)]
Fix cube map filtering and wrap tests
Tests were adjusted so that they also work correctly on
ES3 capable hardware.
Components: OpenGL
VK-GL-CTS issue: 285
Affects:
dEQP-GLES2.functional.texture.vertex.cube.filtering.*
dEQP-GLES2.functional.texture.vertex.cube.wrap.*
Change-Id: I7a8b2511dd6eaff3038c6ace0481b96e0b918d66
Nicolas Capens [Thu, 25 Jan 2018 16:58:26 +0000 (16:58 +0000)]
Update AOSP mustpass for flush/wait test.
The dEQP-GLES3.functional.flush_finish.flush_wait test now produces a
CompatibilityWarning instead of a Failure if the (overly strict) test
assumptions aren't met. Hence it can be added back to the mustpass set.
See:
https://android-review.googlesource.com/c/platform/external/deqp/+/600456
VK-GL-CTS issue: 975
Google bug: b/
71858368
Khronos bug: 13916
internal bug:
20558284
Components: AOSP
Affects: dEQP-GLES2.functional.flush_finish.*,
dEQP-GLES3.functional.flush_finish.*
Change-Id: I3ac84b6f95986dac95b9a8e5ccff95fd384c096c
Piotr Byszewski [Fri, 26 Jan 2018 10:18:53 +0000 (11:18 +0100)]
Handle corner case in random shader generator
Comparision of floats with the same value in reference renderer
does not always produce the same result due to varyings
precision error. This patch resolves this issue by adding
epsilon to one of the floats.
Components: OpenGL
VK-GL-CTS issue: 286
Affects:
dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.*
Change-Id: I4310dcee8ace4e39c66a744901501ee9ccfceafc
Alexander Galazin [Thu, 22 Feb 2018 11:45:50 +0000 (12:45 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I115b3e16d7282ef5f9abeb5bd382f744d891b5e3
Alexander Galazin [Thu, 22 Feb 2018 11:27:36 +0000 (12:27 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.0.3
Change-Id: Icb528802155f2ffdfe35e23f84a35403a29acd74
Ari Suonpaa [Tue, 12 Sep 2017 08:10:01 +0000 (11:10 +0300)]
Add tests for texture*ClampARB and sparseTexture*ClampARB.
Extended glsl.texture_functions tests to include texture*ClampARB
and sparseTexture*ClampARB functions.
Affects:
dEQP-VK.glsl.texture_functions.texture*clamp.*
Components: Vulkan
VK-GL-CTS issue: 86
Change-Id: Id080404fe2f0e849b5d5b6c5a84481794cb3ce3e
Andrey Tuganov [Mon, 5 Feb 2018 17:14:40 +0000 (12:14 -0500)]
Fix invalid memory semantics in barrier tests
The tests were breaking the rule:
"If the semantics for OpControlBarrier is not None,
then it must include at least one storage class."
https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html#spirvenv-module-validation
Affects: dEQP-VK.spirv_assembly.instruction.graphics.barrier.*
Components: Vulkan
VK-GL-CTS issue: 989
Change-Id: I3a1d42ae6f0a6ca63e3f32b76f09fa736ff49dc0
Ari Suonpaa [Tue, 13 Feb 2018 10:31:11 +0000 (12:31 +0200)]
Use default device for spir-v assembly tests
All extensions required by spir-v assembly tests are supported by
default device, but the feature queries were missing. These are now
included with the default device, and the features can be requested
directly using a context object. This allows the default device to
be used in spir-v assembly tests.
Affects:
dEQP-VK.spirv_assembly.*
Components: Vulkan
VK-GL-CTS issue: 1007
Change-Id: Ie3c530ceb31316a66b1b513e856e33e714e771a1
Tom Cooper [Mon, 12 Feb 2018 16:20:58 +0000 (16:20 +0000)]
Fix low memory in dedicated_alloc buffer tests
Observe platform memory limits to avoid low memory conditions.
Components: Vulkan
VK-GL-CTS issue: 1008
Affects: dEQP-VK.api.buffer.dedicated_alloc.create_buffer_*
Change-Id: Ib184b648126e8cb6e1acff533447a86be9a1a612
Ari Suonpaa [Tue, 30 Jan 2018 13:28:53 +0000 (15:28 +0200)]
Add timestamp tests that use two command buffers
Added tests similar to
VkPositiveLayerTest.QueryAndCopyMultipleCommandBuffers and
VkPositiveLayerTest.QueryAndCopySecondaryCommandBuffers. Some
shipping drivers were crashing these tests. Results are not
checked and the tests pass as long as no crash happens.
New tests:
dEQP-VK.pipeline.timestamp.misc_tests.two_cmd_buffers_*
Components: Vulkan
VK-GL-CTS issue: 842, 843
Change-Id: I1e5c863c11d4b23a387267c5d9a83e4caf9b3849
Paavo Pessi [Wed, 7 Feb 2018 09:22:39 +0000 (11:22 +0200)]
Test using a pipeline whose render pass has been destroyed
This test has the same functionality as
VkPositiveLayerTest.DestroyPipelineRenderPass.
The test creates two compatible render passes. The first one is used
to create the graphics pipeline and the second one is used for
everything else. The first render pass is destroyed while the second
render pass is active and the graphics pipeline is bound to a
command buffer.
The test passes as long as no crash happens.
New tests:
dEQP-VK.api.pipeline.renderpass.destroy_pipeline_renderpass
Components: Vulkan
VK-GL-CTS issue: 833
Change-Id: I7eff6595da6dcfacfe8c49b14c2f9a36d5436088
Hernan Liatis [Tue, 30 Jan 2018 18:19:08 +0000 (10:19 -0800)]
Create Graphics tests for OpName
These tests make sure that OpName has no impact on the semantics of
graphics kernels. Note that the vertex shader template
(makeVertexShaderAssembly) changes %main to %BP_main.
New tests:
dEQP-VK.spirv_assembly.instruction.graphics.opname.*
Components: Vulkan
VK-GL-CTS issue: 936
VK-GL-CTS public issue: 76
Change-Id: I2c15b9a8cc9d1482548c32bf7f1acf8d02fc2e89
Ari Suonpaa [Fri, 12 Jan 2018 12:42:31 +0000 (14:42 +0200)]
Add OpVariable initialization tests
Added tests for OpVariable initialization. Tests are for private and
output storage classes.
New tests:
dEQP-VK.spirv_assembly.instruction.*.variable_init.*
Components: Vulkan
VK-GL-CTS issue: 873
Change-Id: I7cb29648642d617409719cd0cfa40ee7acfb3548