platform/upstream/VK-GL-CTS.git
5 years agoFloat controls: compute: fix for strict 16bit storage validation
David Neto [Thu, 11 Jul 2019 19:12:37 +0000 (15:12 -0400)]
Float controls: compute: fix for strict 16bit storage validation

Emit definitions of float constants only if those constants
are used in the rest of the shader.  In the case of 16bit
float this saves us from having to also declare a Float16 capability.

Non-storage-related use of fp16 requires Float16 capability,
and shaderFloat16 Vulkan feature from VK_KHR_shader_float16_int8.
Such uses include declaring constants, using fp16 arithmetic, etc.

Components: Vulkan

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

VK-GL-CTS issue: 1874

Change-Id: Ia403aac8ae32646329f67bf48d6231af233e9c20

5 years agoAdd missing invalidates in depth/stencil resolve tests
Ricardo Garcia [Wed, 7 Aug 2019 14:18:53 +0000 (16:18 +0200)]
Add missing invalidates in depth/stencil resolve tests

If the driver returns a non-coherent heap then the
dEQP-VK.renderpass2.depth_stencil_resolve.* may fail unpredictably as
the verify methods do not invalidate the result buffer before reading
the contents.

Affected tests:
dEQP-VK.renderpass2.depth_stencil_resolve.*

Components: Vulkan
VK-GL-CTS issue: 1907

Change-Id: I61c3fdc58ff521b751f1181282291ec1d941206b

5 years agoAlways dynamically lookup egl functions
Courtney Goeltzenleuchter [Wed, 10 Apr 2019 21:25:16 +0000 (15:25 -0600)]
Always dynamically lookup egl functions

Android's latest NDK includes support for EGL 1.5 functions.
However, only for API level 29. But due to unified headers
folks building for older API levels will also see the new
functions but won't be able to link. Making the egl functions
dynamic avoids build time issues.

Change-Id: I718e28c7422faf3c7b964ca70b86a1711a08ae54
Affects: EGL
Bug: 1873

5 years agoExplicitly set current values before drawing
James Dong [Mon, 8 Jul 2019 16:39:27 +0000 (10:39 -0600)]
Explicitly set current values before drawing

dEQP-GLES3.functional.vertex_array_objects.all_attributes was relying on
the value of disabled integer attributes. This behavior results in
undefined values, as the initial values for all vertex attributes are of
floating-point type.

Affects:

dEQP-GLES3.functional.vertex_array_objects.all_attributes

Components: AOSP

VK-GL-CTS public issue: 153

Change-Id: I8ffe4b581f100884b46fe68a751bf991cccb71e3

5 years agoBackport performance fix from cts-next-dev
Graeme Leese [Wed, 10 Jul 2019 11:13:29 +0000 (12:13 +0100)]
Backport performance fix from cts-next-dev

The subgroups tests on next-dev have been changed to run on a reduced
set of workgroup sizes to improve performance, so apply that change to
master as well.

Components: Vulkan
Affects: dEQP-VK.subgroups.*

Change-Id: I4fb386b567666589688f7265e5efe6c72d5fd0cd

5 years agoRemove superfluous shuffle code
Graeme Leese [Wed, 10 Jul 2019 10:53:32 +0000 (11:53 +0100)]
Remove superfluous shuffle code

The supportedCheck was checking whether the case was supported but the
actual test code was checking it again.

Components: Vulkan
Affects: dEQP-VK.subgroups.shuffle.*

Change-Id: Ie98cb3aef8fe3f50068fd908feae95735b892f9c

5 years agoUpdate Vulkan headers to 1.1.117
Jeff Bolz [Thu, 8 Aug 2019 04:40:54 +0000 (23:40 -0500)]
Update Vulkan headers to 1.1.117

Should be no functional change, just brings the header up to date
to ease submitting new tests for those extensions. Two minor name
remaps were necessary in gen_framework.py

Components: Vulkan
Change-Id: I44a07f3a5ccd3426c22e95c70f231a24daf0d994

5 years agoMerge vk-gl-cts/gl-subgroups-dev into vk-gl-cts/master
Alexander Galazin [Fri, 9 Aug 2019 13:08:17 +0000 (15:08 +0200)]
Merge vk-gl-cts/gl-subgroups-dev into vk-gl-cts/master

Change-Id: Ib69ac2a513b45fbd1c3bfd72d72ae2b3ed9da046

5 years agoRename subgroup.partitioned tests
Jeff Bolz [Mon, 15 Jul 2019 19:51:44 +0000 (14:51 -0500)]
Rename subgroup.partitioned tests

Somehow the grouping of tests got out of sync with the other subgroup
tests like arithmetic/clustered. This fixes the naming/grouping to
be consistent with those.

Components: Vulkan
Affects: dEQP-VK.subgroups.partitioned.*
Change-Id: Ia8e02fd6ea7df04b91d0d086fcfdbd4e3e265d38

5 years agoUse templates instead of copying code
Graeme Leese [Wed, 26 Jun 2019 12:14:30 +0000 (13:14 +0100)]
Use templates instead of copying code

The precision tests make heavy use of templates yet they still have code
copied rather than making use of the templates. Squash some of the test
factory code into templates.

Components: Vulkan
Affects: dEQP-VK.glsl.builtin.precision*

Change-Id: Ic10cd7b3f65a632bd57b6f3beb01d087185e705a

5 years agoFix 16bit/8bit storage validation for workgroup memory tests
David Neto [Fri, 12 Jul 2019 20:52:03 +0000 (16:52 -0400)]
Fix 16bit/8bit storage validation for workgroup memory tests

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.compute.workgroup_memory.int8
dEQP-VK.spirv_assembly.instruction.compute.workgroup_memory.uint8
dEQP-VK.spirv_assembly.instruction.compute.workgroup_memory.float16

VK-GL-CTS issue: 1874

Change-Id: Ife60e90a6d190fa37b7d8055c1260b363c051e3d

5 years agoNeed Float16 in some derivative tests
David Neto [Fri, 12 Jul 2019 22:07:41 +0000 (18:07 -0400)]
Need Float16 in some derivative tests

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_1.*
dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_2.*
dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_4.*

VK-GL-CTS issue: 1874

Change-Id: Ia75d608568c7580c1f11137507b142e1dbd397fd

