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
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
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
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
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
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
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
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
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
Alexander Galazin [Thu, 6 Sep 2018 16:35:42 +0000 (18:35 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: If13d31edfaa41aab48bbca57024722276b86a511
Alexander Galazin [Thu, 6 Sep 2018 16:18:10 +0000 (18:18 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I717b207ec5642fb2f5a7deb9a91e52da7b3c862f
Alexander Galazin [Thu, 6 Sep 2018 15:48:31 +0000 (17:48 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I5a095ab6fddfaa9ce687f8627b58ec12176ba660
Jeff Bolz [Fri, 31 Aug 2018 02:42:54 +0000 (21:42 -0500)]
Handle denorm flush to negative zero in unpackhalf2x16 tests.
Whether input fp16 values are flushed to zero is implementation
dependent. However, negative denorm values can be flushed to negative
zero and the logic did not handle that case.
Affects: dEQP-VK.glsl.builtin.function.pack_unpack.unpackhalf2x16*
Component: Vulkan
VK-GL-CTS issue: 1341
Change-Id: I2cd4a68cb5e498cd714a7e55b27ae4bc05ccde2d
Matthew Netsch [Fri, 13 Jul 2018 15:10:54 +0000 (11:10 -0400)]
Fixes tessellation triangle check
Tessellators may produce inner vertices positioned
on the edge of a primitive when used with fractional
odd spacing and the inner tessellation level is one.
Point mode doesn't factor into this rule
Components: Vulkan
VK-GL-CTS Issue: 1273
Affects:
dEQP-VK.tessellation.primitive_discard.*
Change-Id: Ida8c75d4275403eaae8b52fe55f3ed9e61dd2d6e
Toni Merilehti [Thu, 16 Aug 2018 11:54:02 +0000 (14:54 +0300)]
Fix result checking in multisample resolve tests
Test cases now return the correct test status based on the average
resolved values in attachments. Verifying the result also adjusts
the threshold values depending on the format component sizes and
converts the non-linear sRGB format values to linear before verifying
the result.
Affects:
dEQP-VK.renderpass.*.multisample_resolve.*
Components: Vulkan
VK-GL-CTS Issue 1306
Change-Id: I1ced03a1839221d5a76292d582155825c507923d
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
Treehugger Robot [Wed, 5 Sep 2018 07:49:47 +0000 (07:49 +0000)]
Merge "Suppress -Wimplicit-fallthrough."
Piotr Byszewski [Thu, 16 Aug 2018 06:43:03 +0000 (08:43 +0200)]
Simultaneous depth+stencil components blit test
Previously blit_image tests for depth and stencil components
were done separately - in one tests half of regions had depth
bit set and the other half stencil bit. This change modifies
those tests by adding additional blit regions that have both
DS bits set.
Components: Vulkan
VK-GL-CTS issue: 1303
Affects:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.depth_stencil.*
Change-Id: I38dec5c7e32678437126fb32ecf02c7329618094
Piotr Byszewski [Thu, 23 Aug 2018 13:24:13 +0000 (15:24 +0200)]
Ensure there's no KHX extensions
This change adds test that verifies if implementations don't
expose KHX extensions for neither instance nor device.
Components: Vulkan
VK-GL-CTS issue: 1258
Affects:
dEQP-VK.api.info.device.no_khx_extensions
Change-Id: Ib8020cadbe1714d9854d3a18969a6850ebd56f08
Yabin Zheng [Mon, 13 Aug 2018 09:25:29 +0000 (17:25 +0800)]
Check the bits of channel when calling glCopyTexImage2D
This test copies some data from render target to a texture by
glCopyTexImage2D command. According to the GLES3.2 spec, "An
INVALID_OPERATION error is generated if the component sizes of
internalformat do not exactly match the corresponding component sizes of
the source buffer's effective internal format." when executing the
glCopyTexImage2D command.
Because GLES3.2 spec does not force GL_RGB10 to be a renderable format,
so in a test case, if GL_RGB10 isn't renderable, then the render target
format will be GL_RGBA8, but the texture format is GL_RGB10. So this
behavior conflicts with the spec.
I think we can check the status whether the component sizes of format
will match before calling glCopyTexImage2D.
If the GL_RGB10 is renderable by some companies, then it will call the
gl.copyTexImage2D command directly(skip the checking logical because of
completed FBO). If GL_RGB10 isn't renderable by other companies, then it
will check the corresponding component sizes of buffer between source
and dest(because of incompleted FBO).
Components: OpenGL
VK-GL-CTS issue: 1307
Affects: KHR-GLES2.core.internalformat.copy_tex_image.*
Change-Id: I91e6b6674506f2709f97796a541e203bd052030b
John Anthony [Tue, 4 Sep 2018 23:53:46 +0000 (16:53 -0700)]
Merge changes from topic "p-renderpass2" into pie-cts-dev
am:
79749eabc6
Change-Id: I0ddba5851971235127ae29b7047ef095ee6b2b16
Treehugger Robot [Tue, 4 Sep 2018 23:23:18 +0000 (23:23 +0000)]
Merge changes from topic "p-renderpass2" into pie-cts-dev
* changes:
Incorrect enum values for VK_KHR_create_renderpass2
Allowed device extensions list is missing entry
Tests for VK_KHR_create_renderpass2
Chih-Hung Hsieh [Tue, 4 Sep 2018 23:14:20 +0000 (16:14 -0700)]
Suppress -Wimplicit-fallthrough.
-Wimplicit-fallthrough will be enabled globally.
Test: build with global -Wimplicit-fallthrough.
Change-Id: I0f1dea676f1cf551339036767f141aa5717cea3e
Alexander Galazin [Fri, 31 Aug 2018 09:16:21 +0000 (12:16 +0300)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: I5a798ad268b27984038160cf645fc162260b069b
Alexander Galazin [Fri, 31 Aug 2018 07:52:20 +0000 (10:52 +0300)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I7e0e51ad6bbdebe2c0067cedbb8e0d3bca177fad
Petros Bantolas [Wed, 18 Jul 2018 10:19:04 +0000 (11:19 +0100)]
Fix subpixel precision for line geometry generation
Line geometry generation for rasterization tests wasn't taking the HW
subPixelPrecisionBits limit into account. Modified the triangle creation
routines to round those coordinates down to the driver provided
precision.
Affects:
dEQP-VK.rasterization.*line*
dEQP-GLES*.functional.rasterization.*line*
Components: Framework
VK-GL-CTS issue: 1274
Change-Id: I54af2f9606372bead2a8c7238588374101f80e55
Alexander Galazin [Thu, 30 Aug 2018 12:35:21 +0000 (14:35 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: I692ba691f3fb23aa09a722d12f9cc9158d561457
Alexander Galazin [Thu, 30 Aug 2018 11:51:15 +0000 (13:51 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: I0b5a54a89154a5877a22244870d39149bf05b28b
Alexander Galazin [Thu, 30 Aug 2018 11:51:13 +0000 (13:51 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Change-Id: Ia9cfc9fa2550d981cfa3e3317253123ed061f47e
Jim Hauxwell [Tue, 28 Aug 2018 16:33:48 +0000 (17:33 +0100)]
Fix invalid combinations for texture/copy on ES2 driver
OES_packed_depth_stencil describes the valid combinations available.
Texturing is only valid from it when OES_depth_texture is also present.
ES3 added depth texturing, but used different tokens than the initial
extension.
Affects:
KHR-GLES2.core.internalformat.texture2d.
depth_stencil_unsigned_int_24_8_depth24_stencil8
KHR-GLES*.core.internalformat.texture2d.
depth_stencil_unsigned_int_24_8_depth_stencil
Components: OpenGL
VK-GL-CTS issue: 1261
Change-Id: I91262c2c7eb71c9d3ff1eb59931227132b1828f9
Alexander Galazin [Thu, 30 Aug 2018 07:18:37 +0000 (09:18 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/master
Change-Id: I4c2cee91e239dd2b76c2e3a11148aa51d966f7ed
Alexander Galazin [Thu, 30 Aug 2018 07:18:34 +0000 (09:18 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/vulkan-cts-1.1.2
Change-Id: If4c00f790e935ce2a38709a99745acff6d1ef5f8
Krzysztof Kosiński [Fri, 22 Jun 2018 18:01:17 +0000 (11:01 -0700)]
Add wide color tests for RGB888 surfaces.
This also removes some duplication in the test creation function.
Change-Id: If0541906e510b3c2191a3e9ca8be3eb2529a0475
Components: EGL
Affects: dEQP-EGL.functional.wide_color
Yabin Zheng [Tue, 28 Aug 2018 09:09:24 +0000 (17:09 +0800)]
Modify the negative test related to glShaderBinary
Input 0 to binary parameter of glShaderBinary will lead to GL_INVALID_VALUE
accoridng to the GLES3.2 spec "An INVALID_VALUE error is generated if the
data pointed to by binary does not match the specified binaryformat."
The spec doesn't point out the order when we input more than one invalid
parameters. Add more conditions when checking the returned error messages.
Components: OpenGL
Affects: dEQP-GLES2.functional.negative_api.shader.shader_binary
VK-GL-CTS issue: 1331
Change-Id: I4c29a88175acf78f7a90262914890b9a53dbd3b5
James Helferty [Tue, 14 Aug 2018 20:56:59 +0000 (16:56 -0400)]
Free framebuffer objects after use.
Avoid leaking framebuffer objects in verifyLookupTextureData methods.
Affects:
KHR-GL4*.sparse_texture_clamp_tests.SparseTextureClampLookupColor
KHR-GL4*.sparse_texture_clamp_tests.SparseTextureClampLookupResidency
Components: OpenGL
VK-GL-CTS issue: 1312
Change-Id: I12aedd34fa80dbd9061ac174ce622a976019396d