platform/upstream/VK-GL-CTS.git
7 years agoAdd YCbCr image conversion tests for protected memory test group
Peter Gal [Mon, 11 Sep 2017 08:14:16 +0000 (10:14 +0200)]
Add YCbCr image conversion tests for protected memory test group

New tests:
* dEQP-VK.protected_memory.interaction.ycbcr.*

Components: Vulkan
VK-GL-CTS issue: 118

Change-Id: Idcc0d227b220b33f874649961e9540dbd2a3fc09

7 years agoFix SPIR-V version in subgroups tests
Alexander Galazin [Wed, 4 Oct 2017 20:07:11 +0000 (22:07 +0200)]
Fix SPIR-V version in subgroups tests

Component: Vulkan

VK-GL-CTS issue: 735

Affects:
dEQP-VK.subgroups.*

Change-Id: Ib276fbc736fa130abf98daee412893bc9d83ea8a

7 years agoLower default buffer size to the Spec's minimum for 2D images (4096)
Jorg Wagner [Thu, 28 Sep 2017 09:12:02 +0000 (11:12 +0200)]
Lower default buffer size to the Spec's minimum for 2D images (4096)

The tests used 16384 which is beyond the minimum requirement
for 2D images in both Vulkan 1.0 and Vulkan 1.1.
To compensate for the reduction in buffer size the total number
of workgroups submitted is reduced to a quarter.

Affects:
dEQP-VK.subgroups.*

Components: Vulkan

VK-GL-CTS issue: 717

Change-Id: I75b30186f5489c764411fb8801a1ca4cbfe0ebf8

7 years agoFix SHADER_DRAW_PARAMETER_FEATURES enum value
Alexander Galazin [Wed, 4 Oct 2017 19:04:27 +0000 (21:04 +0200)]
Fix SHADER_DRAW_PARAMETER_FEATURES enum value

Should be 1000063000 as per Vulkan MR 2407

Component: Vulkan

Change-Id: Ie91c82fd7a79768df9dcb96cab814e820d482457

7 years agoFix device creation in sync multi queue tests
Alexander Galazin [Tue, 3 Oct 2017 20:11:30 +0000 (22:11 +0200)]
Fix device creation in sync multi queue tests

context.getDeviceExtensions() now returns all extension
promoted to core. This may not be true for some implementations.
While creating a new device need to enumerate exactly the extensions
supported by an implementation.

VK-GL-CTS issue: 734

Components: Vulkan

Affects:
dEQP-VK.synchronization.op.multi_queue.*

Change-Id: If943692748d7813a88f8f4eb1bc4739fd43370d4

7 years agoFix device creation in multiview tests
Alexander Galazin [Wed, 4 Oct 2017 07:53:43 +0000 (09:53 +0200)]
Fix device creation in multiview tests

context.getDeviceExtensions() now returns all extension
promoted to core. This may not be true for some implementations.
While creating a new device need to enumerate exactly the extensions
supported by an implementation.

VK-GL-CTS issue: 736

Components: Vulkan

Affects:
dEQP-VK.multiview.*

Change-Id: Ibca7630ea5bd691a20f906519e15f66b22d465aa

7 years agoRemove VK_KHR_swapchain as a required extension
Vikram Kushwaha [Tue, 3 Oct 2017 20:53:13 +0000 (13:53 -0700)]
Remove VK_KHR_swapchain as a required extension

This extension is not needed to create a device group

Components: Vulkan

VK-GL-CTS issue: 733

Affects:
dEQP-VK.api.info.device_group.peer_memory_features
dEQP-VK.wsi.*.surface.query_devgroup_present_modes
dEQP-VK.compute.device_group.*

Change-Id: Idff5fd802fadf28594be55192043b2f7bd80205c

7 years agoFix requested SPIR-V version
Alexander Galazin [Wed, 4 Oct 2017 14:51:32 +0000 (16:51 +0200)]
Fix requested SPIR-V version

addShaderCodeCustom* functions were using the default SPIR-V vesion (1.0)
even when a different version was requested

VK-GL-CTS issue: 740

Component: Vulkan

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

Change-Id: I949e55d85cbef72d4862c558ef4b685d21470d13

7 years agoFix NotSupported condition in dEQP_VK.spirv_assembly
Slawomir Cygan [Wed, 4 Oct 2017 14:24:18 +0000 (16:24 +0200)]
Fix NotSupported condition in dEQP_VK.spirv_assembly

The API version check was backwards.

Affects:
dEQP_VK.spirv_assembly.*

Components: Vulkan
VK-GL-CTS issue: 740