5 years agoCheck if the statistics query results are linear
Pawel Ksiezopolski [Wed, 19 Jun 2019 09:07:37 +0000 (11:07 +0200)]
Check if the statistics query results are linear

Current tests check if query results are greater than or equal to
minimum values defined by the specification.
The task of this commit is to create additional constraint that
checks if query results do not produce some random garbage values.
In case of vertex, geometry and tesselation queries it is enough
to perform the same tests few times with varying number of
input vertices and to check if query results are linear.
Linearity of query results is estimated using Pearson correlation
coefficient.

Affects tests:
dEQP-VK.query_pool.statistics_query.*

Components: Vulkan

VK-GL-CTS issue: 876

Change-Id: Ie58b53d2a35291f565ac9c88773a4c2fa5d89656

5 years agoTest input attachments in random descriptor sets test group
Ricardo Garcia [Fri, 5 Jul 2019 09:44:54 +0000 (11:44 +0200)]
Test input attachments in random descriptor sets test group

Add support for input attachments in the random descriptor sets tests
group. This will improve test coverage and allow us to test
vkUpdateDescriptorSetWithTemplate with
VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, which is a case known to be missing
coverage.

Note: every descriptorset_random test will get a new component in its
name with several variants.

Affected tests:
dEQP-VK.binding_model.descriptorset_random.*

Components: Vulkan
VK-GL-CTS issue: 1869

Change-Id: I64ac976f24c291884e71aafb0c058a9340b584c1

5 years agoTest buffer and image properties with external host memory
Ricardo Garcia [Tue, 16 Jul 2019 09:02:40 +0000 (11:02 +0200)]
Test buffer and image properties with external host memory

This commit adds image and buffer property checks to the existing
external host memory tests (VK_EXT_external_memory_host).

In addition, fix a couple of validation errors in the existing memory
synchronization test.

Affected tests:
dEQP-VK.memory.external_memory_host.*

Components: Vulkan
VK-GL-CTS issue: 1884

Change-Id: I95aa3701769cb97ac0aa8873db4a43a1bd9f3667

5 years agoUpdate Opengl registry files
Daniel Koch [Mon, 29 Jul 2019 15:29:24 +0000 (11:29 -0400)]
Update Opengl registry files

from latest public registry

Component: OpenGL
VK-GL-CTS Issue: 1698

Change-Id: I0eda9b7af5d13689a141e67f968a697241f32e1f

5 years agoAdd VK_EXT_shader_subgroup_ballot gl_SubGroup*MaskARB tests
Samuel Iglesias Gonsálvez [Thu, 13 Jun 2019 09:13:45 +0000 (11:13 +0200)]
Add VK_EXT_shader_subgroup_ballot gl_SubGroup*MaskARB tests

Added tests:

   dEQP-VK.subgroups.ballot_mask.ext_shader_subgroup_ballot.*

Components: Vulkan
VK-GL-CTS issue: 1692

Change-Id: I2c2523ac6f8bb6ab13b084700137227dd6882850

5 years agoTesting for sampleShadingEnable
Boris Zanin [Fri, 5 Jul 2019 10:09:06 +0000 (12:09 +0200)]
Testing for sampleShadingEnable

Additional testing for sampleShadingEnable.

Add:
 * dEQP-VK.pipeline.multisample.min_sample_shading_enabled.*
 * dEQP-VK.pipeline.multisample.min_sample_shading_disabled.*

Components: vulkan

VK-GL-CTS issue: 1782

