Stephen Gallimore [Tue, 12 Jun 2018 14:35:46 +0000 (15:35 +0100)]
Memory binding tests not invaidating host memory before results check.
Affected tests:
dEQP-VK.memory.binding.*.buffer_*
Components: Vulkan
VK-GL-CTS issue: 1214
Change-Id: Ib347401ee818a42487df001f3ba76247b157321c
Slawomir Cygan [Tue, 24 Apr 2018 15:50:19 +0000 (17:50 +0200)]
Do not test CLEAR loadOp with read-only depth stencil image layouts
It is invalid to use implicit clears with depth stencil images, which first
render pass usage is in read only depth/stencil image layout
Spec:
"
For any member of pAttachments with a loadOp equal to VK_ATTACHMENT_LOAD_OP_CLEAR,
the first use of that attachment must not specify a layout equal to
VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL.
For any member of pAttachments with a stencilLoadOp equal to VK_ATTACHMENT_LOAD_OP_CLEAR,
the first use of that attachment must not specify a layout equal to
VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL."
Component: Vulkan
Affects:
dEQP-VK.renderpass.suballocation.formats.d*.clear.*_read_only
VK-GL-CTS Issue: 1144
Change-Id: Iad78473fe4bdf87dac5aff5bcc1c2b888e790cb8
Slawomir Cygan [Thu, 22 Feb 2018 17:55:01 +0000 (18:55 +0100)]
Do not access temporary C++ object members by reference
Fix undefined C++ behavior (resulting in errors when doing runtime memory checks),
where a temporary object returned by getInputAspects() method is used by a reference
to a member after the temporary is destructed.
It seems getInputAspects should just return reference.
Affects: dEQP-VK.renderpass.*.input*
Component: Vulkan
VK-GL-CTS Issue: 1033
Change-Id: I71edabed71ea63f46cdbc45c966d57cd020565ab
Peter Quayle [Wed, 21 Feb 2018 15:34:55 +0000 (15:34 +0000)]
Ensure sync_fd tests use valid file descriptors
The external.*.sync_fd.* tests fail on some implementations
because vkGet*FdKHR may return -1 (meaning pre-signalled) instead
of a valid file descriptor.
Affects:
dEQP-VK.api.external.semaphore.sync_fd*
dEQP-VK.api.external.fence.sync_fd*
Components: Vulkan
VK-GL-CTS issue: 957
Change-Id: I91087db1595a19605956dad460caa344e850491e
Tom Cooper [Mon, 12 Feb 2018 16:20:58 +0000 (16:20 +0000)]
Fix low memory in dedicated_alloc buffer tests
Observe platform memory limits to avoid low memory conditions.
Components: Vulkan
VK-GL-CTS issue: 1008
Affects: dEQP-VK.api.buffer.dedicated_alloc.create_buffer_*
Change-Id: Ib184b648126e8cb6e1acff533447a86be9a1a612
Lionel Landwerlin [Fri, 9 Feb 2018 15:20:25 +0000 (15:20 +0000)]
YCbCr: go through the correct location ranges when sampling
Affects: dEQP-VK.ycbcr.conversion.*
Components: Vulkan
VK-GL-CTS issue: 1005
Change-Id: Ifac1026e82e1bb48195fc7ab5429951a15324042
Vamsidhar Gaddam [Wed, 31 Jan 2018 10:23:48 +0000 (11:23 +0100)]
Pass in proper pWaitDstStageMask in vktWsiSharedPresentableImageTests
One of the submitInfos for a queue submit had
a semaphore passed in without passing in any stage mask. This is a
spec violation.
Affects:
dEQP-VK.wsi.android.shared_presentable_image.*
Components: Vulkan
VK-GL-CTS issue: 974
Change-Id: Iee2ea838e971a3610f44b8c1f765869a8a21fedb
Panagiotis Apostolou [Wed, 17 Jan 2018 09:01:58 +0000 (10:01 +0100)]
Spec relaxation for YCbCr Implicit chroma reconstruction
Incorporates spec relaxation in the YCbCr tests which describes that when
doing implicit reconstruction with nearest chroma filtering, an
implementation may behave as if both xChromaOffset and yChromaOffset were
VK_CHROMA_LOCATION_MIDPOINT.
Tests affected:
dEQP-VK.ycbcr.conversion.*
Components: Vulkan
VK-GL-CTS issue: 979
Change-Id: I10e83d2f5845c3e74673aa9e42fc4f0950f9e6cd
Yanjun Zhang [Wed, 10 Jan 2018 00:12:47 +0000 (16:12 -0800)]
Check GS support before testing adjacent primitives
Affects: dEQP-VK.draw.basic_draw.draw.*
Components: Vulkan
VK-GL-CTS issue: 926
Change-Id: I02569b1944eed52f641966f9206d44983d1ff165
Chris Forbes [Wed, 10 Jan 2018 02:13:15 +0000 (18:13 -0800)]
Fix buffer usage flags for index and indirect buffers
Previously, createAndUploadBuffer would provide
VK_BUFFER_USAGE_VERTEX_BUFFER_BIT for all buffers. This is no good for
index buffers and indirect buffers.
VK-GL-CTS: 930
Change-Id: I774beef7c7226f4fbd5670591eb66475300ee208
Components: Vulkan
Affects: dEQP-VK.draw.instanced.*
Yanjun Zhang [Thu, 11 Jan 2018 19:44:54 +0000 (11:44 -0800)]
Set maxDescriptorSet* limit table based on shader stages
Re-submit the patch based on WG review and feedback.
Affects: dEQP-VK.api.info.device.properties
Components: Vulkan
VK-GL-CTS issue: 923
Change-Id: Ie627b52cfae099d87f5b6183118d42bcccd313ca
Yanjun Zhang [Wed, 10 Jan 2018 00:26:50 +0000 (16:26 -0800)]
Check sampleRateShading for sample_qualifier_distinct_values.* tests
Affects: dEQP-VK.pipeline.*.sample_qualifier_distinct_values.*
Components: Vulkan
VK-GL-CTS issue: 925
Change-Id: Ife1166e8ed88699c67ee6acde79857f34c013398
Chris Forbes [Tue, 9 Jan 2018 23:26:34 +0000 (15:26 -0800)]
Use unique indices for each binding in out_of_pool_memory test
Previously, all the layout bindings would use binding=0, which is
invalid. Give them their own binding indices.
VK-GL-CTS: 929
Change-Id: I28e62db6c257ed0843dd9b77b2d8cb01d02e3eba
Components: Vulkan
Affects: dEQP-VK.api.descriptor_pool.out_of_pool_memory
Noah Fredriks [Fri, 3 Nov 2017 18:20:06 +0000 (14:20 -0400)]
Round up vertex buffer size to stride multiple to fix OOB attribute reads
Partial stride multiple vertex buffer elements are now considered OOB
to accomodate implementations that fetch stride-sized elements
Affects: dEQP-VK.texture.*
Components: Vulkan
VK-GL-CTS issue: 812
Change-Id: I72a2143146b4ea0d893d70d41b7ca2c84c34542a
(cherry picked from commit
50c0544ec8c2e99158bf8a375eacfc9baf364a91)
Noah Fredriks [Thu, 14 Dec 2017 19:48:48 +0000 (14:48 -0500)]
Fix Invalid VkImageSubresourceRange
Pipeline image barrier was using the arraySize of the wrong image.
Affects: dEQP-VK.api.copy_and_blit.core.resolve_image.*
Components: Vulkan
VK-GL-CTS Issue: 910
Change-Id: I021bdd0ba5eff9e894f21186b3d85bb2f2c99f16
Jeff Leger [Sat, 2 Dec 2017 02:16:28 +0000 (21:16 -0500)]
Modify spirv_assembly tests adding dependency on 16bit_storage extension
Several tests were using 16bit_storage, but were not checking the
extension was supported nor declaring the required opCapability.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.sconvert.*
dEQP-VK.spirv_assembly.instruction.compute.uconvert.*
Components: Vulkan
VK-GL-CTS issue: 875
Change-Id: I07fda13c69cdef09967d4aab5067edff07c47fa1
Noah Fredriks [Wed, 29 Nov 2017 23:27:52 +0000 (18:27 -0500)]
Avoid creating vkInstances for not supported cases
Defer vkInstance creation for cross instance tests until not supported
checks complete to shorten the runtime of these 10k total test cases.
Affects: dEQP-VK.synchronization.cross_instance.*
Components: Vulkan
VK-GL-CTS Issue: 885
Change-Id: I481de90d8c0363c23a287aaf457ac101c327c558
Igor Ostrowski [Wed, 15 Nov 2017 17:33:51 +0000 (18:33 +0100)]
Fix mediump zero division in matrix inverse tests
To avoid zero division all input matrix determinants should be same signed.
Affects:
dEQP-VK.glsl.matrix.inverse.*
Components: Vulkan
VK-GL-CTS issue: 881
Change-Id: Ib702f81c4eb7f25ba9081db6ead67da02f484ca9
Jeff Leger [Wed, 22 Nov 2017 17:12:58 +0000 (12:12 -0500)]
Reduce GPU workload of pipeline_barrier tests
Tests with large buffer sizes will now clamp the
GPU workload to avoid triggering execution timeout
on implementations.
Affects: dEQP-VK-memory.pipeline_barrier.*
Components: Vulkan
VK_GL_CTS issue: 813
Change-Id: I479f6ad04ef2ec6f9d87b65a39a2bc13bcbcc6a2
Jari Komppa [Tue, 14 Nov 2017 12:21:06 +0000 (14:21 +0200)]
Added constraints for random access flags
The pipeline barrier tests randomize access flags and stages, sometimes
resulting in access flags being enabled for stages that do not support
said accesses. This fix removes the illegal access flags while leaving
the random flag generation intact.
Affects:
dEQP-VK.memory.pipeline_barrier.*
Components: Vulkan
VK-GL-CTS issue: 814
Change-Id: I135ea8a9e41b5d8428ef77fe6ecbdf2380d80c7d
Jorg Wagner [Mon, 6 Nov 2017 13:56:49 +0000 (14:56 +0100)]
Do not use depthClampEnable unconditionally.
Depth clamping is not needed by this test, so
do not rely on the optional feature when creating
the pipeline object.
Affects:
dEQP-VK.api.smoke.*
Components: Vulkan
VK-GL-CTS issue: 817
Change-Id: I6794f7f5d17d7610ff43dcb4080a6a30e12ed95b
Chris Forbes [Mon, 23 Oct 2017 22:13:38 +0000 (15:13 -0700)]
KHR_swapchain: Trigger the fence off vkQueueSubmit
Another instance of
438ea0888e8ccae.
VK-GL-CTS issue: 756
Component: Vulkan
Affects:
dEQP-VK.wsi.*.swapchain.*
Change-Id: I87da6800e0c8402c2c50ca88eb3360b31c3a515d
Chris Forbes [Mon, 23 Oct 2017 22:09:56 +0000 (15:09 -0700)]
GOOGLE_display_timing: Trigger the fence off vkQueueSubmit
Another instance of
438ea0888e8ccae.
VK-GL-CTS issue: 756
Component: Vulkan
Affects:
dEQP-VK.wsi.*.display_timing.*
Change-Id: If94644402579ba1f46347d155313f6ef52d125a0
Jason Ekstrand [Thu, 19 Oct 2017 16:07:52 +0000 (09:07 -0700)]
VK_KHR_variable_pointers: Don't use OpPtrAccessChain on a bare SSBO
You can't use OpPtrAccessChain on the direct result of an OpVariable
because it's not the element of any array. Instead, we need to do our
OpPtrAccessChain on a pointer to an actual array element and that
pointer needs to be properly decorated with a stride.
Component: Vulkan
VK-GL-CTS issue: https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/686
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.multi_buffer_*
Change-Id: I9c45fb1320099e404672ee169a6a8e5c41eb13f7
Jason Ekstrand [Thu, 19 Oct 2017 15:43:36 +0000 (08:43 -0700)]
VK_KHR_variable_pointers: Delete an unused and invalid variable
The %float_var variable was not being used in any way by the test. It
was also invalid because it had the StorageBuffer storage class (so it's
in external memory) but also had a constant initializer. The real
variable being tested in these tests is %f32_ptr_var which has the
Function storage class so a constant initializer is fine.
Component: Vulkan
VK-GL-CTS issue: https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/686
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.nullptr_graphics.opvariable_initialized_null_*
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.nullptr_graphics.opselect_null_or_valid_ptr_*
Change-Id: I9e2f118b1c774a84c0b6900ef0db081cb5256c2f
Chris Forbes [Mon, 16 Oct 2017 19:42:35 +0000 (12:42 -0700)]
Avoid watchdog timeout in Vulkan builtin precision tests
Calculating the reference intervals can take a substantial amount of
time. On some very slow targets, this can cause us to trip the watchdog
in the verification loop.
Same approach and limit as in modules/glshared/glsBuiltinPrecisionTests.cpp
Affected tests:
dEQP-VK.glsl.builtin.precision.*
Component: Vulkan
Bug:
67854695
Test: run on google devices
Change-Id: I492b656e7e2a9aa724bb3785bdf1416a4c22ec04
Jason Ekstrand [Fri, 6 Oct 2017 23:10:26 +0000 (16:10 -0700)]
VK_KHR_incremental_present: Trigger the fence off vkQueueSubmit
Previously, the tests were using AcquireNextImage to trigger the fence
and using it to guard the vkFreeCommandBuffers call. However, the
acquire fence tells you when the PE is done with an image and when you
can start rendering to it. This meant that the test was waiting for the
start of the previous frame's rendering not the end before deleting the
previous frame's command buffer. This meant that the previous frame's
rendering could still be active on the GPU when the command buffer was
freed. By triggering the fence off of the vkQueueSubmit, we wait for
the end of the previous frame's rendering before freeing its command
buffer.
VK-GL-CTS issue: 756
Component: Vulkan
Affects:
dEQP-VK.wsi.*.incremental_present.*
Change-Id: I87b25eb2a25e4ae48c8c527d5d63c45d89a31a30
(cherry picked from commit
db916576a76a17c02c14390fc5d5b3db1488d1d2)
Igor Ostrowski [Mon, 9 Oct 2017 14:41:31 +0000 (16:41 +0200)]
DrawUtil: Fix depthBounds check
Affects:
dEQP-VK.glsl.builtin_var.fragdepth*
Components: Vulkan
VK-GL-CTS issue: 758
Change-Id: I4da79b236921e64f11566fe386b144497249123b
Jorg Wagner [Thu, 28 Sep 2017 11:59:51 +0000 (13:59 +0200)]
Correct image usage flags for YCbCr copy tests
The images are used as copy source and destination,
hence TRANSFER_SRC | TRANSFER_DST must be present
in the usage flags.
Images are not sampled from - remove SAMPLED flag.
Affects:
dEQP-VK.ycbcr.copy.*
Components: Vulkan
VK-GL-CTS issue: 715
Change-Id: Ie53d3e2fb18aa834af12938cd822aa6c50f75986
(cherry picked from commit
f2a5b768c81760bef727f1d72741e74274968518)
Panagiotis Apostolou [Thu, 7 Sep 2017 11:54:51 +0000 (13:54 +0200)]
Serialize region copies for YCbCr copy tests
As the generated regions can overlap - force all calls
of vkCmdCopyImage() to be executed sequentially by adding
a pipeline barrier between each call to avoid producing
undefined results.
Affects:
dEQP-VK.ycbcr.copy.*
Components: Vulkan
VK-GL-CTS issue: 716
Change-Id: Ifed67cdc077a8c03630b36f8aa59bd6dae0578a3
(cherry picked from commit
9fe7d4753721d10235cbf38194cf7c8cf2eb7d19)
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
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)
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
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)
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
Alexander Galazin [Fri, 8 Sep 2017 07:13:24 +0000 (09:13 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Change-Id: Ied1a7d639c56dbdffd3db89085b4b771741e43f7
Graeme Leese [Wed, 30 Aug 2017 15:37:14 +0000 (16:37 +0100)]
Change required sample counts for storage images
Update the API feature info tests to set requiredSampleCounts to 1 for
all images that are not usable as some type of framebuffer attachment.
Previously images that were not usable as attachments but could be used
as a storage image were incorrectly exempted from the requirement.
Components: Vulkan
VK-GL-CTS Issue: 645
Affects: dEQP-VK.api.info.image_format_properties.*
Change-Id: Ia0d09ad0ff51029b75cd3a264860a3dd63c249fb
Boris Zanin [Thu, 7 Sep 2017 07:19:08 +0000 (09:19 +0200)]
Fix VK_KHR_maintenance2 extended_usage_bit tests
Due to test runs over uncompressed formats it cannot include
VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR bit.
Remove this bit from the tests.
Update tests:
* dEQP-VK.image.extended_usage_bit.*
Components: Vulkan
VK-GL-CTS issue: 673, 614
Change-Id: I0adb26c5306a9d5f49936ffef070050fd5936faa
Gary Sweet [Mon, 4 Sep 2017 10:14:58 +0000 (11:14 +0100)]
Fixup some missing/incorrect flushes and invalidates
Some of the flushes were too small, and there were a few
missing invalidates.
Affects:
dEQP-VK.ssbo.layout.*
dEQP-VK.pipeline.push_constant.compute_pipeline.simple_test
Components: Vulkan
VK-GL-CTS issue: 660
Change-Id: I27fac24397984f82865683f30b823570c3e52aed
Slawomir Cygan [Wed, 6 Sep 2017 14:47:04 +0000 (16:47 +0200)]
Use SRC image layout for copy image to buffer
The test was calling vkCmdCopyImageToBuffer with
VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL layout, which is not a valid
parameter value for this function (and not the layout the image is currently in).
Affects: dEQP-VK.memory.binding.*.*.image_*
Components: Vulkan
VK-GL-CTS issue: 666
Change-Id: Ifb5a1bd8726535de02a0dc134f5ac76a2734a661
Slawomir Cygan [Tue, 5 Sep 2017 14:39:12 +0000 (16:39 +0200)]
Do not use ycbcr formats if ycbcr extension is not supported
Spec says (on "vkGetPhysicalDeviceFormatProperties"):
"format must be a valid VkFormat value"
Formats from future or unsupported extensions do not
constitute a "valid VkFormat values".
Affects: dEQP-VK.memory.requirements.*.image.*
Components: Vulkan
VK-GL-CTS issue: 663
Change-Id: Ia284977b830d5fda14bcbd9d96010995d84014d5
Gary Sweet [Mon, 4 Sep 2017 09:39:36 +0000 (10:39 +0100)]
Fixup some missing/incorrect flushes and invalidates
Some of the flushes were too small, and there were a few
missing invalidates.
Affects:
dEQP-VK.ssbo.layout.*
dEQP-VK.pipeline.push_constant.compute_pipeline.simple_test
Components: Vulkan
VK-GL-CTS issue: 660
Change-Id: Id29b59d127e004a028c04a1075db563d697140a1
Daniel Koch [Thu, 31 Aug 2017 13:48:53 +0000 (09:48 -0400)]
Whitelist new extensions for VK 1.0.2.6
VK-GL-CTS issue: 653
Component: Vulkan
Affects:
dEQP-VK.api.info.device.extensions
Change-Id: I7f5ef7511ce8312e67833e07c154cd6b9fea6041
Mika Isojärvi [Tue, 15 Aug 2017 23:57:24 +0000 (16:57 -0700)]
Add tests for image copies between YCbCr formats
Components: Vulkan, Framework
VK-GL-CTS issue: 111
Change-Id: I3a7050ae5605c4397cd678e14438f851a7cf48ce
(cherry picked from commit
f24269bdd0c4d3801c2118b153082f0b0223f55a)
Mika Isojärvi [Tue, 16 May 2017 21:17:49 +0000 (14:17 -0700)]
Add tests for VK_KHR_sampler_ycbcr_conversion
Components: Vulkan, Framework
VK-GL-CTS issue: 111
Change-Id: Id0810b196f0a148903922df3fc08f1c5db88f86e
(cherry picked from commit
595b5f763a8f6ef1c68bfd133a55ded9c25ac101)
Boris Zanin [Fri, 12 May 2017 08:11:01 +0000 (10:11 +0200)]
Test VK_KHR_dedicated_allocation mem requirement queries
Add tests:
* dEQP-VK.memory.requirements.dedicated_allocation.buffer.*
* dEQP-VK.memory.requirements.dedicated_allocation.image.*
Components: Vulkan
VK-GL-CTS issue: 391
Change-Id: I9510464987e33b395a5ac20c2fdb9129eefd91da
(cherry picked from commit
6c472cc5e98a1a73aeac019ce34cccac7f3fa30e)
David Sodman [Fri, 24 Feb 2017 19:04:46 +0000 (11:04 -0800)]
Add tests for FragCoord interaction with multisampling
Components: Vulkan
VK-GL-CTS issue: 89
Test: fragcoord_msaa, frontface, fragdepth, clipping
Change-Id: Ibf342e63f224b88fe0b0cffde59b10b34afd1faf
(cherry picked from commit
69a7a0079a6cc06d556ecb5314f275d2fa01a60d)
Maciej Jesionowski [Wed, 26 Jul 2017 13:53:13 +0000 (15:53 +0200)]
Fix VS12 compilation error (typedef)
Change-Id: Iebfece1455df2a49c79885d42f43817001a31b84
(cherry picked from commit
68c41978cf7a76391e898af7faaddea0598a3911)
Slawomir Cygan [Wed, 5 Jul 2017 17:17:02 +0000 (19:17 +0200)]
Fix wrong transition in dEQP-VK.glsl.builtin_var.fragdepth
The test was using vkCmdClearDepthStencilImage to clear an
image, than used this image as a depth attachment in
redering performed by VulkanDrawContext utility.
However, this utility always starts the renderpass on depth
attachment from UNDEFINED layout. As no depth clear is done
in the renderpass, the depth attachment contents are undefined
(and initially cleared image contents may be corrupted).
The easiest fix here is to move the clear to LOAD_OP - as
is already done for color, leaving the UNDEFINED layout as is.
Affects: dEQP-VK.glsl.builtin_var.fragdepth*
Components: Vulkan
VK-GL-CTS issue: 559
Change-Id: Icef3289ba62f71bf1ed989f84085a4d9d3b7218a
(cherry picked from commit
f3a36239082b721e1f5f6849afc70af65b42e3ed)
David Sodman [Fri, 24 Feb 2017 18:41:59 +0000 (10:41 -0800)]
Add test for FragDepth shader built-in
Components: Vulkan
VK-GL-CTS issue: 93
Test: fragdepth, frontface, clipping
Change-Id: I531e39a58dd6b577108bff14b2206d7bf9d9cd4f
(cherry picked from commit
3aeb0c565fe64441466247fe381fc815209d46e4)
David Sodman [Tue, 6 Sep 2016 21:05:59 +0000 (14:05 -0700)]
Extend gl_FrontFacing tests
Update gl_FrontFacing tests to include more tests as well as to use the
vktDrawUtil utility class
Change-Id: If94fb552f5f9366c79ffa3fcac6f085611a23f65
(cherry picked from commit
417115b2676c3064a06385184573b6d7a0644f42)
David Sodman [Fri, 9 Sep 2016 02:58:35 +0000 (19:58 -0700)]
Add ability to generate images with the reference renderer
*Separate DrawContext into a DrawContext and DrawContextState to reflect
graphics API's are split between state and action parts
* Add abstract DrawContext class
Test: Test clipping and synchronization primitives
Change-Id: I9f3945c6c3de169325fadea7bf70a9d5d7bfd932
(cherry picked from commit
11da53fb71eced942e89bac59407a5681dba3bb1)
David Sodman [Thu, 1 Sep 2016 17:40:21 +0000 (10:40 -0700)]
Add Vulkan DrawContext utility class
This is the first in a series of changes to move the DrawContext class
for more general use.
Test: run clipping tests on Vulkan
Affects: dEQP-VK.clipping.*
Change-Id: Ia9b8953d25c10ec2a6c227bf300637dcd62ea898
(cherry picked from commit
9a928cdc2014c830eb8cb43043746f8f2ea6969a)
Arkadiusz Sarwa [Tue, 29 Aug 2017 14:40:58 +0000 (16:40 +0200)]
VK_KHR_maintenance2: View block-compressed add check shader_read_only_optimal
Affects:
* dEQP-VK.image.texel_view_compatible.compute.extended.image_load.*
* dEQP-VK.image.texel_view_compatible.compute.extended.texel_fetch.*
* dEQP-VK.image.texel_view_compatible.compute.extended.texture.*
* dEQP-VK.image.texel_view_compatible.compute.extended.image_store.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.attachment_read.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.attachment_write.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.texture_read.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.texture_write.*
Components: Vulkan
VK-GL-CTS issue: 124
Change-Id: Ida0c7b8085e7ca90c325ffb0477773e8b09bf564
(cherry picked from commit
62e68c3916ce22a76b44bec91e470abc42cd6e92)
Boris Zanin [Tue, 8 Aug 2017 09:59:32 +0000 (11:59 +0200)]
VK_KHR_maintenance2: extended_usage_bit tests
Add tests:
* dEQP-VK.image.extended_usage_bit.*
Components: Vulkan
VK-GL-CTS issue: 614
Change-Id: Ied6251e642746d5f37aa7b2fe3f262061f765f8f
(cherry picked from commit
dcae428a67a0bccf2a6694075dd06115f0eb1db7)
Arkadiusz Sarwa [Tue, 29 Aug 2017 10:39:57 +0000 (12:39 +0200)]
Fix build errors with uint32_t vktImageMutableTests.cpp
Change-Id: I072fade98fd20b6a4a0389e9a63e790d36d6c0d0
Components: Vulkan
(cherry picked from commit
1afc0a15d483701f3319467f7a3f1d9b47692f66)
Boris Zanin [Thu, 24 Aug 2017 08:29:06 +0000 (10:29 +0200)]
VK_KHR_maintenance2: View block-compressed speedup
Do strict comparison first, if it fails use fuzzy.
Update tests:
* dEQP-VK.image.texel_view_compatible.compute.*
Components: Vulkan
VK-GL-CTS issue: 124
Change-Id: I1ad580d60638ba3fce83fc913819608d5d9a8812
(cherry picked from commit
c9e2dea449429762592af0530b609cf80ab913ce)
Arkadiusz Sarwa [Fri, 21 Jul 2017 14:35:33 +0000 (16:35 +0200)]
VK_KHR_maintenance2: View block-compressed formats extended tests
Add tests:
* dEQP-VK.image.texel_view_compatible.compute.extended.image_load.*
* dEQP-VK.image.texel_view_compatible.compute.extended.texel_fetch.*
* dEQP-VK.image.texel_view_compatible.compute.extended.texture.*
* dEQP-VK.image.texel_view_compatible.compute.extended.image_store.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.attachment_read.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.attachment_write.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.texture_read.*
* dEQP-VK.image.texel_view_compatible.graphic.extended.texture_write.*
Update tests:
* dEQP-VK.image.texel_view_compatible.compute.basic.*
* dEQP-VK.image.texel_view_compatible.graphic.basic.*
Components: Vulkan
VK-GL-CTS issue: 124
Change-Id: Ia51ece39a339617302ec4f2a48c9133a3f9423d4
(cherry picked from commit
90d87fdceed790f9542acb19c3da196951c4d2dc)
Fix build errors with makeViewport
Local makeViewport cannot be used in recently added tests
in vktImageMutableTests.
Fix: Remove local makeViewport and use one from vkTypeUtil.inl
Components: Vulkan
VK-GL-CTS issue: 124
Change-Id: I27c9c255d9e46a74a6528327339317ba74e5eb98
(cherry picked from commit
310b00cc9869e26e85e620b55b6ad3a7efeb8d90)
Pyry Haulos [Mon, 12 Jun 2017 20:52:42 +0000 (13:52 -0700)]
Framework support for VK_KHR_sampler_ycbcr_conversion
Change-Id: I749b92c79766f933ea34bb183d3d34c102e023c2
(cherry picked from commit
e5cf8de067694afde10873b6fdbd7907486e5611)
Mika Isojärvi [Thu, 4 May 2017 22:55:19 +0000 (15:55 -0700)]
Add support for 10 and 12bit packed unorm formats
10 and 12bit unsigned normalized values are packed into highers bits
of 16bit unsigned int.
Change-Id: I18a88547ba29003961bf0806a50cb17995c72f13
Components: Framework
(cherry picked from commit
07621ffcf0362606afeccf2c2deac35bc0f3668a)
Iago Toral Quiroga [Tue, 4 Jul 2017 08:59:45 +0000 (10:59 +0200)]
Add tests for VK_KHR_image_format_list
Components: Vulkan
VK-GL-CTS issue: 550
New tests:
dEQP-VK.image.mutable.*_format_list
Change-Id: Ic72304a65c76335c98764678e056f030fafba71f
(cherry picked from commit
dcd00f2f316fae0b86e1b03a8cf22774ce312c1d)
Iago Toral Quiroga [Thu, 29 Jun 2017 05:37:41 +0000 (07:37 +0200)]
Expand tests for mutable images
Currently, only the image load/store tests use mutable images,
but these require the images's layout to be
VK_IMAGE_LAYOUT_GENERAL (requirement for image load/store) so they
don't provide coverage for the most interesting scenarios.
These tests add cases that mix combined image upload/download
methods that exercise various other image layouts and scenarios.
Specifically, it tests each of [copy, clear, draw, store] upload
methods with each of [copy, load, texture] download methods.
Components: Vulkan
VK-GL-CTS issue: 513
New Tests:
dEQP-VK.image.mutable.*
Change-Id: I01cd77ab250f9934e71f5c9997b850950c9bd552
(cherry picked from commit
16b30ca0f65fc9c6a1508d1f99ba1f6014f4e828)
Marcin Rogucki [Fri, 21 Jul 2017 11:44:23 +0000 (13:44 +0200)]
Tests for VK_KHR_bind_memory2
Regular and aliased bindings with suballocated and
dedicatedly allocated memory are exercised.
Added tests:
* dEQP-VK.memory.binding.*
Components: Vulkan
VK-GL-CTS issue: 434
Change-Id: I853ca8b007a9b2f6340ed60cca1a5cb35887ec11
(cherry picked from commit
a0aa054cbddcebe880d12836fae9a24ad4eade9f)
Arkadiusz Sarwa [Fri, 9 Jun 2017 15:58:01 +0000 (17:58 +0200)]
VK_KHR_maintenance2: View block-compressed formats
Add tests:
* dEQP-VK.image.texel_view_compatible.compute.image_load.*
* dEQP-VK.image.texel_view_compatible.compute.texel_fetch.*
* dEQP-VK.image.texel_view_compatible.compute.texture.*
* dEQP-VK.image.texel_view_compatible.compute.image_store.*
* dEQP-VK.image.texel_view_compatible.graphic.attachment_read.*
* dEQP-VK.image.texel_view_compatible.graphic.attachment_write.*
* dEQP-VK.image.texel_view_compatible.graphic.texture_read.*
* dEQP-VK.image.texel_view_compatible.graphic.texture_write.*
Components: Vulkan
VK-GL-CTS issue: 124
Change-Id: I8f12778e764144198dab603dbef72257faed0503
(cherry picked from commit
52af60c002b457dbc09044dc2e88ccee9cb59555)
Boris Zanin [Mon, 10 Apr 2017 17:14:55 +0000 (19:14 +0200)]
VK_KHR_maintenance2: Point clipping
Updated tests:
* dEQP-VK.clipping.clip_volume.clipped.large_points
* dEQP-VK.rasterization.primitives.lines_wide
* dEQP-VK.rasterization.primitives.line_strip_wide
* dEQP-VK.rasterization.primitives_multisample_2_bit.lines_wide
* dEQP-VK.rasterization.primitives_multisample_4_bit.lines_wide
* dEQP-VK.rasterization.primitives_multisample_8_bit.lines_wide
Components: Vulkan
VK-GL-CTS issue: 126
Change-Id: Id0cecb96e8a448ec3eb09e2a25d6c82acd837057
(cherry picked from commit
14bfa832d795dca9057699e867d0273db95c7de4)
Mika Isojärvi [Fri, 21 Apr 2017 22:33:54 +0000 (15:33 -0700)]
VK_KHR_maintenance2: New depth and stencil layouts
New Tests:
dEQP-VK.renderpass.formats.d24_unorm_s8_uint.*.*_depth_read_only
dEQP-VK.renderpass.formats.d24_unorm_s8_uint.*.*_stencil_read_only
dEQP-VK.renderpass.formats.d24_unorm_s8_uint.input.*.*_depth_read_only
dEQP-VK.renderpass.formats.d24_unorm_s8_uint.input.*.*_stencil_read_only
dEQP-VK.renderpass.formats.d32_sfloat_s8_uint.*.*_depth_read_only
dEQP-VK.renderpass.formats.d32_sfloat_s8_uint.*.*_stencil_read_only
dEQP-VK.renderpass.formats.d32_sfloat_s8_uint.input.*.*_depth_read_only
dEQP-VK.renderpass.formats.d32_sfloat_s8_uint.input.*.*_stencil_read_only
VK-GL-CTS issues: 339
Components: Vulkan
Change-Id: Ifac0a3a5fe861440424f85029dd25bad5755cd63
(cherry picked from commit
226ae75fa4fc85eaa46b1544dc8871fceeeb759c)
Pyry Haulos [Tue, 18 Apr 2017 21:49:12 +0000 (14:49 -0700)]
VK_KHR_maintenance2: Tessellation domain origin
This change extends existing dEQP-VK.tessellation.winding tests with
variants that supply tessellation domain origin when creating the
pipeline.
Existing tests in the group have been moved under "default_domain"
group.
VK-GL-CTS issue: 127
Components: Vulkan
Change-Id: Ib3ed3fd32dc66805d139db08a2c0546650d0de5f
(cherry picked from commit
333b51b00a943447c0eb921f04b2804af428dfc9)
Jason Ekstrand [Thu, 26 Jan 2017 22:27:48 +0000 (14:27 -0800)]
Add yflip versions of tessellation winding order tests
Changed: dEQP-VK.tessellation.winding.triangles_*
Components: Vulkan
Change-Id: I3e0abc8d25132e129cb2979b1fce985ca4a60dc4
(cherry picked from commit
a9c1d0abb740baa5f368758f17142336baeb17f9)
Mika Isojärvi [Thu, 13 Apr 2017 20:53:21 +0000 (13:53 -0700)]
VK_KHR_maintenance2: Render pass input aspect specifiers
VK-GL-CTS issues: 125
Components: Vulkan
Change-Id: I32a88f1d82560df4bc1b8f7cac483a074434ec86
(cherry picked from commit
a1a041546262e8ad17fa62f40af8b293ebbb698a)
Pyry Haulos [Thu, 8 Jun 2017 19:32:17 +0000 (12:32 -0700)]
Add framework support for VK_KHR_maintenance2
Components: Vulkan
VK-GL-CTS issue: 199
Change-Id: I9112fc0c44c6516e5e65d53535c9b0247f91e272
(cherry picked from commit
59b5bb0016f0f0bc6a2e3973016ae6f90655ac7c)
Alexander Galazin [Thu, 31 Aug 2017 17:02:20 +0000 (19:02 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Change-Id: I5dfa06e462512838179803963ddd04094679aa4f
Alex Walters [Thu, 17 Aug 2017 14:53:01 +0000 (15:53 +0100)]
Make create_buffer test use platform limits
The create_buffer tests use a maximum buffer size of half the heap size
as reported by vkGetPhysicalDeviceMemoryProperties. On systems where
device memory comes out of system memory, due to the memory in use in
the system the selected buffer size may be too large.
The heap size is checked against the platform limits, the min is taken
and that is used as the basis for calculating the buffer size to test
Affects:
dEQP-VK.api.buffer.createBuffer_*
Components: Vulkan
VK-GL-CTS issue: 362
Change-Id: I7a644e8e48b961dad0d19675e3d54add4b11d99c
Slawomir Cygan [Wed, 30 Aug 2017 13:36:27 +0000 (15:36 +0200)]
dEQP-VK.geometry: use proper layout for sampling the image
While 'GENERAL' layout is acceptable layout for sampling image, the barrier in
geometry\vktGeometryBasicGeometryShaderTests.cpp:235
transitions the image to `SHADER_READ_ONLY_OPTIMAL` layout.
Both layout must much, otherwise the behavior is undefined.
Affects:
dEQP-VK.geometry.basic.output_vary_by_texture_instancing
dEQP-VK.geometry.basic.output_vary_by_texture
Components: Vulkan
VK-GL-CTS issue: 648
Change-Id: I2b947a150173f0a060cfbf851d117ef91097c1d8
Ian Elliott [Wed, 16 Aug 2017 21:11:57 +0000 (15:11 -0600)]
Fix flakiness in mailbox.display_timing
The "vktWsiDisplayTimingTests.cpp" file was originally written just for
a present mode of VK_PRESENT_MODE_FIFO_KHR. It has a case at image 80,
where it changes the desiredPresentTime to be 1 second earlier, and then
checks that later. Such a check doesn't work with
VK_PRESENT_MODE_MAILBOX_KHR, which can throw off the timing of images
(because some images may not be presented). This has resulted in the
test having random failures. The "image 80 test" wasn't intended to
occur with MAILBOX, and so it's now being removed.
VK-GL-CTS issue: 622
Components: Vulkan
Affects: dEQP-VK.wsi.*.display_timing.mailbox.display_timing
Change-Id: I9fbd2254b4e6fc1c7bff077c8c0a5229a6d74800
Alexander Galazin [Thu, 17 Aug 2017 14:16:09 +0000 (16:16 +0200)]
Add more allowed 'dot' alternatives
Expanded dot may be re-associated in multiple ways.
Add all possible alternatives to prevent precision failures.
Components: Vulkan
VK-GL-CTS issue: 634
Affects:
dEQP-VK.glsl.builtin.precision.dot.*
dEQP-VK.glsl.builtin.precision.reflect.*
Change-Id: I7fecbfa1cde04eab95bb3d418972631727d6d6af
Alexander Galazin [Fri, 11 Aug 2017 16:32:00 +0000 (18:32 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Change-Id: Iae127509ee1d187291e37c0ee9da7d331b070646
Gary Sweet [Wed, 26 Jul 2017 09:50:31 +0000 (10:50 +0100)]
Keep buffer memory alive through BufferView creation
The device memory used to create a buffer was going out
of scope and being freed too early. A buffer view was
subsequently made using the buffer. This is invalid.
This change extends the lifetime of the buffer memory to
match the buffer.
Affects:
dEQP-VK.api.buffer_view.create.*
Components: Vulkan
VK-GL-CTS issue: 574
Change-Id: I6605da750d6494587781285447a157ef12018459
Dave Airlie [Thu, 27 Jul 2017 19:43:53 +0000 (05:43 +1000)]
Fix combined depth/stencil clear colors.
This test was clearing depth to 256.0, values > 1.0 are undefined.
This fixes the the combined depth/stencil clears to use valid values
for depth and stencil.
Affects:
dEQP-VK.api.copy_and_blit.core.image_to_image.all_formats.depth_stencil.*
VK-GL-CTS Issue: 591
Change-Id: I75fd7e2bf17a84f7a2730f36b4bcdc066af1177c
Oivind Boge [Thu, 10 Aug 2017 10:24:02 +0000 (12:24 +0200)]
Fixed incorrect calculation of GCD
The calculation of greatest common divisor was
implemented incorrect when first added.
The function was using the input parameter instead
of its local copy of the input, which is updated
for each iteration of the calculation.
Affects:
dEQP-VK.api.image_clearing.*
Components: Vulkan
VK-GL-CTS issue: 625
Change-Id: I6619e4a30d89148d2567a725dbd27161fcf29a47
Oivind Boge [Sat, 8 Jul 2017 12:09:12 +0000 (14:09 +0200)]
Fix layout transition for WSI tests
The initial layout of the renderpass can't be
COLOR_ATTACHMENT_OPTIMAL without any transition
happening upfront.
Affects:
dEQP-VK.wsi.android.display_timing.*
dEQP-VK.wsi.android.incremental_present.*
Components: Vulkan
VK-GL-CTS issue: 565
Change-Id: Ie62f7aee21c52145090bf228db7031c0e4afb347
Gary Sweet [Thu, 27 Jul 2017 10:42:40 +0000 (11:42 +0100)]
Respect sampleRateShading availability in interpolate tests
Most of the tests in the dEQP-VK.pipeline.multisample_interpolation
group use one of the interpolatAt*() functions in their shaders.
These are only valid if sampleRateShading is available.
The multisampleStateInfo also blindly sets sampleShadingEnable
to true without checking.
Affects:
dEQP-VK.pipeline.multisample_interpolation.*
Components: Vulkan
VK-GL-CTS issue: 600
Change-Id: I95f91af9a7abb1e55ff2a3da0c0daefb819226f9
Slawomir Cygan [Mon, 31 Jul 2017 12:22:50 +0000 (14:22 +0200)]
Fix regressions in synchronization tests for dedicated allocations
Pass image memory requirements to allocation routine in allocateAndBindMemory.
VK_KHR_get_memory_requirements2 is a device extension (not instance).
Throw NotSupported when external handle requires dedicated allocation,
but 'suballocated' variant of test is being run.
Affects:
dEQP-VK.synchronization.cross_instance.*
Components: Vulkan
VK-GL-CTS issue: 604
Change-Id: I3636779459300f5dee2e22b0a2e04762eb7b0601
Gary Sweet [Tue, 8 Aug 2017 08:44:35 +0000 (09:44 +0100)]
Respect maximum workgroup count in SpvAsmInstructionTests
The createOpAtomic group was using a hard-coded
1000000
for numElements which is later used as the workgroup count.
The minimum mandatory workgroup count is 65535, far less
than the
1000000 being used.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.opatomic*
Components: Vulkan
VK-GL-CTS issue: 613
Change-Id: I523451d33dbb116e6ca2aaa00a948ec6782382b3
Maciej Jesionowski [Wed, 26 Jul 2017 13:33:59 +0000 (15:33 +0200)]
Sparse buffer test: allocate memory in one big chunk
The test made excessive small memory allocations breaking the
maxMemoryAllocationCount limit.
Affects:
dEQP-VK.sparse_resources.buffer.transfer.sparse_binding.buffer_size_2_24
Components: Vulkan
VK-GL-CTS issue: 592
Change-Id: Ic7c1c07db2b805806e2c940d3fd4d96e12043aaf
Daniel Koch [Wed, 26 Jul 2017 17:38:21 +0000 (13:38 -0400)]
Allow VK_KHR_relaxed_block_layout extension
VK-GL-CTS Issue: 596
Affects:
dEQP-VK.api.info.device.extensions
Change-Id: I25395cbc76e2a4a176c74e9d46f16f3e105c4669
Component: Vulkan
Maciej Jesionowski [Wed, 26 Jul 2017 13:33:59 +0000 (15:33 +0200)]
Sparse buffer test: allocate memory in one big chunk
The test made excessive small memory allocations breaking the
maxMemoryAllocationCount limit.
Affects:
dEQP-VK.sparse_resources.buffer.transfer.sparse_binding.buffer_size_2_24
Components: Vulkan
VK-GL-CTS issue: 592
Change-Id: Ic7c1c07db2b805806e2c940d3fd4d96e12043aaf
Arkadiusz Sarwa [Wed, 15 Mar 2017 15:02:07 +0000 (16:02 +0100)]
Add VK_KHR_relaxed_block_layout
New tests:
dEQP-VK.ssbo.layout.multi_basic_types.*.relaxed_block*
dEQP-VK.ssbo.layout.random.relaxed.*
VK-GL-CTS issue: 117
Components: Vulkan
Change-Id: Ieda2aa291dcbff250b81e0da06c39781800f4af7
(cherry picked from commit
2a11db7c2e23afd4bef2f9a0eab84356d912ff3c)
Arkadiusz Sarwa [Tue, 9 May 2017 14:45:32 +0000 (16:45 +0200)]
Add GlslBuildOptions::FLAG_ALLOW_RELAXED_OFFSETS
Enabling the flag allows GLSL to use layout(offset = N) qualifiers that
follow VK_KHR_relaxed_block_layout rules instead of GLSL std140/std430
rules.
Components: Vulkan
Change-Id: I4f168b04ad0916b740891b603ddde2de0f4bcf50
(cherry picked from commit
4b82e12d3a7bf0947887e0b9d586d0ab63bd4888)
Tony Zlatinski [Wed, 19 Jul 2017 21:21:53 +0000 (16:21 -0500)]
Select correct memory heap index for memory import
When importing memory, the application (CTS) should follow
the spec rules about memory imports. I.e. The application must use the
same memory heap index for the import that has been used for the
exported memory. In addition, the application can't
import a buffer or image to a heap that does not support CPU mapping and
expect the memory to be CPU mappable/accessible.
This change modifies the export memory routines, now, returning the
index of the heap memory used for the export. Then the import routines are
modified to use those indexes for the memory import operations.
Components: Vulkan
Affects:
dEQP-VK.api.external.memory.*
dEQP-VK.synchronization.cross_instance.*
VK-GL-CTS issue: 585
Change-Id: I48ab85b7fd2b67655163f055fb03e8f2a3a42fd6
Alexander Galazin [Fri, 21 Jul 2017 17:51:48 +0000 (19:51 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Change-Id: Ifac39caba5598cbb75d5fb25d271ad0b709140a6
Alexander Galazin [Fri, 21 Jul 2017 17:44:17 +0000 (19:44 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1
Change-Id: If1266ef43a81d4d015c3f656315ea629acbbd55e
Alexander Galazin [Fri, 21 Jul 2017 16:55:45 +0000 (18:55 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Change-Id: I65f618365df474653f68d311647f601f91a38e4b
Igor Ostrowski [Tue, 4 Jul 2017 16:01:23 +0000 (18:01 +0200)]
Fix layout transition in blitting tests
Affects:
dEQP-VK.api.copy_and_blit.*.blit_image.*
Components: Vulkan
VK-GL-CTS issue: 571
Change-Id: I780374a8fbff336a7789bd6a745e635ac1202b62
Igor Ostrowski [Wed, 12 Jul 2017 13:15:14 +0000 (15:15 +0200)]
Add metadata bindings in sparse tests
All metadata must be bound prior to device use of the sparse image
Affects:
dEQP-VK.sparse_resources.image_sparse_residency.*
dEQP-VK.sparse_resources.mipmap_sparse_residency.*
dEQP-VK.sparse_resources.shader_intrinsics.*
dEQP-VK.glsl.texture_functions.*sparse*
dEQP-VK.glsl.texture_gather.*sparse*
Components: Vulkan
VK-GL-CTS issue: 572
Change-Id: I4bbf2b74ed7fc0cea000084769cbed0dbe4a802e
JarredDavies [Fri, 14 Jul 2017 14:55:46 +0000 (15:55 +0100)]
Fix incorrect scale in pipeline_barrier tests
The ImageBlitFromImage verfication code incorrectly scales the refrence image it creates.
The test should add 0.5 to the x and y coords before scaling them.
Affects:
dEQP-VK.memory.pipeline_barrier.*
Components: Vulkan
VK-GL-CTS issue: 577
Change-Id: I28d0b4deec0f1837c21cdc2dc68a9169ca8ae96b
Slawomir Cygan [Thu, 6 Jul 2017 17:24:18 +0000 (19:24 +0200)]
copies_and_blitting: fix ambiguous signed normalized 1.0 value
Below tests copy floats to signed normalized 8-bit values.
In that process it happens that 1.0 float value is copied to 8_snorm
elements as: {0x00, 0x00, 0x80, 0x3f}
According to spec, on SNORM values:
"Note that while zero is exactly expressible in this representation,
one value (-128 in the example) is outside the representable range,
and must be clamped before use."
The problem occurs when 0x80 == 128 value is copied to buffer:
as it falls outside of <-1,1> range, it may be clamped to 0x81 (both values
represent -1.0 SNORM value).
The change here processes all result and expected data buffers to remove
all ambiguites by converting to float and back to signed normalized format.
Affects:
dEQP-VK.api.copy_and_blit.*.image_to_image.all_formats.color.r32_sfloat.a8b8g8r8_snorm_pack32.*
dEQP-VK.api.copy_and_blit.*.image_to_image.all_formats.color.r32_sfloat.r8g8b8a8_snorm.*
Components: Vulkan
VK-GL-CTS issue: 563
Change-Id: I175665f39811cf6a80862967ad0a9bb8e13527e9
Yanjun Zhang [Fri, 7 Jul 2017 20:45:59 +0000 (13:45 -0700)]
Relax threshold in cube map filtering tests
Use the same colorThreshold calculation as GLES CTS so Vulkan CTS
has the same behavior as GLES CTS.
Components: Vulkan
Affects:
dEQP-VK.pipeline.sampler.view_type.cube.format.r5g6b5_unorm_pack16.*
VK-GL-CTS issue: 561
Change-Id: I9bd632bb242f653b1f2d8bb50ee9867da926e95b
Slawomir Cygan [Fri, 7 Jul 2017 14:41:30 +0000 (16:41 +0200)]
cross_instance sync: run without VK_KHR_get_memory_requirements2
This extension is used in the test, to check if resource needs dedicated
allocations (to be used created by dependent VK_KHR_dedicated_allocation
extension).
If the extension is not supported assume there is no need for dedicated
allocations.
Affects: dEQP-VK.synchronization.cross_instance.*
VK-GL-CTS issue: 548
Components: Vulkan
Change-Id: Icb4f5a34b98da213d0cb665bcc4e6b048d7b8a3c
gkbldval [Fri, 14 Jul 2017 16:49:26 +0000 (18:49 +0200)]
Refactor synchronization test code to avoid compiler warning
vkt::synchronization::s_resources is unused in recently
added file, causing -Wunused warning (treated as error).
Affects: dEQP-VK.synchronization.*
Components: Vulkan
VK-GL-CTS issue: 578
Change-Id: Ifd8ce0812673e6b2da7c28bacb4384b3c80f65d1
Alexander Galazin [Wed, 5 Jul 2017 15:09:38 +0000 (17:09 +0200)]
Fix gcc 5.4 warnings
gcc 5.4 (default in Ubuntu 16.04) reports conversion to int
warnings/errors for bitwise or and assign operator.
GCC bug: 40752
Components: Framework, Vulkan
Change-Id: Ia857c44cf54d5571d857e1fada0e2aaa8f4b950d
(cherry picked from commit
0bd8828618d95d2a83bc7475179a9227bfd22f5f)