Graeme Leese [Wed, 19 Sep 2018 12:04:34 +0000 (13:04 +0100)]
Add a flushAlloc helper to fix valid usage
Flushing/invalidating memory using the requested size (as the CTS code
does all over the place) is not safe. If the implementation's
MemoryRequirements make the allocation larger than the requested size
then the whole (padded) allocation will be mapped. This means that flush
and invalidate using a size which is not a multiple of the non-coherent
atom size are invalid. Replace these usages with helper functions to
flush/invalidate the whole block.
The current implementation uses WHOLE_SIZE to ensure that flush /
invalidate is valid, but sub-ranges could be implemented by storing how
much of any allocation is mapped. The structure of the current code
which maps memory at allocation time means that there cannot be any
other users being flushed out by the use of WHOLE_SIZE.
Includes a significant amount of work from @jbolz.
Components: Framework, Vulkan
Affects: dEQP-VK.*
Change-Id: I24ac185d7d041239430c53a6b61cede5828a7afd
Jason Ekstrand [Sat, 21 Jul 2018 00:30:42 +0000 (17:30 -0700)]
dEQP-VK: Add tests for blitting to/from linear images
New Tests:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.color.*.linear_*_*
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.color.*.*_linear_*
Components: Vulkan
Change-Id: I6457959e805b57cb088b23753c21910ef22f4061
Alexander Galazin [Sun, 30 Sep 2018 14:30:48 +0000 (16:30 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/master
Change-Id: I21abd3202b23abefd5149024c25374073c7afe7a
Igor Ostrowski [Tue, 25 Sep 2018 12:02:06 +0000 (14:02 +0200)]
Check for compatible memory type in VK_EXT_external_memory_host tests
Affects:
dEQP-VK.memory.external_memory_host.*
Components: Vulkan
VK-GL-CTS issue: 1372
Change-Id: I37a3058acd6f838de259ded01032f7793012566b
Graeme Leese [Fri, 28 Sep 2018 13:57:13 +0000 (14:57 +0100)]
Set patch version to 0 on test startup
Some parts of the test expect the ApiVersion to have a patch level of 0
so set this explicitly on startup. This was happening accidentally for
VK1.1 devices because the version is set as min(loader, device) and the
loader version is always 1.1.0.
Components: Vulkan
Affects: dEQP-VK.*
VK-GL-CTS Issue: 1391
Change-Id: If3b59408628e5b4a91e0f367bd6b17ca67f69e58
Alexander Galazin [Fri, 28 Sep 2018 11:31:03 +0000 (13:31 +0200)]
Merge vk-gl-cts/github-master into vk-gl-cts/master
Change-Id: I3331377694e584a665508c3b8ef66cb3c6cea9d3
Alexander Galazin [Fri, 28 Sep 2018 10:04:48 +0000 (12:04 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/master
Change-Id: I05442ba8601df834249203b12ee56de3066bbf80
kthangudu [Thu, 27 Sep 2018 21:31:42 +0000 (14:31 -0700)]
Fix build break when DEQP_HAVE_SPIRV_TOOLS is not defined.
VK-GL-CTS issue: 1389
Change-Id: I67206c770819b052a2370144bd4b024799bb5836
Khronos Group Webmaster [Thu, 27 Sep 2018 20:34:55 +0000 (16:34 -0400)]
Update LICENSE
Change Apache 2.0 to Khronos Apache 2.0 CLA
Alexander Galazin [Tue, 25 Sep 2018 13:42:44 +0000 (15:42 +0200)]
Add SPIR-V optimization options to vk-build-programs
Components: Vulkan
VK-GL-CTS issue: 1378
Change-Id: I05640c67b6bcc3e7daea84a200ca4033c27c2ac4
Alexander Galazin [Thu, 27 Sep 2018 15:33:25 +0000 (17:33 +0200)]
Whitelist VK_KHR_vulkan_memory_model
Components: Vulkan
Affects: dEQP-VK.api.info.device.extensions
Change-Id: Id26f39dd0f5b6d09dba7a24777c45b5d4619552e
Jeff Bolz [Mon, 30 Apr 2018 15:49:28 +0000 (10:49 -0500)]
Tests for VK_KHR_vulkan_memory_model
Components: Vulkan
New Tests: dEQP-VK.memory_model.*
Change-Id: Ie8f5b5e207cd870477038c01a9f6f897effa1d2d
(cherry picked from commit
905580df19be0b44829a92739ecabca311db0835)
Alexander Galazin [Thu, 27 Sep 2018 07:46:01 +0000 (09:46 +0200)]
Update SPIR-V Tools
Components: Framework
Change-Id: If36127beae0cdd547c4d05819ef2d3ff34a34a96
(cherry picked from commit
baafc4aa3199d1a19f6caf39b563a7cc03652714)
Alexander Galazin [Thu, 27 Sep 2018 08:43:10 +0000 (10:43 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/master
Change-Id: I5b210eddd69650e81b13c651b8d2dea71ce8b1af
Alexander Galazin [Thu, 27 Sep 2018 07:46:01 +0000 (09:46 +0200)]
Update SPIR-V Tools
Components: Framework
Change-Id: If36127beae0cdd547c4d05819ef2d3ff34a34a96
Graeme Leese [Wed, 26 Sep 2018 10:57:02 +0000 (11:57 +0100)]
Fix unused function warnings in the CTS code
Some functions are declared unconditionally but only used when
HAVE_SPIRV_TOOLS is defined. This breaks the build when it it is not.
Components: Framework
Affects: dEQP-VK.*
Change-Id: I599cb83ea5f889eae6c3fc71c0f640e2b32fdb8b
Robert Tray [Fri, 14 Sep 2018 22:40:32 +0000 (16:40 -0600)]
Add screenLayout to AndroidManifest configChanges
Android P will generate screenLayout configuration changes for
AndroidTV devices when an orientation change happens.
Specify that dEQP will handle screenLayout config changes in the
manifest so the Android framework doesn't try to stop and restart dEQP.
dEQP can't handle a restart and just exits.
Components: AOSP
VK-GL-CTS issue: 1357
Change-Id: I0e4eb3a89f5dfb175cbeb32cc6c921a0fe99e477
Tom Cooper [Tue, 25 Sep 2018 13:59:16 +0000 (14:59 +0100)]
Fix support check for dEQP-VK.binding_model.descriptorset_random.*
Test should check vertexPipelineStoresAndAtomics before writing to a
storage image from a vertex shader.
Affects:
dEQP-VK.binding_model.descriptorset_random.*
Components: Vulkan
VK-GL_CTS issue: 1381
Change-Id: Ide65fe7ce2a0015875a56746a59725eb5eab3f1f
David Emett [Thu, 20 Sep 2018 18:56:47 +0000 (19:56 +0100)]
Add missing invalidates in renderpass tests
Components: Vulkan
VK-GL-CTS issue: 1367
Affects:
dEQP-VK.renderpass.*
Change-Id: Ie40381c3b36604ed4fcbb2613cc9aa4a54b17a46
Graeme Leese [Fri, 21 Sep 2018 09:35:55 +0000 (10:35 +0100)]
Fix synchronisation in ycbcr tests
Components: Vulkan
Affects: dEQP-VK.ycbcr.*
Change-Id: Idfe7ef9cd0d5c8f9547c599631eae3bfcfa93e8a
Graeme Leese [Wed, 19 Sep 2018 15:55:09 +0000 (16:55 +0100)]
Use a valid final layout in renderpass tests
The finalLayout must be a valid layout, it cannot be undefined.
Components: Vulkan
Affects: dEQP-VK.renderpass.*
Change-Id: Ia3753aa8bf71241d2b7d0da3183c5ef9255efad4
Graeme Leese [Fri, 21 Sep 2018 12:17:46 +0000 (13:17 +0100)]
Fix valid usage for SampleLocations extension
Components: Vulkan
Affects: dEQP-VK.pipeline.multisample.sample_locations_ext.*
Change-Id: I92f8885eb3a5f4df3f2148b823add30f096ea778
Graeme Leese [Fri, 21 Sep 2018 11:56:11 +0000 (12:56 +0100)]
Fix some pipeline and memory barriers
These were not obeying the valid usage
Components: Vulkan
Affects: dEQP-VK.api.*
dEQP-VK.pipeline.*
dEQP-VK.sparse_resources.*
Change-Id: Id2283000312ea6a17807223b6ec3353e910d3b6a
Norbert Garnys [Thu, 20 Sep 2018 11:27:11 +0000 (13:27 +0200)]
Fix dEQP-VK.glsl.atomic_operations.*64bit*
Change buffer structure to be naturally aligned.
Affected tests:
dEQP-VK.glsl.atomic_operations.*
Components: Vulkan
VK-GL-CTS issue:1364
Change-Id: I6721ee396e55e6c83cb3970171eafd064076c988
Ari Suonpaa [Mon, 10 Sep 2018 07:26:08 +0000 (10:26 +0300)]
Test OpPtrAccessChain with base alignment of < 16
Added a new test for indexing a nested float array inside storage
buffer using OpPtrAccessChain. The base alignment is not rounded
up to 16.
New tests:
dEQP-VK.spirv_assembly.instruction.compute.indexing.input.non16basealignment.*
Components: Vulkan
VK-GL-CTS issue: 1318
Change-Id: I00ac554df78497ef7393352e5d5848903afcad5a
Timothy Arceri [Thu, 23 Aug 2018 06:18:35 +0000 (16:18 +1000)]
Add some tests for redeclarations of builtins
From Section 3.7. (Identifiers) of the GLSL 4.60 spec:
"Identifiers starting with “gl_” are reserved for use by OpenGL,
and in general, may not be declared in a shader; this results in
a compile-time error. However, as noted in the specification,
there are some cases where previously declared variables can be
redeclared, and predeclared “gl_” names are allowed to be
redeclared in a shader only for these specific purposes."
The specific cases where redeclaration is allowed are cases where
invariant is added, precision qualifiers are added, an array size is
added, etc.
Components: OpenGL
Affects: KHR-GL[34]*.shaders30.declarations.declarations*
Change-Id: Ifa39311d64e24d8e1a419959a2e6b2252991e694
Timothy Arceri [Thu, 23 Aug 2018 04:49:41 +0000 (14:49 +1000)]
Add GL test for invalid layouts function param
This tests that image layout qualifiers are not applied to function
parameters.
From Section 4.4. (Layout Qualifiers) of the GLSL 4.60 spec:
"Layout qualifiers can appear in several forms of declaration.
They can appear as part of an interface block definition or
block member, as shown in the grammar in the previous section.
They can also appear with just an interface-qualifier to establish
layouts of other declarations made with that qualifier:
layout-qualifier interface-qualifier ;
Or, they can appear with an individual variable declared with
an interface qualifier:
layout-qualifier interface-qualifier declaration ;"
From Section 4.10 (Memory Qualifiers) of the GLSL 4.60 spec:
"Layout qualifiers cannot be used on formal function parameters,
and layout qualification is not included in parameter matching."
Components: OpenGL
VK-GL-CTS issue: 1325
New tests: KHR-GL4*.shaders42.declarations.declarations.layout_qualifier_on_image_function_parameter_*
Change-Id: Ia522e4a7150b56d51f2859e7ce57684daf12efde
Timothy Arceri [Thu, 23 Aug 2018 02:38:56 +0000 (12:38 +1000)]
Add GL test for preprocessor stringification
From Section 3.3. (Preprocessor) of the GLSL 4.60 spec:
"The following operators are also available:
defined
##
...
Any directive not listed above will cause a
compile-time error."
The test deliberately doesn't make use of VEC4_STRING_PARAM()
because that triggers an invalid type error (passing string to
vec4) on some drivers.
We want to make sure the compile error is triggered by the
preprocessor instead.
Components: OpenGL
VK-GL-CTS issue: 1324
Change-Id: I19838ddc5702aaca377bad9325bb6b21ec2bf30f
Sruthik P [Fri, 24 Aug 2018 20:59:54 +0000 (20:59 +0000)]
Add links to Cherry inside the root readme
Change-Id: I03b107cb2d0aaab7101ea6612005d2b1bb36462c
David Neto [Fri, 21 Sep 2018 14:36:56 +0000 (10:36 -0400)]
Shader validation: respect Vulkan version, relaxed layout requirement
Pass more info to SPIR-V validation:
- Target Vulkan version
- Whether the test case requested relaxed layout
When a shader is built with VK_KHR_relaxed_block_layout, the SPIR-V
module does not record the setting. But SPIR-V module validation
for Vulkan 1.0 must know if block layout should be relaxed.
Vulkan 1.1 includes VK_KHR_relaxed_block_layout in core.
Adds the necessary state to framework program build options objects to
pass those options to the SPIR-V validator.
Update SPIRV-Tools, SPIRV-Headers, Glslang to just befor NV Turing extensions.
Make sure we have the entry point:
spvValidatorOptionsSetRelaxedBlockLayout
Change-Id: I74511629a4e56a4fea370ffe3a21677465a4510f
Component: Framework
VK-GL-CTS: 1266, 1270
(cherry picked from commit
6d10706988d07f2fbe34914ec63dccd24447a10e)
Alexander Galazin [Tue, 25 Sep 2018 13:55:21 +0000 (15:55 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/master
Change-Id: I6abfb86bd46b492d0cd8f1f7614d13c4480734ea
Alexander Galazin [Tue, 25 Sep 2018 13:26:40 +0000 (15:26 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: Idc9e2c7523b11e08a849f226037fd2f2fea1e370
Graeme Leese [Fri, 21 Sep 2018 11:36:07 +0000 (12:36 +0100)]
Drop superfluous Clip/CullDistance capabilities
These capabilities were declared but not actually needed, causing the
tests to fail validation if the features are not supported.
Components: Vulkan
Affects: dEQP-VK.spirv_assembly.*
Change-Id: Ic3cbef0f8141c53abeb575dff73953360761fad9
Alexander Galazin [Tue, 25 Sep 2018 11:05:35 +0000 (13:05 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I4e418414ad3adf232f210cacb3e84881ae94d98e
Matthew Netsch [Wed, 5 Sep 2018 18:36:31 +0000 (14:36 -0400)]
Reduces percentage of heap used in memory tests
Heaps can be shared and even fragmented on real systems.
The current percentage of 50% is a little high to reasonably
account for these issues.
Components: Vulkan
VK-GL-CTS issue: 1342
Affects:
dEQP-VK.memory.device_group_allocation.random*
Change-Id: I9a9c7fff05a663facd142a61a505c38925912ed8
(cherry picked from commit
1dab6c690815c1640b7726e05211ec3ab244f935)
Graeme Leese [Wed, 19 Sep 2018 17:04:50 +0000 (18:04 +0100)]
Remove invalid execution mode in smoke test
OriginLowerLeft is not valid, so use OriginUpperLeft.
Components: Vulkan
Affects: dEQP-VK.api.smoke.asm_triangle
Change-Id: I14b2ac7ec2b56be228aa7de3442f605e8525f163
John Anthony [Wed, 19 Sep 2018 14:44:43 +0000 (16:44 +0200)]
Fix pipeline barrier issues in protected memory tests
Set correct stage mask for pipeline barriers, and remove pipeline
barriers that are not needed.
Components: Vulkan
VK-GL-CTS issue: 1373
Affects:
dEQP-VK.protected_memory.buffer.*
dEQP-VK.protected_memory.attachment.*
Change-Id: I6dae7ad02c66649281a35465939437a5fb26dd0e
Lei Zhang [Fri, 14 Sep 2018 18:56:12 +0000 (14:56 -0400)]
Fix array stride in uniform buffer for VK_KHR_16bit_storage
Array stride need to be a multiple of 16.
Affects:
dEQP-VK.spirv_assembly.instruction.*.16bit_storage.*
Components: Vulkan, SPIR-V
VK-GL-CTS issue: 1344
Change-Id: If5c4415e8f1914a2579d914d33ab3b334affd8d3
David Neto [Fri, 21 Sep 2018 14:36:56 +0000 (10:36 -0400)]
Shader validation: respect Vulkan version, relaxed layout requirement
Pass more info to SPIR-V validation:
- Target Vulkan version
- Whether the test case requested relaxed layout
When a shader is built with VK_KHR_relaxed_block_layout, the SPIR-V
module does not record the setting. But SPIR-V module validation
for Vulkan 1.0 must know if block layout should be relaxed.
Vulkan 1.1 includes VK_KHR_relaxed_block_layout in core.
Adds the necessary state to framework program build options objects to
pass those options to the SPIR-V validator.
Update SPIRV-Tools, SPIRV-Headers, Glslang to just befor NV Turing extensions.
Make sure we have the entry point:
spvValidatorOptionsSetRelaxedBlockLayout
Change-Id: I74511629a4e56a4fea370ffe3a21677465a4510f
Component: Framework
VK-GL-CTS: 1266, 1270
Graeme Leese [Fri, 21 Sep 2018 12:16:44 +0000 (13:16 +0100)]
Fix missing gl_PointSize
Components: Vulkan
Affects: dEQP-VK.pipeline.framebuffer_attachment.*
Change-Id: I04a59f9488cc4282198a74182822946c4aff4340
Matthew Netsch [Fri, 7 Sep 2018 17:44:55 +0000 (13:44 -0400)]
Fixes WSI protected swapchain allocation tests
Will now throw not supported if swapchain config
cannot fit in the available heap space.
Changes available heap space to fixed 25% of total
reported heap size instead of the current
"total - 2 * imageSize"
Components: Vulkan
VK-GL-CTS issue: 1345
Affects:
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create.*
Change-Id: I6854ae29b4394d450e47cc78bfb905362a964ec4
(cherry picked from commit
f679b545b3b5f06bfb84069a4c712e3988204326)
Alexander Galazin [Fri, 21 Sep 2018 09:38:21 +0000 (11:38 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: I3a182c96f9a5c073db89f3ed546ef2cbee088bc4
Alexander Galazin [Fri, 21 Sep 2018 09:38:19 +0000 (11:38 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Change-Id: I8893c9c1231f9d698ec1cd249299944a6890ff87
Alexander Galazin [Fri, 21 Sep 2018 09:04:45 +0000 (11:04 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I9cb8925fdf0bea5cafa7460e7621d863c5e0de85
Marcin Kantoch [Wed, 19 Sep 2018 09:18:16 +0000 (11:18 +0200)]
2Darray compatible flag not allowed for 2D images
Fix for dEQP-VK.api.external.memory.*.image.info tests
incorrectly set create flag VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT
for 2D images
Components: Vulkan
Affects:
dEQP-VK.api.external.memory.*.image.info
VK-GL-CTS issue: 1362
Change-Id: I6863fc30177979b913c9e0d4b5814cb857764e27
Robert Tray [Fri, 14 Sep 2018 22:40:32 +0000 (16:40 -0600)]
Add screenLayout to AndroidManifest configChanges
Android P will generate screenLayout configuration changes for
AndroidTV devices when an orientation change happens.
Specify that dEQP will handle screenLayout config changes in the
manifest so the Android framework doesn't try to stop and restart dEQP.
dEQP can't handle a restart and just exits.
Components: AOSP
VK-GL-CTS issue: 1357
Change-Id: I0e4eb3a89f5dfb175cbeb32cc6c921a0fe99e477
Robert Tray [Fri, 14 Sep 2018 22:32:57 +0000 (16:32 -0600)]
Add screenLayout to AndroidManifest configChanges
Specify that dEQP will handle screenLayout config changes in the
manifest so the Android framework doesn't try to stop and restart dEQP.
dEQP can't handle a restart and just exits.
Update the minSdkVersion and targetSdkVersion to match what is
used for Khronos Vulkan dEQP manifest. Android P will launch the
DeprecatedTargetSdkVersionDialog if the sdk version is not recent
enough.
Test: deqp
Cherry-pick from https://android-review.googlesource.com/c/platform/external/deqp/+/757202
VK-GL-CTS Issue: 1357
Affects: OpenGL/OpenGL ES Android build
Change-Id: Ia9befb1d65752ece3ea5778ba1301a134559334a
(cherry picked from commit
4e0cf955dd890944a035e52f6ae4eda7e7bd2ec2)
Robert Tray [Fri, 14 Sep 2018 22:32:57 +0000 (16:32 -0600)]
Add screenLayout to AndroidManifest configChanges
Specify that dEQP will handle screenLayout config changes in the
manifest so the Android framework doesn't try to stop and restart dEQP.
dEQP can't handle a restart and just exits.
Update the minSdkVersion and targetSdkVersion to match what is
used for Khronos Vulkan dEQP manifest. Android P will launch the
DeprecatedTargetSdkVersionDialog if the sdk version is not recent
enough.
Test: deqp
Cherry-pick from https://android-review.googlesource.com/c/platform/external/deqp/+/757202
VK-GL-CTS Issue: 1357
Affects: OpenGL/OpenGL ES Android build
Change-Id: Ia9befb1d65752ece3ea5778ba1301a134559334a
Jari Komppa [Fri, 14 Sep 2018 11:05:34 +0000 (14:05 +0300)]
Remove over-zealous sanity check for memory types
This change removes the sanity checks that require additional features
when requesting specific memory types (lazy, cached).
New tests:
None
Components: Vulkan
VK-GL-CTS issue: 1171
Change-Id: Icb3ced8aa5bcfc490d45a8d36f0d25e469f03933
Maciej Jesionowski [Tue, 3 Apr 2018 11:52:00 +0000 (13:52 +0200)]
Add test for VK_KHR_driver_properties
New tests:
dEQP-VK.api.driver_properties.properties
Components: Vulkan
VK-GL-CTS issue: 1098
Change-Id: Ifcb774700c45f76e48a03b147472a506d274c192
(cherry picked from commit
eb5806aab57fdf89850be8916e194c3d3b54c8d9)
Norbert Garnys [Thu, 17 May 2018 11:01:35 +0000 (13:01 +0200)]
Add tests for VK_KHR_shader_atomic_int64
Add new test cases for 64 bit int atomic operations
to existing glsl.atomic_operations tests
New tests:
dEQP-VK.glsl.atomic_operations.*signed64bit*
dEQP-VK.glsl.atomic_operations.*unsigned64bit*
Affected tests:
dEQP-VK.glsl.atomic_operations.*
Components: Vulkan, Framework, Scripts
VK-GL-CTS issue:1172
Change-Id: If7e6871cc209b2086e087e0dd6c764cb8bd98a4b
(cherry picked from commit
80926e1393d1a3de407b9279162056fa0a53822e)
Jeff Bolz [Fri, 18 May 2018 01:32:31 +0000 (20:32 -0500)]
GL_EXT_shader_16bit_storage and GL_EXT_shader_8bit_storage tests
Components: Vulkan
Affects:
dEQP-VK.ubo.*
dEQP-VK.ssbo.*
Change-Id: Ic68f4e16ff96b2bbb161f2b37e7b4c83094e4009
(cherry picked from commit
f14467473e1bce678e12f71bcfcfb130c6423faa)
Jeff Bolz [Thu, 12 Jul 2018 19:51:24 +0000 (14:51 -0500)]
Add random descriptor set tests, and test VK_EXT_inline_uniform_block
These tests generate random descriptor set layouts, where each descriptor
set has a random number of bindings, each binding has a random array size
and random descriptor type.
Components: Vulkan
New Tests: dEQP-VK.binding_model.descriptorset_random.*
Change-Id: I3ddfc82898ed970366ee8be4254e50e39a186c58
(cherry picked from commit
152c32af165698f43aa581c60b79bc35c1448116)
Alexander Galazin [Wed, 19 Sep 2018 08:11:03 +0000 (10:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/master
Change-Id: I5764983d64a06c6dec8ea1a02059ab0b85828e49
Alexander Galazin [Wed, 19 Sep 2018 08:11:01 +0000 (10:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: I976c55e221f9d0362327ccdbf49aebe7cf4e37f1
Sandeep Shinde [Fri, 7 Sep 2018 05:59:45 +0000 (11:29 +0530)]
Report NotSupported for GLES1 tests on non-ES1 run
If conformance build does not enable DEQP_SUPPORT_GLES1 while building
binary for non-ES1.1 conformance run then OpenGL ES 1.1 specific tests
should return NotSupported error instead of InternalError.
The reason is because the specification does not enforce ES 1.1 support
if conformance is run for non ES1 version like for ES 3.x version.
Components: OpenGL ES
VK-GL-CTS issue: 1343
Change-Id: Id7218cc011b3ee139237130a7cb7d850b4431d50
(cherry picked from commit
4eb9918b81069484603f3226ce090e303ef27eb5)
Sandeep Shinde [Fri, 7 Sep 2018 05:59:45 +0000 (11:29 +0530)]
Report NotSupported for GLES1 tests on non-ES1 run
If conformance build does not enable DEQP_SUPPORT_GLES1 while building
binary for non-ES1.1 conformance run then OpenGL ES 1.1 specific tests
should return NotSupported error instead of InternalError.
The reason is because the specification does not enforce ES 1.1 support
if conformance is run for non ES1 version like for ES 3.x version.
Components: OpenGL ES
VK-GL-CTS issue: 1343
Change-Id: Id7218cc011b3ee139237130a7cb7d850b4431d50
Alexander Galazin [Wed, 19 Sep 2018 07:24:01 +0000 (09:24 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Ieda52b4e886e4448634bdea91f0791548642d3b0
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
Matthew Netsch [Fri, 7 Sep 2018 17:44:55 +0000 (13:44 -0400)]
Fixes WSI protected swapchain allocation tests
Will now throw not supported if swapchain config
cannot fit in the available heap space.
Changes available heap space to fixed 25% of total
reported heap size instead of the current
"total - 2 * imageSize"
Components: Vulkan
VK-GL-CTS issue: 1345
Affects:
dEQP-VK.protected_memory.interaction.wsi.android.swapchain.create.*
Change-Id: I6854ae29b4394d450e47cc78bfb905362a964ec4
Tony Wasserka [Tue, 3 Apr 2018 14:40:21 +0000 (15:40 +0100)]
Consider rounding mode differences in mipmap tests
The tests already tolerate a threshold for rounding mode differences
for the result of a downscaling vkCmdBlitImage, however the accumulated
difference between Round-To-Nearest and Round-To-Zero may exceed the
current threshold. With this change, the expected result is generated
from the preceding device-rendered mipmap instead, so any legitimate
error will always be within the threshold now.
Affects:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*_linear
Components: Vulkan
VK-GL-CTS issue: 1106
Change-Id: I0999419320d1b2384f42fbc8eddda29e79147bd4
(cherry picked from commit
b861ca1e6d4c002d4359a71dbff1cdf898e79aca)
Jason Ekstrand [Thu, 6 Sep 2018 18:53:39 +0000 (13:53 -0500)]
dEQP-VK: Stop requiring the destination format to support linear sampling for blit tests
Affected tests: dEQP-VK.api.copy_and_blit.core.blit_image.*linear
Components: Vulkan
VK-GL-CTS issue: 1347
Change-Id: I6d802ad3a9cdd03404875fb5c55855a104bdf1c3
Alexander Galazin [Sat, 15 Sep 2018 02:09:23 +0000 (04:09 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: I8540b9401bed30b01c7df3254e1f86fde1966b2b
Alexander Galazin [Sat, 15 Sep 2018 01:25:03 +0000 (03:25 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/master
Change-Id: I3296187dc521ebb5d4fa5f548ae7e3b6fdece223
Alexander Galazin [Fri, 14 Sep 2018 19:02:19 +0000 (21:02 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Change-Id: I68c6cc18848b8c72f46cbece1c70f45502c231cd
Alexander Galazin [Fri, 14 Sep 2018 18:26:35 +0000 (20:26 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: I888fa7abc156e03d7433791e8ae8ba9b6b41f1dd
Alexander Galazin [Fri, 14 Sep 2018 17:36:46 +0000 (19:36 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5
Change-Id: I162d821fa9df2cee46e91754c7ebf68595f4ee87
Alexander Galazin [Fri, 14 Sep 2018 17:36:42 +0000 (19:36 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4
Change-Id: I9105f8b1353709392afeab3163f1025ca4d3abcc
Alexander Galazin [Fri, 14 Sep 2018 17:36:40 +0000 (19:36 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.2 into vk-gl-cts/opengl-es-cts-3.2.3
Change-Id: I3216622efcb450b7bea13b54661955b479d68e99
Alexander Galazin [Fri, 14 Sep 2018 14:55:26 +0000 (16:55 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I3cf1ce3cb9da66c83e88048fb29a055ec196497e
Alexander Galazin [Fri, 14 Sep 2018 14:50:45 +0000 (16:50 +0200)]
Update KC CTS
Components: Framework
Change-Id: I227ab78c00577ee6ea8e90292b01d7abe3ddd2e6
Tapani Pälli [Mon, 3 Sep 2018 07:10:04 +0000 (10:10 +0300)]
Allow reading GL_BYTE surfaces to GL_RGBA output.
EXT_render_snorm specification:
"For 8bit signed normalized fixed-point rendering surfaces, the
combination format RGBA and type BYTE is accepted. For a 16bit signed
normalized fixed point buffer, the combination RGBA and SHORT is
accepted.
OpenGL ES 3.1 specification:
"If G, B, or A values are not present in the internal format, they are
taken to be zero, zero, and one respectively."
Components: OpenGL ES
VK-GL-CTS issue: 1338
Affects: KHR-GLES3.packed_pixels*snorm
Change-Id: I48df036fc3da80a06e1adef32bd59dac5b551cec
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Nicolas Capens [Wed, 1 Aug 2018 21:42:48 +0000 (17:42 -0400)]
Test gl_FrontFacing with both GL_CCW and GL_CW.
glFrontFace(G_CW) should produce the inverse result of
glFrontFace(G_CCW):
OpenGL ES 3.0.5 spec:
"The built-in variable gl_FrontFacing is set to TRUE if the fragment is generated
from a front-facing primitive, and FALSE otherwise. For fragments generated
from triangle primitives, the determination is made by examining the sign of the
area computed by equation 3.6 of section 3.6.1 (including the possible reversal of
this sign controlled by FrontFace). If the sign is positive, fragments generated by
the primitive are front-facing; otherwise, they are back-facing."
Components: AOSP
Affects:
dEQP-GLES2.functional.shaders.builtin_variable.frontfacing
dEQP-GLES3.functional.shaders.builtin_variable.frontfacing
VK-GL-CTS Issue: 1334
Change-Id: I15d842055f789f8fa003e32eb70dbe3056c4b3f2
Lujin Wang [Tue, 28 Aug 2018 00:08:42 +0000 (17:08 -0700)]
Fix the memory stomp running *core.internalformat.texture2d.depth_stencil*
On QNX, we hit "Malloc Check Failed" and crash running CTS 3.2.5.0 with,
Test case 'KHR-GLES*.core.internalformat.texture2d.depth_stencil_unsigned_int_24_8_depth24_stencil8'..
Malloc Check Failed: :/builds/workspace/sdp700/build_aarch64/lib/c/alloc/dlist.c:1134
In InternalformatCaseBase::convertUInt_24_8(), two unsigned int data were modified
instead of one, which led to memory stomp and crash during the returning of function
InternalformatCaseBase::generateTextureData(). Rewrite function convertUInt_24_8()
to properly convert float color vec to unsigned_int_24_8_depth24_stencil8.
Affects:
KHR-GLES*.core.internalformat.texture2d.depth_stencil_unsigned_int_24_8_depth24_stencil8
Compoments: OpenGL
VK-GL-CTS issue: 1329
Change-Id: I95dfa2be272136e7ecf71b4ef49b43b90813f077
Ari Suonpaa [Tue, 4 Sep 2018 06:47:59 +0000 (09:47 +0300)]
Test render pass attachments not referenced by subpasses
Added tests where render pass has an attachment which is
not referenced by any subpass. The load/store ops and
initial/final layouts should be ignored and contents of
the attachment preserved.
New tests:
dEQP-VK.renderpass*.unused_attachment.*
Components: Vulkan
VK-GL-CTS issue: 1129
Change-Id: I539a382b99868b1c5e87ec78db2f00267d1b074d
Dzmitry Malyshau [Mon, 10 Sep 2018 00:40:54 +0000 (20:40 -0400)]
Test cube image blits with VK_IMAGE_CREATE_CUBE_COMPATIBLE flag.
The intent of blit tests with layer count = 6 was to test cubemap image support.
This PR adds the appropriate image creation flag for those tests.
Affects:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*
VK-GL-CTS issue: 1336
Components: Vulkan
Change-Id: I6ca0bb6905baebb4e6e6d3597e6e7c54d582473a
(cherry picked from commit
d8a05170a7ae7b6b284406f900b9609c7e71be14)
Dzmitry Malyshau [Mon, 10 Sep 2018 00:40:54 +0000 (20:40 -0400)]
Test cube image blits with VK_IMAGE_CREATE_CUBE_COMPATIBLE flag.
The intent of blit tests with layer count = 6 was to test cubemap image support.
This PR adds the appropriate image creation flag for those tests.
Affects:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*
VK-GL-CTS issue: 1336
Components: Vulkan
Change-Id: I6ca0bb6905baebb4e6e6d3597e6e7c54d582473a
James Helferty [Tue, 31 Jul 2018 19:12:08 +0000 (15:12 -0400)]
Scale texture sizes to fit within available memory
The change makes use of platform-specific information to scale the
dimensions of textures used by the advanced shader image load store
tests so they fit inside available memory.
Affects:
KHR-GL*.shader_image_load_store.advanced-copyImage
KHR-GL*.shader_image_load_store.advanced-memory-order
KHR-GL*.shader_image_load_store.advanced-sso-perSample
KHR-GL*.shader_image_load_store.advanced-sso-simple
KHR-GL*.shader_image_load_store.advanced-sso-subroutine
KHR-GL*.shader_image_load_store.advanced-sync-imageAccess2
Components: OpenGL
VK-GL-CTS issue: 1314
Change-Id: I06e7e4629b0e00f0ca5c152df56c09bbdcc05247
Liam Middlebrook [Tue, 11 Sep 2018 05:42:26 +0000 (22:42 -0700)]
Fix RobustnessVertexAccessInstance bounds check
The bounds check preformed by
VertexAccessInstance::isValueWithinVertexBufferOrZero() needs to round
the value rather than truncating it when encoding it. When
`value * 0x3FFu` is casted to a deUint32 it's possible for the result to
be truncated instead of rounded causing unintended test failures.
Affects: dEQP-VK.robustness.vertex_access.a2b10g10r10_unorm_pack32.draw.vertex_incomplete
Components: Vulkan
VK-GL-CTS issue: 1351
Change-Id: Ib034b3e29fdbbbd4670e2bbdedad07492abf5cd4
(cherry picked from commit
fed61233a802b5a8e7f6e634d0ef698e9155a94c)
Flisikowski [Thu, 12 Jul 2018 09:22:28 +0000 (11:22 +0200)]
New tests for the VK_EXT_external_memory_host extension
Components: Vulkan
VK-GL-CTS issue: 1301
New tests: dEQP-VK.memory.external_memory_host.*
Change-Id: I0220286b526d4b5b4f6ef30e8178b2d11f66772c
Alexander Galazin [Thu, 13 Sep 2018 06:58:24 +0000 (08:58 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: I1b7e9240617966ce68a7d25e35efa9c9b9def3c4
Slawomir Cygan [Thu, 6 Sep 2018 13:59:00 +0000 (15:59 +0200)]
Fix malformed assets, use DE_FATAL
Convert all malformed asserts like DE_ASSERT("...") to DE_FATAL.
Components: OpenGL, OpenGL ES, Vulkan
VK-GL-CTS Issue: 1294
Change-Id: I64631287e5005ef24dfcadef59baa5cc9aa45d74
Alexander Galazin [Mon, 10 Sep 2018 16:15:17 +0000 (18:15 +0200)]
Notice of withdrawal of Vulkan CTS 1.0.2.x
Components: Vulkan
Change-Id: If96d48b996577c5fec31474e3eaf7e665a390562
Treehugger Robot [Wed, 12 Sep 2018 22:45:15 +0000 (22:45 +0000)]
Merge "Merge remote-tracking branch 'aosp/master' into deqp-dev" into deqp-dev
Treehugger Robot [Wed, 12 Sep 2018 22:45:13 +0000 (22:45 +0000)]
Merge "Merge remote-tracking branch 'aosp/master' into deqp-dev" into deqp-dev
Chris Forbes [Wed, 12 Sep 2018 22:39:15 +0000 (15:39 -0700)]
Merge remote-tracking branch 'aosp/master' into deqp-dev
Change-Id: I58ed596f2ae5d18eefe80dc907b644b8d0ead4ee
Chris Forbes [Wed, 12 Sep 2018 22:35:24 +0000 (15:35 -0700)]
Merge remote-tracking branch 'aosp/master' into deqp-dev
Change-Id: Idabececfc10c43011d1ff566a8cc9776039ab6b7
Chris Forbes [Wed, 12 Sep 2018 21:39:13 +0000 (14:39 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev
Change-Id: Ide0cc071921295090980b85e5807ba31791d4bab
Liam Middlebrook [Tue, 11 Sep 2018 05:42:26 +0000 (22:42 -0700)]
Fix RobustnessVertexAccessInstance bounds check
The bounds check preformed by
VertexAccessInstance::isValueWithinVertexBufferOrZero() needs to round
the value rather than truncating it when encoding it. When
`value * 0x3FFu` is casted to a deUint32 it's possible for the result to
be truncated instead of rounded causing unintended test failures.
Affects: dEQP-VK.robustness.vertex_access.a2b10g10r10_unorm_pack32.draw.vertex_incomplete
Components: Vulkan
VK-GL-CTS issue: 1351
Change-Id: Ib034b3e29fdbbbd4670e2bbdedad07492abf5cd4
Julien Desprez [Wed, 12 Sep 2018 15:26:40 +0000 (08:26 -0700)]
Remove dependency on IStrictShardableTest
Interface is not used anymore.
Test: make cts, run cts-unit-tests
Bug:
112426228
Change-Id: I95ac293a4b8a585fe7bf8adea3d55c1faf6548e1
Alexander Galazin [Tue, 11 Sep 2018 06:57:18 +0000 (08:57 +0200)]
Update glslang
Components: Framework
Affects: dEQP-VK.*
VK-GL-CTS issue: 1339
Change-Id: I2abe3fe9ea500dde804251ff0962a3e99a7b2018
Chris Forbes [Mon, 10 Sep 2018 22:31:15 +0000 (15:31 -0700)]
[automerger skipped] [RESTRICT AUTOMERGE] Merge remote-tracking branch 'khronos/vulkan-cts-1.0.2' into oreo-mr1-cts-dev am:
df6a2ffc6e -s ours
am:
4eb31660f7 -s ours
Change-Id: Id4582490a4045249c6c2818ac51548d047460011
Chris Forbes [Mon, 10 Sep 2018 22:26:16 +0000 (15:26 -0700)]
[automerger skipped] [RESTRICT AUTOMERGE] Merge remote-tracking branch 'khronos/vulkan-cts-1.0.2' into oreo-mr1-cts-dev
am:
df6a2ffc6e -s ours
Change-Id: I5a7f593b5301a76a4e4a1d89c9d06a2a08a4fe50
Alexander Galazin [Mon, 10 Sep 2018 10:13:32 +0000 (12:13 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Change-Id: I10f5b76f1c39f764580eafcee4fc1f9e73113727
Slawomir Cygan [Fri, 31 Aug 2018 14:46:45 +0000 (16:46 +0200)]
Add Flat decorations to integer fragment shader inputs
According to spec fragment shader inputs that are signed
or unsigned integers must be decorated with Flat.
Components: Vulkan
VK-GL-CTS Issue: 1335
Affects: dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.input_output_int_16_to_16x2.*
Change-Id: I5aa4f5bf9623549af4fb74647f956b9cbf4e3751
Yabin Zheng [Fri, 31 Aug 2018 07:35:16 +0000 (15:35 +0800)]
Add specific RGB10A2 data for BlendHSLHue and BlendHSLSaturation
Some original input test data will cause divide by 0 issue. This issue
is not handled by spec, but the test should assure the valid data.
Affects: KHR-GLES31.core.blend_equation_advanced.*
VK-GL-CTS issue: 919
Components: OpenGL
Change-Id: I6278ed77de0a38aede7d840bac7b7ec57e869110
Jari Komppa [Fri, 25 May 2018 13:26:26 +0000 (16:26 +0300)]
Added test to check memory requirement invariance
Added a test that allocates random buffers and images, first in order
one by one, and then shuffled, verifying that the required memory
sizes match between these runs.
Image sizes, formats, allocation types and heap type requirements are
randomized.
The test depends on the supported image formats and available heap
types, so it is subtly different depending on the features the
driver supports. The goal for this test is to check for memory
requirement invariance, and thus it differs with the exact features
that are supported. The used features are printed in the log
for reference.
New tests:
dEQP-VK.api.invariance.random
Components: Vulkan
VK-GL-CTS issue: 1171
Change-Id: If869a72f6552174171d1f9bcce51e424ad8e8572
Jiayuan Ren [Tue, 14 Aug 2018 19:09:01 +0000 (12:09 -0700)]
Fix: rendering complete times not monotonic
We run into an intermittent issue that two neighboring
frames have the same rendering complete timestamp.
The timers will always have finite granularity.
The timestamp is in nanosecond but the timer producing
these timestamps might not actually be able to produce
timestamps at 1ns resolution. When the timer used for
these events has not enough granularity, events that
happen very quickly right after one another will appear
as if they appear at the same point in time.
Two neighboring frames have the same timestamp is allowed.
Components: AOSP
VK-GL-CTS issue: 1311
Bug: b/
112778381
Affects:
dEQP-EGL.functional.get_frame_timestamps.*
(cherry picked from commit
59b6ba9bb2b8a280a30e931fb9b69f492650d14d)
Change-Id: I10c9f7d50d079fcad000baee028a97fea5b69c3c
Slawomir Cygan [Thu, 27 Jul 2017 14:16:37 +0000 (16:16 +0200)]
Correct test group name ending in "_"
Components: Vulkan
Affects:
dEQP-VK.pipeline.multisample_interpolation.sample_interpolate_at_single_sample*
VK-GL-CTS issue: 1337
Change-Id: Id4b2bd4184c87bd35d88c2632ce31e5f7b31bfbb
Alexander Galazin [Thu, 6 Sep 2018 16:54:39 +0000 (18:54 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/master
Change-Id: Ic536adcefd24b9624863ce2894391238f4b4fb34