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
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
Alexander Galazin [Fri, 29 Sep 2017 08:25:58 +0000 (10:25 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I4c1d225bf9a0698f79e7bad1ac7d628e388cc836
Alexander Galazin [Fri, 29 Sep 2017 07:48:32 +0000 (09:48 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I30c4ce6bb0c528b6afbc6a37a947e9e5ffaa1c0e
Piotr Byszewski [Wed, 13 Sep 2017 07:56:42 +0000 (09:56 +0200)]
Test BLOCK_INDEX of uniform inside block array
Uniform blocks declared in an array are considered active
if any member of the array would otherwise be considered
active.
Components: OpenGL
VK-GL-CTS issue: 13
Affects:
KHR-GL43.program_interface_query.uniform-block-array
KHR-GLES31.core.program_interface_query.uniform-block-array
Change-Id: Iaa67be6f23f168e35e5ddc3965342756dc2c59ed
Nicolai Hähnle [Wed, 20 Sep 2017 20:26:44 +0000 (22:26 +0200)]
Allow min/max/clamp to flush subnormals only during comparison
An implementation may follow the rule that subnormals are flushed
to zero for all arithmetic operations (including comparisons), but
never for mere copies.
In this case, if the input to min/max/clamp contains more than one
subnormal number (including +/-0.0), the returned value may be any
of the subnormal numbers and not really the true minimum/maximum/
clamped value.
This does not hurt real applications, since any subsequent use of
the result will flush it to zero anyway, and it does seem to be
implicitly allowed by the GLSL ES spec.
Change the implementation of min/max/clamp to explicitly handle
the subnormal case in the comparison.
Components: AOSP
VK-GL-CTS issue: 705
Affects:
dEQP-GLES3.functional.shaders.builtin_functions.precision.clamp.*
dEQP-GLES3.functional.shaders.builtin_functions.precision.max.*
dEQP-GLES3.functional.shaders.builtin_functions.precision.min.*
dEQP-GLES31.functional.shaders.builtin_functions.precision.clamp.*
dEQP-GLES31.functional.shaders.builtin_functions.precision.max.*
dEQP-GLES31.functional.shaders.builtin_functions.precision.min.*
Change-Id: I9a5bed9d78e311f96fe03b689299d777050ea063
Adam Czupryna [Thu, 29 Jun 2017 14:50:53 +0000 (16:50 +0200)]
Add CTS_ARB_gl_spirv test specification proposal
This is CTS_ARB_gl_spirv test specification proposal.
Components: OpenGL
VK-GL-CTS issue: 554
Change-Id: I95478228f66c27ed5ff78a9e17a0381512abbf21
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
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)
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
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
Paavo Pessi [Thu, 21 Sep 2017 10:08:13 +0000 (13:08 +0300)]
Test vkCmdBlitImage for cubemaps with layerCount=6
Tests were added to verify that the typical use-case of generating
mipmap levels for cubemaps with vkCmdBlitImage() works with 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 for all six image layers 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 for all
six image layers with a separate blit command with barriers between
each blit.
Existing mipmap tests cases in the
dEQP-VK.api.copy_and_blit.*.blit_image.all_formats.generate_mipmaps.*
test group were moved to
dEQP-VK.api.copy_and_blit.*.blit_image.all_formats.generate_mipmaps.*.layercount_1.*
New tests:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*.layercount_6.*
dEQP-VK.api.copy_and_blit.dedicated_allocation.blit_image.all_formats.generate_mipmaps.*.layercount_6.*
Components: Vulkan
VK-GL-CTS issue: 615
VK-GL-CTS public issue: 50
Change-Id: I512484434dda155b668a600c8303650d42417e0a
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)
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
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)
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
Alexander Galazin [Thu, 28 Sep 2017 11:45:58 +0000 (13:45 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I3c86d2b3ad600a95de1452a1c7736a63c424555d
Alexander Galazin [Thu, 28 Sep 2017 10:55:33 +0000 (12:55 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Change-Id: Ic02c027d4172d581d782eec10ba3bf8955c2c356
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
Paavo Pessi [Fri, 22 Sep 2017 09:00:16 +0000 (12:00 +0300)]
Validate empty render pass
The test creates a render pass and a subpass with no input, color,
resolve or depth/stencil attachments and executes a single draw
command.
New tests:
dEQP-VK.renderpass.suballocation.simple.no_attachments
dEQP-VK.renderpass.dedicated_allocation.simple.no_attachments
Components: Vulkan
VK-GL-CTS issue: 620
VK-GL-CTS public issue: 10
Change-Id: I0da8a6850898979e65d39f323b14694968d9d6c5
David Neto [Thu, 14 Sep 2017 22:03:37 +0000 (18:03 -0400)]
Test reading compute shader builtin vars by component
- Adds a test of reading compute shader builtin variables by component.
These get test case name suffix of "_component".
- Previous behaviour, reading the whole builtin variable, is preserved
in cases but without an extra suffix.
- WorkgroupSize builtin is made specializable to prevent Glslang
from constant folding its value.
Affects:
Components: Vulkan
dEQP-VK.compute.builtin_var.*
VK-GL-CTS issue: 694
Change-Id: Ia783babf4ba5e24fc58bc9d19594bb7d921de7c9
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)
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
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)
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
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
Piotr Byszewski [Tue, 19 Sep 2017 11:58:53 +0000 (13:58 +0200)]
Fix UniformBlockPrecisionMatching test
Fixed an issue that resulted in omiting second set of
shaders (first set was tested twice).
Components: OpenGL
Affects:
KHR-GLES3.shaders.uniform_block.common.precision_matching
Change-Id: I44205f66cd5672692fc46f4db91801b86aa8ff74
Piotr Byszewski [Fri, 25 Aug 2017 11:39:58 +0000 (13:39 +0200)]
Add multiple contexts tests
multiple_contexts test (one of shader_subroutine tests) was modified
and moved to contextless module. Shared contexts functionality was
restored in framework.
Components: Framework, OpenGL
VK-GL-CTS issue: 612
Affects:
KHR-NoContext.gl40.multiple_contexts.uniform_preservation
KHR-GL40.shader_subroutine.multiple_contexts
Change-Id: Id170ef37c2e3c488095663c91788978223d356ec
Alexander Galazin [Tue, 26 Sep 2017 13:57:02 +0000 (15:57 +0200)]
Freeze OpenGL ES CTS 3.2.4.x mustpass
Components: OpenGL
Change-Id: I85c9d9c21887cd9eb8d399477a4e030f2389c848
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)
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
Mark Adams [Wed, 13 Sep 2017 18:54:40 +0000 (14:54 -0400)]
Limit max renderbuffer size to avoid too-large allocations
This brings the ES2 version of this test in-line with the ES3 version
in order to avoid hitting address-space limitations with very large max sizes
in 32-bit mode.
VK-GL-CTS issue: 687
Affects:
dEQP-GLES2.functional.state_query.rbo.renderbuffer_size
Change-Id: Id3a0be7e8e2e6aaf3dcb6d9cd2b1c4a9a19d4baf
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)
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)
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)
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
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)
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
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)
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
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)
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
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)
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
Jari Komppa [Fri, 8 Sep 2017 08:19:10 +0000 (11:19 +0300)]
Add test to stress deeply nested OpPhi
Added test that generates a deeply nested shader which modifies a
single variable in various points of the hierarchy.
Code generation is done by first creating a code string with
characters A, B and C. These characters represent the following:
A "if () { result++;"
B "} else {"
C "}"
By inserting ABC between the characters of the code string, we get
complex nested hierarchy. For example, AABCBC generates:
"if () { if { result++; if () { result ++; } else { } } else { }"
Note that the else-paths do not generate new values, and thus the code
generator needs to track the previous symbol for the else-paths.
The generated code is 8 levels deep and about 1600 lines long.
The test can be simplified for debugging purposes by reducing the
number of iterations when generating the code string.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.opphi.nested
Components: Vulkan
Vk-GL-CTS issue: 259
Change-Id: I4c9943e2a11c8375104a16f0a78df136ff848831
Alexander Galazin [Fri, 22 Sep 2017 15:43:33 +0000 (17:43 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I75fc50f5d68cbb870f5d88691123e48a7ee5a32f
Alexander Galazin [Fri, 22 Sep 2017 15:41:54 +0000 (10:41 -0500)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I3c3e21f7def0b5dac25ac6618f7971ced5a1c238
Alexander Galazin [Fri, 22 Sep 2017 15:21:25 +0000 (10:21 -0500)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Change-Id: I4835e397d77a99bc7d948b2667f5cafd59b2df83
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
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
Alexander Galazin [Fri, 22 Sep 2017 14:39:17 +0000 (16:39 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: Ib4b413240b8d6c4a8771eb1669ccdf5733f12f45
Alexander Galazin [Fri, 22 Sep 2017 14:39:16 +0000 (16:39 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: I930fe816c7fc4772119a5eb663fd4f97529e7113
Alexander Galazin [Fri, 22 Sep 2017 14:39:16 +0000 (16:39 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Change-Id: Ie1763ec17e355a1e4beeb9eae20cdfb129a3761c
Alexander Galazin [Fri, 22 Sep 2017 13:35:50 +0000 (08:35 -0500)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I36e5fa9c5d58d2694b07bb1f0a2dfef0f1a44af0
Boris Zanin [Thu, 7 Sep 2017 11:08:20 +0000 (13:08 +0200)]
Fix memory corruption vktApiObjectManagementTests
Due to s_deviceCases is declared as non-static arrays the pointers
to these structures cannot be included into static arrays such as
s_createSingleGroup, s_createMultipleUniqueResourcesGroup, etc.
During second call references in arrays like s_createSingleGroup,
s_createMultipleUniqueResourcesGroup, etc will point to invalid
memory and most likely will lead to crash.
Fix: make dependend structures also non-static.
Update tests:
* dEQP-VK.api.object_management.*
Components: Vulkan
VK-GL-CTS issue: 674
Change-Id: I23ace5fe0bcdd1db9400fc8437218941a045cf25
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)
James Helferty [Wed, 6 Sep 2017 18:12:53 +0000 (14:12 -0400)]
Replace missmatch_object with invalid_object
Modifies the missmatch_object (sic) test for glCopyImageSubData into an
invalid object test. The changes clarify what the test is actually
testing, and avoids an issue where an unexpectedly valid object name
could cause the test to fail.
Also fixes the spelling of 'mismatch' in several places, corrects the
description for Test [C], and corrects mention of 'CopyImageSubData'.
Components: OpenGL
VK-GL-CTS issue: 669
Affects:
* KHR-GL43/44/45/46.copy_image.missmatch_object, which are now
* KHR-GL43/44/45/46.copy_image.invalid_object
* KHR-GL43/44/45/46.copy_image.samples_missmatch, which are now
* KHR-GL43/44/45/46.copy_image.samples_mismatch
Change-Id: I5127435afc1c116df3d4fa8d6d78397069255603
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
Mark Adams [Mon, 18 Sep 2017 14:22:49 +0000 (10:22 -0400)]
Increase max for output image asserts to 32768
In framework/qphelper/qpTestLog.c, two assertions assume that the
width and height of the output image are no larger than 16384. But
when testing in 1 x max FBO mode, and max FBO size is larger than
16384, these asserts would fire. This change relaxes the assertions
so they expect sizes up to 32768.
Author: Weiwan Liu <weiwliu@nvidia.com>
Components: Framework
VK-GL-CTS issue: 697
Affects: KHR-GL46.explicit_uniform_location.uniform-loc
Change-Id: If6c674a8728defba971851590b36ac1196c7a39d
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)
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
Boris Zanin [Thu, 7 Sep 2017 11:08:20 +0000 (13:08 +0200)]
Fix memory corruption vktApiObjectManagementTests
Due to s_deviceCases is declared as non-static arrays the pointers
to these structures cannot be included into static arrays such as
s_createSingleGroup, s_createMultipleUniqueResourcesGroup, etc.
During second call references in arrays like s_createSingleGroup,
s_createMultipleUniqueResourcesGroup, etc will point to invalid
memory and most likely will lead to crash.
Fix: make dependend structures also non-static.
Update tests:
* dEQP-VK.api.object_management.*
Components: Vulkan
VK-GL-CTS issue: 674
Change-Id: I23ace5fe0bcdd1db9400fc8437218941a045cf25
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
Alexander Galazin [Fri, 15 Sep 2017 12:21:42 +0000 (14:21 +0200)]
Update OpenGL CTS Readme and verification
- Update the OpenGL CTS Readme to clarify that
KC CTS results are not needed for opengl-es-cts-3.2.4.0 and later.
- Update the verification script to adjust to the new rules.
Components: OpenGL
Affects: conformance package verification
VK-GL-CTS issue: 695
Change-Id: I83ae7db6aefda0356f6db5dd5cd605fa287e01d8
Alexander Galazin [Fri, 15 Sep 2017 14:35:06 +0000 (16:35 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: Ib19463450356e1672ce30e02f4fade51f073145b
Alexander Galazin [Fri, 15 Sep 2017 14:35:04 +0000 (16:35 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Change-Id: I2f92ca929f94c7818f9bcafe42bd7acc51056cf6
Alexander Galazin [Fri, 15 Sep 2017 14:10:37 +0000 (16:10 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I6dc9711a5bb8fe51b961e3c7983f09482f98113c
Alexander Galazin [Fri, 15 Sep 2017 14:10:31 +0000 (16:10 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: I9cbd8bdad0a15372c7778a34b5f1ce62be6374ee
Alexander Galazin [Fri, 15 Sep 2017 14:10:30 +0000 (16:10 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Change-Id: I353c8266809ad559d5776a279054f2505b4d4d61
David Neto [Thu, 10 Aug 2017 15:29:24 +0000 (11:29 -0400)]
Test workgroup size setting combinations
Vulkan shader validation rules include:
For each compute shader entry point, either a LocalSize execution mode
or an object decorated with the WorkgroupSize decoration must be
specified.
Glslang always emits an "OpExecutionMode %main LocalSize 1 1 1".
We should be able to specify workgroup size with a spec constant
uvec3, and remove OpExecutionMode for LocalSize.
This patch tests 3 combinations:
literal local size, no spec constant workgroup size
literal local size, and spec constant workgroup size
no literal local size, and spec constant workgroup size
Affects:
dEQP-VK.spirv_assembly.instruction.compute.opnop.*
VK-GL-CTS issue: 629
Compoonents: Vulkan
Change-Id: I5401cac9e569bf1ed77920015ba085b6a8f28a11
Gerrit Code Review [Fri, 15 Sep 2017 11:41:44 +0000 (07:41 -0400)]
Merge "Merge vk-gl-cts/github-master into vk-gl-cts/master"
James Helferty [Wed, 6 Sep 2017 18:12:53 +0000 (14:12 -0400)]
Replace missmatch_object with invalid_object
Modifies the missmatch_object (sic) test for glCopyImageSubData into an
invalid object test. The changes clarify what the test is actually
testing, and avoids an issue where an unexpectedly valid object name
could cause the test to fail.
Also fixes the spelling of 'mismatch' in several places, corrects the
description for Test [C], and corrects mention of 'CopyImageSubData'.
Components: OpenGL
VK-GL-CTS issue: 669
Affects:
* KHR-GL43/44/45/46.copy_image.missmatch_object, which are now
* KHR-GL43/44/45/46.copy_image.invalid_object
* KHR-GL43/44/45/46.copy_image.samples_missmatch, which are now
* KHR-GL43/44/45/46.copy_image.samples_mismatch
Change-Id: I5127435afc1c116df3d4fa8d6d78397069255603
Alexander Galazin [Fri, 15 Sep 2017 11:22:42 +0000 (13:22 +0200)]
Merge vk-gl-cts/github-master into vk-gl-cts/master
Change-Id: I1446b5237224f6b26f74dc2d4ea0f17174908888
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)
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)
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
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)
Eleni Maria Stea [Tue, 5 Sep 2017 08:30:06 +0000 (11:30 +0300)]
Fixes KHR-GL30.gpu_shader5_gl.* tests failures.
According to the ARB_gpu_shader5 specification "OpenGL 3.2 and GLSL 1.50
are required." Changes: 1) used GLSL version 150 2) moved the tests to
GL 3.2 package.
Removes:
KHR-GL30.gpu_shader5_gl.* tests
KHR_GL31.gpu_shader5_gl.* tests
Components: OpenGL
VK-GL-CTS issue: 662
Change-Id: I192ea895f057f762b56710a787e5e80be0268142
Kenneth Graunke [Fri, 8 Sep 2017 23:18:49 +0000 (16:18 -0700)]
Delete incorrect invalid map CTS tests.
The citation given in these tests comes from the OpenGL man pages, which
are not authoritative. The ES 3.2 and GL 4.x specifications say:
"Effects of Mapping Buffers on Other GL Commands
Any GL command which attempts to read from, write to, or change the
state of a buffer object may generate an INVALID_OPERATION error if
all or part of the buffer object is mapped. However, only commands
which explicitly describe this error are required to do so. If an
error is not generated, using such commands to perform invalid
reads, writes, or state changes will have undefined results and may
result in GL interruption or termination."
Importantly, it says "_may_ generate an INVALID_OPERATION error". Some
drivers choose not to implement this to avoid the CPU overhead required
to enforce this optional restriction.
Affects:
- KHR-*.draw_elements_base_vertex_tests.invalid_mapped_bos
VK-GL-CTS issue: 682
Components: OpenGL
Change-Id: I4c0f7785ca7a747145591d071dda6e5231c787d4
Alexander Galazin [Fri, 15 Sep 2017 10:03:10 +0000 (12:03 +0200)]
Merge pull request #61 from imirkin/master
Always apply flat qualifier to double inputs, same as int/uint
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
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
Piotr Byszewski [Tue, 22 Aug 2017 08:31:14 +0000 (10:31 +0200)]
Fix skipped tests in npot_tex2d_render
GTF npot_tex2d_render test was ported to glcts and corrected.
Rendering is done to FBO and all render dimensions are checked.
Components: OpenGL
VK-GL-CTS issue: 48
Affects:
KHR-GLES3.texture_repeat_mode.*
KHR-GL30.texture_repeat_mode.*
Change-Id: I147ad1aa54d6fbfb626a2cfa7da9333ada41802f
Piotr Byszewski [Tue, 5 Sep 2017 10:39:13 +0000 (12:39 +0200)]
Test readonly and writeonly buffer variables
It is allowed the both readonly and writeonly qualifiers be used on
buffer variables. It just means it can't be read or written, but can
otherwise be referenced like with .size(), etc.
Components: OpenGL
VK-GL-CTS issue: 639
Affects:
KHR-GL43.shader_storage_buffer_object.basic-readonly-writeonly
KHR-GLES31.core.shader_storage_buffer_object.basic-readonly-writeonly
Change-Id: Id8f68a8687e41cdd42d45c8300f812833312517e
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
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
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
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
Piotr Byszewski [Mon, 24 Jul 2017 12:48:21 +0000 (14:48 +0200)]
Enable tests for EXT_shader_group_vote
ShaderGroupVoteTests were generalized so that thay can
test ARB_shader_group_vote for GL core and
EXT_shader_group_vote for ES.
Components: OpenGL
VK-GL-CTS issue: 383
Affects:
KHR-GL45.shader_group_vote.*
KHR-GLES31.core.shader_group_vote.*
Change-Id: I3822cd386e522ceb9f8609544828e2febc257770
(cherry picked from commit
61e9dd88605ae53d48d9059e64d866912fb80ba5)
Piotr Byszewski [Mon, 24 Jul 2017 12:48:21 +0000 (14:48 +0200)]
Enable tests for EXT_shader_group_vote
ShaderGroupVoteTests were generalized so that thay can
test ARB_shader_group_vote for GL core and
EXT_shader_group_vote for ES.
Components: OpenGL
VK-GL-CTS issue: 383
Affects:
KHR-GL45.shader_group_vote.*
KHR-GLES31.core.shader_group_vote.*
Change-Id: I3822cd386e522ceb9f8609544828e2febc257770
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
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
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
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
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
Alexander Galazin [Fri, 8 Sep 2017 15:31:23 +0000 (17:31 +0200)]
Increase threshold for ShaderRender tests
The threshold proves to be too low due to randomness of
fuzzyCompare(). Slightly increase it to make the tests
more robust.
Components: AOSP
VK-GL-CTS issue: 681
Affects (at least):
dEQP-GLES3.functional.shaders.texture_functions.*
Change-Id: I878e6a5c89673e87bcc225323ad852bc5e809e9e
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
Ilia Mirkin [Sat, 9 Sep 2017 22:27:30 +0000 (18:27 -0400)]
Always apply flat qualifier to double inputs, same as int/uint
Affects:
KHR-GL45.enhanced_layouts.varying_structure_locations
Components: OpenGL
GitHub Issue: #53
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
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