Change-Id: Ic5e2bfbdbd202c4b27295573cdeca1ea06424c7c

7 years agoUpdate vulkan.h.in to version 61
Alexander Galazin [Tue, 3 Oct 2017 09:14:32 +0000 (11:14 +0200)]
Update vulkan.h.in to version 61

Components: Vulkan

Change-Id: If595c381348f3a15e643291f4924aaed4668e600

7 years agoCheck for VK 1.1 for protected memory tests
Daniel Koch [Wed, 4 Oct 2017 03:59:39 +0000 (23:59 -0400)]
Check for VK 1.1 for protected memory tests

instead of the non-existant VK_KHR_protected_memory extension

VK-GL-CTS issue: 737
Component: Vulkan
Affects: dEQP-VK.protected_memory.*

Change-Id: Ie28a51497ec4bd507d6b6380f1012f445169ed35

7 years agoAdd missing KHR exts to the allowed list
Alexander Galazin [Tue, 3 Oct 2017 18:41:53 +0000 (20:41 +0200)]
Add missing KHR exts to the allowed list

VK_KHR_device_group_creation is an instance extension,
not a device extension

VK_KHR_maintenance3 should be in the list of device extensions

Components: Vulkan

VK-GL-CTS issue: 731, 732

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

Change-Id: I766e6d6aa51c1053190968cb32f2534912df3122

7 years agoInvalidate memory in draw tests
Alexander Galazin [Tue, 3 Oct 2017 19:29:50 +0000 (21:29 +0200)]
Invalidate memory in draw tests

The test group writes to non-coherent device memory with device,
but fails to call the required invalidate on the region before
reading mapped memory with host.

Components: Vulkan

VK-GL-CTS issue: 529

Affects: dEQP-VK.draw.*

Change-Id: Icf4aa6ea80c8c046e41b37402457b7f094d7ae50

7 years agoRestore NDK r11c as preferred version
Jesse Hall [Tue, 3 Oct 2017 20:38:49 +0000 (13:38 -0700)]
Restore NDK r11c as preferred version

dEQP doesn't work on armeabi-v7a when built with NDK r15. Until that
is fixed, restore support for r11c, issue a warning when using NDK
r15 for non-armeabi-v7a, and fail early when using NDK r15 on
armeabi-v7a.

Components: Framework
Affects: all tests

VK-GL-CTS issue: 723

Change-Id: I544393abb30ec49e66fa9510207446d732f4b47d
(cherry picked from commit c5e88e1c851ece6f37f7db117f209817094d8a96)

7 years agoExercise non zero base offsets within the same physical device
Vikram Kushwaha [Tue, 26 Sep 2017 18:21:49 +0000 (11:21 -0700)]
Exercise non zero base offsets within the same physical device

Components: Vulkan

VK-GL-CTS issue: 110

Affects: dEQP-VK.compute.device_group.dispatch_base

Change-Id: I205812017cb62070fd273521ae83704e051b2801
(cherry picked from commit 45e18a75add921a401b1e7ffbc85b3a51e943b7e)

7 years agoFix extensions checks in WSI tests
Alexander Galazin [Tue, 3 Oct 2017 11:48:02 +0000 (13:48 +0200)]
Fix extensions checks in WSI tests

Components: Vulkan

Affects:
dEQP-VK.wsi.*

VK-GL-CTS issue: 730

Change-Id: I217daf260f4110712c1636cf0278846e082a52ca

7 years agoAdd swapchain tests for the VK_KHR_protected_memory extension
Peter Gal [Fri, 1 Sep 2017 18:12:27 +0000 (20:12 +0200)]
Add swapchain tests for the VK_KHR_protected_memory extension

New tests:
* dEQP-VK.protected_memory.interaction.wsi.*

Components: Vulkan
VK-GL-CTS issue: 118

Change-Id: Ife48da5098299fd9d747a7b74208136c7f3413e0
(cherry picked from commit 9991ff0e4baea2316a93ec07e06f44ff279d2774)

7 years agoUse correct image extent for image to buffer copies
Petros Bantolas [Wed, 20 Sep 2017 10:58:15 +0000 (11:58 +0100)]
Use correct image extent for image to buffer copies

The final stage of those tests (reading back to a host-mapped buffer)
would use an incorrect depth for the source image extent, when that is a
2D texture array. Because the test didn't factor in the image type, it
would set both the image extent and the subresource layerCount to the
number of layers being copied.

Using `getExtent3D` we get the appropriate behaviour.

