platform/upstream/VK-GL-CTS.git
7 years agoLimit max renderbuffer size to avoid too-large allocations
Mark Adams [Wed, 13 Sep 2017 18:54:40 +0000 (14:54 -0400)]
Limit max renderbuffer size to avoid too-large allocations

This brings the ES2 version of this test in-line with the ES3 version
in order to avoid hitting address-space limitations with very large max sizes
in 32-bit mode.

VK-GL-CTS issue: 687

Affects:
dEQP-GLES2.functional.state_query.rbo.renderbuffer_size

Change-Id: Id3a0be7e8e2e6aaf3dcb6d9cd2b1c4a9a19d4baf

7 years agoCheck viewport limits against framebuffer limits
Graeme Leese [Mon, 18 Sep 2017 23:58:22 +0000 (00:58 +0100)]
Check viewport limits against framebuffer limits

They were being checked against the maximum image dimensions which was
incorrect.

Affects: dEQP-VK.api.info.device.properties
Components: Vulkan
VK-GL-CTS Issue: 700

Change-Id: Ia11bb69439294c5160d2da0a432ef8fc38e33500

7 years agoAdd test to stress deeply nested OpPhi
Jari Komppa [Fri, 8 Sep 2017 08:19:10 +0000 (11:19 +0300)]
Add test to stress deeply nested OpPhi

Added test that generates a deeply nested shader which modifies a
single variable in various points of the hierarchy.

Code generation is done by first creating a code string with
characters A, B and C. These characters represent the following:

A "if () { result++;"
B "} else {"
C "}"

By inserting ABC between the characters of the code string, we get
complex nested hierarchy. For example, AABCBC generates:
"if () { if { result++; if () { result ++; } else { } } else { }"

Note that the else-paths do not generate new values, and thus the code
generator needs to track the previous symbol for the else-paths.

The generated code is 8 levels deep and about 1600 lines long.
The test can be simplified for debugging purposes by reducing the
number of iterations when generating the code string.

Affects:

dEQP-VK.spirv_assembly.instruction.compute.opphi.nested

Components: Vulkan

Vk-GL-CTS issue: 259

Change-Id: I4c9943e2a11c8375104a16f0a78df136ff848831

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Fri, 22 Sep 2017 15:21:25 +0000 (10:21 -0500)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: I4835e397d77a99bc7d948b2667f5cafd59b2df83

