platform/upstream/VK-GL-CTS.git
6 years agoAdd missing barrier to texel_view_compatible tests
Maciej Jesionowski [Mon, 23 Oct 2017 10:14:36 +0000 (12:14 +0200)]
Add missing barrier to texel_view_compatible tests

There was no GPU to Host barrier. GPU writes are not automatically
visible to the Host.

Affected tests: dEQP-VK.image.texel_view_compatible.compute.*
VK-GL-CTS issue: 786
Components: Vulkan

Change-Id: I47797add1c5e48dfa1a7c7be8897e822091c2044

6 years agoRemove OpUConvert to signed integer tests
Andrey Tuganov [Thu, 28 Sep 2017 21:18:51 +0000 (17:18 -0400)]
Remove OpUConvert to signed integer tests

OpUConvert only convers to unsigned integers.

Affects: dEQP-VK.spirv_assembly.instruction.
compute.uconvert.*
Components: Vulkan

VK-GL-CTS issue: 720

Change-Id: I68b13c8584d64359e52910091347de03b933ba42

6 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)

6 years agoYCbCr image views need a VkSamplerYcbcrConversionInfo
Tom Cooper [Wed, 25 Oct 2017 06:26:39 +0000 (08:26 +0200)]
YCbCr image views need a VkSamplerYcbcrConversionInfo

Ensure the image views are created using the
VkSamplerYcbcrConversionInfo object via the pNext
chaining, as this is mandated by the Spec.

Affects:
dEQP-VK.ycbcr.query.*

Components: Vulkan

VK-GL-CTS issue: 788

Change-Id: If641b08432c26ca5b32c084c4c0b9c7f935bcb94
(cherry picked from commit 9a9419aa130a51b6e24a564e6a3997a88af2504e)

6 years agoAvoid hitting fp16 NaN values
Piers Daniell [Wed, 18 Oct 2017 17:01:13 +0000 (11:01 -0600)]
Avoid hitting fp16 NaN values

Modify the test references values to avoid situations where
they hit NaN values when viewed as fp16. This can happen
when uploading {0.1, 0.5, 0.9, 0.2} to r8g8b8a8_unorm which,
depending on the rounding of the 0.5, could end up as a 0x7F
value which when viewed as the MSB of a fp16 value is a NaN.

Affects:

dEQP-VK.image.mutable.*

Components: Vulkan

VK-GL-CTS Issue: 784

Change-Id: I2adbd27aa7d94254c9f19d788eacace2ea95d10c
(cherry picked from commit d51c248f04b980406d9b767064170b77b682cac7)

6 years agoInvalid handle in create_display_plane_surface
Alex Walters [Wed, 13 Dec 2017 15:47:23 +0000 (15:47 +0000)]
Invalid handle in create_display_plane_surface

This test attempts to create a display plane surface but incorrectly
fills in the VkDisplaySurfaceCreateInfo with an index into dEQP's array
of display modes instead of the VkDisplayModeKHR handle itself.

The app is required to specify a valid handle.

An invalid handle results in undefined behaviour.

Affects:

dEQP-VK.wsi.display.create_display_plane_surface

Components: Vulkan
VK-GL-CTS issue: 906

Change-Id: I9fbbd40926e26bf82ed11dc1b5e807922cbc4e73
(cherry picked from commit 3e6306a1f1abba17d9b3f4e36913576fa33ac13d)

6 years agoFix some CTS bugs that cause validation failures
Piers Daniell [Wed, 22 Nov 2017 20:23:12 +0000 (13:23 -0700)]
Fix some CTS bugs that cause validation failures

Most of these are misuse of the dstStageMask parameter to
vkCmdPipelineBarrier. The dstStageMask has to be compatible
with the destination access type of the buffer or image.

The other large source of validation errors is a bug
in the CTS framework when calling vkCreateDevice. The
wrong pNext member was used for setting the enabled
features. The effect is that all features were disabled.

Affects:

dEQP-VK.pipeline.push_constant.graphics_pipeline.*
dEQP-VK.pipeline.multisample_shader_builtin.sample_mask.pattern.*
dEQP-VK.*

Components: Vulkan

VK-GL-CTS issue: 862

Change-Id: I58ca4e033d7d66b52c6726a635808b9b747546d8
(cherry picked from commit 23336be1abda90e87d9bbaf5e0398ca489f0cbc6)

6 years agoAdd StorageImageExtendedFormats cap check
Alexander Galazin [Fri, 6 Oct 2017 20:07:30 +0000 (22:07 +0200)]
Add StorageImageExtendedFormats cap check

dEQP-VK.image.texel_view_compatible.compute.* didn't check
for shaderStorageImageExtendedFormats

Component: Vulkan

VK-GL-CTS issue: 753

Affects:
dEQP-VK.image.texel_view_compatible.compute.*

Change-Id: I957329a66d2f4bedb950a597a702ec29680418de
(cherry picked from commit 1a42786b8dba4e091e1012a458d3ad17457a6b66)

6 years agoEnforce OOB requirements for binding with multiple attributes
Noah Fredriks [Thu, 9 Nov 2017 21:00:29 +0000 (16:00 -0500)]
Enforce OOB requirements for binding with multiple attributes

The spec states that, if any vertex input attribute using a specific
vertex input binding is out of bounds, then all vertex input attributes
using that vertex input binding for that vertex shader invocation are
considered out of bounds.

Affects: dEQP-VK.robustness.vertex_access.*.vertex_incomplete

Components: Vulkan

VK-GL-CTS issue: 848

Change-Id: I6a9222a0b2a53368af361419105793a5301a6bf6
(cherry picked from commit 65df12f839cea43333b11a4da900f838d5f44150)

6 years agoPipeline must be bound before calling vkCmdSetViewport/Scissor etc
Tom Cooper [Wed, 22 Nov 2017 15:57:37 +0000 (15:57 +0000)]
Pipeline must be bound before calling vkCmdSetViewport/Scissor etc

Affects:
dEQP-VK.dynamic_state.*

Components: Vulkan

VK-GL-CTS issue: 861

Change-Id: I0f5312c83096cebebfa4ab01987c2ab9ede7306b
(cherry picked from commit f156345ea872a2913b09b076373bea715f89e3c9)

6 years agoRemove check for depthBounds support in frag depth tests
Alexander Galazin [Mon, 2 Oct 2017 07:13:02 +0000 (09:13 +0200)]
Remove check for depthBounds support in frag depth tests

The tests validate gl_FragDepth. This builtin should not
require any extra feature to be supported.

Components: Vulkan

VK-GL-CTS: 690

Affects: dEQP-VK.glsl.builtin_var.fragdepth.*

Change-Id: I7df775d074e5b9e6dd01f573f5a8545f3db72550
(cherry picked from commit 822f7251791c8b75ad1733c5fc6b4ec3240000ea)

6 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)

6 years agoAvoid assert in dEQP-VK.tessellation.fractional_spacing
Slawomir Cygan [Fri, 22 Sep 2017 15:23:05 +0000 (17:23 +0200)]
Avoid assert in dEQP-VK.tessellation.fractional_spacing