Affects:
- dEQP-VK.api.copy_and_blit.*.3d_images.3d_to_2d*
- dEQP-VK.api.copy_and_blit.*.resolve_image.whole_array_image.*
- dEQP-VK.api.copy_and_blit.*.resolve_image.diff_image_size.
  dst_256_256_11*

Components: Vulkan

VK-GL-CTS issue: 729

Change-Id: I26109772c42286a741a38aa9c9cd8a42a5873adc

7 years agoTypo fix for ycbcr sampler conversion extension name
Peter Gal [Tue, 3 Oct 2017 09:10:37 +0000 (11:10 +0200)]
Typo fix for ycbcr sampler conversion extension name

Components: Vulkan

Change-Id: I201b0470fb1eb5fb113eb76fb1803e6f2ec7fbc7
(cherry picked from commit b3c89e79db62790bcc6e7700b3dbc4375275ffc5)

7 years agoIndentation improvement after removal KHR suffix
Alexander Galazin [Wed, 20 Sep 2017 17:06:39 +0000 (12:06 -0500)]
Indentation improvement after removal KHR suffix

Components: Vulkan

VK-GL-CTS issue: 473

Change-Id: Ic58e5c2775504c724936b62d5c9d4b1330bc085e
(cherry picked from commit 03e5ace049a785f9e7fc62116089f121643eb345)

7 years agoImplement tests for VK_KHR_maintenance3
Igor Wadowski [Fri, 22 Sep 2017 11:12:22 +0000 (13:12 +0200)]
Implement tests for VK_KHR_maintenance3

Commit intrduce tests for:

- maxPerSetDescriptors
- maxMemoryAllocationSize
- vkGetDescriptorSetLayoutSupportKHR

New test:

dEQP-VK.api.maintenance3_check.*

Components: Vulkan

VK-GL-CTS issue: 664

Change-Id: I069540c795361c0de9155dfb9be834c162800ffb
(cherry picked from commit cd9ca7e88a6429d33210ecf158fda66f9b3f3d70)

7 years agoUpdate Pre-compiling SPIR-V binaries section
Alexander Galazin [Mon, 2 Oct 2017 07:26:32 +0000 (09:26 +0200)]
Update Pre-compiling SPIR-V binaries section

Describe the default settings for precompiled SPIR-V binaries
and the option to change the defaults.

Components: Vulkan

VK-GL-CTS issue: 269

Change-Id: I0ba09a9f03d5b2dc76a356e71dfe4431fba67b2b

7 years agoVK 1.1: Detect support for ShaderDrawParameters
Daniel Koch [Fri, 29 Sep 2017 14:30:43 +0000 (10:30 -0400)]
VK 1.1: Detect support for ShaderDrawParameters

VK_KHR_shader_draw_parameters was included in Vulkan 1.1
but was made an optional feature.

VK-GL-CTS Issue: 691
Components: Vulkan

Affects: dEQP-VK.draw.shader_draw_parameters.*

Change-Id: I17b14230730d31339e12ec1454bc255ddf68268c
(cherry picked from commit ccdc778edd91b78472069102f2409d0a7ac835f0)

7 years agoAdded script for checking & fixing BOMs in files.
Marcin Rogucki [Thu, 28 Sep 2017 16:01:18 +0000 (18:01 +0200)]
Added script for checking & fixing BOMs in files.

Affects:
doc/testspecs/GLES2/functional.rasterization.txt
framework/platform/win32/tcuWin32VulkanPlatform.cpp
modules/gles31/functional/es31fNegativeVertexArrayApiTests.cpp
scripts/src_util/check_all.py

Adds:
scripts/src_util/check_boms.py

Change-Id: I17dc821e44a30a119e22ff42afbdca775ecec046
Components: Vulkan
(cherry picked from commit 69731671eed80fd6915375f22d88c0404a6accb6)

7 years agoSpirV tests for Vulkan 1.1
Boris Zanin [Fri, 1 Sep 2017 11:07:21 +0000 (13:07 +0200)]
SpirV tests for Vulkan 1.1

Add tests:
 * dEQP-VK.spirv_assembly.instruction.compute.loop_control.dependency_length
 * dEQP-VK.spirv_assembly.instruction.compute.loop_control.dependency_infinite
 * dEQP-VK.spirv_assembly.instruction.compute.spirv_version.*
 * dEQP-VK.spirv_assembly.instruction.graphics.spirv_version.*
 * dEQP-VK.spirv_assembly.instruction.*opmoduleprocessed*

Components: Vulkan

VK-GL-CTS issue: 269

