Matthew Netsch [Fri, 2 Dec 2022 20:34:16 +0000 (20:34 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: I324c55e03130e091a01cefb3f766bb37f03bae9a
Matthew Netsch [Fri, 2 Dec 2022 19:56:58 +0000 (19:56 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: Ie932aa95ec8eee342a4e129e405b22b7a10a0a89
Ricardo Garcia [Tue, 15 Nov 2022 14:24:17 +0000 (15:24 +0100)]
Tweak grid size in vertex shader shader render tests
This fixes several texture function failures with Zink on RADV.
Affects (at least):
dEQP-GLES3.functional.shaders.texture_functions.*
Components: AOSP
VK-GL-CTS issue: 4108
Change-Id: I7da1f1d7ba40b7bfff8f0adbc8836699c5578e8b
Matthew Netsch [Fri, 11 Nov 2022 20:03:05 +0000 (20:03 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: If4242bc03c9f9bbeeb02f48f261e01287eaf89b3
Matthew Netsch [Fri, 11 Nov 2022 18:28:55 +0000 (18:28 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: I5a32859811153ca30e40a37698812967d74e5d6f
Alex Lan [Wed, 26 Oct 2022 14:01:29 +0000 (22:01 +0800)]
Fix PolygonOffsetClampMinMax test fail when using 24bit depth buffer
If using 24bit depth buffer to implement GL_DEPTH_COMPONENT16,
the polygon-offset value generated by glPolygonOffset isn't larger
or smaller than clamp value specified by glPolygonOffsetClampEXT.
So adjust units value based on depth buffer bits when calling
glPolygonOffset/glPolygonOffsetClampEXT.
Affects:
KHR-GLES31.core.polygon_offset_clamp.*
Components: OpenGL
Change-Id: If7a5da4b7b62d2a590ac03ad92832d0daf3e5f47
Matthew Netsch [Fri, 14 Oct 2022 18:08:18 +0000 (18:08 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: I73e7f3427fa5bd8dfdc68f0a7d70eedaf8a9ce0b
Matthew Netsch [Fri, 14 Oct 2022 18:08:08 +0000 (18:08 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: I748b073861754d03f130e3a2bfa716a62eaff9c5
Matthew Netsch [Fri, 14 Oct 2022 16:22:49 +0000 (16:22 +0000)]
Fixes zlib dependency
Components: Framework
Change-Id: I70c130a367afa7d3eb2cbd81dd1662331c6723b8
(cherry picked from commit
188db4918e48556a330814d9e09ec305e4497227)
(cherry picked from commit
dfa2928ab87d8d7a05df918ec18833223519de14)
(cherry picked from commit
740a7028359cd99c30a96de911afb8062a224d05)
Matthew Netsch [Thu, 15 Sep 2022 21:04:18 +0000 (21:04 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: I583b180f82fbb1c9af9a0ddec49f94c84785dc1f
Matthew Netsch [Thu, 15 Sep 2022 20:35:37 +0000 (20:35 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: Ie5909532e6b5af30e4e28702a5731ab3b7b4d0a3
Peter Kasting [Thu, 8 Sep 2022 19:00:54 +0000 (19:00 +0000)]
Fix build in C++20 mode.
* Compound assignments to volatiles are deprecated. Use non-compound
forms.
* Math between disparate enums is deprecated. Use constexprs.
* The full definition of a type T must be visible for code that
instantiates std::vector<T>. Reorder code to guarantee this.
Components: Framework
Bug: chromium:1284275
Change-Id: I75a99b5c09cc911f2312aabe85f49aadff84dc51
Matthew Netsch [Fri, 26 Aug 2022 16:56:32 +0000 (09:56 -0700)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: Ib61101e1c720a4f28429af20dba9554ad03dd94e
Matthew Netsch [Fri, 26 Aug 2022 15:23:22 +0000 (08:23 -0700)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: Ia00eca74b753f1f88ac794c6d3664a769cfc2c6f
ziga-lunarg [Mon, 25 Jul 2022 15:14:31 +0000 (17:14 +0200)]
Fix triangle strip adjacency tests vertex ordering
OpenGL got an update where the ordering of vertices captured
by transform feedback when GL_TRIANGLE_STRIP_ADJACENCY is used
can either match the old OpenGL ordering or the new Vulkan ordering
Components: OpenGL
VK-GL-CTS issue: 3671
Affected tests:
KHR-GLES31.core.geometry_shader.*
KHR-GLES32.core.geometry_shader.*
Change-Id: I7f75b357593429110cc4517d0852b5cf2f7bb8db
Antto Mäkinen [Fri, 17 Jun 2022 10:52:15 +0000 (13:52 +0300)]
Fix division by zero in glsBuiltinPrecisionTests
GLSL precision tests were using 1 / InverseSqrt(x) to calculate
reference values for square root. This is problematic when x = 0,
as it causes a division by zero.
VK-GL-CTS Issue: 3330
Affects:
dEQP-GLES3*.functional.shaders.builtin_functions.precision.*
Components: OpenGL ES
Change-Id: I199f16b2eeb66ab042f0bb1ab6b588246efeb6d5
Mika Väinölä [Mon, 26 Oct 2020 21:19:59 +0000 (23:19 +0200)]
Update Amber to fix Clang 11 build
Building Amber with Clang 11 failed due to -Werror and several
-Wsuggest-destructor-override warnings.
Affects: dEQP-VK.*
VK-GL-CTS issue: 2628
Change-Id: Ibae8dbc955d32bb50eb6f5c26cd62579bc6967dd
Alexander Galazin [Wed, 16 Sep 2020 07:12:43 +0000 (09:12 +0200)]
Update Amber
Components: Framework
Affects: dEQP-VK.*
Change-Id: I0bb5016b2ec063396cd797060e14d6de474b96af
Paul Thomson [Mon, 20 Jul 2020 15:00:08 +0000 (16:00 +0100)]
Update Amber to fix regression
Affects:
dEQP-VK.glsl.combined_operations.*
dEQP-VK.compute.basic.write_ssbo_array
dEQP-VK.draw.output_location.array.*
dEQP-VK.graphicsfuzz.*
dEQP-VK.pipeline.vertex_only.position_to_ssbo
dEQP-VK.rasterization.provoking_vertex.*
dEQP-VK.rasterization.line_continuity.*
dEQP-VK.spirv_assembly.*
dEQP-VK.texture.conversion.*
dEQP-VK.texture.multisample.*
dEQP-VK.texture.subgroup_lod.*
dEQP-VK.texture.texel_buffer.*
Components: Vulkan
VK-GL-CTS issue: 2443
Change-Id: I3c6ec1eb0ee8695468c54f95c210cc81b50a4f1a
Ari Suonpaa [Sat, 20 Jun 2020 07:27:41 +0000 (10:27 +0300)]
Add test for writing to an SSBO array
VK-GL-CTS Issue: 2285
New tests:
dEQP-VK.compute.basic.write_ssbo_array
Components: Vulkan
Change-Id: I6650aa1e087a5fb3c2bdad5eb3788b944faf996e
Mika Väinölä [Thu, 14 May 2020 19:50:16 +0000 (22:50 +0300)]
Add modfStruct comparison tests
Add tests for comparing the output of modf and modfStruct with 32-bit floats
and vectors as input. Update Amber and implement delegate for loading buffers
from files in AmberScript.
New tests:
dEQP-VK.spirv_assembly.instruction.*.float32.comparison_*.modfstruct*
Components: Vulkan
VK-GL-CTS issue: 1728
Change-Id: If2ee37779472be543038bae313792e2367051bdf
Alexander Galazin [Thu, 7 May 2020 14:16:08 +0000 (16:16 +0200)]
Fix Fedora 32 gcc/clang warnings
Component: AOSP, OpenGL, Vulkan
VK-GL-CTS issue: 2350
Affects:
KHR*direct_state_access.vertex_arrays*
KHR*core.arrays_of_arrays.sized_declarations_invalid*
dEQP-VK.geometry.*
Change-Id: I55680ac671d0610917d45f7187deec6e883dd6b7
Ricardo Garcia [Mon, 4 Apr 2022 08:14:57 +0000 (10:14 +0200)]
Fix warnings with clang and GCC
Affected tests:
No test result should be affected by these changes.
Components: OpenGL, Vulkan
VK-GL-CTS issue: 3602
Change-Id: If2eb0736d296add732aaff53c80a705cc306d7a3
Mika Väinölä [Wed, 10 Mar 2021 11:16:38 +0000 (13:16 +0200)]
GCC 11 build fixes
Some files used std::numeric_limits without including <limits> and
failed to compile.
Some dynamic casts and calls to AndroidHardwareBufferExternalApi::
getInstance() produced nonnull warnings. Suppress these by
wrapping them in if statements.
Update Amber to suppress some new uninitialized variable warnings.
This commit also removes implicit-fallthrough from the list of ignored
GCC warnings in check_build_sanity.py. All such warnings in the CTS
should be fixed by now and recent versions of Clang also support
this warning.
Affects: All Amber tests
VK-GL-CTS issue: 2842
Change-Id: Id0d4e583b5c3bfab7b4c91c1c04372bcd55bac37
Matthew Netsch [Thu, 21 Jul 2022 18:33:45 +0000 (18:33 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: If5b098a1abdb1dec8624c3aba47efb574258536b
Graeme Leese [Mon, 6 Jun 2022 14:00:35 +0000 (15:00 +0100)]
Backport CMake library change from master
Following the VKSC update the syntax used for CMake link libraries
includes a visibility specifier. Because CMake requires that all uses of
this command on a single target are consistent (either all with or all
without the specifier), having this mismatch between main and the
release branches creates an integration problem, so this backports that
part of the change. The qualifier added here is both the value used in
later changes and the default if nothing is specified, so the effect of
this change should be minimal.
Components: All (CMake build only)
Change-Id: I1c7e850d52de3cc0493a47bf36ad35bd55b05184
Matthew Netsch [Fri, 17 Jun 2022 02:19:19 +0000 (02:19 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: Ie06650ccb16867acefd03d8c053b2e4996f7bc53
Matthew Netsch [Thu, 16 Jun 2022 20:47:06 +0000 (13:47 -0700)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: I5eee40dacbbc0fd7b95c06a9e6f434f45ca8ecf9
Ari Suonpaa [Mon, 23 May 2022 04:53:17 +0000 (07:53 +0300)]
Fix signed integer overflow in framebuffer fetch tests
VK-GL-CTS Issue: 3473
Affects:
dEQP-GLES31.functional.shaders.framebuffer_fetch.framebuffer_format.*
Components: OpenGL ES
Change-Id: I5c971db231c9ea95b413df417e5cb2421aa857e1
Matthew Netsch [Thu, 9 Jun 2022 17:14:49 +0000 (17:14 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: Iea933cfe50d4538966618000204b04bc2f60ba1e
Matthew Netsch [Thu, 9 Jun 2022 16:42:55 +0000 (16:42 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: I5a907b609b2763a74587533edac269be72027909
Ari Suonpaa [Wed, 25 May 2022 12:11:11 +0000 (15:11 +0300)]
Fix signed integer overflow in random indirect draw tests
VK-GL-CTS Issue: 3331
Affects:
dEQP-GLES31.functional.draw_indirect.random.*
Components: OpenGL ES
Change-Id: I75a57a0ee14f00d049e0c27628017c86b7078174
Ari Suonpaa [Wed, 18 May 2022 11:33:13 +0000 (14:33 +0300)]
Fix signed integer overflow in random shader tests
VK-GL-CTS Issue: 3334
Affects:
dEQP-GLES3.functional.shaders.random.*
Components: OpenGL ES, Framework
Change-Id: I8a0ea222ba62c08180244d34adc0f4f0b5e4db9e
Thomas Spurden [Mon, 11 Apr 2022 13:00:17 +0000 (14:00 +0100)]
Allow not supporting separate depth/stencil with combined formats
Components: OpenGL
Affects: dEQP-GLES3.functional.fbo.*
Change-Id: I2eb2433921b3d8f7da30d5d546c07da46bebb343
Andy Candet [Sat, 16 Apr 2022 20:16:53 +0000 (21:16 +0100)]
Fix extension checks for EGL external image tests
Commit 2090c97 extended dEQP-EGL.functional.image.modify.* with new
actions to test sampling from an external image. The actions implement
getRequiredExtension, so they were likely intended to be skipped if
GL_OES_EGL_image_external is not available.
However, extension checks are only performed for actions invoked through
ImageFormatCase. These actions are invoked one level down the call
stack, through RenderTryAll.
The result is that 22 tests in dEQP-EGL.functional.image.modify.* fail
during shader compilation if the extension is not available.
This commit adds an extension check to RenderTryAll::invokeGLES. Actions
will be skipped if the check fails. This is probably what was intended
in the first place, since RenderTryAll ignores NotSupported results.
Affects: dEQP-EGL.functional.image.modify.*
Components: EGL
Change-Id: Id1106d69fbe71d39695fc32513d80d23f1e94b40
Matthew Netsch [Thu, 2 Jun 2022 20:51:45 +0000 (20:51 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: Ib621fd1a176f1921e3b12c8e9df7f51f552df695
Matthew Netsch [Thu, 2 Jun 2022 20:14:29 +0000 (20:14 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: I6edc6c1598e5a0e4d92c1e3d5aeb7baa1688c888
Ari Suonpaa [Wed, 18 May 2022 10:14:47 +0000 (13:14 +0300)]
Fix sample mask calculation
Sample mask calculation path was executed even when sample
was -1, causing a large number to be used for a shift. Now
a sample mask of zero is chosen instead.
VK-GL-CTS Issue: 3329
Affects:
dEQP-GLES31.functional.texture.multisample.*.sample_mask_and_alpha_to_coverage
Components: OpenGL ES
Change-Id: Ie5600ead5a5b0228a3ed255d7e4cc49a314a7ba6
Ari Suonpaa [Mon, 16 May 2022 12:17:47 +0000 (15:17 +0300)]
Fix division by zero
Fixed format threshold calculation caused division by zero
whenever less than four channels were used by the format.
This change uses threshold zero for the empty channels.
VK-GL-CTS Issue: 3332
Affects:
dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.*
Components: OpenGL ES
Change-Id: Ib6c8ee6ee0fa82d1f0514b639938c61ed7762381
Erik Faye-Lund [Thu, 24 Mar 2022 15:23:45 +0000 (16:23 +0100)]
allow non-preferred line interpolation for gles
The OpenGL ES 3.2 spec, section 13.6.2.1 ("Wide Lines") says the
following:
Change-Id: I1cff239a9cc712b9e8677966f7b3b1adfe72499a
---8<---
The preferred method of attribute interpolation for a wide line is to
generate the same attribute values for all fragments in the row or
column described above, as if the adjusted line were used for
interpolation and those values replicated to the other fragments,
except for gl_FragCoord which is interpolated as usual. An
implementation may instead interpolate each fragment according to the
formula in "Basic Line Segment Rasterization", using the original
line segment endpoints.
---8<---
However, the code that verified the interpolation only checked against
the preferred interpolation.
Luckily, we have code that does the right checking. By marking the ES2
and ES3 line-rasterization tests with a bit to allow this, we can hook
this up as appropriate.
Components: OpenGL ES, Framework
VK-GL-CTS public Issue: 273
Affected Tests:
dEQP-GLES2.functional.rasterization.interpolation.*_wide
dEQP-GLES3.functional.rasterization.interpolation.line_wide
dEQP-GLES3.functional.rasterization.fbo.rbo_singlesample.interpolation.lines_wide
dEQP-GLES3.functional.rasterization.fbo.texture_2d.interpolation.lines_wide
Change-Id: Iacd493416dc945711410eb08f73f9e234b78ec61
Matthew Netsch [Mon, 28 Mar 2022 14:18:47 +0000 (14:18 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: Ie3bbc30b0ff206922ea5c2640467cf5b6dc219ba
Matthew Netsch [Mon, 28 Mar 2022 14:18:36 +0000 (14:18 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: I52ff340b949967f446fd61423f6294f09106e492
Peter Kohaut [Mon, 28 Mar 2022 11:53:49 +0000 (13:53 +0200)]
Fix Zlib depedency
Use newer version of Zlib as older is no longer available to download from the zlib.net page
Components: Framework
Affects:
None
VK-GL-CTS Issue: 3587
Change-Id: Ie166dc897b0d1318c1ae73434bfa19687b579691
(cherry picked from commit
ec1804831b654ac55bd2a7a5dd27a556afe05030)
Matthew Netsch [Mon, 14 Mar 2022 14:08:56 +0000 (14:08 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: I9dbfb6be27277508e01e4d79583afc5f970353e2
Matthew Netsch [Thu, 10 Mar 2022 21:58:48 +0000 (21:58 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: I216b8bf396d0ff5d4ceaa890d5b4dd9283c73040
Thomas Spurden [Tue, 15 Feb 2022 11:12:00 +0000 (11:12 +0000)]
Update FBO tests to handle separate depth stencil in ES3
Extends FBO blit tests as they did not have cases for separate depth
stencil at all (as they are ES3 only).
Components: OpenGL
Affects: dEQP-GLES3.functional.fbo.*
Change-Id: Icc6dcd047db3b9c29baed0c5691766fb30242e31
Ari Suonpaa [Mon, 17 Jan 2022 05:46:33 +0000 (07:46 +0200)]
Fix build issues with older NDKs
EGL AHB tests were relying on using NDK version higher than
what was required in readme. With this change the same tests
can be compiled with and older NDK.
Now AHardwareBuffer_isSupported function is only used if available,
removing a requirement for API version 29.
Runtime version checks were also restored to make sure the
device supports the AHB API version used during compile time.
VK-GL-CTS Issue: 3443
Affects:
dEQP-EGL.functional.image.*android_native*
Components: EGL, Framework
Change-Id: I0839070dfb0152c3d5d27921c806ee7c00b96e9a
Matthew Netsch [Fri, 14 Jan 2022 00:27:33 +0000 (00:27 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: I528b855678ff57681aae956eda0d05e267a1ebcf
Matthew Netsch [Thu, 13 Jan 2022 22:25:39 +0000 (22:25 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.6 into vk-gl-cts/opengl-es-cts-3.2.7
Change-Id: Icdb26f1240a661c1021c0da146ca4c02d0ab086c
Jari Komppa [Tue, 4 Jan 2022 14:53:26 +0000 (16:53 +0200)]
Avoid division by zero in calculateThreshold
The es31fCopyImageTests.cpp calculateThreshold function was written in a
too clever way, leading to division by zero in cases where texture
format did not include all channels.
Affects:
dEQP-GLES31.functional.copy_image.*_renderbuffer
Components: OpenGL
VK-GL-CTS issue: 3328
Change-Id: Iaf6b0d80f7427fee3567365603ba8dbd375f206d
Matthew Netsch [Fri, 7 Jan 2022 05:29:58 +0000 (00:29 -0500)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: If3b065dc955b18faf0416d7aaf2535e833c88631
Yuly Novikov [Tue, 30 Nov 2021 00:38:44 +0000 (19:38 -0500)]
Fix MSVC C++17 build
"std::unary_function" is deprecated in C++11 and removed in C++17
Components: OpenGL
Change-Id: I96df678a518ab439e6e6d09e57bde90a2a034552
Tapani Pälli [Fri, 26 Nov 2021 08:30:37 +0000 (10:30 +0200)]
GCC 11 build fixes for opengl-es-cts-3.2.7 branch
Add missing limits header to misc files to fix compilation.
Components: Vulkan
VK-GL-CTS issue: 3365
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I8d39b4fb61befba08445aa2085b1bbae674983f4
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
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
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
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
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
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
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
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
Matthew Netsch [Thu, 9 Dec 2021 23:16:34 +0000 (23:16 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/opengl-es-cts-3.2.8
Change-Id: Id1b139246ddad0322fbf5819ddbe397c1e721cd7
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
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
Matthew Netsch [Mon, 6 Dec 2021 23:09:47 +0000 (18:09 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master
Change-Id: Ife6b1f3d1cf99c215645df4a590bfa1e4ed808f4
Iago Toral Quiroga [Mon, 22 Nov 2021 07:29:50 +0000 (08:29 +0100)]
Allow rounding error when reading back Z buffer
The early fragment test produces Z values <= 0.5 and uses a shader
to write 0.75 that it expects to be ignored due to early fragment
tests, which it verifies by reading back the Z buffer and testing
that all values are <= 0.5.
On our platform, we observe that on storing 0.5 we retrieve
0.500008, which makes us fail the test incorrectly. Fix this
by adding a small room for rounding error, like we do for
other verification paths in these tests.
While we are doing this, lower the tolerance admited for
the late fragment test case as well.
Components: Vulkan
VK-GL-CTS Issue: 3340
Affects:
dEQP-VK.fragment_operations.early_fragment.discard_early_fragment_tests_depth
dEQP-VK.fragment_operations.early_fragment.discard_no_early_fragment_tests_depth
Change-Id: I8e1782b81d0e74a4a5af3e3cac40c9679f543ac6
Jari Komppa [Mon, 15 Nov 2021 08:25:36 +0000 (10:25 +0200)]
Fix amber vs cts device feature requirements
This change unifies the device requirements between cts and amber for
the affected tests.
Affects:
dEQP-VK.glsl.builtin.precision_fp16_storage16b.*
Components: Vulkan
VK-GL-CTS issue: 3304
Change-Id: I93f840751b40d145f89f847612e36733a18ac971
Piotr Byszewski [Mon, 22 Nov 2021 14:38:35 +0000 (15:38 +0100)]
Fix extended_dynamic_state tests
On vulkan-cts-1.2.8 branch extended_dynamic_state tests were
extended compared to the same group but in vulkan-cts-1.2.6 branch
(new tests were added). After updates to vulkan-cts-1.2.6 were
merged back to vulkan-cts-1.2.8 some of those new tests started
to fail as they did not have required changes.
This change makes sure that triangle strips are used in
the new tests to.
Components: Vulkan
VK-GL-CTS issue: 3327
Affects:
dEQP-VK.pipeline.extended_dynamic_state.*
Change-Id: I4fc19e40f6938d39be4428e8d9d98db4a74c0a5d
Matthew Netsch [Fri, 3 Dec 2021 22:20:44 +0000 (17:20 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Change-Id: I32494f04eda888304de0c56aec916eaa9f9ad011
Mika Väinölä [Tue, 30 Nov 2021 11:13:52 +0000 (13:13 +0200)]
Suppress GCC 11 conversion warning
On GCC 11 with UBSan enabled deHalfIsIEEENaN produces warnings due to
right shift promoting the result of an expression to an int, which is
then assigned to a deUint16.
Components: Framework
VK-GL-CTS issue: 3371
Change-Id: I48526b61ead69ee14b3253fa29737499253e62bc
Arkadiusz Sarwa [Wed, 17 Nov 2021 15:43:24 +0000 (16:43 +0100)]
Fix allocation of system memory.
Allocation of system memory which have been used as reference data can fail.
VK-GL-CTS issue: 3319
Components: Vulkan
Affects:
dEQP-VK.reconvergence.*
Change-Id: Icf9e6a2ad15912109aee2b6ea693a17650579087
Piotr Byszewski [Wed, 13 Oct 2021 12:17:14 +0000 (14:17 +0200)]
Generate inl files at build time
Inl files are no longer checked into the repo instead they are
generation at build time.
VK-GL-CTS issue: 3197
Components: Framework, Vulkan
Affects:
dEQP-VK.*
Change-Id: I526ed3d8dc8cc54860e44937a5048e499248a3c6
Piotr Byszewski [Tue, 19 Oct 2021 09:19:58 +0000 (11:19 +0200)]
Add Vulkan-Docs to fetch sources
Header files that are used to generate inl files are no longer
checked into the repo. Headers are now generated in Vulkan-Docs
which are now fetched from the gitlab. Generation is done
by gen_framework.py.
VK-GL-CTS issue: 3197
Components: Framework, Vulkan
Affects:
dEQP-VK.*
Change-Id: I4291848910b03180d4dc5514f8d8e5943c36e9b2
Matthew Netsch [Fri, 3 Dec 2021 19:36:13 +0000 (19:36 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I595a859be296c7f35cca35d7aa70278434ff8715
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
(cherry picked from commit
39c99a7ece4b6618cde30c6c621bd3036801bd4b)
Mohd Faisal [Mon, 22 Nov 2021 14:58:37 +0000 (14:58 +0000)]
Fix use a device with protected memory enabled
Test is trying to allocate memory from protected memory heap using
default device which doesn't have protected memory enabled. Change
checks if the protected memory supported, if it is create a custom
device with protected memory enabled.
Affects:
dEQP-VK.memory.mapping.*.full.variable.implicit_unmap
Components: Vulkan
VK-GL-CTS issue: 3292
Change-Id: I74897e3dd7f1cada0044036ba27ad8764754ed23
YiHsing Shen [Tue, 9 Nov 2021 02:03:40 +0000 (02:03 +0000)]
Throttling CTS producing frame speed
CTS checks the present time of the frame 6 frames ago. However, if
the default buffer count of BufferQueue is more than 7, CTS could
produce frames continuously in a short time. In this case, the frame
6 frames ago might be not presented yet then CTS fails. To prevent
this situation, CTS produces frames at the speed according to
compositeInterval.
Component: EGL
Affected tests:
dEQP-EGL.functional.get_frame_timestamps.*
Change-Id: I1ac15974a6c4147ee2546ad21dea1fb3e6bf38f9
Matthew Netsch [Fri, 3 Dec 2021 16:56:42 +0000 (16:56 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: Id6db90adac07dce6a8806cf1175547fbee2cd482
Matthew Netsch [Fri, 3 Dec 2021 16:54:49 +0000 (11:54 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: Idca0d19e2d98e5b2045c43588c24220a87eb1fa8
Mika Väinölä [Wed, 10 Mar 2021 11:16:38 +0000 (13:16 +0200)]
GCC 11 build fixes
Some files used std::numeric_limits without including <limits> and
failed to compile.
VK-GL-CTS issue: 2842
Change-Id: I5bd290f9c312a30c2fcb223307c7b5c785a0fa92
(cherry picked from commit
c686fd7ddf13d9ec51c84aea044d36ef3dd69c68)
Matthew Netsch [Fri, 3 Dec 2021 16:51:10 +0000 (11:51 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I0adccdf3f29176238bd4ca92fe8c9aa380986f43
Tomasz Gregorek [Fri, 29 Oct 2021 08:01:54 +0000 (03:01 -0500)]
Relax protected heap allocation tests - continuation
Some implementations have limitations on protected heap
allocations, and these limitations cannot be queried
using the Vulkan API. This change allows an out-of-memory
to happen after a certain number of allocations to
compensate that.
Fix protected memory allocation to be done on small
allocation chunks and ignore allocation failures
if there is at least 80 of concurrent allocations
at a time.
VK-GL-CTS issue: 3257
Affects:
dEQP-VK.memory.allocation.random.*
Components: Vulkan
Change-Id: I32ed020195ff468de468bbd8527dec1d7f0db183
Mika Väinölä [Wed, 10 Mar 2021 11:16:38 +0000 (13:16 +0200)]
GCC 11 build fixes
Some files used std::numeric_limits without including <limits> and
failed to compile.
VK-GL-CTS issue: 2842
Change-Id: I5bd290f9c312a30c2fcb223307c7b5c785a0fa92
Ilkka Saarelainen [Thu, 18 Nov 2021 06:31:30 +0000 (08:31 +0200)]
Add missing feature check to MS copy tests
Some of the multisample copy and resolve tests require fragmentStoresAndAtomics
feature, but the feature is not checked in "checkSupport" function.
This CL adds the feature check for those tests.
Affects:
dEQP-VK.api.copy_and_blit.*.resolve_image.*
Components: Vulkan
VK-GL-CTS issue: 3317
Change-Id: I7dba8b9f1e8090416a00ade6cd4e0acaf9e43e68
Jesse Archer [Tue, 30 Nov 2021 18:11:29 +0000 (10:11 -0800)]
Update Android API and permissions for OpenGL
Remove the popups asking for write permissions and to check
for updates due to using an older Android API version when
running OpenGL and OpenGL ES CTS on Android.
Update the GL&ES Android manifest to include recent changes made
to the Vulkan Android manifest:
Remove <uses-sdk ...> from AndroidManifest.xml. It is already added in
build_apk.py. Update the instructions in external/openglcts/README.md
to add "-g" to the ADB install command.
Adds foreground permissions to be consistent with Vulkan.
Changes are from these commits modifying package/AndroidManifest.xml:
6a23a69a78d940661f29de84b68a17f800014cea
358348221857f3d518bbb56f40fd8c9f7dd37bf0
Components: Android, Framework
Change-Id: I014456120422ee419c4bd7af5b0b6db5ab54315d
Antto Mäkinen [Thu, 25 Nov 2021 14:00:00 +0000 (16:00 +0200)]
Test no-op image layout transitions in VK_KHR_synchronization2
VK_KHR_synchronization2 allows applications to specify
oldLayout==newLayout in image barriers to skip the layout transition.
It's also allowed when oldLayout and newLayout are both UNDEFINED even
though the normal behaviour for UNDEFINED -> ANYTHING is to perform
a discard.
This commit adds a test which ensures that image contents are preserved
when doing a transition like this.
VK-GL-CTS issue: 3045
New Tests:
dEQP-VK.synchronization2.layout_transition.no_op
Components: Vulkan
Change-Id: I022ca662ad50e910d7813713e591f2f6f9600d1f
Antto Mäkinen [Wed, 27 Oct 2021 08:33:35 +0000 (11:33 +0300)]
Ensure that compute shaders have a subgroup size that is uniform in command scope
If the pipeline was created with the VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT
flag the SubgroupSize may vary in the shader stage but it must be uniform with command scope.
VK-GL-CTS issue: 3036
New Tests:
dEQP-VK.subgroups.multiple_dispatches.uniform_subgroup_size
Components: Vulkan
Change-Id: I55a082af6e1b325be7b29c50d49bcb822d81c33e
Matthew Netsch [Fri, 3 Dec 2021 05:02:41 +0000 (05:02 +0000)]
Merge "Merge vk-gl-cts/dev/VK_ARM_rasterization_order_attachment_access into vk-gl-cts/master"
Juha Heiskanen [Fri, 12 Nov 2021 13:09:02 +0000 (15:09 +0200)]
Missing coverage for vkCmdCopyQueryPoolResults
Cover stride 0 and query count 1 for vkCmdCopyQueryPoolResult.
Components: Vulkan
VK-GL-CTS Issue: 3286
New tests: dEQP-VK.query_pool.occlusion_query.*stride_0_*
Change-Id: I033acd4927f3de45ce7584c610c73e33ac9c7a16
Jari Komppa [Tue, 16 Nov 2021 13:17:58 +0000 (15:17 +0200)]
Add suite of div by zero tests
This change adds a amber tests that execute various explicit and
implicit division by zero operations, which should not crash or fail the
rendering operation.
New test:
dEQP-VK.glsl.crash_test.divbyzero_frag
dEQP-VK.glsl.crash_test.divbyzero_comp
Components: Vulkan
VK-GL-CTS issue: 869
Change-Id: I7b180805d85461a536252d71a80151d9a626f665
Ari Suonpaa [Fri, 19 Nov 2021 11:47:20 +0000 (13:47 +0200)]
Enable packed formats for border swizzle tests
Packed formats were previously commented out in
border swizzle tests. A small modification to the
random clear color code allowed to enable these
formats.
VK-GL-CTS Issue: 3253
New tests:
dEQP-VK.pipeline.sampler.border_swizzle.*pack*
Components: Vulkan
Change-Id: I7c1fa3fd08b6193309e5b723726464362316540b
Piotr Byszewski [Thu, 18 Nov 2021 09:42:23 +0000 (10:42 +0100)]
Add portability_subset to extensions_data.txt
With this change VK_KHR_portability_subset extension
is being recognized as permitted Vulkan extension.
Components: Vulkan
VK-GL-CTS issue: 3268, 2879
Affects:
dEQP-VK.info.device_extensions
Change-Id: Iec9a9bbae684cd83eb13cb8cadb9eac8a853df4f
Lionel Landwerlin [Tue, 16 Nov 2021 10:17:19 +0000 (12:17 +0200)]
Verify that timeline semaphores cannot import/export SYNC_FD
Component: Vulkan
Affects: dEQP-VK.api.external.semaphore.*.info*
Change-Id: I17dd8e0fd172cffc785642b8d7b3f93cdd966e1b
Piotr Byszewski [Wed, 24 Nov 2021 09:52:48 +0000 (10:52 +0100)]
Execute FDM tests with dynamic rendering
VK_EXT_fragment_density_map tests are also executed
using dynamic rendering.
Affects:
dEQP-VK.dynamic_rendering.fragment_density_map.*
dEQP-VK.renderpass*.fragment_density_map.*
Components: Vulkan
VK-GL-CTS issue: 3246
Change-Id: I0603b40876ffdfa19ccdd0a4f10d23ffa079fe71
Piotr Byszewski [Fri, 19 Nov 2021 08:56:55 +0000 (09:56 +0100)]
Execute FDM tests with legacy renderpass
VK_EXT_fragment_density_map tests used only renderpass2,
this change executes them also with legacy renderpass.
Additionally this change removes duplication of
depth_stencil_resolve and multiple_subpasses_multiple_command_buffers
groups that were added to both renderpass and renderpass2 groups
despite supporting only one renderpass type.
Affects:
dEQP-VK.renderpass*.fragment_density_map.*
dEQP-VK.renderpass*
Components: Vulkan
VK-GL-CTS issue: 3247
Change-Id: Ic7e73689a6a5dd28fd23038546acace412614d22
Shahbaz Youssefi [Mon, 22 Nov 2021 20:30:26 +0000 (15:30 -0500)]
Fix shader operator tests' precision expectation
es3fShaderOperatorTests.cpp takes the reported precision for lowp and
mediump (through glGetShaderPrecisionFormat) and tests that that many
bits are actually supported by the type.
glGetShaderPrecisionFormat is a legacy function that's not very
meaningful on modern hardware (see Vulkan issue #2931), and there is no
equivalent for its functionality in Vulkan.
This relevant tests are changed such that the test now verifies that _at
least_ that many bits are used in lowp and mediump operations, rather
than _exactly_. This aligns with the semantics of RelaxedPrecision in
SPIR-V.
Affected tests:
dEQP-GLES3.functional.shaders.operator.*
Components: OpenGL ES
VK-GL-CTS issue: 3344
Change-Id: I88a38d6ee067de8313f25327578c6666c257dc8b
Matthew Netsch [Fri, 3 Dec 2021 00:23:26 +0000 (00:23 +0000)]
Merge vk-gl-cts/opengl-cts-4.6.1 into vk-gl-cts/master
Change-Id: I428d33d66bfad3ea511cab97a717315cf297feed
Matthew Netsch [Thu, 2 Dec 2021 22:41:14 +0000 (22:41 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Change-Id: I43ff786b98dd9bc2d5edcab4f04b3d9de4432520
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
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