platform/upstream/VK-GL-CTS.git
2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Thu, 6 Jan 2022 22:46:42 +0000 (22:46 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: I0523a6848ab1ac052c1df7a64f52016f6f0df60d

2 years agoMake texel conversion ignore unused channels
Jari Komppa [Fri, 26 Nov 2021 11:25:55 +0000 (13:25 +0200)]
Make texel conversion ignore unused channels

The convertNormalizedUnsignedFixedPoint function applied conversion to
all channels, even those with 0 bit width, causing a bunch of division
by zeros. The change skips all non-used channels.

Affects:
KHR-GLES3.copy_tex_image_conversions.*

Components: OpenGL
VK-GL-CTS issue: 3354

Change-Id: I88bf9748bd7226c8c41ea44a1df9fabf0f648cfa

2 years agoFix negative shift in bitfieldExtract tests
Ari Suonpaa [Mon, 13 Dec 2021 12:10:09 +0000 (14:10 +0200)]
Fix negative shift in bitfieldExtract tests

Reference calculation was using a negative shift when the
number of bits for bitfieldExtract was zero. This is
undefined behavior so now the bits = 0 case is handled
separately.

VK-GL-CTS Issue: 3333

Affects:

dEQP-GLES31.functional.shaders.builtin_functions.integer.bitfieldextract.*

Components: OpenGL ES
Change-Id: I7691962d7ffd8ceed4dc1267d6730f1a6cb3e564

2 years agoFix signed integer overflow in shader operator tests
Ari Suonpaa [Mon, 13 Dec 2021 09:20:41 +0000 (11:20 +0200)]
Fix signed integer overflow in shader operator tests

32bit integer reference value calculation had possible
signed integer overflows which are undefined. Now the
references are calculated using 64bit integers.

VK-GL-CTS Issue: 3335

Affects:

dEQP-GLES3.functional.shaders.operator.binary_operator.*

Components: OpenGL ES
Change-Id: I18e5eec98a7b93375c075a833bdf68534353c634

2 years agoFix division by zero errors
Ari Suonpaa [Thu, 9 Dec 2021 08:24:18 +0000 (10:24 +0200)]
Fix division by zero errors

Projection calculation had zero divisor in some cases that
didn't use the results. This division is now bypassed for
these cases to avoid UBSAN errors.

VK-GL-CTS Issue: 3352

Affects:

dEQP-GLES*.functional.shaders.texture_functions.*

Components: OpenGL ES
Change-Id: I64e5c53c668646dbdc915c2b3619700d83793009

2 years agoFix signed integer overflow in shader precision tests
Ari Suonpaa [Thu, 9 Dec 2021 12:36:54 +0000 (14:36 +0200)]
Fix signed integer overflow in shader precision tests

32bit integer reference value calculation had possible
signed integer overflows which are undefined. Now the
references are calculated using 64bit integers.

VK-GL-CTS Issue: 3336

Affects:

dEQP-GLES3.functional.shaders.precision.*

Components: OpenGL ES
Change-Id: I682a8d790f1ceaaf5c2caf67a87655835a0aaef8

2 years agoframework: unify TestPackage behaviour between ES 3.1 and 3.2
Tapani Pälli [Wed, 17 Nov 2021 13:16:38 +0000 (15:16 +0200)]
framework: unify TestPackage behaviour between ES 3.1 and 3.2

Main issue seen here was that ES 3.2 did not reset context state when
initializing TestCaseWrapper, this was causing different behaviour in
following tests:

  KHR-GLES31.core.draw_buffers_indexed.blending
  KHR-GLES32.core.draw_buffers_indexed.blending

Patch also fixes few other differences spotted.

Components: Framework, OpenGL

VK-GL-CTS issue: 3318

Affects:
   glcts
   cts-runner

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: Ie5848e41eba64c3b76b526738e8612c8bebdfbfc

2 years agoImprove and fix quad randomization in vertex array test
Ari Suonpaa [Fri, 3 Dec 2021 09:21:46 +0000 (11:21 +0200)]
Improve and fix quad randomization in vertex array test

Minimum quad size for fixed point format was larger
than the maximum value range, causing only extremely
large quads to be used. Also the quad randomization
relied on a loop with fixed number of attempts to
produce proper quads. Now the randomization ranges
are selected so that the quads can be accepted without
multiple attempts.

VK-GL-CTS Issue: 3376

Affects:

dEQP-GLES3.functional.vertex_arrays.*

Components: OpenGL ES
Change-Id: I648f2218aa9b661969c7b78c2f81b5e120ae9275

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Thu, 9 Dec 2021 21:48:40 +0000 (21:48 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ieb1fae87f77e29275d42ffaa193d0732b57c56ff

2 years agoAvoid division by zero in cube map coordinates
Jari Komppa [Wed, 24 Nov 2021 17:34:46 +0000 (19:34 +0200)]
Avoid division by zero in cube map coordinates

Cube map coordinates are calculated from 3-dimensional uv coordinates by
scaling two of the coordinates by the third. In case of using 0,0,0 as
the coordinates, a division by zero occurs. The result is undefined
behavior.

This change detects the division by zero event and returns uv
coordinates as 0,0. Since the behavior is undefined, it doesn't matter
what we return, but after this change the result should at least be
consistent.

Affects:
dEQP-GL*cube*

Components: Framework
VK-GL-CTS issue: 3351

Change-Id: I094a98f790a28bdf7b26ccb170888f2ea9c1e64c

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Thu, 2 Dec 2021 21:03:40 +0000 (21:03 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ie280369845ce69510359b85012a6b29de83c34cc

2 years agoAvoid shifting by more than bit width
Ari Suonpaa [Wed, 24 Nov 2021 13:52:28 +0000 (15:52 +0200)]
Avoid shifting by more than bit width

Half float mantissa calculation was sometimes using
shift larger than a bit width. This change sets the
mantissa to zero in those cases.

VK-GL-CTS Issue: 3346
VK-GL-CTS Issue: 3349

Affects:

KHR-GLES*.core.internalformat.texture2d.*half_float*
KHR-GLES3.packed_pixels.*16f

Components: OpenGL ES
Change-Id: Ib91082fab530f6ff9e7cd5b6346ad7d433543a47

2 years agoPad out glClearBufferuiv value
Mika Väinölä [Fri, 12 Nov 2021 11:41:54 +0000 (13:41 +0200)]
Pad out glClearBufferuiv value

The test calls glClearBufferuiv with GL_COLOR and a pointer to a
single GLuint when four components are expected.

Affects: KHR-GLES31.core.framebuffer_no_attachments.render

Components: OpenGL

VK-GL-CTS issue: 3295

Change-Id: I0ce2512cc619410c91104b083ab7bb7b9d667c4c

2 years agoAdd missing extension requirement
Jari Komppa [Thu, 4 Nov 2021 11:40:07 +0000 (13:40 +0200)]
Add missing extension requirement

This change adds the missing #extension line in the shader for the
fragdata.draw_buffers test if extension is supported.

Affects:
dEQP-GLES3.functional.shaders.fragdata.draw_buffers

Components: OpenGL
VK-GL-CTS issue: 3259

Change-Id: Id644e83b938fd3f2e22769faf727043bee88f62d

2 years agoFix signed integer overflow in vertex array tests
Ari Suonpaa [Wed, 1 Dec 2021 07:27:16 +0000 (09:27 +0200)]
Fix signed integer overflow in vertex array tests

Random quad calculation in some of the vertex array tests were
calculating ranges for allowed quad sizes using signed integers,
and there was a chance for an overflow, which is undefined behavior.

Now the quad calculation randomizes only coordinates instead of
coordinates and the quad size. This lets us avoid the calculation
of the range.

Some bug fixes to the quad randomization code were also added.

VK-GL-CTS Issue: 3357

Affects:

dEQP-GLES3.functional.vertex_arrays.*

Components: OpenGL ES
Change-Id: I651ac6cef94e15d3fc0bc322ea8d65cbd96a4c2d

2 years agoFix signed integer overflow
Ari Suonpaa [Wed, 24 Nov 2021 15:03:44 +0000 (17:03 +0200)]
Fix signed integer overflow

VK-GL-CTS Issue: 3347

Affects:

KHR-GLES31.core.shader_bitfield_operation.bitfieldExtract.*

Components: OpenGL ES
Change-Id: Ifa35375cc20b54b9e2ff4950d519d0b0dad68812

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Thu, 18 Nov 2021 21:53:34 +0000 (21:53 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ib23ae3a63fd65ec4aae8385d92ffd09a114c32da

2 years agoFix glcPackedPixelsTests to properly account for skip images
Antto Mäkinen [Fri, 12 Nov 2021 11:45:46 +0000 (13:45 +0200)]
Fix glcPackedPixelsTests to properly account for skip images

RectangleTest::makeGradient in glcPackedPixelsTests does not
properly account for skip images. This commit prevents it
writing over the end of an array.

Affects:

KHR-GL33.packed_pixels.*

Components: OpenGL ES

VK-GL-CTS Issue: 3275

Change-Id: I9d8a47b59c000512926c3bfc85b6c6dc66eee213

2 years agoFix out-of-bounds stack read
Ari Suonpaa [Fri, 12 Nov 2021 05:08:39 +0000 (07:08 +0200)]
Fix out-of-bounds stack read

glBufferData was given a pointer to a C struct, but
a wrong struct type was used for sizeof.

VK-GL-CTS Issue: 3294

Affects:

KHR-GLES31.core.draw_indirect.negative-noV*arrays

Components: OpenGL
Change-Id: If02916683e0fee46b05dd4774b56f7fe335cc80f

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Sat, 13 Nov 2021 16:11:54 +0000 (16:11 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: If02f4572aca30dfa8de4f63dbe22873efb3c7e6b

2 years agoAvoid OOB params access in call log wrapper
Mika Väinölä [Thu, 4 Nov 2021 13:52:05 +0000 (15:52 +0200)]
Avoid OOB params access in call log wrapper

Some negative coverage tests call glTexParameter*v and
glGetSamplerParameter*v with GL_TEXTURE_BORDER_COLOR and a pointer to
a single GLint, GLuint or GLfloat. The call log wrapper functions
attempt to log all four parameters expected for the pname and we get
OOB access for params. Avoid this by using arrays of four instead of
single values for params.

Affects:
dEQP-GLES31.functional.debug.negative_coverage.*.texture.texparameter*
dEQP-GLES31.functional.debug.negative_coverage.*.shader.get_sampler_parameter*
dEQP-GLES31.functional.debug.error_filters.case_11
dEQP-GLES31.functional.debug.error_filters.case_18
dEQP-GLES31.functional.debug.error_filters.case_22
dEQP-GLES31.functional.debug.error_groups.case_11

Components: OpenGL

VK-GL-CTS issue: 3273

Change-Id: If244a008c9cfcc6cc443e8d5475f6ce4add1c838

2 years agoFix array iteration range
Jari Komppa [Thu, 4 Nov 2021 11:25:30 +0000 (13:25 +0200)]
Fix array iteration range

The function getCompressedTexSubImage2DFormat was using function
parameter to loop through an array defined inside the function, while
these two were unrelated. The result may either not loop through the
whole array or go past the end of the array.

Affects:
dEQP-GLES2.functional.negative_api.texture.compressedtexsubimage2d_*

Components: OpenGL
VK-GL-CTS issue: 3272

Change-Id: Ie88d9330e03f56b7afe858bf51e9bf0fa41e4822

2 years agoFix source data size in SSBO array length tests
Mika Väinölä [Fri, 5 Nov 2021 11:28:04 +0000 (13:28 +0200)]
Fix source data size in SSBO array length tests

The tests were calling glBufferData with a pointer to a single
deUint32 and a size of 2 * sizeof(deUint32). Change invalidData to
an array of two deUint32s.

Affects: dEQP-GLES31.functional.ssbo.array_length.*

Components: OpenGL

VK-GL-CTS issue: 3274

Change-Id: Id318c6541bbd8b61eec6d2ca460a3404c5c887e8

2 years agoRemove few EGL robustness tests
Brandon Schade [Tue, 28 Sep 2021 19:28:20 +0000 (12:28 -0700)]
Remove few EGL robustness tests

Components: EGL

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

VK-GL-CTS issue: 257

Change-Id: I9edb2e577fb14b98d83bb16dc31188d3a901606d

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Fri, 5 Nov 2021 14:04:48 +0000 (10:04 -0400)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ifa75c860ad2c39661494aeb086255a97672e72b0

2 years agoGCC 11 build fixes for opengl-es-cts
Tapani Pälli [Tue, 26 Oct 2021 11:12:16 +0000 (14:12 +0300)]
GCC 11 build fixes for opengl-es-cts

Add missing limits header to misc files to fix compilation.

+ changes to fix following compilation warnings:

"warning: expression does not compute the number of elements in this array;
element type is ‘std::string’ {aka ‘std::__cxx11::basic_string<char>’},
not ‘std::string [15]’ {aka ‘std::__cxx11::basic_string<char> [15]’}
[-Wsizeof-array-div]"

"warning: loop variable ‘ext’ creates a copy from type
‘const std::__cxx11::basic_string<char>’ [-Wrange-loop-construct]"

"warning: comparison of unsigned expression in ‘>= 0’ is always true
[-Wtype-limits]"

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

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: If62a44d47afccf1118a6fb0986d0c6e715f78c48

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Thu, 28 Oct 2021 21:57:59 +0000 (17:57 -0400)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ibee0d474561af951a4ef33db864aaa4993ca38d5

2 years agox11_egl: only append library path if it's not empty
Iván Briano [Mon, 11 Oct 2021 19:45:24 +0000 (12:45 -0700)]
x11_egl: only append library path if it's not empty

Pkg-config will strip out any -L if they match the default search
directory, so we ended up with a -L and no arguments to it, that would
consume whatever came next.

Components: EGL

VK-GL-CTS issue: 2726

Change-Id: Iba0f7d8e0a4ab66e5fd369f60e4d04ac5420df65

2 years agoRemove invalid reserved keywords tests
Graeme Leese [Wed, 7 Jul 2021 10:15:41 +0000 (11:15 +0100)]
Remove invalid reserved keywords tests

These identifiers are not listed as reserved in any spec that I can
find.

Components: OpenGLES
Removed Tests: dEQP-GLES3.functional.shaders.keywords.reserved_keywords.image*Shadow_*

Change-Id: I444d9a8a49d3dda7402faa50b79859aaef0ee690
(cherry picked from commit 99df4bc28a2e9f755467fd0c6a88702ee2428232)

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Fri, 22 Oct 2021 17:09:08 +0000 (13:09 -0400)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ice7060c4fcd3e60ccd8b0bb76d65bfb409c3120b

2 years agoUse GL_FRAMEBUFFER instead of GL_[DRAW|READ]_FRAMEBUFFER with GLES2
Tapani Pälli [Wed, 22 Sep 2021 12:05:48 +0000 (15:05 +0300)]
Use GL_FRAMEBUFFER instead of GL_[DRAW|READ]_FRAMEBUFFER with GLES2

Affects:
KHR-GLES2.texture_3d.copy_sub_image.negative
KHR-GLES2.texture_3d.copy_sub_image.rgba

Components: OpenGL
VK-GL-CTS issue: 3133

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: Ia32e16e6231b53c9f58e99d85e6178dca5b7f012

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Matthew Netsch [Fri, 1 Oct 2021 20:52:57 +0000 (16:52 -0400)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ic894ed63f8c389f9f5485e3f573a66fd9901f5aa

2 years agoFix vector access in EGL partial update tests
Graeme Leese [Wed, 15 Sep 2021 09:23:00 +0000 (10:23 +0100)]
Fix vector access in EGL partial update tests

The vector of damage regions was being accessed even when the vector
was empty, which is invalid.

This changes the behaviour of the test, which used to invalidate the
whole framebuffer when it found no damage regions, but not invalidates
none of it. This seems like the correct behaviour.

Components: EGL
Affects: dEQP-EGL.functional.partial_update.*

Change-Id: I8c5500a85d000d16b240359de7eadc67144fb7d3

2 years agoCheck for integer texture support in negative teximage tests
Tapani Pälli [Thu, 23 Sep 2021 04:40:57 +0000 (07:40 +0300)]
Check for integer texture support in negative teximage tests

Affects:
KHR-GLES2.texture_3d.filtering.combinations.negative

Components: OpenGL
VK-GL-CTS issue: 3134

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I352d408a486fa12b406fadd6ec6b8d24e1cd211d

2 years agoAdd GL_RGB9_E5 as renderable ext format in fbo tests
Mohankumar Nekkarakalaya [Thu, 19 Aug 2021 19:05:36 +0000 (12:05 -0700)]
Add GL_RGB9_E5 as renderable ext format in fbo tests

-If GL_QCOM_render_shared_exponent is supported then treat
GL_RGB9_E5 as a renderable format for fbo completeness tests

Components: OpenGL
VK-GL-CTS Issue: 3066

Affects:
dEQP-GLES3.functional.fbo.completeness.renderable.renderbuffer.color0.rgb9_e5
dEQP-GLES3.functional.fbo.completeness.renderable.texture.color0.rgb9_e5

Change-Id: I74566a5b56c7528c89ac97423c5b6f9207397c70

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Thu, 10 Jun 2021 07:34:25 +0000 (09:34 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ib0f4c996967d629009113c3d17b543fc9218def0

3 years agoAdd a glMemoryBarrier between buffer write and read
Sunny Sun [Thu, 27 May 2021 07:44:36 +0000 (15:44 +0800)]
Add a glMemoryBarrier between buffer write and read

The tests' behavior is like this:
1. Use transform feedback to write to one buffer
2. Set this buffer to texture, and then to image
3. glDispatchCompute -> use ImageLoad to read from the image
We have to add a glMemoryBarrier between step 1 and 3.

Affects:
KHR-GLES3*.core.texture_buffer.texture_buffer_operations_transform_feedback

Components: OpenGL

VK-GL-CTS issue: 2936

Change-Id: If711469a6cbf4ae1df6851e4006d937760e37ca7

3 years agoAllow GL_RGB9_E5 as a valid fbo format
Matthew Netsch [Tue, 22 Dec 2020 19:40:32 +0000 (01:10 +0530)]
Allow GL_RGB9_E5 as a valid fbo format

If GL_QCOM_render_shared_exponent is available then treat
GL_RGB9_E5 as a valid internal format for fbo. Also, allow
copy of RGB9_E5 pixel data.

Components: OpenGL
VK-GL-CTS Issue: 2898

Affects:
KHR-GLES3.packed_pixels.rectangle.rgb9_e5
KHR-GLES3.packed_pixels.pbo_rectangle.rgb9_e5
KHR-GLES3.packed_pixels.varied_rectangle.rgb9_e5

Change-Id: Ie57d74b9bbd11cf7ccca175813077c22405a0926

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Thu, 8 Apr 2021 07:37:27 +0000 (10:37 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ie819b6fcb1a362f9414f075a2cbc8bb368c34581

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, 8 Apr 2021 06:52:23 +0000 (09:52 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/opengl-es-cts-3.2.6

Change-Id: Ia93ae886128b6368736e4dc433bbc689d80fae23

3 years agoRemove in-repo verify_submission scripts
Alexander Galazin [Fri, 19 Mar 2021 11:12:55 +0000 (14:12 +0300)]
Remove in-repo verify_submission scripts

These scripts are now replaced by the CTS Tools repo:
https://github.com/KhronosGroup/VK-GL-CTS-Tools

Components: Vulkan, OpenGL

Change-Id: If0f47b4186ed10f9946852e8d37956d7328625a8
(cherry picked from commit bdfb5d67b268ab2dba5178618cc1515f68087be3)

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

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Tue, 30 Mar 2021 06:21:00 +0000 (09:21 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: If1bdcafe2e19121b0d5d7f89bf44f89db1877f74

3 years agoRevise the render_list string of angle vulkan waiver
junxu01 [Mon, 15 Mar 2021 08:07:54 +0000 (16:07 +0800)]
Revise the render_list string of angle vulkan waiver

Use 'ANGLE (*Vulkan *' to replace 'ANGLE (Vulkan*'.

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

Change-Id: I8e5c8a86a81a538b829873a7c133a4c14b181087

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Thu, 25 Mar 2021 07:51:47 +0000 (10:51 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: I5517ebda304e88850ec6cd29bebce290aa237723

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 agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Wed, 17 Mar 2021 11:34:22 +0000 (14:34 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ied31bf3a3891e6809c3472c70598ac7448a31066

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 agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Wed, 10 Mar 2021 07:35:45 +0000 (10:35 +0300)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ib3539ff9e52891171eb4cac8cc569390adb5d425

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 agoFix exit code for cts-runner
Thomas Spurden [Mon, 8 Feb 2021 15:30:15 +0000 (15:30 +0000)]
Fix exit code for cts-runner

The runner used m_summary.isConformant to determine the exit code after
m_summary had been cleared by TestRunner::deinit, so it was always
exiting with a failure code.

Don't clear m_summary so that isConformant is valid after deinit.

Affects:

cts-runner

Components: Framework

VK-GL-CTS issue: 1982

Change-Id: I665017f7b11985f1e639971e4a9a627045f3664a
(cherry picked from commit 0f2a50e88aad4dae6330168f01c224b3de5bb629)

3 years agoCheck for astc_sliced_3d extension in negative API tests
Graeme Leese [Thu, 21 Jan 2021 13:55:22 +0000 (13:55 +0000)]
Check for astc_sliced_3d extension in negative API tests

The ASTC sliced_3d extension allows support of 3D ASTC textures using 2D
blocks (interpreted as XxYx1 blocks of the 3D texture). That makes
passing the 2D ASTC format enums with a texture target of TEXTURE_3D
legal, so update the negative API tests to allow that case.

Components: OpenGL
VK-GL-CTS issue: 2741
Affects: dEQP-GLES3.functional.negative_api.texture.compressedteximage3d_invalid_astc_target
         dEQP-GLES3.functional.negative_api.texture.texstorage3d_invalid_astc_target

Change-Id: Ifd3c54d2819d11c3e771ad4a98682e266c27da41
(cherry picked from commit 6c72e55e2343f0b448c0707d0ae6b51f2baa3e61)

3 years agoAdd --force option to fetch_sources.py
Thomas Spurden [Wed, 16 Dec 2020 12:26:52 +0000 (12:26 +0000)]
Add --force option to fetch_sources.py

This passes --force to git fetch and checkout.

Change-Id: I56a7ccafefb2eaac69d2253516308daa8e8808cf
(cherry picked from commit 2feac9e222d15c94adf3d39e61878e489a0f0aea)

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Thu, 28 Jan 2021 17:23:22 +0000 (18:23 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: I788189cd68e7eb8d41b1e9f110102e5b611b0a62

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 agoSwitch the branch to the master mustpass
Alexander Galazin [Tue, 26 Jan 2021 20:04:13 +0000 (21:04 +0100)]
Switch the branch to the master mustpass

Makes 'master' the current mustpass and
aligns it with 3.2.6

Components: OpenGL

Change-Id: I7d6e227f6bb6e995fc1364cc36f1e869399315e3

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 agoStop dEQP-GL45 tests falling back to ES3.1
Graeme Leese [Thu, 21 Jan 2021 17:16:41 +0000 (17:16 +0000)]
Stop dEQP-GL45 tests falling back to ES3.1

The ES3.1 context creation code accepted an apiType parameter but would
always fall back to ES3.1 if the apiType that was requested was not
supported. (This used to be used to create an ES3.2 context where
supported). This meant that the new dEQP-GL45.* tests would run on an ES
implementation using an ES3.1 context.

Make the behaviour of dEQP-GL45.* consistent with the KHR-GL* tests by
failing to create a context if the requested apiType is not supported.
The old fallback behaviour is moved to the dEQP-GLES31 test package,
which is where the strange fallback requirement comes from anyway.

Components: OpenGL
VK-GL-CTS issue: 2747
Affects: dEQP-GL45.*

Change-Id: Ie5ef92c708a28211a007589c0f4aa49ad7d745e1
(cherry picked from commit ff4410749c669b9b6e943a41f76d30b6db86d034)

3 years agoRevert "Support GL 4.5 in the blend_equation_advanced tests"
Alexander Galazin [Fri, 22 Jan 2021 13:15:04 +0000 (14:15 +0100)]
Revert "Support GL 4.5 in the blend_equation_advanced tests"

Affects:
dEQP-GLES3*.functional.blend_equation_advanced

Components: AOSP

VK-GL-CTS issue: 2749

This reverts commit 93695bfdf50b76d294ebbc1413996f2af897a179.

Change-Id: I8c563dbcf792c7018b06a1595fce57180ee2fc0d

3 years agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Thu, 21 Jan 2021 17:42:48 +0000 (18:42 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: Ia83b57c0167a3375941b011fdfee5a4ad87b2a23

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 agoMerge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Alexander Galazin [Thu, 21 Jan 2021 10:06:32 +0000 (11:06 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7

Change-Id: If73591d2f5f70df124f2e49560acaf767da9af0e

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 agoFix sync problems in conditional_rendering.draw_clear tests
Ricardo Garcia [Wed, 16 Dec 2020 11:06:59 +0000 (12:06 +0100)]
Fix sync problems in conditional_rendering.draw_clear tests

* Invalidate results buffer allocations before attempting to read data.

* Fix synchronization of m_conditionalRenderingBuffer instead of
  m_resultBuffer before verifying its contents.

* Check for vertexPipelineStoresAndAtomics when needed.

* Split update_with_rendering tests in two render passes so
  buffer synchronization works properly and passes validation.

Affected tests:
dEQP-VK.conditional_rendering.draw_clear.*

Components: Vulkan
VK-GL-CTS issue: 2703

Change-Id: I2ae26e19e37c323bdbf94cade419fe5be3ed4f5c

3 years agoDon't access arrays out-of-bounds in robustness2 tests
Connor Abbott [Thu, 3 Dec 2020 14:05:30 +0000 (15:05 +0100)]
Don't access arrays out-of-bounds in robustness2 tests

The SPIR-V spec says that indexing a pointer to an array with an
out-of-bounds index leads to undefined behavior. While
VK_EXT_robustness2 allows you to access outside the range of the
underlying descriptor, it doesn't change this fact, so we should be
careful to only access inside of the shader-declared array when testing
UBO's. For SSBO's we switch to using an unsized array to keep test
coverage of negative indices.

Affects:
dEQP-VK.robustness.robustness2.*

VK-GL-CTS Issue: 2649
Components: Vulkan

Change-Id: I60a4b80749278f4d81defdbe2abe116a1dcfa159

3 years agopipeline statistics test: Fix compute shader setup in !GL4.3 case.
Eric Anholt [Fri, 11 Dec 2020 20:17:44 +0000 (12:17 -0800)]
pipeline statistics test: Fix compute shader setup in !GL4.3 case.

The ARB_compute_shader spec states a requirement for GL4.2/GLSL 4.20
or better, but we were using "#version 430" regardless, causing a
compile failure on older versions.  Add a variant of the shader using
the ARB_compute_shader extension instead.

I picked GLSL 330 for the variant because the test is included in the
GL 3.3 test set, and Mesa's softpipe driver exposes ARB_compute_shader
on GL 3.3 -- the GLSL requirement in the spec seems to be more than is
actually necessary for compute shaders, assuming you have
ARB_shader_image_load_store and such as well.  Since we're doing this
pre-4.2, we have to add the dependency on ARB_shader_atomic_counters
as well.

VK-GL-CTS Issue: 2694
Components: OpenGL
Affects: KHR-GL33.pipeline_statistics_query_tests_ARB.functional_compute_shader_invocations

Change-Id: If37e0e10bed86281d07aed67394075844e88003d

3 years agoClarify depth/stencil resolve write access sync
Ricardo Garcia [Thu, 17 Dec 2020 10:42:00 +0000 (11:42 +0100)]
Clarify depth/stencil resolve write access sync

Add a comment reinforcing depth/stencil resolve operations need to be
synchronized using VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT despite sounding
counterintuitive, dispelling doubts about test correctness.

Change-Id: Ie5539c6e49ec61fab060ac9ef58dca73c1c2159c

3 years agoSupport GL 4.5 in the texture test utils
Alexander Galazin [Mon, 14 Dec 2020 12:37:20 +0000 (13:37 +0100)]
Support GL 4.5 in the texture test utils

Components: AOSP

Affects:
dEQP-GLES3*.functional.*

Change-Id: I7c22694d829a4aa982e2def4b0be1290f86293bb

3 years agoSupport GL 4.5 in the blend_equation_advanced tests
Alexander Galazin [Tue, 15 Dec 2020 08:20:04 +0000 (09:20 +0100)]
Support GL 4.5 in the blend_equation_advanced tests

Affects:
dEQP-GLES3*.functional.blend_equation_advanced

Components: Framework

Change-Id: I62ecf395c7b193dd118d8bebab1ba476b86b22b8

3 years agoSupport GL 4.5 in the 'negative' tests
Alexander Galazin [Mon, 14 Dec 2020 16:37:13 +0000 (17:37 +0100)]
Support GL 4.5 in the 'negative' tests

Affects:
dEQP-GLES3*.functional.*.negative.*

Components: AOSP

Change-Id: I7c58f9151e162769742d75a043d9f5202e72ed14

3 years agoSupport GL 4.5 in geometry/tesselation shader tests
Alexander Galazin [Mon, 14 Dec 2020 13:31:20 +0000 (14:31 +0100)]
Support GL 4.5 in geometry/tesselation shader tests

Components: AOSP

Affects:
dEQP-GLES3*.functional.shaders.*

Change-Id: Ia97075a0ad973307bc7b04d15e7efda0996c31e2

3 years agoSupport GL 4.5 context in the precision and draw tests
Alexander Galazin [Mon, 14 Dec 2020 11:51:26 +0000 (12:51 +0100)]
Support GL 4.5 context in the precision and draw tests

Affects:
dEQP-GLES3*.functional.shaders.builtin_functions.precision.*
dEQP-GLES3*.functional.draw_base_vertex.*

Components: AOSP

Change-Id: I8539b5b31bdbf206d89ef3dc1f74917f655a266b

3 years agoFirst steps towards running ES3.1 functional tests on GL4.5 drivers
Alexander Galazin [Mon, 14 Dec 2020 08:16:53 +0000 (09:16 +0100)]
First steps towards running ES3.1 functional tests on GL4.5 drivers

This commit creates a minimal necessary infastrcuture, e.g. the
package files, but doesn't make any functional changes to the tests.

Components: AOSP, OpenGL

Affects: dEQP-GLES31.*

Change-Id: I22c91224459d390377cdd6fbfc534522d958eb58

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master
Alexander Galazin [Sat, 19 Dec 2020 09:30:15 +0000 (10:30 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/master

Change-Id: Iad7afe96f143985ee22ed08108ea3d3565a5915f

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Alexander Galazin [Fri, 18 Dec 2020 16:43:18 +0000 (17:43 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: Icb5e7e25ae6236ae1fd13216514d4a414dfaed44

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Alexander Galazin [Fri, 18 Dec 2020 09:48:33 +0000 (10:48 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: Ie4a7bdf8b1e7b9579112a21a4dbefec8dd20687a

3 years agoRaise min CMake version to 3.10.2
Alexander Galazin [Fri, 1 Nov 2019 11:05:43 +0000 (12:05 +0100)]
Raise min CMake version to 3.10.2

Components: AOSP, Vulkan, OpenGL

Change-Id: I970fc57d8069d87269660b2ccef9df035e524693

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Alexander Galazin [Fri, 18 Dec 2020 08:49:46 +0000 (09:49 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3

Change-Id: Ib199c6c60ed14c4549a90ad19dcb20a7a5ad1a27

3 years agoFix Renderpass storeOp synchronization hazards
Jeremy Gebben [Thu, 10 Dec 2020 20:20:09 +0000 (13:20 -0700)]
Fix Renderpass storeOp synchronization hazards

Several multisample test groups create Renderpasses where the
first subpass writes to a color attachment, followed by N
subpasses that use the same attachment as an input attachment.

The spec says: "The store operation for each sample in an attachment
happens-after any recorded command which accesses the sample in
the last subpass where the attachment is used."

To avoid SYNC-HAZARD-WRITE-RACING-WRITE or SYNC-HAZARD-WRITE-RACING-READ
errors, the Nth subpass must depend on all prior subpasses.

VK-GL-CTS Issue: 2700

Affects Tests:
dEQP-VK.pipeline.multisample.min_sample_shading.*
dEQP-VK.pipeline.multisample_shader_builtin.*
dEQP-VK.renderpass.suballocation.multisample.*
dEQP-VK.renderpass2.suballocation.multisample.*

Components: Vulkan

Change-Id: I48c1ad2c1f05010ac31e45c513e1d4920216fe52

3 years agoFix back-to-back transfer command synchronization hazards
Jeremy Gebben [Wed, 9 Dec 2020 15:12:25 +0000 (08:12 -0700)]
Fix back-to-back transfer command synchronization hazards

If 2 transfer commands use the same memory, they need a pipeline barrier
between them.

VK-GL-CTS Issue: 2693

Affects Tests:
dEQP-VK.api.image_clearing.core.clear_depth_stencil_image.remaining_array_layers_twostep.*
dEQP-VK.pipeline.timestamp.transfer_tests.*
dEQP-VK.ycbcr.copy_dimensions.*

Components: Vulkan

Change-Id: I91bf74c63275f6e3dd6c383f59d1f4e9c1aa0982

3 years agoSimplify code for subgroup builtin mask tests
Graeme Leese [Thu, 10 Dec 2020 11:49:36 +0000 (11:49 +0000)]
Simplify code for subgroup builtin mask tests

A lot of code was being duplicated, which is now shared. The shaders
were calculating bitCount by looping over the bits, which is less
efficient than using the intrinsic.

The new code is shorter and should be easier to understand and faster to
execute, but there is no functional change.

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

Change-Id: I6ef0d607423aa5cccce17aefeaac8cc1055ec488

3 years agoFix end of Renderpass synchronization hazards
Jeremy Gebben [Wed, 9 Dec 2020 20:38:13 +0000 (13:38 -0700)]
Fix end of Renderpass synchronization hazards

The implicit subpass dependency at the end of a renderpass has
dstStageMask set to VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT, which
prevents forming a dependency chain with specific pipeline stages.

To synchronize commands with vkCmdEndRenderPass, use either an
explict external subpass dependency or a pipeline barrier with
srcStageMask set to VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT.

VK-GL-CTS Issue: 2695

Affected tests:

dEQP-VK.pipeline.multisample.sample_locations_ext.*
dEQP-VK.renderpass.suballocation.attachment_sparse_filling.*
dEQP-VK.renderpass.suballocation.subpass_dependencies.*
dEQP-VK.renderpass2.suballocation.attachment_sparse_filling.*
dEQP-VK.renderpass2.suballocation.subpass_dependencies.*

Components: Vulkan

Change-Id: I1b33c128dfdc54705f953f044db9acf1ff6e63e9

3 years agoFix additional RenderPass loadOp/stencilLoadOp sync hazards.
Jeremy Gebben [Mon, 7 Dec 2020 21:06:48 +0000 (14:06 -0700)]
Fix additional RenderPass loadOp/stencilLoadOp sync hazards.

Make sure test cases that use VK_LOAD_OP_LOAD have a barrier
with VK_ACCESS_INPUT_ATTACHMENT_READ_BIT or
VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT in the dstAccessMask
before the RenderPass.

VK-GL-CTS Issue: 2690

Affected tests:
dEQP-VK.conditional_rendering.draw_clear.*
dEQP-VK.dynamic_state.ds_state.*
dEQP-VK.pipeline.framebuffer_attachment.*
dEQP-VK.descriptor_indexing.*

Components: Vulkan

Change-Id: I8e6df6f6aa3f63c5ad6b7396d5d395d12ad52201

3 years agoFix RenderPass stencilLoadOp synchronization hazards.
Jeremy Gebben [Thu, 5 Nov 2020 00:12:27 +0000 (17:12 -0700)]
Fix RenderPass stencilLoadOp synchronization hazards.

Fix synchronization validation errors similar to:

"vkCmdBeginRenderPass: Hazard READ_AFTER_WRITE in subpass 0 for
attachment 1 aspect depth during load with loadOp VK_ATTACHMENT_LOAD_OP_LOAD.

Access info (usage: SYNC_EARLY_FRAGMENT_TESTS_DEPTH_STENCIL_ATTACHMENT_READ,
prior_usage: SYNC_IMAGE_LAYOUT_TRANSITION, write_barriers: ...)"

Load operations for attachments with a depth/stencil format execute in
the VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT pipeline stage.

LOAD_OP_LOAD requires VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT.

VK-GL-CTS Issue: 2690

Affected tests:
dEQP-VK.dynamic_state.rs_state.*
dEQP-VK.geometry.layered.*
dEQP-VK.multiview.renderpass2.depth.*

Components: Vulkan

Change-Id: I9400a50b4ed4c34cc879d1d062ac72d7ae770662

3 years agoFix RenderPass loadOp synchronization hazards.
Jeremy Gebben [Tue, 3 Nov 2020 16:18:14 +0000 (09:18 -0700)]
Fix RenderPass loadOp synchronization hazards.

Fix synchronization validation errors similar to:

"vkCmdBeginRenderPass: Hazard READ_AFTER_WRITE in subpass 0 for
attachment 0 aspect color during load with loadOp
VK_ATTACHMENT_LOAD_OP_LOAD.

Access info (usage: SYNC_COLOR_ATTACHMENT_OUTPUT_COLOR_ATTACHMENT_READ,
prior_usage: SYNC_IMAGE_LAYOUT_TRANSITION, write_barriers: ....)"

VK_ATTACHMENT_LOAD_OP_LOAD requires VK_ACCESS_COLOR_ATTACHMENT_READ_BIT.

VK_ATTACHMENT_LOAD_OP_DONT_CARE and VK_ATTACHMENT_LOAD_OP_CLEAR require
VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT.

VK-GL-CTS Issue: 2690

Affected Tests:
dEQP-VK.binding_model.descriptorset_random.*
dEQP-VK.binding_model.descriptor_update.samplerless.*
dEQP-VK.renderpass.suballocation.subpass_dependencies.*
dEQP-VK.renderpass2.suballocation.subpass_dependencies.*

Components: Vulkan

Change-Id: Ieff35623329e4993f3745dbb65e6996edd422c31

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Alexander Galazin [Fri, 18 Dec 2020 08:06:05 +0000 (09:06 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2

Change-Id: I2321a93eaa56abbe87c87680aedd8ceb76b645e1

3 years agoTests for GLES3 number parsing
Mikko Tiusanen [Wed, 4 Nov 2020 08:24:34 +0000 (10:24 +0200)]
Tests for GLES3 number parsing

Added tests for number parsing in GLES3.
Includes new tests for unsigned int literals and float parsing tests
imported from Khronos WebGL Conformance Tests.

New tests:

KHR-GLES3.number_parsing.*

Components: OpenGL

VK-GL-CTS issue: 2176

Change-Id: I96c0d14431b5dd5867808319f08c5a614f40d2e0

3 years agoMerge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-1.2.1
Alexander Galazin [Thu, 17 Dec 2020 15:03:09 +0000 (16:03 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-1.2.1

Change-Id: If26f7fae4e13aff58e233680c755db99879644b3

3 years agoMerge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1
Alexander Galazin [Thu, 17 Dec 2020 14:10:25 +0000 (15:10 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1

Change-Id: I3ed8d5f4de16750c664e4c8908b8b971f48f7593

3 years agoTests for multiple clears within render pass
Mikko Tiusanen [Mon, 12 Oct 2020 14:11:45 +0000 (17:11 +0300)]
Tests for multiple clears within render pass

Adds tests that perform multiple color/depth buffer clears within one
render pass.

New tests:

dEQP-VK.draw.multiple_clears_within_render_pass.*

Component: Vulkan

VK-GL-CTS issue: 2595

Change-Id: Ica79be44cfd540e83dc5c900a8cfd4e0327405a4

3 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.1.6
Alexander Galazin [Thu, 17 Dec 2020 13:21:47 +0000 (14:21 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.1.6

Change-Id: I004160d9169fcb42a928c10d76b5355dd671e5a8

3 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Alexander Galazin [Thu, 17 Dec 2020 13:20:59 +0000 (14:20 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0

Change-Id: Ie1ff8e21a9cffae5e0616204ff3416e490ca0637

3 years agoEnable nullDescriptor for AS ray query tests
Ricardo Garcia [Fri, 30 Oct 2020 15:41:04 +0000 (16:41 +0100)]
Enable nullDescriptor for AS ray query tests

Ray query null acceleration structure tests depend on the nullDescriptor
feature, which is not enabled in the default device. The tests need
custom devices, which implies minor design changes all over the ray
query builtin and advanced tests, due to these tests passing the global
context around and obtaining the test device from it in several
different places.

Affected tests:
dEQP-VK.ray_query.builtin.*
dEQP-VK.ray_query.advanced.*

Components: Vulkan
VK-GL-CTS issue: 2635

Change-Id: Ia5215c625b06c590d9b293e5c4d55b53c98a3e7d

3 years agoAvoid advertising disabled robustness2 features
Ricardo Garcia [Fri, 6 Nov 2020 12:14:27 +0000 (13:14 +0100)]
Avoid advertising disabled robustness2 features

Make sure getRobustness2FeaturesEXT does not advertise a feature as
enabled when, in fact, the feature has been disabled when creating the
default test device in the context. This is consistent with the behavior
that was in place for robustBufferAccess.

In addition, disable image robustness in the default device, to be
consistent with the existing behavior for robustness2 features and
robustBufferAccess.

This means robustness2 and image robustness tests needed to be modified
to stop relying on feature checks from the context, like using
getRobustness2FeaturesEXT, because those will now be reported as not
enabled. In other words, feature getters from the context report
features that are *enabled* on the default device, and not features that
are merely available.

In addition, make robustness2 and image robustness tests use separate
devices when enabling image robustness or robustness2 features, so as to
run image robustness tests without any robustness2 feature.

In addition, require and enable the scalar block layout feature, which
is used to compile every shader in this test group.

Affected tests:
dEQP-VK.robustness.robustness2.*
dEQP-VK.robustness.image_robustness.*

Components: Vulkan
VK-GL-CTS issue: 2634
VK-GL-CTS issue: 2643

Change-Id: I641c0f6f659a89bd12a36da175358d3edc2dfeae
(cherry picked from commit cea5003e0f519dff9d9ce6805a4994ebfde5e4f2)

3 years agoTest dynamic indexing of AS
Piotr Byszewski [Wed, 30 Sep 2020 11:05:34 +0000 (13:05 +0200)]
Test dynamic indexing of AS

Components: Vulkan

VK-GL-CTS issue: 2577

New tests:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.dynamic_indexing.dynamic_indexing
dEQP-VK.ray_query.acceleration_structures.dynamic_indexing.dynamic_indexing

Affects:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.*
dEQP-VK.ray_query.acceleration_structures.*

Change-Id: Icdb3e7fe1aef34199fa3fecb34f0615531df72c0

3 years agoTest dynamic indexing of ray queries
Ricardo Garcia [Tue, 10 Nov 2020 11:06:15 +0000 (12:06 +0100)]
Test dynamic indexing of ray queries

Create a new test that indexes ray queries in an array using an index
that is dynamic, changing for each invocation with different values
obtained from an SSBO.

New tests:
dEQP-VK.ray_query.misc.dynamic_indexing

Components: Vulkan
VK-GL-CTS issue: 2587

Change-Id: I2e53061ab606a86eb9985ce89b2fd44807aa3b45

3 years agoTest procedural geometry with complex BB sets
Piotr Byszewski [Thu, 5 Nov 2020 08:06:17 +0000 (09:06 +0100)]
Test procedural geometry with complex BB sets

Components: Vulkan

VK-GL-CTS issue: 2594

New tests:
dEQP-VK.ray_*.procedural_geometry.*

Change-Id: Ib720452819c1139aca2bcf653333e6d423e1c139

3 years agoBasic tests for VK_EXT_conservative_rasterization
Boris Zanin [Fri, 26 Jul 2019 10:52:46 +0000 (12:52 +0200)]
Basic tests for VK_EXT_conservative_rasterization

Implementation of basic tests for conservative rasterization.

Add tests:
 * dEQP-VK.rasterization.conservative.*

Affects tests:
 * dEQP-VK.rasterization.*

Components: vulkan

VK-GL-CTS issue: 1676

Change-Id: I5088f0f0eb7e3f44e36b88ba0c9ff74552b93015
(cherry picked from commit 004fb6b7d0803c58f6883c2e7771597b3e200b48)

3 years agoAdd test for image copy special case
Ari Suonpaa [Wed, 2 Dec 2020 10:40:40 +0000 (12:40 +0200)]
Add test for image copy special case

Added a specific image copy test to match a reported issue.

VK-GL-CTS Issue: 2678

New tests:

dEQP-VK.api.copy_and_blit.*.image_to_image.simple_tests.partial_image_npot_diff_format_clear

Components: Vulkan
Change-Id: If6b35a2b62b6ecb44827999d6b4116d57e7a584a