Change-Id: Ib4c21a881a31ae93b5b13d88c641b3c4a7ca64a5
(cherry picked from commit 308172f1771c4ed01b45faead3055da016cd8d3b)

7 years agoCorrect image usage flags for YCbCr copy tests
Jorg Wagner [Thu, 28 Sep 2017 11:59:51 +0000 (13:59 +0200)]
Correct image usage flags for YCbCr copy tests

The images are used as copy source and destination,
hence TRANSFER_SRC | TRANSFER_DST must be present
in the usage flags.

Images are not sampled from - remove SAMPLED flag.

Affects:
dEQP-VK.ycbcr.copy.*

Components: Vulkan

VK-GL-CTS issue: 715

Change-Id: Ie53d3e2fb18aa834af12938cd822aa6c50f75986

7 years agoSkip more basic subgroup tests requiring the ballot feature
Jorg Wagner [Thu, 28 Sep 2017 10:41:14 +0000 (12:41 +0200)]
Skip more basic subgroup tests requiring the ballot feature

The check to skip certain tests happened at the wrong
level and missed several _framebuffer variants.

Affects:
dEQP-VK.subgroups.basic.*

Components: Vulkan

VK-GL-CTS issue: 719

Change-Id: Ib40382f88ece0a369215be1eb62ea4e2d6df80b7

7 years agoSerialize region copies for YCbCr copy tests
Panagiotis Apostolou [Thu, 7 Sep 2017 11:54:51 +0000 (13:54 +0200)]
Serialize region copies for YCbCr copy tests

As the generated regions can overlap - force all calls
of vkCmdCopyImage() to be executed sequentially by adding
a pipeline barrier between each call to avoid producing
undefined results.

Affects:
dEQP-VK.ycbcr.copy.*

Components: Vulkan

VK-GL-CTS issue: 716

Change-Id: Ifed67cdc077a8c03630b36f8aa59bd6dae0578a3

7 years agoFixed invalid OpPtrAccessChain usage in access chain tests.
Ari Suonpaa [Thu, 21 Sep 2017 06:13:33 +0000 (09:13 +0300)]
Fixed invalid OpPtrAccessChain usage in access chain tests.

Modified  dEQP-VK.spirv_assembly.instruction.*.indexing.* tests to
use an array of structs as input to have a meaningful usage of
OpPtrAccessChain.

Affects:

dEQP-VK.spirv_assembly.instruction.*.indexing.*

Components: Vulkan

VK-GL-CTS issue 686

Change-Id: Ia1604d5a24712c522f51cbd0692d85b1baa2d27c
(cherry picked from commit 2a6458a56bc749fc99eb753d16abf8758e1a39f7)

7 years agoAvoid overflow on shift left operator in subgroups ballot
Slawomir Cygan [Mon, 25 Sep 2017 14:52:33 +0000 (16:52 +0200)]
Avoid overflow on shift left operator in subgroups ballot

Fix possible overflow in GLSL logic shift left (<<) operation due
to mediump precision of agument. GLSLang was generating following code:

OpDecorate %52 RelaxedPrecision
..
%52 = OpShiftLeftLogical %8 %30 %51

which may oveflow for gl_SubgroupInvocationID > 16.

Affects: dEQP-VK.subgroups.ballot.*

Components: Vulkan

VK-GL-CTS issue: 713

Change-Id: I4ce345261111524ad2da219b1eafa15572074426

7 years agoAvoid assert in dEQP-VK.tessellation.fractional_spacing
Slawomir Cygan [Fri, 22 Sep 2017 15:23:05 +0000 (17:23 +0200)]
Avoid assert in dEQP-VK.tessellation.fractional_spacing

The test code dereferences first element of empty std::vector, what
may cause an assert in debug builds (depending on toolchain and it's
settings).

Addects: dEQP-VK.tessellation.*

Components: Vulkan

VK-GL-CTS issue: 710

Change-Id: I2b94a0d03c3523ebf1380a9371765c616fd21b82

7 years agoInvalid API version test updated for VK 1.1
Marcin Rogucki [Wed, 20 Sep 2017 14:15:13 +0000 (16:15 +0200)]
Invalid API version test updated for VK 1.1

Affects:
dEQP-VK.api.device_init.create_instance_invalid_api_version

Components: Vulkan

VK-GL-CTS issue: 671

Change-Id: I4f0b4d8a84ca4d9c5940f3d5f83878c9aba70315
(cherry picked from commit f332d70d1f73f0dc655c4bd44eb40a8074828f82)