The test code dereferences first element of empty std::vector, what
may cause an assert in debug builds (depending on toolchain and it's
settings).

Addects: dEQP-VK.tessellation.*

Components: Vulkan

VK-GL-CTS issue: 710

Change-Id: I2b94a0d03c3523ebf1380a9371765c616fd21b82
(cherry picked from commit b81810d2446bac26ea0d5fb017250934842eb643)

6 years agoFix depth & stencil passOp for pipeline.render_to_image tests
Petros Bantolas [Mon, 18 Sep 2017 16:07:22 +0000 (17:07 +0100)]
Fix depth & stencil passOp for pipeline.render_to_image tests

Affects:
dEQP-VK.pipeline.render_to_image.*_array* with stencil attachments

Those tests render to each layer of the texture in consecutive
subpasses. With a depth/stencil passOp of VK_STENCIL_OP_ZERO, subpasses
after the first one fail the stencil test and skip the render.

Components: Vulkan

VK-GL-CTS issue: 678

Change-Id: Ia704192b8d7e316dacaa7549faa5cb5aa0def60e
(cherry picked from commit 09c67dc11c94f48a03a91c5be920fb940cdc792c)

6 years agoFix unreasonable memory expectations in pipeline.render_to_image
Arkadiusz Sarwa [Tue, 12 Sep 2017 11:28:39 +0000 (13:28 +0200)]
Fix unreasonable memory expectations in pipeline.render_to_image

Affects:
dEQP-VK.pipeline.render_to_image.*

Components: Vulkan

VK-GL-CTS issue: 526

Change-Id: I71ea0381663c39786b227ed712e1111ec3c71cfb
(cherry picked from commit 069aa0ad097f543438b39a260eea52278867ffa8)

6 years agoFix imageExtent to use correct destination size
Piers Daniell [Wed, 4 Oct 2017 16:51:12 +0000 (10:51 -0600)]
Fix imageExtent to use correct destination size

This fixes an issue with using imageParms to specify the
imageExtent for the cases where the test has done scaling
between the source and destination surfaces.

VK-GL-CTS issue: 729

Affects:

dEQP-VK.api.copy_and_blit.*

