platform/upstream/VK-GL-CTS.git
3 years agoFix precision issue in NearestEdgeTests shaders
Ancheng Qiao [Mon, 22 Feb 2021 10:25:25 +0000 (18:25 +0800)]
Fix precision issue in NearestEdgeTests shaders

We should also use the calculated offset in shader.

Affects:
KHR-GLES32.core.nearest_edge.*

Components: OpenGL ES

VK-GL-CTS issue: 2651

Change-Id: I9427d3a95a98e3be58dd7ea16a2bf96822f33450
(cherry picked from commit b5328021844d8fcca5d0facc327f1e31785ed880)

3 years agoUpdate Vulkan/GL Readme
Alexander Galazin [Mon, 22 Feb 2021 09:14:11 +0000 (10:14 +0100)]
Update Vulkan/GL Readme

Update the Readme files to point to the new
submission verifcation script

Components: Vulkan, OpenGL

Change-Id: I6fb35a383fcc49e543ae67822be22d744c5fcd9c
(cherry picked from commit 412f5a3363eb228ca1a63be337de172a2e622571)

3 years agoAllow wildcards in waiver vendor strings
Mika Väinölä [Mon, 8 Feb 2021 11:01:23 +0000 (13:01 +0200)]
Allow wildcards in waiver vendor strings

Use wildcard matching instead of exact string comparison for GL
waiver vendor attributes. Use "Google*" prefix for ANGLE XFB
waiver and remove a duplicate ANGLE waiver.

VK-GL-CTS issue: 2770

Components: Framework, OpenGL

Change-Id: I0ffc54af6aaa4c562bf1e8b5077e365da71f9a3e
(cherry picked from commit 074fc201162b347720c4ba3a013101837edf2a8d)

3 years agoDisable dithering in nearest edge test cases
Ricardo Garcia [Fri, 22 Jan 2021 10:39:45 +0000 (11:39 +0100)]
Disable dithering in nearest edge test cases

This commits disables dithering in the nearest edge test cases so the
tests can correctly work with less than 8 bits per pixel.

Affected tests:
KHR-GL*.nearest_edge.*

Components: OpenGL
VK-GL-CTS issue: 2748

Change-Id: I906d7973be1a77e598135b3ed0dde5d671ba0ba7
(cherry picked from commit 671dbeb2ca8d3793f06fb9fe7838e0f02951141c)

3 years agoReturn a valid format when GL_RGB8 is not treated as GL_RGBA8
Piers Daniell [Tue, 26 Jan 2021 17:19:30 +0000 (10:19 -0700)]
Return a valid format when GL_RGB8 is not treated as GL_RGBA8

There was a special case added to NearestEdgeTestCase::toTextureFormat()
in https://gerrit.khronos.org/c/vk-gl-cts/+/6634 to support implementations
that treat GLRGB8 internally as GL_RGBA8888. This code change had a coding
error is that for implementations that don't support GLRGB8 in this way
ended up aborting with a fatal error:
    "Unable to map pixel format to texture format"

This trivial fix corrects the coding bug to simply return the
unadjusted format.

Affects:

KHR-GLES3.core.nearest_edge.offset_*
KHR-GLES31.core.nearest_edge.offset_*

Components: OpenGL

VK-GL-CTS issue: 2758

Change-Id: I639aed8bfed70941688d30edb02a770be4b05b08

3 years agoUnicode and Python3 fixes for verification scripts
Ricardo Garcia [Mon, 25 Jan 2021 15:02:01 +0000 (16:02 +0100)]
Unicode and Python3 fixes for verification scripts

Fix several issues related to running verification scripts under
different versions of Python, making sure the scripts are compatible
with both Python 2 and Python 3 and do not choke on invalid characters,
which are sometimes present in test shaders.

Components: OpenGL, Framework
VK-GL-CTS issue: 2756

Change-Id: Id472b842cb8fd6536e61489f3c01e28c462dbebd

3 years agoThreshold Consistency for ES2 FBO Tests
Kyle Griffiths [Thu, 7 Jan 2021 11:38:11 +0000 (11:38 +0000)]
Threshold Consistency for ES2 FBO Tests

ES3 and 3.1 tests both use the same fuzzycompare threshold value
for their FBO tests, whereas ES2 uses a smaller value despite
having the same coarse formats that require the high threshold.

This change adjusts the ES2 FBO Render Test threshold to match
the value set for ES3 and ES3.1

Affects:

dEQP-GLES2.functional.fbo.render.*

Components: GLES2

VK-GL-CTS Issue: 2715

Change-Id: I15203e1ecf45081ec27baee59b780c5bdf5aacaf
(cherry picked from commit 34d1a2e19b9e12b6413fe61d8dc4ee752c6053e4)

3 years agoFix ReadPixels format
Cheryl Wei [Mon, 4 Jan 2021 07:23:46 +0000 (15:23 +0800)]
Fix ReadPixels format

Pass implementation format to ReadPixels when pixel format is 8,8,8,0
because some implementations treat RGB8 as RGBA8888 which causes these
tests to fail.

Affected tests:
KHR-GLES3.core.nearest_edge.offset_*
KHR-GLES31.core.nearest_edge.offset_*

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

