platform/upstream/VK-GL-CTS.git
5 years agoAdd control for subpixel bits to reference rasterizer
Steve Hill [Fri, 18 Jan 2019 09:19:17 +0000 (09:19 +0000)]
Add control for subpixel bits to reference rasterizer

The reference rasterizer assumed that subpixel bits was 8,
and this could lead to issues on some platforms.

This change makes it mandatory to specify the number of
subpixel bits required when using the reference rasterizer.

EGL, OpenGL and Vulkan tests that use the reference rasterizer
are changed to supply the platform-advertised subpixel bits.

Given the invasive nature of this change, the affects list
is extremely conservative.

Affects:
dEQP-VK*
dEQP-GL*
dEQP-EGL*

Components: Vulkan, OpenGL, EGL, Framework.

VK-GL-CTS issue: 1566

Change-Id: I6e89cc6e3b71b7d2d7fb02c4c21857ec4ad0146c

5 years agoAdd dEQP-VK.graphicsfuzz.fragcoord-control-flow
Paul Thomson [Wed, 6 Feb 2019 09:49:18 +0000 (09:49 +0000)]
Add dEQP-VK.graphicsfuzz.fragcoord-control-flow

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.fragcoord-control-flow

Change-Id: Id431f82e8b577c029b241ee89f3699e197131b00

5 years agoDefine point sizes in dEQP-VK.query_pool.* tests
Toni Merilehti [Thu, 14 Feb 2019 14:14:24 +0000 (16:14 +0200)]
Define point sizes in dEQP-VK.query_pool.* tests

This adds missing point sizes to vertex and geometry shaders under
dEQP-VK.query_pool.* when primitive topology is set to POINT_LIST.

Affects:

dEQP-VK.query_pool.*

Components: Vulkan

VK-GL-CTS issue: 1598

Change-Id: I02918a7662a52b3495fb872d1d5ac29e5753ecfa

5 years agoFix zero height clear rectangle
Ari Suonpaa [Mon, 18 Feb 2019 11:14:24 +0000 (13:14 +0200)]
Fix zero height clear rectangle

Some of the layered rendering tests are clearing
two rectangles by using half of the frame buffer
height. In case of 1D textures the height is one,
making the clear rectangle height zero. This was
taken into account by rounding the height in one
of the rectangles up. But the remaining zero
height rectangle is still invalid and is now
removed from the list of clear rectangles.

Affects:

dEQP-VK.geometry.layered.*.secondary_cmd_buffer*

Components: Vulkan

VK-GL-CTS issue: 1600
Change-Id: I6e58d9f343019fe1bc9f7a1920d0515e252e81ec

5 years agoFix spelling of error message
Graeme Leese [Fri, 22 Feb 2019 10:48:45 +0000 (10:48 +0000)]
Fix spelling of error message

Components: Vulkan
Affects: dEQP-VK.api.command_buffers.record_simul_use_*

Change-Id: I2be44e485461d4c7c1009e8abedaa378aaf9ebf1

5 years agoFix stack underflow in incremental present test
Lingfeng Yang [Fri, 8 Feb 2019 15:36:00 +0000 (07:36 -0800)]
Fix stack underflow in incremental present test

This uses the current object's m_queueFamilyIndex instead of a queue
family index that is on the stack, avoiding using a stale stack address
when the test runs.

VK-GL-CTS issue: 1585

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

Components: Vulkan

Change-Id: I80228651b799d3444676cdcbf5cc845bcb195fe9

5 years agoAdd dEQP-VK.graphicsfuzz.fragcoord-control-flow-2
Paul Thomson [Wed, 6 Feb 2019 10:31:00 +0000 (10:31 +0000)]
Add dEQP-VK.graphicsfuzz.fragcoord-control-flow-2

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.fragcoord-control-flow-2

Change-Id: I452a587be37391da94c0a91b38bfafc894c48dc8

5 years agoVK_EXT_buffer_device_address tests
Jeff Bolz [Sat, 17 Nov 2018 20:16:19 +0000 (14:16 -0600)]
VK_EXT_buffer_device_address tests

Components: Vulkan

New Tests:
dEQP-VK.memory_model.*phys*
dEQP-VK.binding_model.buffer_device_address.*
dEQP-VK.spirv_assembly.instruction.compute.physical_pointers.*
dEQP-VK.ssbo.phys.layout*

