platform/upstream/VK-GL-CTS.git
2 years agoAdd more power of two checks
Jari Komppa [Wed, 15 Dec 2021 10:35:10 +0000 (12:35 +0200)]
Add more power of two checks

This change adds more power of two checks for device limits.

Affects:
dEQP-VK.api.info.get_physical_device_properties2.*
dEQP-VK.info.device_properties

Components: Vulkan
VK-GL-CTS issue: 3388

Change-Id: I80a5ba5d23bd8bc35655aaa2d45c879b7dfa1749

2 years agoUpdate vulkan-docs version
Piotr Byszewski [Mon, 10 Jan 2022 18:53:14 +0000 (19:53 +0100)]
Update vulkan-docs version

Recent changes to vulkan video include generating video extension
'Std' header files from video.xml and addition of *_INVALID enum
values that have same value as *_MAX_ENUM values.
This change updates vulkan-docs to version 1.2.203 and updates
gen_framework.py script to properly handle changes in vulkan video.

Affects: *

Components: Framework, Vulkan

VK-GL-CTS issue: 3431

Change-Id: Id332ce4a6f550acc232b1dab1cbae025d1453780

2 years agoAdd missing formats to mapTextureFormat
Jari Komppa [Wed, 5 Jan 2022 18:18:23 +0000 (20:18 +0200)]
Add missing formats to mapTextureFormat

This change adds the missing formats to mapTextureFormat(). While this
does not affect existing vulkan tests, it may enable the use of those
formats eventually.

Affects:
dE-IT.framework.vulkan.image_util

Components: Vulkan
VK-GL-CTS issue: 3381