7 years agoFix depth & stencil passOp for pipeline.render_to_image tests
Petros Bantolas [Mon, 18 Sep 2017 16:07:22 +0000 (17:07 +0100)]
Fix depth & stencil passOp for pipeline.render_to_image tests

Affects:
dEQP-VK.pipeline.render_to_image.*_array* with stencil attachments

Those tests render to each layer of the texture in consecutive
subpasses. With a depth/stencil passOp of VK_STENCIL_OP_ZERO, subpasses
after the first one fail the stencil test and skip the render.

Components: Vulkan

VK-GL-CTS issue: 678

Change-Id: Ia704192b8d7e316dacaa7549faa5cb5aa0def60e

7 years agoCheck API version in addition to present extensions
Alexander Galazin [Thu, 21 Sep 2017 21:03:04 +0000 (16:03 -0500)]
Check API version in addition to present extensions

Components: Vulkan

VK-GL-CTS issue: 473

Change-Id: I07ff1b66b98046ac7975e92684e8003969c18345
(cherry picked from commit e1cd4204c7ca28648bb6ccc4d32af56d671edfa4)

7 years agoFix sType used with VkExternalImageFormatPropertiesKHR
Piers Daniell [Thu, 28 Sep 2017 18:55:23 +0000 (12:55 -0600)]
Fix sType used with VkExternalImageFormatPropertiesKHR

The sType used in the VkExternalImageFormatPropertiesKHR struct
was VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR
which is wrong and should have been
VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR.

Using the wrong sType means implementations ignored the unexpected
sType in the chain.

Affects:

dEQP-VK.synchronization.win32_keyed_mutex.*