7 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Fri, 22 Sep 2017 14:39:16 +0000 (16:39 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: I930fe816c7fc4772119a5eb663fd4f97529e7113

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Alexander Galazin [Fri, 22 Sep 2017 14:39:16 +0000 (16:39 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master

Change-Id: Ie1763ec17e355a1e4beeb9eae20cdfb129a3761c

7 years agoReplace missmatch_object with invalid_object
James Helferty [Wed, 6 Sep 2017 18:12:53 +0000 (14:12 -0400)]
Replace missmatch_object with invalid_object

Modifies the missmatch_object (sic) test for glCopyImageSubData into an
invalid object test. The changes clarify what the test is actually
testing, and avoids an issue where an unexpectedly valid object name
could cause the test to fail.

Also fixes the spelling of 'mismatch' in several places, corrects the
description for Test [C], and corrects mention of 'CopyImageSubData'.

Components: OpenGL

VK-GL-CTS issue: 669

Affects:
* KHR-GL43/44/45/46.copy_image.missmatch_object, which are now
* KHR-GL43/44/45/46.copy_image.invalid_object
* KHR-GL43/44/45/46.copy_image.samples_missmatch, which are now
* KHR-GL43/44/45/46.copy_image.samples_mismatch

Change-Id: I5127435afc1c116df3d4fa8d6d78397069255603

7 years agoRemove merge conflicts artefacts
Alexander Galazin [Tue, 19 Sep 2017 15:24:50 +0000 (10:24 -0500)]
Remove merge conflicts artefacts

vulkan.h.in has some merge conflicts artefacts.
This change removes them.

Components: Vulkan

VK-GL-CTS issue: 699

Change-Id: Ic9a72583f1d082e69a26a67e7e1306040cac0453

7 years agoIncrease max for output image asserts to 32768
Mark Adams [Mon, 18 Sep 2017 14:22:49 +0000 (10:22 -0400)]
Increase max for output image asserts to 32768

In framework/qphelper/qpTestLog.c, two assertions assume that the
width and height of the output image are no larger than 16384. But
when testing in 1 x max FBO mode, and max FBO size is larger than
16384, these asserts would fire. This change relaxes the assertions
so they expect sizes up to 32768.

Author: Weiwan Liu <weiwliu@nvidia.com>

Components: Framework

VK-GL-CTS issue: 697

Affects: KHR-GL46.explicit_uniform_location.uniform-loc

Change-Id: If6c674a8728defba971851590b36ac1196c7a39d

7 years agoFix memory corruption vktApiObjectManagementTests
Boris Zanin [Thu, 7 Sep 2017 11:08:20 +0000 (13:08 +0200)]
Fix memory corruption vktApiObjectManagementTests

Due to s_deviceCases is declared as non-static arrays the pointers
to these structures cannot be included into static arrays such as
s_createSingleGroup, s_createMultipleUniqueResourcesGroup, etc.

During second call references in arrays like s_createSingleGroup,
s_createMultipleUniqueResourcesGroup, etc will point to invalid
memory and most likely will lead to crash.

Fix: make dependend structures also non-static.

Update tests:
 * dEQP-VK.api.object_management.*

Components: Vulkan

VK-GL-CTS issue: 674

Change-Id: I23ace5fe0bcdd1db9400fc8437218941a045cf25

7 years agoUpdate OpenGL CTS Readme and verification
Alexander Galazin [Fri, 15 Sep 2017 12:21:42 +0000 (14:21 +0200)]
Update OpenGL CTS Readme and verification

 - Update the OpenGL CTS Readme to clarify that
   KC CTS results are not needed for opengl-es-cts-3.2.4.0 and later.
 - Update the verification script to adjust to the new rules.

Components: OpenGL

Affects: conformance package verification

VK-GL-CTS issue: 695

Change-Id: I83ae7db6aefda0356f6db5dd5cd605fa287e01d8

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Fri, 15 Sep 2017 14:35:04 +0000 (16:35 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: I2f92ca929f94c7818f9bcafe42bd7acc51056cf6

7 years agoMerge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Alexander Galazin [Fri, 15 Sep 2017 14:10:31 +0000 (16:10 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master

Change-Id: I9cbd8bdad0a15372c7778a34b5f1ce62be6374ee

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Alexander Galazin [Fri, 15 Sep 2017 14:10:30 +0000 (16:10 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master

Change-Id: I353c8266809ad559d5776a279054f2505b4d4d61

7 years agoTest workgroup size setting combinations
David Neto [Thu, 10 Aug 2017 15:29:24 +0000 (11:29 -0400)]
Test workgroup size setting combinations

Vulkan shader validation rules include:

 For each compute shader entry point, either a LocalSize execution mode
 or an object decorated with the WorkgroupSize decoration must be
 specified.

Glslang always emits an "OpExecutionMode %main LocalSize 1 1 1".
We should be able to specify workgroup size with a spec constant
uvec3, and remove OpExecutionMode for LocalSize.

This patch tests 3 combinations:
  literal local size, no spec constant workgroup size
  literal local size, and spec constant workgroup size
  no literal local size, and spec constant workgroup size

Affects:

dEQP-VK.spirv_assembly.instruction.compute.opnop.*

VK-GL-CTS issue: 629

Compoonents: Vulkan

Change-Id: I5401cac9e569bf1ed77920015ba085b6a8f28a11

7 years agoMerge "Merge vk-gl-cts/github-master into vk-gl-cts/master"
Gerrit Code Review [Fri, 15 Sep 2017 11:41:44 +0000 (07:41 -0400)]
Merge "Merge vk-gl-cts/github-master into vk-gl-cts/master"

7 years agoReplace missmatch_object with invalid_object
James Helferty [Wed, 6 Sep 2017 18:12:53 +0000 (14:12 -0400)]
Replace missmatch_object with invalid_object

Modifies the missmatch_object (sic) test for glCopyImageSubData into an
invalid object test. The changes clarify what the test is actually
testing, and avoids an issue where an unexpectedly valid object name
could cause the test to fail.

Also fixes the spelling of 'mismatch' in several places, corrects the
description for Test [C], and corrects mention of 'CopyImageSubData'.

Components: OpenGL

VK-GL-CTS issue: 669

Affects:
* KHR-GL43/44/45/46.copy_image.missmatch_object, which are now
* KHR-GL43/44/45/46.copy_image.invalid_object
* KHR-GL43/44/45/46.copy_image.samples_missmatch, which are now
* KHR-GL43/44/45/46.copy_image.samples_mismatch

Change-Id: I5127435afc1c116df3d4fa8d6d78397069255603

7 years agoMerge vk-gl-cts/github-master into vk-gl-cts/master
Alexander Galazin [Fri, 15 Sep 2017 11:22:42 +0000 (13:22 +0200)]
Merge vk-gl-cts/github-master into vk-gl-cts/master

Change-Id: I1446b5237224f6b26f74dc2d4ea0f17174908888

7 years agoFix bug when setting descriptor set layouts
Samuel Iglesias Gonsálvez [Mon, 4 Sep 2017 07:16:30 +0000 (09:16 +0200)]
Fix bug when setting descriptor set layouts

Affects:

dEQP-VK.glsl.builtin_var.fragdepth.*
dEQP-VK.glsl.builtin_var.fragcoord_msaa.*

Fixes crashes added by 595b5f763a8f6ef1c68bfd133a55ded9c25ac101 (CL#1017).

Components: Vulkan
VK-GL-CTS issue: 659

Change-Id: I1464ff6b213f38a2ade08f1e9b11dad422ee3f21
(cherry picked from commit 153979d342b54aa04cb2038e158ff3e3c742d8b8)

7 years agoFixes KHR-GL30.gpu_shader5_gl.* tests failures.
Eleni Maria Stea [Tue, 5 Sep 2017 08:30:06 +0000 (11:30 +0300)]
Fixes KHR-GL30.gpu_shader5_gl.* tests failures.

According to the ARB_gpu_shader5 specification "OpenGL 3.2 and GLSL 1.50
are required." Changes: 1) used GLSL version 150 2) moved the tests to
GL 3.2 package.

Removes:

KHR-GL30.gpu_shader5_gl.* tests
KHR_GL31.gpu_shader5_gl.* tests

Components: OpenGL
VK-GL-CTS issue: 662

Change-Id: I192ea895f057f762b56710a787e5e80be0268142

7 years agoDelete incorrect invalid map CTS tests.
Kenneth Graunke [Fri, 8 Sep 2017 23:18:49 +0000 (16:18 -0700)]
Delete incorrect invalid map CTS tests.

The citation given in these tests comes from the OpenGL man pages, which
are not authoritative.  The ES 3.2 and GL 4.x specifications say:

   "Effects of Mapping Buffers on Other GL Commands

    Any GL command which attempts to read from, write to, or change the
    state of a buffer object may generate an INVALID_OPERATION error if
    all or part of the buffer object is mapped. However, only commands
    which explicitly describe this error are required to do so. If an
    error is not generated, using such commands to perform invalid
    reads, writes, or state changes will have undefined results and may
    result in GL interruption or termination."

Importantly, it says "_may_ generate an INVALID_OPERATION error".  Some
drivers choose not to implement this to avoid the CPU overhead required
to enforce this optional restriction.

Affects:
- KHR-*.draw_elements_base_vertex_tests.invalid_mapped_bos

VK-GL-CTS issue: 682

Components: OpenGL

Change-Id: I4c0f7785ca7a747145591d071dda6e5231c787d4

7 years agoMerge pull request #61 from imirkin/master
Alexander Galazin [Fri, 15 Sep 2017 10:03:10 +0000 (12:03 +0200)]
Merge pull request #61 from imirkin/master

Always apply flat qualifier to double inputs, same as int/uint

7 years agoFix skipped tests in npot_tex2d_render
Piotr Byszewski [Tue, 22 Aug 2017 08:31:14 +0000 (10:31 +0200)]
Fix skipped tests in npot_tex2d_render

GTF npot_tex2d_render test was ported to glcts and corrected.
Rendering is done to FBO and all render dimensions are checked.

Components: OpenGL

VK-GL-CTS issue: 48

Affects:
KHR-GLES3.texture_repeat_mode.*
KHR-GL30.texture_repeat_mode.*

Change-Id: I147ad1aa54d6fbfb626a2cfa7da9333ada41802f

7 years agoTest readonly and writeonly buffer variables
Piotr Byszewski [Tue, 5 Sep 2017 10:39:13 +0000 (12:39 +0200)]
Test readonly and writeonly buffer variables

It is allowed the both readonly and writeonly qualifiers be used on
buffer variables. It just means it can't be read or written, but can
otherwise be referenced like with .size(), etc.

Components: OpenGL

VK-GL-CTS issue: 639

Affects:
KHR-GL43.shader_storage_buffer_object.basic-readonly-writeonly
KHR-GLES31.core.shader_storage_buffer_object.basic-readonly-writeonly

Change-Id: Id8f68a8687e41cdd42d45c8300f812833312517e

7 years agoFix regression in dEQP-VK.pipeline.multisample.sample_mask
Slawomir Cygan [Fri, 8 Sep 2017 10:55:34 +0000 (12:55 +0200)]
Fix regression in dEQP-VK.pipeline.multisample.sample_mask

The commit 83f7fcd8 introduced two ways of downloading
rendered images from device (RESOLVE or COPY_SAMPLES).

All previously existing tests should continue to use RESOLVE mode, as
the new COPY_SAMPLES mode changes the behavior of MultisampleRenderer
class (and requries additional set of shaders).

Affects:
dEQP-VK.pipeline.multisample.sample_mask*

Components: Vulkan

VK-GL-CTS issue: 676

Change-Id: I0c59cf0b4c9734c982b78606dc3cc9d1d721b547

7 years agoCheck for depthBounds support in shader builtin frag depth tests
Tony Wasserka [Tue, 12 Sep 2017 11:03:13 +0000 (12:03 +0100)]
Check for depthBounds support in shader builtin frag depth tests

Depth bounds testing was enabled without checking for feature support
in a couple of tests. With this change, tests that don't need this
feature leave it disabled, whereas other tests (currently only
dEQP-VK.glsl.builtin_var.fragdepth.*) now throw NotSupported when
the device doesn't support it.

Affects:

dEQP-VK.clipping.*
dEQP-VK.glsl.builtin_var.*

Components: Vulkan

VK-GL-CTS issue: 685

Change-Id: I44d94142e295ff135ad1a55d0d6e212b65994257

7 years agoEnable tests for EXT_shader_group_vote
Piotr Byszewski [Mon, 24 Jul 2017 12:48:21 +0000 (14:48 +0200)]
Enable tests for EXT_shader_group_vote

ShaderGroupVoteTests were generalized so that thay can
test ARB_shader_group_vote for GL core and
EXT_shader_group_vote for ES.

Components: OpenGL

VK-GL-CTS issue: 383

Affects:
KHR-GL45.shader_group_vote.*
KHR-GLES31.core.shader_group_vote.*

Change-Id: I3822cd386e522ceb9f8609544828e2febc257770
(cherry picked from commit 61e9dd88605ae53d48d9059e64d866912fb80ba5)

7 years agoEnable tests for EXT_shader_group_vote
Piotr Byszewski [Mon, 24 Jul 2017 12:48:21 +0000 (14:48 +0200)]
Enable tests for EXT_shader_group_vote

ShaderGroupVoteTests were generalized so that thay can
test ARB_shader_group_vote for GL core and
EXT_shader_group_vote for ES.

Components: OpenGL

VK-GL-CTS issue: 383

Affects:
KHR-GL45.shader_group_vote.*
KHR-GLES31.core.shader_group_vote.*

Change-Id: I3822cd386e522ceb9f8609544828e2febc257770

7 years agoAdd uintXX_t checks into check_all.py
Boris Zanin [Tue, 29 Aug 2017 12:35:02 +0000 (14:35 +0200)]
Add uintXX_t checks into check_all.py

The mentioned types are not defined in Windows, but are defined in linux.
Presence of this type breaks Windows builds. To make it easyily detectable
under linux additional check for [su]int[8,16,32,64]_t types is added
into check_all.py script.

Components: Framework

VK-GL-CTS Issue: 644

Change-Id: Ia332456fda93d068b11c1f53d5a3baf1c1740426

7 years agoFix clean operation in fetch_sources.py
Boris Zanin [Mon, 4 Sep 2017 11:04:42 +0000 (13:04 +0200)]
Fix clean operation in fetch_sources.py

Running fetch_sources.py with --clean parameter under Windows causes
script to fail, due to git creates files read only in following
folder: ".git\\objects\\pack\\*".

The fix now removes readonly files first, then the whole tree.

Components: Framework

VK-GL-CTS Issue: 661

Change-Id: I5f739405a090708d76642bdb4fa3623a25bd1dc7

7 years agoRemove ES3PlusWrapperContext
Piotr Byszewski [Thu, 7 Sep 2017 13:35:02 +0000 (15:35 +0200)]
Remove ES3PlusWrapperContext

ES3PlusWrapperContext is not maintained anymore.

Components: Framework

Change-Id: I4327c219d6fd0362da89449884be48c1109a9b62

7 years agoIncrease threshold for ShaderRender tests
Alexander Galazin [Fri, 8 Sep 2017 15:31:23 +0000 (17:31 +0200)]
Increase threshold for ShaderRender tests

The threshold proves to be too low due to randomness of
fuzzyCompare(). Slightly increase it to make the tests
more robust.

Components: AOSP

VK-GL-CTS issue: 681

Affects (at least):
dEQP-GLES3.functional.shaders.texture_functions.*

Change-Id: I878e6a5c89673e87bcc225323ad852bc5e809e9e

7 years agoAlways apply flat qualifier to double inputs, same as int/uint
Ilia Mirkin [Sat, 9 Sep 2017 22:27:30 +0000 (18:27 -0400)]
Always apply flat qualifier to double inputs, same as int/uint

Affects:

KHR-GL45.enhanced_layouts.varying_structure_locations

Components: OpenGL

GitHub Issue: #53

7 years agoMake DSA storage multisample tests signal unsupported cases
Iago Toral Quiroga [Thu, 31 Aug 2017 08:57:48 +0000 (10:57 +0200)]
Make DSA storage multisample tests signal unsupported cases

The current implementation has a single test instance that
loops over a collection of types and sizes and produces a
single pass/fail result. This means that the test fails
if any of the framebuffer configurations attempted
during the test is unsupported.

This patch rewrites the implementation so that we have a
separate test instance for each configuration instead.
This allows us to signal independent pass/fail/unsupported
results for each one.

Components: OpenGL
Issue: 503

Affects:
KHR-GL45.direct_state_access.textures_storage_multisample (removed)
KHR-GL45.direct_state_access.textures_storage_multisample_<imgtype>_<format> (added)
KHR-GL46.direct_state_access.textures_storage_multisample (removed)
KHR-GL46.direct_state_access.textures_storage_multisample_<imgtype>_<format> (added)

Change-Id: Ic0f1172d47f83b060a27a9c7537c1b85cb4a50e8

7 years agoSplit built_in_functions into separate test
Piotr Byszewski [Thu, 31 Aug 2017 12:08:24 +0000 (14:08 +0200)]
Split built_in_functions into separate test

gpu_shader_fp64.built_in_functions was split
into multiple tests - one per builtin function.

Components: OpenGL

VK-GL-CTS issue: 647

Affects:
KHR-GL40.gpu_shader_fp64.*

Change-Id: I66f48faeb882add083f3c5af2ecadfd55ac4b237

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Fri, 8 Sep 2017 08:12:41 +0000 (10:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: I480177a05de5faeb43cf9602554d636ede456bec

7 years agoExtend occlusion query test with fragment discard.
Ari Suonpaa [Tue, 5 Sep 2017 11:29:21 +0000 (14:29 +0300)]
Extend occlusion query test with fragment discard.

Added a variation of occlusion query test where half of the fragments
are discarded. This should show as a result of only half the number
of pixels compared to cases with no discard.

Affects:

dEQP-VK.query_pool.occlusion_query*discard

Components: Vulkan

VK-GL-CTS issue: 632

Change-Id: Ifad54ee71ce1eff1d1a2b86920f228ce9c698eb4

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Alexander Galazin [Fri, 8 Sep 2017 07:13:24 +0000 (09:13 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: Ied1a7d639c56dbdffd3db89085b4b771741e43f7

7 years agoFix race in ShaderBallotFunctionRead test
James Helferty [Wed, 6 Sep 2017 01:47:05 +0000 (21:47 -0400)]
Fix race in ShaderBallotFunctionRead test

The original code contained a race to write an SSBO, since it wasn't
using atomics. This change replaces that code with a much simpler
reimplementation of readFirstInvocationARB() by using findLSB() and
ballotARB() to provide an argument to readInvocationARB().

This change also strips out a now-unused argument and related code
from the shader-builder helper class, which is shared with the other
shader_ballot tests.

Components: OpenGL

VK-GL-CTS issue: 665

Affects:
* KHR-GL43/44/45.shader_ballot_tests.ShaderBallotAvailability
* KHR-GL43/44/45.shader_ballot_tests.ShaderBallotBitmasks
* KHR-GL43/44/45.shader_ballot_tests.ShaderBallotFunctionBallot
* KHR-GL43/44/45.shader_ballot_tests.ShaderBallotFunctionRead

Change-Id: Iaf121ab07e13bf450533c96c95f1b7745631c0c8

7 years agoRender to FBO in tessellation winding order tests
Sunny Sun [Mon, 4 Sep 2017 04:22:59 +0000 (12:22 +0800)]
Render to FBO in tessellation winding order tests

Tessellation winding order tests render
to a new frame buffer to prevent
GL_INVALID_OPERATION from being generated
by glReadPixels.

VK-GL-CTS issue: 668

Components: OpenGL

Affects:
KHR-GL4*.tessellation_shader.winding.*
KHR-GLES3*.core.tessellation_shader.winding.*

Change-Id: Ia1af86df535ee07acd421ad1133497ce8f4e7eee

7 years agoShaderImageLoadStore: relax texture incompleteness requirement
Alejandro Piñeiro [Fri, 25 Aug 2017 23:29:49 +0000 (16:29 -0700)]
ShaderImageLoadStore: relax texture incompleteness requirement

When the test was writen, OpenGL spec specified that image access
would be considered invalid fs the texture is incomplete.

This raised some issues when the texture is mipmap-incomplete (so
incomplete as a whole), but base-complete, and the image is bound to
the base level.

After some debate it was agreed to allow that case.

This patch modifies the test by setting a level different to the base
level for the incomplete source/destination images.

Affects:
KHR-GL45.shader_image_load_store.incomplete_textures

Components: OpenGL

VK-GL-CTS issue: 667
Khronos bugzilla: 16111

Change-Id: I4158ac149e5738c1843acf0b8237e87677bdf00a

7 years agoChange required sample counts for storage images
Graeme Leese [Wed, 30 Aug 2017 15:37:14 +0000 (16:37 +0100)]
Change required sample counts for storage images

Update the API feature info tests to set requiredSampleCounts to 1 for
all images that are not usable as some type of framebuffer attachment.
Previously images that were not usable as attachments but could be used
as a storage image were incorrectly exempted from the requirement.

Components: Vulkan
VK-GL-CTS Issue: 645
Affects: dEQP-VK.api.info.image_format_properties.*

Change-Id: Ia0d09ad0ff51029b75cd3a264860a3dd63c249fb

7 years agoUpdate KC CTS reference
Alexander Galazin [Thu, 7 Sep 2017 15:56:27 +0000 (17:56 +0200)]
Update KC CTS reference

Components: OpenGL
VK-GL-CTS issue: 675

Change-Id: I59d0da35e6310abf7aa93cb55a72ba0ba9a6d89c

7 years agoRefactor time-consuming test group initializers
Paavo Pessi [Fri, 30 Jun 2017 07:18:30 +0000 (10:18 +0300)]
Refactor time-consuming test group initializers

dEQP-VK.pipeline.stencil.*
- Large tests groups were split into smaller test groups.

dEQP-VK.spirv_assembly.instruction.compute.opatomic.*
- A large number of input and expected output value calculations were
  moved from the test group initializer to the actual test runner.

Affects:

dEQP-VK.pipeline.stencil.*
dEQP-VK.spirv_assembly.instruction.*

Components: Vulkan

VK-GL-CTS issue: 151

Change-Id: I7cedc0e252439d7b04117ef0c15236014709b4f8

7 years agoFix VK_KHR_maintenance2 extended_usage_bit tests
Boris Zanin [Thu, 7 Sep 2017 07:19:08 +0000 (09:19 +0200)]
Fix VK_KHR_maintenance2 extended_usage_bit tests

Due to test runs over uncompressed formats it cannot include
VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR bit.
Remove this bit from the tests.

Update tests:
 * dEQP-VK.image.extended_usage_bit.*

Components: Vulkan

VK-GL-CTS issue: 673, 614

Change-Id: I0adb26c5306a9d5f49936ffef070050fd5936faa

7 years agoFixup some missing/incorrect flushes and invalidates
Gary Sweet [Mon, 4 Sep 2017 10:14:58 +0000 (11:14 +0100)]
Fixup some missing/incorrect flushes and invalidates

Some of the flushes were too small, and there were a few
missing invalidates.

Affects:
dEQP-VK.ssbo.layout.*
dEQP-VK.pipeline.push_constant.compute_pipeline.simple_test

Components: Vulkan

VK-GL-CTS issue: 660

Change-Id: I27fac24397984f82865683f30b823570c3e52aed

7 years agoTest generating mipmaps with vkCmdBlitImage()
Paavo Pessi [Fri, 25 Aug 2017 07:16:05 +0000 (10:16 +0300)]
Test generating mipmaps with vkCmdBlitImage()

Tests were added to verify that the typical use-case of generating
mipmap levels with vkCmdBlitImage() works for all supported
formats.

Tests in 'from_base_level' group use the base image as a source for all
mip levels and generate all mip levels with a single blit command.

Tests in 'from_previous_level' group use the previous mip level as a
source for the next mip level and generate each mip level with a
separate blit command with barriers between each blit.

New tests:

dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*
dEQP-VK.api.copy_and_blit.dedicated_allocation.blit_image.all_formats.generate_mipmaps.*

Components: Vulkan

VK-GL-CTS issue: 85

Change-Id: I7a9a432b6ed838e4b97649bfae0e3445b2614256

7 years agoAdd HLSL compilation support and some tessellation tests.
Ari Suonpää [Wed, 21 Jun 2017 06:08:02 +0000 (09:08 +0300)]
Add HLSL compilation support and some tessellation tests.

Compilation of HLSL shaders is now supported by adding source code to hlslSources member of program collection.
HLSL shaders were added to tessellation.winding and tessellation.fractional_spacing tests to cover requirements
of VK-GL-CTS issue 334.

Affects:

dEQP-VK.glsl.*
dEQP-VK.tessellation.*
dEQP-VK.api.smoke.create_shader

Components: Vulkan

VK-GL-CTS issue: 334

Change-Id: I40ed8228cd17d922f64679272696451916f8bbc2

7 years agoUpdate GL 4.6 mustpass
Alexander Galazin [Wed, 6 Sep 2017 17:27:56 +0000 (19:27 +0200)]
Update GL 4.6 mustpass

Components: OpenGL

Change-Id: Ib125ae401fb5e629526932fe868c28752e87909d

7 years agoCreate GL 4.6 test package
Piotr Byszewski [Wed, 23 Aug 2017 07:42:41 +0000 (09:42 +0200)]
Create GL 4.6 test package

Ensures that tests for the extensions went into GL 4.6 can be
executed without checking for the extension string if run in
the 4.6 context.

Components: Framework, OpenGL

VK-GL-CTS issue: 640

Affects:
KHR-GL46.*
KHR-GL45.spirv_extensions.*
KHR-NoContext.es2.no_error.*
KHR-NoContext.gl30.no_error.*
KHR-GL45.polygon_offset_clamp.*
KHR-GL45.shader_group_vote_tests.*
KHR-GL43.indirect_parameters_tests.*
KHR-GL44.texture_filter_anisotropic.*
KHR-GLES3.texture_filter_anisotropic.*
KHR-GLES31.core.polygon_offset_clamp.*
KHR-GL45.shader_draw_parameters_tests.*
KHR-GL45.shader_atomic_counter_ops_tests.*
KHR-GL33.pipeline_statistics_query_tests_ARB.*
KHR-GL32.transform_feedback_overflow_query_ARB.*

Change-Id: Idbfacefb5c9e58611c4330b1a054b38bdd72ca87

7 years agoFix bitshift issue in dEQP-VK.api.copy_and_blit.*
Paavo Pessi [Mon, 28 Aug 2017 10:58:34 +0000 (13:58 +0300)]
Fix bitshift issue in dEQP-VK.api.copy_and_blit.*

Use 64-bit integers to calculate maximum color value to avoid situations
where 32-bit integers are shifted left by 32 bits.

Affects:

dEQP-VK.api.copy_and_blit.*

Components: Vulkan

VK-GL-CTS issue: 643

Change-Id: I90aab8a31a363716a3bb1ce0ca79272adf3b2b1e

7 years agoAdd test to stress wide OpPhi instructions
Jari Komppa [Tue, 22 Aug 2017 11:50:17 +0000 (14:50 +0300)]
Add test to stress wide OpPhi instructions

New test that has a 1024 case wide OpPhi instruction.

The test has been written so that it is easy to change to any desirable
width; based on the SPIR-V specification a width of 16k should be
acceptable (as there can be 16k switch cases). However, that would
generate a rather large (about 50kLOC) shader.

Affects:

dEQP-VK.spirv_assembly.instruction.compute.opphi.wide

Components: Vulkan

VK-GL-CTS issue: 259

Change-Id: Ide349e19ab4811c8c8c13bff0d72ac6cf19349ed

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Alexander Galazin [Wed, 6 Sep 2017 15:50:55 +0000 (17:50 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master

Change-Id: Ibe5a9c6ef66a017d9147574f0220d75058d977d2

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4
Alexander Galazin [Wed, 6 Sep 2017 15:50:54 +0000 (17:50 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4

Change-Id: I99f3421afed52b3f80ca8041a80667ca40966a9c

7 years agoAdd more allowed 'dot' alternatives
Alexander Galazin [Tue, 22 Aug 2017 13:59:49 +0000 (15:59 +0200)]
Add more allowed 'dot' alternatives

Expanded dot may be re-associated in multiple ways.
Add all possible alternatives to prevent precision failures.

Components: AOSP

VK-GL-CTS issue: 634
Google issue: 28767510

Affects:
dEQP-GLES3.functional.shaders.builtin_functions.precision.dot.*
dEQP-GLES3.functional.shaders.builtin_functions.precision.reflect.*
dEQP-GLES31.functional.shaders.builtin_functions.precision.dot.*
dEQP-GLES31.functional.shaders.builtin_functions.precision.reflect.*

Change-Id: I2a91add1b92363acab2172179320cd880da779ec
(cherry picked from commit e00e942ef2600253cf9ae16815922fa6617d68bf)

7 years agoMerge changes Ie1e6a555,If8a4860a
Gerrit Code Review [Wed, 6 Sep 2017 15:45:25 +0000 (11:45 -0400)]
Merge changes Ie1e6a555,If8a4860a

* changes:
  Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
  Run Draw*BaseVertex if EXT_draw_elements_base_vertex is present

7 years agoRun Draw*BaseVertex if EXT_draw_elements_base_vertex is present
Alexander Galazin [Wed, 16 Aug 2017 09:36:01 +0000 (11:36 +0200)]
Run Draw*BaseVertex if EXT_draw_elements_base_vertex is present

Draw*BaseVertex methods are enabled if
the EXT_draw_elements_base_vertex extension is present
Follow-up on 1b1ea05b

Components: AOSP

Affects: dEQP-GLES31.functional.draw_base_vertex.*

Change-Id: If8a4860a956c771ec5ea3341e2227f437b12a286

7 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Alexander Galazin [Wed, 6 Sep 2017 15:08:02 +0000 (17:08 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: Ie1e6a555ace52a51725be96da0fa272bf4f3b1cc

7 years agoUse SRC image layout for copy image to buffer
Slawomir Cygan [Wed, 6 Sep 2017 14:47:04 +0000 (16:47 +0200)]
Use SRC image layout for copy image to buffer

The test was calling vkCmdCopyImageToBuffer with
VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL layout, which is not a valid
parameter value for this function (and not the layout the image is currently in).

Affects: dEQP-VK.memory.binding.*.*.image_*

Components: Vulkan

VK-GL-CTS issue: 666

Change-Id: Ifb5a1bd8726535de02a0dc134f5ac76a2734a661

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Alexander Galazin [Wed, 6 Sep 2017 13:40:53 +0000 (15:40 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master

Change-Id: I58b5051e5739be5f009061b09f1b2d65b68f8c37

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4
Alexander Galazin [Wed, 6 Sep 2017 13:40:52 +0000 (15:40 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4

Change-Id: I6696e0770a9d8245cd2e5972bc1013e689fb4334

7 years agoRestore fuzzyCompare() sample rate
Mark Adams [Thu, 31 Aug 2017 19:47:15 +0000 (15:47 -0400)]
Restore fuzzyCompare() sample rate

Commit 57c002a31612855e744c33ac698590da0e3d02d3 changed how the stride
was calculated for sampling values in order to avoid double-counting
values. However, it also reduced the number of values sampled and
that's resulting in both GLES and Vulkan failures.

This patch restores the original stride calculation, but changes the
parameters to rnd.getInt() to ensure that 0 is never returned from it.

Components: Framework

VK-GL-CTS issue: 658

Change-Id: I4c7e6d39017bbfc38bcd155037d3b4d40ce46ca7

7 years agoUpdate GL CTS Readme
Alexander Galazin [Thu, 31 Aug 2017 10:41:59 +0000 (12:41 +0200)]
Update GL CTS Readme

Components: OpenGL

Change-Id: Ie3d8e8d7d20716d07d88a6aa2c8f09b1748ace1f

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Wed, 6 Sep 2017 10:43:54 +0000 (12:43 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: Ide2f570cd881a3eb4e302d22a02207e472e427b4

7 years agoFix unused uniform bug in EGL robustness tests
Mika Isojrvi [Tue, 5 Sep 2017 19:42:54 +0000 (19:42 +0000)]
Fix unused uniform bug in EGL robustness tests
am: 7806d74666

Change-Id: Idb3b53bc621c37063d82eda265173ae3bd9395bd

7 years agoDo not use ycbcr formats if ycbcr extension is not supported
Slawomir Cygan [Tue, 5 Sep 2017 14:39:12 +0000 (16:39 +0200)]
Do not use ycbcr formats if ycbcr extension is not supported

Spec says (on "vkGetPhysicalDeviceFormatProperties"):
"format must be a valid VkFormat value"

Formats from future or unsupported extensions do not
constitute a "valid VkFormat values".

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

Components: Vulkan

VK-GL-CTS issue: 663

Change-Id: Ia284977b830d5fda14bcbd9d96010995d84014d5

7 years agoMerge "Fix missing SSBO binding in EGL robustness tests"
Mika Isojärvi [Tue, 5 Sep 2017 17:25:37 +0000 (17:25 +0000)]
Merge "Fix missing SSBO binding in EGL robustness tests"
am: e19c3ff127

Change-Id: Ie8ee42a70186d5d8cd481b34901aa3b2e488d08d

7 years agoFix unused uniform bug in EGL robustness tests
Mika Isojärvi [Thu, 31 Aug 2017 19:13:05 +0000 (12:13 -0700)]
Fix unused uniform bug in EGL robustness tests

Bug: 64845766
Bug: 65175554
Test: Ran tests on couple of Google devices
Change-Id: Iee2918c1e45ad305dd9ca30f1b81998bdac06127

7 years agoMerge "Fix missing SSBO binding in EGL robustness tests"
Treehugger Robot [Tue, 5 Sep 2017 17:18:37 +0000 (17:18 +0000)]
Merge "Fix missing SSBO binding in EGL robustness tests"

7 years agoFix issues in pipeline.timestamp.transfer_tests am: 0f672f2a20 am: 9e85a126d2
Pyry Haulos [Tue, 5 Sep 2017 15:31:59 +0000 (15:31 +0000)]
Fix issues in pipeline.timestamp.transfer_tests am: 0f672f2a20 am: 9e85a126d2
am: 342eb176e6

Change-Id: Icd88618ff5eb7cebfc9b0e210a24ecf4da68598f

7 years agoFix issues in pipeline.timestamp.transfer_tests am: 0f672f2a20
Pyry Haulos [Tue, 5 Sep 2017 15:22:27 +0000 (15:22 +0000)]
Fix issues in pipeline.timestamp.transfer_tests am: 0f672f2a20
am: 9e85a126d2

Change-Id: I86a852a2216971095d4aa256a97f0b8e68e73646

7 years agoFix issues in pipeline.timestamp.transfer_tests
Pyry Haulos [Tue, 5 Sep 2017 15:14:23 +0000 (15:14 +0000)]
Fix issues in pipeline.timestamp.transfer_tests
am: 0f672f2a20

Change-Id: Ib7e13db1c7801095b925890f226a38969a1b418e

7 years agoFixup some missing/incorrect flushes and invalidates
Gary Sweet [Mon, 4 Sep 2017 09:39:36 +0000 (10:39 +0100)]
Fixup some missing/incorrect flushes and invalidates

Some of the flushes were too small, and there were a few
missing invalidates.

Affects:
dEQP-VK.ssbo.layout.*
dEQP-VK.pipeline.push_constant.compute_pipeline.simple_test

Components: Vulkan

VK-GL-CTS issue: 660

Change-Id: Id29b59d127e004a028c04a1075db563d697140a1

7 years agoFix missing SSBO binding in EGL robustness tests
Mika Isojärvi [Thu, 31 Aug 2017 18:54:48 +0000 (11:54 -0700)]
Fix missing SSBO binding in EGL robustness tests

Bug: 64845581
Bug: 65175642
Test: Ran the tests on couple of Google devices
Change-Id: I3a98fe12802e6951483499e800cd3fe7412e37f0

7 years agoWhitelist new extensions for VK 1.0.2.6
Daniel Koch [Thu, 31 Aug 2017 13:48:53 +0000 (09:48 -0400)]
Whitelist new extensions for VK 1.0.2.6

VK-GL-CTS issue: 653
Component: Vulkan
Affects:
dEQP-VK.api.info.device.extensions

Change-Id: I7f5ef7511ce8312e67833e07c154cd6b9fea6041

7 years agoAdd tests for image copies between YCbCr formats
Mika Isojärvi [Tue, 15 Aug 2017 23:57:24 +0000 (16:57 -0700)]
Add tests for image copies between YCbCr formats

Components: Vulkan, Framework
VK-GL-CTS issue: 111

Change-Id: I3a7050ae5605c4397cd678e14438f851a7cf48ce
(cherry picked from commit f24269bdd0c4d3801c2118b153082f0b0223f55a)

7 years agoAdd tests for VK_KHR_sampler_ycbcr_conversion
Mika Isojärvi [Tue, 16 May 2017 21:17:49 +0000 (14:17 -0700)]
Add tests for VK_KHR_sampler_ycbcr_conversion

Components: Vulkan, Framework
VK-GL-CTS issue: 111

Change-Id: Id0810b196f0a148903922df3fc08f1c5db88f86e
(cherry picked from commit 595b5f763a8f6ef1c68bfd133a55ded9c25ac101)

7 years agoTest VK_KHR_dedicated_allocation mem requirement queries
Boris Zanin [Fri, 12 May 2017 08:11:01 +0000 (10:11 +0200)]
Test VK_KHR_dedicated_allocation mem requirement queries

Add tests:
 * dEQP-VK.memory.requirements.dedicated_allocation.buffer.*
 * dEQP-VK.memory.requirements.dedicated_allocation.image.*

Components: Vulkan

VK-GL-CTS issue: 391

Change-Id: I9510464987e33b395a5ac20c2fdb9129eefd91da
(cherry picked from commit 6c472cc5e98a1a73aeac019ce34cccac7f3fa30e)

7 years agoAdd tests for FragCoord interaction with multisampling
David Sodman [Fri, 24 Feb 2017 19:04:46 +0000 (11:04 -0800)]
Add tests for FragCoord interaction with multisampling

Components: Vulkan
VK-GL-CTS issue: 89

Test: fragcoord_msaa, frontface, fragdepth, clipping
Change-Id: Ibf342e63f224b88fe0b0cffde59b10b34afd1faf
(cherry picked from commit 69a7a0079a6cc06d556ecb5314f275d2fa01a60d)

7 years agoFix VS12 compilation error (typedef)
Maciej Jesionowski [Wed, 26 Jul 2017 13:53:13 +0000 (15:53 +0200)]
Fix VS12 compilation error (typedef)

Change-Id: Iebfece1455df2a49c79885d42f43817001a31b84
(cherry picked from commit 68c41978cf7a76391e898af7faaddea0598a3911)

7 years agoFix wrong transition in dEQP-VK.glsl.builtin_var.fragdepth
Slawomir Cygan [Wed, 5 Jul 2017 17:17:02 +0000 (19:17 +0200)]
Fix wrong transition in dEQP-VK.glsl.builtin_var.fragdepth

The test was using vkCmdClearDepthStencilImage to clear an
image, than used this image as a depth attachment in
redering performed by VulkanDrawContext utility.

However, this utility always starts the renderpass on depth
attachment from UNDEFINED layout. As no depth clear is done
in the renderpass, the depth attachment contents are undefined
(and initially cleared image contents may be corrupted).

The easiest fix here is to move the clear to LOAD_OP - as
is already done for color, leaving the UNDEFINED layout as is.

Affects: dEQP-VK.glsl.builtin_var.fragdepth*

Components: Vulkan
VK-GL-CTS issue: 559

Change-Id: Icef3289ba62f71bf1ed989f84085a4d9d3b7218a
(cherry picked from commit f3a36239082b721e1f5f6849afc70af65b42e3ed)

7 years agoAdd test for FragDepth shader built-in
David Sodman [Fri, 24 Feb 2017 18:41:59 +0000 (10:41 -0800)]
Add test for FragDepth shader built-in

Components: Vulkan

VK-GL-CTS issue: 93

Test: fragdepth, frontface, clipping
Change-Id: I531e39a58dd6b577108bff14b2206d7bf9d9cd4f
(cherry picked from commit 3aeb0c565fe64441466247fe381fc815209d46e4)

7 years agoExtend gl_FrontFacing tests
David Sodman [Tue, 6 Sep 2016 21:05:59 +0000 (14:05 -0700)]
Extend gl_FrontFacing tests

Update gl_FrontFacing tests to include more tests as well as to use the
vktDrawUtil utility class

Change-Id: If94fb552f5f9366c79ffa3fcac6f085611a23f65
(cherry picked from commit 417115b2676c3064a06385184573b6d7a0644f42)

7 years agoAdd ability to generate images with the reference renderer
David Sodman [Fri, 9 Sep 2016 02:58:35 +0000 (19:58 -0700)]
Add ability to generate images with the reference renderer

*Separate DrawContext into a DrawContext and DrawContextState to reflect
  graphics API's are split between state and action parts
* Add abstract DrawContext class

Test: Test clipping and synchronization primitives

Change-Id: I9f3945c6c3de169325fadea7bf70a9d5d7bfd932
(cherry picked from commit 11da53fb71eced942e89bac59407a5681dba3bb1)

7 years agoAdd Vulkan DrawContext utility class
David Sodman [Thu, 1 Sep 2016 17:40:21 +0000 (10:40 -0700)]
Add Vulkan DrawContext utility class

This is the first in a series of changes to move the DrawContext class
for more general use.

Test: run clipping tests on Vulkan
Affects: dEQP-VK.clipping.*

Change-Id: Ia9b8953d25c10ec2a6c227bf300637dcd62ea898
(cherry picked from commit 9a928cdc2014c830eb8cb43043746f8f2ea6969a)

7 years agoVK_KHR_maintenance2: View block-compressed add check shader_read_only_optimal
Arkadiusz Sarwa [Tue, 29 Aug 2017 14:40:58 +0000 (16:40 +0200)]
VK_KHR_maintenance2: View block-compressed add check shader_read_only_optimal

Affects:
* dEQP-VK.image.texel_view_compatible.compute.extended.image_load.*
* dEQP-VK.image.texel_view_compatible.compute.extended.texel_fetch.*
* dEQP-VK.image.texel_view_compatible.compute.extended.texture.*
* dEQP-VK.image.texel_view_compatible.compute.extended.image_store.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.attachment_read.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.attachment_write.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.texture_read.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.texture_write.*

Components: Vulkan

VK-GL-CTS issue: 124

Change-Id: Ida0c7b8085e7ca90c325ffb0477773e8b09bf564
(cherry picked from commit 62e68c3916ce22a76b44bec91e470abc42cd6e92)

7 years agoVK_KHR_maintenance2: extended_usage_bit tests
Boris Zanin [Tue, 8 Aug 2017 09:59:32 +0000 (11:59 +0200)]
VK_KHR_maintenance2: extended_usage_bit tests

Add tests:
 * dEQP-VK.image.extended_usage_bit.*

Components: Vulkan

VK-GL-CTS issue: 614

Change-Id: Ied6251e642746d5f37aa7b2fe3f262061f765f8f
(cherry picked from commit dcae428a67a0bccf2a6694075dd06115f0eb1db7)

7 years agoFix build errors with uint32_t vktImageMutableTests.cpp
Arkadiusz Sarwa [Tue, 29 Aug 2017 10:39:57 +0000 (12:39 +0200)]
Fix build errors with uint32_t vktImageMutableTests.cpp

Change-Id: I072fade98fd20b6a4a0389e9a63e790d36d6c0d0
Components: Vulkan
(cherry picked from commit 1afc0a15d483701f3319467f7a3f1d9b47692f66)

7 years agoVK_KHR_maintenance2: View block-compressed speedup
Boris Zanin [Thu, 24 Aug 2017 08:29:06 +0000 (10:29 +0200)]
VK_KHR_maintenance2: View block-compressed speedup

Do strict comparison first, if it fails use fuzzy.

Update tests:
* dEQP-VK.image.texel_view_compatible.compute.*

Components: Vulkan

VK-GL-CTS issue: 124

Change-Id: I1ad580d60638ba3fce83fc913819608d5d9a8812
(cherry picked from commit c9e2dea449429762592af0530b609cf80ab913ce)

7 years agoVK_KHR_maintenance2: View block-compressed formats extended tests
Arkadiusz Sarwa [Fri, 21 Jul 2017 14:35:33 +0000 (16:35 +0200)]
VK_KHR_maintenance2: View block-compressed formats extended tests

Add tests:
* dEQP-VK.image.texel_view_compatible.compute.extended.image_load.*
* dEQP-VK.image.texel_view_compatible.compute.extended.texel_fetch.*
* dEQP-VK.image.texel_view_compatible.compute.extended.texture.*
* dEQP-VK.image.texel_view_compatible.compute.extended.image_store.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.attachment_read.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.attachment_write.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.texture_read.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.texture_write.*

Update tests:
* dEQP-VK.image.texel_view_compatible.compute.basic.*
* dEQP-VK.image.texel_view_compatible.graphic.basic.*

Components: Vulkan

VK-GL-CTS issue: 124

Change-Id: Ia51ece39a339617302ec4f2a48c9133a3f9423d4
(cherry picked from commit 90d87fdceed790f9542acb19c3da196951c4d2dc)

Fix build errors with makeViewport

Local makeViewport cannot be used in recently added tests
in vktImageMutableTests.

Fix: Remove local makeViewport and use one from vkTypeUtil.inl

Components: Vulkan

VK-GL-CTS issue: 124

Change-Id: I27c9c255d9e46a74a6528327339317ba74e5eb98
(cherry picked from commit 310b00cc9869e26e85e620b55b6ad3a7efeb8d90)

7 years agoFramework support for VK_KHR_sampler_ycbcr_conversion
Pyry Haulos [Mon, 12 Jun 2017 20:52:42 +0000 (13:52 -0700)]
Framework support for VK_KHR_sampler_ycbcr_conversion

Change-Id: I749b92c79766f933ea34bb183d3d34c102e023c2
(cherry picked from commit e5cf8de067694afde10873b6fdbd7907486e5611)

7 years agoAdd support for 10 and 12bit packed unorm formats
Mika Isojärvi [Thu, 4 May 2017 22:55:19 +0000 (15:55 -0700)]
Add support for 10 and 12bit packed unorm formats

10 and 12bit unsigned normalized values are packed into highers bits
of 16bit unsigned int.

Change-Id: I18a88547ba29003961bf0806a50cb17995c72f13
Components: Framework
(cherry picked from commit 07621ffcf0362606afeccf2c2deac35bc0f3668a)

7 years agoAdd tests for VK_KHR_image_format_list
Iago Toral Quiroga [Tue, 4 Jul 2017 08:59:45 +0000 (10:59 +0200)]
Add tests for VK_KHR_image_format_list

Components: Vulkan
VK-GL-CTS issue: 550

New tests:
dEQP-VK.image.mutable.*_format_list

Change-Id: Ic72304a65c76335c98764678e056f030fafba71f
(cherry picked from commit dcd00f2f316fae0b86e1b03a8cf22774ce312c1d)

7 years agoExpand tests for mutable images
Iago Toral Quiroga [Thu, 29 Jun 2017 05:37:41 +0000 (07:37 +0200)]
Expand tests for mutable images

Currently, only the image load/store tests use mutable images,
but these require the images's layout to be
VK_IMAGE_LAYOUT_GENERAL (requirement for image load/store) so they
don't provide coverage for the most interesting scenarios.

These tests add cases that mix combined image upload/download
methods that exercise various other image layouts and scenarios.
Specifically, it tests each of [copy, clear, draw, store] upload
methods with each of [copy, load, texture] download methods.

Components: Vulkan
VK-GL-CTS issue: 513

New Tests:
dEQP-VK.image.mutable.*

Change-Id: I01cd77ab250f9934e71f5c9997b850950c9bd552
(cherry picked from commit 16b30ca0f65fc9c6a1508d1f99ba1f6014f4e828)

7 years agoTests for VK_KHR_bind_memory2
Marcin Rogucki [Fri, 21 Jul 2017 11:44:23 +0000 (13:44 +0200)]
Tests for VK_KHR_bind_memory2

Regular and aliased bindings with suballocated and
dedicatedly allocated memory are exercised.

Added tests:
 * dEQP-VK.memory.binding.*

Components: Vulkan

VK-GL-CTS issue: 434

Change-Id: I853ca8b007a9b2f6340ed60cca1a5cb35887ec11
(cherry picked from commit a0aa054cbddcebe880d12836fae9a24ad4eade9f)

7 years agoVK_KHR_maintenance2: View block-compressed formats
Arkadiusz Sarwa [Fri, 9 Jun 2017 15:58:01 +0000 (17:58 +0200)]
VK_KHR_maintenance2: View block-compressed formats

Add tests:
 * dEQP-VK.image.texel_view_compatible.compute.image_load.*
 * dEQP-VK.image.texel_view_compatible.compute.texel_fetch.*
 * dEQP-VK.image.texel_view_compatible.compute.texture.*
 * dEQP-VK.image.texel_view_compatible.compute.image_store.*
 * dEQP-VK.image.texel_view_compatible.graphic.attachment_read.*
 * dEQP-VK.image.texel_view_compatible.graphic.attachment_write.*
 * dEQP-VK.image.texel_view_compatible.graphic.texture_read.*
 * dEQP-VK.image.texel_view_compatible.graphic.texture_write.*

Components: Vulkan

VK-GL-CTS issue: 124

Change-Id: I8f12778e764144198dab603dbef72257faed0503
(cherry picked from commit 52af60c002b457dbc09044dc2e88ccee9cb59555)

7 years agoVK_KHR_maintenance2: Point clipping
Boris Zanin [Mon, 10 Apr 2017 17:14:55 +0000 (19:14 +0200)]
VK_KHR_maintenance2: Point clipping

Updated tests:
 * dEQP-VK.clipping.clip_volume.clipped.large_points
 * dEQP-VK.rasterization.primitives.lines_wide
 * dEQP-VK.rasterization.primitives.line_strip_wide
 * dEQP-VK.rasterization.primitives_multisample_2_bit.lines_wide
 * dEQP-VK.rasterization.primitives_multisample_4_bit.lines_wide
 * dEQP-VK.rasterization.primitives_multisample_8_bit.lines_wide

Components: Vulkan

VK-GL-CTS issue: 126

Change-Id: Id0cecb96e8a448ec3eb09e2a25d6c82acd837057
(cherry picked from commit 14bfa832d795dca9057699e867d0273db95c7de4)

7 years agoVK_KHR_maintenance2: New depth and stencil layouts
Mika Isojärvi [Fri, 21 Apr 2017 22:33:54 +0000 (15:33 -0700)]
VK_KHR_maintenance2: New depth and stencil layouts

New Tests:
dEQP-VK.renderpass.formats.d24_unorm_s8_uint.*.*_depth_read_only
dEQP-VK.renderpass.formats.d24_unorm_s8_uint.*.*_stencil_read_only
dEQP-VK.renderpass.formats.d24_unorm_s8_uint.input.*.*_depth_read_only
dEQP-VK.renderpass.formats.d24_unorm_s8_uint.input.*.*_stencil_read_only

dEQP-VK.renderpass.formats.d32_sfloat_s8_uint.*.*_depth_read_only
dEQP-VK.renderpass.formats.d32_sfloat_s8_uint.*.*_stencil_read_only
dEQP-VK.renderpass.formats.d32_sfloat_s8_uint.input.*.*_depth_read_only
dEQP-VK.renderpass.formats.d32_sfloat_s8_uint.input.*.*_stencil_read_only

VK-GL-CTS issues: 339
Components: Vulkan

Change-Id: Ifac0a3a5fe861440424f85029dd25bad5755cd63
(cherry picked from commit 226ae75fa4fc85eaa46b1544dc8871fceeeb759c)

7 years agoVK_KHR_maintenance2: Tessellation domain origin
Pyry Haulos [Tue, 18 Apr 2017 21:49:12 +0000 (14:49 -0700)]
VK_KHR_maintenance2: Tessellation domain origin

This change extends existing dEQP-VK.tessellation.winding tests with
variants that supply tessellation domain origin when creating the
pipeline.

Existing tests in the group have been moved under "default_domain"
group.

VK-GL-CTS issue: 127
Components: Vulkan

Change-Id: Ib3ed3fd32dc66805d139db08a2c0546650d0de5f
(cherry picked from commit 333b51b00a943447c0eb921f04b2804af428dfc9)

7 years agoAdd yflip versions of tessellation winding order tests
Jason Ekstrand [Thu, 26 Jan 2017 22:27:48 +0000 (14:27 -0800)]
Add yflip versions of tessellation winding order tests

Changed: dEQP-VK.tessellation.winding.triangles_*

Components: Vulkan

Change-Id: I3e0abc8d25132e129cb2979b1fce985ca4a60dc4
(cherry picked from commit a9c1d0abb740baa5f368758f17142336baeb17f9)