Change-Id: Idc7b5ab964a7f65fa6bb12a0dd9668fba2fa4bec

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master
Alexander Galazin [Wed, 24 Jul 2019 09:11:56 +0000 (11:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master

Change-Id: Ica3065aaf5d56791205074a44bcce66bfa26f6cd

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Wed, 24 Jul 2019 06:56:55 +0000 (08:56 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: I1e2517f737ee503fdd0f50c517270e35ed25b203

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Tue, 23 Jul 2019 18:02:50 +0000 (20:02 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I4ed438d3edefade78a1602957d3d26fa777175c2

5 years agodEQP-VK.graphicsfuzz.unreachable-loops-in-switch
Alastair Donaldson [Thu, 4 Jul 2019 22:14:06 +0000 (23:14 +0100)]
dEQP-VK.graphicsfuzz.unreachable-loops-in-switch

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.unreachable-loops-in-switch

Change-Id: If080620b03201031c0e7cf5af67fa30d0fee57d3

5 years agoFix check-all under Windows
Boris Zanin [Fri, 19 Jul 2019 10:43:43 +0000 (12:43 +0200)]
Fix check-all under Windows

filter out original Vulkan header sources under Windows as well.

Change-Id: I441cc132af94c4df69d92a94f4731287d05d083c

5 years agodEQP-VK.graphicsfuzz.return-in-loop-in-function
Alastair Donaldson [Fri, 5 Jul 2019 10:39:16 +0000 (11:39 +0100)]
dEQP-VK.graphicsfuzz.return-in-loop-in-function

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.return-in-loop-in-function

Change-Id: Ibcbc14690b61bfb5694154c350643430f779eedf

5 years agoIncrease mediump precision testing
Graeme Leese [Thu, 6 Jun 2019 15:16:00 +0000 (16:16 +0100)]
Increase mediump precision testing

The spec requires a relative precision of 2^-10 and a minimum exponent
of 2^-14, so use those for mediump testing. This tightens the
requirements over what was used before.

To compensate somewhat, where the float16_int8 extension previously
allowed more ULP, change the mediump tests to use that. In some cases
this means that tests are still getting slightly stricter, in some cases
slightly less strict.

Components: Vulkan
Affects: dEQP-VK.glsl.builtin.precision.*.mediump.*

Change-Id: I039f1eb551ff449b500972480bab961ae6ee63f6

5 years agoDon't generate then squash subnormal numbers
Graeme Leese [Tue, 9 Jul 2019 10:10:51 +0000 (11:10 +0100)]
Don't generate then squash subnormal numbers

The tests don't want subnormal numbers but were explicitly generating
them and then removing them again afterwards. For mediump tests values
the values that are subnormal in 16-bit float were not being removed
again causing issues on some implementations.

Components: Vulkan
Affects: dEQP-VK.glsl.builtin.precision_*

Change-Id: I6201bf28870bb601dae029eefb61b6924bc60016

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master
Alexander Galazin [Fri, 19 Jul 2019 13:26:37 +0000 (15:26 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master

Change-Id: I03a9826af64fb5624f7c53cb7d7880fdd19cfa45

5 years agoFix command line parameters processing of TestLog
Tony Zlatinski [Fri, 19 Jul 2019 00:04:44 +0000 (19:04 -0500)]
Fix command line parameters processing of TestLog

Change 7b7791a40f for issue 1666 has added functionality
to TestLog by adding extra parameters to the constructor.
The change, however, has patchied only one of the uses of the
class, breaking the other 3 uses of it. This has caused the
log flags to be wrong, and the new functionality introduced
by 7b7791a40f to not work, as expected.

This change fixes the rest of the locations and is adding one
more constructor for the TestLog class targeted for use by Android.

Components: Framework

VK-GL-CTS issue: 1887

Change-Id: I8d52d40ee5dffb120b8a4945b0f865c8f3e7b7dd

5 years agoInclude header that defines unique_ptr
Alexander Galazin [Thu, 18 Jul 2019 14:12:30 +0000 (16:12 +0200)]
Include header that defines unique_ptr

Add <memory> as some compilers otherwise don't see definition of std::unique_ptr

Components: Vulkan

Affects: some builds

VK-GL-CTS issue: 1872 (follow up)

Change-Id: If3eb42daa2d1d85af7b30bbf5afeed76bb31bd4b

5 years agoAdd depthBounds tests for VK_EXT_depth_range_unrestricted
Samuel Iglesias Gonsálvez [Wed, 5 Jun 2019 07:24:40 +0000 (09:24 +0200)]
Add depthBounds tests for VK_EXT_depth_range_unrestricted

Added tests check that depthbounds range values outside [0.0f, 1.0f]
are properly supported by the drivers.

This test will draw the same scene two times. The first time, it will
render the points depending on if they pass the depth test and if clear
depth value passes the depthBounds test.

The second time, will render the same scene but the the point positions
will have depth buffer values from the first draw. If they pass the
depth test, then the depthBounds test will check the previous content
of the depth buffer, which is most cases, will make that the second
image differs from the first one.

Added new tests:

    dEQP-VK.pipeline.depth_range_unrestricted.depthbounds.*

Components: Vulkan
VK-GL-CTS issue: 1754

Change-Id: Ica136efd9e946db63b2092914566d43214b7b641

5 years agoconvert{su}tof and convertfto{su} tests with float16 need Float16 capability
David Neto [Wed, 10 Jul 2019 20:07:21 +0000 (16:07 -0400)]
convert{su}tof and convertfto{su} tests with float16 need Float16 capability

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.compute.convertstof.int32_to_float16_m1234
dEQP-VK.spirv_assembly.instruction.compute.convertstof.int32_to_float16_min
dEQP-VK.spirv_assembly.instruction.compute.convertstof.int32_to_float16_max
dEQP-VK.spirv_assembly.instruction.compute.convertftos.float16_to_int32_m1234
dEQP-VK.spirv_assembly.instruction.compute.convertftos.float16_to_int32_min
dEQP-VK.spirv_assembly.instruction.compute.convertftos.float16_to_int32_max
dEQP-VK.spirv_assembly.instruction.compute.convertftos.float16_to_int32_p0
dEQP-VK.spirv_assembly.instruction.compute.convertftos.float16_to_int32_m0
dEQP-VK.spirv_assembly.instruction.compute.convertutof.uint32_to_float16_1234
dEQP-VK.spirv_assembly.instruction.compute.convertutof.uint32_to_float16_max
dEQP-VK.spirv_assembly.instruction.compute.convertftou.float16_to_uint32_1234
dEQP-VK.spirv_assembly.instruction.compute.convertftou.float16_to_uint32_max
dEQP-VK.spirv_assembly.instruction.compute.convertftou.float16_to_uint32_p0
dEQP-VK.spirv_assembly.instruction.compute.convertftou.float16_to_uint32_m0

VK-GL-CTS issue: 1874

Change-Id: Ib6cdbb56dea510feb90ce80e1f6edf0f54149e26

5 years agoUse the default device in dEQP-VK.api.buffer.* tests
Jeff Bolz [Mon, 15 Jul 2019 19:58:55 +0000 (14:58 -0500)]
Use the default device in dEQP-VK.api.buffer.* tests

The default device includes a sparse queue, no need to create a new
device for it. This reduces the runtime of these tests significantly.

Components: Vulkan
Affects: dEQP-VK.api.buffer.*
Change-Id: I38db03b8ff1a69665061b555a20613c59825b4f3

5 years agoCut down on repetition in the subgroup tests
Graeme Leese [Thu, 24 Jan 2019 00:27:28 +0000 (00:27 +0000)]
Cut down on repetition in the subgroup tests

Remove some of the multitude of copies of the same test code.

Components: Vulkan
Affects: dEQP-VK.subgroups.basic.*
         dEQP-VK.subgroups.ballot.*

Change-Id: Ic6af3b19b7e825abf729039049c8f2e535c2c425

5 years agoFix validation VK_KHR_16bit_storage in opphi test
David Neto [Thu, 11 Jul 2019 14:43:10 +0000 (10:43 -0400)]
Fix validation VK_KHR_16bit_storage in opphi test

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.compute.opphi.vartype_float16

VK-GL-CTS issue: 1874

Change-Id: Icb210558031d73da05a6cee016346bdb3f0fd239

5 years agoRemove duplication from YCbCrUtils
Graeme Leese [Tue, 2 Jul 2019 17:06:37 +0000 (18:06 +0100)]
Remove duplication from YCbCrUtils

There was a massive amount more code than was needed here, which made it
really hard to understand, find the relevant part of the code, or make
fixes. Simplifying the code has shown up three possible bugs just by
inspection.

Components: Vulkan
Affects: dEQP-VK.ycbcr.*

Change-Id: I8877c3a4eaacb98955e37fa91572d87fd3c417ef

5 years agoAdd input attachment restrictions to makeCreateImageInfo()
Samuel Iglesias Gonsálvez [Mon, 27 May 2019 13:52:31 +0000 (15:52 +0200)]
Add input attachment restrictions to  makeCreateImageInfo()

From Vulkan spec:

"All attachments in pInputAttachments that are not VK_ATTACHMENT_UNUSED
must have formats whose features contain at least one of
VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT or
VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT."

Affects:

dEQP-VK.image.texel_view_compatible.graphic.basic.*.attachment_*

VK-GL-CTS issue: 1414

Components: Vulkan

Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Change-Id: Ia26a618b74a0e7cb198576a6c5872a639dc07a5e

5 years agoTest vkCmdClearAttachments with unused depth/stencil attachments
Ricardo Garcia [Tue, 9 Jul 2019 15:03:17 +0000 (17:03 +0200)]
Test vkCmdClearAttachments with unused depth/stencil attachments

The unused attachments clear tests were missing the cases of depth and
depth/stencil attachments. This commit adds more combinations to the
test group, including all the previous tests plus combinations of them
with one depth or depth/stencil attachment, used or unused, and
depth/stencil attachments alone without color attachments.

Affected tests:
dEQP-VK.renderpass*.unused_clear_attachments.*

Components: Vulkan
VK-GL-CTS issue: 1872

Change-Id: If2fdd8ead1bd9aecec3a06757994b18b1d258522

5 years agoTest 64-bit results with transform feedback queries
Ricardo Garcia [Mon, 24 Jun 2019 16:14:52 +0000 (18:14 +0200)]
Test 64-bit results with transform feedback queries

Add tests so transform feedback query results are checked using both
32-bit and 64-bit numbers.

Removed tests:
dEQP-VK.transform_feedback.simple.*query*

Added tests:
dEQP-VK.transform_feedback.simple.*query*_32bits*
dEQP-VK.transform_feedback.simple.*query*_64bits*

Components: Vulkan
VK-GL-CTS issue: 1847

Change-Id: Idf4d6228af44d4d6aca85bfa30b184c11eb34aeb

5 years agoTest 32-bit stat queries with vkGetQueryPoolResults
Ricardo Garcia [Thu, 27 Jun 2019 10:49:37 +0000 (12:49 +0200)]
Test 32-bit stat queries with vkGetQueryPoolResults

Extend the current set of pipeline statistic query tests using
vkGetQueryPoolResults to request both 32-bit and 64-bit results in order
to improve test coverage.

Removed tests:
dEQP-VK.query_pool.statistics_query.*

Added tests:
dEQP-VK.query_pool.statistics_query.*32bits*
dEQP-VK.query_pool.statistics_query.*64bits*

Components: Vulkan
VK-GL-CTS issue: 1854

Change-Id: I278535ffad79c9116b3bedbd837567437e8a50c1

5 years agoFurther tidy up the subgroup vote sources
Graeme Leese [Fri, 28 Jun 2019 08:52:09 +0000 (09:52 +0100)]
Further tidy up the subgroup vote sources

Use functions rather than recalculate the same things for different test
sets and make the shader source easier to read by using temporary
variables.

Components: Vulkan
Affects: dEQP-VK.subgroups.vote.*

Change-Id: Ie256807064d0486f6268e02db8768d88791c0349

5 years agoBackport non-extension subgroup changes from next-dev
Graeme Leese [Wed, 10 Jul 2019 09:57:12 +0000 (10:57 +0100)]
Backport non-extension subgroup changes from next-dev

The subgroup extended types made quite a few changes to the framework
that make it a bit nicer in general. Backport these to master to improve
things now and to make it easier to integrate changes between the two
branches.

Components: Vulkan
Affects: dEQP-VK.subgroups.*

Change-Id: I5f0be4f4a605af393f8bb997472cd23a132d905a

5 years agoPipeline barriers flushing buffer data to host
Panagiotis Apostolou [Fri, 12 Jul 2019 09:25:43 +0000 (11:25 +0200)]
Pipeline barriers flushing buffer data to host

Adds pipeline barriers after vkCmdDispatch which essentially flushes gpu
caches and the buffer data becomes visible to the host.

Affects:
dEQP-VK.spirv_assembly.instruction.compute.*
dEQP-VK.spirv_assembly.instruction.graphics.opspecconstantop_opquantize.*

Components: Vulkan

VK-GL-CTS issue: 1880

Change-Id: Ib99a4ed9a1a2d57b286dea2251b3bc4a67002dfb

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master
Alexander Galazin [Wed, 17 Jul 2019 13:59:49 +0000 (15:59 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master

Change-Id: I7511a56dec3ae742774a2f6d76f103410e81eb94

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Tue, 16 Jul 2019 16:34:23 +0000 (18:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: Ic5126bd75b2616bdd9525d65eca95dc170475ced

5 years agoAdd compatible memory type check for given handle
Igor Ostrowski [Mon, 15 Apr 2019 07:56:39 +0000 (09:56 +0200)]
Add compatible memory type check for given handle

Affects:
dEQP-VK.synchronization.win32_keyed_mutex.*

Components: Vulkan
VK-GL-CTS issue: 1866

Change-Id: I982bcd2e2ac15aa5cae403fcec859b28bcaf7999

5 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Alexander Galazin [Tue, 16 Jul 2019 11:54:24 +0000 (13:54 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: Ica01d13044d1c2a570bd692742327b096d80e9b3

5 years agoUpdate Vulkan headers to 1.1.115
Jeff Bolz [Mon, 15 Jul 2019 15:57:10 +0000 (10:57 -0500)]
Update Vulkan headers to 1.1.115

Should be no functional change, just brings the header up to date
to ease submitting new tests for those extensions.

Components: Vulkan
Change-Id: I9ed667ccf4eba57b057ff30d7117832516feb380

5 years agoFix image layouts in descriptor indexing tests
Slawomir Cygan [Fri, 12 Jul 2019 13:02:16 +0000 (15:02 +0200)]
Fix image layouts in descriptor indexing tests

This is a fix for regression introduced in 4301d73b3
- in fact this is a partial revert of that change.

After 4301d73b3, the current image layout (READ_ONLY_OPTIMAL) was
different than image layout used in descriptor set bindings
(GENERAL), what is invalid.

As some of these descriptor set binding are used for STORAGE_IMAGEs,
which require images in GENERAL layout, the simplest fix was to revert
back to using GENERAL layouts.

Components: Vulkan

VK-GL-CTS Issue: 1881

Change-Id: Idac940135bafe6be6e456d0ec554d5cc3c3fc8e7
Affects: dEQP-VK.descriptor_indexing.*

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master
Alexander Galazin [Fri, 12 Jul 2019 10:27:44 +0000 (12:27 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master

Change-Id: Idbcbb73a767b6d267c0c2215d6bdc9739b2096eb

5 years agoUpdate KC CTS
Alexander Galazin [Fri, 12 Jul 2019 09:00:34 +0000 (11:00 +0200)]
Update KC CTS

Components: Framework

Affects: dEQP-GL.*

Change-Id: I213498330f160e0d1b8e8c2bdd58d8b521a10be7

5 years agoFix random generation for isinf/isnan tests
Graeme Leese [Wed, 19 Jun 2019 14:14:45 +0000 (15:14 +0100)]
Fix random generation for isinf/isnan tests

There were two copies of the generator that were essentially the same,
so I've used a function for it. No normal values were ever being
generated that had the top bit of the exponent set or that had the top
bit of the mantissa unset. This meant that silly errors like testing the
wrong set of bits might not be caught by the tests.

The new generator still only generates quiet Nans, which may be a
mistake.

Components: Vulkan
Affects: dEQP-VK.glsl.builtin.function.common.isinf.*
         dEQP-VK.glsl.builtin.function.common.isnan.*

Change-Id: I7ca64dbcb327b4bbf6687ebb2d61a47c328d514b

5 years agoAdd QueryIndexed tests when streamId is zero
Samuel Iglesias Gonsálvez [Mon, 13 May 2019 08:31:44 +0000 (10:31 +0200)]
Add QueryIndexed tests when streamId is zero

In the case where streamID==0, it is legal to use cmdBeginQuery paired
with cmdEndQueryIndexedEXT (and vice versa).

Added tests:

   dEQP-VK.transform_feedback*queryindexed*

Components: Vulkan
VK-GL-CTS issue: 1772

Change-Id: I701916c4dc38826e9874976649f4ae57cac42614

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Fri, 12 Jul 2019 08:56:38 +0000 (10:56 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: I3ee381095ae5e6ffe4c3d581fd4de06cf1f7c8ec

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Fri, 12 Jul 2019 07:47:09 +0000 (09:47 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I01ed4686a43801a91df0459b821fd047f4858940

5 years agoRemove conformance version test from Android
Boris Zanin [Mon, 8 Jul 2019 13:27:50 +0000 (15:27 +0200)]
Remove conformance version test from Android

Removes conformance version tests from android CTS.

Split tests designed to validate VK_KHR_driver_properties
into several smaller tests.

Add three more records into knownDriverIds.

Add:
 * dEQP-VK.api.driver_properties.*

Remove:
 * dEQP-VK.api.driver_properties

Components: vulkan

VK-GL-CTS issue: 1839

Change-Id: I9b591778c9833fd890c9af46cb87d9f5eb695dbd

5 years agoFix Android WSI incremental present image tests
Mike Byrne [Mon, 1 Jul 2019 10:53:36 +0000 (11:53 +0100)]
Fix Android WSI incremental present image tests

The pipeline for Android WSI incremental present image tests was not
provided with a valid scissor rect. This caused the tests to perform
incorrectly (and violates Vulkan requirements).

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

VK-GL-CTS Issue: 1867

Change-Id: I257ab8ae59a13e24fb299b6b47e925f3c105aecb
Components: Vulkan, AOSP

5 years agodEQP-VK.graphicsfuzz.color-write-in-loop
Paul Thomson [Mon, 1 Jul 2019 14:16:09 +0000 (15:16 +0100)]
dEQP-VK.graphicsfuzz.color-write-in-loop

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.color-write-in-loop

Change-Id: I1f5450fbfa7d421eb61d2b0ed9d4fbb90e126137

5 years agodEQP-VK.graphicsfuzz.matrices-and-return-in-loop
Paul Thomson [Mon, 1 Jul 2019 14:12:19 +0000 (15:12 +0100)]
dEQP-VK.graphicsfuzz.matrices-and-return-in-loop

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.matrices-and-return-in-loop

Change-Id: I17a8ccf8ea2c5e8f1914d27fa7bc0d3bceb130ad

5 years agoExclude dEQP-VK.ssbo.layout.random.scalar.75
Alex Walters [Thu, 11 Jul 2019 14:17:53 +0000 (15:17 +0100)]
Exclude dEQP-VK.ssbo.layout.random.scalar.75

Remove dEQP-VK.ssbo.layout.random.scalar.75 from mustpass, added to
excluded test list. The shader length is quite extreme resulting in an
overly high runtime where certain devices can easily hit the watchdog.

Affects:

dEQP-VK.ssbo.layout.random.scalar.75

Components: Vulkan
VK-GL-CTS Issue: 1829

Change-Id: I57627fc895ed4a0e023e9f81e0cc6cdc203d2485

5 years agodEQP-VK.graphicsfuzz.early-return-and-barrier
Paul Thomson [Mon, 1 Jul 2019 14:17:58 +0000 (15:17 +0100)]
dEQP-VK.graphicsfuzz.early-return-and-barrier

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.early-return-and-barrier

Change-Id: I72818ac38bb0552f286a70b82f23907ada8a7059

5 years agodEQP-VK.graphicsfuzz.if-and-switch
Paul Thomson [Mon, 1 Jul 2019 14:08:31 +0000 (15:08 +0100)]
dEQP-VK.graphicsfuzz.if-and-switch

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.if-and-switch

Change-Id: Ifc16e1b2a77c8ca2b564d31d7ba30c23b615c4b9

5 years agoTest DMA buffers as external image memory
Ricardo Garcia [Tue, 2 Jul 2019 15:30:19 +0000 (17:30 +0200)]
Test DMA buffers as external image memory

Enable external image memory tests for DMA buffers.

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

Components: Vulkan
VK-GL-CTS issue: 1863

Change-Id: I62037a64aad24638ff52ac664505837ab1e4af3b

5 years agodEQP-VK.graphicsfuzz.dead-barriers-in-loops
Paul Thomson [Mon, 1 Jul 2019 14:41:35 +0000 (15:41 +0100)]
dEQP-VK.graphicsfuzz.dead-barriers-in-loops

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.dead-barriers-in-loops

Change-Id: I74a9f7375bef8d59b9948f7c94237c6ec6e2a40f

5 years agodEQP-VK.graphicsfuzz.barrier-in-loop-with-break
Paul Thomson [Mon, 1 Jul 2019 13:07:03 +0000 (14:07 +0100)]
dEQP-VK.graphicsfuzz.barrier-in-loop-with-break

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.barrier-in-loop-with-break

Change-Id: I862dc3cbf2f739123c2f0628159e92db2f8fd748

5 years agoTest 32-bit timestamp query results
Ricardo Garcia [Tue, 25 Jun 2019 11:46:25 +0000 (13:46 +0200)]
Test 32-bit timestamp query results

Obtain timestamp query results as both 32-bit and 64-bit numbers, using
both vkCmdCopyQueryPoolResults() and vkGetQueryPoolResults(). Verify all
results match and the lower 32 bits of the 64-bit results match the
32-bit results.

In addition, add a missing barrier in one of the timestamp tests and
refactor the way the timestamp validity bits are checked across
different tests.

New tests:
dEQP-VK.pipeline.timestamp.misc_tests.consistent_results

Components: Vulkan
VK-GL-CTS issue: 1849

Change-Id: I76769e8a3cf9fbfa5de9beefbc0993ffb2f2bef9

5 years agoAdd tests for VK_EXT_shader_subgroup_ballot
Samuel Iglesias Gonsálvez [Mon, 3 Jun 2019 10:57:58 +0000 (12:57 +0200)]
Add tests for VK_EXT_shader_subgroup_ballot

Add tests for read*InvocationsARB() and other defines added by
VK_EXT_shader_subgroup_ballot extension.

Tests are based on the existing ones for subgroup's ballot feature but
adapted to the extension.

These tests don't check the gl_SubGroup*MaskARB variables, they will
be added in other CL.

New tests:

dEQP-VK.subgroups.ballot.ext_shader_subgroup_ballot.*
dEQP-VK.subgroups.ballot_broadcast.ext_shader_subgroup_ballot.*

Components: Vulkan
VK-GL-CTS issue: 1692

Change-Id: Ic694c371245ebde5883f507c26cd6caead15ed87

5 years agoTest vkCmdCopyQueryPoolResults with transform feedback queries
Ricardo Garcia [Thu, 20 Jun 2019 15:48:33 +0000 (17:48 +0200)]
Test vkCmdCopyQueryPoolResults with transform feedback queries

Add tests to get transform feedback query results using
vkCmdCopyQueryPoolResults in addition to vkGetQueryPoolResults.

New tests:
dEQP-VK.transform_feedback.simple.query_copy*

Components: Vulkan
VK-GL-CTS issue: 1840

Change-Id: Ia5f5737be68a3af6ded71f0a93b3a398a7f99a97

5 years agoUpdate glslang
Alexander Galazin [Thu, 11 Jul 2019 09:29:37 +0000 (11:29 +0200)]
Update glslang

Components: Framework

Affects: dEQP-VK.*

Change-Id: I7b26c3f09bf33797b511dc127c878222f0a1c815

5 years agoFix for windows heights that are not a multiple of 4
Robert Tray [Fri, 7 Jun 2019 20:48:08 +0000 (14:48 -0600)]
Fix for windows heights that are not a multiple of 4

Adjust the number of rows in the buffer comparison to avoid going
too far when the window height is not a multiple of 4.

Components: OpenGL ES
VK-GL-CTS issue: 1823

Affects : KHR-GLES31.core.draw_indirect.advanced-primitiveRestart-elements

Change-Id: I61d4ec93546171a45b17c5861996646023956eb3

5 years agoVK_EXT_fragment_shader_interlock tests
Jeff Bolz [Thu, 16 May 2019 04:27:53 +0000 (23:27 -0500)]
VK_EXT_fragment_shader_interlock tests

Components: Vulkan
New Tests: dEQP-VK.fragment_shader_interlock.*
VK-GL-CTS issue: 1856

Change-Id: I0246519ac51fcb2eb30fa264b02eb1f30c763e24

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master
Alexander Galazin [Wed, 10 Jul 2019 11:15:12 +0000 (13:15 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/master

Change-Id: Idcaa01ac910fd68a5f429ffb833990b25bec0622

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Wed, 10 Jul 2019 09:12:51 +0000 (11:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: I34d0c949c112eb56427e54f1b0f34f730a1d0b27

5 years agoAdd support for building with Visual Studio 2019
Slawomir Cygan [Tue, 9 Jul 2019 10:19:26 +0000 (12:19 +0200)]
Add support for building with Visual Studio 2019

Components: Framework

Change-Id: I52c92750e9e2874b86fd7bceea0070ad609909c1

5 years agoDon't filter out 'duplicate' device features
Jeff Bolz [Tue, 9 Jul 2019 05:16:37 +0000 (00:16 -0500)]
Don't filter out 'duplicate' device features

Features that are actually duplicates will just have an 'alias' line
in the header file, and get automatically filtered out. Once we have
similarly named structures that differ only in suffix, we need to allow
duplicates and have the regex match by extension suffix as well

Components: Vulkan
Change-Id: I889d4f0bdd3dd8204122484c2ba07ec40a8e5cd0

5 years agoUpdate Vulkan headers to 1.1.114
Jeff Bolz [Tue, 9 Jul 2019 04:18:07 +0000 (23:18 -0500)]
Update Vulkan headers to 1.1.114

Should be no functional change, just brings the header up to date
to ease submitting new tests for those extensions.

Components: Vulkan
Change-Id: Iee09105fbc827b3445f295e62fd46d1d888c4d20

5 years agoFix VK_KHR_imageless_framebuffer tests
Boris Zanin [Mon, 17 Jun 2019 07:49:36 +0000 (09:49 +0200)]
Fix VK_KHR_imageless_framebuffer tests

Formats are referred to by a pointer to a variable allocated on
stack, which will become invalid before its usage.
Use permanent variable and pointer to it.

Update tests:
 * dEQP-VK.imageless_framebuffer.*

Components: Vulkan

VK-GL-CTS issue: 1477

Change-Id: Ic8ab76ec576168fd0bfc3aef9a08f6bab2392584
(cherry picked from commit 92c1b600fad9925a305e346b7de5fa5b6587008e)

5 years agoAdd tests for VK_KHR_imageless_framebuffer
Boris Zanin [Fri, 11 Jan 2019 13:08:43 +0000 (14:08 +0100)]
Add tests for VK_KHR_imageless_framebuffer

Implement imageless framebuffer extension tests.

Add tests:
 * dEQP-VK.imageless_framebuffer.color
 * dEQP-VK.imageless_framebuffer.depth_stencil
 * dEQP-VK.imageless_framebuffer.color_resolve
 * dEQP-VK.imageless_framebuffer.depth_stencil_resolve
 * dEQP-VK.imageless_framebuffer.multisubpass

Components: Vulkan

VK-GL-CTS issue: 1477

Change-Id: I2baa0614369a98afe2c028788824f50505bb291b
(cherry picked from commit 656826a55cb17850a0f33dacf671490715020efa)

5 years agoUpdate SPIRV Tools and Headers
Alexander Galazin [Fri, 5 Jul 2019 09:47:28 +0000 (11:47 +0200)]
Update SPIRV Tools and Headers

Components: Framework

Affects: dEQP-VK.*

Change-Id: Icc4789c9953d1e5e2240a36e9dcac52a59323126

5 years agoUpdate README
Alexander Galazin [Fri, 5 Jul 2019 09:44:59 +0000 (11:44 +0200)]
Update README

Components: Vulkan

Change-Id: Iaef83303332cc02b6c645252a976881532a9c481

5 years agoWhitelist Vulkan CTS 1.1.5.0
Alexander Galazin [Fri, 5 Jul 2019 09:36:02 +0000 (11:36 +0200)]
Whitelist Vulkan CTS 1.1.5.0

Affects: dEQP-VK.api.driver_properties.properties

Components: Vulkan

Change-Id: I5493e4a3cf0007c761a339d4e281d3fd94724023

5 years agoSPIR-V assembly tests require Invocations in Geometry shaders
Juan A. Suarez Romero [Tue, 2 Jul 2019 13:55:01 +0000 (15:55 +0200)]
SPIR-V assembly tests require Invocations in Geometry shaders

Validation layers are complaining about the lack of Invocation count in
several of the geometry spirv assembly tests.

Affects: dEQP-VK.spirv_assembly.instruction.graphics.*_geom

Components: Vulkan

VK-GL-CTS issue: 1862

Change-Id: I3c3f44574bef0ad2d61b27f0b3d94f9e24924a92

5 years agoAllows initialisation of float16 values for comparison tests by casting.
Tom Cooper [Thu, 27 Jun 2019 16:14:22 +0000 (17:14 +0100)]
Allows initialisation of float16 values for comparison tests by casting.

Affects:
dEQP-VK.glsl.builtin.precision_fp16_storage32b.*

Components: Vulkan
VK-GL-CTS issue: 1860

Change-Id: I0e211dacf31a91d2cff2912440d4283bb5a2e492

5 years agoFix more 16bit denorms in precision tests
Graeme Leese [Thu, 27 Jun 2019 10:31:36 +0000 (11:31 +0100)]
Fix more 16bit denorms in precision tests

The denorm code that was fixed in: https://gerrit.khronos.org/#/c/4135/
still persisted in a different function that I hadn't noticed. Update it
there as well.

Because this function is being called on fixed floats, rather than on
random ones, I don't think the brokenness of the old code will cause a
practical problem, but the new version is simpler and more correct, so
I've changed it anyway.

Components: Vulkan
VK-GL-CTS issue: 1843
Affects: dEQP-VK.glsl.builtin.precision_fp16_storage32b.*

Change-Id: I6d6d7f8678f6edf41255e194650648c865b71e76

5 years agoCast invocation ID correctly in allequal tests
Graeme Leese [Fri, 28 Jun 2019 08:36:22 +0000 (09:36 +0100)]
Cast invocation ID correctly in allequal tests

The gl_SubgroupInvocationID was not being cast to the appropriate type
in the vote.allequal tests, so every type was testing the uint version.
The ARB extension tests worked around this by specifically casting to
bool because there is no uint version in the ARB extension. This version
casts the invocation ID to the appropriate type for the test. This part
of the test is skipped for boolean types because there may not be an
invocation with ID 0, so the results may all be equal ( == true),
contrary to the test's expectation.

Component: Vulkan
VK-GL-CTS issue: 1845
Affects: dEQP-VK.subgroups.vote.*

Change-Id: I98a01fa2398cc4cdc18125af2cc64f59a5d559ca

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Alexander Galazin [Thu, 4 Jul 2019 10:11:42 +0000 (12:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master

Change-Id: I02390abaef46d2859360a3757a7e14dd830853ae

5 years agoForbid non-ascii symbols in source files
Boris Zanin [Wed, 19 Jun 2019 16:39:31 +0000 (18:39 +0200)]
Forbid non-ascii symbols in source files

Enforce usage of ascii symbols only by adding one more check
into check-all target. Adds check_encdoing.py file into scripts.

More details please see in the issue.

Components: Framework

VK-GL-CTS issue: 1836

Change-Id: I702d1338bf1ee7180b87e51151b26a5ac17afbdd

5 years agoTest image load/store with packed formats
Toni Merilehti [Wed, 5 Jun 2019 13:05:10 +0000 (16:05 +0300)]
Test image load/store with packed formats

This CL adds image load/store tests for the packed formats
requiring the StorageImageExtendedFormats SPIR-V capability.
The thresholds in the result verification are now based
on the channel class and bit depths of the components.

The shader generation is modified to store also negative
values on signed formats.

New tests:

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

Affects:

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

Components: Framework, Vulkan

VK-GL-CTS issue: 1814

Change-Id: Ia2d061dbfd9c19ade8057398dd78692b5a28c029

5 years agoEnable strong-typed DE_LENGTH_OF_ARRAY for every compiler
Ricardo Garcia [Mon, 24 Jun 2019 09:22:56 +0000 (11:22 +0200)]
Enable strong-typed DE_LENGTH_OF_ARRAY for every compiler

The C++ strong-typed version of DE_LENGTH_OF_ARRAY should work with
every C++ compiler. This commit removes the restriction of being used
only with the Microsoft compiler.

Components: Framework
VK-GL-CTS issue: 1848

Change-Id: Id28c02ab4dfecefa84093578afca0da50b0bdd65

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Thu, 4 Jul 2019 07:34:10 +0000 (09:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: Id458e912df4bb49e821279d353b056d4baaac114

5 years agoSplit shared_presentable_image tests into more dimensions to avoid timeout
Yiwei Zhang [Sat, 22 Jun 2019 02:14:25 +0000 (19:14 -0700)]
Split shared_presentable_image tests into more dimensions to avoid timeout

Components: Vulkan

VK-GL-CTS Issue: 1842

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

Change-Id: I957c106b756fab4be5b17f7d0a6d9ad2a14fce75

5 years agoFix Android WSI shared presentable image test OOM
Mike Byrne [Mon, 24 Jun 2019 06:44:23 +0000 (07:44 +0100)]
Fix Android WSI shared presentable image test OOM

The dEQP-VK.wsi.android.shared_presentable_image.scale_down tests fail
intermittently with OOM errors. A simliar fix as implemented for
WSI incremental presentable image tests resolves this.

Affects: dEQP-VK.wsi.android.shared_presentable_image.scale_down.*

Components: Vulkan, AOSP

VK-GL-CTS Issue: 1858

Change-Id: Iee7a31560e46b6c449d14ec6e7c75d7406ae6d82

5 years agoFix Android WSI shared presentable image tests
Mike Byrne [Tue, 25 Jun 2019 13:39:53 +0000 (14:39 +0100)]
Fix Android WSI shared presentable image tests

The pipeline for Android WSI shared presentable image tests was not
provided with a valid scissor rect. This caused the tests to perform
incorrectly (and violates Vulkan requirements).

Affects:

dEQP-VK.wsi.android.shared_presentable_image.scale_down.demand
dEQP-VK.wsi.android.shared_presentable_image.scale_down.continuous

VK-GL-CTS Issue: 1857

Change-Id: I060c12d7192945ecbe01dfcc8e89c03874b9b218
Components: Vulkan, AOSP

5 years agoAdd tests for OpPtrAccessChain on Workgroup storage
Graeme Leese [Wed, 1 May 2019 13:46:46 +0000 (14:46 +0100)]
Add tests for OpPtrAccessChain on Workgroup storage

OpPtrAccessChain is supposed to work differently on workgroup storage
than on any other storage class but there were no tests for it. Add some
very basic testing.

Components: Vulkan
New Tests: dEQP-VK.spirv_assembly.instruction.compute.ptr_access_chain.*

Change-Id: I91d95fb239d3be6bfb86db88f842e19101f5976d

5 years agoSpeed up hierarchy traversal, part 1
Jari Komppa [Tue, 18 Jun 2019 12:15:09 +0000 (15:15 +0300)]
Speed up hierarchy traversal, part 1

Some of the tests do premature heavy work during test hierarchy
traversal, meaning that they waste time regardless of whether the tests
are run or not. These changes move some of that heavy work to later
stage of the test run.

Affects:

dEQP-VK.ubo.*
dEQP-VK.ssbo.*

Components: Vulkan, Framework

VK-GL-CTS issue: 1830

Change-Id: I437e55ee2d57efc69edf62a213f7476a22b1a2f0

5 years agoFix feature requirements of sample mask tests
Ilkka Saarelainen [Wed, 26 Jun 2019 09:02:15 +0000 (12:02 +0300)]
Fix feature requirements of sample mask tests

Some multisample sample mask tests required sampleRateShading feature
even though it is not actually needed.

This CL removes the feature requirement from those tests.

Following tests don't actually depend on the feature and no longer
require it:
dEQP-VK.pipeline.multisample_shader_builtin.sample_mask.pattern.*
dEQP-VK.pipeline.multisample_shader_builtin.sample_mask.write.*

Affects:
dEQP-VK.pipeline.multisample_shader_builtin.sample*

Components: Vulkan

VK-GL-CTS issue: 1745

Change-Id: Ib894149c9991edd10ae1961e7aaf6678eb0e6b5a

5 years agoFix derivate dynamic tests to check shader stage support
Jeff Leger [Tue, 25 Jun 2019 21:19:33 +0000 (17:19 -0400)]
Fix derivate dynamic tests to check shader stage support

The tests used subgroup ballot operations but didnt
check if the fragment shader stage was supported. This lead
the application to run unsupported tests.

Affects:

dEQP-VK.glsl.derivate.*

Components: Vulkan

VK-GL-CTS issue: 1852

Change-Id: I43b80dc03d0944c407cd86b1df4ae0b9a633c680

5 years agoFix rounding when casting to integer
Nicolas Capens [Wed, 19 Jun 2019 21:33:02 +0000 (17:33 -0400)]
Fix rounding when casting to integer

Normalized values that were sampled from textures and have been scaled
by their maximum magnitude will be close to their unnormalized integer
value but may be slightly less. Subsequent casting to integer (with
rounding towards zero) may therefore result in a value one-off from the
original.

Use round-to-nearest to ensure the correct integer value is produced.

Fixes: #151
VK-GL-CTS public issue: 151
VK-GL-CTS issue: 1853
Affects: dEQP-VK.memory.pipeline_barrier.all.*
Components: Vulkan
Change-Id: I435d41145c83957db15c74ea394e89faf142c2a3

5 years agoFix template usage in precision tests
Graeme Leese [Tue, 25 Jun 2019 14:55:26 +0000 (15:55 +0100)]
Fix template usage in precision tests

The definitions were duplicated for float and deFloat16 even though that
is one of the template parameters. Use the parameters properly and we
only need one copy.

Components: Vulkan
Affects (trivially): dEQP-VK.glsl.builtin.precision*

Change-Id: Ic5487f43944cd6b8f8e8b04430a85df90b0407f4

5 years agoEnable OpFMod testing for 16-bit
Graeme Leese [Thu, 20 Jun 2019 10:21:28 +0000 (11:21 +0100)]
Enable OpFMod testing for 16-bit

This is currently disabled, so enable a 16-bit version of the 32-bit
tests.

Component: Vulkan
VK-GL-CTS issue: 1354
New tests: dEQP-VK.glsl.builtin.precision_fp16_storage16b.mod.*
           dEQP-VK.glsl.builtin.precision_fp16_storage32b.mod.*

Change-Id: I78dcb9fe55201a0ab26de9973405c3fe3121f668

5 years agoCheck every available device and host time domains
Ricardo Garcia [Thu, 20 Jun 2019 11:59:45 +0000 (13:59 +0200)]
Check every available device and host time domains

Use every available device and host time domains in calibrated timestamp
tests, as well as every combination of device and host domains in tests
that combine both.

Affected tests:
dEQP-VK.pipeline.timestamp.calibrated.*

Components: Vulkan
VK-GL-CTS issue: 1837

Change-Id: I947a865f1a6a1ee48b8446fe575a324097f2bcae