Change-Id: I5148be25ff185892e10f6bc582ef6d7557b0fe09

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Matthew Netsch [Fri, 14 Jan 2022 15:38:23 +0000 (15:38 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master

Change-Id: Iaf17e9ca0e84ec83c9c0030f78cafa15d8680d9f

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, 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

2 years agoAvoid division by zero in calculateThreshold
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

2 years agoMove draw buffers indexed tests from ES3.1 to ES3 group
Ari Suonpaa [Thu, 18 Nov 2021 08:40:59 +0000 (10:40 +0200)]
Move draw buffers indexed tests from ES3.1 to ES3 group

These tests were also included in a test package where
GL45 was run with an ES3.1 context. Now there's also a
support for running ES3 tests the same way.

Note: this change renames the previous dEQP-GL45 tests
to dEQP-GL45ES31 to separate them from the new
dEQP-GL45ES3 tests. Some of the test list names have
also changed.

VK-GL-CTS Issue: 2328

Affects:

dEQP-*.draw_buffers_indexed.*
dEQP-*.functional.state_query.indexed.*
dEQP-*.functional.negative_api.fragment.*

Components: OpenGL
Change-Id: Iba54e90106b11b503e2128f6bd706fdf585949fe

2 years agoVK_EXT_pageable_device_local_memory test coverage
Piers Daniell [Mon, 9 Aug 2021 15:50:12 +0000 (09:50 -0600)]
VK_EXT_pageable_device_local_memory test coverage

This CL adds basic support for the pageableDeviceLocalMemory feature. Normally
CTS enables all known features by default, but in this case we don't
enable pageableDeviceLocalMemory by default and just to targetting
testing with a variant of the extisting dEQP-VK.memory.allocation.*
tests.

This CL also adds coverage for vkSetDeviceMemoryPriorityEXT() by
extending the existing static VK_EXT_memory_priority test with a
dynamic variant that changes the memory priority after it has
been allocated.

New tests:

dEQP-VK.memory.pageable_allocation.*
dEQP-VK.memory.binding.priority_dynamic.*

Affects:

dEQP-VK.memory.allocation.*
dEQP-VK.memory.device_group_allocation.*
dEQP-VK.memory.binding.*

Components: Vulkan

VK-GL-CTS issue: 3060

Change-Id: Idb4e63556c8807ba2f636c90dab397f4d116223d

2 years agoRename mustpass master branch to main
Piotr Byszewski [Wed, 8 Dec 2021 19:15:02 +0000 (20:15 +0100)]
Rename mustpass master branch to main

Vulkan and OpenGL ES folders containing
mustpass files were renamed from "master" to "main".

Components: OpenGL, Vulkan

VK-GL-CTS issue: 3397

Change-Id: I07a9f48a24030abd85ead51f2778e2f4bad77df7

2 years agoMerge "Merge vk-gl-cts/dev/VK_EXT_image_view_min_lod into vk-gl-cts/master"
Matthew Netsch [Mon, 10 Jan 2022 05:07:29 +0000 (05:07 +0000)]
Merge "Merge vk-gl-cts/dev/VK_EXT_image_view_min_lod into vk-gl-cts/master"

2 years agoMerge vk-gl-cts/dev/VK_EXT_image_view_min_lod into vk-gl-cts/master
Matthew Netsch [Mon, 10 Jan 2022 02:29:28 +0000 (21:29 -0500)]
Merge vk-gl-cts/dev/VK_EXT_image_view_min_lod into vk-gl-cts/master

Change-Id: Ib627d2eae2296db3820f7e76663b9661c124b55e

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master
Matthew Netsch [Mon, 10 Jan 2022 02:13:18 +0000 (21:13 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master

Change-Id: Icca3c7a247a40fec46d8107c69d72ed105c16756

2 years agoFix stencil layout transitions in samplemask tests
Jari Komppa [Wed, 1 Dec 2021 15:00:14 +0000 (17:00 +0200)]
Fix stencil layout transitions in samplemask tests

This change fixes the validation layer errors for the _samplemask cases.

affects:
dEQP-VK.renderpass2.depth_stencil_resolve.*_samplemask

Components: Vulkan
VK-GL-CTS issue: 3362

Change-Id: I0e1d9a44c3ed127fbde3765725243fae722ad938

2 years agoFix RGBA10x6 feature check
Vidar Lilleboe [Tue, 30 Nov 2021 13:31:36 +0000 (14:31 +0100)]
Fix RGBA10x6 feature check

Verify that the extension is available before quering for support.

Affects:
dEQP-VK.api.info.format_properties.r10x6g10x6b10x6a10x6_unorm_4pack16

Components: Vulkan
VK-GL-CTS issue: 3370

Change-Id: Ib8cbbbe1f8c36b5022de1c04e623d49f5fb2b4c4

2 years agoRename some waived tests for dynamic rendering
Graeme Leese [Tue, 4 Jan 2022 14:20:13 +0000 (14:20 +0000)]
Rename some waived tests for dynamic rendering

These tests were renamed in commit 90835b7 "Rename dynamic_rendering
tests", but the waivers file was not updated. (The Android waiver file
was updated, so is not changed here).

Component: Vulkan
VK-GL-CTS issue: 757

Change-Id: I0beae9cd0e6b4e33e8c8f717b0eae44797104844

2 years agoFix barrier for initializing resolve attachment image to use proper level
Sławomir Cygan [Thu, 9 Dec 2021 15:50:53 +0000 (16:50 +0100)]
Fix barrier for initializing resolve attachment image to use proper level

This changes the level in the barrier to match level used by image view
used as resolve attachment in renderpass.

VK-GL-CTS Issue: 3407

Components: Vulkan

Change-Id: I500dfdbf15c4b7cd9943d3b063122107e1890688
Affects: dEQP-VK.dynamic_rendering.*.multisample_resolve.*_resolve_level_*

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Fri, 7 Jan 2022 19:26:26 +0000 (14:26 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: Ib63fd21efc3a2a3e4896a212d51e3ab1f12e56d4

2 years agoMerge vk-gl-cts/master into vk-gl-cts/VK_EXT_image_view_min_lod
Matthew Netsch [Fri, 7 Jan 2022 22:23:10 +0000 (17:23 -0500)]
Merge vk-gl-cts/master into vk-gl-cts/VK_EXT_image_view_min_lod

Change-Id: I01e3abccefeb0b192cf178e7ff0858326130a663

2 years agogl4cMapBufferAlignmentTests: ensure that the GL_ARB_buffer_storage extension is present
Corentin Noël [Fri, 27 Aug 2021 12:03:34 +0000 (14:03 +0200)]
gl4cMapBufferAlignmentTests: ensure that the GL_ARB_buffer_storage extension is present

This make sure that we won't call gl.bufferStorage if this isn't possible.

Affects:

KHR-GL43.map_buffer_alignment.functional

Components: OpenGL

Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
Change-Id: Icdcfeba5144543ee3d8c762618ff1b7d8752f502

2 years agoUpdate README.md files, replacing old link
Jari Komppa [Wed, 17 Mar 2021 10:00:50 +0000 (12:00 +0200)]
Update README.md files, replacing old link

Update README.md files to link to the wiki instead of deprecated
information.

Affects: None

Components: Framework, OpenGL, Vulkan

VK-GL-CTS public issue: 249

Change-Id: I40e4c733e55a52952b6b198b005647e199883159

2 years agoAdd support for building with Visual Studio 2022
Arkadiusz Sarwa [Wed, 8 Dec 2021 16:04:31 +0000 (17:04 +0100)]
Add support for building with Visual Studio 2022

Components: Framework

VK-GL-CTS Issue: 3403

Change-Id: I40fb75e00cb749948f9b1e47191e8ac4baaf37bb

2 years agoRemove unused variables from occlusion query tests
Juha Heiskanen [Thu, 16 Dec 2021 09:49:58 +0000 (11:49 +0200)]
Remove unused variables from occlusion query tests

Removed unused result buffer variables in fragment operations occlusion
query tests.

Components: Vulkan

VK-GL-CTS Issue: 3418

Affects: dEQP-VK.fragment_operations.occlusion_query.*
Change-Id: I60c4f47262b3b6bb0ac3d96df6cc830a38587a0e

2 years agoAssert that isnan and isinf cases cover intended classes
David Neto [Fri, 5 Nov 2021 16:15:02 +0000 (12:15 -0400)]
Assert that isnan and isinf cases cover intended classes

Affects:
dEQP-VK.glsl.builtin.function.common.isnan.*
dEQP-VK.glsl.builtin.function.common.isinf.*

Components: Vulkan
VK-GL-CTS issue: 3282

Change-Id: Iaf972208a76e64c7ea9e74671412f3499783013b

2 years agoAdd a batch of GraphicsFuzz coverage tests
Antto Mäkinen [Fri, 26 Nov 2021 16:11:23 +0000 (18:11 +0200)]
Add a batch of GraphicsFuzz coverage tests

This commit adds a batch of GraphicsFuzz coverage tests.

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.cov-bitwise-and-variable-and-its-negation
dEQP-VK.graphicsfuzz.cov-bitwise-shift-right-always-select-one
dEQP-VK.graphicsfuzz.cov-extend-uniform-vec2-to-vec3-matrix-multiply
dEQP-VK.graphicsfuzz.cov-fragcoord-bitwise-and-loop-reduce-value-index-array
dEQP-VK.graphicsfuzz.cov-function-loop-same-conditions-multiple-times-struct-array
dEQP-VK.graphicsfuzz.cov-function-variable-plus-one-minus-one
dEQP-VK.graphicsfuzz.cov-integer-constant-mod-variable-increased-condition-array-element
dEQP-VK.graphicsfuzz.cov-ldexp-exponent-undefined-divided-fragcoord-never-executed
dEQP-VK.graphicsfuzz.cov-loop-exit-conditions-sampler-struct-integer-variable
dEQP-VK.graphicsfuzz.cov-mix-uninitialized-vector-select-only-defined-data
dEQP-VK.graphicsfuzz.cov-nested-loops-different-iteration-rates-function-copy-array-elements
dEQP-VK.graphicsfuzz.cov-nested-loops-divide-integer-constant-always-zero
dEQP-VK.graphicsfuzz.cov-nested-loops-redundant-condition
dEQP-VK.graphicsfuzz.cov-nouble-negation-fragcoord-cast-ivec2-bitwise-and
dEQP-VK.graphicsfuzz.cov-two-loops-global-loop-counter-shift-right-zero-increment-array-element

Change-Id: I05c88a4045b807966e5f92616d01a84b97b5acdd

2 years agoImprove AHB image_formats subtest log output
Vihanakangas [Tue, 7 Dec 2021 11:21:44 +0000 (13:21 +0200)]
Improve AHB image_formats subtest log output

Prior to this change, when one of the subtests failed,
the whole format looked like it failed. This change
does not modify the original test generation or the test names,
but rather logs out the failing "subtest"-combination,
so that taking action on said test would be easier.

Affects:
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.*

Components: Vulkan

VK-GL-CTS Issue: 1531

Change-Id: I97c1beb5a355f90240f4a6089cf68148a76c3764

2 years agoOpPtrEqual OpPtrNotEqual for non-variable pointers
marz [Wed, 10 Nov 2021 12:09:26 +0000 (13:09 +0100)]
OpPtrEqual OpPtrNotEqual for non-variable pointers

Test checking the possibility of using OpPtrEqual and
OpPtrNotEqual without full variable pointer support
on simple data primitives like matrices and regular floats

Components: Vulkan

VK-GL-CTS issue: 2905

New tests:
dEQP-VK.spirv_assembly.instruction.spirv1p4.opptrequal.simple_variable_pointers_ptr_equal
dEQP-VK.spirv_assembly.instruction.spirv1p4.opptrnotequal.simple_variable_pointers_ptr_not_equal

Change-Id: I77d13e4ba22c4a9bd27c055233c6a1ae0e077f09

2 years agoExtend FSR multiview tests
Piotr Byszewski [Tue, 30 Nov 2021 13:59:13 +0000 (14:59 +0100)]
Extend FSR multiview tests

All multiview related tests done for VK_KHR_fragment_shading_rate
are repeated but with a correlation mask set to include both views.

Affects:
dEQP-VK.fragment_shading_rate.renderpass2.*

Components: Vulkan

VK-GL-CTS issue: 2397

Change-Id: I9ac0306454aef0df41dbc4717eaf0f3874d616d6

2 years agoHandle VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_* flags
michal_jakubek [Thu, 5 Aug 2021 13:00:57 +0000 (15:00 +0200)]
Handle VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_* flags

All tests use SBT with a ShaderRecordBufferKHR block
filled with certain data that is read by the shader group.
However, not all SBT elements are filled, but only these
that satisfy the Hit group index calculation equation.
The remaining are filled with empty group and dummy data.
Tests compute Hit group index on host and perform
offline raytracing. When the results from the device
and offline work are the same, the tests are passed.

New tests:
dEQP-VK.ray_tracing_pipeline.pipeline_no_null_shaders_flag.*

Components: Vulkan

VK-GL-CTS issue: 2777

Change-Id: If9eeda1f98c7a5f91c94d5ed307c92ba27f99cb5

2 years agoAdd 8-bit blend_operation_advanced tests
Jari Komppa [Mon, 15 Nov 2021 12:03:02 +0000 (14:03 +0200)]
Add 8-bit blend_operation_advanced tests

This change adds 8-bit versions of the VK_EXT_blend_operation_advanced
tests, adjusting error threshold accordingly.

This change also adds a new variant of the image comparison function,
fixing the original tests' functionality to skip some pixels from
comparison.

Affects:
dEQP-VK.pipeline.blend_operation_advanced.*

New tests:
dEQP-VK.pipeline.blend_operation_advanced.*_r8g8b8a8_unorm

Components: Vulkan
VK-GL-CTS issue: 3233

Change-Id: I155b825d7210730bf8cf4248346e81411c2b6cb3

2 years agoTest constant and dynamically uniform subgroup shuffle deltas
Ricardo Garcia [Fri, 26 Nov 2021 11:01:19 +0000 (12:01 +0100)]
Test constant and dynamically uniform subgroup shuffle deltas

Add new tests where the second argument to subgroupSuffleUp/Down/Xor is
not fully dynamic but also constant and dynamically uniform, in order to
trigger and test existing compiler optimizations.

In addition, this commit fixes several validation errors in many of the
subgroup tests.

New tests:
dEQP-VK.subgroups.shuffle.*_constant
dEQP-VK.subgroups.shuffle.*_dynamically_uniform

Affected tests:
dEQP-VK.subgroups.*

Components: Vulkan
VK-GL-CTS issue: 3342

Change-Id: I938624ae8b9713262c754dda0112cba0e3f37754

2 years agoRework platform memory limits
Ilkka Saarelainen [Thu, 2 Dec 2021 05:45:44 +0000 (07:45 +0200)]
Rework platform memory limits

Some OpenGL tests in openglcts and kc_cts used Vulkan platform class to
get the available system / device memory. The memory limits are not
Vulkan related.

This CL moves the getMemoryLimits function to the base class of all
platforms, so the functions can be accessed from openglcts without
referencing any Vulkan files.

Affects:

dEQP-VK.info.memory_limits
dEQP-VK.api.buffer.suballocation.*
dEQP-VK.api.buffer.dedicated_alloc.*
dEQP-VK.api.object_management.*
dEQP-VK.memory.allocation.*
dEQP-VK.memory.device_group_allocation.*
dEQP-VK.pipeline.render_to_image.*.small.*
dEQP-VK.pipeline.render_to_image.*.huge.*

KHR-GL4*.shader_image_load_store.advanced-*

Components:
Vulkan, OpenGL, Framework

VK-GL-CTS issue: 3360

Change-Id: I0743a83148c946d962fd793c8771f2c3c2e33ecc

2 years agoMerge vk-gl-cts/opengl-cts-4.6.1 into vk-gl-cts/master
Matthew Netsch [Fri, 7 Jan 2022 20:04:32 +0000 (20:04 +0000)]
Merge vk-gl-cts/opengl-cts-4.6.1 into vk-gl-cts/master

Change-Id: I06c1710694fe646df5e3d6002091931d1b94f9d1

2 years agoChecked .inl files back into the repo
Piotr Byszewski [Mon, 13 Dec 2021 14:08:09 +0000 (15:08 +0100)]
Checked .inl files back into the repo

By default .inl files won't be generated at build time but
this functionality is still present and to activate it
value of DEQP_VULKAN_INL_GEN_OUTPUTS_DIR should be changed
to point to PROJECT_BINARY_DIR.

VK-GL-CTS issue: 3197

Components: Framework, Vulkan

Affects:
dEQP-VK.*

Change-Id: I6ba5932aa51740048c8dcc0c0222e8f7553ac4b3

2 years agoPass force to fetch_sources
Piotr Byszewski [Fri, 10 Dec 2021 12:32:27 +0000 (13:32 +0100)]
Pass force to fetch_sources

Switching vulkan-docs folders between gitlab and github branches
results in errors on the server (clobbering the tags). Using
fetch sources with --force param resolves the issue.

Components: Vulkan

VK-GL-CTS issue: 3197

Change-Id: I913d5803836e9f7a59494e5ebf6e6261ede52948

2 years agoFix strided device address regions in RT misc tests
Ricardo Garcia [Thu, 11 Nov 2021 17:18:38 +0000 (18:18 +0100)]
Fix strided device address regions in RT misc tests

Some strided device address regions in ray tracing misc tests were being
created with the wrong size, not taking into account some tests were
storing several shader group handles in the binding tables.

In addition, this commit also fixes several validation errors in these
tests, related to bad sizes when flusing allocations and unaligned
strides in strided device address regions, which needed to be rounded
up.

Affected tests:
dEQP-VK.ray_tracing_pipeline.misc.*

Components: Vulkan
VK-GL-CTS issue: 3280

Change-Id: I7d20c347ff44b455547115d1a6b94c5d69a46c2c

2 years agoFix ray tracing closedFan2 tests
Ricardo Garcia [Tue, 9 Nov 2021 16:26:37 +0000 (17:26 +0100)]
Fix ray tracing closedFan2 tests

The watertightness tests for ray tracing include a closedFan2 variant
that had several issues.

These tests create a circle made of a variable number of triangles, all
of them sharing a central vertex and all of them sharing two edges with
neighboring triangles.

With that composition, closedFan2 variants created one geometry, BLAS
and instance per triangle, and tried to verify certain rules regarding
closed fans and watertightness. This had several problems:

- By having each triangle belong to a different instance, the set up
  does not meet the requirements for watertight geometry as laid out in
  the spec.

- Ray tracing shaders were increasing atomic counters, indexing them per
  ray and primitive id, in the any-hit shader. If a counter was
  increased more than once, this was considered a failure. However, in
  the closedFan2 variants all triangles have primitive id zero due to
  all of them belonging to different geometries. If a ray was found to
  hit two geometries/BLAS, it would result in a failure because the same
  counter would be increased twice, but that result is legal according
  to the spec.

This commit fixes closedFan2 tests by addressing both issues:

- The tests now create one geometry per triangle, but groups all
  geometries in a single BLAS and instance, meeting the spec
  requirements regarding closed fans.

- When increasing atomic counters, they are indexed per ray and per
  geometry index, so it is illegal to hit the same geometry twice with
  the same ray, following the rules of
  VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR, but they allow
  the same ray to hit two triangles (geometries) as the spec allows.

In addition, it also removes some dead code and fixes angle calculation
so they fall in the [-pi, pi] range.

Affected tests:
dEQP-VK.ray_tracing_pipeline.watertightness.*

Components: Vulkan
VK-GL-CTS issue: 3150

Change-Id: I430be3a1830592d37b75031b8506a194c862a0d7

2 years agoReduce framebuffer size of dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontempor...
Jörg Wagner [Mon, 6 Dec 2021 08:57:51 +0000 (09:57 +0100)]
Reduce framebuffer size of dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store

Reduce the size to 32x16 to avoid avoid timeouts on low-end platforms.
This shouldn't affect the ability to find compiler bugs because the
shader itself is the same.

Affects: dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store

Components: Vulkan

VK-GL-CTS Issue: 3411

Change-Id: If4fac83d04723ab16e987a2f7d1495bf1a8f055f

2 years agoFix validation errors in renderpass tests
Ilkka Saarelainen [Fri, 17 Dec 2021 05:36:16 +0000 (07:36 +0200)]
Fix validation errors in renderpass tests

This CL fixes the validation errors in some of the renderpass
tests. The tests incorrectly defined subpass dependency access
scopes for depth/stencil attachments in some cases.

Affects:

dEQP-VK.renderpass*.attachment_allocation.*

Components: Vulkan

VK-GL-CTS Issue: 3385

Change-Id: Ia9cc78bd28dde5b9cdbf4e28ba759e3bde44a9d0

2 years agoFix compilation issues with ShaderLibraryCase assert
Tapani Pälli [Sat, 11 Dec 2021 07:58:58 +0000 (09:58 +0200)]
Fix compilation issues with ShaderLibraryCase assert

This assert was causing issues with some compilers/options.

Components: Framework, OpenGL

VK-GL-CTS issue: 3399

Fixes: a590d9ab4 ("Add check for ES compatibility extensions with Desktop OpenGL")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Change-Id: I070d82e7e9c0a4aafbda21cabd18a2d37b5b2cf0

2 years agoQuery default FBO Depth, Stencil only when format requires
Tapani Pälli [Tue, 21 Dec 2021 06:19:46 +0000 (08:19 +0200)]
Query default FBO Depth, Stencil only when format requires

Earlier commit removed DSA usage but introduced a problem with
framebuffer parameter type and size queries in some configs.

Without DSA, we get errors if querying for attachment that does
not exist in framebuffer. Patch introduces a check to make sure
we do not query for separate depth/stencil attachment if that
would not exist in format.

VK-GL-CTS issue: 3092

Affects:
KHR-*.internalformat.renderbuffer.*

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

2 years agoFix OpenGL implicit conversions tests
Tapani Pälli [Thu, 9 Dec 2021 12:40:31 +0000 (14:40 +0200)]
Fix OpenGL implicit conversions tests

This change removes following tests:

   dEQP-GL45.functional.shaders.implicit_conversions.es31.*
   dEQP-GL45.functional.shaders.implicit_conversions.es32.*

The problem with these tests was generated data for the tests
required OpenGL ES extension. Instead we import new generated
data for gl45 and utilize that creating following tests for
OpenGL 4.5:

   dEQP-GL45.functional.shaders.implicit_conversions.gl45.*

Affects:
   dEQP-GL45.functional.shaders.implicit_conversions.es31.*
   dEQP-GL45.functional.shaders.implicit_conversions.es32.*
   dEQP-GL45.functional.shaders.implicit_conversions.gl45.*

Components: OpenGL
VK-GL-CTS issue: 3399

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

2 years agoPick correct memoryTypeIndex for AHB
Shih-Hsin Li [Wed, 24 Nov 2021 00:32:38 +0000 (16:32 -0800)]
Pick correct memoryTypeIndex for AHB

Pick the right memoryTypeIndex for protected allocations so that
protected memory is allocated when createFlag has protected bit
set. This fixed some bindImageMemory failure caused by binding
non-protected memory in testAndroidHardwareBufferImageFormat.

Affects:
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.*

Components: Vulkan
Change-Id: Ib50a97d248930b6cc6538d1c7b84e84cddfde40e

2 years agoAllow rounding error when reading back Z buffer
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

2 years agoFix amber vs cts device feature requirements
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

2 years agoFix extended_dynamic_state tests
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

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts-1.2.7
Matthew Netsch [Fri, 7 Jan 2022 17:55:19 +0000 (12:55 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts-1.2.7

Change-Id: I05420f73334f6aee2729ea2e8f76a079de896617

2 years agoUpdate kc-cts version
Piotr Byszewski [Wed, 8 Dec 2021 16:07:35 +0000 (17:07 +0100)]
Update kc-cts version

Version of kc-cts was updated to include fix for inl dependency.

Components: OpenGL

VK-GL-CTS issue: 3400

Change-Id: Ic28275604849506de4139c0bbda20278a2431ca1

2 years agoCreate command pool with command buffer reset in RT tests
Mohankumar Nekkarakalaya [Tue, 9 Nov 2021 17:56:08 +0000 (09:56 -0800)]
Create command pool with command buffer reset in RT tests

-When command pool was created either command buffer reset
 bit should have been set or command buffer should have
 reset pool before using for VU.
-Fix is to create command pool with reset bit set.

Components: Vulkan

VK-GL-CTS Issue: 3288

Affected tests: dEQP-VK.ray_tracing_pipeline.acceleration_structures.device_compability_khr.*

Change-Id: Ie21926cd53c505e46da0d03a6082e689d45d5d2a

2 years agoSuppress GCC 11 conversion warning
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

2 years agoFix allocation of system memory.
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

2 years agoGenerate inl files at build time
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

2 years agoAdd Vulkan-Docs to fetch sources
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

2 years agoMirror ANGLE Khronos waiver for Android
Paul Thomson [Mon, 20 Dec 2021 12:39:21 +0000 (12:39 +0000)]
Mirror ANGLE Khronos waiver for Android

Components: Android
VK-GL-CTS issue: 3255

Excluded:

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.*

Change-Id: I670c1e71d60dced06229520bca6244e87fa4ea1a

2 years agoFix requirements tests for multiplane images
James Fitzpatrick [Wed, 8 Dec 2021 12:17:29 +0000 (12:17 +0000)]
Fix requirements tests for multiplane images

The memory requirements tests for multiplane images would previously
assume that bits were not sparsely set in memoryTypeBits.

This could lead to the tests assuming that an implementation was
returning a lazily allocated memory type for an image without
transient attachment set.

Affects: dEQP-VK.memory.requirements.*multiplane_image*

Components: Vulkan

VK-GL-CTS issue: 3405

Change-Id: Ic1e56d7412ac413da907059c79b3f7064b3c664b

2 years agoReduce framebuffer size of spv-stable-pillars-O-op-select-to-op-phi
Jörg Wagner [Mon, 6 Dec 2021 08:57:51 +0000 (09:57 +0100)]
Reduce framebuffer size of spv-stable-pillars-O-op-select-to-op-phi

Reduce the size to 32x16 to avoid avoid timeouts on low-end platforms.
This shouldn't affect the ability to find compiler bugs because the
shader itself is the same.

Affects: dEQP-VK.graphicsfuzz.spv-stable-pillars-O-op-select-to-op-phi

Components: Vulkan

VK-GL-CTS Issue: 3367

Change-Id: I2eacbc75df29b8dc44c8744bc13e140d6ef7c0cb

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Matthew Netsch [Fri, 7 Jan 2022 16:11:44 +0000 (11:11 -0500)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master

Change-Id: Iae02aca2a7dd84bd487dcee93145327f4507d558

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Matthew Netsch [Fri, 7 Jan 2022 16:02:38 +0000 (11:02 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6

Change-Id: I8e4fb16c3f82b6cc42af849e201d50ad2f053d6e

2 years agoAdditional warning fix for Clang 13
Ricardo Garcia [Thu, 9 Dec 2021 14:23:57 +0000 (15:23 +0100)]
Additional warning fix for Clang 13

Fixes warning about unused variable. No test results should be affected
by this change.

Components: Vulkan
VK-GL-CTS issue: 3147

Change-Id: Ib7c0425891e33e65e22ed90668aa3d0d7eae85df

2 years agoFix mismatched ray payload in descriptor set random tests
Ricardo Garcia [Tue, 14 Dec 2021 10:08:16 +0000 (11:08 +0100)]
Fix mismatched ray payload in descriptor set random tests

Miss shaders had a ray payload declaration that didn't match other
shading stages.

Affected tests:
dEQP-VK.binding_model.descriptorset_random.*.miss.*

Components: Vulkan
VK-GL-CTS issue: 3412

Change-Id: I4473a883248bc9d572e6112da82bc4c774689071

2 years agoAdd Samsung Driver ID
s.fricke [Fri, 12 Nov 2021 21:54:10 +0000 (13:54 -0800)]
Add Samsung Driver ID

The enum value was added in the 1.2.199 Vulkan Headers

VK-GL-CTS issue: 3384
Components: Vulkan

Affects:
dEQP-VK.api.driver_properties.driver_id_match

Change-Id: Id04c20b5fe8ad90350a588fd0e7de0c498ebe5b6

2 years agoUpdate Android test lists for Broadcom waiver
Paul Thomson [Fri, 3 Dec 2021 17:53:24 +0000 (17:53 +0000)]
Update Android test lists for Broadcom waiver

VK-GL-CTS issue: 2804

Components: Vulkan, Android
Google bug: b/206833783

Change-Id: I51fcc3ce1617dc5a980e893bfc5915e8fc789c74

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

2 years agoFix use a device with protected memory enabled
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

2 years agoThrottling CTS producing frame speed
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

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Matthew Netsch [Fri, 7 Jan 2022 06:07:01 +0000 (01:07 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5

Change-Id: I85eab03afdf24359556917617b56856b51b7eb07

2 years agoFix MSVC C++17 build
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

2 years agoGCC 11 build fixes for opengl-es-cts-3.2.7 branch
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

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 agoMerge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Matthew Netsch [Thu, 6 Jan 2022 22:45:47 +0000 (17:45 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4

Change-Id: Id711f3ba5558c490c3629051677c7f41ec2da2d6

2 years agoFix warnings reported by clang 13
Ricardo Garcia [Fri, 10 Dec 2021 13:54:01 +0000 (14:54 +0100)]
Fix warnings reported by clang 13

This commit fixes code that was producing warnings when built using
clang 13. They are mostly about unused variables and null pointer
substractions, but the new code should be semantically the same.

No test results should be affected by these changes.

Components: Framework, Vulkan, OpenGL
VK-GL-CTS issue: 3147

Change-Id: I0eb87c17270a610c8b29ec27ae8e10009053f8e1

2 years agoRename various things for more inclusive language
Jari Komppa [Fri, 19 Nov 2021 13:16:54 +0000 (15:16 +0200)]
Rename various things for more inclusive language

This change renames various things to avoid gender-specific or degatory
terms.

Khronos inclusive language policy:
https://www.khronos.org/about/inclusive-language

Majority of the changes are due to the term 'dummy', as in mannequin or
placeholder, which in programming may mean any of empty, placeholder,
unused, minimal, busywork, ignored or irrelevant.

Changes not included are file names (gluDummyRenderContext), test names
(dummy_instruction_set) or branch names (master).

Affects:
*

Components: Framework, Vulkan, OpenGL
VK-GL-CTS issue: 2509

Change-Id: I3837477a1b3de1142e8d97c503890ccbce9138f8

2 years agoRemove vkDestroyBuffer
Ari Suonpaa [Tue, 14 Dec 2021 05:27:53 +0000 (07:27 +0200)]
Remove vkDestroyBuffer

A buffer allocation test that is supposed to fail a large
allocation still tried to destroy the buffer even when an
error was returned from the allocation. This is now removed.

VK-GL-CTS Issue: 3192

Affects:

dEQP-VK.api.buffer.basic.size_max_uint64

Components: Vulkan
Change-Id: Ic36cb548ab2796b41e2a0b44d023e644b02a6d8c

2 years agoAvoid querying non-supported hardware features
Jari Komppa [Tue, 23 Nov 2021 10:53:00 +0000 (12:53 +0200)]
Avoid querying non-supported hardware features

Change the feature query test to avoid querying information on hardware
features that are not supported. This is done by querying non-existing
feature (max_enum) instead, which must be ignored by implementations.

The change also adds comment to all generated files stating what script
generates the files.

Affects:
dEQP-VK.api.info.get_physical_device_properties2.features

Components: Vulkan
VK-GL-CTS issue: 2853

Change-Id: I24a3832abc0721e649edbb112bd7f776c2b5d7f4

2 years agoDisable two warnings for old Amber versions
Mika Väinölä [Mon, 13 Dec 2021 11:00:05 +0000 (13:00 +0200)]
Disable two warnings for old Amber versions

Older versions of Amber fail to build with Clang >= 11 and GCC >=11 due
-Werror and warnings that have been fixed in later versions. Upgrading
Amber in older CTS branches risks accidental downgrades during fix
propagation. This change disables -Wsuggest-destructor-override for
Clang and -Wuninitialized for GCC when building libamber. These
should be re-enabled in newer Vulkan CTS releases.

Components: Framework, Vulkan

VK-GL-CTS issue: 3361

Change-Id: Ifc2ed69584d8ad179042b80212e02ceb9956d110

2 years agoZero initialize array in internal tests
Mika Väinölä [Wed, 1 Dec 2021 10:24:52 +0000 (12:24 +0200)]
Zero initialize array in internal tests

This suppresses a -Wmaybe-uninitialized warning in GCC 11 release
builds.

Affects: dE-IT.delibs.decpp.block_buffer

Components: Framework

VK-GL-CTS issue: 3378

Change-Id: I2315b5cdeecb6e9a54dd419c88134f30a3335029

2 years agoNotice of withdrawal of Vulkan CTS 1.2.5.x
Matthew Netsch [Wed, 5 Jan 2022 15:36:38 +0000 (10:36 -0500)]
Notice of withdrawal of Vulkan CTS 1.2.5.x

Change-Id: I7fc87c5a5e137bb12f6cea6a103f2b0f3075ea66
Components: Vulkan

2 years agoAdd a batch of GraphicsFuzz coverage tests
Antto Mäkinen [Fri, 26 Nov 2021 15:12:06 +0000 (17:12 +0200)]
Add a batch of GraphicsFuzz coverage tests

This commit adds a batch of GraphicsFuzz coverage tests.

Components: Vulkan

New Tests:

dEQP-VK.graphicsfuzz.cov-do-while-negative-iterator-nested-loops-increment-array-element
dEQP-VK.graphicsfuzz.cov-fragcoord-conditions-never-return-index-array-using-uniform
dEQP-VK.graphicsfuzz.cov-function-loop-condition-uniform-shift-right
dEQP-VK.graphicsfuzz.cov-function-nested-loops-break-early-never-discard
dEQP-VK.graphicsfuzz.cov-function-two-loops-limit-using-arguments-array-element-copies
dEQP-VK.graphicsfuzz.cov-global-loop-counter-set-array-element-once-index-using-findmsb
dEQP-VK.graphicsfuzz.cov-integer-minus-one-increased-before-indexing-array
dEQP-VK.graphicsfuzz.cov-loop-array-element-copy-index-clamp-sign
dEQP-VK.graphicsfuzz.cov-loop-start-from-one-switch-case-never-executed
dEQP-VK.graphicsfuzz.cov-loop-two-iterators-increment-array-empty-do-while
dEQP-VK.graphicsfuzz.cov-nested-functions-compare-fragcood-length-zero-vector
dEQP-VK.graphicsfuzz.cov-nested-loops-decrease-vector-component-by-matrix-element-global-loop-counter
dEQP-VK.graphicsfuzz.cov-nested-loops-global-counter-func-set-struct-field
dEQP-VK.graphicsfuzz.cov-repeating-conditions-fract-unused

Change-Id: I6e6377a60a134b59d3afd40015d282821b429a2a

2 years agoFix dot product with saturation tests
Ricardo Garcia [Tue, 30 Nov 2021 18:30:04 +0000 (19:30 +0100)]
Fix dot product with saturation tests

This commit fixes an issue that prevented some valid results from being
verified in a variety of cases, and fixes the in-software dot-product
calculation so it will not rely on undefined truncation of signed
integers.

Also, it adjusts the pseudorandom numeric range in some tests to more
easily test cases of saturating and non-saturating operations.

Finally, the unsigned dot product operations have been separated in
saturating and non-saturating cases to more easily check both
conditions.

Affected and new tests:
dEQP-VK.spirv_assembly.instruction.compute.opudot*
dEQP-VK.spirv_assembly.instruction.compute.opsdot*
dEQP-VK.spirv_assembly.instruction.compute.opsudot*

Components: Vulkan
VK-GL-CTS issue: 3366

Change-Id: If058fd13705290472eef369167506a35cf7bba91

2 years agoAdd dynamic rendering to attachment rate tests
Piotr Byszewski [Tue, 9 Nov 2021 13:43:40 +0000 (14:43 +0100)]
Add dynamic rendering to attachment rate tests

Affects:
dEQP-VK.fragment_shading_rate.*.attachment_rate.*

Components: Vulkan

VK-GL-CTS issue: 3283

Change-Id: Id2cf3d17c076c58b13f84b9ecf9b238f4989dcb3

2 years agoFurther VK_NV_mesh_shader test variants and fixes
Ricardo Garcia [Thu, 4 Nov 2021 15:58:22 +0000 (16:58 +0100)]
Further VK_NV_mesh_shader test variants and fixes

* Add local_size/vertices/primitives maximization cases.

* Add task, mesh and fragment interface variable tests.

* Increase glslang NV mesh shader built-in limits (they need to be as
  big as exposed by other interesting implementations like RADV and used
  in some tests).

* Replace tcu::nothing<T> with tcu::Nothing in misc tests.

New and affected tests:
dEQP-VK.mesh_shader.nv.*

Components: Vulkan
VK-GL-CTS issue: 2991

Change-Id: I5eead8177b6315a44bb95c820af4549028ba5572

2 years agoFix and enable dynamic rendering multivew coverage
Piers Daniell [Thu, 28 Oct 2021 21:48:19 +0000 (15:48 -0600)]
Fix and enable dynamic rendering multivew coverage

Coverage for dynamic rendering multi-draw multiview was
disabled in CL 8340 because it was broken, and also disabled
in vulkan-cts-1.3.0.

This CL reenables the coverage and fixes a couple of bugs
to make it work.

New tests:

dEQP-VK.draw.dynamic_rendering.multi_draw.*.multiview.*

Affects:

dEQP-VK.draw.dynamic_rendering.multi_draw.*

Components: Vulkan

VK-GL-CTS issue: 3258

Change-Id: Iacdc11ca0d8bbc5d0b706236ae31ad8afe30bb46

2 years agoMerge "Merge dev/VK_EXT_depth_clip_control into master"
Matthew Netsch [Sat, 11 Dec 2021 08:28:22 +0000 (08:28 +0000)]
Merge "Merge dev/VK_EXT_depth_clip_control into master"

2 years agoFix integer overflow in Random::getInt()
Ari Suonpaa [Fri, 26 Nov 2021 09:00:58 +0000 (11:00 +0200)]
Fix integer overflow in Random::getInt()

Random integer generation was having a signed integer overflow
when calculating a range between min and max values.

When casting an overflowed value to unsigned int the result
by most (if not all) implementations would produce expected
results due to modulo wraparound. However, this is not guaranteed
to happen as signed integer overflow is regarded as undefined
behavior.

This change casts the min and max values to unsigned int which
has defined under- and overflow behavior.

VK-GL-CTS Issue: 3353
VK-GL-CTS Issue: 3355
VK-GL-CTS Issue: 3356

Affects: *

Components: Framework, Vulkan, OpenGL
Change-Id: I8dff7bf9517433e1699acfe1f6973ea8fb25e4f7

2 years agoTRANSIENT_ATTACHMENT_BIT store/load op test
Juha Heiskanen [Mon, 22 Nov 2021 13:15:31 +0000 (15:15 +0200)]
TRANSIENT_ATTACHMENT_BIT store/load op test

Series of tests covering the load and store operations when
VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT is enabled. Color, depth and
stencil values are tested separately.

Components: Vulkan

VK-GL-CTS Issue: 3204

New Tests: dEQP-VK.fragment_operations.transient*

Change-Id: I499ff68d243b2fc76660545d12e9b0c64a9d9906

2 years agoMerge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master
Matthew Netsch [Sat, 11 Dec 2021 07:10:20 +0000 (07:10 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/master

Change-Id: Idd1ae81cc934e52485f2a79745c9ffa46951390a

2 years agoPick correct memoryTypeIndex for AHB
Shih-Hsin Li [Wed, 24 Nov 2021 00:32:38 +0000 (16:32 -0800)]
Pick correct memoryTypeIndex for AHB

Pick the right memoryTypeIndex for protected allocations so that
protected memory is allocated when createFlag has protected bit
set. This fixed some bindImageMemory failure caused by binding
non-protected memory in testAndroidHardwareBufferImageFormat.

Affects:
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.*

Components: Vulkan
Change-Id: Ib50a97d248930b6cc6538d1c7b84e84cddfde40e

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/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8
Matthew Netsch [Fri, 10 Dec 2021 05:37:33 +0000 (05:37 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.2.8

Change-Id: I78d891204952b8252760e6442750617a199ee80e

2 years agoUpdate kc-cts version
Piotr Byszewski [Wed, 8 Dec 2021 16:07:35 +0000 (17:07 +0100)]
Update kc-cts version

Version of kc-cts was updated to include fix for inl dependency.

Components: OpenGL

VK-GL-CTS issue: 3400

Change-Id: Ic28275604849506de4139c0bbda20278a2431ca1

2 years agoCreate command pool with command buffer reset in RT tests
Mohankumar Nekkarakalaya [Tue, 9 Nov 2021 17:56:08 +0000 (09:56 -0800)]
Create command pool with command buffer reset in RT tests

-When command pool was created either command buffer reset
 bit should have been set or command buffer should have
 reset pool before using for VU.
-Fix is to create command pool with reset bit set.

Components: Vulkan

VK-GL-CTS Issue: 3288

Affected tests: dEQP-VK.ray_tracing_pipeline.acceleration_structures.device_compability_khr.*

Change-Id: Ie21926cd53c505e46da0d03a6082e689d45d5d2a

2 years agoAdd check for ES compatibility extensions with Desktop OpenGL
Tapani Pälli [Thu, 9 Dec 2021 08:20:11 +0000 (10:20 +0200)]
Add check for ES compatibility extensions with Desktop OpenGL

Affects:
   dEQP-GL45.functional.shaders.functions.es31.*
   dEQP-GL45.functional.shaders.arrays.es31.*
   dEQP-GL45.functional.shaders.implicit_conversions.es31.*
   dEQP-GL45.functional.shaders.uniform_block.es31.*

Components: Framework, OpenGL

VK-GL-CTS issue: 3399

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

2 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/opengl-cts-4.6.1
Matthew Netsch [Fri, 10 Dec 2021 01:43:38 +0000 (01:43 +0000)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/opengl-cts-4.6.1

Change-Id: I5dbe2d36f399ebb391471963192be42243fa8111

2 years agoMerge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master
Matthew Netsch [Fri, 10 Dec 2021 00:58:10 +0000 (00:58 +0000)]
Merge vk-gl-cts/opengl-es-cts-3.2.7 into vk-gl-cts/master

Change-Id: I4cf772a9f2ed1e270a2205750dcfa2427e7f5026

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