platform/upstream/VK-GL-CTS.git
5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Fri, 22 Mar 2019 20:13:10 +0000 (21:13 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I62d7ebcc0c2cb2a2adc9c1d8f910c499b3504b7f

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Fri, 22 Mar 2019 20:11:55 +0000 (21:11 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I4f48c3e9ca8593777c5a4ef6cd32050f8c839043

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Fri, 22 Mar 2019 20:10:39 +0000 (21:10 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: I328cee295acc9eb8c5204e5f3574879d9e21a609

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Fri, 22 Mar 2019 19:49:07 +0000 (20:49 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: If24571c09fd321c8417da919af0d2272a0ac2c57

5 years agocmake: Add support for PNG_ARM_NEON_OPT NDK-r19
Tony Zlatinski [Tue, 12 Feb 2019 16:50:28 +0000 (10:50 -0600)]
cmake: Add support for PNG_ARM_NEON_OPT NDK-r19

On Android, here is clang compiler change for
NDKs after ndk-r17c where the compiler intrinsics
for libpng are not part of the compiler for the
armeabi-v7a targets.

Add the supported png functions for these compiler
intrinsics, explicitly for 32-bit ARM builds.

Affects:
    dEQP-VK.*

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

Change-Id: Ib832f983294f5dd747720ed4a79a21e29a06f776
(cherry picked from commit 99a88af740c425bf250ce9cb2143aa6be3a778f2)

5 years agoFix uninitialized variable reported by gcc 8.3
Alexander Galazin [Fri, 22 Mar 2019 09:06:18 +0000 (10:06 +0100)]
Fix uninitialized variable reported by gcc 8.3

VK-GL-CTS issue: 1656

Components: Vulkan

Affects: dEQP-VK.sparse_resources.*

Change-Id: I298c795b05c0c204f04970da7a923f797c4478b8

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Fri, 22 Mar 2019 15:25:50 +0000 (16:25 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: Ie1a2c3d42088338cc526a4b9bd22bdec070dd7b9

5 years agoFix build by adding DE_UNREF
Graeme Leese [Fri, 22 Mar 2019 14:32:55 +0000 (14:32 +0000)]
Fix build by adding DE_UNREF

Function parameters weren't being used in the renderdoc stub interface,
so the warnings should be silenced.

Components: Framework

Change-Id: I0f060c344c6b5959028efcc2489d1bc30b43fb9f

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Fri, 22 Mar 2019 13:09:57 +0000 (14:09 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: Iff99182ee48f808b2e1e93eea00ae17ec44efa3e

5 years agoAdd tests for EGL_GL_COLORSPACE_DISPLAY_P3_PASSTHROUGH_EXT.
Peiyong Lin [Wed, 26 Dec 2018 23:45:55 +0000 (15:45 -0800)]
Add tests for EGL_GL_COLORSPACE_DISPLAY_P3_PASSTHROUGH_EXT.

Components: EGL
VK-GL-CTS Issue: 1534

New tests:
dEQP-EGL.functional.wide_color.window_fp16_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.pbuffer_fp16_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.window_1010102_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.pbuffer_1010102_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.window_8888_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.pbuffer_8888_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.window_888_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.pbuffer_888_colorspace_p3_passthrough

Change-Id: I58a9a6a676d8e438c3c2494679105d65e71852b5

5 years agoInvalidate memory before checking results
Graeme Leese [Mon, 4 Mar 2019 13:18:43 +0000 (13:18 +0000)]
Invalidate memory before checking results

Components: Vulkan
VK-GL-CTS issue: 1640
Affects: dEQP-VK.binding_model.descriptor_copy.graphics.*

Change-Id: I20a9ba5f32aefa9df0852bd064df27cb333af3aa

5 years agoFix validation errors in ycbcr.query.* tests
Ilkka Saarelainen [Wed, 6 Mar 2019 12:43:05 +0000 (14:43 +0200)]
Fix validation errors in ycbcr.query.* tests

Query tests were using test images in VK_IMAGE_LAYOUT_UNDEFINED
layout but the command buffer expects them to be in
VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL layout.

This CL transitions the test images to the correct layout.

Affects:

dEQP-VK.ycbcr.query.*

Components: Vulkan

VK-GL-CTS issue: 1563

Change-Id: I4b17078d0f06db59206cb46f377b61beaa252c60

5 years agoDon't give samplers in YCbCr descriptor updates
Graeme Leese [Mon, 11 Mar 2019 18:29:08 +0000 (18:29 +0000)]
Don't give samplers in YCbCr descriptor updates

They are not required, so it's good to test that implementations are not
relying on them.

Components: Vulkan
VK-GL-CTS issue: 1646
Affects: dEQP-VK.ycbcr.format.*

Change-Id: I146a549b0a6cd2459660624c76088f623ebdd54b

5 years agoAdd tests for OpFUnord with NaN
Toni Merilehti [Mon, 4 Mar 2019 11:43:39 +0000 (13:43 +0200)]
Add tests for OpFUnord with NaN

Add OpFUnord test cases that use NaN (not a number) values.
The functionality for testing NaN values is implemented
in commit acafd1d389d1d18d4e4410862d96064f9fca551e.

New tests:

dEQP-VK.spirv_assembly.instruction.compute.opfunord_nan.*

Components: Vulkan

VK-GL-CTS issue 1612

Change-Id: Ifd49c5ebe6382737cb0fb6ffca1a350889a54905

5 years agoAdd alpha to coverage test with no color attachment
Ari Suonpaa [Tue, 12 Feb 2019 13:21:07 +0000 (15:21 +0200)]
Add alpha to coverage test with no color attachment

Added a test for alpha to coverage without a color
attachment. First the test draws a primitive with alpha 0
and a subpass with only a depth buffer. No writes to a depth
buffer are expected. Then a second draw with a color buffer
and the same depth buffer is done to verify the depth
buffer still has the original clear values.

New tests:

dEQP-VK.pipeline.multisample.alpha_to_coverage_no_color_attachment.*

Components: Vulkan

VK-GL-CTS issue: 1586
Change-Id: Ibfc9cbf0ade3280fe80f43296fad79b5c6f76ba1

5 years agoSimplify the combination passed to vkCreateImage
root [Wed, 6 Mar 2019 05:53:29 +0000 (00:53 -0500)]
Simplify the combination passed to vkCreateImage

Components: Vulkan

Affects:
dEQP-VK.memory.requirements.*

VK-GL-CTS issue: 1619

Change-Id: Ief6e8c30cc3d379456aba87be9da92284d33e983

5 years agoBe more careful about Block decorations on structs
Jason Ekstrand [Sat, 15 Dec 2018 00:04:39 +0000 (18:04 -0600)]
Be more careful about Block decorations on structs

In spirv/SPIR-V@9701a9f9 we changed the SPIR-V spec to say that
block-decorated structures could not be nested.  This is needed for
sorting out certain variable pointers issues inside a SPIR-V parser.
Unfortunately, the mentioned group of CTS tests violates this rule.
Their %input_buffer type is a struct containing two instances of
%outer_struct and both %input_buffer and %outer_struct are decorated
Block.  Fortunately, only one of the two struct types is actually
required for an input at any given type so we just need to be more
careful about the decorations.

Affects:

dEQP-VK.spirv_assembly.instruction.compute.variable_pointers.complex_types_compute.*

Components: Vulkan

VK-GL-CTS issue: 1518
Change-Id: I87a832fab94a9c06317d20b32afedf16b52ab2f2
(cherry picked from commit 1dbdfe34947fdb3e6d24226a58f02d0b8a515da8)

5 years agoUpdate Amber to fix building on Android, and elsewhere
David Neto [Thu, 21 Mar 2019 07:01:07 +0000 (03:01 -0400)]
Update Amber to fix building on Android, and elsewhere

- Fix dir for generation of Vulkan header
- Avoid aggressive use-without-init warnings
- Fix return inferred as unreachable by clang-3.4

Change-Id: I6422e14d38fa6d213d4d5e92f981d9843b0c055e

5 years agoMake renderdoc_app.h optional at build time
Jordan Justen [Tue, 12 Mar 2019 07:17:53 +0000 (00:17 -0700)]
Make renderdoc_app.h optional at build time

Since renderdoc support is optional at runtime, this change makes it
also optional at build time. If the renderdoc_app.h file doesn't exist
at the expected location, then a no-op stub version of the
RenderDocUtil class is built instead.

Components: Vulkan, Framework

Change-Id: Iedc4bcddf47ac5f471911ad6d8e37439cd9e0d90

5 years agoRevert "Make renderdoc_app.h optional at build time"
Alexander Galazin [Wed, 20 Mar 2019 16:10:35 +0000 (12:10 -0400)]
Revert "Make renderdoc_app.h optional at build time"

This reverts commit 1225d4ab8375e88b39f73bc946a7afcb51aa8156.

Change-Id: I3c2f71b3bc54adb221f1357f7a4b31e719dc3a20

5 years agoImprove shader cache hashing
Jari Komppa [Wed, 6 Mar 2019 08:41:25 +0000 (10:41 +0200)]
Improve shader cache hashing

This change adds FNV-1 hash algorithm and a check whether a shader is
already in the cache before writing it there. In multi-threaded shader
compilation the cache might have written multiple copies of the same
shader into the cache, wasting disk space.

Affects:

None

Components: Vulkan

VK-GL-CTS issue: 1641

Change-Id: Ideaed34f49994f5da50b75066e611e60023eccb1

5 years agocmake: Add support for PNG_ARM_NEON_OPT NDK-r19
Tony Zlatinski [Tue, 12 Feb 2019 16:50:28 +0000 (10:50 -0600)]
cmake: Add support for PNG_ARM_NEON_OPT NDK-r19

On Android, here is clang compiler change for
NDKs after ndk-r17c where the compiler intrinsics
for libpng are not part of the compiler for the
armeabi-v7a targets.

Add the supported png functions for these compiler
intrinsics, explicitly for 32-bit ARM builds.

Affects:
    dEQP-VK.*

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

Change-Id: Ib832f983294f5dd747720ed4a79a21e29a06f776

5 years agoMake renderdoc_app.h optional at build time
Jordan Justen [Tue, 12 Mar 2019 07:17:53 +0000 (00:17 -0700)]
Make renderdoc_app.h optional at build time

Since renderdoc support is optional at runtime, this change makes it
also optional at build time. If the renderdoc_app.h file doesn't exist
at the expected location, then a no-op stub version of the
RenderDocUtil class is built instead.

Components: Vulkan, Framework
Change-Id: Ic4b43500b4ead50c4728d2ff3bf098d44e00a9a6

5 years agoframework: propagate ResourceError exception from postIterate
Tapani Pälli [Fri, 1 Mar 2019 11:07:35 +0000 (13:07 +0200)]
framework: propagate ResourceError exception from postIterate

Change throws ResourceError exception in TestCaseWrapper::iterate in
case postIterate threw one.

Change-Id: I9a3fed58f21dd6f594488fc998ae5bd685a733ec
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
5 years agoMove spirv/glslang utils to common module
Daniel Koch [Wed, 13 Mar 2019 19:15:48 +0000 (15:15 -0400)]
Move spirv/glslang utils to common module

VK-GL-CTS Issue: 1651
Component: OpenGL
Affects: KHR-GL*.gl_spirv.*

Change-Id: I1fdc617523ac467458952e9ec2df67abf80657c3

5 years agoAmber: Initialize the delegate to NULL
David Neto [Tue, 19 Mar 2019 18:56:29 +0000 (14:56 -0400)]
Amber: Initialize the delegate to NULL

The delegate can be used to log calls and time them.
For now, we don't want any such logging.  But we do have
to initialize the delegate rather than use an uninitialized
pointer.

Change-Id: I1379b9810f3acd67d4d7116d407eb4e0c6ee7bb3

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Tue, 19 Mar 2019 15:04:23 +0000 (16:04 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I0d8d57b196da13538a026a3abea3ebd6b6ed0cde

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Tue, 19 Mar 2019 14:26:12 +0000 (15:26 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: Iacfb659e3cb7bcb1d144f843a9011472c18c63fe

5 years agoUpdate Amber so it detects Vulkan on Android
David Neto [Mon, 18 Mar 2019 21:56:06 +0000 (17:56 -0400)]
Update Amber so it detects Vulkan on Android

Components: Vulkan

Change-Id: I0a584c5617c723dc763933fd8e20fe621ac46970

5 years agoAdd tests for VK_NV_cooperative_matrix
Jeff Bolz [Wed, 27 Feb 2019 16:22:32 +0000 (10:22 -0600)]
Add tests for VK_NV_cooperative_matrix

Components: Vulkan

New tests: dEQP-VK.compute.cooperative_matrix.*

Change-Id: I1f78c068510466793ba7407347c2b91b30ee4831

5 years agoAdd test for concurrent compute
Jari Komppa [Thu, 7 Feb 2019 08:10:16 +0000 (10:10 +0200)]
Add test for concurrent compute

Added test that runs identical payload on two queues with different
priority levels, and checking that the lower priority queue does not
finish first, adding a note to the log if the priorities seem to be
reversed. At the end it is also verified that both queues did the
work.

New test:

dEQP-VK.compute.basic.concurrent_compute

Components: Vulkan

VK-GL-CTS issue: 1509

Change-Id: Ib5d52dcbb3cee0e07c4d14bbb8d61d2f1ee2a8c5

5 years agoSend external api base extensions when not core
Lingfeng Yang [Fri, 1 Mar 2019 07:58:41 +0000 (23:58 -0800)]
Send external api base extensions when not core

If the base extension for external semaphore/fence/memory
is not core (i.e., in Vulkan 1.0), external API tests
will send an insufficient set of device extensions to
the Vulkan driver.

Also, add required extensions (if not core) for
VK_ANDROID_external_memory_android_hardware_buffer.

VK-GL-CTS Issue: 1632

Affects:
dEQP-VK.api.external.*

Components: Vulkan

Change-Id: I666f87ef25260d4f3fe6d1d9a6ff8a522f2322b3

5 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Fri, 15 Mar 2019 09:31:51 +0000 (10:31 +0100)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: I9ae207c6ce78844662c23df5016a584742466b63

5 years agoGL_ARB_enhanced_layouts: use separable programs
Andres Gomez [Wed, 27 Feb 2019 13:03:56 +0000 (15:03 +0200)]
GL_ARB_enhanced_layouts: use separable programs

Currently we are testing bogus inputs without a matching counterpart
in the output interface of the previous shader. This is needed since,
otherwise, having a matching output would mean that we would have to
introduce the same error we are trying to test in the input interface
and that could lead to a misleading linking error.

However, not having an output counterpart can also lead to a
misleading linking error.

In other tests we have avoided this by not making a static use of the
tested input. However, when checking for the limit on the number of
input locations that can be used in a specific interface, this
strategy cannot be used since non statically used variable do not
count against this limit.

From page 48 (page 52 of the PDF) of the GLSL 4.60 v.5 spec:

  " There is an implementation-dependent limit on the number of
    locations that can be used, and if this is exceeded it will cause
    a link-time error. (Declared input variables that are not
    statically used do not count against this limit.)"

Therefore, the strategy used for this test is to build individual
separable programs for each stage.

From the ARB_separate_shader_objects spec v.25:

  " With separable program objects, interfaces between shader stages
    may involve the outputs from one program object and the inputs
    from a second program object.  For such interfaces, it is not
    possible to detect mismatches at link time, because the programs
    are linked separately.  When each such program is linked, all
    inputs or outputs interfacing with another program stage are
    treated as active.  The linker will generate an executable that
    assumes the presence of a compatible program on the other side of
    the interface.  If a mismatch between programs occurs, no GL error
    will be generated, but some or all of the inputs on the interface
    will be undefined."

Components: OpenGL

VK-GL-CTS issue: 1628

Affects:

KHR-GL44.enhanced_layouts.varying_location_limit

Change-Id: If120f3f2d397be0b53c60033768db60eb6fed968

5 years agoGL_ARB_enhanced_layouts: no structs as VS inputs
Andres Gomez [Thu, 3 Jan 2019 12:17:18 +0000 (14:17 +0200)]
GL_ARB_enhanced_layouts: no structs as VS inputs

From page 48 (page 52 of the PDF) of the GLSL 4.60 v.5 spec:

  " It is a compile-time error to declare a vertex shader input with,
    or that contains, any of the following types:

      * A boolean type

      * An opaque type

      * A structure"

Components: OpenGL

VK-GL-CTS issue: 1614

Affects:

KHR-GL44.enhanced_layouts.varying_structure_member_location

Change-Id: Ied52fd09639de179db480b6a627b65208a54250a

5 years agoGL_ARB_enhanced_layouts: remove dead code
Andres Gomez [Wed, 23 Jan 2019 16:28:59 +0000 (18:28 +0200)]
GL_ARB_enhanced_layouts: remove dead code

Additionally, make us of the new debugging macro to ease checking that
we are testing just the correct and only cause for a failure report.

Components: OpenGL

VK-GL-CTS issue: 1617

Affects:

KHR-GL44.enhanced_layouts.xfb_duplicated_stride

Change-Id: I2bb03db22743ae12d17c3da1654d082236d2e2e6

5 years agoGL_ARB_enhanced_layouts: fix interstage interfaces
Andres Gomez [Wed, 9 Jan 2019 15:38:12 +0000 (17:38 +0200)]
GL_ARB_enhanced_layouts: fix interstage interfaces

Multiple test were reporting misleading fails due to out-in interface
mismatching.

Additionally, removed dead code paths.

Finally, make us of the new debugging macro to ease checking that we
are testing just the correct and only cause for a failure report.

Components: OpenGL

VK-GL-CTS issue: 1608

Affects:

KHR-GL44.enhanced_layouts.xfb_block_member_buffer
KHR-GL44.enhanced_layouts.xfb_capture_unsized_array
KHR-GL44.enhanced_layouts.xfb_exceed_buffer_limit
KHR-GL44.enhanced_layouts.xfb_exceed_offset_limit
KHR-GL44.enhanced_layouts.xfb_invalid_offset_alignment
KHR-GL44.enhanced_layouts.xfb_multiple_vertex_streams
KHR-GL44.enhanced_layouts.xfb_output_overlapping
KHR-GL44.enhanced_layouts.xfb_too_small_stride

Change-Id: I0fb8f851b7cbec4c8cb4ee9fbad544c32e130a99

5 years agoGL_ARB_enhanced_layouts: fix interstage interfaces
Andres Gomez [Wed, 23 Jan 2019 15:56:33 +0000 (17:56 +0200)]
GL_ARB_enhanced_layouts: fix interstage interfaces

This test was reporting a misleading fail due to out-in interface
mismatching.

Additionally, in the past another "fail" status was "corrected" by
excluding all non-positive cases making it, actually, not a negative
test. Now, while fixing the problems in the interface matching, we
re-introduce the negative cases back.

Also, removed dead code paths.

Finally, make us of the new debugging macro to ease checking that
we are testing just the correct and only cause for a failure report.

Components: OpenGL

VK-GL-CTS issue: 1607

Affects:

KHR-GL44.enhanced_layouts.xfb_variable_stride

Change-Id: If6564a9feb9831d101b0d5073ec3d241a4a8ac81

5 years agoGL_ARB_enhanced_layouts: use centroid and sample
Andres Gomez [Mon, 7 Jan 2019 23:18:40 +0000 (01:18 +0200)]
GL_ARB_enhanced_layouts: use centroid and sample

When checking for aliasing using mixed auxiliary storages, the tests
checking the usage of centroid and sample were only for the fragment
shader inputs. These qualifiers, although ignored, can also be used in
the rest of the stages.

Components: OpenGL

VK-GL-CTS issue: 1613

Affects:

KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_auxiliary_storage

Change-Id: I4ec1609a63a225ccd8c2ed7b82eb5477a04b6cba

5 years agoGL_ARB_enhanced_layouts: mind double types
Andres Gomez [Mon, 7 Jan 2019 23:00:49 +0000 (01:00 +0200)]
GL_ARB_enhanced_layouts: mind double types

The special conditions when using the component qualifier with doubles
were not taken into account.

Additionally, the test was reporting a misleading fail due to
non-coherent usage of the "flat" interpolation qualifier. This is now
fixed.

Finally, the generator has been simplified using the refactored code.

Components: OpenGL

VK-GL-CTS issue: 1611

Affects:

KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_auxiliary_storage

Change-Id: I4380ba720f4ea2b2326484d6c8b3e8fc58b1b5e5

5 years agoGL_ARB_enhanced_layouts: mind double types
Andres Gomez [Mon, 18 Feb 2019 14:49:28 +0000 (16:49 +0200)]
GL_ARB_enhanced_layouts: mind double types

The special conditions when using the component qualifier with doubles
were not taken into account.

Additionally, the generator has been simplified using the refactored
code.

Components: OpenGL

VK-GL-CTS issue: 1616

Affects:

KHR-GL44.enhanced_layouts.input_component_aliasing
KHR-GL44.enhanced_layouts.output_component_aliasing
KHR-GL44.enhanced_layouts.varying_component_of_invalid_type
KHR-GL44.enhanced_layouts.varying_component_without_location
KHR-GL44.enhanced_layouts.varying_exceeding_components

Change-Id: I33c9735a8ef02cf5257f6783cf7856911e4af9d8

5 years agoGL_ARB_enhanced_layouts: use component 0 for mat
Andres Gomez [Thu, 20 Dec 2018 15:29:13 +0000 (17:29 +0200)]
GL_ARB_enhanced_layouts: use component 0 for mat

When checking types that won't support the component qualifier, in the
case of matrixes, just use the universally accepted value in case the
keyword would be accepted: 0.

Otherwise, we won't be sure whether the test is passing because the
reported failure is the expected one: that matrix won't accept the
component qualifier.

Components: OpenGL

VK-GL-CTS issue: 1615

Affects:

KHR-GL44.enhanced_layouts.varying_component_of_invalid_type

Change-Id: I5e53ecdcb4e73f9ca528f3232bfa9405782db43e

5 years agoGL_ARB_enhanced_layouts: mind double types
Andres Gomez [Mon, 7 Jan 2019 17:46:16 +0000 (19:46 +0200)]
GL_ARB_enhanced_layouts: mind double types

The special conditions when using the component qualifier with doubles
were not taken into account.

The tests generator is now simplified using the refactored code.

Components: OpenGL

VK-GL-CTS issue: 1610

Affects:

KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_interpolation

Change-Id: I44763cf9e9e3b11fe17519ab307b28cc5485706d

5 years agoGL_ARB_enhanced_layouts: mind aliasing bit width
Andres Gomez [Fri, 4 Jan 2019 12:46:27 +0000 (14:46 +0200)]
GL_ARB_enhanced_layouts: mind aliasing bit width

Currently, when location aliasing was happening, we were only checking
if the underlying numerical type was the same to allow it.

From page 67 (page 71 of the PDF) of the GLSL 4.60 v.5 spec:

  " Further, when location aliasing, the aliases sharing the location
    must have the same underlying numerical type and bit
    width (floating-point or integer, 32-bit versus 64-bit, etc.)"

Additionally, we were repeating two times the same tests. For example
we would check if, with float and int, they would be allowed if float
was in the component 1 and int in component 3 two times. The test
generation has been now simplified.

Components: OpenGL

VK-GL-CTS issue: 1609

Affects:

KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_types

Change-Id: I33652ac447c0a536bebc8175f34abee45ad1cd2e

5 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Fri, 15 Mar 2019 08:44:37 +0000 (09:44 +0100)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: I89bd5367fae5953ff5e789542dba7e55a8526ab1

5 years agoDrop handwritten toString code
Lionel Landwerlin [Fri, 1 Mar 2019 17:35:12 +0000 (17:35 +0000)]
Drop handwritten toString code

Change-Id: I801cbe14f7bdd571ba8f19242427a071c1c3daea
Components: Vulkan

5 years agoAdd SPIR-V ids abuse tests
Boris Zanin [Mon, 11 Feb 2019 12:33:56 +0000 (13:33 +0100)]
Add SPIR-V ids abuse tests

Add tests:
 * dEQP-VK.spirv_assembly.instruction.compute.spirv_ids_abuse.*
 * dEQP-VK.spirv_assembly.instruction.graphics.spirv_ids_abuse.*

Components: vulkan

VK-GL-CTS issue: 1583

Change-Id: I8cbb94616fc9175de36daf6804cde9b680284aa6

5 years agoFix the limitation in allocation test
Arkadiusz Sarwa [Mon, 21 Jan 2019 14:50:34 +0000 (15:50 +0100)]
Fix the limitation in allocation test

Change removes the limitation for number of allocations
in the test.

Components: Vulkan

VK-GL-CTS issue: 1569

Affects:
dEQP-VK.api.device_init.create_instance_device_intentional_alloc_fail

Change-Id: I038fcfcae46a6baaf691163166c74ea0d3831043

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Wed, 6 Mar 2019 12:35:07 +0000 (12:35 +0000)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I8b085fc2df478a10babc34d753e9e10613dc8929

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Tue, 5 Mar 2019 16:57:27 +0000 (16:57 +0000)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: Ia68d7a02991fe815d1a311f59f3a5928f995069c

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Tue, 5 Mar 2019 16:09:54 +0000 (16:09 +0000)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: Iaff35efaad77acdd183dd07161fa0da31faaeac2

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Tue, 5 Mar 2019 15:41:47 +0000 (15:41 +0000)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: I91653c9399920b5e965597c6e4b6006d3490d883

5 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Tue, 5 Mar 2019 15:05:48 +0000 (15:05 +0000)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: I0317d6d414441f536e8255db7143e57eeea3448e

5 years agoNotice of withdrawal of Vulkan CTS 1.1.0.x
Alexander Galazin [Wed, 27 Feb 2019 09:46:39 +0000 (10:46 +0100)]
Notice of withdrawal of Vulkan CTS 1.1.0.x

Components: Vulkan

Change-Id: I5d6c3009267ed2d50cdf6167125b574fb6dcd07a

5 years agoFix buffer RAW hazards in synchronization tests
Igor Ostrowski [Thu, 28 Feb 2019 16:15:12 +0000 (17:15 +0100)]
Fix buffer RAW hazards in synchronization tests

Missing barrier for buffers in semaphore tests.

Affects:
dEQP-VK.synchronization.op.single_queue.semaphore.write_*_read_*.buffer_*

Components: Vulkan
VK-GL-CTS issue: 1633

Change-Id: I0f4ffed00e28816496948d8167e08bbbed999b79
(cherry picked from commit caef94e99677677cc1aec4a775c1cb757d53f221)

5 years agoAdd tests for VK_KHR_surface_protected_capabilities
Sandeep Shinde [Tue, 27 Nov 2018 13:36:00 +0000 (19:06 +0530)]
Add tests for VK_KHR_surface_protected_capabilities

Add new tests, which do basic query for functionality provided
by VK_KHR_surface_protected_capabilities extension.

Modify tests to make use of VK_KHR_surface_protected_capabilities
extension to decide whether to run or not. These tests should only be
ran when VkSurfaceCapabilityProtectedKHR.supportsProtected is
reported as VK_TRUE otherwise return as NOT_SUPPORTED because protected
VkSurface can not be displayed on screen through WSI swapchain.

New tests:

dEQP-VK.wsi.xlib.surface.query_protected_capabilities
dEQP-VK.wsi.xcb.surface.query_protected_capabilities
dEQP-VK.wsi.wayland.surface.query_protected_capabilities
dEQP-VK.wsi.mir.surface.query_protected_capabilities
dEQP-VK.wsi.android.surface.query_protected_capabilities
dEQP-VK.wsi.win32.surface.query_protected_capabilities
dEQP-VK.wsi.macos.surface.query_protected_capabilities

Affected tests:

dEQP-VK.api.info.instance.extensions
dEQP-VK.protected_memory.interaction.wsi.xlib.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.xcb.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.wayland.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.mir.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.win32.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.render.basic

Components: Vulkan

VK-GL-CTS issue: 1466

Change-Id: I872281801dd935f52c0e999e0c0c2af8a4b8789a
(cherry picked from commit 2d64b282564a754457e4450f34aa8790242ca789)

5 years agoFix context creation in robust_buffer_access_behavior test
Slawomir Cygan [Fri, 1 Mar 2019 14:45:39 +0000 (15:45 +0100)]
Fix context creation in robust_buffer_access_behavior test

Move the context creation routine to iterate() method of
tests cases, to avoid overlapping many contexts where
all tests case constructors are fired at once.

Components: OpenGL

VK-GL-CTS Issue: 1629

Affects:
    KHR-GL4*.robust_buffer_access_behavior.*

Change-Id: I28658b41891437ef60a5bfd5d0a19b80342e9f1f

5 years agoAdd testing for VK_EXT_ycbcr_image_arrays
Piers Daniell [Fri, 15 Feb 2019 23:47:55 +0000 (16:47 -0700)]
Add testing for VK_EXT_ycbcr_image_arrays

Adds basic testing for VK_EXT_ycbcr_image_arrays by adding
new "array" variants to the ycbcr format tests. These array
variants check whether VK_EXT_ycbcr_image_arrays is
supported and wither the particular image format, usage,
tiling and creation flags allow more than 1 array layers
to be created.

If so, a 2 layer image is created, and the second layer is
populated with the input data. Then the shader does a
texture lookup of the second layer and outputs
that into the result image.

Affects:
dEQP-VK.ycbcr.format.*

Change-Id: I801cbe14f7bdd571ba8f192278a7a071c1c3daea
Components: Vulkan

5 years agoAdd tests for pointSize with clamping
Toni Merilehti [Thu, 10 Jan 2019 07:52:44 +0000 (09:52 +0200)]
Add tests for pointSize with clamping

These tests verify that the rasterized point size is equal to
the specified pointSize or clamped to the maximum device limit,
pointSizeRange[1].

New tests:

dEQP-VK.rasterization.primitive_size.points.*

Components: Vulkan

VK-GL-CTS issue: 1504

Change-Id: I887d938a2aabde1671c14ef0ee6aff15a908fd1e

5 years agoGL_ARB_enhanced_layouts: fix arrays in {G,TC,TE}S
Andres Gomez [Thu, 3 Jan 2019 09:21:48 +0000 (11:21 +0200)]
GL_ARB_enhanced_layouts: fix arrays in {G,TC,TE}S

Several negative tests were reporting a misleading fail due to
mismatching output array dimensions in the TCS, TES and GS interfaces.

Components: OpenGL

VK-GL-CTS issue: 1606

Affects:

KHR-GL44.enhanced_layouts.output_component_aliasing
KHR-GL44.enhanced_layouts.varying_block_automatic_member_locations
KHR-GL44.enhanced_layouts.varying_component_of_invalid_type
KHR-GL44.enhanced_layouts.varying_component_without_location
KHR-GL44.enhanced_layouts.varying_exceeding_components
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_auxiliary_storage
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_interpolation
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_types
KHR-GL44.enhanced_layouts.varying_location_limit
KHR-GL44.enhanced_layouts.varying_structure_member_location

Change-Id: I7450cdd41b72b8aca0c6e4638332eaa56a1ed954

5 years agoGL_ARB_enhanced_layouts: no static use of inputs
Andres Gomez [Thu, 3 Jan 2019 10:07:02 +0000 (12:07 +0200)]
GL_ARB_enhanced_layouts: no static use of inputs

Currently we are testing bogus inputs without a matching counterpart
in the output interface of the previous shader. This is needed since,
otherwise, having a matching output would mean that we would have to
introduce the same error we are trying to test in the input
interface and that could lead to a misleading linking error.

However, not having an output counterpart can also lead to a
misleading linking error. We workaround this by not making a static
use of the tested input.

From page 47 (page 53 of the PDF) of the GLSL 4.60 v.5 spec:

  " Only the input variables that are statically read need to be
    written by the previous stage; it is allowed to have superfluous
    declarations of input variables."

Additionally, make us of the new debugging macro to ease checking that
we are testing just the correct and only cause for a failure report.

Components: OpenGL

VK-GL-CTS issue: 1605

Affects:

KHR-GL44.enhanced_layouts.varying_block_automatic_member_locations
KHR-GL44.enhanced_layouts.varying_block_member_locations
KHR-GL44.enhanced_layouts.varying_component_of_invalid_type
KHR-GL44.enhanced_layouts.varying_component_without_location
KHR-GL44.enhanced_layouts.varying_exceeding_components
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_auxiliary_storage
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_interpolation
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_types
KHR-GL44.enhanced_layouts.varying_structure_member_location
KHR-GL44.enhanced_layouts.xfb_input

Change-Id: I7dc136b34747f40b25b7cc2b6e3f35f029f701f7

5 years agoGL_ARB_enhanced_layouts: add missing out varyings
Andres Gomez [Fri, 28 Dec 2018 18:52:13 +0000 (20:52 +0200)]
GL_ARB_enhanced_layouts: add missing out varyings

The test was "passing" due to a different error than the one expected
by the test: there were missing output varyings to be able to match
the tested inputs.

Components: OpenGL

VK-GL-CTS issue: 1604

Affects:

KHR-GL44.enhanced_layouts.input_component_aliasing

Change-Id: I038bdc3a08ed1d458c8b0988227307c5f0f3f104

5 years agoGL_ARB_enhanced_layouts: correct usage of "flat"
Andres Gomez [Thu, 20 Dec 2018 14:31:14 +0000 (16:31 +0200)]
GL_ARB_enhanced_layouts: correct usage of "flat"

Multiple negative tests were failing due to errors in the usage of the
flat interpolation qualifier. Therefore, the tests were "passing"
while the expected error was a different one than the one reported by
the test.

Additionally, make us of the new debugging macro to ease checking that
we are testing just the correct and only cause for a failure report.

Components: OpenGL

VK-GL-CTS issue: 1603

Affects:

KHR-GL44.enhanced_layouts.input_component_aliasing
KHR-GL44.enhanced_layouts.output_component_aliasing
KHR-GL44.enhanced_layouts.varying_component_of_invalid_type
KHR-GL44.enhanced_layouts.varying_component_without_location
KHR-GL44.enhanced_layouts.varying_exceeding_components
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_types
KHR-GL44.enhanced_layouts.varying_location_limit

Change-Id: I63f2b11acadfb0b3e42b7e0f176421eaff4da482

5 years agoGL_ARB_enhanced_layouts: no def in untested stage
Andres Gomez [Thu, 3 Jan 2019 13:19:17 +0000 (15:19 +0200)]
GL_ARB_enhanced_layouts: no def in untested stage

Currently we are trying to match the definition of the output block
with the input block. In a negative test this has the problem that we
cannot actually match without adding the same error we are trying to
test in both interfaces. Therefore, as it is right now, even if the
tested error wouldn't happen, a misleading linking error will happen.

We avoid this by removing the input definition when testing
outputs (no need to have them at all) and, in the reverse situation,
additionally, by not doing static use of the defined input variable.

Additionally, this simplifies the test a lot.

Finally, added a debugging macro to ease checking that we are testing
just the correct and only cause for a failure report.

Components: OpenGL

VK-GL-CTS issue: 1602

Affects:

KHR-GL44.enhanced_layouts.varying_block_member_locations

Change-Id: Ia2c0ba705e975817999aaa16c1ce129d616540f6

5 years agoFix buffer RAW hazards in synchronization tests
Igor Ostrowski [Thu, 28 Feb 2019 16:15:12 +0000 (17:15 +0100)]
Fix buffer RAW hazards in synchronization tests

Missing barrier for buffers in semaphore tests.

Affects:
dEQP-VK.synchronization.op.single_queue.semaphore.write_*_read_*.buffer_*

Components: Vulkan
VK-GL-CTS issue: 1633

Change-Id: I0f4ffed00e28816496948d8167e08bbbed999b79

5 years agoWhitelist Vulkan CTS 1.1.3.1
Alexander Galazin [Fri, 1 Mar 2019 11:07:51 +0000 (12:07 +0100)]
Whitelist Vulkan CTS 1.1.3.1

Components: Vulkan

Affects: dEQP-VK.api.driver_properties.properties

Change-Id: Ic8d6afa3998a4d77d2c00c10ee9075f62febf5aa

5 years agoRemove unnecessary 1.1.3 mustpass sources
Alexander Galazin [Thu, 28 Feb 2019 16:52:50 +0000 (17:52 +0100)]
Remove unnecessary 1.1.3 mustpass sources

Change-Id: I3f7cc4649954f784736c8529fc9a24761d6da01d

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 vk-gl-cts/master
Alexander Galazin [Thu, 28 Feb 2019 16:24:55 +0000 (17:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 vk-gl-cts/master

Change-Id: Iad6b3f1c809ac70182f11c00d2e88b88b19e4fb0

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Thu, 28 Feb 2019 16:23:25 +0000 (17:23 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I7f44646072e49414e863e6a4e6bb9760477dccb8

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Thu, 28 Feb 2019 16:17:02 +0000 (17:17 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: Id1dfb48db9c7c5ad1d4260e4595617723034af04

5 years agoExclude few rasterization tests
Alexander Galazin [Thu, 28 Feb 2019 15:49:11 +0000 (16:49 +0100)]
Exclude few rasterization tests

Components: Vulkan

Affects:
dEQP-VK.rasterization.interpolation.basic.lines_wide
dEQP-VK.rasterization.interpolation.projected.line_strip_wide
dEQP-VK.rasterization.flatshading.lines_wide

VK-GL-CTS issue: 1274

Change-Id: I4771bc1729ccd6eb39e291cb26a5db5b42688140

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Thu, 28 Feb 2019 14:47:47 +0000 (15:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I866d7a1ba446f0482d1b26823c97bb5afc49ad7a

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Thu, 28 Feb 2019 14:37:46 +0000 (15:37 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I01321e70bb29b8a21ed2f730381ea44f71f12c9b

5 years agoMerge vk-gl-cts/github-vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Thu, 28 Feb 2019 14:34:57 +0000 (15:34 +0100)]
Merge vk-gl-cts/github-vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I354674f48a6d88f95199865ceb8fe64c4100e1cf

5 years agoFix validation errors in dEQP-VK.tessellation.*
Toni Merilehti [Wed, 27 Feb 2019 08:41:33 +0000 (10:41 +0200)]
Fix validation errors in dEQP-VK.tessellation.*

In multiple tests memory allocations are invalidated or flushed using
a size that on some devices is not a multiple of nonCoherentAtomSize
device limit, causing validation errors. This fix uses helper functions
that invalidate or flush the whole allocation where the size of the
memory being invalidated/flushed equals the size of the allocation.

Affects:

dEQP-VK.tessellation.*

Components: Vulkan

VK-GL-CTS issue: 1620

Change-Id: I3c0aed7f749693808331a1b430ad2cb28b138699

5 years agoMerge pull request #143 from jrprice/utb-glsl-type
Alexander Galazin [Thu, 28 Feb 2019 14:19:04 +0000 (15:19 +0100)]
Merge pull request #143 from jrprice/utb-glsl-type

Fix image type for uniform texel buffers

5 years agoFix SpvWorkgroupMemoryTests float32 result check
Liam Middlebrook [Fri, 22 Feb 2019 21:22:24 +0000 (13:22 -0800)]
Fix SpvWorkgroupMemoryTests float32 result check

Fix a bug in spirv_assembly.instruction.compute.workgroup_memory.float32
where the output values were being compared on a byte-level and not
compared as floating-point values.

Affects:
dEQP-VK.spirv_assembly.instruction.compute.workgroup_memory.float32

Components: Vulkan
VK-GL-CTS Issue: 1625

Change-Id: Ia274e5f08796ebf8e4a6fa78e7df377a80e5a25f

5 years agoFixes YCbCr create flag requirements for image format properties tests
Tom Cooper [Fri, 8 Feb 2019 14:14:40 +0000 (14:14 +0000)]
Fixes YCbCr create flag requirements for image format properties tests

YCbCr formats are not required to support
VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT.

Components: Vulkan

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

VK-GL-CTS Issue: 1592

Change-Id: I140f6b93a337d325fd908259f3da2dc1f4d251d9

5 years agoUse valid deviceMask in vkAcquireNextImage2KHR
Slawomir Cygan [Thu, 21 Feb 2019 15:10:07 +0000 (16:10 +0100)]
Use valid deviceMask in vkAcquireNextImage2KHR

As the test uses the default device (without explicit device groups),
there is only one device in the group, with index 0.

Given that, the only valid deviceMask is 1 (not 0xffffffff).

Components: Vulkan

VK-GL-CTS Issue: 1623

Affects: dEQP-VK.wsi.win32.swapchain.render.basic2

Change-Id: I93813248fbeebc2787acdfe550d42588f60e8f7d

5 years agoFix device mask in swapchain tests
Igor Ostrowski [Wed, 20 Feb 2019 10:15:54 +0000 (11:15 +0100)]
Fix device mask in swapchain tests

All elements of pCommandBufferDeviceMasks must be valid device masks

Affects:
dEQP-VK.wsi.*.swapchain.render.device_group

Components: Vulkan
VK-GL-CTS issue: 1618

Change-Id: Ic3857672a99b3d4039b26cd0139c08bca7a0e5da

5 years agoFix RAW and WAW hazards in pipeline barrier tests.
Igor Ostrowski [Fri, 15 Feb 2019 14:33:42 +0000 (15:33 +0100)]
Fix RAW and WAW hazards in pipeline barrier tests.

Test was not handling correctly internal state of the visibility and availability operations.
Both access scopes of the barrier must be set correctly to unlock such usage of the resource.

Affects:
dEQP-VK.memory.pipeline_barrier.*

Components: Vulkan
VK-GL-CTS issue: 1589

Change-Id: I7a778dbee8109f060b88beee625ca15de01c7364

5 years agoCreate context with CONTEXT_ROBUST for robust buffer access tests
asokolow [Wed, 6 Feb 2019 09:12:28 +0000 (10:12 +0100)]
Create context with CONTEXT_ROBUST for robust buffer access tests

These tests exercise functionality that is not available in default
context provided by the framework. New context, with CONTEXT_ROBUST
(WGL|GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB) flag is created for these
tests.

Component: OpenGL

VK-GL-CTS Issue: 1588

Affects:
KHR-GL4*.robust_buffer_access_behavior.*

Change-Id: Ie698a6a434426bf147a705cc487b4fbe560a79c7

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Tue, 26 Feb 2019 19:40:18 +0000 (20:40 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: I092923bd34672e06802545333b2aea7c630fbf70

5 years agoMerge vk-gkl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Tue, 26 Feb 2019 18:44:27 +0000 (19:44 +0100)]
Merge vk-gkl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I6acb7ecd862fd48e3602301e4d05394b4a34489a

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Alexander Galazin [Tue, 26 Feb 2019 16:53:28 +0000 (17:53 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2

Change-Id: Ic711984d0039550239e56cefd30e735da866f524

5 years agoFix image type for uniform texel buffers
James Price [Mon, 25 Feb 2019 16:11:44 +0000 (16:11 +0000)]
Fix image type for uniform texel buffers

This fixes issues described in #139 but in additional test categories,
in the same manner as in commit 69278de.

Affects:
dEQP-VK.binding_model.descriptorset_random.sets4.*
dEQP-VK.api.buffer_view.access.*
dEQP-VK.memory.pipeline_barrier.*uniform_texel_buffer.*
dEQP-VK.robustness.buffer_access.*.texel_copy.*

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Alexander Galazin [Tue, 26 Feb 2019 16:19:23 +0000 (17:19 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1

Change-Id: Ib3a1ff276813033d0bfc87150266e4ff848aa290

5 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Tue, 26 Feb 2019 14:38:00 +0000 (15:38 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: Ibc6149bcd2518049216704334a23d90ea572c446

5 years agoDisable SPIR-V ids optimization
Boris Zanin [Fri, 22 Feb 2019 10:55:43 +0000 (11:55 +0100)]
Disable SPIR-V ids optimization

The default for the SPIR-V assembler is to compress IDs.
So even if you have %111111111 it will reassign that to the
next unused ID (a bump allocator). To disable this I need
to specify the equivalent of the --preserve-numeric-ids
option to the assembler. After discussion with Alex I specify
SPV_TEXT_TO_BINARY_OPTION_PRESERVE_NUMERIC_IDS for all tests.

Affected tests:
 * dEQP-VK.*

Components: vulkan

VK-GL-CTS issue: 1583

Change-Id: I941adf5d5cdb964eb4dff46afa75b01e089d3061

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
(cherry picked from commit b7efacd7b320d2b2c3b8b75cf98c9979b5a29fe9)

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Alexander Galazin [Fri, 22 Feb 2019 13:22:13 +0000 (14:22 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master

Change-Id: If127ebc2efa5fcc3c48f5d4fa47a7bfa181bfa1c

5 years agoUpdate glslang, SPIR-V tools and headers
Alexander Galazin [Fri, 22 Feb 2019 12:07:19 +0000 (13:07 +0100)]
Update glslang, SPIR-V tools and headers

Components: Framework

Change-Id: I091d24cbb521f16a52219e2daf9ec66ed376f748

5 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Alexander Galazin [Fri, 22 Feb 2019 12:36:31 +0000 (13:36 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3

Change-Id: I75a8948cb99a649cc84d2f26f1f1a49e3d5a6167

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