Change-Id: I6ce92f19d2e329c75ca5fc6800092af623e25829
(cherry picked from commit 780408248fd9e84162f7f6ccf94677952ab0d0da)

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6
Alexander Galazin [Thu, 10 Dec 2020 09:30:44 +0000 (10:30 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6

Change-Id: Ib50bbe4e7c82ff147376432d2bf474348e38d952

3 years agooglcts-runner: Include cstdlib in glcTestRunnerMain
Robert Morell [Thu, 10 Dec 2020 02:08:40 +0000 (18:08 -0800)]
oglcts-runner: Include cstdlib in glcTestRunnerMain

To pick up the definitions of EXIT_SUCCESS/EXIT_FAILURE.

Fixes these errors building on FreeBSD 10.4 with llvm60:
/root/nvt/tests/buildvulkancts/vk-gl-cts/external/openglcts/modules/runner/glcTestRunnerMain.cpp:115:19: error: use of undeclared identifier 'EXIT_SUCCESS'
        int exitStatus = EXIT_SUCCESS;
                         ^
/root/nvt/tests/buildvulkancts/vk-gl-cts/external/openglcts/modules/runner/glcTestRunnerMain.cpp:136:19: error: use of undeclared identifier 'EXIT_FAILURE'
                                        exitStatus = EXIT_FAILURE;
                                                     ^

Components: OpenGL

VK-GL-CTS issue: 2696

Change-Id: I918f3de12dde8871df8905f5870c3d6c73ae8048

3 years agoUse shader to calculate sample point
leiche02 [Wed, 11 Nov 2020 06:42:14 +0000 (14:42 +0800)]
Use shader to calculate sample point

The test's sampling point is taking from interpolated varying, the inaccuracy
of interpolation may cause wrong sampling, use gl_FragCoord in fragment
shader to calcuate sample point directly.

Component: OpenGL

Affected tests: KHR-GLES32.core.nearest_edge.offset_*

VK-GL-CTS issue: 2651

Change-Id: Ib91595ca07a2b146059c51f2d68ebf086c10553c
(cherry picked from commit 3d55f6adbf38215ce3c4e2986a2a2e8a91086f08)

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6
Alexander Galazin [Thu, 19 Nov 2020 08:45:53 +0000 (09:45 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6

Change-Id: I3dc4a855b6a1e8e5c9b1794b528fa433c2e7d4ff

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5
Alexander Galazin [Thu, 19 Nov 2020 08:05:02 +0000 (09:05 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5

Change-Id: I4d5fd46d7f654ae13dcac771a16aca3683bfd735

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6
Alexander Galazin [Wed, 18 Nov 2020 08:24:34 +0000 (09:24 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6

Change-Id: Ie1cf28bfe3f8dcb9d0714472bb60dfc098811716

3 years agoReset texture data to 0 after each 16 iterations to avoid overflow
Jianle Wang [Tue, 20 Oct 2020 02:31:48 +0000 (10:31 +0800)]
Reset texture data to 0 after each 16 iterations to avoid overflow

The default precision of int in the fragment shader is mediump. The fs_out_color
in GeometryShaderMaxCombinedTextureUnitsTest::m_fragment_shader_code_body will
overflow when the number of texture unit become large, since each texture data
is equal to index of the texture units.
So reset texture data to 0 after each 16 iterations to avoid the overflow.

Component: OpenGL

Affected tests: KHR-GLES31.core.geometry_shader.limits.max_combined_texture_units

VK-GL-CTS issue: 2622

Change-Id: Icc9f2ed77a5a1cf6f315605f5f1045a60a56396c
(cherry picked from commit ccb924af7b96ee3771ce25f6d31a0b243bbddee1)

3 years agoframework: fix deinitSession when using waiver xml
Tapani Pälli [Tue, 27 Oct 2020 10:27:37 +0000 (12:27 +0200)]
framework: fix deinitSession when using waiver xml

Take numWaived in to account when considering if run was ok, patch also
add result.numWaived to the total number of tests, otherwise we hit
following assert when running with waiver:

cts-runner: glcTestRunner.cpp:829: Unknown function:
Assertion `result.numExecuted == result.numPassed + result.numFailed +
           result.numNotSupported + result.numWarnings' failed.

Components: Framework, OpenGL

VK-GL-CTS issue: 2631

Affects:
   cts-runner

Change-Id: Iac776fd1174e5461c455282cecca208f0322358d
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
3 years agoANGLE waiver for GLES XFB array element capture
Mika Väinölä [Tue, 25 Aug 2020 06:29:07 +0000 (09:29 +0300)]
ANGLE waiver for GLES XFB array element capture

Tests waived:

dEQP-GLES3.functional.transform_feedback.array_element.*
dEQP-GLES3.functional.transform_feedback.random.*
dEQP-GLES31.functional.program_interface_query.transform_feedback_varying.*_array_element
dEQP-GLES31.functional.program_interface_query.transform_feedback_varying.type.*.array.*
KHR-GLES31.core.program_interface_query.transform-feedback-types

Components: OpenGL ES

VK-GL-CTS issue: 2237

Change-Id: I72be7800ced02423a4ac120e5d9ce581636a6a4f
(cherry picked from commit 96fbe712c585b5955b0363cada87ab62a6e4a72b)

3 years agoModify/add GLES XFB tests without element capture
Mika Väinölä [Tue, 29 Sep 2020 06:58:03 +0000 (09:58 +0300)]
Modify/add GLES XFB tests without element capture

Some GLES implementations are unable to support array elements as
transform feedback varyings. Capture the full array when element
capture is not explicitly tested. Add new variants for tests where
different types of varyings are tested at the same time.

New tests:

dEQP-GLES3.functional.transform_feedback.random_full_array_capture.*
KHR-GLES31.core.program_interface_query.transform-feedback-types-full-array-capture

Affects:

dEQP-GLES3.functional.transform_feedback.random.*
KHR-GLES31.core.shader_image_size.*
KHR-GLES31.core.vertex_attrib_binding.basic-input*

Components: OpenGL ES

VK-GL-CTS issue: 2237

Change-Id: Ib6164d89bc99f8ca8287dad7cc1e0789916e3256
(cherry picked from commit 8404b33c25c7f7cf5cd49a7c18c3a63b0f1f70ae)

3 years agoWaiver for wide-line attribute interpolation
Piotr Byszewski [Wed, 7 Oct 2020 09:35:55 +0000 (11:35 +0200)]
Waiver for wide-line attribute interpolation

Wide-line attribute interpolation tests recently added to
the mustpass list cannot be passed by any hardware that
Intel has ever shipped.

Components: OpenGL

Affects:
dEQP-GLES2.functional.rasterization.interpolation.basic.line_loop_wide
dEQP-GLES2.functional.rasterization.interpolation.basic.line_strip_wide
dEQP-GLES2.functional.rasterization.interpolation.basic.lines_wide
dEQP-GLES2.functional.rasterization.interpolation.projected.line_loop_wide
dEQP-GLES2.functional.rasterization.interpolation.projected.line_strip_wide
dEQP-GLES2.functional.rasterization.interpolation.projected.lines_wide
dEQP-GLES3.functional.rasterization.fbo.rbo_singlesample.interpolation.lines_wide
dEQP-GLES3.functional.rasterization.fbo.texture_2d.interpolation.lines_wide
dEQP-GLES3.functional.rasterization.interpolation.basic.line_loop_wide
dEQP-GLES3.functional.rasterization.interpolation.basic.line_strip_wide
dEQP-GLES3.functional.rasterization.interpolation.basic.lines_wide
dEQP-GLES3.functional.rasterization.interpolation.projected.line_loop_wide
dEQP-GLES3.functional.rasterization.interpolation.projected.line_strip_wide
dEQP-GLES3.functional.rasterization.interpolation.projected.lines_wide

VK-GL-CTS issue: 2601

Change-Id: I7508429613e0d8cde45d6e9d6b5d07f0b17f7753

3 years agoAdd support for waiver mechanism to cts-runner
Piotr Byszewski [Wed, 7 Oct 2020 14:27:02 +0000 (16:27 +0200)]
Add support for waiver mechanism to cts-runner

Affects: cts-runner

Change-Id: I147cbb49114386b939a6563a1b4b96f620310736
Components: Framework

3 years agoAmend OpenGL/ES Conformance Submission Package Requirements
Alexander Galazin [Thu, 22 Oct 2020 11:04:14 +0000 (13:04 +0200)]
Amend OpenGL/ES Conformance Submission Package Requirements

The current practice is that all bugfixes should be merged
into the CTS repo before being used in a submission.
This change promotes this practices to a requirement.

Components: OpenGL

Change-Id: Id5e5782c0418cbedb0ca23b0abd06051021b63ec

3 years agoFix broken layout binding tests
Timothy Arceri [Thu, 30 Apr 2020 07:31:13 +0000 (17:31 +1000)]
Fix broken layout binding tests

Some of the shaders being generated contain a misplaced ;

An example of the code being gererated is as follows:

  fragColor = vec4(float(atomicCounter(atomic0)), 1.0, 0.0, 1.0);
  +vec4(float(atomicCounter(atomic1)), 1.0, 0.0, 1.0);
  +vec4(float(atomicCounter(atomic2)), 1.0, 0.0, 1.0);
  +vec4(float(atomicCounter(atomic3)), 1.0, 0.0, 1.0);

Affects:

KHR-GL46.layout_binding.atomic_uint_layout_binding_atomic_*

Components: OpenGL

VK-GL-CTS issue: 2348

Change-Id: Ie209de8954c8b8e3920c17be9190030946c93354
(cherry picked from commit 64d344b60bb7b4324525e08766fdeb14bf1f18c6)

3 years agoFix some egl robustness tests
Timothy Arceri [Sun, 3 May 2020 05:57:02 +0000 (15:57 +1000)]
Fix some egl robustness tests

Because the values of color were initially undefined an optimised
compiler can simply set all components of the vector to the value
being assigned to color[u_index] and eventually eliminate color and
u_index completely.

To avoid this we initialise color.

Affects:
dEQP-EGL.functional.robustness.reset_context.shaders*

Components: OpenGL
VK-GL-CTS issue: 2349

Change-Id: I6eb929eec07b039afb247427af91aba65dbade9b
(cherry picked from commit 4392facc87c2da80b5065f8663b9303fb1113e16)

3 years agoTweak matrix input values to avoid small determinants
Piers Daniell [Wed, 26 Aug 2020 00:08:19 +0000 (18:08 -0600)]
Tweak matrix input values to avoid small determinants

Modify the matrix test input values to better avoid
zero and close to zero determinants, which can produce
invalid inverse matrices.

Affects:

dEQP-GLES3.functional.shaders.matrix.*

Components: OpenGL

VK-GL-CTS issue: 2559

Change-Id: I2015e0f60dbe6271bc540f95dc6631928d38c108

3 years agoAdd formats support in nearest_edge tests
Ancheng Qiao [Mon, 17 Aug 2020 07:02:11 +0000 (15:02 +0800)]
Add formats support in nearest_edge tests

Add RGBA_10_10_10_2 and RGBA_F16 support to pixelFormatMap

Affects:

KHR-GLES32.core.nearest_edge.*

Components: OpenGL

VK-GL-CTS issue: 2547

Change-Id: I6a96f4e5c87967b06bbfed1566df7e784009ad50
(cherry picked from commit dea39590d12bf91ac37e66460a0aa908c5816216)

3 years agoOffset tris from fragments for triangle tests
Reed Koser [Mon, 3 Aug 2020 22:58:33 +0000 (15:58 -0700)]
Offset tris from fragments for triangle tests

At some render resolutions, these tests can rely on the outcome of a
rasterizer tie-break. Since such behavior is left unspecified, we
offset the generated triangles slightly to ensure that they reliably
hit (or miss) the fragment locations we expect them to.

Affects:
KHR-GLES31.core.draw_indirect.basic-mode-drawArrays-triangle_strip_adjacency
KHR-GLES31.core.draw_indirect.basic-mode-drawArrays-triangles_adjacency
KHR-GLES31.core.draw_indirect.basic-mode-drawElements-triangle_strip_adjacency
KHR-GLES31.core.draw_indirect.basic-mode-drawElements-triangles_adjacency

Components: OpenGL ES

VK-GL-CTS issue: 2522

Change-Id: I63ab56dba99b5e6f6369aa4fd8b4538c9d01d874

3 years agoAccount for aliasing exceptions in codegen
Alastair Donaldson [Wed, 1 Apr 2020 15:48:46 +0000 (16:48 +0100)]
Account for aliasing exceptions in codegen

Fixes a problem where functions for which aliasing exceptions are in
place (at present this is just glRenderbufferStorageMultisampleEXT)
were not being treated properly in code generation -- their aliased
names were being erroneously used.

Component: Framework

Affects: dEQP-GLES*multisample*

VK-GL-CTS issue: 2291

Change-Id: I5e9caf8828b192d15bb3c91f53a9d09aa9442129

3 years agoFix pixel pack/unpack in nearest edge tests
Dave Airlie [Mon, 1 Jun 2020 21:32:17 +0000 (07:32 +1000)]
Fix pixel pack/unpack in nearest edge tests

With certain fbconfigs and width/height combos, this would
corrupt memory due to overwriting too many bytes by 1.

Components: OpenGL

VK-GL-CTS Issue: 2496

Affects: KHR-GL46.nearest_edge.offset_*
         KHR-GLES32.core.nearest_edge.offset*

Change-Id: I2b31c8791337555b0bb154cea1f676f0daf43c7e
(cherry picked from commit 9486b751ce73aa581af1c16494506569cf2e8364)

3 years agoStop 10bit formats requiring GL_SRGB encoding
James Glanville [Thu, 2 Jul 2020 16:02:25 +0000 (17:02 +0100)]
Stop 10bit formats requiring GL_SRGB encoding

The EGL_KHR_gl_colorspace spec does not require formats that
are not SRGB8 to respect the given EGL_GL_COLORSPACE_KHR.

Components: EGL

VK-GL-CTS issue: 2288

Affects:

dEQP-EGL.functional.wide_color.window_1010102_colorspace_srgb
dEQP-EGL.functional.wide_color.pbuffer_1010102_colorspace_srgb

Change-Id: I1d9c502ef2f7068cf13d13564abdfe2d3c75b93b

4 years agoCheck presence of WGL_EXT_colorspace before use
Piers Daniell [Tue, 30 Jun 2020 18:09:19 +0000 (12:09 -0600)]
Check presence of WGL_EXT_colorspace before use

This CL fixes an issue where the WGL_COLORSPACE_EXT_attribute
pixel format query was used without checking the implementation
supports the WGL_EXT_colorspace extension.

Affects:

cts-runner initialization on WGL
glcts.exe initialization on WGL

Components: OpenGL

VK-GL-CTS issue: 2257

Change-Id: Ib4177b851c856570c4b125d537ffa476a02c04f3

4 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6
Alexander Galazin [Wed, 8 Jul 2020 07:34:26 +0000 (09:34 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6

Change-Id: Ib82d397035bcfd1903575e28aefd21addb29d69b

4 years agoFix the sorting order in eglChooseConfig test
Jianle Wang [Sat, 9 May 2020 08:00:43 +0000 (16:00 +0800)]
Fix the sorting order in eglChooseConfig test

EGL_COLOR_COMPONENT_TYPE_EXT should be before EGL_COLOR_BUFFER_TYPE
in sorting.

Components: AOSP

VK-GL-CTS issue: 2370

Affects:
dEQP-EGL.functional.choose_config.color_component_type_ext.dont_care

Change-Id: Ic502f17c800dac9f889931eb71971366a5cdb392
(cherry picked from commit 137766c7c9b4f7dac80b90ebf6f9a032188afe0f)

4 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6
Alexander Galazin [Tue, 2 Jun 2020 07:14:00 +0000 (09:14 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6

Change-Id: I73359af82cbc484aceffcf45628b50ee1d84f762

4 years agoAdd texture specification test for GL_OES_texture_half_float.
Nicolas Capens [Fri, 16 Mar 2018 13:51:47 +0000 (09:51 -0400)]
Add texture specification test for GL_OES_texture_half_float.

Google bug: b/74609191
Components: AOSP
Affects: dEQP-GLES2.functional.texture.specification.*

Change-Id: I85aec3469872f2733f528ef7902427e9e87935e7
(cherry picked from commit 19dd72470bdd1a772c08474535e40874624a93b1)

4 years agoFix uninitialized index array
Courtney Goeltzenleuchter [Thu, 21 Nov 2019 17:07:41 +0000 (10:07 -0700)]
Fix uninitialized index array

The test is doing a glDrawRangeElements using uninitialized data for
the element array. ANGLE validates that the indices fall within the
specified range. Data needs to be initialized to ensure that happens.

The spec says:
It is an error for index values (other than the primitive restart index,
when primitive restart is enabled) to lie outside the range [start, end], but
implementations are not required to check for this. Such indices will cause
implementation-dependent behavior.

Either the test needs to allow for an error or initialize the data so
as to be valid for the call.

Affected Test:
    dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_range_elements

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

Change-Id: I51f8abb86f088b67990001454bb00d59313200c2
(cherry picked from commit bf7a86af5a959c3f4ad39deabe8b396d8581470a)

4 years agoLimit dimensionality of arrays-of-arrays in random SSBO tests
James Glanville [Wed, 6 May 2020 13:01:23 +0000 (14:01 +0100)]
Limit dimensionality of arrays-of-arrays in random SSBO tests

One of these tests used a 5 dimensional array-of-arrays, resulting
in thousands of instructions that caused issues on devices with low
ram. This change limits the total dimensionality to prevent this.

Components: AOSP

VK-GL-CTS issue: 2355

Affects:

dEQP-GLES31.functional.ssbo.layout.random.nested_structs_arrays.15
dEQP-GLES31.functional.ssbo.layout.random.nested_structs_arrays_instance_arrays.23
dEQP-GLES31.functional.ssbo.layout.random.all_per_block_buffers.41
dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.7
dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.21
dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.36
dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.48
dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.49

Change-Id: I9211e376130014e6c1d50f4a2d843033a5219b2d

4 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/master
Alexander Galazin [Wed, 20 May 2020 13:26:35 +0000 (15:26 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/master

Change-Id: Ieeee1002be28bdaffed9177386edf13cd860d610

4 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6
Alexander Galazin [Wed, 20 May 2020 10:11:52 +0000 (12:11 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6

Change-Id: I9ff5ee4471a46bfc98a96186c79bbaa79aa5d37f

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master
Alexander Galazin [Tue, 19 May 2020 11:56:46 +0000 (13:56 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master

Change-Id: Ie87d541785c979466d4a45dbb0c3df8b8a0f6884

4 years agoUpdate Vulkan headers
Alexander Galazin [Fri, 15 May 2020 15:10:48 +0000 (17:10 +0200)]
Update Vulkan headers

Components: Vulkan

Change-Id: I545a33bdcfbd332d0646e35d1815cc84f2fe645d

4 years agoWhitelist Vulkan CTS 1.2.2.1
Alexander Galazin [Wed, 13 May 2020 07:41:47 +0000 (09:41 +0200)]
Whitelist Vulkan CTS 1.2.2.1

Components: Vulkan

Affects: dEQP-VK.api.driver_properties.properties

Change-Id: I8c1b46d210dec2ad6f85fbb2cd04c9969d350069

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Thu, 14 May 2020 16:50:52 +0000 (18:50 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I8224a74ae64ae8aafa4e0edbaab5aa7c5f2b322d

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-1.2.1
Alexander Galazin [Thu, 14 May 2020 15:13:47 +0000 (17:13 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-1.2.1

Change-Id: I2594c8998a3e6dcc779d6fd84715ee26dddce726

4 years agoAdd missing barrier to HOST in memory_barrier test
Slawomir Cygan [Thu, 7 May 2020 15:47:08 +0000 (17:47 +0200)]
Add missing barrier to HOST in memory_barrier test

The test was lacking a barrier between device write access and
validation of the data on host.

Components: Vulkan

VK-GL-CTS Issue: 2359

Affects: dEQP-VK.memory_model.message_passing.*

Change-Id: Ia75277aaa2c7e25bff807cd3c6ebe14513403bfc

4 years agoFix wide line rasterization tests
Matthew Netsch [Mon, 4 May 2020 18:15:49 +0000 (14:15 -0400)]
Fix wide line rasterization tests

Components: Vulkan
VK-GL-CTS Issue: 2347

Affects:
dEQP-VK.rasterization.primitives*line*wide

Change-Id: Ia27d80bfb57b9a09a631580e37d1f1277e99d365

4 years agoGLES 3.1 negative framebuffer texture2D test fails
Courtney Goeltzenleuchter [Wed, 4 Dec 2019 21:01:39 +0000 (14:01 -0700)]
GLES 3.1 negative framebuffer texture2D test fails

Test is using wrong max size when checking cube map textures.

Affected Test:
   dEQP-GLES31.functional.debug.negative_coverage.get_error.buffer.framebuffer_texture2d

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

Change-Id: I35bcdcfb8181a9eb062da10234f56267c56ac188
(cherry picked from commit 40d1312085353785186aae62ef098ae5c3a2a5c5)

4 years agoOpenGL ES: Use shader storage alignment
Courtney Goeltzenleuchter [Tue, 17 Dec 2019 14:40:46 +0000 (07:40 -0700)]
OpenGL ES: Use shader storage alignment

Affected Test:
  KHR-GLES31.core.shader_storage_buffer_object.advanced-switchBuffers-vs

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

Change-Id: If427cad30ac36cc96a29f936e2ef7a0c4a301667
(cherry picked from commit 5fd95f6e03e1a0ece7052c6d9931cac825909204)

4 years agoRemove illegal parameter use in fbo.completeness
Courtney Goeltzenleuchter [Wed, 31 Jul 2019 15:59:40 +0000 (09:59 -0600)]
Remove illegal parameter use in fbo.completeness

dEQP.GLES2.functional.fbo.completeness.renderable.texture
was calling glTexImage2D with a internalformat of GL_SRGB8
which is not valid for GLES 2.0 even with GL_EXT_sRGB.

Affects:
dEQP-GLES2.functional.fbo.completeness.renderable.texture.color0.srgb8
dEQP-GLES2.functional.fbo.completeness.renderable.texture.stencil.srgb8
dEQP-GLES2.functional.fbo.completeness.renderable.texture.depth.srgb8

Components: AOSP

VK-GL-CTS issue: 1906

Change-Id: I97003eda10600a0a33e7212b6b5de34c5b2c8848
(cherry picked from commit 1de1dae629667dd79c896906540b1360e78d001a)

4 years agoFix use of invalid HALF_FLOAT enum
Courtney Goeltzenleuchter [Wed, 11 Sep 2019 15:01:22 +0000 (09:01 -0600)]
Fix use of invalid HALF_FLOAT enum

GLES 2.0 supports GL_HALF_FLOAT_OES via the OES_texture_half_float
extension. When the enum GL_HALF_FLOAT was added in GLES 3.0,
unfortunately it did not use the same enum value as GL_HALF_FLOAT_OES.
Technically, GL_HALF_FLOAT is not supported on a GLES 2.0 implementation
even with OES_texture_half_float. Fix GLES 2.0 tests to always use
GL_HALF_FLOAT_OES to avoid the issue.

Affects:

KHR-GLES2.core.internalformat.texture2d.*_half_float_*
KHR-GLES3*.core.internalformat.texture2d.*_half_float_*

Components: OpenGL

VK-GL-CTS issue: 1923

Change-Id: I9b43091382341798a0d62b9a4ec09153e915dc5c
(cherry picked from commit f7ede20a9805615a3c371b786fa7407708cf612c)

4 years agoFix invalid combinations for texture/copy on ES2 driver
Jim Hauxwell [Tue, 28 Aug 2018 16:33:48 +0000 (17:33 +0100)]
Fix invalid combinations for texture/copy on ES2 driver

OES_packed_depth_stencil describes the valid combinations available.
Texturing is only valid from it when OES_depth_texture is also present.
ES3 added depth texturing, but used different tokens than the initial
extension.

Affects:

KHR-GLES2.core.internalformat.texture2d.
  depth_stencil_unsigned_int_24_8_depth24_stencil8
KHR-GLES*.core.internalformat.texture2d.
  depth_stencil_unsigned_int_24_8_depth_stencil

Components: OpenGL
VK-GL-CTS issue: 1261

Change-Id: I91262c2c7eb71c9d3ff1eb59931227132b1828f9
(cherry picked from commit 33af336e530859e099df76b4c7d4acc5add3c2f7)

4 years agoUse unsized internal format in KHR-GLES2.texture_3d.[copy_sub_image|framebuffer_textu...
Tim Van Patten [Wed, 28 Aug 2019 18:15:23 +0000 (12:15 -0600)]
Use unsized internal format in KHR-GLES2.texture_3d.[copy_sub_image|framebuffer_texture].rgba8

These tests are using GL_RGBA8 as an internal format for TexImage2D.
Sized internal formats are not allowed for GLES 2.0.

Affects:
KHR-GLES2.texture_3d.copy_sub_image.rgba
KHR-GLES2.texture_3d.framebuffer_texture.rgba8

VK-GL-CTS issue: 1960

Change-Id: I8272e4ca0e2a9eda1161a5135e11f67b4ea5af6d
(cherry picked from commit eec82ceff77877bdad7fc94f8ae793db09ffff46)

4 years agoFix invalid parameter for GLES 2.0
Courtney Goeltzenleuchter [Tue, 30 Jul 2019 16:20:29 +0000 (10:20 -0600)]
Fix invalid parameter for GLES 2.0

Test was creating a texture with format of GL_DEPTH_STENCIL and
internalformat of GL_DEPTH24_STENCIL8_OES. In ES 2.0 the format and
internalformat must match.
Added an extra case when running 3.0 or better that does allow different
values for format and internalformat.

Affects:

KHR-GLES2.core.internalformat.texture2d.depth_stencil_unsigned_int_24_8_depth24_stencil

Components: OpenGL

VK-GL-CTS issue: 1903

Change-Id: I710975a0ea7c1d551f412590f887d9412be6f897
(cherry picked from commit 0c9f0c072d530bf378bc50265284fbc95c450e69)

4 years agoFix invalid combinations for texture/copy on ES2 driver
James Hauxwell [Fri, 13 Jul 2018 13:52:40 +0000 (14:52 +0100)]
Fix invalid combinations for texture/copy on ES2 driver

The OES_rgb8_rgba8 extension specification only specifies
RenderbufferStorageOES for additional GL_RGB8/GL_RGBA8 tokens.  ES3 spec
made these mandatory formats for texturing/copying.

Affects:

KHR-GLES2.core.internalformat.texture2d.rgb_unsigned_byte_rgb8
KHR-GLES2.core.internalformat.texture2d.rgba_unsigned_byte_rgb8
KHR-GLES2.core.internalformat.copy_tex_image.rgba8
KHR-GLES2.core.internalformat.copy_tex_image.rgb8

Components: OpenGL
VK-GL-CTS issue: 1260

Change-Id: Icbbd8882c5e623f5ac4725eebf977f535cfbfa31
(cherry picked from commit 5f7e621d6065f843651f7ca8f98989d05ca0bd65)

4 years agoMerge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6
Alexander Galazin [Wed, 13 May 2020 16:11:23 +0000 (18:11 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6

Change-Id: Ic55e8e0a9f73adb4d1c3c9a9bbd4f15932511027

4 years agoMigrate deRoundUp32 to deInt32.h
Courtney Goeltzenleuchter [Fri, 20 Dec 2019 20:29:38 +0000 (13:29 -0700)]
Migrate deRoundUp32 to deInt32.h

deRoundUp32 is used in a number of places, promote to utility function.
back ported https://gerrit.khronos.org/#/c/5197 work at 3.2.5.1 tag.

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

Change-Id: I3aaec51e0eec0e8e31e2082443d0d332bb8c3a56

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master
Alexander Galazin [Wed, 13 May 2020 07:40:05 +0000 (09:40 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master

Change-Id: Ib55bcc487e332625eccada5ce31be1b56c73395e

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Wed, 13 May 2020 06:33:12 +0000 (08:33 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I14bd589f1bd3adfabed0c7247fbef7deebe74c96

4 years agoNon-strict line interpolation and rasterization
Alex Walters [Wed, 22 Apr 2020 17:03:12 +0000 (18:03 +0100)]
Non-strict line interpolation and rasterization

Firstly non-strict line rasterization (parallelogram decomposed to
triangles) is changed to use the TriangleInterpolator do determine
interpolated colours. Line endpoint attributes are duplicated to the
end vertices of parallelogram lines, which means that interpolation is
not along the normal of the line, but would be parallel to the major
axis.

For the interpolation to be calculated correctly by the
TriangleInterpolator, the triangle geometry needed to be produced with
the correct w values from the line endpoints, previously the triangle
was generated pre-projected with 1.0 for the W-coordinates. The
perspective interpolation previously was calculated separately using
the original line parameters passed to MultisampleLineInterpolator.

The second part of the change is to allow for a non-strict line 'GLES'
centric relaxation - GLES specified 1px non-antialiased lines would use
the 'diamond-exit' rule to produce bresenham lines. Vulkan only
specified parallelograms, but not all GLES implementations are able
to disable the 1px bresenham behaviour.

All changes are in verifyMultisameplLineGroupInterpolation and
verifyMultisameplLineGroupInterpolationInternal. Strict lines are not
affected.

This fixes Imaginations 1.2.2.x failures in:

dEQP-VK.rasterization.flatshading*line*
dEQP-VK.rasterization.interpolation*line*

Affects:

dEQP-VK.rasterization*line*
dEQP-GLES2.functional.rasterization*line*
dEQP-GLES3.functional.rasterization*line*

Components: Framework

VK-GL-CTS Issue: 2274

Change-Id: I0cfd496969512bdbf9d0156ea8f43e737c44512f

4 years agoSuppress -Werror=array-bounds for latest GCC
Yiwei Zhang [Sat, 2 May 2020 05:06:40 +0000 (22:06 -0700)]
Suppress -Werror=array-bounds for latest GCC

VK-GL-CTS Issue: 2345

Change-Id: Id2a04a13dd3a13cc159919778315218e2f136fca

4 years agoExtend Android Hardware Buffer external memory format tests
Rosen Zhelev [Fri, 13 Mar 2020 16:23:13 +0000 (16:23 +0000)]
Extend Android Hardware Buffer external memory format tests

Add testing of depth and stencil Android Hardware Buffer formats.
These are added in Android API version 28 and present in the Format
Equivalence Table for VK_ANDROID_external_memory_android_hardware_buffer

Added tests:
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.d16_unorm
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.x8_d24_unorm_pack32
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.d24_unorm_s8_uint
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.d32_sfloat
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.d32_sfloat_s8_uint
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.s8_uint

Components: Vulkan

VK-GL-CTS issue: 2280

Change-Id: Ia90efc34f600eea6a1510276f3edab668c253459

4 years agoEnsure alphabetical order of xml attributes
Alexander Galazin [Thu, 7 May 2020 14:16:08 +0000 (16:16 +0200)]
Ensure alphabetical order of xml attributes

Python 3.8 removed artificial alphabetical ordering
of attributes in ElementTree. The recommended solution
to avoid changes in generated xml is to add attributes
in the alphabetical order directly in the source code.

See https://github.com/python/cpython/commit/63673916464bace8e2147357395fdf3497967ecb

Components: Framework

VK-GL-CTS issue: 2358

Change-Id: Ife4b93a01d76f1f99fcdf2c1d13291ae5c706d85
(cherry picked from commit b2d84418efc74c558be55c2934e14c2a93edefed)

4 years agoEnsure alphabetical order of xml attributes
Alexander Galazin [Thu, 7 May 2020 14:16:08 +0000 (16:16 +0200)]
Ensure alphabetical order of xml attributes

Python 3.8 removed artificial alphabetical ordering
of attributes in ElementTree. The recommended solution
to avoid changes in generated xml is to add attributes
in the alphabetical order directly in the source code.

See https://github.com/python/cpython/commit/63673916464bace8e2147357395fdf3497967ecb

Components: Framework

VK-GL-CTS issue: 2358

Change-Id: Ife4b93a01d76f1f99fcdf2c1d13291ae5c706d85

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master
Alexander Galazin [Fri, 8 May 2020 17:53:59 +0000 (19:53 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master

Change-Id: I4769eb2ad81f29030c947fb1507fd8d3b64d385b

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Fri, 8 May 2020 16:32:19 +0000 (18:32 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I6f501d0a79d072f3c3178ceda69dff5dfa9f98a0

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-1.2.1
Alexander Galazin [Fri, 8 May 2020 15:25:26 +0000 (17:25 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-1.2.1

Change-Id: Ibebde574b312ceb0f9077bcbe13ef5594387b2eb

4 years agofix input dependency for renderpass depth/stencil format tests
Connor Abbott [Mon, 4 May 2020 16:43:11 +0000 (18:43 +0200)]
fix input dependency for renderpass depth/stencil format tests

This appears to be a copy/paste mistake. The exact stage/access bits was
taken from other dependencies with an input attachment which is a
depth/stencil attachment.

Affected tests:
dEQP-VK.renderpass.*.formats.d16_unorm.input.*
dEQP-VK.renderpass.*.formats.x8_d24_unorm_pack32.input.*
dEQP-VK.renderpass.*.formats.d32_sfloat.input.*
dEQP-VK.renderpass.*.formats.d24_unorm_s8_uint.input.*
dEQP-VK.renderpass.*.formats.d32_sfloat_s8_uint.input.*

Change-Id: Ib1cde2371781cc8337905af04e0b7732b74333af
Components: Vulkan
VK-GL-CTS issue: 2351

4 years agoAvoid exceeding maxPerStageResources in descriptor_indexing tests
Slawomir Cygan [Mon, 27 Apr 2020 13:14:42 +0000 (15:14 +0200)]
Avoid exceeding maxPerStageResources in descriptor_indexing tests

The 'calculateInLoop; (*_in_loop) variant of the test is using additional
uniform texel buffer descriptor binding in pipeline layout.

This binding was counted only against maxPerStageDescriptorSampledImages and
maxDescriptorSetSampledImages limits, but not maxPerStageResources.

The fix is to count it against all three limits - but do this only when needed (in
*_in_loop) tests.

Component: Vulkan

VK-GL-CTS Issue: 2333

Affects: dEQP-VK.descriptor_indexing.*

Change-Id: I1c3476cb8c50c3ed61e73ecd4c106e6e9b613022

4 years agoSplit subgroupBroadcast tests
Ari Suonpaa [Mon, 27 Apr 2020 07:06:18 +0000 (10:06 +0300)]
Split subgroupBroadcast tests

Subgroup broadcast tests with required subgroup size were
iterating the range of supported sizes in a single test.
These are now split into own test cases to prevent long
execution times of these tests and to allow the test
group to run faster when running tests in parallel.

Affects:

dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast*

Components: Vulkan

VK-GL-CTS issue: 2327

Change-Id: I5af34cebee0fd58e5e065dbdef882badcf04a90b

4 years agoTest variableMultisampleRate with non-empty framebuffer
Ricardo Garcia [Fri, 3 Apr 2020 16:41:13 +0000 (18:41 +0200)]
Test variableMultisampleRate with non-empty framebuffer

This commits adds new test variants to the existing variable rate
multisample tests to check a non-empty framebuffer does not affect the
results, both when the subpass is still completely empty and when the
subpass contains an VK_ATTACHMENT_UNUSED attachment reference.

New tests:
dEQP-VK.pipeline.multisample.variable_rate.*_fb_*

Components: Vulkan
VK-GL-CTS issue: 2152

Change-Id: Ic8aabad6a00ca29c4eb624222548c6c607f6dec6

4 years agoAdded a fourth batch of coverage tests found by GraphicsFuzz
Ari Suonpaa [Wed, 29 Apr 2020 09:21:54 +0000 (12:21 +0300)]
Added a fourth batch of coverage tests found by GraphicsFuzz

New tests:

dEQP-VK.graphicsfuzz.cov-const-folding-ceil-vec4
dEQP-VK.graphicsfuzz.cov-const-folding-det-identity
dEQP-VK.graphicsfuzz.cov-const-folding-same-condition
dEQP-VK.graphicsfuzz.cov-const-folding-sinh-inf
dEQP-VK.graphicsfuzz.cov-dag-combiner-neg-div-pow2
dEQP-VK.graphicsfuzz.cov-dag-combiner-same-cond-nested
dEQP-VK.graphicsfuzz.cov-increment-inside-clamp
dEQP-VK.graphicsfuzz.cov-loop-findmsb-findlsb
dEQP-VK.graphicsfuzz.cov-max-clamp-same-minval
dEQP-VK.graphicsfuzz.cov-selection-dag-same-cond-twice
dEQP-VK.graphicsfuzz.cov-simplify-clamp-max-itself
dEQP-VK.graphicsfuzz.cov-simplify-component-uniform-idx
dEQP-VK.graphicsfuzz.cov-simplify-div-by-uint-one
dEQP-VK.graphicsfuzz.cov-simplify-ldexp-exponent-zero
dEQP-VK.graphicsfuzz.cov-simplify-mul-identity
dEQP-VK.graphicsfuzz.cov-simplify-not-less-than-neg
dEQP-VK.graphicsfuzz.cov-simplify-select-fragcoord
dEQP-VK.graphicsfuzz.cov-simplify-sign-cosh
dEQP-VK.graphicsfuzz.cov-simplify-smoothstep-undef
dEQP-VK.graphicsfuzz.cov-value-tracking-const-dfdy
dEQP-VK.graphicsfuzz.cov-value-tracking-inclusive-or
dEQP-VK.graphicsfuzz.cov-value-tracking-uniform-incident

Components: Vulkan
Change-Id: If6d0803f73424c2e1fcc922e738803fac8b7cf60

4 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Thu, 7 May 2020 18:13:23 +0000 (20:13 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: I98e6a4466dad826eb55fb9cf99d81d217f610123

4 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/master
Alexander Galazin [Thu, 7 May 2020 14:21:38 +0000 (16:21 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/master

Change-Id: I209deda6936efa25b41d98bbefcca889fa9f1906

4 years agoMake ImageSamplingInstance loop over pNexts
Joshua Ashton [Fri, 17 Apr 2020 03:17:07 +0000 (04:17 +0100)]
Make ImageSamplingInstance loop over pNexts

We need this to potentially support multiple pNexts.

Affected tests:
dEQP-VK.pipeline.sampler.*

Components: Vulkan
VK-GL-CTS issue: 2331

Change-Id: Ia38f9a6f2a2ffafe1d71c8169bb8f20f8cde1da5

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master
Alexander Galazin [Thu, 7 May 2020 07:09:13 +0000 (09:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master

Change-Id: I0e426c55c733847803339048389c18163350ef4f

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Thu, 7 May 2020 07:09:12 +0000 (09:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I37ceae996c069a640b7c9c67177bc6b0fe6ee5ee

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-1.2.1
Alexander Galazin [Thu, 7 May 2020 07:09:10 +0000 (09:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-1.2.1

Change-Id: I2a9e7765fb9f8fd160fe57074aaba10f661a6761

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1
Alexander Galazin [Thu, 7 May 2020 07:09:09 +0000 (09:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1

Change-Id: I1facde6f3a64f114648ab39432dd4a811e9cfb13

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.1.6
Alexander Galazin [Thu, 7 May 2020 07:09:07 +0000 (09:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.1.6

Change-Id: Icb8ab043f942c02aa8571ffdd8f92ebd1ff606e1

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Alexander Galazin [Thu, 7 May 2020 07:09:05 +0000 (09:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0

Change-Id: I8b23066dbc167b851f506efcfdfe4fcf87d7e00b

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Alexander Galazin [Thu, 7 May 2020 07:09:03 +0000 (09:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5

Change-Id: Ieb2b1e6bc78c052aab00f2e519afc897b12809f8

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Alexander Galazin [Thu, 7 May 2020 07:09:00 +0000 (09:09 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4

Change-Id: I738103ad40372749d96b5357726361812828d3ef

4 years agoFix of a build failure on QNX
Lujin Wang [Wed, 29 Apr 2020 23:58:07 +0000 (16:58 -0700)]
Fix of a build failure on QNX

Hit a build failure on QNX for vktPipelineTimestampTests.cpp.
  error: 'CLOCK_MONOTONIC_RAW' was not declared in this scope

Do not use CLOCK_MONOTONIC_RAW on QNX.

Affects:
OpenGLES CTS 3.2.6.1 build on QNX

Components: Vulkan

VK-GL-CTS issue: 2340

Change-Id: I44c131610860fda7f2fba7e8e32dcfc401fcf800

4 years agoUpdate SPIR-V Tools
Alexander Galazin [Tue, 5 May 2020 19:00:58 +0000 (21:00 +0200)]
Update SPIR-V Tools

Components: Framework

Change-Id: If475ce30568c3c50ab4eaaa874bb8fbe7454d6d5

4 years agoAdds geometry shader check for test
Matthew Netsch [Wed, 28 Aug 2019 16:31:19 +0000 (12:31 -0400)]
Adds geometry shader check for test

Components: Vulkan
VK-GL-CTS Issue: 1900

Affects:
dEQP-VK.query_pool.statistics_query.input_assembly*.primary.*adjacency

Change-Id: I6aeb72143231d59711cb1d6ea98bc2cc0264bc84
(cherry picked from commit c4416209513122ba8f21ca1d9c016a07d65bb7ba)

4 years agoStop 10bit formats requiring GL_SRGB encoding
James Glanville [Fri, 17 Apr 2020 10:54:40 +0000 (11:54 +0100)]
Stop 10bit formats requiring GL_SRGB encoding

The EGL_KHR_gl_colorspace spec does not require formats that
are not SRGB8 to respect the given EGL_GL_COLORSPACE_KHR.

Components: EGL

VK-GL-CTS issue: 2288

Affects:

dEQP-EGL.functional.wide_color.window_1010102_colorspace_srgb
dEQP-EGL.functional.wide_color.pbuffer_1010102_colorspace_srgb

Change-Id: I41ab6c6a0467a29cf7e5e764bf2b2cfb78c51db3
(cherry picked from commit c90d90d4b1b006d0b39c04e7517b7252564bf2e0)

4 years agoAdjust framework to removal of non-API enums
Piotr Byszewski [Mon, 4 May 2020 11:40:32 +0000 (13:40 +0200)]
Adjust framework to removal of non-API enums

BEGIN_RANGE, END_RANGE and RANGE_SIZE enums were
removed from the Vulkan headers and XML. This change
simplifies gen_framework script.

Components: Vulkan, Framework

VK-GL-CTS issue: 2250

Affects:
dEQP-VK.*

Change-Id: Id8847e78afbbb4cd5ad1a3b5bacda408a8693188

4 years agoUpdate Vulkan headers
Alexander Galazin [Mon, 4 May 2020 10:53:37 +0000 (12:53 +0200)]
Update Vulkan headers

Components: Vulkan

Change-Id: I421c4d4f3d785bbb9af2170a92f463cfc4511a34

4 years agoUpdate glslang
Alexander Galazin [Mon, 4 May 2020 10:37:50 +0000 (12:37 +0200)]
Update glslang

Components: Framework, Vulkan, OpenGL

Change-Id: Iae3ab66b64114a79b0ef28b4c4efa610dcdd1ff7

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master
Alexander Galazin [Mon, 4 May 2020 08:24:17 +0000 (10:24 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/master

Change-Id: I91b40f209e7574f9779151ce3637d1431bfc6f5b

4 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Mon, 4 May 2020 07:15:29 +0000 (09:15 +0200)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I613d3f387390bcbd261f305cd0b03a1b041c4e76

4 years agoRoll glslang forward to 02c70ad10e1f9dc88ae4ee509f26fe5f9fb31843
Chris Forbes [Fri, 1 May 2020 18:50:43 +0000 (11:50 -0700)]
Roll glslang forward to 02c70ad10e1f9dc88ae4ee509f26fe5f9fb31843

This includes fixes for newer compilers, including the official toolchain for the upcoming Android release.

For example, modern clang currently complains:

In file included from
external/deqp-deps/glslang/OGLCompilersDLL/InitializeDll.cpp:42:
external/deqp-deps/glslang/OGLCompilersDLL/../glslang/Include/PoolAlloc.h:307:54:
error: 'operator=' is a private member of 'glslang::TPoolAllocator'
    void setAllocator(TPoolAllocator* a) { allocator = *a; }
                                               ~~~~~~~~~ ^

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

Change-Id: I85e94fea0621c3b72e6f30e7e68377c41449be99

4 years agoStop 10bit formats requiring GL_SRGB encoding
James Glanville [Fri, 17 Apr 2020 10:54:40 +0000 (11:54 +0100)]
Stop 10bit formats requiring GL_SRGB encoding

The EGL_KHR_gl_colorspace spec does not require formats that
are not SRGB8 to respect the given EGL_GL_COLORSPACE_KHR.

Components: EGL

VK-GL-CTS issue: 2288

Affects:

dEQP-EGL.functional.wide_color.window_1010102_colorspace_srgb
dEQP-EGL.functional.wide_color.pbuffer_1010102_colorspace_srgb

Change-Id: I41ab6c6a0467a29cf7e5e764bf2b2cfb78c51db3

4 years agoReplace LAST with MAX_ENUM in mapBorderColor
Joshua Ashton [Fri, 17 Apr 2020 02:53:47 +0000 (03:53 +0100)]
Replace LAST with MAX_ENUM in mapBorderColor

Fixes compilation errors with the newer headers.

Affected tests:
dEQP-VK.pipeline.sampler.*border*

Components: Vulkan
VK-GL-CTS issue: 2332

Change-Id: I757017612045666de53b8a09691eed27587503df

4 years agoMake checkSupportImageSamplingInstance loop through pNexts
Joshua Ashton [Fri, 17 Apr 2020 02:51:34 +0000 (03:51 +0100)]
Make checkSupportImageSamplingInstance loop through pNexts

We need this to support multiple potential pNexts in the future.

Affected tests:
dEQP-VK.pipeline.sampler.*

Components: Vulkan
VK-GL-CTS issue: 2331

Change-Id: I076e864d4b842d3993fdfa9bbd5925765870f6f7

4 years agodEQP-VK.graphicsfuzz.one-sized-array
Vihanakangas [Tue, 14 Apr 2020 08:13:31 +0000 (11:13 +0300)]
dEQP-VK.graphicsfuzz.one-sized-array

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.one-sized-array

Change-Id: I845305554a5c43c9f7bc6d7c964e6011f7560b96

4 years agoTest mixed sample count in empty subpass and framebuffer
Ricardo Garcia [Thu, 26 Mar 2020 18:15:14 +0000 (19:15 +0100)]
Test mixed sample count in empty subpass and framebuffer

This commit adds a new set of tests that check the sample count of a
subpass with no attachments or an unused attachment is not affected by
the presence of a framebuffer using a different sample rate.

Due to some code refactoring, the variable rate tests are marked as
affected.

Affected tests:
dEQP-VK.pipeline.multisample.variable_rate.*

New tests:
dEQP-VK.pipeline.multisample.mixed_count.*

Components: Vulkan
VK-GL-CTS issue: 2284

Change-Id: I37c0b434c82ad79d7d74a51aee360784dfeee8ca

4 years agoUpdate glslang
Alexander Galazin [Thu, 30 Apr 2020 06:59:55 +0000 (08:59 +0200)]
Update glslang

Components: Framework

Change-Id: Id19b7361f49ce46a47d87e0bc1f52b8eaaca047e

4 years agoAdd vk platform to nullws
Daniele Castagna [Wed, 1 Apr 2020 00:19:06 +0000 (20:19 -0400)]
Add vk platform to nullws

This CL adds supprt for Vulkan to nullws platform.
In this way deqp-vk can be run on platforms without WSI.

Change-Id: I13d7bc307deeeda3a228b9fa930f7c20950d8ff0

4 years agoFix verification in multisample image store tests
Graeme Leese [Wed, 22 Apr 2020 13:40:26 +0000 (14:40 +0100)]
Fix verification in multisample image store tests

The results were being verified for each sample but they were all being
stored to the same pixel in the (single-sample) result image, meaning
that only the last sample was actually checked.

Have the shader calculate the correct result for the whole pixel before
writing it out.

Component: Vulkan
VK-GL-CTS issue: 2310
Affects:
dEQP-VK.pipeline.multisample_shader_builtin.image_write_sample.*

Change-Id: Ibe1383d7922073af0661f818ebf8bfe9ab20b9fe

4 years agoAllow RTZ rounding in spv_assembly*writes_two_buffers* tests
Kyle Griffiths [Fri, 17 Apr 2020 11:26:54 +0000 (12:26 +0100)]
Allow RTZ rounding in spv_assembly*writes_two_buffers* tests

Because the tests perform an add operation, mismatch of the CPU and GPU
rounding modes can cause the tests to incorrectly fail.
This change modifies the verification to allow up to 1 ULP difference
between the output and the expected result, which covers the maximum
difference between RNE and RTZ rounding modes.

Components: Vulkan

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

VK-GL-CTS issue: 2320

Change-Id: Ic76942add1382c23885118f806ac593cc730eb73