Change-Id: I4053496dfa1fdedd9edb7e108e554cb988559bcf
Components: Vulkan
(cherry picked from commit 16986d105c5af4c4ef6f8f54df5c42ec5c357bb5)

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Thu, 11 Jan 2018 12:40:43 +0000 (13:40 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: Iff4b07d342db175706efd91f3197b93cb51b520d

6 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Alexander Galazin [Thu, 11 Jan 2018 09:09:54 +0000 (10:09 +0100)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: I89462b96db4a611bd2e5fc6727b42b3d6c6d7d5c

6 years agoRound up vertex buffer size to stride multiple to fix OOB attribute reads
Noah Fredriks [Fri, 3 Nov 2017 18:20:06 +0000 (14:20 -0400)]
Round up vertex buffer size to stride multiple to fix OOB attribute reads

Partial stride multiple vertex buffer elements are now considered OOB
to accomodate implementations that fetch stride-sized elements

Affects: dEQP-VK.texture.*

Components: Vulkan

VK-GL-CTS issue: 812

Change-Id: I72a2143146b4ea0d893d70d41b7ca2c84c34542a
(cherry picked from commit 50c0544ec8c2e99158bf8a375eacfc9baf364a91)

6 years agoTest OES_texture_3D
Piotr Byszewski [Wed, 27 Sep 2017 09:29:27 +0000 (11:29 +0200)]
Test OES_texture_3D

Test functions added to ES2 by GL_OES_texture_3D.

Components: OpenGL

VK-GL-CTS issue: 8, 139

Affects:
KHR-GLES2.texture_3d.*

Change-Id: I652cfc9dc4cfb02cf653f557f7fdd0219e5b90ac

6 years agoFix Windows build
Boris Zanin [Tue, 9 Jan 2018 14:18:11 +0000 (15:18 +0100)]
Fix Windows build

UINT64_MAX is undefined under Windows. Use standard workaround.

Affects:

dEQP-VK.synchronization.basic.semaphore.chain

Components: Vulkan

Vk-GL-CTS issue: 822

Change-Id: Ib65d6770dd92cc29c89b66934e147a3ef319efeb

6 years agoAdd tests for VK_EXT_sampler_filter_minmax
Slawomir Cygan [Mon, 31 Jul 2017 16:51:55 +0000 (18:51 +0200)]
Add tests for VK_EXT_sampler_filter_minmax

This adds testing coverage for VK_EXT_sampler_filter_minmax extension,
that extends sampler by adding MIN/MAX/AVERAGE reduction filters.

Framework changes:
Add support for reduction modes in tcu: Sampler and TexLookupVerifier

Vulkan changes:
Add support for depth and depth/stencil images,
non-trivial component mappings (including ZERO and ONE swizzlers)
dEQP-VK.pipeline.sampler tests.

If filterMinmaxImageComponentMapping is enabled, check
required VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT
flag in dEQP-VK.api.* tests.

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

New tests:
dEQP-VK.pipeline.sampler.view_type.*.format.(any color format).min_reduce.*
dEQP-VK.pipeline.sampler.view_type.*.format.(any color format).mag_reduce.*
dEQP-VK.pipeline.sampler.view_type.*.format.(any depth format)

Components: Framework, Vulkan

VK-GL-CTS issue: 627

Change-Id: Icd4be2517a0dcc91b32444dd805010c804c4c3fd

6 years agoTest packed pixels
Piotr Byszewski [Mon, 20 Nov 2017 07:53:56 +0000 (08:53 +0100)]
Test packed pixels

GTFTestPackedPixels tests were ported to glcts. Tests work
on both ES and core GL. All preprocessor generated code was
replaced with templates or proper conditions.
Internal format loop was extracted outside of the tests.
Found TEXTURE_3D issue was corrected.

Components: OpenGL

VK-GL-CTS issue: 816

Affects:
KHR-GLES3.packed_pixels.*
KHR-GL32.packed_pixels.*

Change-Id: I9621e548f7fb7c3a23cfa64ec3ac72d04e0a46b7

6 years agoMerge remote-tracking branch 'aosp/master' into deqp-dev
Chris Forbes [Fri, 5 Jan 2018 18:54:28 +0000 (10:54 -0800)]
Merge remote-tracking branch 'aosp/master' into deqp-dev

Change-Id: I28aea0779a4f9627f3a5b7a0e24832db208dfcb7

6 years agoMerge remote-tracking branch oreo-mr1-cts-dev into master.
Xin Li [Thu, 4 Jan 2018 21:57:05 +0000 (13:57 -0800)]
Merge remote-tracking branch oreo-mr1-cts-dev into 

Test: presubmit
Bug: 69859815
Change-Id: I47e94db994e07a7b159d840d1a2283bf072eb09f

6 years agoRun Draw*BaseVertex if EXT_draw_elements_base_vertex is present
Alexander Galazin [Wed, 16 Aug 2017 09:36:01 +0000 (11:36 +0200)]
Run Draw*BaseVertex if EXT_draw_elements_base_vertex is present

Draw*BaseVertex methods are enabled if
the EXT_draw_elements_base_vertex extension is present
Follow-up on 1b1ea05b

Components: AOSP
Bug: 70716357
Test: run on google devices

Affects: dEQP-GLES31.functional.draw_base_vertex.*

Change-Id: If8a4860a956c771ec5ea3341e2227f437b12a286
(cherry picked from commit 079ca561114713d31e05c4124b8daeef764cf9b8)
Merged-In: 079ca561114713d31e05c4124b8daeef764cf9b8

6 years agoReport tests using Draw*BaseVertex as NotSupported
Alexander Galazin [Wed, 16 Aug 2017 09:36:01 +0000 (11:36 +0200)]
Report tests using Draw*BaseVertex as NotSupported

Draw*BaseVertex methods were added in GLES 3.2.
Report tests using these methods as NotSupported if
GLES 3.1 context is returned.

Components: AOSP

Affects: dEQP-GLES31.functional.draw_base_vertex.*

Bug: 70716326
Test: run on google devices

Change-Id: I87c918d5f66a0a5b547f8e625c662203a7f85048
(cherry picked from commit 1b1ea05b4e8d6e9dbb07187b0af6bc12c315fb4e)
Merged-In: 1b1ea05b4e8d6e9dbb07187b0af6bc12c315fb4e

6 years agoRemove dEQP-GLES31.*vertex_array.*_invalid_map tests
David Sodman [Thu, 18 May 2017 16:30:17 +0000 (09:30 -0700)]
Remove dEQP-GLES31.*vertex_array.*_invalid_map tests

Tests made assumptions about GL error returned from glDrawElements*
functions when passed a mapped buffer object, but, that error is not
supported by the specification.

Affects: dEQP-GLES31.*vertex_array.*
Components: AOSP
Bug: 37942569
Bug: 70716290
Test: run on google devices

Change-Id: Ic066dfbe717ff1e7741bec8ee870b09b99362dc7
(cherry picked from commit 428a2256159883c651a409c4e0cbe031953f4c4e)
Merged-In: 428a2256159883c651a409c4e0cbe031953f4c4e

6 years agoMerge "Switch to libc++."
Treehugger Robot [Thu, 21 Dec 2017 18:52:44 +0000 (18:52 +0000)]
Merge "Switch to libc++."

6 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master upstream/0.1.0
Alexander Galazin [Thu, 21 Dec 2017 09:27:31 +0000 (10:27 +0100)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: I54dd3fa2721062d5c1aff86ab1df315061f8914b

6 years agoSwitch to libc++.
Dan Albert [Wed, 20 Dec 2017 23:13:57 +0000 (15:13 -0800)]
Switch to libc++.

gnustl is being removed.

Bug: None
Test: make checkbuild
Change-Id: If41a886c8dcf2abc5aa4e30de4bce58c45cd6387

6 years agoAdd Travis CI support
Andres Gomez [Wed, 1 Nov 2017 15:25:39 +0000 (17:25 +0200)]
Add Travis CI support

Provides optional integration with Travis CI for the GitHub's clone.

Change-Id: Ibd9158dbce51d93458ba59180e01983f3451917f

6 years agoFix mustpass generation
Chris Forbes [Tue, 19 Dec 2017 19:15:37 +0000 (11:15 -0800)]
Fix mustpass generation

In 303f5900b4 we started emitting this element, but the generator was
slightly bogus.

Test: build mustpass

Change-Id: I2cf36637ba3264e1c254407d8f49f8c96b9d0cac

6 years agoAdded test to stress semaphore chains
Jari Komppa [Thu, 30 Nov 2017 09:15:54 +0000 (11:15 +0200)]
Added test to stress semaphore chains

Added a test that creates a chain of 32k semaphores.

Affects:

dEQP-VK.synchronization.basic.semaphore.chain

Components: Vulkan

Vk-GL-CTS issue: 822

Change-Id: I69322e30d4087081b84bf55903e4ccaaf3fe5193

6 years agoFix stageMask (0x1) usage in various tests
Paavo Pessi [Wed, 13 Dec 2017 07:51:40 +0000 (09:51 +0200)]
Fix stageMask (0x1) usage in various tests

Pipeline barriers using PIPELINE_STAGE_TOP_OF_PIPE_BIT with nonzero
access mask were modified to use proper pipeline stage flags.

Affects:

dEQP-VK.memory.binding.*
dEQP-VK.pipeline.stencil.*
dEQP-VK.pipeline.blend.*
dEQP-VK.pipeline.depth.*
dEQP-VK.pipeline.image.*
dEQP-VK.pipeline.sampler.*
dEQP-VK.pipeline.image_view.*
dEQP-VK.pipeline.push_constant.*
dEQP-VK.pipeline.multisample.*
dEQP-VK.pipeline.vertex_input.*
dEQP-VK.pipeline.input_assembly.*
dEQP-VK.pipeline.cache.*
dEQP-VK.compute.basic.ssbo_cmd_barrier_single
dEQP-VK.compute.basic.ssbo_cmd_barrier_multiple
dEQP-VK.compute.basic.copy_image_to_ssbo_small
dEQP-VK.compute.basic.copy_image_to_ssbo_large
dEQP-VK.geometry.basic.output_vary_by_texture
dEQP-VK.geometry.basic.output_vary_by_texture_instancing

Components: Vulkan

VK-GL-CTS issue: 806

Change-Id: I99ba8d4818475e096f62121beb247646bc546a9a

6 years agoAdded two-step variants of surface clear tests
Jari Komppa [Tue, 12 Dec 2017 12:48:39 +0000 (14:48 +0200)]
Added two-step variants of surface clear tests

Some platforms have had issues with the validation layer test which
first clears the first layer of a depth-stencil surface and immediately
afterwards clears all the layers with VK_REMAINING_ARRAY_LAYERS. This
change adds tests that do the same for all the depth-stencil formats, as
well as all the color formats where VK_REMAINING_ARRAY_LAYERS parameter
makes sense.

Affects:

dEQP-VK.api.image_clearing.core.clear_color_image.1d.remaining_array_layers_twostep.*
dEQP-VK.api.image_clearing.core.clear_color_image.2d.remaining_array_layers_twostep.*
dEQP-VK.api.image_clearing.core.clear_depth_stencil_image.remaining_array_layers_twostep.*
dEQP-VK.api.image_clearing.dedicated_allocation.clear_color_image.1d.remaining_array_layers_twostep.*
dEQP-VK.api.image_clearing.dedicated_allocation.clear_color_image.2d.remaining_array_layers_twostep.*
dEQP-VK.api.image_clearing.dedicated_allocation.clear_depth_stencil_image.remaining_array_layers_twostep.*

Components: Vulkan

VK-GL-CTS issue: 835

Change-Id: I2666ddf4074f1c427124991bbfd1f9c21f8cab5e

6 years agoAdd suite component to DEQP test module
Julien Desprez [Tue, 19 Dec 2017 06:24:17 +0000 (06:24 +0000)]
Add suite component to DEQP test module

Test: build
Bug: 65303193
Change-Id: I5102a2c0d7b4e49eafeaddea344208325ca7f300

6 years agoMerge remote-tracking branch 'aosp/master' into deqp-dev
Chris Forbes [Mon, 18 Dec 2017 18:58:37 +0000 (10:58 -0800)]
Merge remote-tracking branch 'aosp/master' into deqp-dev

Change-Id: I4d373d9415e648dce80dc7c6112df5743a34cb54

6 years agoMerge "Avoid watchdog timeout in Vulkan builtin precision tests" into oreo-cts-dev
Chris Forbes [Sat, 16 Dec 2017 00:41:49 +0000 (00:41 +0000)]
Merge "Avoid watchdog timeout in Vulkan builtin precision tests" into oreo-cts-dev
am: aa801278e8

Change-Id: I5818c937676ad5c4c79814be1c39c8c264949977

6 years agoMerge "Avoid watchdog timeout in Vulkan builtin precision tests" into oreo-cts-dev
Chris Forbes [Sat, 16 Dec 2017 00:38:19 +0000 (00:38 +0000)]
Merge "Avoid watchdog timeout in Vulkan builtin precision tests" into oreo-cts-dev
am: aa801278e8

Change-Id: If513bb7ec4ab4b80695291633dc4f7990c69f28b

6 years agoMerge "Avoid watchdog timeout in Vulkan builtin precision tests" into oreo-cts-dev
Treehugger Robot [Sat, 16 Dec 2017 00:34:23 +0000 (00:34 +0000)]
Merge "Avoid watchdog timeout in Vulkan builtin precision tests" into oreo-cts-dev

6 years agoAdd missing JNIEXPORT and JNICALL to create*CTSActivity JNI calls
Daniel Koch [Fri, 15 Dec 2017 15:20:07 +0000 (10:20 -0500)]
Add missing JNIEXPORT and JNICALL to create*CTSActivity JNI calls

Mimics what was done in 1e7c5746fb3d02262bf5f29b90bb4d2eb9d6ded4

VK-GL-CTS Issue: 914
Component: Framework
Affects: GL and ES CTS test runners on Android.

Change-Id: Ia58a8aa890e642ad08b8ee6dbed9dec4f69d68d3

6 years agoUse GIT_FOUND instead of Git_FOUND variable
Daniel Koch [Fri, 15 Dec 2017 14:01:26 +0000 (09:01 -0500)]
Use GIT_FOUND instead of Git_FOUND variable

Git_FOUND seems to have been added in CMake 3.5.x
whereas GIT_FOUND was supported much earlier.
Without this change versions of CMake < 3.5.x end up with
'dEQP Core uknown (0xcafebabe)' output instead of the
correct GCID being emedded and thus they cannot be valid
for submissions.

VK-GL-CTS Issue: 911
Component: Framework

Change-Id: I8f459b9442e4b23db4872e380de97609893db455

6 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Alexander Galazin [Fri, 15 Dec 2017 10:57:48 +0000 (11:57 +0100)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: I60447500234c2e7230f1ccf3e9cecc28acf9dd7f

6 years agoFix Invalid VkImageSubresourceRange
Noah Fredriks [Thu, 14 Dec 2017 19:48:48 +0000 (14:48 -0500)]
Fix Invalid VkImageSubresourceRange

Pipeline image barrier was using the arraySize of the wrong image.

Affects: dEQP-VK.api.copy_and_blit.core.resolve_image.*

Components: Vulkan

VK-GL-CTS Issue: 910

Change-Id: I021bdd0ba5eff9e894f21186b3d85bb2f2c99f16

6 years agoAdd test for sparse render target.
Ari Suonpaa [Fri, 13 Oct 2017 08:18:59 +0000 (11:18 +0300)]
Add test for sparse render target.

Added a test under renderpass group where a sparse image is used
as a render target.

Affects:

dEQP-VK.renderpass.sparserendertarget.*

Components: Vulkan

VK-GL-CTS issue: 101

Change-Id: Ic5244945e580d590667ce09d5350d7c0f5f819e3

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Thu, 14 Dec 2017 11:37:57 +0000 (12:37 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: I7f080f5ba46222eeda2819617d182d7d4dffbcb9

6 years agoModify spirv_assembly tests adding dependency on 16bit_storage extension
Jeff Leger [Sat, 2 Dec 2017 02:16:28 +0000 (21:16 -0500)]
Modify spirv_assembly tests adding dependency on 16bit_storage extension

Several tests were using 16bit_storage, but were not checking the
extension was supported nor declaring the required opCapability.

Affects:
dEQP-VK.spirv_assembly.instruction.compute.sconvert.*
dEQP-VK.spirv_assembly.instruction.compute.uconvert.*

Components: Vulkan

VK-GL-CTS issue: 875

Change-Id: I07fda13c69cdef09967d4aab5067edff07c47fa1

6 years agoFix stageMask (0x1) usage in renderpass, image and texture tests
Paavo Pessi [Mon, 4 Dec 2017 08:57:40 +0000 (10:57 +0200)]
Fix stageMask (0x1) usage in renderpass, image and texture tests

Pipeline barriers using PIPELINE_STAGE_TOP_OF_PIPE_BIT with nonzero
access mask were modified to use proper pipeline stage flags.

Memory barrier structure members were renamed to match the current
specification.

Affects:

dEQP-VK.renderpass.suballocation.simple.*
dEQP-VK.renderpass.suballocation.formats.*
dEQP-VK.renderpass.suballocation.attachment.*
dEQP-VK.renderpass.suballocation.attachment_allocation.*
dEQP-VK.renderpass.dedicated_allocation.simple.*
dEQP-VK.renderpass.dedicated_allocation.formats.*
dEQP-VK.renderpass.dedicated_allocation.attachment.*
dEQP-VK.renderpass.dedicated_allocation.attachment_allocation.*
dEQP-VK.image.store.*
dEQP-VK.image.load_store.*
dEQP-VK.image.format_reinterpret.*
dEQP-VK.image.qualifiers.restrict.*
dEQP-VK.image.atomic_operations.*
dEQP-VK.image.texel_view_compatible.*
dEQP-VK.image.extended_usage_bit.attachment_write.*
dEQP-VK.image.extended_usage_bit.texture_write.*
dEQP-VK.texture.*

VK-GL-CTS issue: 806

Change-Id: Iab4699f095d4ea1206736cb0435863f17bd3bca3

6 years agoRelax precision for atan2 built-in precision tests
Jeff Leger [Sun, 22 Oct 2017 15:54:31 +0000 (11:54 -0400)]
Relax precision for atan2 built-in precision tests

The precision of atan2 is relaxed to 5 ULPs.

Affects:

 dEQP-VK.glsl.builtin.precision.atan2.*

Components:  Vulkan

VK_GL_CTS issue: 749

Change-Id: I146226019f77910d1401903f6e89292ff94c089d

6 years agoModify spirv_assembly tests adding dependency on 16bit_storage extension
Jeff Leger [Sat, 2 Dec 2017 02:16:28 +0000 (21:16 -0500)]
Modify spirv_assembly tests adding dependency on 16bit_storage extension

Several tests were using 16bit_storage, but were not checking the
extension was supported nor declaring the required opCapability.

Affects:
dEQP-VK.spirv_assembly.instruction.compute.sconvert.*
dEQP-VK.spirv_assembly.instruction.compute.uconvert.*

Components: Vulkan

VK-GL-CTS issue: 875

Change-Id: I07fda13c69cdef09967d4aab5067edff07c47fa1

6 years agoAvoid creating vkInstances for not supported cases
Noah Fredriks [Wed, 29 Nov 2017 23:27:52 +0000 (18:27 -0500)]
Avoid creating vkInstances for not supported cases

Defer vkInstance creation for cross instance tests until not supported
checks complete to shorten the runtime of these 10k total test cases.

Affects: dEQP-VK.synchronization.cross_instance.*

Components: Vulkan

VK-GL-CTS Issue: 885

Change-Id: I481de90d8c0363c23a287aaf457ac101c327c558

6 years agoFix mediump zero division in matrix inverse tests
Igor Ostrowski [Wed, 15 Nov 2017 17:33:51 +0000 (18:33 +0100)]
Fix mediump zero division in matrix inverse tests

To avoid zero division all input matrix determinants should be same signed.

Affects:
dEQP-VK.glsl.matrix.inverse.*

Components: Vulkan
VK-GL-CTS issue: 881

Change-Id: Ib702f81c4eb7f25ba9081db6ead67da02f484ca9

6 years agoPermit different errors in context creation tests
Michael Chock [Wed, 13 Dec 2017 17:10:18 +0000 (09:10 -0800)]
Permit different errors in context creation tests

dEQP-EGL.functional.negative_api.create_context tests error conditions
EGL supports OpenGL ES, but not a specifically requested version (e.g.,
creating an OpenGL ES 1 context when only OpenGL ES 2 is supported). The
error that should be raised varies based on the governing specification.
EGL 1.4 mandates EGL_BAD_CONFIG. EGL 1.5 mandates EGL_BAD_MATCH.
EGL_KHR_create_context has langage mandating *both* errors in separate
paragraphs.

Accept either error code as appropriate for EGL version and extension
support.

6 years agoDon't assume rendering complete before buffer latch
Mark Adams [Mon, 4 Dec 2017 22:26:54 +0000 (17:26 -0500)]
Don't assume rendering complete before buffer latch

It's valid for the buffer to latch before rendering is completed, and
this is causing intermittent failures.

Bug: b/69981429

Test: --deqp-case=dEQP-EGL*get_frame_timestamps*

(cherry picked from commit 9e0214cf61df1109927f8f23dd5749735057eb30)

Change-Id: Ia9f1d0e4ffa7f3e16a46fc4566157a651d1b0601

6 years agoBlock/non-block uniforms match
Piotr Byszewski [Fri, 3 Nov 2017 09:11:09 +0000 (10:11 +0100)]
Block/non-block uniforms match

Test if uniforms in anonymous blocks do not match loose uniforms with
the same name in a different stage.

Components: OpenGL

VK-GL-CTS issue: 707

Affects:
KHR-GLES3.shaders.uniform_block.common.name_matching
KHR-GL33.shaders.uniform_block.common.name_matching

Change-Id: Ib1ea850ffbea7eb62ddbd6008463c8855f764c7e

6 years agoAdded tests for different shader varying vec width
Jari Komppa [Tue, 21 Nov 2017 12:52:23 +0000 (14:52 +0200)]
Added tests for different shader varying vec width

Vulkan specification (1.0.8, 14.1.3) states that vertex and fragment
shader varyings may differ as long as they are of the same type and the
vertex shader outputs at least as wide vectors as the fragment shader
inputs.

This set of tests link various varying vector types, all of which
are legal even though they do not match.

Affects:

dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_vec4_vec3
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_vec4_vec2
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_vec4_float
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_vec3_vec2
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_vec3_float
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_vec2_float
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_ivec4_ivec3
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_ivec4_ivec2
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_ivec4_int
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_ivec3_ivec2
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_ivec3_int
dEQP-VK.glsl.linkage.varying.rules.legal_mismatch_ivec2_int

Components: Vulkan

VK-Gl-CTS issue: 821

Change-Id: I4afc3edb77fd6f421cafce20d09bbdd948f16dcf

6 years agoTest binding model with multiple descriptor sets
Paavo Pessi [Tue, 10 Oct 2017 08:24:39 +0000 (11:24 +0300)]
Test binding model with multiple descriptor sets

Tests were added to verify that multiple descriptor sets can be used
and accessed in all possible shader stages with all possible descriptor
types.

Multiple descriptor sets are updated using
- vkUpdateDescriptorSets
- vkUpdateDescriptorSetWithTemplateKHR

DescriptorSetUpdateBuilder utility class was modified slightly to
work better with multiple descriptor sets.

New tests:

dEQP-VK.binding_model.shader_access.*.*.*.multiple_descriptor_sets.*

Components: Vulkan, Framework

VK-GL-CTS issue: 91

Change-Id: I6c1a719a7a2af74c3f1eb2a620af1ec73c113411

6 years agoMerge remote-tracking branch 'aosp/master' into deqp-dev
Chris Forbes [Sat, 9 Dec 2017 02:04:07 +0000 (18:04 -0800)]
Merge remote-tracking branch 'aosp/master' into deqp-dev

 Conflicts:
Android.mk
android/cts/master/src/vk-excluded-tests.txt
android/cts/master/vk-master.txt
modules/glshared/glsBuiltinPrecisionTests.cpp

Change-Id: Ic6d2f5de1465158d9f105f9648f117d7b2b915a6

6 years agoDO NOT MERGE: Merge Oreo MR1 into master
Xin Li [Wed, 6 Dec 2017 19:51:52 +0000 (11:51 -0800)]
DO NOT MERGE: Merge Oreo MR1 into master

Exempt-From-Owner-Approval: Changes already landed internally
Change-Id: I71216cb23c2124938de9ae2a75b7cd7a0811d57f

6 years agoDon't assume rendering complete before buffer latch
Mark Adams [Wed, 6 Dec 2017 18:28:29 +0000 (18:28 +0000)]
Don't assume rendering complete before buffer latch
am: 9e0214cf61

Change-Id: Iee3ccf2afef375ac45e60133537a141d685d607f

6 years agoDon't assume rendering complete before buffer latch am: 9e0214cf61
Mark Adams [Wed, 6 Dec 2017 18:21:28 +0000 (18:21 +0000)]
Don't assume rendering complete before buffer latch am: 9e0214cf61
am: eb88a8ca3d

Change-Id: Ic8680791e52474a3d100314c6c90406ae8319a55

6 years agoDon't assume rendering complete before buffer latch
Mark Adams [Wed, 6 Dec 2017 18:08:12 +0000 (18:08 +0000)]
Don't assume rendering complete before buffer latch
am: 9e0214cf61

Change-Id: I72902995d20e746aa7066a46b097be4a2dab5453

6 years agoFix OpCopyObject from U32 to S32
Andrey Tuganov [Tue, 28 Nov 2017 23:28:18 +0000 (18:28 -0500)]
Fix OpCopyObject from U32 to S32

Conversion from U32 to S32 can use neither OpCopyObject (different types),
nor OpSConvert (same bit width). Changed to OpBitcast.

Affects:

dEQP-VK.spirv_assembly.instruction.compute.indexing

Components: Vulkan

VK-GL-CTS issue: 874

Change-Id: I298c2687f3f6f08f28f928623a1002ec72a5a8f8

6 years agoDon't assume rendering complete before buffer latch
Mark Adams [Mon, 4 Dec 2017 22:26:54 +0000 (17:26 -0500)]
Don't assume rendering complete before buffer latch

It's valid for the buffer to latch before rendering is completed, and
this is causing intermittent failures.

Bug: b/69981429

Test: --deqp-case=dEQP-EGL*get_frame_timestamps*

Change-Id: Ia9f1d0e4ffa7f3e16a46fc4566157a651d1b0601

6 years agoFix build when .git is a gitlink file
Chad Versace [Fri, 3 Nov 2017 16:36:30 +0000 (09:36 -0700)]
Fix build when .git is a gitlink file

If ${CMAKE_SOURCE_DIR}/.git exists, then
framework/qphelper/CMakeLists.txt uses the git revision as the dEQP
revision. The CMake rules update the revision when the files
${CMAKE_SOURCE_DIR}/.git/HEAD and ${CMAKE_SOURCE_DIR}/.git/index
change.

However, Git does not require that .git be a directory. If
git-submodules or git-worktrees are used, then .git may be a gitlink
file instead and the real git directory is elsewhere.

Fix the build by using `git rev-parse --git-dir` to find the real git dir
and `git rev-parse HEAD` to query the commit sha1.

This bumps the CMake requirement from 2.8 to 2.8.2. But that should be
safe since 2.8.2 was released in 2010.

Components: Framework
Change-Id: I811630e5afada8e6aed611b0ef6c51e39be2200b

6 years agoAvoid watchdog timeout in Vulkan builtin precision tests
Chris Forbes [Mon, 16 Oct 2017 19:42:35 +0000 (12:42 -0700)]
Avoid watchdog timeout in Vulkan builtin precision tests

Calculating the reference intervals can take a substantial amount of
time. On some very slow targets, this can cause us to trip the watchdog
in the verification loop.

Same approach and limit as in modules/glshared/glsBuiltinPrecisionTests.cpp

Affected tests:
dEQP-VK.glsl.builtin.precision.*

Component: Vulkan

Bug: 67854695
Test: run on google devices
Change-Id: I492b656e7e2a9aa724bb3785bdf1416a4c22ec04

6 years agoTest required_internalformat
Piotr Byszewski [Thu, 12 Oct 2017 08:24:48 +0000 (10:24 +0200)]
Test required_internalformat

GTFExtensionTestRequiredInternalformat was ported to glcts and
highly modified to resolve found issues and enable possibility
to also test core GL.

Components: OpenGL

VK-GL-CTS issue: 718

Affects:
KHR-GL40.internalformat.*
KHR-GLES2.core.internalformat.*
KHR-GLES3.core.internalformat.*
KHR-GLES31.core.internalformat.*
KHR-GLES32.core.internalformat.*

Change-Id: Iaf559e7c3fe955e314402c5190523b2c57c7041e

6 years agoReduce GPU workload of pipeline_barrier tests
Jeff Leger [Wed, 22 Nov 2017 17:12:58 +0000 (12:12 -0500)]
Reduce GPU workload of pipeline_barrier tests

Tests with large buffer sizes will now clamp the
GPU workload to avoid triggering execution timeout
on implementations.

Affects: dEQP-VK-memory.pipeline_barrier.*

Components: Vulkan

VK_GL_CTS issue: 813

Change-Id: I479f6ad04ef2ec6f9d87b65a39a2bc13bcbcc6a2

6 years agoVulkan: Add wide-color tests
Courtney Goeltzenleuchter [Tue, 27 Jun 2017 20:09:01 +0000 (14:09 -0600)]
Vulkan: Add wide-color tests

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

Components: Vulkan

Change-Id: I6813afa38e320ce91642802dfd0c5b6f2d5543b9

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Thu, 30 Nov 2017 13:39:21 +0000 (14:39 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: If36eca15c35d7c5b473b0bcd6af6c40ef0e68322

6 years agoFix stageMask (0x1) usage in binding_model and glsl tests
Paavo Pessi [Fri, 24 Nov 2017 09:03:06 +0000 (11:03 +0200)]
Fix stageMask (0x1) usage in binding_model and glsl tests

Pipeline barriers using PIPELINE_STAGE_TOP_OF_PIPE_BIT with nonzero
access mask were modified to use proper pipeline stage flags.

Memory barrier structure members were renamed to match the current
specification.

Affects:

dEQP-VK.binding_model.*
dEQP-VK.glsl.derivate.*.texture.*
dEQP-VK.glsl.discard.*_texture
dEQP-VK.glsl.texture_functions.*
dEQP-VK.glsl.texture_gather.*
dEQP-VK.glsl.builtin_var.fragdepth.*
dEQP-VK.glsl.builtin.*
dEQP-VK.glsl.opaque_type_indexing.*
dEQP-VK.glsl.atomic_operations.*

VK-GL-CTS issue: 806

Change-Id: Ia223039abed5c4b15ae004fbaa9fba1ebe92056e

6 years agoAdd new tests for OpSConvert and OpFConvert
Mikael Tuomisalo [Fri, 17 Nov 2017 13:54:41 +0000 (15:54 +0200)]
Add new tests for OpSConvert and OpFConvert

Added missing tests for OpSConvert and OpFConvert for compute and
graphics shaders.
Edited SPIR-V templates for OpSpecConstantOp-tests to support data types
other than int32 on tests where other types are required.

New tests:

dEQP-VK.spirv_assembly.instruction.compute.opspecconstantop.sconvert
dEQP-VK.spirv_assembly.instruction.compute.opspecconstantop.fconvert
dEQP-VK.spirv_assembly.instruction.graphics.opspecconstantop.sconvert*
dEQP-VK.spirv_assembly.instruction.graphics.opspecconstantop.fconvert*

Components: Vulkan

VK-GL-CTS issue: 711

Change-Id: Ia3cc3bc3f70f5216e364a2da4fb8fe78079fa445

6 years agoRemoved duplicate fvec3 declaration
Jari Komppa [Wed, 8 Nov 2017 11:05:44 +0000 (13:05 +0200)]
Removed duplicate fvec3 declaration

A couple of tests had duplicate declarations that resolved into
a vector of three floats.

Affects:

dEQP-VK.spirv_assembly.instruction.compute.opphi.vartype_vec3
dEQP-VK.spirv_assembly.instruction.compute.opphi.vartype_struct

Components: Vulkan

VK-GL-CTS issue: 808

Change-Id: I2b2c865f138ebf0fe67fd3b72d413c040c335170

6 years agoFix PIPELINE_STAGE_TOP_OF_PIPE_BIT usage in api tests
Paavo Pessi [Tue, 14 Nov 2017 12:56:41 +0000 (14:56 +0200)]
Fix PIPELINE_STAGE_TOP_OF_PIPE_BIT usage in api tests

Test cases using PIPELINE_STAGE_TOP_OF_PIPE_BIT with nonzero access
mask were modified to use proper pipeline stage flags.

The dstAccessMask mask of a buffer memory barrier created by
ComputeInstanceResultBuffer class was changed from
VK_ACCESS_SHADER_WRITE_BIT to VK_ACCESS_HOST_READ_BIT to better
represent its usage.

Memory barrier structure members were renamed to match the current
specification.

Affects:

dEQP-VK.api.buffer_view.access.*
dEQP-VK.api.command_buffers.render_pass_continue
dEQP-VK.api.command_buffers.order_bind_pipeline
dEQP-VK.api.copy_and_blit.core.image_to_buffer.*
dEQP-VK.api.copy_and_blit.core.buffer_to_buffer.*
dEQP-VK.api.copy_and_blit.dedicated_allocation.image_to_buffer.*
dEQP-VK.api.copy_and_blit.dedicated_allocation.buffer_to_buffer.*

VK-GL-CTS issue: 806

Change-Id: Ifaff60b1cd615889fa4b1fc175a78bdbc00be50c

6 years agoTest if mediump optimizations are not to aggressive
Piotr Byszewski [Thu, 9 Nov 2017 09:49:25 +0000 (10:49 +0100)]
Test if mediump optimizations are not to aggressive

GTF sin and cos tests were ported to glcts as they can also
be used to detect overly optimized set of mediump operations.

Components: OpenGL

VK-GL-CTS issue: 706

Affects:
KHR-GL43.aggressive_optimizations.*
KHR-GLES2.shaders.aggressive_optimizations.*
KHR-GLES3.shaders.aggressive_optimizations.*
KHR-GLES31.shaders.aggressive_optimizations.*
KHR-GLES32.shaders.aggressive_optimizations.*

Change-Id: Idd2ea75ea552b9106792775570d64b347db32276

6 years agoTest component qualifier in shaders
Paavo Pessi [Mon, 30 Oct 2017 13:25:49 +0000 (15:25 +0200)]
Test component qualifier in shaders

Tests were added to verify that various combinations of component
qualifiers can be used with different data types (vec2, vec3, vec4,
ivec2 and ivec4) in following scenarios:

- in vertex shader input
- in fragment shader output
- when passing data from vertex shader to fragment shader

New tests:

dEQP-VK.glsl.440.linkage.varying.component.*

Components: Vulkan

VK-GL-CTS issue: 741

Change-Id: Ie18c420b9d3ba8bd082b98f4618d7fc595b8baba

6 years agoDelete GTF mustpass files
Alexander Galazin [Thu, 23 Nov 2017 11:27:18 +0000 (12:27 +0100)]
Delete GTF mustpass files

OpenGL ES CTS no longer uses GTF module,
time to delete the source files for mustpass

Components: OpenGL

Change-Id: Ib234e47612e48b50e6c34544cebbaba11a2f08c3

6 years agoCorrect robust buffer access behavior tests
Piotr Byszewski [Tue, 31 Oct 2017 16:57:52 +0000 (17:57 +0100)]
Correct robust buffer access behavior tests

Robust buffer access behavior tests vere moved to contexless module.
In addition common version of those test was generalized so that it
can test both es and core GL.

Components: OpenGL

VK-GL-CTS issue: 793

Affects:
KHR-NoContext.es32.robust_buffer_access_behavior.*
KHR-NoContext.gl43.robust_buffer_access_behavior.*

Change-Id: Idd967d00635faff4ec41d57abf203f22286bc145

6 years agoAdded constraints for random access flags
Jari Komppa [Tue, 14 Nov 2017 12:21:06 +0000 (14:21 +0200)]
Added constraints for random access flags

The pipeline barrier tests randomize access flags and stages, sometimes
resulting in access flags being enabled for stages that do not support
said accesses. This fix removes the illegal access flags while leaving
the random flag generation intact.

Affects:

dEQP-VK.memory.pipeline_barrier.*

Components: Vulkan

VK-GL-CTS issue: 814

Change-Id: I135ea8a9e41b5d8428ef77fe6ecbdf2380d80c7d

6 years agoDo not use depthClampEnable unconditionally.
Juan A. Suarez Romero [Fri, 10 Nov 2017 11:20:36 +0000 (11:20 +0000)]
Do not use depthClampEnable unconditionally.

Depth clamping is not needed by these tests, so
do not rely on the optional feature when creating
the pipeline object.

Affects:
dEQP-VK.spirv_assembly.*

Components: Vulkan

VK-GL-CTS issue: 846

Change-Id: I248759e6ac209ccbd7661068c3ef5f1dfb8ca501

6 years agoRemove duplicated definitions in spirv_assembly tests
Juan A. Suarez Romero [Fri, 10 Nov 2017 09:50:10 +0000 (09:50 +0000)]
Remove duplicated definitions in spirv_assembly tests

Duplicated definitions are now allowed.

Affects:
dEQP-VK.spirv_assembly.instruction.compute.opphi.vartype_*
dEQP-VK.spirv_assembly.instruction.compute.opspecconstantop.vector_related
dEQP-VK.spirv_assembly.instruction.graphics.opspecconstantop.vector_related_*

Components: Vulkan

VK-GL-CTS issue: 847

Change-Id: Ie09293ece03eeb25893aa66e7cb23e7ad8fa5e95

6 years agoTest with depth range greater than 1.0 should require extension
Slawomir Cygan [Fri, 27 Oct 2017 10:54:54 +0000 (12:54 +0200)]
Test with depth range greater than 1.0 should require extension

"_deltalarge" variant of tests was using minDepth/maxDepth
outside of valid usage from unextended spec.

Added requirement for VK_EXT_depth_range_unrestricted.

Affects:
dEQP-VK.draw.inverted_depth_ranges.*

Components: Vulkan

VK-GL-CTS issue: 795

Change-Id: I18f1c73d7250865aaba5ed64e6b8da955fec0aea

6 years agox11: Call XInitThreads()
Chad Versace [Tue, 21 Nov 2017 19:40:01 +0000 (19:40 +0000)]
x11: Call XInitThreads()
am: a8bd356e58

Change-Id: I4b4980ba14f0e0482ccbe1d5d26b149b9e63ef05

7 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Wed, 15 Nov 2017 14:46:11 +0000 (15:46 +0100)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: I6b148f6e9948675fbe51b5e7ee04ec4cca24df2c

7 years agoAdd testing for sparse D/S/DS images.
Ari Suonpaa [Fri, 1 Sep 2017 10:40:33 +0000 (13:40 +0300)]
Add testing for sparse D/S/DS images.

Add sparse binding support for shadow texture tests by supporting sparse
binding in texture test util class. Removed unnecessary image aspect
check which prevented shadow sampler testing with sparse images.

Affects:

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

Components: Vulkan

VK-GL-CTS issue: 79

Change-Id: I265f09817493d96b91450f71822b00434bcf6cf3

7 years agoNotice of withdrawal of Vulkan CTS 1.0.0.x and 1.0.1.x
Alexander Galazin [Wed, 8 Nov 2017 08:53:26 +0000 (09:53 +0100)]
Notice of withdrawal of Vulkan CTS 1.0.0.x and 1.0.1.x

Components: Vulkan

Change-Id: I87ec80e470e72e9a51760fdb1f441099b9c4d3a8

7 years agoMerge commit 'eb9533febd01cde88ea23e2b4fc7fa35efb086ab' into HEAD
Xin Li [Mon, 13 Nov 2017 22:35:23 +0000 (14:35 -0800)]
Merge commit 'eb9533febd01cde88ea23e2b4fc7fa35efb086ab' into HEAD

Change-Id: If7b754ce356073d0bfedca11e361c781f48b2c45

7 years agox11: Call XInitThreads()
Chad Versace [Mon, 13 Nov 2017 11:02:02 +0000 (13:02 +0200)]
x11: Call XInitThreads()

Because the X11 manual says we must.

From man:XInitThreads(3):

  The XInitThreads function initializes Xlib support for concurrent
  threads.  This function must be the first Xlib function
  a multi-threaded program calls, and it must complete before any other
  Xlib call is made.

(See also Vulkan spec section "Xlib Platform")

Fixes crash in multithreaded test:

  Test case 'dEQP-EGL.functional.multithread.window'..
  [xcb] Unknown request in queue while dequeuing
  [xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
  [xcb] Aborting, sorry about that.
  deqp-egl: xcb_io.c:165: dequeue_pending_request: Assertion `!xcb_xlib_unknown_req_in_deq' failed.
  Aborted (core dumped)

Change-Id: I2124be592a8d2d9036423cc2f0d71066e0e22939

7 years agoRemove mod from GL mustpass
Alexander Galazin [Fri, 10 Nov 2017 15:13:33 +0000 (16:13 +0100)]
Remove mod from GL mustpass

Components: OpenGL

VK-GL-CTS public issue: 51

Affects:
KHR-GL*.gpu_shader_fp64.builtin.mod_*

Change-Id: Idac62351b9ca926cdcb411990c33e7332e8a9db7

7 years agoUpdate KC CTS reference
Alexander Galazin [Fri, 10 Nov 2017 12:11:07 +0000 (13:11 +0100)]
Update KC CTS reference

Components: OpenGL

Change-Id: I241503a713fc4a15cdcf359c40e2b119b5b5fd4f

7 years agoChange Built-in Functions test case proposal
Adam Czupryna [Thu, 26 Oct 2017 09:56:11 +0000 (11:56 +0200)]
Change Built-in Functions test case proposal

Remove build-in noise* functions testing as tey are deprecated.
Section GLSL to SPIR-V Features Tests / Built-in Functions

Components: OpenGL

VK-GL-CTS issue: 554

Change-Id: I0f3d19bd6fd70c54a32610e68250f4f39f14a708

7 years agoUse proper name for array-of-array varyings.
Juan A. Suarez Romero [Mon, 30 Oct 2017 12:50:23 +0000 (12:50 +0000)]
Use proper name for array-of-array varyings.

varying_structure_location tests have the piece of shader code:

```
struct Data {
    dvec2 single;
    dvec2 array[1];
};

layout (location = 0) flat in Data tes_gs_output[][1];
```

When test tries to verify "single" variable, it tries to access through
"tes_gs_output[0].single", which is not correct. Rather it must use
"tes_gs_output[0][0].single"

Affects:
* KHR-GL46.enhanced_layouts.varying_structure_locations

Components: OpenGL

VK-GL-CTS issue: 796

Change-Id: Ib1c2ac6877f46f0be8530156a184b8fa41349c40

7 years agoAdd depth bounds tests
Igor Ostrowski [Thu, 19 Oct 2017 16:41:40 +0000 (18:41 +0200)]
Add depth bounds tests

New tests:
dEQP-VK.pipeline.depth.format.*_depth_bounds_test
dEQP-VK.dynamic_state.ds_state.depth_bounds_2

Rename:
dEQP-VK.dynamic_state.ds_state.depth_bounds -> depth_bounds_1

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

Change-Id: Ia3efb59c0d295f96687d4e63e34f882286cb41f6

7 years agoGL_ARB_compute_shader required for OpenGL < 4.3
Juan A. Suarez Romero [Mon, 6 Nov 2017 18:50:28 +0000 (19:50 +0100)]
GL_ARB_compute_shader required for OpenGL < 4.3

GL_ARB_compute_shader is part of OpenGL 4.3 and above.

For older versions, it is required to enable it explicitly.

Fixes:
KHR-GL31.CommonBugs.CommonBug_ParenthesisInLayoutQualifierIntegerValue
KHR-GL32.CommonBugs.CommonBug_ParenthesisInLayoutQualifierIntegerValue
KHR-GL33.CommonBugs.CommonBug_ParenthesisInLayoutQualifierIntegerValue
KHR-GL40.CommonBugs.CommonBug_ParenthesisInLayoutQualifierIntegerValue
KHR-GL41.CommonBugs.CommonBug_ParenthesisInLayoutQualifierIntegerValue
KHR-GL42.CommonBugs.CommonBug_ParenthesisInLayoutQualifierIntegerValue

Components: OpenGL

VK-GL-CTS issue: 818

Change-Id: I8e7ab78e29861547f0379feebce0375e1dabf47c

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Fri, 10 Nov 2017 10:24:21 +0000 (11:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: Ib7a8d1973b881cb59b750ac9e2c291bc2602f559

7 years agoTest local workgroup size
Arkadiusz Sarwa [Tue, 10 Oct 2017 15:35:42 +0000 (17:35 +0200)]
Test local workgroup size

Add tests:
dEQP-VK.spirv_assembly.instruction.compute.localsize*

VK-GL-CTS issue: 629

Compoonents: Vulkan

Change-Id: Ibf3a4db7058c99c2dfa498a7c3ddd8794c0af294

7 years agoFix issues reported by validation layers
Igor Ostrowski [Thu, 26 Oct 2017 13:21:18 +0000 (15:21 +0200)]
Fix issues reported by validation layers

Affects:
dEQP-VK.draw.*
dEQP-VK.query_pool.*
dEQP-VK.dynamic_state.*

Components: Vulkan
VK-GL-CTS issue: 809

Change-Id: I6d8d227612e9cf30ad08921e922d756e0fa5c78d

7 years agoDo not use depthClampEnable unconditionally.
Jorg Wagner [Mon, 6 Nov 2017 13:56:49 +0000 (14:56 +0100)]
Do not use depthClampEnable unconditionally.

Depth clamping is not needed by this test, so
do not rely on the optional feature when creating
the pipeline object.

Affects:
dEQP-VK.api.smoke.*

Components: Vulkan

VK-GL-CTS issue: 817

Change-Id: I6794f7f5d17d7610ff43dcb4080a6a30e12ed95b

7 years agoPipeline used in second subpass should set subpass index to 1
Slawomir Cygan [Tue, 31 Oct 2017 10:42:20 +0000 (11:42 +0100)]
Pipeline used in second subpass should set subpass index to 1

Affects:
dEQP-VK.renderpass.sampleread

Components: Vulkan

VK-GL-CTS issue: 800

Change-Id: If387b43ac8469544f9270d747742cbcec66a1f5c