Change-Id: Ida85e47c749475009cf281918c8149475f94da7d

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Thu, 21 Feb 2019 10:57:43 +0000 (11:57 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I6d68022af70ffee1df11b38500129f2666f3dd7a

5 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Alexander Galazin [Thu, 21 Feb 2019 10:32:14 +0000 (11:32 +0100)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: I90d628347dbe5c15eef39a874898135e3809cfe2

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Thu, 21 Feb 2019 09:40:56 +0000 (10:40 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: Iaf38fdb099fc5777170b6d3bdef9e2fcdd5ea3bb

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Thu, 21 Feb 2019 09:08:51 +0000 (10:08 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: I340cd7f2e1cd8a98c98c0b9018a6648dba6712cc

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Thu, 21 Feb 2019 08:39:43 +0000 (09:39 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: I404c995c42188a88a080ba5b27c3075e5d746f7f

5 years agoFragment input components limit includes position
Alex Walters [Tue, 12 Feb 2019 17:50:27 +0000 (17:50 +0000)]
Fragment input components limit includes position

The Vulkan limits maxFragmentInputComponent is inclusive of any
components that are being used up by the built-in interface block.

This means that the test of n components should consist of 4 components
for the position and (n - 4) user defined components.

The test should also check the maxVertexOutputComponent limit as
technically there is no implied >= requirement.

Affects:

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

Component: Vulkan

VK-GL-CTS Issue: 1597

Change-Id: I58adbbbaaa94dd185b024f63519dac7daf5e4b3c
(cherry picked from commit 8b5781b8e7a4564ddec376828a16fd89fb8e3227)

5 years agoAdd Amber as a test engine
Dan Sinclair [Thu, 3 Jan 2019 20:37:57 +0000 (15:37 -0500)]
Add Amber as a test engine

This CL adds amber as a possible testing engine for the CTS.

Change-Id: I5d1d7e6a03d9b66e3efc196ad488d66fd0333fc1

5 years agoFix Android dEQP builds when linking against and embedding ANGLE
Tim Van Patten [Fri, 11 Jan 2019 18:42:16 +0000 (11:42 -0700)]
Fix Android dEQP builds when linking against and embedding ANGLE

The Android dEQP build is failing to link against ANGLE when using the
option '--angle-path'.   This fix correctly clears the necessary CMAKE
variables so the find_library() call will search for the ANGLE libraries
during an Android build.

Components: Android dEQP

Google bug: 80239516

Change-Id: I9ceb82e47becda56ff7ace77f999f37c70dd97b0

5 years agoCheck if CTS has platform display for wsi-type
ygole [Tue, 15 Jan 2019 13:49:31 +0000 (19:19 +0530)]
Check if CTS has platform display for wsi-type

Vulkan driver can expose multiple VK_KHR_{platform}_surface extensions
and it's app responsibility to create platform display then create the
surface and pass it to vkCreate{platform}SurfaceKHR. But if CTS does
not have display for requested wsi type and extension is exposed, CTS
reports it as failure.

To fix this, if function createWsiDisplay fails then check whether CTS
has platform display available for requested wsi-type and if it does
then only report this as failure otherwise report it as unsupported.

Affects: dEQP-VK.wsi.*

Components: Vulkan, Framework

VK-GL-CTS issue: 1558

Change-Id: I41aabc2e77cfc6e730b5a95dde746d8ea8152d2b

5 years agoAdd dEQP-VK.graphicsfuzz.while-inside-switch
Paul Thomson [Fri, 8 Feb 2019 12:14:51 +0000 (12:14 +0000)]
Add dEQP-VK.graphicsfuzz.while-inside-switch

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.while-inside-switch

Change-Id: I06500d87906efc382e676fc7f6df678bebe4e0d1

5 years agoFix mismatch between VS outputs and GS inputs
Yu-Jun Li [Wed, 6 Feb 2019 17:47:52 +0000 (09:47 -0800)]
Fix mismatch between VS outputs and GS inputs

VS was outputing gl_Position while GS expected
a block.

Components: Vulkan
VK-GL-CTS issue: 1594

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.module.same_module_geom

Change-Id: Ib527cfda04fab0a206a45eb747b7e7751e71baa4

5 years agoFragment input components limit includes position
Alex Walters [Tue, 12 Feb 2019 17:50:27 +0000 (17:50 +0000)]
Fragment input components limit includes position

The Vulkan limits maxFragmentInputComponent is inclusive of any
components that are being used up by the built-in interface block.

This means that the test of n components should consist of 4 components
for the position and (n - 4) user defined components.

The test should also check the maxVertexOutputComponent limit as
technically there is no implied >= requirement.

Affects:

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

Component: Vulkan

VK-GL-CTS Issue: 1597

Change-Id: I58adbbbaaa94dd185b024f63519dac7daf5e4b3c

5 years agoRevert "Fix subpixel precision for line geometry generation"
Alexander Galazin [Thu, 14 Feb 2019 18:56:07 +0000 (13:56 -0500)]
Revert "Fix subpixel precision for line geometry generation"

This reverts commit 3116016d8e0e4582396d67a1286aa3a6815a3332.

VK-GL-CTS issue: 1582, 1274

Affects:
dEQP-VK.rasterization.*line*
dEQP-GLES*.functional.rasterization.*line*

Components: Framework

Change-Id: I5e1fbc948f5784656523c37924ca746c6b6aa5a8

5 years agoRaise VS supported version to 2015
Alexander Galazin [Fri, 8 Feb 2019 12:46:13 +0000 (13:46 +0100)]
Raise VS supported version to 2015

Drop support for VS2013, require at least VS2015

Components: Vulkan, OpenGL

Change-Id: I2ee814d69b4483dbdad9a579575c8db68548591a

5 years agoMerge remote-tracking branch 'khronos/master' into aosp/deqp-dev
Chris Forbes [Sat, 16 Feb 2019 01:32:02 +0000 (17:32 -0800)]
Merge remote-tracking branch 'khronos/master' into aosp/deqp-dev

Change-Id: I76a80d64d0068ea8582e3e24190bc6971cfdf2b3

5 years agoAdd tests for descriptor copy
Ari Suonpaa [Wed, 9 Jan 2019 05:32:13 +0000 (07:32 +0200)]
Add tests for descriptor copy

Added a test for copying descriptors. The test
uses a list of commands for declaring different
descriptor types and performing copies between
the descriptors. Descriptor arrays and dynamic
offsets are also tested.

New tests:

dEQP-VK.binding_model.descriptor_copy.*

Components: Vulkan

VK-GL-CTS issue: 1497
Change-Id: Iffae93873e022d2532fc495bb57f9ae467b6d195

5 years agoFurther fixes for spirv validation issues in pointer_parameter
Alexander Galazin [Thu, 14 Feb 2019 11:46:15 +0000 (12:46 +0100)]
Further fixes for spirv validation issues in pointer_parameter

Components: Vulkan

VK-GL-CTS issue: 1590

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

Change-Id: I59f2fc2e9d458fa1a122962487b30fec99b38401

5 years agoAdd graphicsfuzz.continue-and-merge test
Paul Thomson [Wed, 23 Jan 2019 11:03:07 +0000 (11:03 +0000)]
Add graphicsfuzz.continue-and-merge test

Also update vktVkRunnerGraphicsFuzzTests.cpp to match
changes to vktVkRunnerExampleTests.cpp.

Components: Vulkan

Affects:

dEQP-VK.graphicsfuzz.*

New Tests:

dEQP-VK.graphicsfuzz.continue-and-merge

Change-Id: I29a54a7b83bb7e2dd62366225b22330345bdeb4d

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Wed, 13 Feb 2019 11:04:35 +0000 (12:04 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: Ibbc3344b6d1bdb0c5b4c5f49069c57059d4e6e42

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Wed, 13 Feb 2019 11:04:32 +0000 (12:04 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: Icd5d0ffb554f52eb6c61b686689eb02f79b2f281

5 years agoSupport EGL 1.5 eglGetPlatformDisplay.
Jamie Madill [Thu, 31 May 2018 18:41:42 +0000 (14:41 -0400)]
Support EGL 1.5 eglGetPlatformDisplay.

This adds support via CAPABILITY_GET_DISPLAY_PLATFORM, and moves the
prior support for eglGetPlatformDisplayEXT to
CAPABILITY_GET_DISPLAY_PLATFORM_EXT.

GetPlatformDisplay is necessary for supporting EGLAttrib arguments.
EGLAttrib allows passing wider values such as pointers into the
Display init.

This might not affect any tests, but is necessary for implementations
such as ANGLE to pass a pointer from the test harness to the EGL
implementation for error logging.

v2 (Chris): remove constexpr

Components: Framework

VK-GL-CTS issue: 1178

Change-Id: Ia0ca6ff33af89f6791c0df5b714ff06bbc153b43

5 years agoEGL 1.5 CreatePlatform*
Courtney Goeltzenleuchter [Fri, 17 Aug 2018 13:44:35 +0000 (07:44 -0600)]
EGL 1.5 CreatePlatform*

Add tests for eglCreatePlatformWindowSurface and
eglCreatePlatformPixmapSurface by refactoring tests for
the cooresponding extension functions to allow testing both
entry points.
For Android, add extension and platform tests to device
CAPABILITIES.

Affects:
dEQP-EGL.functional.create_surface.platform_ext_window.*
dEQP-EGL.functional.create_surface.platform_ext_pixmap.*
dEQP-EGL.functional.create_surface.platform_window.*
dEQP-EGL.functional.create_surface.platform_pixmap.*

Components: Framework, AOSP

VK-GL-CTS issue: 1178

Change-Id: Iaeccf1c6936fe41544b46ebf65aaa3c2d135ccbd

5 years agox11_egl: use correct cmake variable name for GLES1 include path
Tapani Pälli [Tue, 22 Jan 2019 12:00:23 +0000 (14:00 +0200)]
x11_egl: use correct cmake variable name for GLES1 include path

This commit reverts most of 7b4a66f99 that included a hack to search
for include directory next to the library path. This was invalid since
used variable name PKG_GLES1_INCLUDE_DIRS is false, correct name is
GLES1_INCLUDE_DIRS which is properly set by the PKG_CHECK_MODULES call.

This change has been succesfully tested on Fedora and Ubuntu distros by
setting up a custom PKG_CONFIG_PATH.

VK-GL-CTS issue: 1573

Change-Id: I158d816d28f5bbf30288f6226bd5c9e30cf85285
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
5 years agoRename CAPABILITY_CREATE_SURFACE_PLATFORM
Courtney Goeltzenleuchter [Fri, 17 Aug 2018 13:55:58 +0000 (07:55 -0600)]
Rename CAPABILITY_CREATE_SURFACE_PLATFORM

Changing CAPABILITY_CREATE_SURFACE_PLATFORM to
CAPABILITY_CREATE_SURFACE_PLATFORM_EXTENSION so that it better
reflects that this is the extension capability being referred to
not the EGL 1.5 capability (to be added in a separate CL).

Affects:

dEQP-EGL.functional.create_surface.*

Components: Framework, AOSP

VK-GL-CTS issue: 1178

Change-Id: I563b45931bfab116f0e718ec44fb6ee892cce5ce

5 years agoAdd tests for EGL 1.5
Courtney Goeltzenleuchter [Thu, 16 Aug 2018 14:22:18 +0000 (08:22 -0600)]
Add tests for EGL 1.5

Test that EGL 1.5 functions can be called.

Affects:
dEQP-EGL.functional.get_proc_address.core.egl15

Components: Framework, AOSP, Android

VK-GL-CTS issue: 1178

Change-Id: I4ccc326ea18a39eff88133d063ac447b8d685b2e

5 years agoAdd layered rendering test for secondary cmd buffer
Ari Suonpaa [Mon, 28 Jan 2019 09:34:42 +0000 (11:34 +0200)]
Add layered rendering test for secondary cmd buffer

Extended layered rendering tests to use secondary
command buffer. Also tests vkCmdClearAttachments
and storage image inside secondary command buffer.
Some validation errors were fixed from the existing
tests.

New tests:

dEQP-VK.geometry.layered.*.secondary_cmd_buffer*

Affects:

dEQP-VK.geometry.layered.*

Components: Vulkan

VK-GL-CTS issue: 1410
Change-Id: If87f3e657b5bcf76fbd548e3eb3698fe8fb5d760

5 years agoFix memory allocation size in subgroups tests
Carl Ritson [Mon, 11 Feb 2019 15:28:05 +0000 (15:28 +0000)]
Fix memory allocation size in subgroups tests

Many subgroups test shaders are executed using std140 memory layout,
meaning a minimum stride of 16-bytes.  The common allocation path
assumes a packed layout and hence does not allocate sufficient buffer
for uint arrays, etc.
This change increases the allocation request size to address the issue.

Affects:
dEQP-VK.subgroups.*

Components: Vulkan

VK-GL-CTS Issue: 1593

Change-Id: I150cf0bb69029137a44c778c04cecbf2f61515ae

5 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Mon, 11 Feb 2019 09:57:15 +0000 (10:57 +0100)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: I735ee279e048933019df18e234b19c8e4dcdd972

5 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Alexander Galazin [Fri, 8 Feb 2019 14:11:12 +0000 (15:11 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master

Change-Id: Id48dfe4f133b06dde0148b10975e675de2eaeebb

5 years agoFix deleting texture in DSA test
asokolow [Tue, 22 Jan 2019 06:29:33 +0000 (07:29 +0100)]
Fix deleting texture in DSA test

Components: OpenGL

VK-GL-CTS Issue: 1571

Affects:
KHR-GL45.direct_state_access.framebuffers_get_attachment_parameters

Change-Id: Ic15929f20f983e154263a79f9163b04c80b808d9

5 years agoChange render size of shaderexecutor to 128
Graeme Leese [Thu, 10 Jan 2019 13:39:37 +0000 (13:39 +0000)]
Change render size of shaderexecutor to 128

This prevents certain texture tests from overflowing the maximum image
height.

Components: Vulkan
VK-GL-CTS Issue: 1456
Affects: dEQP-VK.glsl.*

Change-Id: Ifec5e9aff4d1e60a8f13e7ceb87ffc06e2c9daf2

5 years agoAdd tests checking if no depth is written when depth test is disabled
Slawomir Cygan [Fri, 18 Jan 2019 15:27:10 +0000 (16:27 +0100)]
Add tests checking if no depth is written when depth test is disabled

This adds depth buffer verification to all dEQP-VK.pipeline.depth tests.

Moreover new tests are added, checking if depth buffer is not modified,
when depth test is disabled (while depth write is enabled).

Components: Vulkan

VK-GL-CTS Issue: 1568

Affects: dEQP-VK.pipeline.depth.*

New Tests: dEQP-VK.pipeline.depth.format.*.depth_test_disabled.depth_write_enabled

Change-Id: I5b496ef5a2b89b47fa254a9400bd6c985323c10a

5 years agoAdd testing for VK_EXT_depth_clip_enable
Piers Daniell [Sat, 12 Jan 2019 00:23:07 +0000 (17:23 -0700)]
Add testing for VK_EXT_depth_clip_enable

This extension allows the depth clip to be enabled/disabled
independent of depth clamp. These tests verify depth clip
behavior with both depth clamp enabled and disabled.

Adds tests:
dEQP-VK.clipping.clip_volume.depth_clip.*

Components: Vulkan

VK-GL-CTS issue: 1554

Change-Id: I202fcddb40b5fdd23955359a5ffba06c45e5cfef

5 years agoAdd more merge cache tests
Slawomir Cygan [Tue, 20 Nov 2018 16:00:59 +0000 (17:00 +0100)]
Add more merge cache tests

This change adds multiple combinations of merge source and destination
caches, including cache hits & misses, merging with empty or merged cache,
multiple stages, etc.

Components: Vulkan

VK-GL-CTS Issue: 1555

New Tests: dEQP-VK.pipeline.cache.merge.*

Removed Tests: dEQP-VK.pipeline.cache.misc_tests.merge_cache_test

Change-Id: I799fd2e38d22a6095dc8b1e4cfbc7f6d0a14e6a0

5 years agoFix calls to vkBindImageMemory2
Ilkka Saarelainen [Tue, 29 Jan 2019 13:05:57 +0000 (15:05 +0200)]
Fix calls to vkBindImageMemory2

Some tests in the CTS called vkBindImageMemory2 once for each plane
of a multi-planar format when using an image created with DISJOINT
flag. However, the specification states that a single call to
vkBindImageMemory2 must bind all or none of the planes.

This combines the multiple calls to a single call.

Affects:

dEQP-VK.protected_memory.interaction.ycbcr.*_disjoint
dEQP-VK.ycbcr.format.*_disjoint

Components: Vulkan

VK-GL-CTS issue: 1564

Change-Id: I921c38f24f4499c72d1c9798fa50e00e38f8c9d2

5 years agoFix spirv validation issue in pointer_parameter
Piotr Byszewski [Thu, 7 Feb 2019 11:39:48 +0000 (12:39 +0100)]
Fix spirv validation issue in pointer_parameter

Components: Vulkan

VK-GL-CTS issue: 1590

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

Change-Id: I05546f34b52630e6706368f633913d3596e81703

5 years agoAdd more graphicsfuzz vkrunner tests
Paul Thomson [Thu, 17 Jan 2019 17:25:15 +0000 (17:25 +0000)]
Add more graphicsfuzz vkrunner tests

Also modify the existing graphicsfuzz test slightly to add copyright
header and better comments.

Components: Vulkan

Affects:

dEQP-VK.graphicsfuzz.pow-vec4

New Tests:

dEQP-VK.graphicsfuzz.control-flow-switch
dEQP-VK.graphicsfuzz.dead-struct-init
dEQP-VK.graphicsfuzz.mat-array-deep-control-flow
dEQP-VK.graphicsfuzz.mat-array-distance
dEQP-VK.graphicsfuzz.swizzle-struct-init-min

Change-Id: I9f3dbc8c33ca82683114648e8d72fda25a24fa82

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Tue, 5 Feb 2019 08:56:49 +0000 (09:56 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I0d9703f6c933f1531706e05c616c333651066f5f

5 years agoFix swapchain mutable tests buffer allocations
Lionel Landwerlin [Wed, 23 Jan 2019 18:29:34 +0000 (18:29 +0000)]
Fix swapchain mutable tests buffer allocations

We're seeing failure on our implementation and those seem to be
related to the fact that some buffers are allocated with one VkDevice
and used with another VkDevice. This raises errors in the validation
layers :

   Validation(ERROR): msg_code: 385926663:
   [ VUID-vkBindBufferMemory-memory-parent ] Object: 0x6 (Type = 8) |
   Object 0x6 was not created, allocated or retrieved from the correct
   device. The spec valid usage text states 'memory must have been
   created, allocated, or retrieved from device'

Affects: dEQP-VK.image.swapchain_mutable.*

Change-Id: I4d3c62dace2d259061382d3014deb05bc4eac9d7

5 years agoMerge vk-gl-cts/github-master into vk-gl-cts/master
Alexander Galazin [Mon, 4 Feb 2019 12:10:18 +0000 (13:10 +0100)]
Merge vk-gl-cts/github-master into vk-gl-cts/master

Change-Id: I9934155193938f026ba0164995523eef96317e3d

5 years agoMerge pull request #136 from werman/vulkan/VK_EXT_conditional_rendering
Alexander Galazin [Mon, 4 Feb 2019 12:09:04 +0000 (13:09 +0100)]
Merge pull request #136 from werman/vulkan/VK_EXT_conditional_rendering

Add tests of VK_EXT_conditional_rendering for secondary command buffer

5 years agoUpdate default Android API level to 28
Alexander Galazin [Fri, 18 Jan 2019 12:52:52 +0000 (13:52 +0100)]
Update default Android API level to 28

Components: Framework, OpenGL, Vulkan

Affects: running on Android

Change-Id: I4f7db78ab1eaa470ffe3118fea4b5e925aed9989

5 years agoMemory model tests for transitive av/vis ops
Jeff Bolz [Sat, 10 Nov 2018 19:52:45 +0000 (13:52 -0600)]
Memory model tests for transitive av/vis ops

Components: Vulkan

New Tests: dEQP-VK.memory_model.transitive.*

Change-Id: Ia90ad7165c87fba2bfe18cf8a27acf479aa68512

5 years agoNaN handling in float16 tests
Boris Zanin [Fri, 21 Dec 2018 13:53:25 +0000 (14:53 +0100)]
NaN handling in float16 tests

Support of NaNs is optional according the specification.
Tests always have expected that NaNs are always supported.
To be compatible with the specification skip check of NaN
input floats in logical.* and add a new set of tests
logical_nan.*.  The new tests require device extension
VK_KHR_shader_float_controls to validate whether NaNs are
supported (property shaderSignedZeroInfNanPreserveFloat16).

Updated tests:
 * dEQP-VK.spirv_assembly.instruction.compute.float16.logical.opfunord*
 * dEQP-VK.spirv_assembly.instruction.graphics.float16.logical.opfunord*
 * dEQP-VK.spirv_assembly.instruction.compute.float16.logical.opford*
 * dEQP-VK.spirv_assembly.instruction.graphics.float16.logical.opford*

Added tests:
 * dEQP-VK.spirv_assembly.instruction.compute.float16.logical_nan.*
 * dEQP-VK.spirv_assembly.instruction.graphics.float16.logical_nan.*

Affected tests:
 * dEQP-VK.spirv_assembly.instruction.compute.float16.logical.opisnan*
 * dEQP-VK.spirv_assembly.instruction.graphics.float16.logical.opisnan*
 * dEQP-VK.spirv_assembly.instruction.compute.float16.logical.opisinf*
 * dEQP-VK.spirv_assembly.instruction.graphics.float16.logical.opisinf*

Components: Vulkan

VK-GL-CTS issue: 1528

Change-Id: Iadd91ed24c78e15ff458355262b009015b8a8e4a

5 years agoAdd tests for clearing cube attachments with non zero base array layer
dapanel [Fri, 19 Oct 2018 11:04:52 +0000 (13:04 +0200)]
Add tests for clearing cube attachments with non zero base array layer

Added test to check if base array layer is used properly for cube image views.

Components: Vulkan

VK-GL-CTS Issue: 1547

New tests:
dEQP-VK.api.image_clearing.*.cube_layers.*

Change-Id: I716168717dde8ef8fad26427fcd79a21c7b83598

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Wed, 30 Jan 2019 13:32:36 +0000 (14:32 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I4dc98f1a1a40a191c9adc8086d3c842444697a93

5 years agoFix mustpasses
Alexander Galazin [Wed, 30 Jan 2019 12:48:36 +0000 (13:48 +0100)]
Fix mustpasses

Components: Vulkan

Change-Id: Ic0effbe836c0501255e3958e0224f55d64fe5d3f

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Wed, 30 Jan 2019 11:32:55 +0000 (12:32 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I6077e7955922b190bb161f7ea55b70622de9cc95

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Wed, 30 Jan 2019 11:32:51 +0000 (12:32 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: Ibe8e4681ee550224f9db8109857812113c2bc503

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Wed, 30 Jan 2019 11:32:48 +0000 (12:32 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: I15606e0ae4cebef241218414134324f043f06633

5 years agoAdd tests of VK_EXT_conditional_rendering for secondary command buffer
Danylo Piliaiev [Wed, 12 Dec 2018 16:21:07 +0000 (18:21 +0200)]
Add tests of VK_EXT_conditional_rendering for secondary command buffer

Tests which previosly were under "secondary_buffer" category are now
under "inherited" category since begin/end conditional rendering is
still in primary command buffer.

New tests for conditional rendering in secondary command buffer took
these tests' names.

Components: Vulkan

Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com>
5 years agoAdd missing PointSize to some geometry tests
Ilkka Saarelainen [Sun, 13 Jan 2019 19:58:43 +0000 (21:58 +0200)]
Add missing PointSize to some geometry tests

Validation layers catch validation errors in YCbCr and glsl tests
caused by the missing gl_PointSize in the geometry shader code.

This adds the missing gl_PointSize to get rid of the validation
errors.

Components: Vulkan

Affects:
dEQP-VK.glsl.*geometry
dEQP-VK.ycbcr.*geometry*

VK-GL-CTS issue: 1502

Change-Id: I0f306d9c4c244b275f1e437869e3a6af5169f217

5 years agoAdded variants of PointCoord test with uniforms
Jari Komppa [Fri, 7 Dec 2018 12:05:32 +0000 (14:05 +0200)]
Added variants of PointCoord test with uniforms

Adds variants of the PointCoord test that include an uniform that
changes the output.

New tests:

dEQP-VK.glsl.builtin_var.simple.pointcoord_uniform_frag
dEQP-VK.glsl.builtin_var.simple.pointcoord_uniform_vert

Components: Vulkan

VK-GL-CTS issue: 1365

Change-Id: If2e46051ae67aefa558886b0fffcbf5916213f28

5 years agoFix validation errors in subgroups tests
Graeme Leese [Thu, 10 Jan 2019 11:20:02 +0000 (11:20 +0000)]
Fix validation errors in subgroups tests

Some subgroups tests were attempting to create a descriptor pool of size
0, which is invalid. Instead, skip the whole construction of descriptor
sets since they aren't needed.

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

Change-Id: I5abedcc2360a0336c521aea855a9725b127c9a0f

5 years agoExtend api.version_check.entry_points test
Toni Merilehti [Mon, 14 Jan 2019 12:42:01 +0000 (14:42 +0200)]
Extend api.version_check.entry_points test

This adds a check that verifies that vkGet*ProcAddr returns valid
function pointers for extension functions. The tested extensions are
multi-author extensions that are supported by the device.

Also, the gen_framework.py script is updated to generate
a vkExtensionFunctions.inl file that contains functions of instance
and device extensions.

Affects:

dEQP-VK.api.version_check.entry_points

Components: Vulkan

VK-GL-CTS issue: 1374

Change-Id: Ia66319515300474f5dcbcab6f090ec15a823ca7b

5 years agoAdded missing writes to gl_Position in vertex shaders
Dae Kim [Mon, 28 Jan 2019 11:11:09 +0000 (11:11 +0000)]
Added missing writes to gl_Position in vertex shaders

Some vertex shaders are not writing a value to gl_Position, which can cause
unintended run-time behavior (including termination or system instability).

Components: Vulkan
VK-GL-CTS issue: 1579

Affects:
dEQP-VK.binding_model.descriptorset_random.*
dEQP-VK.memory_model.message_passing.*

Change-Id: I3f2f21f23508bda3062a4480e9fac78748bab32b

5 years agoDepth attachment not stored in late_fragment_tests
Alex Walters [Fri, 25 Jan 2019 18:10:08 +0000 (18:10 +0000)]
Depth attachment not stored in late_fragment_tests

The stencil was stored, but the depth attachment was set to DONT_CARE.
This allows implementations to optimise out the depth store at the end
of the renderpass, when the test is expecting to readback valid depth
values for reference comparison.

Affects:

dEQP-VK.renderpass.suballocation.subpass_dependencies.late_fragment_tests*

Components: Vulkan

VK-GL-CTS issue: 1578

Change-Id: Ie3bb52fa63ff379d70759190460ce8662c4c09ad

5 years agoChange vkrunner tests to use Archive
Graeme Leese [Wed, 9 Jan 2019 17:54:49 +0000 (17:54 +0000)]
Change vkrunner tests to use Archive

Loading the files directly doesn't work on Android.

Components: Vulkan

Affects:
dEQP-VK.vkrunner.*
dEQP-VK.graphicsfuzz.*
dEQP-VK.draw.*
dEQP-VK.dynamic_state.*

VK-GL-CTS issue: 1574

Change-Id: I2efb547f74d44486aee093837c973425606fe4da

5 years agoAdd ASTC LDR error colour quality warning
Alex Walters [Fri, 14 Sep 2018 10:44:55 +0000 (11:44 +0100)]
Add ASTC LDR error colour quality warning

Some hardware can output the HDR error colour (black) instead of the
LDR error colour (magenta). Valid compression blocks are rendered
correctly.

This change adds a second comparison mechanism if the initial *fast*
deMemCmp fails; the texture values are compared allowing for any value
matching an error colour to compare against the other error colour.

If such a match is detected the test will output a QualityWarning
instead of a Pass.

If the two compared values don't match, but are not both error colours
the test result is still a Fail.

Affects:

dEQP-VK.image.texel_view_compatible*astc*

Components: Vulkan

VK-GL-CTS issue: 1231

Change-Id: Ie14913de0f2f3cf7fed90c275e48c67181c1e7ff
(cherry picked from commit b038d43aa868be1e6d4471c6977984151ada3af5)

5 years agoFix the device_group test failure by allowing same number of tries to
Mohd Faisal [Fri, 19 Oct 2018 09:35:36 +0000 (10:35 +0100)]
Fix the device_group test failure by allowing same number of tries to
create object as device test.

Components: Vulkan

Affects: dEQP-VK.api.object_management.alloc_callback_fail.device_group

VK-GL-CTS Issue: 1431

Change-Id: I099a05f3109c1997cad323a0577f66c95755b151
(cherry picked from commit 4c98da04296ed97e73fecdd2e5b80478ba7f60af)

5 years agoReduce devices created in device_group tests
Peter Quayle [Tue, 11 Dec 2018 18:02:26 +0000 (18:02 +0000)]
Reduce devices created in device_group tests

The device_group tests could sometimes hit timeouts on
slower CPUs. This change reduces the number of objects
created in these tests to match the reduced number used
in the device and instance tests.

Affects:
dEQP-VK.api.object_management.
multithreaded_per_thread_resources.device_group
dEQP-VK.api.object_management.
multithreaded_shared_resources.device_group

Components: Vulkan

VK-GL-CTS issue: 1512
Change-Id: Icb68643ff530a8b1a1a7daa9fc93d8db8bc5faf9
(cherry picked from commit 9134406c47a0f345ea9e3c67dc7b99c7947b2436)

5 years agoFix GL errors expected for glClearNamedBufferData and glClearNamedBufferSubData
asokolow [Thu, 20 Sep 2018 09:56:25 +0000 (11:56 +0200)]
Fix GL errors expected for glClearNamedBufferData and glClearNamedBufferSubData

The spec says:

"An INVALID_VALUE error is generated if type is not one of the types in
table 8.2.
An INVALID_VALUE error is generated if format is not one of the formats
in table 8.3."

However, the test was expecting INVALID_ENUM

Components: OpenGL

VK-GL-CTS Issue: 1572

Change-Id: Ibcb338061584af48026b291c4372303c083102ea
Affects: KHR-GL45.direct_state_access.buffers_errors

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Thu, 24 Jan 2019 21:13:10 +0000 (22:13 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I557cfbf99b4603ec546a3443bd2f5334475980dc

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Thu, 24 Jan 2019 21:13:07 +0000 (22:13 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I00246ec185fe843f4ca638ca0a4bfa34b8598cde

5 years agoFixes multiview query tests
Yu-Jun Li [Mon, 7 Jan 2019 18:48:18 +0000 (10:48 -0800)]
Fixes multiview query tests

Queries need to be reset prior to use

Components: Vulkan
VK-GL-CTS issue: 1575

Affects:
dEQP-VK.multiview.queries.*

Change-Id: Icf0f712a3391784ee47c00de833f8417bb8337c3
(cherry picked from commit bd913ffd046955e976337ab6fb1e93520b37c375)

5 years agoFixes multiview query tests
Yu-Jun Li [Mon, 7 Jan 2019 18:48:18 +0000 (10:48 -0800)]
Fixes multiview query tests

Queries need to be reset prior to use

Components: Vulkan
VK-GL-CTS issue: 1575

Affects:
dEQP-VK.multiview.queries.*

Change-Id: Icf0f712a3391784ee47c00de833f8417bb8337c3

5 years agoFix dependency on unspecified rounding mode
Stephen Clarke [Tue, 15 Jan 2019 11:32:49 +0000 (11:32 +0000)]
Fix dependency on unspecified rounding mode

These tests perform an addition whose Rounding mode is unspecified
according to the specification.  This test is not testing addition,
it is testing that the input values are read correctly, so modify
the input values such that they do not require rounding.

Affected tests:
* dEQP-VK.spirv_assembly.instruction.compute.indexing.input.non16basealignment*

Components: Vulkan

VK-GL-CTS issue: 1473
Change-Id: Ifab284d95cc2e36c3a551c30d57deeca7bd8d4b2

5 years agoSeparate out debug information in Android build
Chris Forbes [Thu, 14 Jun 2018 06:23:02 +0000 (23:23 -0700)]
Separate out debug information in Android build

We don't want to place the debug information in the APK, but we should
keep it around on the host so that the debugger can work.

In a "normal" Android app packaging process this is done for us by
gradle, but we roll our own. Do it as a CMake post-build step instead.

Change-Id: I59b13659d66333a06ce60b6057db19b39c067f53
Components: Framework
VK-GL-CTS: 1194
VK-GL-CTS: 1533
(cherry picked from commit 651bd0d1bcfc3763521f16bfd3b9a40396998e8c)

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Mon, 21 Jan 2019 20:16:15 +0000 (21:16 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I90db06a96453f6f1ba2095858d490715b12b3b1d

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Mon, 21 Jan 2019 20:16:12 +0000 (21:16 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: Ia670fa92c0d87e0c01f07e156a00d19533faf9f0

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Mon, 21 Jan 2019 20:16:08 +0000 (21:16 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: Ic7e43b929357fc3e076de1105d7e24fb3b92b946

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Mon, 21 Jan 2019 18:21:53 +0000 (19:21 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: I79cdbe3b49745c53437cd85f3022bf9c6123211d

5 years agoUpdate vkrunner version
Chris Forbes [Fri, 18 Jan 2019 17:44:03 +0000 (09:44 -0800)]
Update vkrunner version

Includes fixes for missing synchronization.

VK-GL-CTS Issue: 1567

Change-Id: I21e8cf172e7bd45d54c0b8e0ef9e2776a85e691c

5 years agoAdd const matrix multiply test
Paul Thomson [Wed, 2 Jan 2019 12:09:53 +0000 (12:09 +0000)]
Add const matrix multiply test

Test case ported from an ANGLE regression test.

New tests:

dEQP-GLES3.functional.shaders.constants.const_mat_multiply*

Components: AOSP

Chromium issue: 912508

Change-Id: I5ecc13af8f8e7a5d5a50126ea609e8ad6fab185b

5 years agoAdd UTF8 abuse tests for extension and layer names
Jari Komppa [Mon, 7 Jan 2019 12:31:34 +0000 (14:31 +0200)]
Add UTF8 abuse tests for extension and layer names

These tests abuse the layer and extension name fields of the instance
creation APIs. The APIs are defined as taking in UTF-8 strings but
all actual strings so far are ASCII, so it is possible that these
inputs are unexpected and may lead to crashes.

New tests:

dEQP-VK.api.device_init.create_instance_extension_name_abuse
dEQP-VK.api.device_init.create_instance_layer_name_abuse

Components: Vulkan

VK-GL-CTS issue: 1510

Change-Id: Iaf370dd737ca8ce8c4fda849a95b951fa12d2ab5

5 years agoAdd graphicsfuzz vkrunner tests
Paul Thomson [Fri, 21 Dec 2018 11:42:32 +0000 (11:42 +0000)]
Add graphicsfuzz vkrunner tests

Add a new category for simplified test cases found by GraphicsFuzz that
trigger bugs in widely-used shader compilers so that the bugs will be
fixed and will stay fixed. The test cases do not try to get coverage of
specific features; the tests usually trigger very specific and subtle
bugs and may look strange without this context. Nevertheless, the tests
should clearly pass.

Add one test case. Other test cases to follow.

Components: Vulkan

New Tests: dEQP-VK.graphicsfuzz.pow-vec4

Change-Id: I518cc24b5649e662ee383b36dbe05b55153325c4

5 years agoFix missing self dependency in renderpass tests
Leif-Julian Ovrelid [Thu, 8 Nov 2018 09:16:10 +0000 (10:16 +0100)]
Fix missing self dependency in renderpass tests

The dEQP-VK.renderpass.suballocation.formats and
dEQP-VK.renderpass.dedicated_allocation.formats tests were missing self
dependencies in some cases where they read then write one attachment
in one subpass. In cases with overlapping rendering this would give a
read-write-then-read-write situation, which neads a self dependency to
work reliably. Some of the tests were missing the self dependency, some
of them had the color attachment bits set when depending on depth, and
one case had a self dependency where it should not.
This patch adds a self dependency to two test cases that need it,
removes self dependency from a case that does not need it, and fixes
the depth tests to have the correct bits set.

Affects:

dEQP-VK.renderpass.suballocation.formats.*.input.*
dEQP-VK.renderpass.dedicated_allocation.formats.*.input.*
dEQP-VK.renderpass2.suballocation.formats.*.input.*
dEQP-VK.renderpass2.dedicated_allocation.formats.*.input.*

Components: Vulkan

VK-GL-CTS Issue: 1454

Change-Id: I4a9bec3ef6b088ab3a50d7f658867076f68788b9
(cherry picked from commit f659f8c9ad39c179a79a92ee3b66cb83e1dd52ed)

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Fri, 18 Jan 2019 12:19:35 +0000 (13:19 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I3eef5f481cfa4bf5c8bcb0feb69733d492de95d3

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Fri, 18 Jan 2019 10:54:53 +0000 (11:54 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: Idec176bfe0b3a95eb0c557f32015968cbeb914d7

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Fri, 18 Jan 2019 09:47:28 +0000 (10:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: I2b85e569622052ec742b1272ac367fc1dccf1733

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Fri, 18 Jan 2019 09:47:25 +0000 (10:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: Iaf773ccd948a5707df4d2ae4628a702e739bd8df

5 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Fri, 18 Jan 2019 09:47:22 +0000 (10:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: Idf9225adfcbc231e544516558bd6d794dce40b26

5 years agoFix NaN handling in funord tests
Stephen Clarke [Mon, 14 Jan 2019 16:31:18 +0000 (16:31 +0000)]
Fix NaN handling in funord tests

Support of NaNs is optional according to the specification, but
these tests were assuming that NaNs are always supported.
Modify these tests to skip check if an operand is a NaN.

Add infrastructure for a new set of tests opfunord_nan*, which
use VK_KHR_shader_float_controls to check whether NaNs are supported.
But since this is a bugfix, do not actually add the new tests.

Affected tests:
* dEQP-VK.spirv_assembly.instruction.compute.opfunord*

Components: Vulkan

VK-GL-CTS issue: 1551
Change-Id: Ic60f13377ff9d2bdc2e10047aab8be0617904670

5 years agoFix validation failure in float_controls
Piotr Byszewski [Thu, 17 Jan 2019 12:37:07 +0000 (13:37 +0100)]
Fix validation failure in float_controls

Half of float_controls tests read operation arguments from
SSBO (other half generates them in the code). Whent vertex
stage is tested this SSBO must be decorated as NonWritable.
This change resolves this issue by applying NonWritable
decoration to input SSBO for all tested stages.
Operation output is always saved in fragment stage and to
separate SSBO.

Components: Vulkan

VK-GL-CTS issue: 1543

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

Change-Id: Iaed891d7b45b2a5f02ce1443dc13a40e24fa2086

5 years agoUpdate Vulkan CTS Readme
Alexander Galazin [Thu, 17 Jan 2019 11:51:30 +0000 (12:51 +0100)]
Update Vulkan CTS Readme

Clarify API level requirements for implementations with
VK_ANDROID_external_memory_android_hardware_buffer support

Components: Vulkan

Change-Id: I8536595678a8d4daff9e16ed3a9e9e25594e372e

5 years agoFixes ycbcr image properties requirement
Matthew Netsch [Wed, 16 Jan 2019 19:36:30 +0000 (14:36 -0500)]
Fixes ycbcr image properties requirement

Mipmaps/Arrays are optional for ycbcr images

Components: Vulkan
VK-GL-CTS issue: 1506

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

Change-Id: I795ec1c8b3e44a460ddd0c7c2fe0fe1731794cab
(cherry picked from commit 845394de5b43c71adddc72e7563b50c65e852b27)

5 years agoFixes ycbcr image properties requirement
Matthew Netsch [Wed, 16 Jan 2019 19:36:30 +0000 (14:36 -0500)]
Fixes ycbcr image properties requirement

Mipmaps/Arrays are optional for ycbcr images

Components: Vulkan
VK-GL-CTS issue: 1506

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

Change-Id: I795ec1c8b3e44a460ddd0c7c2fe0fe1731794cab

5 years agoFix image type in Uniform texel buffer tests
Alexander Galazin [Thu, 17 Jan 2019 11:56:27 +0000 (12:56 +0100)]
Fix image type in Uniform texel buffer tests

Form the issue:
The Shader Resource and Storage Class Correspondence table
in the Descriptor Set Interface section of the Vulkan 1.1
specification clearly states that a descriptor resource
which is a uniform texel buffer should correspond to
an OpTypeImage(Dim=Buffer,Sampled=1) type.

The current tests in the binding_model category
generate OpTypeSampledImage for uniform texel buffer
resources instead, which I believe is incorrect.

This can be fixed by changing the GLSL declaration from
samplerBuffer to textureBuffer

Components: Vulkan

VK-GL-CTS public issue: 139

Affects:
dEQP-VK.binding_model.*uniform_texel_buffer.*

Change-Id: Ie1beb05cac69a6cf1220bbd47c2d7876eed7ff26

5 years agoProtected Memory Fixes - Barrier Layouts & Flags
Martin Freebody [Mon, 14 Jan 2019 13:34:40 +0000 (13:34 +0000)]
Protected Memory Fixes - Barrier Layouts & Flags

This change removes errors reported by core validation layer.

Affects: dEQP-VK.protected_memory.*

Components: Vulkan

Change-Id: Ic258ba2af077b2dc119db0d177613558464e0c9a

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Thu, 17 Jan 2019 12:07:33 +0000 (13:07 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I46729dcd60ae4c533dabacb17fbeecc92f709bb0

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Thu, 17 Jan 2019 11:24:09 +0000 (12:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: Ibfebb592de5aff940b3167f5475139cec99ef6f5

5 years agoUpdate VK_KHR_vulkan_memory_model to spec version 3
Jeff Bolz [Wed, 12 Dec 2018 19:46:54 +0000 (13:46 -0600)]
Update VK_KHR_vulkan_memory_model to spec version 3

Components: Vulkan
Affects: dEQP-VK.memory_model.*
Change-Id: I3ba8a275092f0a2fcfef02cdabf2ab51750f74f5