platform/upstream/VK-GL-CTS.git
6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 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)

6 years agoVK_KHR_maintenance2: Render pass input aspect specifiers
Mika Isojärvi [Thu, 13 Apr 2017 20:53:21 +0000 (13:53 -0700)]
VK_KHR_maintenance2: Render pass input aspect specifiers

VK-GL-CTS issues: 125
Components: Vulkan

Change-Id: I32a88f1d82560df4bc1b8f7cac483a074434ec86
(cherry picked from commit a1a041546262e8ad17fa62f40af8b293ebbb698a)

6 years agoAdd framework support for VK_KHR_maintenance2
Pyry Haulos [Thu, 8 Jun 2017 19:32:17 +0000 (12:32 -0700)]
Add framework support for VK_KHR_maintenance2

Components: Vulkan

VK-GL-CTS issue: 199

Change-Id: I9112fc0c44c6516e5e65d53535c9b0247f91e272
(cherry picked from commit 59b5bb0016f0f0bc6a2e3973016ae6f90655ac7c)

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Alexander Galazin [Thu, 31 Aug 2017 17:02:20 +0000 (19:02 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I5dfa06e462512838179803963ddd04094679aa4f

6 years agoMake create_buffer test use platform limits
Alex Walters [Thu, 17 Aug 2017 14:53:01 +0000 (15:53 +0100)]
Make create_buffer test use platform limits

The create_buffer tests use a maximum buffer size of half the heap size
as reported by vkGetPhysicalDeviceMemoryProperties. On systems where
device memory comes out of system memory, due to the memory in use in
the system the selected buffer size may be too large.

The heap size is checked against the platform limits, the min is taken
and that is used as the basis for calculating the buffer size to test

Affects:

dEQP-VK.api.buffer.createBuffer_*

Components: Vulkan

VK-GL-CTS issue: 362

Change-Id: I7a644e8e48b961dad0d19675e3d54add4b11d99c

6 years agodEQP-VK.geometry: use proper layout for sampling the image
Slawomir Cygan [Wed, 30 Aug 2017 13:36:27 +0000 (15:36 +0200)]
dEQP-VK.geometry: use proper layout for sampling the image

While 'GENERAL' layout is acceptable layout for sampling image, the barrier in
geometry\vktGeometryBasicGeometryShaderTests.cpp:235
transitions the image to `SHADER_READ_ONLY_OPTIMAL` layout.

Both layout must much, otherwise the behavior is undefined.

Affects:
dEQP-VK.geometry.basic.output_vary_by_texture_instancing
dEQP-VK.geometry.basic.output_vary_by_texture

Components: Vulkan

VK-GL-CTS issue: 648

Change-Id: I2b947a150173f0a060cfbf851d117ef91097c1d8

6 years agoFix flakiness in mailbox.display_timing
Ian Elliott [Wed, 16 Aug 2017 21:11:57 +0000 (15:11 -0600)]
Fix flakiness in mailbox.display_timing

The "vktWsiDisplayTimingTests.cpp" file was originally written just for
a present mode of VK_PRESENT_MODE_FIFO_KHR.  It has a case at image 80,
where it changes the desiredPresentTime to be 1 second earlier, and then
checks that later.  Such a check doesn't work with
VK_PRESENT_MODE_MAILBOX_KHR, which can throw off the timing of images
(because some images may not be presented).  This has resulted in the
test having random failures.  The "image 80 test" wasn't intended to
occur with MAILBOX, and so it's now being removed.

VK-GL-CTS issue: 622
Components: Vulkan
Affects: dEQP-VK.wsi.*.display_timing.mailbox.display_timing

Change-Id: I9fbd2254b4e6fc1c7bff077c8c0a5229a6d74800

6 years agoAdd more allowed 'dot' alternatives
Alexander Galazin [Thu, 17 Aug 2017 14:16:09 +0000 (16:16 +0200)]
Add more allowed 'dot' alternatives

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

Components: Vulkan

VK-GL-CTS issue: 634

Affects:
dEQP-VK.glsl.builtin.precision.dot.*
dEQP-VK.glsl.builtin.precision.reflect.*

Change-Id: I7fecbfa1cde04eab95bb3d418972631727d6d6af

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Alexander Galazin [Fri, 11 Aug 2017 16:32:00 +0000 (18:32 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: Iae127509ee1d187291e37c0ee9da7d331b070646

6 years agoKeep buffer memory alive through BufferView creation
Gary Sweet [Wed, 26 Jul 2017 09:50:31 +0000 (10:50 +0100)]
Keep buffer memory alive through BufferView creation

The device memory used to create a buffer was going out
of scope and being freed too early. A buffer view was
subsequently made using the buffer. This is invalid.

This change extends the lifetime of the buffer memory to
match the buffer.

Affects:

dEQP-VK.api.buffer_view.create.*

Components: Vulkan

VK-GL-CTS issue: 574

Change-Id: I6605da750d6494587781285447a157ef12018459

6 years agoFix combined depth/stencil clear colors.
Dave Airlie [Thu, 27 Jul 2017 19:43:53 +0000 (05:43 +1000)]
Fix combined depth/stencil clear colors.

This test was clearing depth to 256.0, values > 1.0 are undefined.

This fixes the the combined depth/stencil clears to use valid values
for depth and stencil.

Affects:
dEQP-VK.api.copy_and_blit.core.image_to_image.all_formats.depth_stencil.*

VK-GL-CTS Issue: 591

Change-Id: I75fd7e2bf17a84f7a2730f36b4bcdc066af1177c

6 years agoFixed incorrect calculation of GCD
Oivind Boge [Thu, 10 Aug 2017 10:24:02 +0000 (12:24 +0200)]
Fixed incorrect calculation of GCD

The calculation of greatest common divisor was
implemented incorrect when first added.
The function was using the input parameter instead
of its local copy of the input, which is updated
for each iteration of the calculation.

Affects:

dEQP-VK.api.image_clearing.*

Components: Vulkan

VK-GL-CTS issue: 625

Change-Id: I6619e4a30d89148d2567a725dbd27161fcf29a47

6 years agoFix layout transition for WSI tests
Oivind Boge [Sat, 8 Jul 2017 12:09:12 +0000 (14:09 +0200)]
Fix layout transition for WSI tests

The initial layout of the renderpass can't be
COLOR_ATTACHMENT_OPTIMAL without any transition
happening upfront.

Affects:
dEQP-VK.wsi.android.display_timing.*
dEQP-VK.wsi.android.incremental_present.*

Components: Vulkan

VK-GL-CTS issue: 565

Change-Id: Ie62f7aee21c52145090bf228db7031c0e4afb347

6 years agoRespect sampleRateShading availability in interpolate tests
Gary Sweet [Thu, 27 Jul 2017 10:42:40 +0000 (11:42 +0100)]
Respect sampleRateShading availability in interpolate tests

Most of the tests in the dEQP-VK.pipeline.multisample_interpolation
group use one of the interpolatAt*() functions in their shaders.
These are only valid if sampleRateShading is available.

The multisampleStateInfo also blindly sets sampleShadingEnable
to true without checking.

Affects:

dEQP-VK.pipeline.multisample_interpolation.*

Components: Vulkan

VK-GL-CTS issue: 600

Change-Id: I95f91af9a7abb1e55ff2a3da0c0daefb819226f9

6 years agoFix regressions in synchronization tests for dedicated allocations
Slawomir Cygan [Mon, 31 Jul 2017 12:22:50 +0000 (14:22 +0200)]
Fix regressions in synchronization tests for dedicated allocations

Pass image memory requirements to allocation routine in allocateAndBindMemory.

VK_KHR_get_memory_requirements2 is a device extension (not instance).

Throw NotSupported when external handle requires dedicated allocation,
but 'suballocated' variant of test is being run.

Affects:
dEQP-VK.synchronization.cross_instance.*

Components: Vulkan

VK-GL-CTS issue: 604

Change-Id: I3636779459300f5dee2e22b0a2e04762eb7b0601

6 years agoRespect maximum workgroup count in SpvAsmInstructionTests
Gary Sweet [Tue, 8 Aug 2017 08:44:35 +0000 (09:44 +0100)]
Respect maximum workgroup count in SpvAsmInstructionTests

The createOpAtomic group was using a hard-coded 1000000
for numElements which is later used as the workgroup count.
The minimum mandatory workgroup count is 65535, far less
than the 1000000 being used.

Affects:

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

Components: Vulkan

VK-GL-CTS issue: 613

Change-Id: I523451d33dbb116e6ca2aaa00a948ec6782382b3

6 years agoSparse buffer test: allocate memory in one big chunk
Maciej Jesionowski [Wed, 26 Jul 2017 13:33:59 +0000 (15:33 +0200)]
Sparse buffer test: allocate memory in one big chunk

The test made excessive small memory allocations breaking the
maxMemoryAllocationCount limit.

Affects:

dEQP-VK.sparse_resources.buffer.transfer.sparse_binding.buffer_size_2_24

Components: Vulkan
VK-GL-CTS issue: 592

Change-Id: Ic7c1c07db2b805806e2c940d3fd4d96e12043aaf

6 years agoAllow VK_KHR_relaxed_block_layout extension
Daniel Koch [Wed, 26 Jul 2017 17:38:21 +0000 (13:38 -0400)]
Allow VK_KHR_relaxed_block_layout extension

VK-GL-CTS Issue: 596

Affects:
dEQP-VK.api.info.device.extensions

Change-Id: I25395cbc76e2a4a176c74e9d46f16f3e105c4669
Component: Vulkan

6 years agoSparse buffer test: allocate memory in one big chunk
Maciej Jesionowski [Wed, 26 Jul 2017 13:33:59 +0000 (15:33 +0200)]
Sparse buffer test: allocate memory in one big chunk

The test made excessive small memory allocations breaking the
maxMemoryAllocationCount limit.

Affects:

dEQP-VK.sparse_resources.buffer.transfer.sparse_binding.buffer_size_2_24

Components: Vulkan
VK-GL-CTS issue: 592

Change-Id: Ic7c1c07db2b805806e2c940d3fd4d96e12043aaf

6 years agoAdd VK_KHR_relaxed_block_layout
Arkadiusz Sarwa [Wed, 15 Mar 2017 15:02:07 +0000 (16:02 +0100)]
Add VK_KHR_relaxed_block_layout

New tests:

dEQP-VK.ssbo.layout.multi_basic_types.*.relaxed_block*
dEQP-VK.ssbo.layout.random.relaxed.*

VK-GL-CTS issue: 117
Components: Vulkan

Change-Id: Ieda2aa291dcbff250b81e0da06c39781800f4af7
(cherry picked from commit 2a11db7c2e23afd4bef2f9a0eab84356d912ff3c)

6 years agoAdd GlslBuildOptions::FLAG_ALLOW_RELAXED_OFFSETS
Arkadiusz Sarwa [Tue, 9 May 2017 14:45:32 +0000 (16:45 +0200)]
Add GlslBuildOptions::FLAG_ALLOW_RELAXED_OFFSETS

Enabling the flag allows GLSL to use layout(offset = N) qualifiers that
follow VK_KHR_relaxed_block_layout rules instead of GLSL std140/std430
rules.

Components: Vulkan

Change-Id: I4f168b04ad0916b740891b603ddde2de0f4bcf50
(cherry picked from commit 4b82e12d3a7bf0947887e0b9d586d0ab63bd4888)

6 years agoSelect correct memory heap index for memory import
Tony Zlatinski [Wed, 19 Jul 2017 21:21:53 +0000 (16:21 -0500)]
Select correct memory heap index for memory import

When importing memory, the application (CTS) should follow
the spec rules about memory imports. I.e. The application must use the
same memory heap index for the import that has been used for the
exported memory. In addition, the application can't
import a buffer or image to a heap that does not support CPU mapping and
expect the memory to be CPU mappable/accessible.

This change modifies the export memory routines, now, returning the
index of the heap memory used for the export. Then the import routines are
modified to use those indexes for the memory import operations.

Components: Vulkan

Affects:
    dEQP-VK.api.external.memory.*
    dEQP-VK.synchronization.cross_instance.*

VK-GL-CTS issue: 585

Change-Id: I48ab85b7fd2b67655163f055fb03e8f2a3a42fd6

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Alexander Galazin [Fri, 21 Jul 2017 17:51:48 +0000 (19:51 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: Ifac39caba5598cbb75d5fb25d271ad0b709140a6

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1
Alexander Galazin [Fri, 21 Jul 2017 17:44:17 +0000 (19:44 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1

Change-Id: If1266ef43a81d4d015c3f656315ea629acbbd55e

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Alexander Galazin [Fri, 21 Jul 2017 16:55:45 +0000 (18:55 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I65f618365df474653f68d311647f601f91a38e4b

6 years agoFix layout transition in blitting tests
Igor Ostrowski [Tue, 4 Jul 2017 16:01:23 +0000 (18:01 +0200)]
Fix layout transition in blitting tests

Affects:
dEQP-VK.api.copy_and_blit.*.blit_image.*

Components: Vulkan
VK-GL-CTS issue: 571

Change-Id: I780374a8fbff336a7789bd6a745e635ac1202b62

6 years agoAdd metadata bindings in sparse tests
Igor Ostrowski [Wed, 12 Jul 2017 13:15:14 +0000 (15:15 +0200)]
Add metadata bindings in sparse tests

All metadata must be bound prior to device use of the sparse image

Affects:
dEQP-VK.sparse_resources.image_sparse_residency.*
dEQP-VK.sparse_resources.mipmap_sparse_residency.*
dEQP-VK.sparse_resources.shader_intrinsics.*

dEQP-VK.glsl.texture_functions.*sparse*
dEQP-VK.glsl.texture_gather.*sparse*

Components: Vulkan
VK-GL-CTS issue: 572

Change-Id: I4bbf2b74ed7fc0cea000084769cbed0dbe4a802e

6 years agoFix incorrect scale in pipeline_barrier tests
JarredDavies [Fri, 14 Jul 2017 14:55:46 +0000 (15:55 +0100)]
Fix incorrect scale in pipeline_barrier tests

The ImageBlitFromImage verfication code incorrectly scales the refrence image it creates.
The test should add 0.5 to the x and y coords before scaling them.

Affects:
dEQP-VK.memory.pipeline_barrier.*

Components: Vulkan

VK-GL-CTS issue: 577

Change-Id: I28d0b4deec0f1837c21cdc2dc68a9169ca8ae96b

6 years agocopies_and_blitting: fix ambiguous signed normalized 1.0 value
Slawomir Cygan [Thu, 6 Jul 2017 17:24:18 +0000 (19:24 +0200)]
copies_and_blitting: fix ambiguous signed normalized 1.0 value

Below tests copy floats to signed normalized 8-bit values.
In that process it happens that 1.0 float value is copied to 8_snorm
elements as: {0x00, 0x00, 0x80, 0x3f}

According to spec, on SNORM values:

"Note that while zero is exactly expressible in this representation,
one value (-128 in the example) is outside the representable range,
and must be clamped before use."

The problem occurs when 0x80 == 128 value is copied to buffer:
as it falls outside of <-1,1> range, it may be clamped to 0x81 (both values
represent -1.0 SNORM value).

The change here processes all result and expected data buffers to remove
all ambiguites by converting to float and back to signed normalized format.

Affects:
dEQP-VK.api.copy_and_blit.*.image_to_image.all_formats.color.r32_sfloat.a8b8g8r8_snorm_pack32.*
dEQP-VK.api.copy_and_blit.*.image_to_image.all_formats.color.r32_sfloat.r8g8b8a8_snorm.*

Components: Vulkan

VK-GL-CTS issue: 563

Change-Id: I175665f39811cf6a80862967ad0a9bb8e13527e9

6 years agoRelax threshold in cube map filtering tests
Yanjun Zhang [Fri, 7 Jul 2017 20:45:59 +0000 (13:45 -0700)]
Relax threshold in cube map filtering tests

Use the same colorThreshold calculation as GLES CTS so Vulkan CTS
has the same behavior as GLES CTS.

Components: Vulkan

Affects:
dEQP-VK.pipeline.sampler.view_type.cube.format.r5g6b5_unorm_pack16.*

VK-GL-CTS issue: 561

Change-Id: I9bd632bb242f653b1f2d8bb50ee9867da926e95b

6 years agocross_instance sync: run without VK_KHR_get_memory_requirements2
Slawomir Cygan [Fri, 7 Jul 2017 14:41:30 +0000 (16:41 +0200)]
cross_instance sync: run without VK_KHR_get_memory_requirements2

This extension is used in the test, to check if resource needs dedicated
allocations (to be used created by dependent VK_KHR_dedicated_allocation
extension).

If the extension is not supported assume there is no need for dedicated
allocations.

Affects: dEQP-VK.synchronization.cross_instance.*

VK-GL-CTS issue: 548
Components: Vulkan

Change-Id: Icb4f5a34b98da213d0cb665bcc4e6b048d7b8a3c

6 years agoRefactor synchronization test code to avoid compiler warning
gkbldval [Fri, 14 Jul 2017 16:49:26 +0000 (18:49 +0200)]
Refactor synchronization test code to avoid compiler warning

vkt::synchronization::s_resources is unused in recently
added file, causing -Wunused warning (treated as error).

Affects: dEQP-VK.synchronization.*

Components: Vulkan

VK-GL-CTS issue: 578

Change-Id: Ifd8ce0812673e6b2da7c28bacb4384b3c80f65d1

6 years agoFix gcc 5.4 warnings
Alexander Galazin [Wed, 5 Jul 2017 15:09:38 +0000 (17:09 +0200)]
Fix gcc 5.4 warnings

gcc 5.4 (default in Ubuntu 16.04) reports conversion to int
warnings/errors for bitwise or and assign operator.

GCC bug: 40752

Components: Framework, Vulkan

Change-Id: Ia857c44cf54d5571d857e1fada0e2aaa8f4b950d
(cherry picked from commit 0bd8828618d95d2a83bc7475179a9227bfd22f5f)

6 years agoAdd option to skip fetch external sources
Alexander Galazin [Fri, 14 Jul 2017 07:48:05 +0000 (09:48 +0200)]
Add option to skip fetch external sources

Added option to check_build_sanity.py to skip running
fetch_sources.py. Allows to run multiple concurrent invocations
of check_build_sanity.py using the same source folder.

Components: Framework

Change-Id: I6289920860fb20287c405cefc0213c27f326857b

6 years agoWindows build fix. Use deUint types
Boris Zanin [Tue, 11 Jul 2017 12:31:58 +0000 (14:31 +0200)]
Windows build fix. Use deUint types

uint32_t and uint64_t have been replaced with
deUint32 and deUint64 recognizable by Windows.

Components: Vulkan

VK-GL-CTS issue: 358

Change-Id: I5b80d861a63005011f3d0b663d802f97321148f8

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.2-confidential-rc into vk-gl-cts/vulkan-cts-1.0.2
Alexander Galazin [Mon, 10 Jul 2017 15:52:41 +0000 (17:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2-confidential-rc into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I328c6582580bf287a02201c200fb4e477c259508

6 years agoFix for variable pointer (writes) in tess.control
Ehsan Nasiri [Fri, 30 Jun 2017 22:58:19 +0000 (18:58 -0400)]
Fix for variable pointer (writes) in tess.control

Use patch index to avoid multiple increments

VK-GL-CTS issue: 543

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.graphics.writes*tess*

Change-Id: If518fdae084722cc28f19044186dbda07880a50c

6 years agocross_instance sync tests: add support for non-KMT Win32 handles
Slawomir Cygan [Mon, 3 Jul 2017 13:45:47 +0000 (15:45 +0200)]
cross_instance sync tests: add support for non-KMT Win32 handles

This adds tests for *HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR
handle types.

Affects: dEQP-VK.synchronization.cross_instance.*win32*

VK-GL-CTS issue: 547
Components: Vulkan

Change-Id: I70a577195f5b303c7fd80f88606f35b83a1b2b11

6 years agoWrong handle in external fence reset tests
Slawomir Cygan [Mon, 3 Jul 2017 16:50:01 +0000 (18:50 +0200)]
Wrong handle in external fence reset tests

The `importFence()` function resets the passed handle at the end,
so in two consecutive calls the second one is going to use the
wrong handle.

To avoid that the handle is duplicated.

Affects: dEQP-VK.api.external.fence.*reset_*

VK-GL-CTS issue: 549
Components: Vulkan

Change-Id: I2218d2f5ceffe52afe6a2306c3eebac79a24b5a9

6 years agoFix gcc 6.3 warnings
Alexander Galazin [Wed, 5 Jul 2017 13:29:21 +0000 (15:29 +0200)]
Fix gcc 6.3 warnings

Components: Vulkan

Change-Id: I0e4f8d09fef5a6d08a7b7db975de4a68879ea3f8

6 years agoRemove individual 3D slice layout transitions
Noah Fredriks [Wed, 31 May 2017 18:01:35 +0000 (14:01 -0400)]
Remove individual 3D slice layout transitions

For VK_KHR_maintenance1 render to 3D slice tests using
VK_IMAGE_CREATE_2D_ARRAY_COMPATIBILITY_BIT_KHR, layout
transitions from undefined would actually affect all
slices in the complete mip level instead of just those
specified in the image view.  Therefore, don't use
VK_IMAGE_LAYOUT_UNDEFINED when previous subpasses may
have already rendered to the other slices.

Affects: dEQP-VK.pipeline.render_to_image.3d.*

VK-GL-CTS issue: 476
Components: Vulkan

Change-Id: I0cfde62c03f4400246eef192a382d5593c6997e5

6 years agoRemove individual 3D slice layout transitions
Noah Fredriks [Wed, 31 May 2017 18:01:35 +0000 (14:01 -0400)]
Remove individual 3D slice layout transitions

For VK_KHR_maintenance1 render to 3D slice tests using
VK_IMAGE_CREATE_2D_ARRAY_COMPATIBILITY_BIT_KHR, layout
transitions from undefined would actually affect all
slices in the complete mip level instead of just those
specified in the image view.  Therefore, don't use
VK_IMAGE_LAYOUT_UNDEFINED when previous subpasses may
have already rendered to the other slices.

Affects: dEQP-VK.pipeline.render_to_image.3d.*

VK-GL-CTS issue: 476
Components: Vulkan

Change-Id: I4faaaf0d849ad89dd68ef643cfe38730221f8f55

6 years agoExclude variable pointers tests with stores to SSBOs in tess shaders
Alexander Galazin [Fri, 30 Jun 2017 11:51:02 +0000 (13:51 +0200)]
Exclude variable pointers tests with stores to SSBOs in tess shaders

VK-GL-CTS issue: 543

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.graphics.writes*tess*

Change-Id: I7f8f2f34dda2534e6dcc1f2e81e4a497741a4bfd

6 years agoAdd ArrayStride decoration to some pointers.
Ehsan Nasiri [Thu, 29 Jun 2017 19:04:52 +0000 (15:04 -0400)]
Add ArrayStride decoration to some pointers.

OpPtrAccessChain needs ArrayStride information on variable pointers.

VK-GL-CTS issue: 123

Components: Vulkan

Affects: dEQP-VK.spirv_assembly.instruction.*.variable_pointers.*

Change-Id: I04aa67814b39937b8eeb6254e341c117bc1fc956

6 years agoUse transfer queue with vkCmdFillBuffer
Maciej Jesionowski [Tue, 30 May 2017 08:27:34 +0000 (10:27 +0200)]
Use transfer queue with vkCmdFillBuffer

Due to an error in the condition, the transfer-only queue wasn't
selected for the fill buffer write operation.

Also fixed a validation error with barrier used inside a render pass
in read vertex input operation. This should have no effect on behavior.

Affects:

dEQP-VK.synchronization.op.multi_queue.*fill_buffer*
dEQP-VK.synchronization.op.*read_vertex_input*

Components: Vulkan
VK-GL-CTS issue: 481

Change-Id: Ibed24824532c0e35aba61238809f34717f431b6f
(cherry picked from commit 83af72c04b8723a33855fafc38b3f0a28537a124)

6 years agoExclude certain tests not inlcuded in 1.0.2.3
Alexander Galazin [Thu, 29 Jun 2017 19:45:14 +0000 (21:45 +0200)]
Exclude certain tests not inlcuded in 1.0.2.3

- image_clearing.*multiple_layer
- render_to_image mipmap tests and recently added formats
- sync Android and Khronos mustpasses

VK-GL-CTS issue: 542
Components: Vulkan, AOSP

Change-Id: I043680cb93ba7abdfac371f5a3e6f0b578b3af20

6 years agoExclude render pass multisample resolve tests
Alexander Galazin [Wed, 28 Jun 2017 13:29:13 +0000 (15:29 +0200)]
Exclude render pass multisample resolve tests

Components:Vulkan

Affects: dEQP-VK.renderpass.*.multisample_resolve.*

VK-GL-CTS issue: 538

Change-Id: I21271ceacbc28207b1dba7c09871f1f1871bf556

6 years agoReduce the max number of concurrent pipeline cache objects
Maciej Jesionowski [Wed, 28 Jun 2017 09:51:46 +0000 (11:51 +0200)]
Reduce the max number of concurrent pipeline cache objects

Previous maximum of 16k was excessive as these objects are expected to
have a significant size. Estimating their size based on allocation
callbacks may be not representative of the actual memory usage.

Affected tests:

dEQP-VK.api.object_management.max_concurrent.pipeline_cache

Components: Vulkan
VK-GL-CTS issue: 539

Change-Id: I17a868b993a55296417eee80dfa15c5559e4c20e

6 years agoReduce the max number of concurrent pipeline cache objects
Maciej Jesionowski [Wed, 28 Jun 2017 09:51:46 +0000 (11:51 +0200)]
Reduce the max number of concurrent pipeline cache objects

Previous maximum of 16k was excessive as these objects are expected to
have a significant size. Estimating their size based on allocation
callbacks may be not representative of the actual memory usage.

Affected tests:

dEQP-VK.api.object_management.max_concurrent.pipeline_cache

Components: Vulkan
VK-GL-CTS issue: 539

Change-Id: I17a868b993a55296417eee80dfa15c5559e4c20e

6 years agoUse transfer queue with vkCmdFillBuffer
Maciej Jesionowski [Tue, 30 May 2017 08:27:34 +0000 (10:27 +0200)]
Use transfer queue with vkCmdFillBuffer

Due to an error in the condition, the transfer-only queue wasn't
selected for the fill buffer write operation.

Also fixed a validation error with barrier used inside a render pass
in read vertex input operation. This should have no effect on behavior.

Affects:

dEQP-VK.synchronization.op.multi_queue.*fill_buffer*
dEQP-VK.synchronization.op.*read_vertex_input*

Components: Vulkan
VK-GL-CTS issue: 481

Change-Id: Ibed24824532c0e35aba61238809f34717f431b6f

6 years agoAdd new VK_KHR_variable_pointers extension tests
Ehsan Nasiri [Fri, 26 May 2017 19:06:15 +0000 (15:06 -0400)]
Add new VK_KHR_variable_pointers extension tests

These tests do not write to SSBOs, and therefore do not require the
vertexPipelineStoresAndAtomics and fragmentStoresAndAtomics device
features.

VK-GL-CTS issue: 123
Components: Vulkan
Affects: dEQP-VK.spirv_assembly.instruction.*.variable_pointers.*

Change-Id: I9a5f524a3a7ae7f0ddb295d983ba39bb0b4bcfa9

6 years agoAdd tests for SPV_KHR_variable_pointers extension
Ehsan Nasiri [Fri, 31 Mar 2017 20:40:35 +0000 (16:40 -0400)]
Add tests for SPV_KHR_variable_pointers extension

Compute tests and graphics tests are added for the
VK_KHR_variable_pointers
extension.

Components: Vulkan, Framework
VK-GL-CTS issue: 123
New Tests: dEQP-VK.spirv_assembly.instruction.*.variable_pointers.*

Change-Id: If2d01d626428d89a27432e2b1df33778e0b29f3b

6 years agoExclude multisample renderpass input attachment tests
Alexander Galazin [Tue, 27 Jun 2017 07:32:01 +0000 (09:32 +0200)]
Exclude multisample renderpass input attachment tests

VK-GL-CTS issue: 536
Components: Vulkan
Affects: dEQP-VK.renderpass.*.multisample.*

Change-Id: I34c7bc3f92141b92e645ce4f3da4029177b93b24

6 years agoExclude tests for resolving between images of different sizes
Alexander Galazin [Tue, 27 Jun 2017 07:24:20 +0000 (09:24 +0200)]
Exclude tests for resolving between images of different sizes

VK-GL-CTS issue: 534
Components: Vulkan
Affects: dEQP-VK.api.copy_and_blit.*.resolve_image.diff_image_size.*

Change-Id: Id80c74928d29556336a584c6ae85e261db10f935

6 years agoApplying missing changes from 7e5751
Alexander Galazin [Tue, 27 Jun 2017 07:10:41 +0000 (09:10 +0200)]
Applying missing changes from 7e5751

VK-GL-CTS issue: 533
Components: Vulkan
Affects: dEQP-VK.api.external.fence.*

Change-Id: I5578ab58c4839e8b43c6c1a43cd567be40996c12

6 years agoAdd VK_KHR_dedicated_allocation to allowed extensions
Alexander Galazin [Fri, 23 Jun 2017 22:50:32 +0000 (00:50 +0200)]
Add VK_KHR_dedicated_allocation to allowed extensions

Components: Vulkan
VK-GL-CTS issue: 153

Change-Id: Ia4a785bc31c4790d73375f01fbeb34d5936f7c80

6 years agoVK_KHR_dedicated_allocation: Image clears
Boris Zanin [Thu, 18 May 2017 14:49:40 +0000 (16:49 +0200)]
VK_KHR_dedicated_allocation: Image clears

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

Rename tests (add .core subgroup):
 * dEQP-VK.api.image_clearing.core.*

Add tests:
 * dEQP-VK.api.image_clearing.dedicated_allocation.*

Components: Vulkan

VK-GL-CTS issue: 153

Change-Id: Ia7d7703fb6d9818549d80b031e4e8ea2a9ecf509

6 years agoExtend dEQP-VK.api.image_clearing tests to cover layered images
Slawomir Cygan [Mon, 29 May 2017 17:23:01 +0000 (19:23 +0200)]
Extend dEQP-VK.api.image_clearing tests to cover layered images

This change adds new variang of image clearing test cases:
- *_multiple_layers
which use arrayed images and layered clears.

In the new tests variant both image views and clear operations
use layerCount smaller than `remaining` layers and non-zero
baseArrayLayer. It is expected that proper subset of layers
are cleared, while other layers are untouched.

All clear command variants (image, attachment), color formats
and image types are tested.

Affects: dEQP-VK.api.image_clearing

Components: Vulkan

VK-GL-CTS issue: 449

Change-Id: Ifedd393b14880697501df450b22740de76b6cd0c
(cherry picked from commit 1198740eef1b624f481d16302a5d311e512ba16b)

6 years agoVK_KHR_dedicated_allocation: Copies and blits
Boris Zanin [Mon, 15 May 2017 15:15:27 +0000 (17:15 +0200)]
VK_KHR_dedicated_allocation: Copies and blits

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

Rename tests (add .core subgroup):
 * dEQP-VK.api.copy_and_blit.core.*

Add tests:
 * dEQP-VK.api.copy_and_blit.dedicated_allocation.*

Components: Vulkan

VK-GL-CTS issue: 153

Change-Id: Ic42d141187a6fc0eade9a93f19e9cd9e821725fb

6 years agoAdd copy image to image and blit image tests with various image layouts. Refactor...
Igor Ostrowski [Mon, 2 Jan 2017 16:41:30 +0000 (17:41 +0100)]
Add copy image to image and blit image tests with various image layouts. Refactor copy and blit tests generation.

Tests took into account only optimal layout cases. Added general and mixed ones.
Structure of all copy and blit tests was too flat. Lowered granularity of test groups.

New tests:
- dEQP-VK.api.copy_and_blit.image_to_image.all_formats.*optimal_optimal*
- dEQP-VK.api.copy_and_blit.image_to_image.all_formats.*optimal_general*
- dEQP-VK.api.copy_and_blit.image_to_image.all_formats.*general_optimal*
- dEQP-VK.api.copy_and_blit.image_to_image.all_formats.*general_general*

- dEQP-VK.api.copy_and_blit.blit_image.all_formats.*optimal_optimal*
- dEQP-VK.api.copy_and_blit.blit_image.all_formats.*optimal_general*
- dEQP-VK.api.copy_and_blit.blit_image.all_formats.*general_optimal*
- dEQP-VK.api.copy_and_blit.blit_image.all_formats.*general_general*

Affected tests:
- dEQP-VK.api.copy_and_blit.*

Components: Vulkan

Change-Id: I5724bb7c0a3ccb2e36319a20671761a9b16fe4ed
(cherry picked from commit 78ba8d915b4558376b479833c862c51433cb882e)

6 years agoAdd NEAREST filtered blitting tests
Maciej Jesionowski [Tue, 27 Dec 2016 13:15:58 +0000 (14:15 +0100)]
Add NEAREST filtered blitting tests

This fixes a couple of issues with nearest filtered blitting tests
and adds them back to the mustpass.

- Corrected test case names (esp. for D/S formats)
- Modified common code used by linear cases too (shouldn't have
  an observable effect on tests)
- Used tcuTexLookupVerifier to sample source image with an offset
  that accounts for rounding errors in coordinate calculation
- Enabled nearest cases in mustpass

New tests:
- dEQP-VK.api.copy_and_blit.blit_image.all_formats.*_nearest

Modified tests:
- dEQP-VK.api.copy_and_blit.blit_image.all_formats.*

Fixes #483, #565

Change-Id: I176c2b50a656268a31f1f35fef1ff90647039727
(cherry picked from commit 396dacd30898c428105bc4f2f72b00240673f3a7)

6 years agoImprove the test generation in the copies and blitting tests
Gabor Abraham [Fri, 18 Nov 2016 10:22:53 +0000 (11:22 +0100)]
Improve the test generation in the copies and blitting tests

The generateBuffer function didn't handle the integer formats well.

Affected tests:
- dEQP-VK.api.copy_and_blit.image_to_image.all_formats.*int*
- dEQP-VK.api.copy_and_blit.blit_image.all_formats.*int*

Change-Id: I248136606d2535c176432bbc50de45e1e4e55b80
(cherry picked from commit a8efa9926e55631f2279871a07f3dfa51bf12ba5)

6 years agoVK_KHR_dedicated_allocation: Extend renderpass
Boris Zanin [Mon, 29 May 2017 14:41:31 +0000 (16:41 +0200)]
VK_KHR_dedicated_allocation: Extend renderpass

Update tests:
 * dEQP-VK.renderpass.*

Rename tests (add .suballocation subgroup):
 * dEQP-VK.renderpass.suballocation.*

Add tests:
 * dEQP-VK.renderpass.dedicated_allocation.*

Components: Vulkan

VK-GL-CTS issue: 153

Change-Id: Ibe140613592568d4388c4ded6563bc47f43ca552

6 years agoAdd render pass multisample resolve tests
Mika Isojärvi [Tue, 28 Mar 2017 20:45:01 +0000 (13:45 -0700)]
Add render pass multisample resolve tests

- Check that attachment components are resolved consistently
- Check that attachments are resolved consistently
- Check that integer formats always resolve to one of the samples
- Check that empty sample mask doesn't change values
- Check that all possible sample combinations of 1.0 and 0.0 values
  resolve to 0.5 on average.

VK-GL-CTS issues: 96
Components: Vulkan

Change-Id: I18b92ed713175cd935651575f4e48d9fd207ef00
(cherry picked from commit c8c44388f472dcbb6145b520c4a89e5ef02221b3)

6 years agoAdd multisample renderpass input attachment tests
Mika Isojärvi [Tue, 21 Mar 2017 23:12:51 +0000 (16:12 -0700)]
Add multisample renderpass input attachment tests

VK-GL-CTS issues: 96
Components: Vulkan

Change-Id: I9ea87736c82148515da3c2d95301e6302be4257d
(cherry picked from commit 35a2479cfd4c25ae820005254d7c595b0a181599)

6 years agoVK_KHR_dedicated_allocation: Extend render_to_image
Boris Zanin [Mon, 22 May 2017 13:13:23 +0000 (15:13 +0200)]
VK_KHR_dedicated_allocation: Extend render_to_image

Update tests:
 * dEQP-VK.pipeline.render_to_image.*

Rename tests (add .core subgroup):
 * dEQP-VK.pipeline.render_to_image.core.*

Add tests:
 * dEQP-VK.pipeline.render_to_image.dedicated_allocation.*

Components: Vulkan

VK-GL-CTS issue: 153

Change-Id: If4437ea7cf335f083e11d0939894391d34c5b76a

6 years agoAdd render to mipmaps tests
Maciej Jesionowski [Tue, 17 Jan 2017 15:36:33 +0000 (16:36 +0100)]
Add render to mipmaps tests

This test repeatedly draws into the same image using consecutive
mip levels as color and dept/stencil attachments. All mip levels
and array layers are exercised.

Modified tests:

dEQP-VK.pipeline.render_to_image.*

New tests:

dEQP-VK.pipeline.render_to_image.*.mipmap.*

Components: Vulkan
Vulkan CTS issue: 487, 535

Change-Id: I7e4b3c6978d069c0accc377e9ab6e9d05e8e3cc6
(cherry picked from commit 36640c9bfefdb414547c7575ec8adccf2e86263d)

6 years agoAdd max size attachments tests
Maciej Jesionowski [Tue, 17 Jan 2017 15:36:33 +0000 (16:36 +0100)]
Add max size attachments tests

This test creates very big color, and depth/stencil attachments
in all possible dimensions and layers.

Original tests in the affected group were moved to *.small.*
subgroup.

Modified tests:

dEQP-VK.pipeline.render_to_image.*.small.*

New tests:

dEQP-VK.pipeline.render_to_image.*.huge.*

Components: Vulkan
Vulkan CTS issue: 451, 535

Change-Id: I1e3bd1f7a657ff837b830bbada539a1240b1fd04
(cherry picked from commit 9c87bf6cfb1b8f99304b493a6846c15819da432a)

6 years agoVK_KHR_dedicated_allocation: Extend pipeline.image
Boris Zanin [Sun, 21 May 2017 20:21:49 +0000 (22:21 +0200)]
VK_KHR_dedicated_allocation: Extend pipeline.image

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

Rename tests (add .suballocation subgroup):
 * dEQP-VK.pipeline.image.suballocation.*

Add tests:
 * dEQP-VK.pipeline.image.dedicated_allocation.*

Components: Vulkan

VK-GL-CTS issue: 153

Change-Id: I0b25c08b830a44956dd0c26da39124364dbabb89

6 years agoVK_KHR_dedicated_allocation: Memory Mapping tests
Marcin Rogucki [Mon, 12 Jun 2017 10:42:41 +0000 (12:42 +0200)]
VK_KHR_dedicated_allocation: Memory Mapping tests

Update tests:
 * dEQP-VK.memory.mapping.*

Rename tests (added .suballocation subgroups):
 * dEQP-VK.memory.mapping.suballocation.*

Add tests:
 * dEQP-VK.memory.mapping.dedicated_alloc.buffer.*
 * dEQP-VK.memory.mapping.dedicated_alloc.image.*

Components: Vulkan

VK-GL-CTS issue: 153

Change-Id: Ia593c099dc6dcd36c1b45f210c48b8bba9600728

6 years agoVK_KHR_dedicated_allocation: Buffer tests
Marcin Rogucki [Fri, 12 May 2017 09:04:19 +0000 (11:04 +0200)]
VK_KHR_dedicated_allocation: Buffer tests

Update tests:
 * dEQP-VK.api.buffer.create_buffer_*
 * dEQP-VK.api.buffer_view.create.*
 * dEQP-VK.api.buffer_view.access.*
 * dEQP-VK.api.fill_and_update_buffer.*

Rename tests (added .suballocation subgroups):
 * dEQP-VK.api.buffer.suballocation.create_buffer_*
 * dEQP-VK.api.buffer_view.create.suballocation.create_buffer_view_*
 * dEQP-VK.api.buffer_view.access.suballocation.buffer_view_memory_test_complete
 * dEQP-VK.api.buffer_view.access.suballocation.buffer_view_memory_test_partial_offset0
 * dEQP-VK.api.buffer_view.access.suballocation.buffer_view_memory_test_partial_offset1
 * dEQP-VK.api.fill_and_update_buffer.suballocation.*

Add tests:
 * dEQP-VK.api.buffer.dedicated_alloc.create_buffer_*
 * dEQP-VK.api.buffer_view.create.dedicated_alloc.create_buffer_view_*
 * dEQP-VK.api.buffer_view.access.dedicated_alloc.buffer_view_memory_test_complete_*
 * dEQP-VK.api.buffer_view.access.dedicated_alloc.buffer_view_memory_test_partial_offset0_*
 * dEQP-VK.api.buffer_view.access.dedicated_alloc.buffer_view_memory_test_partial_offset1_*
 * dEQP-VK.api.fill_and_update_buffer.dedicated_alloc.*

Components: Vulkan

VK-GL-CTS issue: 153

Change-Id: I6f73cd218f9e59a4939adf804764388edaa63279

6 years agoUse deAlign64 in api.buffer and sparse_resources
Maciej Jesionowski [Tue, 10 Jan 2017 12:15:45 +0000 (13:15 +0100)]
Use deAlign64 in api.buffer and sparse_resources

Change-Id: I087d99db106555a806c6864e67c9af12fb5c67b2
(cherry picked from commit b1d1890c88c14529c145fb9ef20b1046233e4f50)

6 years agoAdd deInt64 alignment functions to delibs
Maciej Jesionowski [Tue, 10 Jan 2017 12:09:14 +0000 (13:09 +0100)]
Add deInt64 alignment functions to delibs

Change-Id: Icf66e7157ae6e972e0d7ef19486fa5b776da1eb0
(cherry picked from commit 412a848d25e4a97b343904f8beace2c3690267c8)

6 years agoDefinitions for VK_KHR_dedicated_allocation
Boris Zanin [Thu, 18 May 2017 06:45:39 +0000 (08:45 +0200)]
Definitions for VK_KHR_dedicated_allocation

Add definitions for VK_KHR_dedicated_allocation.

Components: Vulkan

VK-GL-CTS issue: 153

Change-Id: I062e3eb03edfd4d785d5d93775915541bcd4aa02

6 years agoAdd API tests for VK_KHR_external_fence* extensions
Mika Isojärvi [Mon, 15 May 2017 21:58:26 +0000 (14:58 -0700)]
Add API tests for VK_KHR_external_fence* extensions

New Tests:
dEQP-VK.api.external.fence.*

VK-GL-CTS issues: 119
Components: Vulkan

Change-Id: Ie812cd66b7d7aa5731338b050c23bfe805583ef6

6 years agoTest for VK_KHR_win32_keyed_mutex
Piers Daniell [Wed, 17 May 2017 20:39:05 +0000 (14:39 -0600)]
Test for VK_KHR_win32_keyed_mutex

This test adds coverage for VK_KHR_win32_keyed_mutex. It also depends
on the following extensions:

- VK_KHR_get_physical_device_properties2
- VK_KHR_external_memory_capabilities
- VK_KHR_external_memory
- VK_KHR_external_memory_win32
- VK_KHR_dedicated_allocation
- VK_KHR_get_memory_requirements2

New tests:

dEQP-VK.synchronization.win32_keyed_mutex.*

Components: Vulkan

VK-GL-CTS issue: 358

Change-Id: Ib247f17514f1e64c1fc43918fe033530bb981a05

6 years agoAPI tests for the VK_KHR_external_* extensions
Pyry Haulos [Wed, 28 Sep 2016 19:46:55 +0000 (12:46 -0700)]
API tests for the VK_KHR_external_* extensions

New tests:

dEQP-VK.api.external.*
dEQP-VK.synchronization.cross_instance.*

VK-GL-CTS issues: 107, 108, 109
Components: Vulkan

Contains the following commits:
08b8e2b72dd89548f9877a8ed5bba7c04c1d9732
9d154edc6a44aaccd0a913a17d44689cfe472ab2
2977726d2eb00edb145418f196e355671ed53ca5
1d626a0d2d66ef34d3caeecb6e5e2f9c81f5e788
a56c487e346192c74fb17f719aad18a71d667478
c918a652c559028f0f4893962e32d3e52970fd4f

Change-Id: I9b2e838c7e7143996f0dc49dabe48346416716ff

6 years agodefer device creation until after feature checks
Daniel Koch [Wed, 21 Jun 2017 17:14:44 +0000 (13:14 -0400)]
defer device creation until after feature checks

VK-GL-CTS Issue: 523
Component: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.*

Change-Id: Ife678bf4e70f5d312f9276356bc288f7d31f15f8
(cherry picked from commit 545cb418b912430bce80ae69d06f669114b4211e)

6 years agoFix 16bit_storage out of bounds buffer accesses
Daniel Koch [Wed, 21 Jun 2017 14:21:04 +0000 (10:21 -0400)]
Fix 16bit_storage out of bounds buffer accesses

VK-GL-CTS Issue: 518
Component: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.push_constant_16_to_32.vector_sint
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.push_constant_16_to_32.vector_uint

Change-Id: I33d3c94388a8eacac78a617ba7711b3688701323
(cherry picked from commit 5bad3cacecc5de4868365cb854f9433c79770c5f)