platform/upstream/VK-GL-CTS.git
5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Fri, 24 Aug 2018 07:26:54 +0000 (09:26 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: Ie5d1d301b96c8eff6a7d974de13c1d35195d7b26

5 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Fri, 24 Aug 2018 07:26:51 +0000 (09:26 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: I5b4bdc020c0dda7ec55aafd498cd1f1193b9c77b

5 years agoVulkan AHB - fix incorrect structure definition
Tony Zlatinski [Thu, 16 Aug 2018 13:17:28 +0000 (08:17 -0500)]
Vulkan AHB - fix incorrect structure definition

Fix a missing VkComponentMapping field of the VkAndroidHardwareBufferFormatPropertiesANDROID
structure. This is causing incorrect values to be populated to the
structure, as well as, a stack overwrite of other stack-located locals.

Affects:
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.r8g8b8a8_unorm
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.r5g6b5_unorm_pack16
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.r16g16b16a16_sfloat
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.a2b10g10r10_unorm_pack32

Components: Vulkan
VK-GL-CTS issue: 1305
VK-GL-CTS issue: 1316

Change-Id: I81eb1cc605912bf0adebe67b65d7ccdd31236ec9

5 years agoFix copy/paste errors in opundef assembly tests
Daniel Koch [Thu, 16 Aug 2018 02:55:06 +0000 (22:55 -0400)]
Fix copy/paste errors in opundef assembly tests

The tests were using %is_nan_0 repeatedly instead of %is_nan_<i>

Affects: dEQP-VK.spirv_assembly.instruction.graphics.opundef.*
(likely only the vec4float32 and matrix subsets)
Component: Vulkan
VK-GL-CTS: 1315

Change-Id: I2bed6e94f6867c424c5102ef3eeab8ac32021dcd
(cherry picked from commit a46089154137e0939c02bdcabc74f5daa303ffb2)

5 years agoFix copy/paste errors in opundef assembly tests
Daniel Koch [Thu, 16 Aug 2018 02:55:06 +0000 (22:55 -0400)]
Fix copy/paste errors in opundef assembly tests

The tests were using %is_nan_0 repeatedly instead of %is_nan_<i>

Affects: dEQP-VK.spirv_assembly.instruction.graphics.opundef.*
(likely only the vec4float32 and matrix subsets)
Component: Vulkan
VK-GL-CTS: 1315

Change-Id: I2bed6e94f6867c424c5102ef3eeab8ac32021dcd

5 years agoRemove broken/redundant barrier for multiview depth/stencil readback
Chris Forbes [Mon, 18 Jun 2018 20:23:15 +0000 (13:23 -0700)]
Remove broken/redundant barrier for multiview depth/stencil readback

This barrier was set up for color writes, not depth/stencil. It was also
unnecessary, so just remove it.

Change-Id: Ieeec7320f40b273f12f669934298f85702a5985b
Components: Vulkan
VK-GL-CTS: 1288
Affects: dEQP-VK.multiview.*
(cherry picked from commit 9a5be0a660ea73f6c57efd77dff1219ec4e35bf3)

5 years agoFixes geometry shader invocation dependency
Matthew Netsch [Wed, 8 Aug 2018 20:52:35 +0000 (16:52 -0400)]
Fixes geometry shader invocation dependency

dEQP-VK.tessellation.invariance.* updates a SSBO
expecting the implementation to execute the GS
once per primitive. Changes the test to allow
multiple invocations.

Components: Vulkan
VK-GL-CTS Issue: 1281

Affects:
dEQP-VK.tessellation.invariance.*

Change-Id: I6ed17a8afb413587bb38487ec9952f569a250193

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Tue, 7 Aug 2018 10:02:46 +0000 (12:02 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: I87551c21c18956e49aaef393a1f700ad72686912

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Tue, 7 Aug 2018 08:57:19 +0000 (10:57 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: I3ebd996d37e078d937fe79ccc93718b51672e1c4

5 years agoRemoved cache info from logged shaderstrings
Jari Komppa [Wed, 1 Aug 2018 12:52:59 +0000 (15:52 +0300)]
Removed cache info from logged shaderstrings

This fix removes the additional information shader cache includes in the
shader string before logging. Logging change only, does not affect tests
themselves.

Affects: none

Components: Vulkan

VK-GL-CTS issue: 1289

Change-Id: I49f8730816ce28584d9601306ec40be052cee341

5 years agoRemove unconditional depth_clamping for 1.1.1
Simen Kaspersen [Wed, 1 Aug 2018 11:12:14 +0000 (13:12 +0200)]
Remove unconditional depth_clamping for 1.1.1

Changed depthClampEnable from VK_TRUE to VK_FALSE where it is not needed.
Depth clamp specific tests in builtin_var.fragdepth set as not supported for incompatible systems.

NB: Carries the same changes as 1.1.0 patch for depth_clamping, along with changes that are specific for 1.1.1.

Affects:
dEQP-VK.device_group.*
dEQP-VK.api.object_management.*.graphics_pipeline
dEQP-VK.binding_model.shader_access.*
dEQP-VK.glsl.builtin_var.fragdepth.*
dEQP-VK.synchronization.smoke.*
dEQP-VK.renderpass.*
dEQP-VK.spirv_assembly.*
dEQP-VK.api.smoke.unused_resolve_attachment
dEQP-VK.wsi.android.incremental_present.*
dEQP-VK.memory.pipeline_barrier.*

Components: Vulkan

VK-GL-CTS issue: 1286

Change-Id: I0e322c65561c25339fe56e3122401d92df7623a6

5 years agoRemove unconditional depth_clamping for 1.1.0
Simen Kaspersen [Mon, 30 Jul 2018 14:36:31 +0000 (16:36 +0200)]
Remove unconditional depth_clamping for 1.1.0

Changed depthClampEnable from VK_TRUE to VK_FALSE where it is not needed.
Depth clamp specific tests in builtin_var.fragdepth set as not supported for incompatible systems.

Affects:
dEQP-VK.device_group.*
dEQP-VK.api.object_management.*.graphics_pipeline
dEQP-VK.binding_model.shader_access.*
dEQP-VK.glsl.builtin_var.fragdepth.*
dEQP-VK.synchronization.smoke.*
dEQP-VK.renderpass.*
dEQP-VK.spirv_assembly.*
dEQP-VK.api.smoke.unused_resolve_attachment
dEQP-VK.wsi.android.incremental_present.*
dEQP-VK.memory.pipeline_barrier.*

Components: Vulkan

VK-GL-CTS issue: 1286

Change-Id: Ia869da75a74800543afb4f8fddd8bf5e8f7f4a7f

5 years agoIncorrect pipeline barrier in multiview.multisample.*
Gary Sweet [Wed, 1 Aug 2018 07:43:47 +0000 (08:43 +0100)]
Incorrect pipeline barrier in multiview.multisample.*

The barrier between the render and the cmdResolveImage()
in the multiview tests is currently src=COLOR_ATTACHMENT_OUTPUT,
dst=COLOR_ATTACHMENT_OUTPUT. The explicit resolve that follows
is a transfer operation so the destination stage needs to be
TRANSFER_READ to express the correct dependency.

Affects:

dEQP-VK.multiview.multisample.*

Components: Vulkan

VK-GL-CTS issue : 1291

Change-Id: I362c6f2e9f57b140c078b8d326caf042d472a4b3

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Thu, 2 Aug 2018 10:14:08 +0000 (12:14 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: I7d44b39c208f999dcc86793250fecdb69258a165

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Thu, 2 Aug 2018 08:27:48 +0000 (10:27 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: I2b3ff32206b0408c16dd93bc643bdc9bf928dcda

5 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Thu, 2 Aug 2018 08:27:46 +0000 (10:27 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: I178311e0fa4f5276ab325b65460074f60e42c222

5 years agoFix build when SPIRV-Tools is not present
Chris Forbes [Thu, 2 Aug 2018 00:16:17 +0000 (17:16 -0700)]
Fix build when SPIRV-Tools is not present

This function does not require SPIRV-Tools, and is still used when it
is not present.

Components: Framework
VK-GL-CTS: 1293

Change-Id: I9ce49db2e6e55e8d379c713c9fe39d15fb7ecbd6

5 years agoInvalidate memory in draw tests
Alexander Galazin [Tue, 3 Oct 2017 19:29:50 +0000 (21:29 +0200)]
Invalidate memory in draw tests

The test group writes to non-coherent device memory with device,
but fails to call the required invalidate on the region before
reading mapped memory with host.

Components: Vulkan

VK-GL-CTS issue: 529

Affects: dEQP-VK.draw.*

Change-Id: Icf4aa6ea80c8c046e41b37402457b7f094d7ae50
(cherry picked from commit 1ce6e233a6245a1cf81a2a4e88b87c5d381a119a)

5 years agoNew tests for pointers as function parameters
Ari Suonpaa [Mon, 4 Jun 2018 06:49:05 +0000 (09:49 +0300)]
New tests for pointers as function parameters

These new tests fill a coverage hole for passing multiple pointers
to functions and using these pointers to modify data. Alias decoration
is used where needed.

New tests:

dEQP-VK.spirv_assembly.instruction.*.pointer_parameter.*

Components: Vulkan

VK-GL-CTS issue: 1174

Change-Id: I5fc6b0f1b1b5a706acd671b9ecc4e928f988d6c3
(cherry picked from commit ecccf1c61e853a3bef40df45eb3f488c7a0493ae)

5 years agoAdd tests for vkCmdClearColorImage on linear images
Jason Ekstrand [Thu, 12 Jul 2018 19:59:03 +0000 (12:59 -0700)]
Add tests for vkCmdClearColorImage on linear images

New Tests:
dEQP-VK.api.image_clearing.*.clear_color_image.*.linear.*

Renamed Tests:
dEQP-VK.api.image_clearing.*.clear_color_image.*

Components: Vulkan

Change-Id: If0be7b57f7a779fda88b1dd64d15113d115eced2

5 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Alexander Galazin [Thu, 26 Jul 2018 14:31:49 +0000 (16:31 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master

Change-Id: I46b6332876af27cea732a67613759229f7028f7a

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Alexander Galazin [Thu, 26 Jul 2018 13:12:27 +0000 (15:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master

Change-Id: Ifacca1cc17b596f770f07b1e497342f23bc4cf61

5 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Alexander Galazin [Thu, 26 Jul 2018 12:44:32 +0000 (14:44 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: I8f337795a44a35d1058412c49c09702b297203ca

5 years agoMerge vk-gl-cts/github-master into vk-gl-cts/master
Alexander Galazin [Thu, 26 Jul 2018 08:47:38 +0000 (10:47 +0200)]
Merge vk-gl-cts/github-master into vk-gl-cts/master

Change-Id: I4a1a3f2e84c071dc18b3a8247fb0679d6c2d84e3

5 years agoEnsure that SPIR-V Headers are always present
Alexander Galazin [Fri, 20 Jul 2018 10:51:58 +0000 (12:51 +0200)]
Ensure that SPIR-V Headers are always present

Components: Vulkan, OpenGL, Framework

VK-GL-CTS public issue: 108

Change-Id: I6172080e4c025b6ad671ca9c33e08f6fdf8ded6a

5 years agoCall eglSwapBuffers() to ensure wayland surface is attached
Juan A. Suarez Romero [Thu, 7 Jun 2018 10:22:18 +0000 (10:22 +0000)]
Call eglSwapBuffers() to ensure wayland surface is attached

Resize surface tests initially create a window and a surface, ensure
that both has the same size, then perform a window resize, and ensure
that both windows and the surface has the same size.

When using a Wayland target, checking the window size is done calling
wl_egl_window_get_attached_size(). This actually returns the size of the
attached buffer, which is done calling wl_surface_attach().

But wl_surface_attach() is only guaranteed to be done when calling
eglSwapBuffers(); if wl_egl_window_get_attached_size() is invoked
before, it can return 0, as no buffer is attached yet.

To avoid this problem, ensure a buffer is attached before getting the
window size.

Affects:
dEQP-EGL.functional.resize.surface_size.*

Components: OpenGL

VK-GL-CTS issue: 594

Change-Id: I74fb9a10b269ea1e1f7a63457fb0df76f8604547

5 years agoMerge pull request #119 from karolherbst/fix_51
Alexander Galazin [Thu, 26 Jul 2018 07:14:12 +0000 (09:14 +0200)]
Merge pull request #119 from karolherbst/fix_51

Properly handle edge case in GL FP64 tests

5 years agoRequest queue with sparse support only when needed
Alexander Galazin [Fri, 20 Jul 2018 09:12:17 +0000 (11:12 +0200)]
Request queue with sparse support only when needed

Commit a598fe87 added tests for sparse D/S/DS images and
at the same time turned many texture tests into NotSupported
on implementations what do not support sparse.

Components: Vulkan

Affects:
dEQP-VK.texture.compressed.*
dEQP-VK.glsl.texture_functions.texture.sparse*shadow*
dEQP-VK.glsl.texture_gather.*depth32f*sparse*
dEQP-VK.texture.shadow.*sparse*

VK-GL-CTS issue: 1277

Change-Id: I83392d4f1060efbe0b1eebb0dfa8c8d5306113db

5 years agoMerge remote-tracking branch 'khronos/master' into deqp-dev
Chris Forbes [Fri, 20 Jul 2018 16:42:17 +0000 (09:42 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev

Change-Id: Id3c4bfc8862ff4d36b40ea9fc91fd5441b0e6ba9

5 years agoDon't fail DisplayPlaneProperties2 with no display
Liam Middlebrook [Mon, 9 Jul 2018 19:27:02 +0000 (12:27 -0700)]
Don't fail DisplayPlaneProperties2 with no display

Instead, we should mark this test as not supported. The Vulkan spec
states that:
    Devices must support at least one plane on each display

If there are no displays connected, the driver is allowed to return 0
planes.

VK-GL-CTS issue: 1271
Components: Vulkan

Change-Id: I097224fbdf3e25c921ac9b96d16954caab1bb895
Affects: dEQP-VK.wsi.display.get_display_plane_properties2

5 years agoAdd tests for max fragment input component limit
Toni Merilehti [Tue, 22 May 2018 07:42:05 +0000 (10:42 +0300)]
Add tests for max fragment input component limit

New tests for fragment shader using input components
near device's maximum advertised limits. Also added
a new file for upcoming shader tests operating at
device's limits.

New tests:

dEQP-VK.glsl.limits.near_max.fragment_input.components_*

Components: Vulkan

VK-GL-CTS Issue 1128

Change-Id: Ib64d2f85016d8d552632d6a7d3f9a69ebe87a5c5

5 years agoAdd AHardwareBuffer external memory test for format/usage flags.
Khushal [Fri, 23 Mar 2018 02:27:50 +0000 (19:27 -0700)]
Add AHardwareBuffer external memory test for format/usage flags.

Added tests:
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.r8g8b8a8_unorm
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.r5g6b5_unorm_pack16
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.r16g16b16a16_sfloat
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.a2b10g10r10_unorm_pack32

Components: Vulkan
VK-GL-CTS issue: 738

Change-Id: I59726b742aee3a74a98615745bb6da1bfdf46c0b

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Alexander Galazin [Thu, 19 Jul 2018 10:12:05 +0000 (12:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master

Change-Id: I3795395ebc46986139592bd622500863be77d8fd

5 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Alexander Galazin [Thu, 19 Jul 2018 10:11:33 +0000 (12:11 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master

Change-Id: I007b37f5ae9318d15dc1134f7865081aa40cf5de

5 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Alexander Galazin [Thu, 19 Jul 2018 07:00:04 +0000 (09:00 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: I393e8dfab66e2b4b1d5ccdb2684a92e6c0581999

5 years agoFix 8bit uniform buffers arrays strides
Arkadiusz Sarwa [Wed, 11 Jul 2018 14:47:23 +0000 (16:47 +0200)]
Fix 8bit uniform buffers arrays strides

Affects:
dEQP-VK.spirv_assembly.instruction.*.8bit_storage.*

Components: Vulkan

VK-GL-CTS issue: 1269

Change-Id: I3f761efbe6a7e5edc66bc6846eaf90ac4453bd78

5 years agoFix dEQP-GLES3.functional.fbo.multiview.*
Fei Yang [Mon, 2 Jul 2018 08:48:40 +0000 (16:48 +0800)]
Fix dEQP-GLES3.functional.fbo.multiview.*

When the width of render target is an odd value, these tests failed.

The reason is these tests set default sample parameters and sample from
a 512x512 surface, where the left/right views have different colors.
When the width of render target is an odd value, the color of central
line is undefined.

As these tests' purpose is mainly want to verify whether the left/right
views have the different color, but not exactly care what the central
line is, a simple solution is just skip the check of central line.

Components: OpenGL

VK-GL-CTS issue: 1256

Affects: dEQP-GLES3.functional.fbo.multiview.*

Change-Id: I62c86dc7269864a3919b11a331178bfc54d65ab0

5 years agoLoosen threshold in Texture3D tests
Yabin Zheng [Tue, 22 May 2018 03:02:27 +0000 (11:02 +0800)]
Loosen threshold in Texture3D tests

The verification function should consider both src and dst formats
when computing allowed error threshold.

Components: OpenGL

Affects:
KHR-GLES2.texture_3d.sub_image.*

VK-GL-CTS issue: 1243

Change-Id: Ie53aed63724aa75a0da697e30e7625a309acf76b

5 years agoSome glCopyTexSubImage3D related tests conflict with GLES3.2 spec
Yabin Zheng [Fri, 22 Jun 2018 01:50:06 +0000 (09:50 +0800)]
Some glCopyTexSubImage3D related tests conflict with GLES3.2 spec

According to the GLES3.2 spec,  An INVALID_OPERATION error is generated if the
component sizes of internalformat do not exactly match the corresponding
component sizes of the source buffer's effective internal format when call the
glCopyTExSubImage3D function.

The test format is GL_RGBA8, while different config ID will result in different
format in the render buffer. The number of channel bits of some format are not
equal to GL_RGBA8. So we should add a new FBO to restrict the test behavior.

Components: OpenGL

Affects: KHR-GLES2.texture_3d.copy_sub_image.*

VK-GL-CTS issue: 1240

Change-Id: I35c066fce990038e95da1e04197d659929fd8e86

5 years agoFix swap_buffers_with_damage.resize* hang on X11
Lujin Wang [Tue, 26 Jun 2018 18:47:39 +0000 (11:47 -0700)]
Fix swap_buffers_with_damage.resize* hang on X11

In SwapBuffersWithDamageTest, the second time setSurfaceSize() was
called, because the size values were the same as the first call, the
test would hang with XNextEvent() in XlibWindow::setDimensions() waiting
for a ConfigureNotify event that Xserver would not deliver in
ConfigureWindow() if size was not changed.

Changing the if conditions causes size values to change for neighboring
setSurfaceSize calls and resolves the hang.

Affects:
dEQP-EGL.functional.swap_buffers_with_damage.resize*

Components: egl

VK-GL-CTS issue: 1238

Change-Id: I78177ffbef4f7f380d850ad43d83317f82401c7b

5 years agoMerge remote-tracking branch 'khronos/master' into deqp-dev
Chris Forbes [Fri, 13 Jul 2018 18:33:07 +0000 (11:33 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev

Change-Id: I40b59c801207ce6fa52450ba83f719a56b153b0f

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Alexander Galazin [Fri, 13 Jul 2018 14:54:16 +0000 (16:54 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master

Change-Id: I8e4654033220a53f244768f319fb054026b30509

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Fri, 13 Jul 2018 14:54:12 +0000 (16:54 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: I92ddc3da6a7d67e926eb54beeaf1c190fcf7e87a

5 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Fri, 13 Jul 2018 13:18:16 +0000 (15:18 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: I1e3e296b56699e97e9d536332fd6c4405b6f8cf2

5 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Alexander Galazin [Fri, 13 Jul 2018 11:00:25 +0000 (13:00 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master

Change-Id: I1864199105595d697561bcb6641692edbe75aa79

5 years agoUpdate KC CTS reference
Alexander Galazin [Fri, 13 Jul 2018 10:00:10 +0000 (12:00 +0200)]
Update KC CTS reference

Components: Framework

Change-Id: Ie0085e80530c859cbd8f5da72e24e1e4450ce365

5 years agoFix memory allocation tests
Sai Kiran Korwar [Tue, 3 Jul 2018 08:58:52 +0000 (14:28 +0530)]
Fix memory allocation tests

Use deviceMemoryAllocationGranularity to determine if some number
of allocations of a particular size will succeed.
This is useful on when platform specific alignment restrictions are
present.

Components: Vulkan

Affects: dEQP-VK.memory.allocation.basic.size_*

VK-GL-CTS issue: 1259

Change-Id: Iac4f2e7842a826bebf7c641fad1950f6c3d48946

5 years agoAllow two images worth of alignment slop in protected heap
Chris Forbes [Mon, 11 Jun 2018 22:50:16 +0000 (15:50 -0700)]
Allow two images worth of alignment slop in protected heap

We previously backed off by one image worth, but it's not enough in some
cases.

Components: Vulkan
VK-GL-CTS: 1262
Bug: b/109757443
Test: dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create#min_image_count
Change-Id: I01b3a72986e9f35b4ec15a146e4dc576758c02ce
(cherry picked from Android commit 0fd6d1afa4d00ffd3da1d2d1898f32d4e879209d)

5 years agoAdd option to embed validation layers in Android package
Chris Forbes [Mon, 18 Jun 2018 23:52:10 +0000 (16:52 -0700)]
Add option to embed validation layers in Android package

Based on https://github.com/KhronosGroup/VK-GL-CTS/pull/103 but reworked
a bit to allow setting the path directly. This allows easy codevelopment
of layers and tests.

Components: Framework
VK-GL-CTS: 1253

Change-Id: I232e48b82119f6bc358985d39be0def3c5a75766

5 years agoCorrect getProcAddress() handling in robustness tests
Oliver Wohlmuth [Fri, 6 Jul 2018 12:19:17 +0000 (14:19 +0200)]
Correct getProcAddress() handling in robustness tests

The below robustness tests don't use the OpenGL ES extension name when
calling getProcAddress() in an OpenGL ES environment. This change fixes
it by removing the getProcAddress() calls and use gl.XXX() to call these
functions. gl.XXX() takes care of the context it is running in.

Affects:
KHR-NoContext.*.robustness.no_reset_notification
KHR-NoContext.*.robustness.getnuniform
KHR-NoContext.*.robustness.readnpixels

Components: OpenGL
VK-GL-CTS issue: 1267

Change-Id: I4ed18990626f1dd744eebf6b99c18a60a29dad5f

5 years agoProtected memory image access tests not flushing staging buffer
Stephen Gallimore [Thu, 5 Jul 2018 13:40:13 +0000 (14:40 +0100)]
Protected memory image access tests not flushing staging buffer

Affected tests:
dEQP-VK.protected_memory.image.access.*

Components: Vulkan

VK-GL-CTS issue: 1264

Change-Id: I30a6e3b0118b6874b9bfdf625aadec9c0fe54710

5 years agoRemove an unneded type qualifier
Jason Ekstrand [Mon, 9 Jul 2018 04:09:20 +0000 (21:09 -0700)]
Remove an unneded type qualifier

This fixes check_build_sanity.py

Components: Vulkan

Change-Id: I0631c5ef2ede20a68a5853e497acc5e1106ab127

5 years agoAdd tests for packed vertex formats
Toni Merilehti [Wed, 27 Jun 2018 11:30:14 +0000 (14:30 +0300)]
Add tests for packed vertex formats

Added tests for selected packed vertex formats to verify that vertex
attribute values are handled correctly in vertex shader.

New tests:

dEQP-VK.pipeline.vertex_input.single_attribute.*

Components: Vulkan

VK-GL-CTS issue: 1162

Change-Id: Ib20142c33d385e2c95dce1b3c6f547588cf59b2f

5 years agoTextureBarrier required for texture_view.coherency
Neil Monday [Mon, 9 Jul 2018 13:38:16 +0000 (09:38 -0400)]
TextureBarrier required for texture_view.coherency

The third paragraph in section 9.3.1 gives conditions when
texture/framebuffer texture reads/writes are undefined. I
think that this test requires a TextureBarrier as described
in the last bullet point.

Affects:

KHR-GL46.texture_view.coherency

Components: OpenGL

VK-GL-CTS issue: 1183

Change-Id: I231ffd5acd089ebc1a9e0265c2f4a97f2a5c525c

5 years agoRemove shaders.negative.unused_uniform_precision_matching
Tate Hornbeck [Wed, 27 Jun 2018 16:53:11 +0000 (12:53 -0400)]
Remove shaders.negative.unused_uniform_precision_matching

The GLSL spec was updated to "the types, precisions and any location
specifiers of all statically used uniform variables with the same name
must match across shaders that are linked into a single program."

which makes the unused_uniform_precision_matching test invalid.

Updating this test to use statically used uniforms would be
redundant to used_uniform_precision_matching.

Components: OpenGL
VK-GL-CTS issue: 1249

Affects:
KHR-GLES32.shaders.negative.unused_uniform_precision_matching

Change-Id: I6a60c9355144f1d539a6463d913844129e6dfc8d

5 years agoAllow glFramebufferTexture2D with level!=0 in ES2 tests with ES3
James Glanville [Wed, 4 Jul 2018 09:59:44 +0000 (10:59 +0100)]
Allow glFramebufferTexture2D with level!=0 in ES2 tests with ES3

These ES2 tests were expecting GL errors when attaching non-zero
levels to a framebuffer where GL_OES_fbo_render_mipmap is not
supported. This functionality is core in ES3 contexts, so the tests
much assume support for mippmapped rendering in this case.

Affects:
dEQP-GLES2.functional.negative_api.buffer.framebuffer_texture2d
dEQP-GLES2.functional.fbo.api.texture_levels

Components:
dEQP

VK-GL-CTS issue: 1263

Change-Id: I3dc7c8f1f2cc7efb5c227a0aec11983b185be03c

5 years agoShaders Derivate Tests: fix threshold
Juan A. Suarez Romero [Mon, 25 Jun 2018 15:22:48 +0000 (17:22 +0200)]
Shaders Derivate Tests: fix threshold

Derivate tests are calculating the threshold used for validating results
by taking in account a scale. Apparently this is incorrect, and is
causing some tests to fail.

A similar situation happened in Vulkan, and the proper fix was to do not
take in account the scale for the threshold calculation. Hence, applying
the same fix here fixes all the failing tests.

Affects:
dEQP-GLES3.functional.shaders.derivate.*
dEQP-GLES31.functional.shaders.derivate.*

Components: OpenGL

VK-GL-CTS issue: 1237

Change-Id: I106e36a708a6f75768c15ccdb4b064eb562cb28f

5 years agoExclude tests causing OOM
Alexander Galazin [Wed, 27 Jun 2018 07:59:49 +0000 (09:59 +0200)]
Exclude tests causing OOM

Components: OpenGL

Affects:
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_separate_grid_1000x1000_drawcount_5000
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_combined_grid_1000x1000_drawcount_5000
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawelements_separate_grid_1000x1000_drawcount_5000
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawelements_combined_grid_1000x1000_drawcount_5000

VK-GL-CTS issue: 1241

Change-Id: I3bc753391e2739387879ca117e9da29c98286cec

5 years agoAllow glReadPixels() differences due precision errors
Juan A. Suarez Romero [Tue, 19 Jun 2018 07:23:13 +0000 (07:23 +0000)]
Allow glReadPixels() differences due precision errors

When comparing the results from glReadPixels() passing user-space memory
and using a PBO, there could be differences due drivers implementation
following different paths, and thus generating differences because of
precision errors.

Like in dEQP-GLES3.functional.read_pixels.* tests, add a threshold under
which the differences are acceptable.

Affects:
dEQP-GLES3.functional.pbo.*

Components: OpenGL

VK-GL-CTS issue: 1228

Change-Id: I7c9ac5de359cff8deba039b010357eae0da3eaaf

5 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Sun, 8 Jul 2018 17:32:36 +0000 (19:32 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: I8280652b4a92e212649f1f7cf998b2be57f5ef9c

5 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Alexander Galazin [Sun, 8 Jul 2018 17:32:35 +0000 (19:32 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master

Change-Id: I35d4a659eec7320e4ebf9ad4acda6618c8d39608

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Alexander Galazin [Sun, 8 Jul 2018 16:11:14 +0000 (18:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master

Change-Id: I320830efe2f575027608c80a1c6eac896dc09619

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Sun, 8 Jul 2018 16:11:11 +0000 (18:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: Ifcbe9328d752355465f6ea56961e2b16205e6e12

5 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Sun, 8 Jul 2018 16:11:07 +0000 (18:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: Ie88a7283bd969891282983a549c6d18901a9ee7b

5 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Alexander Galazin [Sun, 8 Jul 2018 15:53:48 +0000 (17:53 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: I5c002e83b42b86349ef96b16857bcfd3a3480bea

5 years agoLog SPIR-V dissasembly when validation fails
David Neto [Thu, 5 Jul 2018 15:52:21 +0000 (11:52 -0400)]
Log SPIR-V dissasembly when validation fails

Log the SPIR-V disassembly along with the diagnostic and the test case name.
Don't destroy the evidence.

Change-Id: Iae45b997cb979c38bdf15fa3a066421b971f6730
Components: Framework
VK-GL-CTS: 1265

5 years agoUpdate GL/ES mustpasses
Alexander Galazin [Sun, 8 Jul 2018 15:02:38 +0000 (17:02 +0200)]
Update GL/ES mustpasses

Components: OpenGL

Change-Id: If41b80a7c4ee6aad7f25835baa58d9dd1bb3a016

5 years agoRobust_buffer_access_behavior.texel_fetch relies on undefined behavior
Yabin Zheng [Thu, 21 Jun 2018 01:41:20 +0000 (09:41 +0800)]
Robust_buffer_access_behavior.texel_fetch relies on undefined behavior

The failed test behavior is :
Create a mipmap texture as a dst texture and attach its level 1 texture
to the framebuffer colorattachment0 as render target. Create a mipmap
texture as a src texture and fill some data to its level 1 texture.
Use "texelFetch" in the fragment shader to sample level 1 source
texture(mipmap) and draw it to the dst texture.

According to the GLES3.2 spec:
The results of texelFetch builtins are undefined if the computed level
of detail is not the texture's base level and the texture's minification
filter is NEAREST or LINEAR.

Modify the test for the mipmap case.

Components: OpenGL

Affects:
KHR-NoContext.es32.robust_buffer_access_behavior.texel_fetch

VK-GL-CTS issue: 1236

Change-Id: Id67ea894a3dd423bba611ccc11a131b80d38fc64

5 years agoIncrease threshold GLES3 blend tests
Juan A. Suarez Romero [Wed, 20 Jun 2018 16:37:58 +0000 (18:37 +0200)]
Increase threshold GLES3 blend tests

The threshold used in dEQP-GLES3.functional.fragment_ops.blend.* is
computed using a non-scientific ad hoc formula.

As stated in a comment, when using few color bits, the blend operations
brings extra inaccuracy, which requires to increase the threshold.

Apparently, the current threshold value is not enough when using a RGB565
configuration, and it should be increased.

Moreover, the threshold used in GLES2 blend tests is a bit bigger, and
using this threshold for the GLES3 blend tests fixes the problems with
RGB565.

Thus this commit applies the GLES2 blend tests threshold to GLES3 tests.

Affects:
dEQP-GLES3.functional.fragment_ops.blend.default_framebuffer.*

Components: OpenGL

VK-GL-CTS issue: 1230

Change-Id: I7269768a9591fc70532312d8cc13481252a6f6e2

5 years agoDo not fail if no config is available
Juan A. Suarez Romero [Fri, 8 Jun 2018 08:27:33 +0000 (08:27 +0000)]
Do not fail if no config is available

If the backend does not support any EGL config with the required
attributes, make the test UnSupported rather than Fail.

Affects:
dEQP-EGL.functional.wide_color.*

Components: OpenGL

VK-GL-CTS issue: 1210

Change-Id: Ic3c37e68530b4ac0fac72e713023542645bd8288

5 years agoInterface mismatch in KHR-GL45.enhanced_layouts.xfb_block_stride
asokolow [Fri, 30 Mar 2018 09:30:41 +0000 (11:30 +0200)]
Interface mismatch in KHR-GL45.enhanced_layouts.xfb_block_stride

There is an interface mismatch between Vertex and Geometry shaders
used in this test. VS is lacking an output variable that GS is reading.

VK-GL-CTS Issue: 1223

Components: OpenGL

Affects: KHR-GL45.enhanced_layouts.xfb_block_stride

Change-Id: I597f5dd8b553a0a47fe00eebb701822e9ef8f678

5 years agoFormat mismatch between bound texture and image layout specifier
asokolow [Tue, 12 Jun 2018 08:59:10 +0000 (10:59 +0200)]
Format mismatch between bound texture and image layout specifier

According to GL 4.6 spec
(https://www.khronos.org/registry/OpenGL/specs/gl/glspec46.core.pdf - page 291)
- Any image variable used for shader loads or atomic memory operations must be
declared with a format layout qualifier matching the format of its associated
image unit.

Currently test binds the texture as GL_RGAB32UI but shader expects it to be
rgba32f. According to table 8.26 this leads to format mismatch.

Components: OpenGL

VK-GL-CTS Issue: 1222

Affected:
KHR-GL45.shader_atomic_counter_ops_tests.*

Change-Id: Ib55594371b234919b912753a4d2da1f426b55a82

5 years agoSearch a longer list of random triangles in EGL render tests
James Glanville [Tue, 12 Jun 2018 13:50:26 +0000 (14:50 +0100)]
Search a longer list of random triangles in EGL render tests

This set of tests contain a loop that searches a random set of
coordinates for triangles that are large enough.

The random number seed used is the test name, and it happens that
this test's seed does not generate enough large triangles in under
40 iterations (the max before abort)

This change increases the maximum number of iterations to 100.
This will have no impact on runtime/output on any tests that
already successfully run.

Affects:
dEQP-EGL.functional.render.*

Components:
dEQP

VK-GL_CTS issue:
1213

Change-Id: Ibbd8316940f7d43d343082d21ae7aa7d17d865b4

5 years agoGet an EGLConfig supporting pbuffers
Juan A. Suarez Romero [Wed, 6 Jun 2018 14:29:37 +0000 (14:29 +0000)]
Get an EGLConfig supporting pbuffers

Several tests create pbuffer surfaces, but they are asking for EGL
configuration that supports windows, instead of pbuffers.

Affected tests:
dEQP-EGL.functional.multicontext.*
dEQP-EGL.functional.sharing.gles2.multithread.*

Components: OpenGL

VK-GL-CTS issue: 1204

Change-Id: Ifcee406eb37cbf5fb16ffba851247772909992b6

5 years agoAdded tests for rasterizer discard
Toni Merilehti [Thu, 31 May 2018 11:05:10 +0000 (14:05 +0300)]
Added tests for rasterizer discard

New tests were added to verify correct functionality when setting
rasterizerDiscardEnable to VK_TRUE in rasterizationStateCreateInfo.
Tests verify that primitives are discarded before rasterization by
comparing the rendered image to a blank reference image and ensuring
that no fragment shader invocations have occured.

New tests:

dEQP-VK.rasterization.discard.*

Components: Vulkan

VK-GL-CTS issue: 1149

VK-GL-CTS public issue: 100

Change-Id: Ided170a2831efaac7e393ce8cafb93269180b3d0

5 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Sun, 8 Jul 2018 12:45:07 +0000 (14:45 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: Ie72582139799c3bc5a8943a056bdbde3410a0054

5 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Alexander Galazin [Sun, 8 Jul 2018 12:45:05 +0000 (14:45 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master

Change-Id: I5cc2ec5db45c7389e4371f10cf5c68186b43169e

5 years agoMerge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5
Alexander Galazin [Sun, 8 Jul 2018 12:45:02 +0000 (14:45 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5

Change-Id: I7c25701183541186be93af679e622f169f5d37e1

5 years agoMerge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4
Alexander Galazin [Sun, 8 Jul 2018 12:44:59 +0000 (14:44 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4

Change-Id: Ice7c3e12cfbc1982ab7d9e363670d81c77c6e7e4

5 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Sun, 8 Jul 2018 09:41:59 +0000 (11:41 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: Ia44bdd5c4993686508bfa1ecc85b8a528b958f32

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Alexander Galazin [Fri, 6 Jul 2018 21:12:08 +0000 (23:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master

Change-Id: Id18cb2c55524e201388d4021d3755ed9f2c722db

5 years agoProperly handle edge case in GL FP64 tests
Karol Herbst [Sun, 1 Jul 2018 23:22:32 +0000 (01:22 +0200)]
Properly handle edge case in GL FP64 tests

c1784ee541a30d700e7caed735353ac109d507c6 attempted to fix #51 already, but
had a few shortcommings:

1. it checked if a edge case is present by comparing the expected and the first argument
   actually the actual result and the first argument have to be compared. The expected result
   was always 0, so this condition was never true;
2. while iterating over the components the edge_case_present was set bac to false if the
   last component wasn't an edge case

fix those issues and make drivers pass the test where floor(a/a) might return 0

5 years agoMerge remote-tracking branch 'khronos/master' into deqp-dev
Chris Forbes [Fri, 6 Jul 2018 22:00:13 +0000 (15:00 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev

Change-Id: Ic89c9892ac27df09c6246f5f86a9013d6c0ea59f

5 years agogl_PrimitiveIDIn tests have sketchy loop bounds.
Marcin Rogucki [Wed, 25 Oct 2017 11:33:44 +0000 (13:33 +0200)]
gl_PrimitiveIDIn tests have sketchy loop bounds.

Components: Vulkan

VK-GL-CTS issue: 778

Updates:
dEQP-VK.geometry.basic.primitive_id_in
dEQP-VK.geometry.basic.primitive_id_in_restarted

Change-Id: Icd2be56814de18067ce058a5f2a1da80338f80d6
(cherry picked from commit 52b7de31e0bccf62ca28d820f4dc2d0d52793aa8)

5 years agoDrop linear filter requirement from YCbCr tests
Jarred Davies [Thu, 5 Apr 2018 09:51:23 +0000 (10:51 +0100)]
Drop linear filter requirement from YCbCr tests

Remove requirement for YCbCr base formats to support
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT from
format_properties tests.

The standard does not require support for this feature
from any YCbCr format.

Affects:

dEQP-VK.api.info.format_properties.g8_b8_r8_3plane_420_unorm
dEQP-VK.api.info.format_properties.g8_b8r8_2plane_420_unorm

Components: Vulkan

VK-GL-CTS issue: 1090

Change-Id: I6fa1c6c7a7f9768c2001972ae1f04173310aa652
(cherry picked from commit eab78dce0d08f4ec22cece6be8003f554ede5882)

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Fri, 6 Jul 2018 20:13:57 +0000 (22:13 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: I02b6ca03cf03b1280440b8bcc497afc98f85037f

5 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Fri, 6 Jul 2018 20:06:52 +0000 (22:06 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: I141a0abc53983443da9a5bb7c905538f1ddb4f22

5 years agoFix 8bit storage spir-v tests
Arkadiusz Sarwa [Fri, 8 Jun 2018 07:29:49 +0000 (09:29 +0200)]
Fix 8bit storage spir-v tests

Wrong name of the function has been changed in the spir-v code.

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.8bit_storage.*

Components:
Vulkan

VK-GL-CTS issue:
1203

Change-Id: I71b9b87e53776b0afb4d82c32a2bfae8b40ec88b
(cherry picked from commit 493d9dee0595daaf07873271fd6f1b8737246b3d)

5 years agoAllowed device extensions list is missing entry
Marcin Kańtoch [Thu, 7 Jun 2018 13:42:25 +0000 (15:42 +0200)]
Allowed device extensions list is missing entry

VK_KHR_create_renderpass2 is missing from the list of allowed
extensions in dEQP-VK.api.info.device.extensions test.
This causes the test to fail if the extension is exposed
in the driver.

Affects:

dEQP-VK.api.info.device.extensions

Components: Vulkan

VK-GL-CTS issue: 1208

Change-Id: I7024db0f775487b5601b5e8c82a807c58d070883
(cherry picked from commit 62deeb1fc1bcda275ff652c6466f9570a2fad75d)

5 years agoMerge vk-gl-cts/vulkan-cts-next-dev into vk-gl-cts/master
Alexander Galazin [Fri, 6 Jul 2018 14:40:37 +0000 (16:40 +0200)]
Merge vk-gl-cts/vulkan-cts-next-dev into vk-gl-cts/master

Change-Id: I4c564522620ff7f2bf6270b8b409c84c67804216

5 years agoMerge vk-gl-cts/github-vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Fri, 6 Jul 2018 10:24:12 +0000 (12:24 +0200)]
Merge vk-gl-cts/github-vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: I29544b2f3f6b7bee65ac6ac1339eb52176efe5a5

5 years agoFix build error introduced by the previous commit
Alexander Galazin [Fri, 6 Jul 2018 10:21:32 +0000 (12:21 +0200)]
Fix build error introduced by the previous commit

Components: Vulkan

5 years agoUpdate SPIR-V tools and headers
Alexander Galazin [Wed, 4 Jul 2018 07:17:56 +0000 (09:17 +0200)]
Update SPIR-V tools and headers

Components: Framework

Change-Id: I6ed52b681738664ee471d78e59fc843c0b41319a

5 years agoMerge remote-tracking branch 'khronos/master' into deqp-dev
Chris Forbes [Tue, 3 Jul 2018 18:06:16 +0000 (11:06 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev

Change-Id: I2b4f4875da8ed35ec419db23dcacfc30751eae48

5 years agoCompile shaders for 1.0-compatible tests as SPIRV 1.0, not max supported
Chris Forbes [Fri, 2 Mar 2018 21:22:20 +0000 (13:22 -0800)]
Compile shaders for 1.0-compatible tests as SPIRV 1.0, not max supported

Components: Vulkan
VK-GL-CTS: 1232

Change-Id: I5a440f97f79be0e6d37d89018ae8b611e9d4e7c1

5 years agoDrop support for NDK r11
Chris Forbes [Mon, 18 Jun 2018 18:32:39 +0000 (11:32 -0700)]
Drop support for NDK r11

Change-Id: Ia17f539c248543b1fe8cdba96cf25347db0dc7b5
Components: Framework
VK-GL-CTS: 1194

5 years agoAHardwareBuffer make the system API dynamic
Tony Zlatinski [Fri, 25 May 2018 21:57:20 +0000 (16:57 -0500)]
AHardwareBuffer make the system API dynamic

Instead of asserting and crashing the tests, when
the AHardwareBuffer handle is not supported, throw an exception:
"Platform doesn't support Android Hardware Buffer handles"

Move all of the AHB system APIs from implicit to dynamically loaded
and encapsuate those within the AndroidHardwareBufferExternalApi class.
Dynmaically probing and loading the AHB related API allows for run-time
selection of the symbols and to determine if AHB APIs are supported or not.
This, also, allows for the CTS to always be built against NDK API26/28.
After this change, we can make the default NDK API as API26, since
this change would allow for the CTS to work on Android APIs 21-25,
as well as the newer API versions of the NDK.

In addition, moved all of the AHB related interfaces to one place:
vktExternalMemoryUtil.cpp.

Affects:
dEQP-VK.api.external.memory.android_hardware_buffer.*

Components: Vulkan
VK-GL-CTS issue: 1192

Change-Id: I5145eff2fbcf084bfc8ff42751102979f9a28d72

5 years agoCheck required peer memory features in sparse resources device group tests
Maciej Jesionowski [Fri, 29 Jun 2018 09:52:54 +0000 (11:52 +0200)]
Check required peer memory features in sparse resources device group tests

This is a minimal fix to these cases to not use the memory in unsupported way.
The tests will return NotSupported if the required features are missing.

Affects:
dEQP-VK.sparse_resources.*device_group*

VK-GL-CTS issue: 1252

Components: Vulkan

Change-Id: Ia55509eef39c30e2283ba41d87ce55294edf6a17

5 years agoAdd tests for compute pipeline derivatives
Chris Forbes [Tue, 5 Jun 2018 01:15:25 +0000 (18:15 -0700)]
Add tests for compute pipeline derivatives

Initial touch-tests for CreateComputePipelines using a base pipeline by
index and by handle. I intend to add more over time, but this is enough
to expose trouble in some implementations.

VK-GL-CTS: 1220
Components: Vulkan
New Tests: dEQP-VK.pipeline.derivative.*

Change-Id: I693f5be8a2b1087b0a2eb89e1110b1c671cbd5dc

5 years agoAllow fp16 denorm inputs to be flushed to zero.
Stephen Clarke [Fri, 15 Jun 2018 13:09:03 +0000 (14:09 +0100)]
Allow fp16 denorm inputs to be flushed to zero.

Added a new version of Compare16BitFloat for an fp16 input and a float
result.  Previously, the code was using the version for a float input
with an fp result and switching the original and returned values.
But this function is not symmetric: e.g. a denorm input and zero result
should be allowed, but a zero input and denorm result should not be
allowed.
Also removed the rounding modes parameter, since conversion from fp16
to float is exact.

Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16struct_to_32struct.*
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_32struct_to_16struct.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.uniform_16struct_to_32struct.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.uniform_32struct_to_16struct.*

Components: Vulkan

VK-GL-CTS issue: 1219

Change-Id: I96d01bb428b550de1e86a601b929d08b3131870d