Matthew Netsch [Mon, 10 Jan 2022 20:36:43 +0000 (15:36 -0500)]
Merge vk-gl-cts/dev/VK_KHR_roadmap_2022 into vk-gl-cts/vulkan-cts-1.3.1
Change-Id: I564944f8a1fe42a969063a40f7ecf689549bab59
Matthew Netsch [Mon, 10 Jan 2022 16:42:51 +0000 (11:42 -0500)]
Merge vk-gl-cts/vulkan-cts-1.3.1 into vk-gl-cts/dev/VK_KHR_roadmap_2022
Change-Id: Iff63540ee97f97d9e860d655439f0f85ca5ee00d
Matthew Netsch [Sun, 9 Jan 2022 20:33:32 +0000 (15:33 -0500)]
Merge vk-gl-cts/vulkan-cts-1.3.0 into vk-gl-cts/vulkan-cts-1.3.1
Change-Id: Iab3bf6dc70b7f8b1f29556a1394b2821f718ca0c
Marcin Kańtoch [Sun, 12 Dec 2021 22:39:11 +0000 (23:39 +0100)]
Fix for issues in dynamic rendering tests
Missing barrier before begin rendering to transition image from
VK_IMAGE_LAYOUT_UNDEFINED to VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
Components: Vulkan
VK-GL-CTS issue: 3383
Affects:
dEQP-VK.dynamic_rendering.suballocation.sparserendertarget*
Change-Id: Ied286e31282d56e8221e327e3d02a5d9333cf499
Matthew Netsch [Sun, 9 Jan 2022 15:39:46 +0000 (10:39 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: Iba40a0634a1de5fde930a2f469b5c9bc31d8c4d9
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
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
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
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_*
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
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
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
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
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
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
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
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
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, 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
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
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
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
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
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
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
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
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
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
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
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
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, 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
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
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
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
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
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
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
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
Matthew Netsch [Sat, 11 Dec 2021 16:35:55 +0000 (11:35 -0500)]
Add 1.3.1.0 conformance version
Change-Id: I584405ca88368f1a873b3d889d9ce3317c7dbc05
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.conformance_version
Matthew Netsch [Sat, 11 Dec 2021 16:34:18 +0000 (11:34 -0500)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-1.3.1
Change-Id: I851afbc7c49096c4a2e088335bf504eddea773ad
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
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
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
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
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
Matthew Netsch [Sat, 11 Dec 2021 08:28:22 +0000 (08:28 +0000)]
Merge "Merge dev/VK_EXT_depth_clip_control into master"
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
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
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
Matthew Netsch [Sat, 11 Dec 2021 07:06:29 +0000 (02:06 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.8 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: I32b11fd44818f63af4a32bb98a074f36ca0800fd
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
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
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
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
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
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 [Thu, 9 Dec 2021 21:38:24 +0000 (16:38 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.6 into vk-gl-cts/vulkan-cts-1.2.7
Change-Id: I47865d6ee717c8b8837c428fd782663de9ff7d07
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
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
Matthew Netsch [Thu, 9 Dec 2021 20:24:07 +0000 (20:24 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.5 into vk-gl-cts/vulkan-cts-1.2.6
Change-Id: I203412c11bcd738613884e733e75c26d34ea9309
Matthew Netsch [Thu, 9 Dec 2021 18:53:25 +0000 (18:53 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I84ed64d567499da4d7e3792fd484f95e89ef27f3
Matthew Netsch [Thu, 9 Dec 2021 17:41:52 +0000 (17:41 +0000)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I837a41fd83ac421e799900ff74df8b4daa549ecc
Jari Komppa [Wed, 8 Dec 2021 14:10:04 +0000 (16:10 +0200)]
Reduce complexity of some random cases
This change adds a complexity heuristics to some random cases and
reduces the final nested array size to avoid complexity explosion.
In practice only 18 test cases out of 1576 are affected.
Affects:
dEQP-VK.ubo.random.*
Components: Vulkan
VK-GL-CTS issue: 3389
Change-Id: If108ce2f04272b7bae9799daffa3682d1fb3aa52
Ari Suonpaa [Wed, 8 Dec 2021 07:02:37 +0000 (09:02 +0200)]
Merge dev/VK_EXT_depth_clip_control into master
VK-GL-CTS Issue: 3350
New tests:
dEQP-VK.pipeline.depth.depth_clip_control.*
dEQP-VK.transform_feedback.simple.depth_clip_control_*
Components: Framework, Vulkan
Change-Id: I179e077d43447b14e1be7c45307491401a2e05fa
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
Matthew Netsch [Fri, 3 Dec 2021 22:11:25 +0000 (17:11 -0500)]
Merge vk-gl-cts/vulkan-cts-1.2.7 into vk-gl-cts/vulkan-cts-1.3.0
Change-Id: Ia22f7b085cc3c34513604a3b282b5b628805a04f
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