Alexander Galazin [Thu, 4 Apr 2019 18:52:34 +0000 (20:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Iae6020003b47aa1903dfc1f9917383de6a33fb57
Alexander Galazin [Thu, 4 Apr 2019 18:52:02 +0000 (14:52 -0400)]
Merge "Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3" into vulkan-cts-1.1.3
Alexander Galazin [Wed, 3 Apr 2019 16:23:33 +0000 (18:23 +0200)]
Blacklist 1.0.2.x versions
1.0.2.x is withdrawn. Recent drivers shouldn't advertise these versions.
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: I5e7417d0561381dd0365edef9f17609cc5f2a5aa
Alexander Galazin [Thu, 4 Apr 2019 18:22:37 +0000 (20:22 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I353dac50e06609d2783125bf22aee21f27c9939a
Anthony Pesch [Tue, 26 Mar 2019 16:24:17 +0000 (12:24 -0400)]
Fix buffer RAW hazards in MultiQueue synchronization tests
The MultiQueue tests emit barriers between command buffers for two reasons:
1. To express the data dependencies between different pipeline stages.
2. To transfer ownership of the resource between queue families.
The exclusive sharing mode tests need both of these barriers, while the
concurrent mode tests only need to describe the data dependency.
Previously, a barrier was only emitted for the exclusive tests, causing
the concurrent tests to not have a barrier expressing the data dependencies
between the pipeline stages. Now the data dependencies are described for
both the exlusive and concurrent tests, while the ownership transfer is
only performed for exclusive tests.
Affects: dEQP-VK.synchronization.op.multi_queue.*.write_*_read_*.buffer_*
Components: Vulkan
VK-GL-CTS issue: 1650
Change-Id: Ic3bc83a7dcab8686754aea5267afeb10090038d0
(cherry picked from commit
93dc8a343c7ea67a2c8ffb694b45ff44703fbe6f)
Boris Zanin [Wed, 3 Apr 2019 10:14:26 +0000 (12:14 +0200)]
Fix damage binary length field in shadercacheSave
Hash cache collision does not mean that binary
would be of same length.
Function shadercacheSave does not account it and
overwrites original binary length with cached
binary length.
Components: Framework
VK-GL-CTS issue: 1717
Change-Id: Iaabce787725c584b9735e959b572ca7667addde4
(cherry picked from commit
7871b6a8e263e1fddefbdbfbf1ca19e657f384ec)
Alexander Galazin [Thu, 4 Apr 2019 09:05:26 +0000 (11:05 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I0944cd90d64d01363cdbf8ce6b1007987bf7857c
Piers Daniell [Wed, 3 Apr 2019 20:20:09 +0000 (14:20 -0600)]
Don't disown Win32 handle after import
For Win32 fences and semaphores, the Vulkan implementation does not take
ownership of the handle after import. It is up to the application to
maintain ownership while the handle is in use and to call
CloseHandle() after.
Affects:
dEQP-VK.api.external.*.opaque_win32*
Components: Vulkan
VK-GL-CTS issue: 1720
Change-Id: I4e26ef53c9bf27c30efd71992fd02a574f81b3a0
Alexander Galazin [Wed, 3 Apr 2019 07:32:20 +0000 (09:32 +0200)]
Whitelist Vulkan CTS 1.1.4.0
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: I575178442d938a776ab32c1c5e965246324e8cec
Alexander Galazin [Wed, 3 Apr 2019 07:17:40 +0000 (09:17 +0200)]
Whitelist Vulkan CTS 1.1.3.2
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: Ia9ecc8dad3b2a37212d19f1878abb02095c22298
(cherry picked from commit
38db037997d48eca9ed86bdd134430ab03ff5ef6)
Alexander Galazin [Wed, 3 Apr 2019 07:17:40 +0000 (09:17 +0200)]
Whitelist Vulkan CTS 1.1.3.2
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: Ia9ecc8dad3b2a37212d19f1878abb02095c22298
Alexander Galazin [Tue, 2 Apr 2019 18:06:00 +0000 (20:06 +0200)]
Update SPIRV-Tools
Components: Framework
Affects: dEQP-VK.*
Change-Id: Ifcbd09e61a49fa0981091c176e6cf2b7bcaf98b7
Boris Zanin [Tue, 26 Mar 2019 10:34:38 +0000 (11:34 +0100)]
Avoid check vulkan core features in compute tests
Remove graphics features requirements from check
in compute shaders. This is particulary useful if
tests are targeted both in compute and graphics
pipelines, but in graphics also require certain
additional features.
Affects tests:
* dEQP-VK.spirv_assembly.instruction.compute.*
Components: vulkan
VK-GL-CTS issue: 1667
Change-Id: Ia9b039c404611a35b5ee878278dbe6fa175e40f9
Mika Väinölä [Fri, 29 Mar 2019 12:20:24 +0000 (14:20 +0200)]
Fix image layouts in SPIR-V image sampler tests
Use the same image layout in VkDescriptorImageInfo and
copyBufferToImage.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.image_sampler.imagefetch.*
Components: Vulkan
VK-GL-CTS issue: 1542
Change-Id: I001b9d9ce7ee349c15c4c72d2b78557bbff40b86
Mika Väinölä [Fri, 29 Mar 2019 13:33:56 +0000 (15:33 +0200)]
Add *.qpa to .gitignore
Tell git to ignore test result log files. Remove unnecessary
TestResults.qpa from project root.
VK-GL-CTS issue: 1710
Change-Id: Ied98b5ba3bd839a5ceff8fe5ee1303e36406f531
Alexander Galazin [Fri, 29 Mar 2019 11:31:21 +0000 (12:31 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Change-Id: Ia79528e30236521e7a3b0284b95709c31b523a11
Alexander Galazin [Fri, 29 Mar 2019 11:01:20 +0000 (12:01 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Iac3d5efdad7fe20709154ca4ed6d05fdea11f8a8
Alexander Galazin [Fri, 29 Mar 2019 10:15:10 +0000 (11:15 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: Ic01781a17482429ea152af7df5ff752a2226b568
Samuel Iglesias Gonsálvez [Wed, 20 Mar 2019 11:33:33 +0000 (12:33 +0100)]
Add tests for VK_EXT_host_query_reset
Added tests for Occlusion, Statistics and Timestamp queries.
New tests:
dEQP-VK.pipeline.timestamp.*host_query_reset*
dEQP-VK.query_pool.*host_query_reset*
Components: Vulkan
VK-GL-CTS issue: 1653
Change-Id: Ic828de11bd0782bed75833a252a1b07a066aa635
Igor Ostrowski [Tue, 12 Mar 2019 10:36:10 +0000 (11:36 +0100)]
Add handle compatibility check in win32 keyed mutex tests
Affects:
dEQP-VK.synchronization.win32_keyed_mutex.*
Components: Vulkan
VK-GL-CTS issue: 1669
Change-Id: I1ce4edae009d291100725fce9d87ae6ac826c4ae
Boris Zanin [Mon, 25 Mar 2019 17:06:01 +0000 (18:06 +0100)]
Move VkRunner tests to Amber
CTS will use Amber as the shader test engine.
Thus this commit does:
* move existing VkRunner tests to Amber
* remove VkRunner from the CTS source
Affects tests:
* dEQP-VK.graphicsfuzz.*
Components: vulkan
VK-GL-CTS issue: 1663
Change-Id: Ie3d17ec6f2eea79b777261f7c022fa7c5d0a965f
Mohd Faisal [Tue, 19 Mar 2019 14:45:56 +0000 (14:45 +0000)]
Fixed dEQP-VK.binding_model.descriptor_copy.* issues.
Added missing check for number of maxBoundDescriptorSets
allowed, and fixed not copy the same binding in same
descriptorSet.
Affects:
dEQP-VK.binding_model.descriptor_copy.*
Components: Vulkan
VK-GL-CTS issue: 1664
Change-Id: I69bdb45174c61da3afaa0b323f2598a56d7895c8
Alexander Galazin [Thu, 28 Mar 2019 12:55:31 +0000 (08:55 -0400)]
Revert "Simplify the combination passed to vkCreateImage"
This reverts commit
8b8dc08b3487d8abebedd12a264736e304264910.
Change-Id: I51bf04f47ce13673fd26244ba0507bd633f261b2
Courtney Goeltzenleuchter [Wed, 13 Mar 2019 00:05:29 +0000 (18:05 -0600)]
Check for getPlatformDisplay support before using
I was under the impression that NativeDisplay::CAPABILITY_GET_DISPLAY_PLATFORM
meant that we know the capability exists. But that apparently isn't
true.
Instead treat that as a flag to enable checking for the capability.
Don't really see the point of the capability bit if I have to check
anyway.
Affects: Android
KHR-GLES32.info.*
Pretty much any test running on EGL 1.4 device.
Components: Framework, AOSP
Change-Id: I49e36918bc231c08e1a473fe99e5086f54416850
Jari Komppa [Mon, 25 Feb 2019 13:07:45 +0000 (15:07 +0200)]
Optimize format flag fetch function
This fixes one old TODO in vktApiFeatureInfo by optimizing several array
traversals into a single one.
Affects:
dEQP-VK.api.info.format_properties.*
Components: Vulkan
VK-GL-CTS issue: 1624
Change-Id: I2b0e603e20e8adb27620754e0ca9a0b9d102d01f
Boris Zanin [Fri, 22 Mar 2019 14:24:36 +0000 (15:24 +0100)]
Limit transient images tests
Transient images (images that usage field contains the flag bit
VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT) can be used only in
conjunction with following usages (according to specification):
* VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT
* VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
* VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT
The tests falsely attempts to create images with layout:
* VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
* VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
Such layout requires images to be created with usages:
* VK_IMAGE_USAGE_TRANSFER_SRC_BIT
* VK_IMAGE_USAGE_TRANSFER_DST_BIT
that's prohibited for transient images.
If underlying image is transient, it is invalid for it to be a
TRANSFER_SRC or TRANSFER_DST. Do not allow tests for transient
images to use such layouts.
Affected tests:
* dEQP-VK.renderpass.*.attachment.*
* dEQP-VK.renderpass2.*.attachment.*
Components: vulkan
VK-GL-CTS issue: 1545
Change-Id: Ibd1635d15419adcb646fbc1daf030a2736b972b1
Toni Merilehti [Tue, 19 Mar 2019 14:38:16 +0000 (16:38 +0200)]
Reduce memory usage in point size clamping tests
Win32 builds running dEQP-VK.rasterization.primitive_size.points.*
caused resource errors when using 16384 x 16384 render targes due to
large memory allocations.
This optimization changes the rendering format from R8G8B8A8 to
a single-channel format R8_UNORM, reduces the sizes of the render
targets on the last two test cases to 10240 x 10240 and 9216 x 9216,
and removes one unnecessary result buffer copy to reduce memory
allocation.
Affects:
dEQP-VK.rasterization.primitive_size.points.*
Components: Vulkan
VK-GL-CTS issue: 1649
Change-Id: I5d9f435961f0cd56f8b520ac7e98cece1d4f73d7
Daniel Koch [Mon, 18 Mar 2019 15:49:33 +0000 (11:49 -0400)]
Update glslang
Component: Framework
VK-GL-CTS Issue: 1698
Change-Id: I63d45cfc317f99fbf7d16b43f489f93863a02f14
Hsin-Hsiao Lin [Tue, 26 Mar 2019 08:14:02 +0000 (09:14 +0100)]
Do not expect bit-exact results on float
For float outputs annotated with RelaxedPrecision or with NoPerspective,
check them against an epsilon range, 6E-8, which is 0x0001 in fp16.
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.basic_type.*
dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.interface_blocks.*
Components: vulkan
VK-GL-CTS issue: 1670
Change-Id: I98454826a3f4afccd655b0228839970ba0213793
Daniel Koch [Tue, 26 Mar 2019 22:54:18 +0000 (18:54 -0400)]
Remove "using namespace glu" from header
since this is a bad coding practise and can cause
issues when other files include it.
Affects: - (compilation only)
Component: OpenGL
Change-Id: I6809dcc7f0f12a9fde1b329889727708628798e3
David Neto [Tue, 12 Feb 2019 20:00:03 +0000 (15:00 -0500)]
Add scalar uint with signed int compares as Amber cases
Logs an error and throws an exception if the script fails to parse.
Components: Vulkan
Affects:
dEQP-VK.spirv_assembly.instruction.compute.signed_int_compare.uint_sgreaterthan
dEQP-VK.spirv_assembly.instruction.compute.signed_int_compare.uint_sgreaterthanequal
dEQP-VK.spirv_assembly.instruction.compute.signed_int_compare.uint_slessthan
dEQP-VK.spirv_assembly.instruction.compute.signed_int_compare.uint_slessthanequal
VK-GL-CTS issue: 1147
Change-Id: Ic8ce35bff0e05360dc9e674cce313d441e2f4953
Ari Suonpaa [Thu, 7 Feb 2019 07:06:08 +0000 (09:06 +0200)]
Add scissor tests
This adds more coverage for scissoring. In particular
tests for multiple scissors and zero area scissor
were added. Attachment clears are also mixed with
draw commands to verify they are not scissored.
New tests:
dEQP-VK.draw.scissor.*
Components: Vulkan
VK-GL-CTS issue: 1580
Change-Id: I7a7ee221d23d836fbb8fc2d1556fb533b5b41ab6
Piotr Byszewski [Mon, 17 Dec 2018 11:53:50 +0000 (12:53 +0100)]
Additional coverage for color resolve
This change extracts base class out of existing MultisampleRender-
PassTestInstance and reuses it for the second set of tests.
New tests are ment to check cases where application consumes
all available on-chip memory (maxColorAttachments attachments).
Note that tests are executed for 4, 8 and 16 attachments since
framework does not allow to query maxColorAttachments before
test creation and this is needed to preper proper shaders.
Components: Vulkan
VK-GL-CTS issue: 1496
Affects:
dEQP-VK.renderpass.suballocation.multisample_resolve.*
dEQP-VK.renderpass2.suballocation.multisample_resolve.*
Change-Id: I14f39e7185a2930506dc8352fce8ac2896b317ae
Ari Suonpaa [Fri, 22 Mar 2019 07:18:53 +0000 (09:18 +0200)]
Disable pipeline_create_only when running Amber tests
Amber test framework didn't initialize pipeline_create_only
in Amber options. This resulted in Amber tests only checking
if pipeline was created successfully. All test commands
were left unexecuted and tests were passing even when
they were modified to fail.
Affects:
-
Components: Vulkan, Framework
VK-GL-CTS issue: 1659
Change-Id: I657d4e162d6bbc7bf6a5b41bd5bac7ddaf4dbf78
Toni Merilehti [Wed, 13 Mar 2019 11:36:05 +0000 (13:36 +0200)]
Check shaderFloat16 support in 16bit_storage.*64*
Require shaderFloat16 feature in
dEQP-VK.spirv_assembly.instruction.*.16bit_storage.*64* tests when
using VK_KHR_shader_float16_int8 device extension. Tests now throw
NotSupported if VK_KHR_shader_float16_int8 extension is enabled but
shaderFloat16 is not supported by the device.
Affects:
dEQP-VK.spirv_assembly.instruction.*.16bit_storage.*64*
Components: Vulkan
VK-GL-CTS issue: 1643
Change-Id: I79b271f131571805e6dacb87fa3620039021eedb
Alexander Galazin [Fri, 22 Mar 2019 20:13:10 +0000 (21:13 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Change-Id: I62d7ebcc0c2cb2a2adc9c1d8f910c499b3504b7f
Alexander Galazin [Fri, 22 Mar 2019 20:11:55 +0000 (21:11 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I4f48c3e9ca8593777c5a4ef6cd32050f8c839043
Alexander Galazin [Fri, 22 Mar 2019 20:10:39 +0000 (21:10 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: I328cee295acc9eb8c5204e5f3574879d9e21a609
Alexander Galazin [Fri, 22 Mar 2019 19:49:07 +0000 (20:49 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: If24571c09fd321c8417da919af0d2272a0ac2c57
Tony Zlatinski [Tue, 12 Feb 2019 16:50:28 +0000 (10:50 -0600)]
cmake: Add support for PNG_ARM_NEON_OPT NDK-r19
On Android, here is clang compiler change for
NDKs after ndk-r17c where the compiler intrinsics
for libpng are not part of the compiler for the
armeabi-v7a targets.
Add the supported png functions for these compiler
intrinsics, explicitly for 32-bit ARM builds.
Affects:
dEQP-VK.*
Components: Vulkan, Framework
VK-GL-CTS issue: 1638
Change-Id: Ib832f983294f5dd747720ed4a79a21e29a06f776
(cherry picked from commit
99a88af740c425bf250ce9cb2143aa6be3a778f2)
Alexander Galazin [Fri, 22 Mar 2019 09:06:18 +0000 (10:06 +0100)]
Fix uninitialized variable reported by gcc 8.3
VK-GL-CTS issue: 1656
Components: Vulkan
Affects: dEQP-VK.sparse_resources.*
Change-Id: I298c795b05c0c204f04970da7a923f797c4478b8
Alexander Galazin [Fri, 22 Mar 2019 15:25:50 +0000 (16:25 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: Ie1a2c3d42088338cc526a4b9bd22bdec070dd7b9
Graeme Leese [Fri, 22 Mar 2019 14:32:55 +0000 (14:32 +0000)]
Fix build by adding DE_UNREF
Function parameters weren't being used in the renderdoc stub interface,
so the warnings should be silenced.
Components: Framework
Change-Id: I0f060c344c6b5959028efcc2489d1bc30b43fb9f
Alexander Galazin [Fri, 22 Mar 2019 13:09:57 +0000 (14:09 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Iff99182ee48f808b2e1e93eea00ae17ec44efa3e
Peiyong Lin [Wed, 26 Dec 2018 23:45:55 +0000 (15:45 -0800)]
Add tests for EGL_GL_COLORSPACE_DISPLAY_P3_PASSTHROUGH_EXT.
Components: EGL
VK-GL-CTS Issue: 1534
New tests:
dEQP-EGL.functional.wide_color.window_fp16_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.pbuffer_fp16_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.window_1010102_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.pbuffer_1010102_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.window_8888_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.pbuffer_8888_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.window_888_colorspace_p3_passthrough,
dEQP-EGL.functional.wide_color.pbuffer_888_colorspace_p3_passthrough
Change-Id: I58a9a6a676d8e438c3c2494679105d65e71852b5
Graeme Leese [Mon, 4 Mar 2019 13:18:43 +0000 (13:18 +0000)]
Invalidate memory before checking results
Components: Vulkan
VK-GL-CTS issue: 1640
Affects: dEQP-VK.binding_model.descriptor_copy.graphics.*
Change-Id: I20a9ba5f32aefa9df0852bd064df27cb333af3aa
Ilkka Saarelainen [Wed, 6 Mar 2019 12:43:05 +0000 (14:43 +0200)]
Fix validation errors in ycbcr.query.* tests
Query tests were using test images in VK_IMAGE_LAYOUT_UNDEFINED
layout but the command buffer expects them to be in
VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL layout.
This CL transitions the test images to the correct layout.
Affects:
dEQP-VK.ycbcr.query.*
Components: Vulkan
VK-GL-CTS issue: 1563
Change-Id: I4b17078d0f06db59206cb46f377b61beaa252c60
Graeme Leese [Mon, 11 Mar 2019 18:29:08 +0000 (18:29 +0000)]
Don't give samplers in YCbCr descriptor updates
They are not required, so it's good to test that implementations are not
relying on them.
Components: Vulkan
VK-GL-CTS issue: 1646
Affects: dEQP-VK.ycbcr.format.*
Change-Id: I146a549b0a6cd2459660624c76088f623ebdd54b
Toni Merilehti [Mon, 4 Mar 2019 11:43:39 +0000 (13:43 +0200)]
Add tests for OpFUnord with NaN
Add OpFUnord test cases that use NaN (not a number) values.
The functionality for testing NaN values is implemented
in commit
acafd1d389d1d18d4e4410862d96064f9fca551e.
New tests:
dEQP-VK.spirv_assembly.instruction.compute.opfunord_nan.*
Components: Vulkan
VK-GL-CTS issue 1612
Change-Id: Ifd49c5ebe6382737cb0fb6ffca1a350889a54905
Ari Suonpaa [Tue, 12 Feb 2019 13:21:07 +0000 (15:21 +0200)]
Add alpha to coverage test with no color attachment
Added a test for alpha to coverage without a color
attachment. First the test draws a primitive with alpha 0
and a subpass with only a depth buffer. No writes to a depth
buffer are expected. Then a second draw with a color buffer
and the same depth buffer is done to verify the depth
buffer still has the original clear values.
New tests:
dEQP-VK.pipeline.multisample.alpha_to_coverage_no_color_attachment.*
Components: Vulkan
VK-GL-CTS issue: 1586
Change-Id: Ibfc9cbf0ade3280fe80f43296fad79b5c6f76ba1
root [Wed, 6 Mar 2019 05:53:29 +0000 (00:53 -0500)]
Simplify the combination passed to vkCreateImage
Components: Vulkan
Affects:
dEQP-VK.memory.requirements.*
VK-GL-CTS issue: 1619
Change-Id: Ief6e8c30cc3d379456aba87be9da92284d33e983
Jason Ekstrand [Sat, 15 Dec 2018 00:04:39 +0000 (18:04 -0600)]
Be more careful about Block decorations on structs
In spirv/SPIR-V@
9701a9f9 we changed the SPIR-V spec to say that
block-decorated structures could not be nested. This is needed for
sorting out certain variable pointers issues inside a SPIR-V parser.
Unfortunately, the mentioned group of CTS tests violates this rule.
Their %input_buffer type is a struct containing two instances of
%outer_struct and both %input_buffer and %outer_struct are decorated
Block. Fortunately, only one of the two struct types is actually
required for an input at any given type so we just need to be more
careful about the decorations.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.variable_pointers.complex_types_compute.*
Components: Vulkan
VK-GL-CTS issue: 1518
Change-Id: I87a832fab94a9c06317d20b32afedf16b52ab2f2
(cherry picked from commit
1dbdfe34947fdb3e6d24226a58f02d0b8a515da8)
David Neto [Thu, 21 Mar 2019 07:01:07 +0000 (03:01 -0400)]
Update Amber to fix building on Android, and elsewhere
- Fix dir for generation of Vulkan header
- Avoid aggressive use-without-init warnings
- Fix return inferred as unreachable by clang-3.4
Change-Id: I6422e14d38fa6d213d4d5e92f981d9843b0c055e
Jordan Justen [Tue, 12 Mar 2019 07:17:53 +0000 (00:17 -0700)]
Make renderdoc_app.h optional at build time
Since renderdoc support is optional at runtime, this change makes it
also optional at build time. If the renderdoc_app.h file doesn't exist
at the expected location, then a no-op stub version of the
RenderDocUtil class is built instead.
Components: Vulkan, Framework
Change-Id: Iedc4bcddf47ac5f471911ad6d8e37439cd9e0d90
Alexander Galazin [Wed, 20 Mar 2019 16:10:35 +0000 (12:10 -0400)]
Revert "Make renderdoc_app.h optional at build time"
This reverts commit
1225d4ab8375e88b39f73bc946a7afcb51aa8156.
Change-Id: I3c2f71b3bc54adb221f1357f7a4b31e719dc3a20
Jari Komppa [Wed, 6 Mar 2019 08:41:25 +0000 (10:41 +0200)]
Improve shader cache hashing
This change adds FNV-1 hash algorithm and a check whether a shader is
already in the cache before writing it there. In multi-threaded shader
compilation the cache might have written multiple copies of the same
shader into the cache, wasting disk space.
Affects:
None
Components: Vulkan
VK-GL-CTS issue: 1641
Change-Id: Ideaed34f49994f5da50b75066e611e60023eccb1
Tony Zlatinski [Tue, 12 Feb 2019 16:50:28 +0000 (10:50 -0600)]
cmake: Add support for PNG_ARM_NEON_OPT NDK-r19
On Android, here is clang compiler change for
NDKs after ndk-r17c where the compiler intrinsics
for libpng are not part of the compiler for the
armeabi-v7a targets.
Add the supported png functions for these compiler
intrinsics, explicitly for 32-bit ARM builds.
Affects:
dEQP-VK.*
Components: Vulkan, Framework
VK-GL-CTS issue: 1638
Change-Id: Ib832f983294f5dd747720ed4a79a21e29a06f776
Jordan Justen [Tue, 12 Mar 2019 07:17:53 +0000 (00:17 -0700)]
Make renderdoc_app.h optional at build time
Since renderdoc support is optional at runtime, this change makes it
also optional at build time. If the renderdoc_app.h file doesn't exist
at the expected location, then a no-op stub version of the
RenderDocUtil class is built instead.
Components: Vulkan, Framework
Change-Id: Ic4b43500b4ead50c4728d2ff3bf098d44e00a9a6
Tapani Pälli [Fri, 1 Mar 2019 11:07:35 +0000 (13:07 +0200)]
framework: propagate ResourceError exception from postIterate
Change throws ResourceError exception in TestCaseWrapper::iterate in
case postIterate threw one.
Change-Id: I9a3fed58f21dd6f594488fc998ae5bd685a733ec
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Daniel Koch [Wed, 13 Mar 2019 19:15:48 +0000 (15:15 -0400)]
Move spirv/glslang utils to common module
VK-GL-CTS Issue: 1651
Component: OpenGL
Affects: KHR-GL*.gl_spirv.*
Change-Id: I1fdc617523ac467458952e9ec2df67abf80657c3
David Neto [Tue, 19 Mar 2019 18:56:29 +0000 (14:56 -0400)]
Amber: Initialize the delegate to NULL
The delegate can be used to log calls and time them.
For now, we don't want any such logging. But we do have
to initialize the delegate rather than use an uninitialized
pointer.
Change-Id: I1379b9810f3acd67d4d7116d407eb4e0c6ee7bb3
Alexander Galazin [Tue, 19 Mar 2019 15:04:23 +0000 (16:04 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Change-Id: I0d8d57b196da13538a026a3abea3ebd6b6ed0cde
Alexander Galazin [Tue, 19 Mar 2019 14:26:12 +0000 (15:26 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Iacfb659e3cb7bcb1d144f843a9011472c18c63fe
David Neto [Mon, 18 Mar 2019 21:56:06 +0000 (17:56 -0400)]
Update Amber so it detects Vulkan on Android
Components: Vulkan
Change-Id: I0a584c5617c723dc763933fd8e20fe621ac46970
Jeff Bolz [Wed, 27 Feb 2019 16:22:32 +0000 (10:22 -0600)]
Add tests for VK_NV_cooperative_matrix
Components: Vulkan
New tests: dEQP-VK.compute.cooperative_matrix.*
Change-Id: I1f78c068510466793ba7407347c2b91b30ee4831
Jari Komppa [Thu, 7 Feb 2019 08:10:16 +0000 (10:10 +0200)]
Add test for concurrent compute
Added test that runs identical payload on two queues with different
priority levels, and checking that the lower priority queue does not
finish first, adding a note to the log if the priorities seem to be
reversed. At the end it is also verified that both queues did the
work.
New test:
dEQP-VK.compute.basic.concurrent_compute
Components: Vulkan
VK-GL-CTS issue: 1509
Change-Id: Ib5d52dcbb3cee0e07c4d14bbb8d61d2f1ee2a8c5
Lingfeng Yang [Fri, 1 Mar 2019 07:58:41 +0000 (23:58 -0800)]
Send external api base extensions when not core
If the base extension for external semaphore/fence/memory
is not core (i.e., in Vulkan 1.0), external API tests
will send an insufficient set of device extensions to
the Vulkan driver.
Also, add required extensions (if not core) for
VK_ANDROID_external_memory_android_hardware_buffer.
VK-GL-CTS Issue: 1632
Affects:
dEQP-VK.api.external.*
Components: Vulkan
Change-Id: I666f87ef25260d4f3fe6d1d9a6ff8a522f2322b3
Alexander Galazin [Fri, 15 Mar 2019 09:31:51 +0000 (10:31 +0100)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: I9ae207c6ce78844662c23df5016a584742466b63
Andres Gomez [Wed, 27 Feb 2019 13:03:56 +0000 (15:03 +0200)]
GL_ARB_enhanced_layouts: use separable programs
Currently we are testing bogus inputs without a matching counterpart
in the output interface of the previous shader. This is needed since,
otherwise, having a matching output would mean that we would have to
introduce the same error we are trying to test in the input interface
and that could lead to a misleading linking error.
However, not having an output counterpart can also lead to a
misleading linking error.
In other tests we have avoided this by not making a static use of the
tested input. However, when checking for the limit on the number of
input locations that can be used in a specific interface, this
strategy cannot be used since non statically used variable do not
count against this limit.
From page 48 (page 52 of the PDF) of the GLSL 4.60 v.5 spec:
" There is an implementation-dependent limit on the number of
locations that can be used, and if this is exceeded it will cause
a link-time error. (Declared input variables that are not
statically used do not count against this limit.)"
Therefore, the strategy used for this test is to build individual
separable programs for each stage.
From the ARB_separate_shader_objects spec v.25:
" With separable program objects, interfaces between shader stages
may involve the outputs from one program object and the inputs
from a second program object. For such interfaces, it is not
possible to detect mismatches at link time, because the programs
are linked separately. When each such program is linked, all
inputs or outputs interfacing with another program stage are
treated as active. The linker will generate an executable that
assumes the presence of a compatible program on the other side of
the interface. If a mismatch between programs occurs, no GL error
will be generated, but some or all of the inputs on the interface
will be undefined."
Components: OpenGL
VK-GL-CTS issue: 1628
Affects:
KHR-GL44.enhanced_layouts.varying_location_limit
Change-Id: If120f3f2d397be0b53c60033768db60eb6fed968
Andres Gomez [Thu, 3 Jan 2019 12:17:18 +0000 (14:17 +0200)]
GL_ARB_enhanced_layouts: no structs as VS inputs
From page 48 (page 52 of the PDF) of the GLSL 4.60 v.5 spec:
" It is a compile-time error to declare a vertex shader input with,
or that contains, any of the following types:
* A boolean type
* An opaque type
* A structure"
Components: OpenGL
VK-GL-CTS issue: 1614
Affects:
KHR-GL44.enhanced_layouts.varying_structure_member_location
Change-Id: Ied52fd09639de179db480b6a627b65208a54250a
Andres Gomez [Wed, 23 Jan 2019 16:28:59 +0000 (18:28 +0200)]
GL_ARB_enhanced_layouts: remove dead code
Additionally, make us of the new debugging macro to ease checking that
we are testing just the correct and only cause for a failure report.
Components: OpenGL
VK-GL-CTS issue: 1617
Affects:
KHR-GL44.enhanced_layouts.xfb_duplicated_stride
Change-Id: I2bb03db22743ae12d17c3da1654d082236d2e2e6
Andres Gomez [Wed, 9 Jan 2019 15:38:12 +0000 (17:38 +0200)]
GL_ARB_enhanced_layouts: fix interstage interfaces
Multiple test were reporting misleading fails due to out-in interface
mismatching.
Additionally, removed dead code paths.
Finally, make us of the new debugging macro to ease checking that we
are testing just the correct and only cause for a failure report.
Components: OpenGL
VK-GL-CTS issue: 1608
Affects:
KHR-GL44.enhanced_layouts.xfb_block_member_buffer
KHR-GL44.enhanced_layouts.xfb_capture_unsized_array
KHR-GL44.enhanced_layouts.xfb_exceed_buffer_limit
KHR-GL44.enhanced_layouts.xfb_exceed_offset_limit
KHR-GL44.enhanced_layouts.xfb_invalid_offset_alignment
KHR-GL44.enhanced_layouts.xfb_multiple_vertex_streams
KHR-GL44.enhanced_layouts.xfb_output_overlapping
KHR-GL44.enhanced_layouts.xfb_too_small_stride
Change-Id: I0fb8f851b7cbec4c8cb4ee9fbad544c32e130a99
Andres Gomez [Wed, 23 Jan 2019 15:56:33 +0000 (17:56 +0200)]
GL_ARB_enhanced_layouts: fix interstage interfaces
This test was reporting a misleading fail due to out-in interface
mismatching.
Additionally, in the past another "fail" status was "corrected" by
excluding all non-positive cases making it, actually, not a negative
test. Now, while fixing the problems in the interface matching, we
re-introduce the negative cases back.
Also, removed dead code paths.
Finally, make us of the new debugging macro to ease checking that
we are testing just the correct and only cause for a failure report.
Components: OpenGL
VK-GL-CTS issue: 1607
Affects:
KHR-GL44.enhanced_layouts.xfb_variable_stride
Change-Id: If6564a9feb9831d101b0d5073ec3d241a4a8ac81
Andres Gomez [Mon, 7 Jan 2019 23:18:40 +0000 (01:18 +0200)]
GL_ARB_enhanced_layouts: use centroid and sample
When checking for aliasing using mixed auxiliary storages, the tests
checking the usage of centroid and sample were only for the fragment
shader inputs. These qualifiers, although ignored, can also be used in
the rest of the stages.
Components: OpenGL
VK-GL-CTS issue: 1613
Affects:
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_auxiliary_storage
Change-Id: I4ec1609a63a225ccd8c2ed7b82eb5477a04b6cba
Andres Gomez [Mon, 7 Jan 2019 23:00:49 +0000 (01:00 +0200)]
GL_ARB_enhanced_layouts: mind double types
The special conditions when using the component qualifier with doubles
were not taken into account.
Additionally, the test was reporting a misleading fail due to
non-coherent usage of the "flat" interpolation qualifier. This is now
fixed.
Finally, the generator has been simplified using the refactored code.
Components: OpenGL
VK-GL-CTS issue: 1611
Affects:
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_auxiliary_storage
Change-Id: I4380ba720f4ea2b2326484d6c8b3e8fc58b1b5e5
Andres Gomez [Mon, 18 Feb 2019 14:49:28 +0000 (16:49 +0200)]
GL_ARB_enhanced_layouts: mind double types
The special conditions when using the component qualifier with doubles
were not taken into account.
Additionally, the generator has been simplified using the refactored
code.
Components: OpenGL
VK-GL-CTS issue: 1616
Affects:
KHR-GL44.enhanced_layouts.input_component_aliasing
KHR-GL44.enhanced_layouts.output_component_aliasing
KHR-GL44.enhanced_layouts.varying_component_of_invalid_type
KHR-GL44.enhanced_layouts.varying_component_without_location
KHR-GL44.enhanced_layouts.varying_exceeding_components
Change-Id: I33c9735a8ef02cf5257f6783cf7856911e4af9d8
Andres Gomez [Thu, 20 Dec 2018 15:29:13 +0000 (17:29 +0200)]
GL_ARB_enhanced_layouts: use component 0 for mat
When checking types that won't support the component qualifier, in the
case of matrixes, just use the universally accepted value in case the
keyword would be accepted: 0.
Otherwise, we won't be sure whether the test is passing because the
reported failure is the expected one: that matrix won't accept the
component qualifier.
Components: OpenGL
VK-GL-CTS issue: 1615
Affects:
KHR-GL44.enhanced_layouts.varying_component_of_invalid_type
Change-Id: I5e53ecdcb4e73f9ca528f3232bfa9405782db43e
Andres Gomez [Mon, 7 Jan 2019 17:46:16 +0000 (19:46 +0200)]
GL_ARB_enhanced_layouts: mind double types
The special conditions when using the component qualifier with doubles
were not taken into account.
The tests generator is now simplified using the refactored code.
Components: OpenGL
VK-GL-CTS issue: 1610
Affects:
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_interpolation
Change-Id: I44763cf9e9e3b11fe17519ab307b28cc5485706d
Andres Gomez [Fri, 4 Jan 2019 12:46:27 +0000 (14:46 +0200)]
GL_ARB_enhanced_layouts: mind aliasing bit width
Currently, when location aliasing was happening, we were only checking
if the underlying numerical type was the same to allow it.
From page 67 (page 71 of the PDF) of the GLSL 4.60 v.5 spec:
" Further, when location aliasing, the aliases sharing the location
must have the same underlying numerical type and bit
width (floating-point or integer, 32-bit versus 64-bit, etc.)"
Additionally, we were repeating two times the same tests. For example
we would check if, with float and int, they would be allowed if float
was in the component 1 and int in component 3 two times. The test
generation has been now simplified.
Components: OpenGL
VK-GL-CTS issue: 1609
Affects:
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_types
Change-Id: I33652ac447c0a536bebc8175f34abee45ad1cd2e
Alexander Galazin [Fri, 15 Mar 2019 08:44:37 +0000 (09:44 +0100)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: I89bd5367fae5953ff5e789542dba7e55a8526ab1
Lionel Landwerlin [Fri, 1 Mar 2019 17:35:12 +0000 (17:35 +0000)]
Drop handwritten toString code
Change-Id: I801cbe14f7bdd571ba8f19242427a071c1c3daea
Components: Vulkan
Boris Zanin [Mon, 11 Feb 2019 12:33:56 +0000 (13:33 +0100)]
Add SPIR-V ids abuse tests
Add tests:
* dEQP-VK.spirv_assembly.instruction.compute.spirv_ids_abuse.*
* dEQP-VK.spirv_assembly.instruction.graphics.spirv_ids_abuse.*
Components: vulkan
VK-GL-CTS issue: 1583
Change-Id: I8cbb94616fc9175de36daf6804cde9b680284aa6
Arkadiusz Sarwa [Mon, 21 Jan 2019 14:50:34 +0000 (15:50 +0100)]
Fix the limitation in allocation test
Change removes the limitation for number of allocations
in the test.
Components: Vulkan
VK-GL-CTS issue: 1569
Affects:
dEQP-VK.api.device_init.create_instance_device_intentional_alloc_fail
Change-Id: I038fcfcae46a6baaf691163166c74ea0d3831043
Alexander Galazin [Wed, 6 Mar 2019 12:35:07 +0000 (12:35 +0000)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/master
Change-Id: I8b085fc2df478a10babc34d753e9e10613dc8929
Alexander Galazin [Tue, 5 Mar 2019 16:57:27 +0000 (16:57 +0000)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Ia68d7a02991fe815d1a311f59f3a5928f995069c
Alexander Galazin [Tue, 5 Mar 2019 16:09:54 +0000 (16:09 +0000)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: Iaff35efaad77acdd183dd07161fa0da31faaeac2
Alexander Galazin [Tue, 5 Mar 2019 15:41:47 +0000 (15:41 +0000)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I91653c9399920b5e965597c6e4b6006d3490d883
Alexander Galazin [Tue, 5 Mar 2019 15:05:48 +0000 (15:05 +0000)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I0317d6d414441f536e8255db7143e57eeea3448e
Alexander Galazin [Wed, 27 Feb 2019 09:46:39 +0000 (10:46 +0100)]
Notice of withdrawal of Vulkan CTS 1.1.0.x
Components: Vulkan
Change-Id: I5d6c3009267ed2d50cdf6167125b574fb6dcd07a
Igor Ostrowski [Thu, 28 Feb 2019 16:15:12 +0000 (17:15 +0100)]
Fix buffer RAW hazards in synchronization tests
Missing barrier for buffers in semaphore tests.
Affects:
dEQP-VK.synchronization.op.single_queue.semaphore.write_*_read_*.buffer_*
Components: Vulkan
VK-GL-CTS issue: 1633
Change-Id: I0f4ffed00e28816496948d8167e08bbbed999b79
(cherry picked from commit
caef94e99677677cc1aec4a775c1cb757d53f221)
Sandeep Shinde [Tue, 27 Nov 2018 13:36:00 +0000 (19:06 +0530)]
Add tests for VK_KHR_surface_protected_capabilities
Add new tests, which do basic query for functionality provided
by VK_KHR_surface_protected_capabilities extension.
Modify tests to make use of VK_KHR_surface_protected_capabilities
extension to decide whether to run or not. These tests should only be
ran when VkSurfaceCapabilityProtectedKHR.supportsProtected is
reported as VK_TRUE otherwise return as NOT_SUPPORTED because protected
VkSurface can not be displayed on screen through WSI swapchain.
New tests:
dEQP-VK.wsi.xlib.surface.query_protected_capabilities
dEQP-VK.wsi.xcb.surface.query_protected_capabilities
dEQP-VK.wsi.wayland.surface.query_protected_capabilities
dEQP-VK.wsi.mir.surface.query_protected_capabilities
dEQP-VK.wsi.android.surface.query_protected_capabilities
dEQP-VK.wsi.win32.surface.query_protected_capabilities
dEQP-VK.wsi.macos.surface.query_protected_capabilities
Affected tests:
dEQP-VK.api.info.instance.extensions
dEQP-VK.protected_memory.interaction.wsi.xlib.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.xcb.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.wayland.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.mir.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.win32.swapchain.render.basic
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.render.basic
Components: Vulkan
VK-GL-CTS issue: 1466
Change-Id: I872281801dd935f52c0e999e0c0c2af8a4b8789a
(cherry picked from commit
2d64b282564a754457e4450f34aa8790242ca789)
Slawomir Cygan [Fri, 1 Mar 2019 14:45:39 +0000 (15:45 +0100)]
Fix context creation in robust_buffer_access_behavior test
Move the context creation routine to iterate() method of
tests cases, to avoid overlapping many contexts where
all tests case constructors are fired at once.
Components: OpenGL
VK-GL-CTS Issue: 1629
Affects:
KHR-GL4*.robust_buffer_access_behavior.*
Change-Id: I28658b41891437ef60a5bfd5d0a19b80342e9f1f
Piers Daniell [Fri, 15 Feb 2019 23:47:55 +0000 (16:47 -0700)]
Add testing for VK_EXT_ycbcr_image_arrays
Adds basic testing for VK_EXT_ycbcr_image_arrays by adding
new "array" variants to the ycbcr format tests. These array
variants check whether VK_EXT_ycbcr_image_arrays is
supported and wither the particular image format, usage,
tiling and creation flags allow more than 1 array layers
to be created.
If so, a 2 layer image is created, and the second layer is
populated with the input data. Then the shader does a
texture lookup of the second layer and outputs
that into the result image.
Affects:
dEQP-VK.ycbcr.format.*
Change-Id: I801cbe14f7bdd571ba8f192278a7a071c1c3daea
Components: Vulkan
Toni Merilehti [Thu, 10 Jan 2019 07:52:44 +0000 (09:52 +0200)]
Add tests for pointSize with clamping
These tests verify that the rasterized point size is equal to
the specified pointSize or clamped to the maximum device limit,
pointSizeRange[1].
New tests:
dEQP-VK.rasterization.primitive_size.points.*
Components: Vulkan
VK-GL-CTS issue: 1504
Change-Id: I887d938a2aabde1671c14ef0ee6aff15a908fd1e
Andres Gomez [Thu, 3 Jan 2019 09:21:48 +0000 (11:21 +0200)]
GL_ARB_enhanced_layouts: fix arrays in {G,TC,TE}S
Several negative tests were reporting a misleading fail due to
mismatching output array dimensions in the TCS, TES and GS interfaces.
Components: OpenGL
VK-GL-CTS issue: 1606
Affects:
KHR-GL44.enhanced_layouts.output_component_aliasing
KHR-GL44.enhanced_layouts.varying_block_automatic_member_locations
KHR-GL44.enhanced_layouts.varying_component_of_invalid_type
KHR-GL44.enhanced_layouts.varying_component_without_location
KHR-GL44.enhanced_layouts.varying_exceeding_components
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_auxiliary_storage
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_interpolation
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_types
KHR-GL44.enhanced_layouts.varying_location_limit
KHR-GL44.enhanced_layouts.varying_structure_member_location
Change-Id: I7450cdd41b72b8aca0c6e4638332eaa56a1ed954
Andres Gomez [Thu, 3 Jan 2019 10:07:02 +0000 (12:07 +0200)]
GL_ARB_enhanced_layouts: no static use of inputs
Currently we are testing bogus inputs without a matching counterpart
in the output interface of the previous shader. This is needed since,
otherwise, having a matching output would mean that we would have to
introduce the same error we are trying to test in the input
interface and that could lead to a misleading linking error.
However, not having an output counterpart can also lead to a
misleading linking error. We workaround this by not making a static
use of the tested input.
From page 47 (page 53 of the PDF) of the GLSL 4.60 v.5 spec:
" Only the input variables that are statically read need to be
written by the previous stage; it is allowed to have superfluous
declarations of input variables."
Additionally, make us of the new debugging macro to ease checking that
we are testing just the correct and only cause for a failure report.
Components: OpenGL
VK-GL-CTS issue: 1605
Affects:
KHR-GL44.enhanced_layouts.varying_block_automatic_member_locations
KHR-GL44.enhanced_layouts.varying_block_member_locations
KHR-GL44.enhanced_layouts.varying_component_of_invalid_type
KHR-GL44.enhanced_layouts.varying_component_without_location
KHR-GL44.enhanced_layouts.varying_exceeding_components
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_auxiliary_storage
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_interpolation
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_types
KHR-GL44.enhanced_layouts.varying_structure_member_location
KHR-GL44.enhanced_layouts.xfb_input
Change-Id: I7dc136b34747f40b25b7cc2b6e3f35f029f701f7
Andres Gomez [Fri, 28 Dec 2018 18:52:13 +0000 (20:52 +0200)]
GL_ARB_enhanced_layouts: add missing out varyings
The test was "passing" due to a different error than the one expected
by the test: there were missing output varyings to be able to match
the tested inputs.
Components: OpenGL
VK-GL-CTS issue: 1604
Affects:
KHR-GL44.enhanced_layouts.input_component_aliasing
Change-Id: I038bdc3a08ed1d458c8b0988227307c5f0f3f104
Andres Gomez [Thu, 20 Dec 2018 14:31:14 +0000 (16:31 +0200)]
GL_ARB_enhanced_layouts: correct usage of "flat"
Multiple negative tests were failing due to errors in the usage of the
flat interpolation qualifier. Therefore, the tests were "passing"
while the expected error was a different one than the one reported by
the test.
Additionally, make us of the new debugging macro to ease checking that
we are testing just the correct and only cause for a failure report.
Components: OpenGL
VK-GL-CTS issue: 1603
Affects:
KHR-GL44.enhanced_layouts.input_component_aliasing
KHR-GL44.enhanced_layouts.output_component_aliasing
KHR-GL44.enhanced_layouts.varying_component_of_invalid_type
KHR-GL44.enhanced_layouts.varying_component_without_location
KHR-GL44.enhanced_layouts.varying_exceeding_components
KHR-GL44.enhanced_layouts.varying_location_aliasing_with_mixed_types
KHR-GL44.enhanced_layouts.varying_location_limit
Change-Id: I63f2b11acadfb0b3e42b7e0f176421eaff4da482
Andres Gomez [Thu, 3 Jan 2019 13:19:17 +0000 (15:19 +0200)]
GL_ARB_enhanced_layouts: no def in untested stage
Currently we are trying to match the definition of the output block
with the input block. In a negative test this has the problem that we
cannot actually match without adding the same error we are trying to
test in both interfaces. Therefore, as it is right now, even if the
tested error wouldn't happen, a misleading linking error will happen.
We avoid this by removing the input definition when testing
outputs (no need to have them at all) and, in the reverse situation,
additionally, by not doing static use of the defined input variable.
Additionally, this simplifies the test a lot.
Finally, added a debugging macro to ease checking that we are testing
just the correct and only cause for a failure report.
Components: OpenGL
VK-GL-CTS issue: 1602
Affects:
KHR-GL44.enhanced_layouts.varying_block_member_locations
Change-Id: Ia2c0ba705e975817999aaa16c1ce129d616540f6
Igor Ostrowski [Thu, 28 Feb 2019 16:15:12 +0000 (17:15 +0100)]
Fix buffer RAW hazards in synchronization tests
Missing barrier for buffers in semaphore tests.
Affects:
dEQP-VK.synchronization.op.single_queue.semaphore.write_*_read_*.buffer_*
Components: Vulkan
VK-GL-CTS issue: 1633
Change-Id: I0f4ffed00e28816496948d8167e08bbbed999b79