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
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
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
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 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
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
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)
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
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
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 [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
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)
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
Alexander Galazin [Fri, 1 Mar 2019 11:07:51 +0000 (12:07 +0100)]
Whitelist Vulkan CTS 1.1.3.1
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: Ic8d6afa3998a4d77d2c00c10ee9075f62febf5aa
Alexander Galazin [Thu, 28 Feb 2019 16:23:25 +0000 (17:23 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I7f44646072e49414e863e6a4e6bb9760477dccb8
Alexander Galazin [Thu, 28 Feb 2019 16:17:02 +0000 (17:17 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: Id1dfb48db9c7c5ad1d4260e4595617723034af04
Alexander Galazin [Thu, 28 Feb 2019 15:49:11 +0000 (16:49 +0100)]
Exclude few rasterization tests
Components: Vulkan
Affects:
dEQP-VK.rasterization.interpolation.basic.lines_wide
dEQP-VK.rasterization.interpolation.projected.line_strip_wide
dEQP-VK.rasterization.flatshading.lines_wide
VK-GL-CTS issue: 1274
Change-Id: I4771bc1729ccd6eb39e291cb26a5db5b42688140
Alexander Galazin [Thu, 28 Feb 2019 14:37:46 +0000 (15:37 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I01321e70bb29b8a21ed2f730381ea44f71f12c9b
Alexander Galazin [Thu, 28 Feb 2019 14:34:57 +0000 (15:34 +0100)]
Merge vk-gl-cts/github-vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I354674f48a6d88f95199865ceb8fe64c4100e1cf
Alexander Galazin [Thu, 28 Feb 2019 14:19:04 +0000 (15:19 +0100)]
Merge pull request #143 from jrprice/utb-glsl-type
Fix image type for uniform texel buffers
Liam Middlebrook [Fri, 22 Feb 2019 21:22:24 +0000 (13:22 -0800)]
Fix SpvWorkgroupMemoryTests float32 result check
Fix a bug in spirv_assembly.instruction.compute.workgroup_memory.float32
where the output values were being compared on a byte-level and not
compared as floating-point values.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.workgroup_memory.float32
Components: Vulkan
VK-GL-CTS Issue: 1625
Change-Id: Ia274e5f08796ebf8e4a6fa78e7df377a80e5a25f
Tom Cooper [Fri, 8 Feb 2019 14:14:40 +0000 (14:14 +0000)]
Fixes YCbCr create flag requirements for image format properties tests
YCbCr formats are not required to support
VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT.
Components: Vulkan
Affects: dEQP-VK.api.info.image_format_properties.*
VK-GL-CTS Issue: 1592
Change-Id: I140f6b93a337d325fd908259f3da2dc1f4d251d9
Igor Ostrowski [Fri, 15 Feb 2019 14:33:42 +0000 (15:33 +0100)]
Fix RAW and WAW hazards in pipeline barrier tests.
Test was not handling correctly internal state of the visibility and availability operations.
Both access scopes of the barrier must be set correctly to unlock such usage of the resource.
Affects:
dEQP-VK.memory.pipeline_barrier.*
Components: Vulkan
VK-GL-CTS issue: 1589
Change-Id: I7a778dbee8109f060b88beee625ca15de01c7364
Alexander Galazin [Tue, 26 Feb 2019 18:44:27 +0000 (19:44 +0100)]
Merge vk-gkl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I6acb7ecd862fd48e3602301e4d05394b4a34489a
Alexander Galazin [Tue, 26 Feb 2019 16:53:28 +0000 (17:53 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: Ic711984d0039550239e56cefd30e735da866f524
James Price [Mon, 25 Feb 2019 16:11:44 +0000 (16:11 +0000)]
Fix image type for uniform texel buffers
This fixes issues described in #139 but in additional test categories,
in the same manner as in commit 69278de.
Affects:
dEQP-VK.binding_model.descriptorset_random.sets4.*
dEQP-VK.api.buffer_view.access.*
dEQP-VK.memory.pipeline_barrier.*uniform_texel_buffer.*
dEQP-VK.robustness.buffer_access.*.texel_copy.*
Alexander Galazin [Tue, 26 Feb 2019 16:19:23 +0000 (17:19 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Ib3a1ff276813033d0bfc87150266e4ff848aa290
Alexander Galazin [Tue, 26 Feb 2019 14:38:00 +0000 (15:38 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: Ibc6149bcd2518049216704334a23d90ea572c446
ygole [Tue, 15 Jan 2019 13:49:31 +0000 (19:19 +0530)]
Check if CTS has platform display for wsi-type
Vulkan driver can expose multiple VK_KHR_{platform}_surface extensions
and it's app responsibility to create platform display then create the
surface and pass it to vkCreate{platform}SurfaceKHR. But if CTS does
not have display for requested wsi type and extension is exposed, CTS
reports it as failure.
To fix this, if function createWsiDisplay fails then check whether CTS
has platform display available for requested wsi-type and if it does
then only report this as failure otherwise report it as unsupported.
Affects: dEQP-VK.wsi.*
Components: Vulkan, Framework
VK-GL-CTS issue: 1558
Change-Id: I41aabc2e77cfc6e730b5a95dde746d8ea8152d2b
(cherry picked from commit
b7efacd7b320d2b2c3b8b75cf98c9979b5a29fe9)
Alexander Galazin [Fri, 22 Feb 2019 12:36:31 +0000 (13:36 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I75a8948cb99a649cc84d2f26f1f1a49e3d5a6167
Lionel Landwerlin [Wed, 23 Jan 2019 18:29:34 +0000 (18:29 +0000)]
Fix swapchain mutable tests buffer allocations
We're seeing failure on our implementation and those seem to be
related to the fact that some buffers are allocated with one VkDevice
and used with another VkDevice. This raises errors in the validation
layers :
Validation(ERROR): msg_code:
385926663:
[ VUID-vkBindBufferMemory-memory-parent ] Object: 0x6 (Type = 8) |
Object 0x6 was not created, allocated or retrieved from the correct
device. The spec valid usage text states 'memory must have been
created, allocated, or retrieved from device'
Affects: dEQP-VK.image.swapchain_mutable.*
Change-Id: I4d3c62dace2d259061382d3014deb05bc4eac9d7
(cherry picked from commit
b48fc89ada2a1b88796d1354d10210928b1fbf0d)
Lisa Wu [Wed, 20 Feb 2019 13:58:11 +0000 (14:58 +0100)]
Check shaderInt64 feature support in memory tests
Not all vulkan implementations support int64 data type in shaders,
dEQP-VK.memory_model.* tests should check support before using "int64"
in the shader.
Affects: dEQP-VK.memory_model.*.u64.*
Components: Vulkan
VK-GL-CTS issue: 1621
Change-Id: Idefe662a7327708898b01777f14f6ca9637a35f3
Alexander Galazin [Thu, 21 Feb 2019 09:40:56 +0000 (10:40 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Iaf38fdb099fc5777170b6d3bdef9e2fcdd5ea3bb
Alexander Galazin [Thu, 21 Feb 2019 09:08:51 +0000 (10:08 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: I340cd7f2e1cd8a98c98c0b9018a6648dba6712cc
Alexander Galazin [Thu, 21 Feb 2019 08:39:43 +0000 (09:39 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I404c995c42188a88a080ba5b27c3075e5d746f7f
Alex Walters [Tue, 12 Feb 2019 17:50:27 +0000 (17:50 +0000)]
Fragment input components limit includes position
The Vulkan limits maxFragmentInputComponent is inclusive of any
components that are being used up by the built-in interface block.
This means that the test of n components should consist of 4 components
for the position and (n - 4) user defined components.
The test should also check the maxVertexOutputComponent limit as
technically there is no implied >= requirement.
Affects:
dEQP-VK.glsl.limits.near_max.fragment_input.components_*
Component: Vulkan
VK-GL-CTS Issue: 1597
Change-Id: I58adbbbaaa94dd185b024f63519dac7daf5e4b3c
(cherry picked from commit
8b5781b8e7a4564ddec376828a16fd89fb8e3227)
Yu-Jun Li [Wed, 6 Feb 2019 17:47:52 +0000 (09:47 -0800)]
Fix mismatch between VS outputs and GS inputs
VS was outputing gl_Position while GS expected
a block.
Components: Vulkan
VK-GL-CTS issue: 1594
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.module.same_module_geom
Change-Id: Ib527cfda04fab0a206a45eb747b7e7751e71baa4
Alex Walters [Tue, 12 Feb 2019 17:50:27 +0000 (17:50 +0000)]
Fragment input components limit includes position
The Vulkan limits maxFragmentInputComponent is inclusive of any
components that are being used up by the built-in interface block.
This means that the test of n components should consist of 4 components
for the position and (n - 4) user defined components.
The test should also check the maxVertexOutputComponent limit as
technically there is no implied >= requirement.
Affects:
dEQP-VK.glsl.limits.near_max.fragment_input.components_*
Component: Vulkan
VK-GL-CTS Issue: 1597
Change-Id: I58adbbbaaa94dd185b024f63519dac7daf5e4b3c
Alexander Galazin [Thu, 14 Feb 2019 18:56:07 +0000 (13:56 -0500)]
Revert "Fix subpixel precision for line geometry generation"
This reverts commit
3116016d8e0e4582396d67a1286aa3a6815a3332.
VK-GL-CTS issue: 1582, 1274
Affects:
dEQP-VK.rasterization.*line*
dEQP-GLES*.functional.rasterization.*line*
Components: Framework
Change-Id: I5e1fbc948f5784656523c37924ca746c6b6aa5a8
Igor Ostrowski [Thu, 31 Jan 2019 10:26:07 +0000 (11:26 +0100)]
Fix RAW and WAW hazards in pipeline barrier tests.
Test was not handling correctly internal state of the visibility and availability operations.
Both access scopes of the barrier must be set correctly to unlock such usage of the resource.
Affects:
dEQP-VK.memory.pipeline_barrier.*
Components: Vulkan
VK-GL-CTS issue: 1589
Change-Id: Ie2b47f160a0181948de1a37d1e7e5202a94d493e
Alexander Galazin [Thu, 14 Feb 2019 11:46:15 +0000 (12:46 +0100)]
Further fixes for spirv validation issues in pointer_parameter
Components: Vulkan
VK-GL-CTS issue: 1590
Affects:
dEQP-VK.spirv_assembly.instruction.*.pointer_parameter.*
Change-Id: I59f2fc2e9d458fa1a122962487b30fec99b38401
Alexander Galazin [Wed, 13 Feb 2019 11:04:32 +0000 (12:04 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Icd5d0ffb554f52eb6c61b686689eb02f79b2f281
Carl Ritson [Mon, 11 Feb 2019 15:28:05 +0000 (15:28 +0000)]
Fix memory allocation size in subgroups tests
Many subgroups test shaders are executed using std140 memory layout,
meaning a minimum stride of 16-bytes. The common allocation path
assumes a packed layout and hence does not allocate sufficient buffer
for uint arrays, etc.
This change increases the allocation request size to address the issue.
Affects:
dEQP-VK.subgroups.*
Components: Vulkan
VK-GL-CTS Issue: 1593
Change-Id: I150cf0bb69029137a44c778c04cecbf2f61515ae
Piotr Byszewski [Thu, 7 Feb 2019 11:39:48 +0000 (12:39 +0100)]
Fix spirv validation issue in pointer_parameter
Components: Vulkan
VK-GL-CTS issue: 1590
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.pointer_parameter.*
Change-Id: I05546f34b52630e6706368f633913d3596e81703
Boris Zanin [Fri, 21 Dec 2018 13:53:25 +0000 (14:53 +0100)]
NaN handling in float16 tests
Support of NaNs is optional according the specification.
Tests always have expected that NaNs are always supported.
To be compatible with the specification skip check of NaN
input floats in logical.* and add a new set of tests
logical_nan.*. The new tests require device extension
VK_KHR_shader_float_controls to validate whether NaNs are
supported (property shaderSignedZeroInfNanPreserveFloat16).
Updated tests:
* dEQP-VK.spirv_assembly.instruction.compute.float16.logical.opfunord*
* dEQP-VK.spirv_assembly.instruction.graphics.float16.logical.opfunord*
* dEQP-VK.spirv_assembly.instruction.compute.float16.logical.opford*
* dEQP-VK.spirv_assembly.instruction.graphics.float16.logical.opford*
Added tests:
* dEQP-VK.spirv_assembly.instruction.compute.float16.logical_nan.*
* dEQP-VK.spirv_assembly.instruction.graphics.float16.logical_nan.*
Affected tests:
* dEQP-VK.spirv_assembly.instruction.compute.float16.logical.opisnan*
* dEQP-VK.spirv_assembly.instruction.graphics.float16.logical.opisnan*
* dEQP-VK.spirv_assembly.instruction.compute.float16.logical.opisinf*
* dEQP-VK.spirv_assembly.instruction.graphics.float16.logical.opisinf*
Components: Vulkan
VK-GL-CTS issue: 1528
Change-Id: Iadd91ed24c78e15ff458355262b009015b8a8e4a
Alexander Galazin [Wed, 30 Jan 2019 11:32:55 +0000 (12:32 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I6077e7955922b190bb161f7ea55b70622de9cc95
Alexander Galazin [Wed, 30 Jan 2019 11:32:51 +0000 (12:32 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: Ibe8e4681ee550224f9db8109857812113c2bc503
Alexander Galazin [Wed, 30 Jan 2019 11:32:48 +0000 (12:32 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I15606e0ae4cebef241218414134324f043f06633
Dae Kim [Mon, 28 Jan 2019 11:11:09 +0000 (11:11 +0000)]
Added missing writes to gl_Position in vertex shaders
Some vertex shaders are not writing a value to gl_Position, which can cause
unintended run-time behavior (including termination or system instability).
Components: Vulkan
VK-GL-CTS issue: 1579
Affects:
dEQP-VK.binding_model.descriptorset_random.*
dEQP-VK.memory_model.message_passing.*
Change-Id: I3f2f21f23508bda3062a4480e9fac78748bab32b
Alex Walters [Fri, 25 Jan 2019 18:10:08 +0000 (18:10 +0000)]
Depth attachment not stored in late_fragment_tests
The stencil was stored, but the depth attachment was set to DONT_CARE.
This allows implementations to optimise out the depth store at the end
of the renderpass, when the test is expecting to readback valid depth
values for reference comparison.
Affects:
dEQP-VK.renderpass.suballocation.subpass_dependencies.late_fragment_tests*
Components: Vulkan
VK-GL-CTS issue: 1578
Change-Id: Ie3bb52fa63ff379d70759190460ce8662c4c09ad
Alex Walters [Fri, 14 Sep 2018 10:44:55 +0000 (11:44 +0100)]
Add ASTC LDR error colour quality warning
Some hardware can output the HDR error colour (black) instead of the
LDR error colour (magenta). Valid compression blocks are rendered
correctly.
This change adds a second comparison mechanism if the initial *fast*
deMemCmp fails; the texture values are compared allowing for any value
matching an error colour to compare against the other error colour.
If such a match is detected the test will output a QualityWarning
instead of a Pass.
If the two compared values don't match, but are not both error colours
the test result is still a Fail.
Affects:
dEQP-VK.image.texel_view_compatible*astc*
Components: Vulkan
VK-GL-CTS issue: 1231
Change-Id: Ie14913de0f2f3cf7fed90c275e48c67181c1e7ff
(cherry picked from commit
b038d43aa868be1e6d4471c6977984151ada3af5)
Mohd Faisal [Fri, 19 Oct 2018 09:35:36 +0000 (10:35 +0100)]
Fix the device_group test failure by allowing same number of tries to
create object as device test.
Components: Vulkan
Affects: dEQP-VK.api.object_management.alloc_callback_fail.device_group
VK-GL-CTS Issue: 1431
Change-Id: I099a05f3109c1997cad323a0577f66c95755b151
(cherry picked from commit
4c98da04296ed97e73fecdd2e5b80478ba7f60af)
Peter Quayle [Tue, 11 Dec 2018 18:02:26 +0000 (18:02 +0000)]
Reduce devices created in device_group tests
The device_group tests could sometimes hit timeouts on
slower CPUs. This change reduces the number of objects
created in these tests to match the reduced number used
in the device and instance tests.
Affects:
dEQP-VK.api.object_management.
multithreaded_per_thread_resources.device_group
dEQP-VK.api.object_management.
multithreaded_shared_resources.device_group
Components: Vulkan
VK-GL-CTS issue: 1512
Change-Id: Icb68643ff530a8b1a1a7daa9fc93d8db8bc5faf9
(cherry picked from commit
9134406c47a0f345ea9e3c67dc7b99c7947b2436)
Alexander Galazin [Thu, 24 Jan 2019 21:13:07 +0000 (22:13 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I00246ec185fe843f4ca638ca0a4bfa34b8598cde
Yu-Jun Li [Mon, 7 Jan 2019 18:48:18 +0000 (10:48 -0800)]
Fixes multiview query tests
Queries need to be reset prior to use
Components: Vulkan
VK-GL-CTS issue: 1575
Affects:
dEQP-VK.multiview.queries.*
Change-Id: Icf0f712a3391784ee47c00de833f8417bb8337c3
(cherry picked from commit
bd913ffd046955e976337ab6fb1e93520b37c375)
Yu-Jun Li [Mon, 7 Jan 2019 18:48:18 +0000 (10:48 -0800)]
Fixes multiview query tests
Queries need to be reset prior to use
Components: Vulkan
VK-GL-CTS issue: 1575
Affects:
dEQP-VK.multiview.queries.*
Change-Id: Icf0f712a3391784ee47c00de833f8417bb8337c3
Stephen Clarke [Tue, 15 Jan 2019 11:32:49 +0000 (11:32 +0000)]
Fix dependency on unspecified rounding mode
These tests perform an addition whose Rounding mode is unspecified
according to the specification. This test is not testing addition,
it is testing that the input values are read correctly, so modify
the input values such that they do not require rounding.
Affected tests:
* dEQP-VK.spirv_assembly.instruction.compute.indexing.input.non16basealignment*
Components: Vulkan
VK-GL-CTS issue: 1473
Change-Id: Ifab284d95cc2e36c3a551c30d57deeca7bd8d4b2
Alexander Galazin [Mon, 21 Jan 2019 20:16:12 +0000 (21:16 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Ia670fa92c0d87e0c01f07e156a00d19533faf9f0
Alexander Galazin [Mon, 21 Jan 2019 20:16:08 +0000 (21:16 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: Ic7e43b929357fc3e076de1105d7e24fb3b92b946
Alexander Galazin [Mon, 21 Jan 2019 18:21:53 +0000 (19:21 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I79cdbe3b49745c53437cd85f3022bf9c6123211d
Leif-Julian Ovrelid [Thu, 8 Nov 2018 09:16:10 +0000 (10:16 +0100)]
Fix missing self dependency in renderpass tests
The dEQP-VK.renderpass.suballocation.formats and
dEQP-VK.renderpass.dedicated_allocation.formats tests were missing self
dependencies in some cases where they read then write one attachment
in one subpass. In cases with overlapping rendering this would give a
read-write-then-read-write situation, which neads a self dependency to
work reliably. Some of the tests were missing the self dependency, some
of them had the color attachment bits set when depending on depth, and
one case had a self dependency where it should not.
This patch adds a self dependency to two test cases that need it,
removes self dependency from a case that does not need it, and fixes
the depth tests to have the correct bits set.
Affects:
dEQP-VK.renderpass.suballocation.formats.*.input.*
dEQP-VK.renderpass.dedicated_allocation.formats.*.input.*
dEQP-VK.renderpass2.suballocation.formats.*.input.*
dEQP-VK.renderpass2.dedicated_allocation.formats.*.input.*
Components: Vulkan
VK-GL-CTS Issue: 1454
Change-Id: I4a9bec3ef6b088ab3a50d7f658867076f68788b9
(cherry picked from commit
f659f8c9ad39c179a79a92ee3b66cb83e1dd52ed)
Alexander Galazin [Fri, 18 Jan 2019 10:54:53 +0000 (11:54 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Idec176bfe0b3a95eb0c557f32015968cbeb914d7
Alexander Galazin [Fri, 18 Jan 2019 09:47:28 +0000 (10:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: I2b85e569622052ec742b1272ac367fc1dccf1733
Alexander Galazin [Fri, 18 Jan 2019 09:47:25 +0000 (10:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Iaf773ccd948a5707df4d2ae4628a702e739bd8df
Alexander Galazin [Fri, 18 Jan 2019 09:47:22 +0000 (10:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: Idf9225adfcbc231e544516558bd6d794dce40b26
Stephen Clarke [Mon, 14 Jan 2019 16:31:18 +0000 (16:31 +0000)]
Fix NaN handling in funord tests
Support of NaNs is optional according to the specification, but
these tests were assuming that NaNs are always supported.
Modify these tests to skip check if an operand is a NaN.
Add infrastructure for a new set of tests opfunord_nan*, which
use VK_KHR_shader_float_controls to check whether NaNs are supported.
But since this is a bugfix, do not actually add the new tests.
Affected tests:
* dEQP-VK.spirv_assembly.instruction.compute.opfunord*
Components: Vulkan
VK-GL-CTS issue: 1551
Change-Id: Ic60f13377ff9d2bdc2e10047aab8be0617904670
Piotr Byszewski [Thu, 17 Jan 2019 12:37:07 +0000 (13:37 +0100)]
Fix validation failure in float_controls
Half of float_controls tests read operation arguments from
SSBO (other half generates them in the code). Whent vertex
stage is tested this SSBO must be decorated as NonWritable.
This change resolves this issue by applying NonWritable
decoration to input SSBO for all tested stages.
Operation output is always saved in fragment stage and to
separate SSBO.
Components: Vulkan
VK-GL-CTS issue: 1543
Affects:
dEQP-VK.spirv_assembly.instruction.compute.float_controls.*
dEQP-VK.spirv_assembly.instruction.graphics.float_controls.*
Change-Id: Iaed891d7b45b2a5f02ce1443dc13a40e24fa2086
Alexander Galazin [Thu, 17 Jan 2019 11:51:30 +0000 (12:51 +0100)]
Update Vulkan CTS Readme
Clarify API level requirements for implementations with
VK_ANDROID_external_memory_android_hardware_buffer support
Components: Vulkan
Change-Id: I8536595678a8d4daff9e16ed3a9e9e25594e372e
Matthew Netsch [Wed, 16 Jan 2019 19:36:30 +0000 (14:36 -0500)]
Fixes ycbcr image properties requirement
Mipmaps/Arrays are optional for ycbcr images
Components: Vulkan
VK-GL-CTS issue: 1506
Affects:
dEQP-VK.api.info.image_format_properties.*
Change-Id: I795ec1c8b3e44a460ddd0c7c2fe0fe1731794cab
(cherry picked from commit
845394de5b43c71adddc72e7563b50c65e852b27)
Matthew Netsch [Wed, 16 Jan 2019 19:36:30 +0000 (14:36 -0500)]
Fixes ycbcr image properties requirement
Mipmaps/Arrays are optional for ycbcr images
Components: Vulkan
VK-GL-CTS issue: 1506
Affects:
dEQP-VK.api.info.image_format_properties.*
Change-Id: I795ec1c8b3e44a460ddd0c7c2fe0fe1731794cab
Alexander Galazin [Thu, 17 Jan 2019 11:56:27 +0000 (12:56 +0100)]
Fix image type in Uniform texel buffer tests
Form the issue:
The Shader Resource and Storage Class Correspondence table
in the Descriptor Set Interface section of the Vulkan 1.1
specification clearly states that a descriptor resource
which is a uniform texel buffer should correspond to
an OpTypeImage(Dim=Buffer,Sampled=1) type.
The current tests in the binding_model category
generate OpTypeSampledImage for uniform texel buffer
resources instead, which I believe is incorrect.
This can be fixed by changing the GLSL declaration from
samplerBuffer to textureBuffer
Components: Vulkan
VK-GL-CTS public issue: 139
Affects:
dEQP-VK.binding_model.*uniform_texel_buffer.*
Change-Id: Ie1beb05cac69a6cf1220bbd47c2d7876eed7ff26
Martin Freebody [Mon, 14 Jan 2019 13:34:40 +0000 (13:34 +0000)]
Protected Memory Fixes - Barrier Layouts & Flags
This change removes errors reported by core validation layer.
Affects: dEQP-VK.protected_memory.*
Components: Vulkan
Change-Id: Ic258ba2af077b2dc119db0d177613558464e0c9a
Alexander Galazin [Thu, 17 Jan 2019 11:24:09 +0000 (12:24 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Ibfebb592de5aff940b3167f5475139cec99ef6f5
Jeff Bolz [Wed, 12 Dec 2018 19:46:54 +0000 (13:46 -0600)]
Update VK_KHR_vulkan_memory_model to spec version 3
Components: Vulkan
Affects: dEQP-VK.memory_model.*
Change-Id: I3ba8a275092f0a2fcfef02cdabf2ab51750f74f5
Tom Cooper [Mon, 14 Jan 2019 14:02:03 +0000 (14:02 +0000)]
Fixes depth load_op in multiview tests
Depth load_op was set to dont care before drawing with depth test.
Components: Vulkan
VK-GL-CTS issue: 1557
Affects:
dEQP-VK.multiview*.depth.*
Change-Id: Ia853a84fa7c96b641a2dd91075d015a90a372d35
Steve Hill [Fri, 11 Jan 2019 10:12:46 +0000 (10:12 +0000)]
Truncate random coordinates in late fragment tests
The late-fragment tests generate random triangles. Unfortunately,
the reference rasteriser does not respect the sub-pixel precision
of the physical device (it assumes 8 bits) which means that on
some platforms the reference rasterisation does not agree with
implementation.
This patch rounds the random coordinates to the reported
sub-pixel precision. It was decided that in the short term this
was a less invasive change than modifying the reference rasteriser.
Affects: dEQP-VK.renderpass*.subpass_dependencies.late_fragment_tests.*
Components: Vulkan
VK-GL-CTS issue: 1549
Change-Id: I50f20284d9d2cb22e73564d6f71c0a3342547b68
Bas Nieuwenhuizen [Tue, 15 Jan 2019 17:02:59 +0000 (18:02 +0100)]
Touch watchdog more often for precision tests.
Have a test that takes ~2.5 minutes here using ARM
emulation:
01-15 17:58:54.903 3909 3926 I dEQP : Test case 'dEQP-VK.glsl.builtin.precision.reflect.mediump_compute.vec4'..
01-15 18:01:28.631 3909 3926 I dEQP : Pass (Pass)
Since this is still below the overall 300 seconds limit
for a test I thought just increasing the watchdog touch
frequency would be okay.
We probably strictly need about 1000, but for leaving
some time before/after this for the driver to do stuff
(like compiling a shader), I took something lower.
Affected tests:
dEQP-VK.glsl.builtin.precision.*
Component: Vulkan
VK-GL-CTS issue: 1560
Change-Id: I450ddac39635c857ee1966d86ae16085082d242b
Alexander Galazin [Tue, 15 Jan 2019 15:36:23 +0000 (16:36 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I99ab3d97b302f2b9d82ec0ce8a05e716d1aec54a
Dae Kim [Fri, 11 Jan 2019 11:38:11 +0000 (11:38 +0000)]
Added PointSize in shader used for drawing points
Follow-up change of
76a3efb8583de58358570c912e4388a780a2cb39.
A SPIR-V assembly shader with undefined PointSize was being used with
point list topology.
Affects:
dEQP-VK.subgroups.*
Components: Vulkan
VK-GL-CTS issue: 1197,1552
Change-Id: I10404d8fe45b9fb7484d1b90b984e66ca8569de4
Chris Forbes [Tue, 15 Jan 2019 01:30:31 +0000 (17:30 -0800)]
Add AHB to Android allowed extensions list
Affects: dEQP-VK.api.info.android.no_unknown_extensions
VK-GL-CTS Issue: 1559
Components: Vulkan
Google Bug: b/
120907290
Change-Id: Id1f2d63cbd51e7b3e51106f8f0214cd8d95c199c
Slawomir Cygan [Mon, 10 Dec 2018 16:08:05 +0000 (17:08 +0100)]
Fix logging of 8-bit integer values
The values were 'streamed' using << to std::stream, so they
were treated as characters, instead of integer values.
Components: Vulkan
VK-GL-CTS Issue: 1505
Affects:
dEQP-VK.spirv_assembly.type.scalar.*8.*
Change-Id: I34e697eb5b1c554b98a2fe556368bd6485fb406f
Samuel Pitoiset [Thu, 13 Dec 2018 15:45:41 +0000 (16:45 +0100)]
Fix incorrect use of copyImageToBuffer in TextureRenderer::renderQuad()
The last parameter is an access flag, not a pipeline stage one.
As the default value is already correct, removing the last
parameter is enough.
Fixes https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/1511
Components: Vulkan
VK-GL-CTS issue: 1511
Affects: dEQP-VK.texture.*
Change-Id: Ib261482d4a9fae911fbda6ad5a45548a02430c1a
(cherry picked from commit
92491133746a3d1715a683dad7f5516096c79d8f)
Boris Zanin [Tue, 27 Nov 2018 11:54:43 +0000 (12:54 +0100)]
Allow coarse derivatives to be calced by fine func
OpDPdxCoarse (OpDPdyCoarse) are allowed to be calculated by same
formulas as OpDPdxFine (OpDPdyFine). Also due to OpFwidthCoarse
is described as sum of OpDPdxCoarse, OpDPdyCoarse allow it to be
calculated by OpFwidthFine.
Components: vulkan
VK-GL-CTS issue: 1452
Affects: dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_*.opdpdxcoarse
Change-Id: Ib91d813626e579309d3d9176d52b0954efa920d4
Alexander Galazin [Sat, 12 Jan 2019 11:48:48 +0000 (12:48 +0100)]
Add 1.1.3.0 to known conformance versions
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: I521e0a02b6b26065e7da30b006511cdaf7707418
Graeme Leese [Mon, 10 Dec 2018 14:31:51 +0000 (14:31 +0000)]
Correct support conditions for float16s
My previous fix missed out the graphics versions of these tests, so add
the correct conditions under which these tests can be supported as well.
Components: Vulkan
VK-GL-CTS issue: 1499
Affects:
dEQP-VK.spirv_assembly.instruction.compute.float16.opconstantcomposite.*
dEQP-VK.spirv_assembly.instruction.graphics.opspecconstantop.fconvert16_*
dEQP-VK.spirv_assembly.instruction.graphics.float16.opconstant.*
Change-Id: I7ac48027b4160bd82484e7d8d780d8a1870babbf
(cherry picked from commit
f2ed80c3d2f8b4f2e782f71cc3755fe06ab52b33)
Graeme Leese [Mon, 10 Dec 2018 14:31:31 +0000 (14:31 +0000)]
Remove one method of specifying features in vktSpvAsm
The features can either be specified as a vector of strings (most of
which won't work), or as a VulkanFeatures struct, which is properly
checked. Remove the vector of strings method and change everything to
use the VulkanFeatures.
Components: Vulkan
Affects: dEQP-VK.spirv_assembly.*
Change-Id: Ia4f51f9e64dde129cb577982f2a17fa529c4c961
(cherry picked from commit
f58817ce095d2a0dda0b5d2a57f82428b3462f38)
Alexander Galazin [Fri, 11 Jan 2019 11:22:52 +0000 (12:22 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Ibbb2f02096cee66991004e8b14dedd9c4c618c59
Alexander Galazin [Fri, 11 Jan 2019 08:51:22 +0000 (09:51 +0100)]
Update glslang
Component: Framework
Change-Id: I35639832f859e7eb4d62c887eee465555f04b877
Martin Freebody [Tue, 18 Dec 2018 14:48:13 +0000 (14:48 +0000)]
Clear Core Validation Errors for Protected Memory
Affects: dEQP-VK.protected_memory.*
Components: Vulkan
VK-GL-CTS issue: 1539
Change-Id: I19c51330394f2fccc7a7a01fed3395bb66a5ab3f
Graeme Leese [Wed, 9 Jan 2019 16:46:22 +0000 (16:46 +0000)]
Cause vkrunner tests to fail if scripts not found
Rather than simply ignoring the test throw an InternalError.
Components: Vulkan
VK-GL-CTS Issue: 1548
Affects: dEQP-VK.vkrunner-example.*
Change-Id: Ib29692c792acf49f428e042fb9cc951dd32130dd
(cherry picked from commit
255f67d1d9dc6616058335ca8a0597b92a3bfa27)
Graeme Leese [Wed, 9 Jan 2019 16:21:05 +0000 (16:21 +0000)]
Allow a tolerance for results of sqrt
The tolerance added to the test is around 5 ULP.
Components: Vulkan
VK-GL-CTS Issue: 1546
Affects: dEQP-VK.vkrunner-example.sqrt_*
Change-Id: Idfb6f8485d10a29cf0c4c46355df1df1008298df
(cherry picked from commit
215b2e3f4424e4568cb19c290d82fe7c48cb1b8b)
Liam Middlebrook [Thu, 3 Jan 2019 22:07:10 +0000 (14:07 -0800)]
Fix dup tests to not free in-use semaphores/fences
The dup{,2,3} tests were subject to a race condition in which a
semaphore may be deleted before a VkQueue which was dependent on it had
completed execution.
This change moves the vkQueueWaitIdle call into the same scope as the
semaphores/fences that the queue is dependent on.
VK-GL-CTS issue: 1538
Components: Vulkan
Affects: dEQP-VK.api.external.{fence,semaphore}.opaque_fd.dup*
Change-Id: I73cf541c9c184790df44b68b8a065787634847d9
(cherry picked from commit
732a8b6800972b271735cf9b865a3612fb56dfc4)