Change-Id: I3f16b6fcd66740685f742be8e1318c32fcf87d7e
Components: Vulkan
(cherry picked from commit 09c5420239eefe0c3555a4fb15ab3c879d707081)

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Thu, 28 Sep 2017 10:55:30 +0000 (12:55 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: I01bbf066dd54a652cd81d6831cb0acdf16f045dc

7 years agoRename 1.0.3 mustpass
Alexander Galazin [Wed, 27 Sep 2017 12:35:50 +0000 (14:35 +0200)]
Rename 1.0.3 mustpass

1.0.3 mustpass becomes 1.1.0

Components: Vulkan

Change-Id: Ie1e2d5ad5e67a172c544cba9494f545233f09ae7
(cherry picked from commit 0f88d0ecc6d4efb8f20e59e33f2c7f893748dd3c)

7 years agoRemove Vulkan 1.1 KHR-suffixed functions/structs/enums
Alexander Galazin [Wed, 20 Sep 2017 17:06:39 +0000 (12:06 -0500)]
Remove Vulkan 1.1 KHR-suffixed functions/structs/enums

This change removes KHR-sufffices functions/structs/enums
for features that became Vulkan 1.1 core

Components: Vulkan

VK-GL-CTS issue: 473

Change-Id: Ifeae93b2686b4a9b6e0744917f2e95dc23d2b7fa
(cherry picked from commit b0f38a8bea7ac29ab52c464073722ba08eaef1f4)

7 years agoRemove YCbCr from the instance extensions
Alexander Galazin [Wed, 27 Sep 2017 12:13:30 +0000 (14:13 +0200)]
Remove YCbCr from the instance extensions

VK_KHR_sampler_ycbcr_conversion is a device extension.
It must not be listed as an allowed instance extension.

Components: Vulkan

VK-GL-CTS issue: 698

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

Change-Id: I1ee1448535df75016a0214ebfe800a476daf32c4

7 years agoAdd support for Vulkan 1.1
Alexander Galazin [Mon, 11 Sep 2017 09:45:41 +0000 (11:45 +0200)]
Add support for Vulkan 1.1

Components: Vulkan
VK-GL-CTS issue: 473

Change-Id: I514efd903b243429844076a934e26d248a67ac2e
(cherry picked from commit 3e1a86052e33c47532cd6f6c475d849baeec5f99)

7 years agoTypo fix in YCbCr conversion tests
Peter Gal [Fri, 15 Sep 2017 16:39:08 +0000 (18:39 +0200)]
Typo fix in YCbCr conversion tests

During YCbCr conversion tests the Disjoint
information ws incorrectly recorded into the
log file.

Change-Id: I63c5d5fc326fd52019f4e167c6632132cbc4668c
Components: Vulkan
(cherry picked from commit 37a196f757a516af2d75f4653153d1e5df8809db)

7 years agoTypo fix in YCbCr conversion tests
Peter Gal [Fri, 15 Sep 2017 16:39:08 +0000 (18:39 +0200)]
Typo fix in YCbCr conversion tests

During YCbCr conversion tests the Disjoint
information ws incorrectly recorded into the
log file.

Change-Id: I63c5d5fc326fd52019f4e167c6632132cbc4668c
Components: Vulkan
(cherry picked from commit 37a196f757a516af2d75f4653153d1e5df8809db)

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

7 years agoFix memory corruption vktApiObjectManagementTests
Boris Zanin [Thu, 7 Sep 2017 08:18:07 +0000 (10:18 +0200)]
Fix memory corruption vktApiObjectManagementTests

Due to s_deviceCases, s_deviceGroupCases are 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: I83732c243f407d620f3d612c4f10435965e36080

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
(cherry picked from commit 0bef80fc45e49e9486f238e1b5b52a2aae4c530c)

7 years agoFix unreasonable memory expectations in pipeline.render_to_image
Arkadiusz Sarwa [Tue, 12 Sep 2017 11:28:39 +0000 (13:28 +0200)]
Fix unreasonable memory expectations in pipeline.render_to_image

Affects:
dEQP-VK.pipeline.render_to_image.*

Components: Vulkan

VK-GL-CTS issue: 526

Change-Id: I71ea0381663c39786b227ed712e1111ec3c71cfb
(cherry picked from commit 069aa0ad097f543438b39a260eea52278867ffa8)

7 years agoSubgroup Tests: Using framebuffer instead of SSBO
Arkadiusz Sarwa [Fri, 8 Sep 2017 09:31:39 +0000 (11:31 +0200)]
Subgroup Tests: Using framebuffer instead of SSBO

Vulkan 1.1 has subgroup functionality that these tests verify.

Affects:
dEQP-VK.subgroups.*fragment*
dEQP-VK.subgroups.*framebuffer

Components: Vulkan

VK-GL-CTS issue: 546

Change-Id: Ifec1127a78e7286bda3a6842b110222d09a6fcbe
(cherry picked from commit c88a2dc7da012de77325f0df5c67637640f0144e)

7 years agoUpdate CTS to remove fragment from the required stages list.
Neil Henning [Tue, 19 Sep 2017 21:28:50 +0000 (22:28 +0100)]
Update CTS to remove fragment from the required stages list.

Affects:

deQP-VK.subgroups.*

Components: Vulkan

Vulkan issue: 975

Change-Id: Iee9c6a6a5ee6c5f85ff91c2e24f7b2ccc3c1dbd0
(cherry picked from commit cc7d9548ef3a02e91991471a973817d343854fd2)

7 years agoMerge "Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0" into vulkan...
Gerrit Code Review [Fri, 22 Sep 2017 15:16:13 +0000 (11:16 -0400)]
Merge "Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0" into vulkan-cts-1.1.0

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Alexander Galazin [Fri, 22 Sep 2017 14:43:31 +0000 (09:43 -0500)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0

Change-Id: I4911389b84b440a91016a20fe12aef1f839c03fd

7 years agoRe-apply after merge-foo: Enable b10g10r11 and e5b9g9r9 blitting tests
Jason Ekstrand [Tue, 24 Jan 2017 01:44:17 +0000 (17:44 -0800)]
Re-apply after merge-foo: Enable b10g10r11 and e5b9g9r9 blitting tests

This enables 620 new tests for blitting to/from e5b9g9r9 and b10g10r10.
Looking through vulkan.gpuinfo.org, most implementations support the
BLIT_SRC_BIT on these formats.  I have a branch of our driver that
supports BLIT_DST_BIT for these formats and the tests all work fine.

Change-Id: I964abad8c44d3d7cc52a79bbb73ee6b9833845d6
(cherry picked from commit 3f9edcf8b135a5486e9570a24ea9480016697466)

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 agoUpdate SPIR-V Tools, SPIR-V Headers and glslang
Neil Henning [Mon, 14 Aug 2017 12:12:10 +0000 (13:12 +0100)]
Update SPIR-V Tools, SPIR-V Headers and glslang

David Neto has kindly produced vulkan-1.1-dev branches for SPIR-V Tools
and SPIR-V Headers that match SPIR-V 1.3 functionality. This commit
updates us to those changelists.

In tandem I also updated glslang to the master commit on gitlab - this
is the tracking branch for Vulkan 1.1. Glslang had changed some of the
files, so I took the liberty of cleaning up the include process for
glslang to try and mitigate any future additions/removal of files, by
defensively setting some of glslang's CMake options to disable
functionality, and renaming glslang_library -> glslang_libraries to
include the 3 libraries the CTS depends on.

Components: Vulkan

Change-Id: I1a47ff96adbbcab5a89e7b9805ba53f783ecc693
(cherry picked from commit c4bf8571ff93212f7f07124531e144d6520dafda)

7 years agoCheck if the driver supports subgroup operations
Samuel Iglesias Gonsálvez [Mon, 11 Sep 2017 10:41:56 +0000 (12:41 +0200)]
Check if the driver supports subgroup operations

Affects: dEQP-VK.subgroups.*

Components: Vulkan

VK-GL-CTS issue: 683

Change-Id: I85936d808459fab9a260bff372c7a5bbe7cc67fc
(cherry picked from commit 9cbd59a275ea092c6e1ffed249d974054224c081)

7 years agoFix possibility of memory leak in subgroups tests
Arkadiusz Sarwa [Fri, 8 Sep 2017 10:02:27 +0000 (12:02 +0200)]
Fix possibility of memory leak in subgroups tests

Components: Vulkan

Affects:
dEQP-VK.subgroups*

VK-GL-CTS issue: 680

Change-Id: I43257ca6eb8593e4a513e894661282878bb2e6b9
(cherry picked from commit d8011612085c79783e807b11d53efa2d4e7d13ee)

7 years agoRaise required NDK version to r15
Alexander Galazin [Tue, 29 Aug 2017 14:22:48 +0000 (16:22 +0200)]
Raise required NDK version to r15

NDK r15 is necessary to enable
VK_ANDROID_external_memory_android_hardware_buffer

Components: Vulkan, Framework
Affects: all tests

Change-Id: I494dd8362de67b0f5bc04312ea6288bb0aa3bad0

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 agoAdd compute tests for device group
Vikram Kushwaha [Tue, 25 Jul 2017 23:47:16 +0000 (16:47 -0700)]
Add compute tests for device group

Tests target:
1. Setting a base workgroup for compute launch
2. Using gl_DeviceIndex in compute shader
3. setting device mask for compute launch

New tests:
    dEQP-VK.compute.device_group.dispatch_base
    dEQP-VK.compute.device_group.device_index

Components: Vulkan

VK-GL-CTS issue: 110

Change-Id: I6d57259fb55a10befea27b5c34d117c30c8db698

7 years agoAdd tests for sparse buffers/images with device groups
Vikram Kushwaha [Tue, 11 Jul 2017 19:31:50 +0000 (12:31 -0700)]
Add tests for sparse buffers/images with device groups

New tests:
 dEQP-VK.sparse_resources.buffer.transfer.device_group_sparse_binding.*
 dEQP-VK.sparse_resources.buffer.ssbo.device_group_sparse_binding_aliased.*
 dEQP-VK.sparse_resources.buffer.ssbo.device_group_sparse_residency.*
 dEQP-VK.sparse_resources.buffer.ubo.device_group_*
 dEQP-VK.sparse_resources.buffer.vertex_buffer.device_group_*
 dEQP-VK.sparse_resources.buffer.indirect_buffer.device_group_*
 dEQP-VK.sparse_resources.device_group_image_sparse_binding.*
 dEQP-VK.sparse_resources.device_group_image_sparse_residency.*
 dEQP-VK.sparse_resources.device_group_mipmap_sparse_residency.*
 dEQP-VK.sparse_resources.device_group_image_sparse_memory_aliasing.*

Components: Vulkan

VK-GL-CTS issue: 110

Change-Id: Ifa59ac69871be5663437e18fc82b3b09a072678e

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 agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Alexander Galazin [Mon, 11 Sep 2017 09:45:41 +0000 (11:45 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev

Change-Id: I209671bf278836e29591235eaf5b0ce18df9114f

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 agoFix build errors with uint64_t and default constructor
Arkadiusz Sarwa [Fri, 8 Sep 2017 13:33:41 +0000 (15:33 +0200)]
Fix build errors with uint64_t and default constructor

Components: Vulkan

Change-Id: Ie6b26ba735838d7ba3214a9f86f455697b2f43c9

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 agoUpdate vulkan.h.in to version 60
Alexander Galazin [Sun, 10 Sep 2017 12:14:44 +0000 (14:14 +0200)]
Update vulkan.h.in to version 60

Components: Vulkan

Change-Id: I7bf255529d33086db9ab4ee1581fe5677a294965

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/master into vk-gl-cts/vulkan-cts-next-dev
Alexander Galazin [Fri, 8 Sep 2017 08:58:26 +0000 (10:58 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev

Change-Id: Ia7b82ce3609ab3ab3669f43c9f14a50fd5977ec3

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 agoUse vkGetQueue2KHR method in Protected memory tests
Peter Gal [Thu, 31 Aug 2017 14:05:28 +0000 (16:05 +0200)]
Use vkGetQueue2KHR method in Protected memory tests

Tests affected:
dEQP-VK.protected_memory.*

Components: Vulkan
VK-GL-CTS issue: 118

Change-Id: Icb16843a81965f7c0c5ba65be23ba14b5ff60864

7 years agoAdd shader image access tests for the VK_KHR_protected_memory extension
Janos Pantos [Fri, 7 Jul 2017 17:33:49 +0000 (19:33 +0200)]
Add shader image access tests for the VK_KHR_protected_memory extension

New tests:
dEQP-VK.protected_memory.image.access.*

Components: Vulkan
VK-GL-CTS issue: 118

Change-Id: I423396f3f814090e4506197723f0d0cdbbba0777

7 years agoAdd secondary command buffer tests for the VK_KHR_protected_memory extension
Gabor Aron Takacs [Wed, 19 Jul 2017 12:16:37 +0000 (14:16 +0200)]
Add secondary command buffer tests for the VK_KHR_protected_memory extension

Add secondary command buffer tests for:
* Attachment clear tests.
* Blit image, copy image, clear color image tests.
* Fill, update, copy buffer tests.
* Copy buffer to image tests and copy image to buffer tests.

New tests:
* dEQP-VK.protected_memory.attachment.clear_op.*.secondary.*
* dEQP-VK.protected_memory.image.*.secondary.*
* dEQP-VK.protected_memory.buffer.*.secondary.*

Components: Vulkan
VK-GL-CTS issue: 118

Change-Id: Ica36108cff735568c15a338e13ab8fb72f2420f0

7 years agoAdd storage buffer tests for the VK_KHR_protected_memory extension
Daniel Hegedus [Thu, 1 Jun 2017 15:14:51 +0000 (17:14 +0200)]
Add storage buffer tests for the VK_KHR_protected_memory extension

Type of ssbo tests:
* Read
* Write
* Atomic operations

New tests:
* dEQP-VK.protected_memory.ssbo.*

Components: Vulkan
VK-GL-CTS issue: 118

Change-Id: I4be47d4c4d9a086ab72adb30ef19fe389df3f315

7 years agoAdd image, buffer, attachment tests for the VK_KHR_protected_memory extension
Gabor Aron Takacs [Fri, 26 May 2017 08:36:12 +0000 (10:36 +0200)]
Add image, buffer, attachment tests for the VK_KHR_protected_memory extension

* Add attachment clear tests.
* Add blit image, copy image, clear color image tests
* Add fill, update, copy buffer tests.
* Add copy buffer to image tests and copy image to buffer tests.

New tests:
* dEQP-VK.protected_memory.attachment.clear_op.*
* dEQP-VK.protected_memory.image.*
* dEQP-VK.protected_memory.buffer.*

Components: Vulkan
VK-GL-CTS issue: 118

Change-Id: I9358ddf3d52914d896c63bdc94ac835b831209a7

7 years agoAdd test group for the VK_KHR_protected_memory extension
Peter Gal [Fri, 19 May 2017 15:16:23 +0000 (17:16 +0200)]
Add test group for the VK_KHR_protected_memory extension

* Added framework update for the extension.
* Created basic structure for the VK_KHR_protected_memory extension tests.
* Created a ProtectedContext class which contains the required instance and device
  initializations for the protected test cases.
* Created a simple test case(s) where a protected attachment clearing
  on render pass start is tested.

New tests:
* dEQP-VK.protected_memory.attachment.load_op.*

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

Change-Id: I42e8b4f05c3a71c1c3bbc56894e33f5a46b735c6

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: I923637fa2f7a4b0916515155afa44fcf64221209

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 Vulkan 1.1 Subgroup Tests
Neil Henning [Tue, 17 Jan 2017 10:54:03 +0000 (10:54 +0000)]
Add Vulkan 1.1 Subgroup Tests

Vulkan 1.1 has subgroup functionality that these tests verify.

Affects:

deQP-VK.subgroups.*

Components: Vulkan

VK-GL-CTS issue: 120
Vulkan issue: 423

Change-Id: I2ff925cc9647718d7e4c4218efbc3b08f773c250

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/master into vk-gl-cts/vulkan-cts-next-dev
Alexander Galazin [Wed, 6 Sep 2017 15:50:58 +0000 (17:50 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev

Change-Id: I36c170fb0111842e843006698d424eda7dcef172

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