Tony Zlatinski [Fri, 25 May 2018 21:57:20 +0000 (16:57 -0500)]
AHardwareBuffer make the system API dynamic
Instead of asserting and crashing the tests, when
the AHardwareBuffer handle is not supported, throw an exception:
"Platform doesn't support Android Hardware Buffer handles"
Move all of the AHB system APIs from implicit to dynamically loaded
and encapsuate those within the AndroidHardwareBufferExternalApi class.
Dynmaically probing and loading the AHB related API allows for run-time
selection of the symbols and to determine if AHB APIs are supported or not.
This, also, allows for the CTS to always be built against NDK API26/28.
After this change, we can make the default NDK API as API26, since
this change would allow for the CTS to work on Android APIs 21-25,
as well as the newer API versions of the NDK.
In addition, moved all of the AHB related interfaces to one place:
vktExternalMemoryUtil.cpp.
Affects:
dEQP-VK.api.external.memory.android_hardware_buffer.*
Components: Vulkan
VK-GL-CTS issue: 1192
Change-Id: I5145eff2fbcf084bfc8ff42751102979f9a28d72
Chris Forbes [Tue, 5 Jun 2018 01:15:25 +0000 (18:15 -0700)]
Add tests for compute pipeline derivatives
Initial touch-tests for CreateComputePipelines using a base pipeline by
index and by handle. I intend to add more over time, but this is enough
to expose trouble in some implementations.
VK-GL-CTS: 1220
Components: Vulkan
New Tests: dEQP-VK.pipeline.derivative.*
Change-Id: I693f5be8a2b1087b0a2eb89e1110b1c671cbd5dc
Stephen Clarke [Fri, 15 Jun 2018 13:09:03 +0000 (14:09 +0100)]
Allow fp16 denorm inputs to be flushed to zero.
Added a new version of Compare16BitFloat for an fp16 input and a float
result. Previously, the code was using the version for a float input
with an fp result and switching the original and returned values.
But this function is not symmetric: e.g. a denorm input and zero result
should be allowed, but a zero input and denorm result should not be
allowed.
Also removed the rounding modes parameter, since conversion from fp16
to float is exact.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16struct_to_32struct.*
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_32struct_to_16struct.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.uniform_16struct_to_32struct.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.uniform_32struct_to_16struct.*
Components: Vulkan
VK-GL-CTS issue: 1219
Change-Id: I96d01bb428b550de1e86a601b929d08b3131870d
Piers Daniell [Thu, 14 Jun 2018 19:58:05 +0000 (13:58 -0600)]
Fix validation errors in draw tests
Many of the draw tests were causes validation errors
because the VkMappedMemoryRange.size parameter was not
a multiple of VkPhysicalDeviceLimits::nonCoherentAtomSize.
In all cases for these tests the size can be set to
VK_WHOLE_SIZE to avoid the validation error. VK_WHOLE_SIZE
can be used since in all cases the test flush the whole
mapped range.
Affects: dEQP-VK.draw.*
Change-Id: Idfa664ed03a1b0f55b356a443a7bc309ca7fae20
Components: Vulkan
Ari Suonpaa [Mon, 11 Jun 2018 13:14:41 +0000 (16:14 +0300)]
Test cross invocation communication
Added a test where tessellation control shader writes to output varyings
using multiple invocations. Both per vertex and per patch output is
tested. Also fixed validation error caused by an invalid stage mask.
Affects:
dEQP-VK.tessellation.shader_input_output.*
New tests:
dEQP-VK.tessellation.shader_input_output.cross_invocation_per_*
Components: Vulkan
VK-GL-CTS issue: 1207
Change-Id: If3416193a4a020ad4f3efcbfaae58d2bca23653e
Alexander Galazin [Thu, 21 Jun 2018 08:33:48 +0000 (10:33 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: I1bd7a59a50e3cdda92da25ee389b31d8c3d0b189
Alexander Galazin [Thu, 21 Jun 2018 08:00:05 +0000 (10:00 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Iea6c9a56605b4c4407513face9be7fd4f61d3c83
Alexander Galazin [Wed, 13 Jun 2018 12:33:29 +0000 (14:33 +0200)]
Remove undefined EGL test cases
Affects:
dEQP-EGL.functional.reusable_sync.invalid.wait_server_invalid_flag
dEQP-EGL.functional.reusable_sync.valid.wait_server
VK-GL-CTS issue: 1196
Change-Id: I5f2484242139a2589a47413076555fba9fc1fa30
Chris Forbes [Tue, 12 Jun 2018 18:03:59 +0000 (11:03 -0700)]
Fix protected memory buffer tests to do proper operation
Update and copy variants of these tests were doing the FILL operation
instead.
Change-Id: Iede9e71f50c1d2d5699b35ad9b86fc6237714977
Components: Vulkan
Affects: dEQP-VK.protected_memory.buffer.*
VK-GL-CTS: 1215
(cherry picked from commit
39fbe90f21cb24b46e1bbc2d49e75604453977c0)
Chris Forbes [Tue, 12 Jun 2018 18:03:59 +0000 (11:03 -0700)]
Fix protected memory buffer tests to do proper operation
Update and copy variants of these tests were doing the FILL operation
instead.
Change-Id: Iede9e71f50c1d2d5699b35ad9b86fc6237714977
Components: Vulkan
Affects: dEQP-VK.protected_memory.buffer.*
VK-GL-CTS: 1215
Chris Forbes [Thu, 14 Jun 2018 06:23:02 +0000 (23:23 -0700)]
Separate out debug information in Android build
We don't want to place the debug information in the APK, but we should
keep it around on the host so that the debugger can work.
In a "normal" Android app packaging process this is done for us by
gradle, but we roll our own. Do it as a CMake post-build step instead.
Change-Id: I59b13659d66333a06ce60b6057db19b39c067f53
Components: Framework
VK-GL-CTS: 1194
Gary Sweet [Wed, 6 Jun 2018 12:35:43 +0000 (13:35 +0100)]
Don't assume sampling is allowed on linear-tiled YCbCr
Linear-tiled formats do not have to support sampling.
The api.image_format_properties tests were checking that
sampling was supported for YCbCr in both optimal and linear
tiling.
Affects:
dEQP-VK.api.info.image_format_properties.*.linear.*
Components: Vulkan
VK-GL-CTS issue : 1200
Change-Id: Id2c2aafaca66fe25ecee243f026315a87d3d7abf
Ari Suonpaa [Tue, 29 May 2018 06:43:22 +0000 (09:43 +0300)]
Fix invalid block layouts
Upcoming update in SPIR-V validator checks correctness of block
layouts. This change fixes the errors in 16bit storage tests found
by the new validation rules.
Affects:
dEQP-VK.spirv_assembly.instruction.*.16bit_storage.*
Components: Vulkan
VK-GL-CTS issue: 1184
Change-Id: I1794fdefe044c6e256e189ab5a21c69a69eeb58e
Vikram Kushwaha [Thu, 24 May 2018 20:57:44 +0000 (13:57 -0700)]
Use local binding for renderImage layout change
As implementations may not support VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT
access, a layout change with multi device binding can not be assumed in
all cases.
Affects:
dEQP-VK.device_group.sfr*
Components: Vulkan
VK-GL-CTS issue: 1193
Change-Id: I315ff69fc9eaac3b090a57989bd0c0d177fcbe7c
Paavo Pessi [Fri, 4 May 2018 12:26:40 +0000 (15:26 +0300)]
Test omitting blend state with unused attachments
This test creates a render pass with a single color attachment and two
subpasses. The first subpass uses the color attachment and creates a
graphics pipeline with a valid color blend state. The second subpass
sets the color attachment to VK_ATTACHMENT_UNUSED and creates a
graphics pipeline without a color blend state.
A new helper function was added for creating a graphics pipeline.
New tests:
dEQP-VK.renderpass.*.simple.color_unused_omit_blend_state
Components: Vulkan, Framework
VK-GL-CTS issue: 1115
Change-Id: I1d95dab7db5727ded22fe84aca5959110949f581
Pierre Tsai [Fri, 25 May 2018 20:40:26 +0000 (16:40 -0400)]
Test does not clean up all references
Affects:
KHR-GL46.texture_repeat_mode.*
At the end of the test, resultTextureId needs to be
cleaned up properly, by the context.
Components: OpenGL
VK-GL-CTS issue: 1191
Change-Id: I96d45baaef7345c1c5b4a52ced223c20ddfd5735
Alexander Galazin [Mon, 11 Jun 2018 07:45:59 +0000 (09:45 +0200)]
Update glslang, SPIR-V Tools/Headers
Components: Framework
Change-Id: I8dbcc9023abf55882df75aded4342b21c857458f
Alexander Galazin [Mon, 11 Jun 2018 08:47:30 +0000 (10:47 +0200)]
Update GLES mustpass
Change-Id: I1d6dcd0f7ebdf98e1fbb706269ede5f8d1e37d2f
Nicolas Capens [Fri, 16 Mar 2018 13:51:47 +0000 (09:51 -0400)]
Add texture specification test for GL_OES_texture_half_float.
Google bug: b/
74609191
Components: AOSP
Affects: dEQP-GLES2.functional.texture.specification.*
Change-Id: I85aec3469872f2733f528ef7902427e9e87935e7
Prantit Lokre [Thu, 17 May 2018 18:41:16 +0000 (11:41 -0700)]
Fixes ycbcr copy tests to ignore padding
Copies are not expected to preserve the bits
in the padding for formats like R10X6.
Vulkan issue: 1122
Components: Vulkan
Affects:
dEQP-VK.ycbcr.copy.*
Change-Id: If617a32fbd4c690a0ef48e6831405fc674732865
Chris Forbes [Wed, 30 May 2018 16:26:57 +0000 (09:26 -0700)]
Don't rely on unspecified argument evaluation order in atomic swap tests
Bug: b/
78779994
Test: dEQP-VK.protected_memory.ssbo.ssbo_atomic.fragment.compswap.random.*
VK-GL-CTS: 1198
Components: Vulkan
Change-Id: Ifba8940745c28a32ca631beb374394a5e3fe508b
(cherry picked from Android commit
51e0000bcde19cee3c0e4686c0a3caec121b3c42)
Caio Marcelo de Oliveira Filho [Wed, 9 May 2018 22:14:54 +0000 (15:14 -0700)]
Add test for VK_EXT_shader_stencil_export
The extension allows fragment shader to output a reference value for
the pixel. The test uses a first subpass to set reference values based
on position and VK_STENCIL_OP_REPLACE to write those to the stencil
buffer. Then a second subpass will draw to a color buffer using the
generated stencil.
A new overload for addFunctionCaseWithPrograms() was added to the
framework.
New tests:
dEQP-VK.pipeline.shader_stencil_export.op_replace
Components: Framework, Vulkan
VK-GL-CTS issue: 1029
Change-Id: Ic2c2f9ebe33c8575e1d6ccb20b2435aadc999b84
Mika Väinölä [Thu, 3 May 2018 07:25:51 +0000 (10:25 +0300)]
Fix various GCC 8 Warnings
Remove unnecessary parentheses and ignored type qualifiers on cast.
Add breaks and returns to suppress fallthrough warnings. Catch
tcu::NotSupportedError by reference. Change some typedefs to fix
casts between incompatible function types. Clearing tcu::Vec4 with
memset caused warnings.
Affects: *
Components: Framework, OpenGL, Vulkan
VK-GL-CTS issue: 1160
Change-Id: Iffb9df16b29e02df2ec5610afb6793fba51cc33d
Alexander Galazin [Fri, 1 Jun 2018 09:22:26 +0000 (11:22 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: I80cba075059ad393b8742838e1ae4a5cfe0302ea
Alexander Galazin [Fri, 1 Jun 2018 09:22:24 +0000 (11:22 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.5 into vk-gl-cts/master
Change-Id: I3b5f0d071852a19deae0e3ccc317482db4eb444b
Alexander Galazin [Fri, 1 Jun 2018 09:22:21 +0000 (11:22 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5
Change-Id: Ie074683ba2b3818d0ceff54719c40e259deb3e71
Chris Forbes [Tue, 29 May 2018 19:26:19 +0000 (12:26 -0700)]
Request required 16bit storage features in UConvert/SConvert tests
These tests require specific features within the 16bit storage extension
Change-Id: I573b8ca69209ec36b3c249f5b9a638d4e7743209
Components: Vulkan
Bug: b/
78779994
VK-GL-CTS: 1195
Affects: dEQP-VK.spirv_assembly.instruction.compute.*
(cherry picked from Android commit
20426c97899d621fba9bcbae9374ec5439beedd6)
Juan A. Suarez Romero [Mon, 14 May 2018 15:24:04 +0000 (15:24 +0000)]
Skip BC/DXT formats in Texture3D tests
These formats only supports 2D images.
Affects:
KHR-GLES2.texture_3d.compressed_texture.negative_compressed_tex_image
KHR-GLES2.texture_3d.compressed_texture.negative_compressed_tex_sub_image
Components: OpenGL
VK-GL-CTS issue: 1163
Change-Id: I806dccfdbb2969b51c0ee9a1010c04107154733a
(cherry picked from commit
a0b8363a7837546c73e4d30a6c6d37da21ea8645)
Jari Komppa [Fri, 6 Apr 2018 19:53:29 +0000 (22:53 +0300)]
Enable shader cache by default
This change flips the command line option for the shader cache to be
enabled by default.
The change also incorporates shader cache truncation, which is enabled
by default. This resets the shader cache on the start of a CTS run. For
more performance the option can be disabled so the shader cache is used
across CTS runs, but this may lead to very large shader cache files over
time.
Affects:
dEQP-VK.*
Components: Framework, Vulkan
VK-GL-CTS issue: 899
Change-Id: Ia1bc8c932b6b280e2815f7de7f6e715b0e4edb27
Dae Kim [Wed, 30 May 2018 12:55:30 +0000 (13:55 +0100)]
Added PointSize in shader used for drawing points
A SPIR-V assembly shader with undefined PointSize was being used with
point list topology.
Affects:
dEQP-VK.subgroups.*
Components: Vulkan
VK-GL-CTS issue: 1197
Change-Id: I2d38d367d413e205e00b32cdd96b8ca3ecf6eda4
Alexander Galazin [Wed, 30 May 2018 10:28:18 +0000 (12:28 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: Iab9fd83b7c630343d12fa16b1c09bf4cd3b67302
Mike Schuchardt [Tue, 1 May 2018 22:45:44 +0000 (16:45 -0600)]
MacOS WSI test support
Adds TYPE_MACOS to WSI framework to enable dEQP-VK.wsi.macos.* tests.
Adds WSI integration to tcu::osx::VulkanPlatform using an Objective-C++
wrapper around a native NSView subclass backed by a CAMetalLayer.
Affects:
dEQP-VK.wsi.macos.*
Components: Framework, Vulkan
Change-Id: I53b487ec6040e88b125d168be7e8c3408f44d959
Juan A. Suarez Romero [Wed, 16 May 2018 11:01:52 +0000 (11:01 +0000)]
GL_SRG8_ALPHA8 also supported in OpenGL ES 3.0+
dEQP-GLES2.functional.fbo.completeness.renderable.texture.color0.srgb8_alpha8
assumes that using GL_SRGB8_ALPHA8 in GLES2 should fail unless proper
extensions are supported.
But the OpenGL ES context created can be either 2.0 or an upper version,
and upper versions (3.0+) supports this format without extensions.
Thus, if OpenGL ES 3.0+ context is returned, this test should assume
that rendering is possible.
This is an extension of fix done in Change-ID
Ibb95736959ff9d5b0ff972ccf3983abc98795be3.
Affectd tests:
dEQP-GLES2.functional.fbo.completeness.renderable.texture.color0.srgb8_alpha8
Components: OpenGL
VK-GL-CTS issue: 1137
Change-Id: I733a8595b1eba7756787cde4a6bca2391dc345d7
(cherry picked from commit
dd951adf61b3b6ad6cdab92b26b00c6931235681)
Jari Komppa [Tue, 17 Apr 2018 09:51:08 +0000 (12:51 +0300)]
Integrated SPIRV-Tools-opt to conformance test
Added optional shader optimization pass to all shaders in the
conformance test. The optimizer is disabled by default, but can
be enabled through a command-line parameter.
Due to the nature of optimizations and certain hand-crafted
SPIR-V tests, the optimizer MUST NOT be enabled by default, because
it will alter the tests and possibly eliminate the things that
are being tested.
Running with the optimizer for testing is, however, recommended
since it can expose bugs in drivers. Only some optimization recipes
are currently supported, but adding new ones is relatively simple.
Affects:
None by default, most tests if enabled.
Components: Framework, Vulkan
VK-GL-CTS issue: 92
Change-Id: I74996448fda1f4e11a9b16bba8c44561723a1e4e
Boris Zanin [Wed, 23 May 2018 09:25:05 +0000 (11:25 +0200)]
Fix UConvert validation error in mul_sdiv tests
With new spirv-tools the SPIR-V validator enforces type check
requirement in OpUConvert, making this test to fail.
Replace UConvert with SConvert for signed tests.
Update SPRV-Tools.
Update tests:
* dEQP-VK.spirv_assembly.type.*high_part_zero*
Components: Vulkan
VK-GL-CTS issue: 1186
Change-Id: I73172eda179148d56aa104eb35cdc5afc25a9953
Jeff Bolz [Sat, 17 Mar 2018 17:30:36 +0000 (12:30 -0500)]
New tests for VK_NV_shader_subgroup_partitioned
Forked from subgroup arithmetic tests, they are mostly the same but with different shaders
New Tests: dEQP-VK.subgroups.partitioned.*
Components: Vulkan
Change-Id: I74e4f9cf716cf0d7293e4259dedf116af750347a
Alexander Galazin [Mon, 28 May 2018 08:22:48 +0000 (10:22 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: Ica9b46f19f9c3b45d0553db9deec82c696f3033a
Alexander Galazin [Mon, 28 May 2018 08:15:07 +0000 (10:15 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: If0ab08c681fd90e94d179ded910a531dcc518861
Slawomir Cygan [Wed, 18 Apr 2018 13:56:37 +0000 (15:56 +0200)]
Fix VkPipelineLayout use after free
The test destroys pipeline layout, used to create the graphics pipeline,
before the command buffer using this pipeline is recorded.
This is invalid according to spec:
"A VkPipelineLayout object must not be destroyed while any
command buffer that uses it is in the recording state."
Components: Vulkan
VK-GL-CTS Issue: 1134
Affects:
dEQP-VK.draw.differing_interpolation.*
Change-Id: I2dd692cfb69afaf0b9d6e8d8a29b86b945b7eaba
Jari Komppa [Thu, 17 May 2018 10:27:30 +0000 (13:27 +0300)]
Made glsl loop tests a bit more robust
The way the loop test suite checks for a correct result depends on
rotating the input vector's components, giving only 4 possible results.
In other words, a subtly failing implementation still had a 1 in 4
chance of passing the test.
This change increments the vector on each iteration and then decrements
the vector after the loop by the number of expected loop iterations. The
correctness test remains unchanged, but if the number of iterations does
not match the expected, the resulting vector will have a wrong value.
Also added tests where loops are within different control flow blocks,
and tests that contain a do..while block which should never loop unless
the loop variable is off by one.
Affects:
dEQP-VK.glsl.loops.*
New tests:
dEQP-VK.glsl.loops.special.*.pre_fallthrough_vertex
dEQP-VK.glsl.loops.special.*.pre_fallthrough_fragment
dEQP-VK.glsl.loops.special.*.post_fallthrough_vertex
dEQP-VK.glsl.loops.special.*.post_fallthrough_fragment
dEQP-VK.glsl.loops.special.*.dowhile_trap_vertex
dEQP-VK.glsl.loops.special.*.dowhile_trap_fragment
dEQP-VK.glsl.loops.special.*.ifblock_vertex
dEQP-VK.glsl.loops.special.*.ifblock_fragment
dEQP-VK.glsl.loops.special.*.elseblock_vertex
dEQP-VK.glsl.loops.special.*.elseblock_fragment
Components: Vulkan
VK-GL-CTS issue: 1166
Change-Id: I266537d6b5816a9e574b5b99061a4413d6493f41
Mika Väinölä [Wed, 28 Feb 2018 14:51:05 +0000 (16:51 +0200)]
Fix validation errors in synchronization tests
Change a pipeline stage flag to one supported by
VK_ACCESS_COLOR_ATTACHMENT_READ_BIT and initialize
a VkExternalSemaphoreProperties struct.
Affects:
dEQP-VK.synchronization.cross_instance.*
dEQP-VK.synchronization.internally_synchronized_objects.
pipeline_cache_graphics
Components: Vulkan
VK-GL-CTS issue: 1046
Change-Id: I537933539b616c14942791accee689db40294dba
Alexander Galazin [Fri, 18 May 2018 09:51:14 +0000 (11:51 +0200)]
Fix multiview mutlisample tests
The multiview multisample tests used VK_SAMPLE_COUNT_2_BIT
without checking that it is supported.
The minimum requirement is to support 4-bit and 1-bit only.
Affects: dEQP-VK.multiview.multisample.*
Components: Vulkan
VK-GL-CTS issue: 1152
Change-Id: Id999cbb42a5961cca1f89c709c1f0bc8d6124645
Juan A. Suarez Romero [Wed, 16 May 2018 11:01:52 +0000 (11:01 +0000)]
GL_SRG8_ALPHA8 also supported in OpenGL ES 3.0+
dEQP-GLES2.functional.fbo.completeness.renderable.texture.color0.srgb8_alpha8
assumes that using GL_SRGB8_ALPHA8 in GLES2 should fail unless proper
extensions are supported.
But the OpenGL ES context created can be either 2.0 or an upper version,
and upper versions (3.0+) supports this format without extensions.
Thus, if OpenGL ES 3.0+ context is returned, this test should assume
that rendering is possible.
This is an extension of fix done in Change-ID
Ibb95736959ff9d5b0ff972ccf3983abc98795be3.
Affectd tests:
dEQP-GLES2.functional.fbo.completeness.renderable.texture.color0.srgb8_alpha8
Components: OpenGL
VK-GL-CTS issue: 1137
Change-Id: I733a8595b1eba7756787cde4a6bca2391dc345d7
Chris Forbes [Sat, 19 May 2018 01:50:47 +0000 (18:50 -0700)]
Fix barriers in dEQP-VK.api.fill_and_update_buffer.*
Change-Id: Icb7ac6167e358556178c864884e7c7c53afd455c
Affects: dEQP-VK.api.fill_and_update_buffer.*
Components: Vulkan
VK-GL-CTS: 1177
Chris Forbes [Fri, 18 May 2018 22:50:39 +0000 (15:50 -0700)]
Add missing self-dependency in color->input self-dep tests
Change-Id: Ibf400c91bbc59abb49795078804e35e50c59c7db
VK-GL-CTS: 1181
Components: Vulkan
Affects: dEQP-VK.renderpass.*
Chris Forbes [Fri, 18 May 2018 20:49:26 +0000 (13:49 -0700)]
Account for noncoherent atom size in renderpass memory flush
Change-Id: Ibffb14fcdbaba5e9fbeb8ba9d9aba9cc59db4b17
Components: Vulkan
Affects: dEQP-VK.renderpass.*
VK-GL-CTS: 1180
Chris Forbes [Fri, 18 May 2018 17:46:27 +0000 (10:46 -0700)]
Remove spurious TS/GS stage bits from renderpass test barriers
None of this code actually uses these stages, and we weren't checking
whether they were supported. This was invalid on devices that don't
support the TS/GS stages.
Change-Id: I06cd1df95f52060150e36d28bc0525f2d398aef0
VK-GL-CTS: 1180
Components: Vulkan
Affects: dEQP-VK.renderpass.*
Yabin Zheng [Wed, 21 Mar 2018 01:38:40 +0000 (09:38 +0800)]
Fix gl_FragData[u_index] test in OpenGL ES 3.x context
The test is valid if GL_EXT_draw_buffers or GL_NV_draw_buffers
is supported
Affects:
dEQP-GLES3.functional.shaders.fragdata.draw_buffers
Components: OpenGL
VK-GL-CTS issue: 1168
Change-Id: I44b41330ca37614920ed1cb0d6d021a8bc1e0fa3
Paavo Pessi [Thu, 19 Apr 2018 11:47:40 +0000 (14:47 +0300)]
Add SPIR-V tests for 16, 32 and 64-bit integers
New tests were added to test various SPIR-V bit operations,
comparators, constants and initializers with signed and unsigned
integers of different width.
In bit field and shift operations some of the parameters are not
required to have the same bit width as Base and Result. This kind of
operations are tested with all possible combinations of result type
and parameter bit width.
The result type of bit field operations is always a 32-bit integer.
New tests:
dEQP-VK.spirv_assembly.type.*.shift_right_logical*
dEQP-VK.spirv_assembly.type.*.shift_right_arithmetic*
dEQP-VK.spirv_assembly.type.*.shift_left_logical*
dEQP-VK.spirv_assembly.type.*.bitwise_or*
dEQP-VK.spirv_assembly.type.*.bitwise_xor*
dEQP-VK.spirv_assembly.type.*.bitwise_and*
dEQP-VK.spirv_assembly.type.*.not*
dEQP-VK.spirv_assembly.type.*.iequal*
dEQP-VK.spirv_assembly.type.*.inotequal*
dEQP-VK.spirv_assembly.type.*.ugreaterthan*
dEQP-VK.spirv_assembly.type.*.sgreaterthan*
dEQP-VK.spirv_assembly.type.*.ugreaterthanequal*
dEQP-VK.spirv_assembly.type.*.sgreaterthanequal*
dEQP-VK.spirv_assembly.type.*.ulessthan*
dEQP-VK.spirv_assembly.type.*.slessthan*
dEQP-VK.spirv_assembly.type.*.ulessthanequal*
dEQP-VK.spirv_assembly.type.*.slessthanequal*
dEQP-VK.spirv_assembly.type.*.bit_field_insert*
dEQP-VK.spirv_assembly.type.*.bit_field_s_extract*
dEQP-VK.spirv_assembly.type.*.bit_field_u_extract*
dEQP-VK.spirv_assembly.type.*.bit_reverse*
dEQP-VK.spirv_assembly.type.*.bit_count*
dEQP-VK.spirv_assembly.type.*.constant*
dEQP-VK.spirv_assembly.type.*.constant_composite*
dEQP-VK.spirv_assembly.type.*.constant_null*
dEQP-VK.spirv_assembly.type.*.variable_initializer*
dEQP-VK.spirv_assembly.type.*.spec_constant_initializer*
dEQP-VK.spirv_assembly.type.*.spec_constant_composite_initializer*
Components: Vulkan
VK-GL-CTS issue: 1096
Change-Id: Id1d6c5b741b52f5acc9c759e5cfcd8ac4825532d
Joan Bonet Orantos [Tue, 22 May 2018 08:09:05 +0000 (10:09 +0200)]
Fix dependencies in vulkan pipeline test
The srcStageMask field in the subpass dependency was not strict
enough. This can cause that the incoming subpasses, that try to copy
samples from this subpass, may try to read content that may not be
written yet.
Affects:
dEQP-VK.pipeline.multisample.min_sample_shading.min_*
Components: Vulkan
VK-GL-CTS issue: 1185
Change-Id: Ide5e3d2a709e8fe26d23ada1d20bf2eb27beffd8
Juan A. Suarez Romero [Mon, 14 May 2018 15:24:04 +0000 (15:24 +0000)]
Skip BC/DXT formats in Texture3D tests
These formats only supports 2D images.
Affects:
KHR-GLES2.texture_3d.compressed_texture.negative_compressed_tex_image
KHR-GLES2.texture_3d.compressed_texture.negative_compressed_tex_sub_image
Components: OpenGL
VK-GL-CTS issue: 1163
Change-Id: I806dccfdbb2969b51c0ee9a1010c04107154733a
Dzmitry Malyshau [Wed, 9 May 2018 18:15:26 +0000 (14:15 -0400)]
Fix VulkanPlatform compiling and linking on OSX
There where 2 problems with the code:
1. it broke upon the change to vk::Library interface,
since OSX is not yet CI tested
2. it didn't link against OpenGL library for Default target,
which appears to be required for anything on OSX
The latter was always an issue, but one we could work around locally.
I believe the proposed upstream patch is clean enough to avoid our hacks.
Change-Id: I9b570e3700031d92367a815baf5b32f751e248b3
Components: Framework
Dzmitry Malyshau [Wed, 9 May 2018 17:14:21 +0000 (13:14 -0400)]
Fix image blit mirrored comparisons
The old looping would not go through any iterations for mirrored offsets.
The looping has to be mirrored when the destination is mirrored, and the
source texture coordinate computation adjusted accordingly.
Affects:
dEQP-VK.api.copy_and_blit.core.blit_image.*.mirror*.*
Change-Id: I8feb1d8b90c8013b292865b0e3b20ef414b05920
Components: Vulkan
Graeme Leese [Wed, 25 Apr 2018 15:52:21 +0000 (16:52 +0100)]
Remove one copy of the ballot test source
The code for the ballot tests is the same for framebuffer and
non-framebuffer tests but it's all written out twice. Make both tests
use the same source.
Components: Vulkan
Affects: dEQP-VK.subgroups.ballot_broadcast.*
dEQP-VK.subgroups.ballot_other.*
Change-Id: I3f8ac60a3339fd974742d8a6a3eb540559e2a382
Dzmitry Malyshau [Mon, 7 May 2018 20:24:07 +0000 (16:24 -0400)]
Fix barrier and invalidation of the fill_buffer readback
The old code had a barrier waiting for a different memory region that is being
filled, and same goes for the memory invalidation call that follows.
It resulted in the range of size=0 being requeste for invalidation, which
doesn't include actual bytes filled by cmdFillBuffer that is being tested.
Affects:
dEQP-VK.api.fill_and_update_buffer.*
Change-Id: Id2d68dc65145b42ecb0f966c70d57db81e9acb4a
Components: Vulkan
Paavo Pessi [Thu, 3 May 2018 08:53:30 +0000 (11:53 +0300)]
Test copying data from/to tightly sized buffers
New tests were added to verify that the source and destination buffers
in vkCmdCopyBufferToImage and vkCmdCopyImageToBuffer respectively can
be just large enough to contain the accessed elements, specifically in
cases where the buffer size is not a multiple of buffer row length.
New tests:
dEQP-VK.api.copy_and_blit.*.image_to_buffer.tightly_sized_buffer
dEQP-VK.api.copy_and_blit.*.image_to_buffer.tightly_sized_buffer_offset
dEQP-VK.api.copy_and_blit.*.buffer_to_image.tightly_sized_buffer
dEQP-VK.api.copy_and_blit.*.buffer_to_image.tightly_sized_buffer_offset
Components: Vulkan
VK-GL-CTS issue: 1124
Change-Id: Ice8f542a37bc45f969e33eb148ad0e77f40f8dd8
Toni Merilehti [Thu, 3 May 2018 12:04:09 +0000 (15:04 +0300)]
Add tests for render targets with write masks
New tests verify correct rendering when using multiple render targets
with write masks.
New tests:
dEQP-VK.renderpass.suballocation.attachment_write_mask.*
dEQP-VK.renderpass.dedicated_allocation.attachment_write_mask.*
Components: Vulkan
VK-GL-CTS issue: 1082
VK-GL-CTS public issue: 91
Change-Id: I3b308bdcd83f7936c078ecedcf21bd6339dd1f28
Rahul Jain [Mon, 21 May 2018 11:48:01 +0000 (17:18 +0530)]
Wrong shaders in glcParallelShaderCompileTests.cpp
In glcParallelShaderCompileTests.cpp:50
it is written as
"int main() {\n"
which is invalid as per spec.
As per spec GLSL 4.60, section 6.1 last paragraph:
It is a compile-time or link-time error to declare or define a function
main with any other parameters or return type.
in glcParallelShaderCompileTests.cpp:55
it is written as "out ver4 fragColor;\n"
it should be "out vec4 fragColor;\n"
there is no data type as "ver4"
Affects:
KHR-GL46.parallel_shader_compile.compilation_completion_parallel
Components: OpenGL
VK-GL-CTS issue: 1182
Change-Id: I2f213eeaf28039c1f36b7772257090d81e1f013e
Alexander Galazin [Fri, 18 May 2018 13:01:32 +0000 (15:01 +0200)]
Whitelist VK_KHR_get_display_properties2
Components: Vulkan
Affects: dEQP-VK.api.info.device.extensions
Change-Id: Ic064e283e164cad2c9785ffe6253a2c192419668
Jari Komppa [Fri, 4 May 2018 11:51:17 +0000 (14:51 +0300)]
Added more early-out hardware support checks
This patch adds more early-out hardware support checks to speed up the
conformance test especially on hardware that does not support some
features.
Affects:
dEQP-VK.api.pipeline.*
dEQP-VK.api.copy_and_blit.*
dEQP-VK.api.buffer_view.create.*
dEQP-VK.api.buffer.*
Components: Framework, Vulkan
VK-GL-CTS issue: 899
Change-Id: Ied10dfd4ce60eda4d1830a38f42b5f38f813d50f
Ari Suonpaa [Thu, 26 Apr 2018 09:27:44 +0000 (12:27 +0300)]
Add test for dynamically indexing output variable components
Added test where output variable component is dynamically selected
using input data. Graphics test framework was modified to support
code inside main function as the output variables are not visible
inside a test function. Fixed support for vec4 output variables in
the same framework. Previously it was resulting in a code that wasn't
accepted by the validator.
Affects:
dEQP-VK.spirv_assembly.*
Components: Vulkan
VK-GL-CTS issue: 1122
Change-Id: I78f149b0f709e1d11dd977cc432fec0e5f971bed
Khushal [Fri, 13 Apr 2018 23:53:42 +0000 (16:53 -0700)]
Add AHardwareBuffer support to external memory tests
Added tests:
* dEQP-VK.api.external.memory.android_hardware_buffer.*
Components: Vulkan
VK-GL-CTS issue: 738
cherry-picked from: https://gerrit.khronos.org/#/c/1455/
V4: fix broken handle lifetime (Thanks Tony)
Change-Id: I8c9911692c46b4dd622424b20bd1f9827fac6796
Alexander Galazin [Fri, 18 May 2018 11:12:32 +0000 (13:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I4b35a41d666a707410f88f222c93b661f7d983a1
Dave Airlie [Mon, 30 Apr 2018 03:02:29 +0000 (13:02 +1000)]
Fix check for 16-bit extension for 16-bit conversion functions.
All the 16-bit conversion tests run even if the vulkan implementation
doesn't advertise the 16-bit storage feature. Request the 16-bit
storage feature for all the 16-bit tests.
Components: Vulkan
Affect:
dEQP-VK.spirv_assembly.instruction.*convert*16*
VK-GL-CTS issue: 1150
Change-Id: Icf58fdd0af5c757d44716b5cddd193f78827192f
Jesse Hall [Wed, 16 May 2018 23:56:54 +0000 (16:56 -0700)]
Limit protected swapchain images based on memory
A surface's maxImageCount isn't based on the swapchain image extents
or format, so it's valid for swapchain creation to fail for
out-of-memory reasons even when the image count is within the
supported range.
This is particularly problematic for protected swapchains, since many
implementations have a limit on the total amount of protected memory
that can be allocated which is much smaller than total device memory.
This change estimates how much memory is used by protected swapchain
images, compares that to the size of heaps that support protected
memory types, and doesn't try to create swapchains that would have
more images than would fit within that size.
Components: Vulkan
VK-GL-CTS Issue: 1167
Affects:
dEQP-VK.protected_memory.interaction.wsi.*.swapchain.create.min_image_count
Change-Id: I6cc3bd25f7f22de8424f9e3375ade35fac26a884
Piers Daniell [Fri, 4 May 2018 22:53:25 +0000 (16:53 -0600)]
Don't use invalid sType as canary value for arrays
Using an invalid sType in an array is a violation of Vulkan
valid usage and will fail the test if validation layers
are enabled.
This CL also ensures the property structs passed into the
get functions have their sType initialized correctly.
Affects: dEQP-VK.wsi.display.*
Components: Vulkan
VK-GL-CTS issue: 1155
Change-Id: I4b9b00248265b2e3c7d0b2b652e98d2f0f5a0902
Graeme Leese [Thu, 26 Apr 2018 14:06:12 +0000 (15:06 +0100)]
Clear image layer 0 in memory commitment test
Components: Vulkan
Affected: dEQP-VK.api.get_memory_commitment.memory_commitment
VK-GL-CTS issue: 1151
Change-Id: I95676f18f91470248ac19270778b897626a31f2c
Chris Forbes [Thu, 17 May 2018 17:00:15 +0000 (10:00 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev
Change-Id: I895c6d9ec918a2c89ec28df2ca75fbecb0adaaa1
Peter Quayle [Wed, 16 May 2018 13:30:38 +0000 (14:30 +0100)]
Fix improper use of vkCmdWaitEvents
dEQP-VK.synchronization.smoke.events was calling vkCmdWaitEvents inside
a render-pass, which is not allowed if the event is later set using
vkSetEvent.
This is the part of change 2421 which was lost when change 2362 was
merged to master.
Affects:
dEQP-VK.synchronization.smoke.events
Components: Vulkan
VK-GL-CTS issue: 1089
Change-Id: Iddb17805fbffc426ac370e058a217ee7daf08e6a
Jari Komppa [Tue, 15 May 2018 11:26:15 +0000 (14:26 +0300)]
Fixed some visual studio warnings
Added some casts to quiet some warnings given by visual studio, mainly
int-float conversions and signed-unsigned comparison mismatches.
Affects:
None
Components: OpenGL
VK-GL-CTS issue: 1164
Change-Id: I56735830f275ff50116b53051a9b9a6d333edf7f
Juan A. Suarez Romero [Thu, 19 Apr 2018 15:35:40 +0000 (15:35 +0000)]
GL_SRG8_ALPHA8 also supported in OpenGL ES 3.0+
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.srgb8_alpha8
assumes that using GL_SRGB8_ALPHA8 format in RenderBuffer should fail
for OpenGL ES 2.0 because it is not supported in the specification,
unless either EXT_sRGB or EXT_sRGB_write_control are implemented, as
they add this format as supported.
But when creating the OpenGL context, it can be either 2.0 or an upper
version. If 3.0+ is returned, this version supports this format without
those extensions, and thus the test should pass.
So this change ensures that if OpenGL ES 3.0+ context is returned, then
the use of GL_SRGB8_ALPHA8 in RenderBuffer should work.
Affected tests:
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.srgb8_alpha8
Components: OpenGL
VK-GL-CTS issue: 1137
Change-Id: Ibb95736959ff9d5b0ff972ccf3983abc98795be3
(cherry picked from commit
a72652c15bbb6bbeed3fdf357630166095c44d91)
Chris Forbes [Tue, 15 May 2018 15:57:53 +0000 (08:57 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev
Change-Id: Ic7f1d3a9f9c59e23a51193eb616e62e638280877
Ari Suonpaa [Tue, 17 Apr 2018 11:13:24 +0000 (14:13 +0300)]
Add 16bit storage access chain tests
Add tests to index data inside an array of structures. Covers 16bit
floats, integers, and unsigned integers.
New tests:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16_to_32_chainaccess.*
Components: Vulkan
VK-GL-CTS issue: 893
Change-Id: Iec98775737f2c2885d97f346096dc95e6a652cef
Juan A. Suarez Romero [Mon, 16 Apr 2018 15:45:05 +0000 (15:45 +0000)]
Add tests for 16-bit OpSwitch
Extend OpSwitch testing to cover signed and unsigned 16-bit integer
cases.
Add tests:
dEQP-VK.spirv_assembly.type.scalar.u16.switch_*
dEQP-VK.spirv_assembly.type.scalar.i16.switch_*
Components: Vulkan
VK-GL-CTS issue: 995
Change-Id: Icb39d94fd6112be2e7a1d07d481c2098247babb1
Slawomir Cygan [Wed, 21 Mar 2018 16:32:50 +0000 (17:32 +0100)]
Add SPIR-V tests for return values of atomic functions
Most of atomic functions return values before applying
atomic operation - this change adds tests for that.
Return values are captured to separate buffer and
matched to the final result (and arguments).
Components: Vulkan
VK-GL-CTS Issue: 1092
New Tests:
dEQP-VK.spirv_assembly.instruction.compute.opatomic_return_values.*
Affects:
dEQP-VK.spirv_assembly.instruction.compute.opatomic*
Change-Id: I96390ed1b694f0aa2bd6d92868da46fef3d5e249
Caio Marcelo de Oliveira Filho [Wed, 7 Mar 2018 22:52:20 +0000 (14:52 -0800)]
Test using gl_Layer in Vertex and Tessellation shaders
Needs VK_EXT_shader_viewport_index_layer extension. Test works by
writing rectangles of different colors and positions in each layer,
then verifying the result.
New tests:
- dEQP-VK.draw.shader_layer.*
VK-GL-CTS issue: 1043
Components: Vulkan
Change-Id: I037b8b1283b467b755e94b54d43e68fa4531497e
Juan A. Suarez Romero [Thu, 19 Apr 2018 15:35:40 +0000 (15:35 +0000)]
GL_SRG8_ALPHA8 also supported in OpenGL ES 3.0+
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.srgb8_alpha8
assumes that using GL_SRGB8_ALPHA8 format in RenderBuffer should fail
for OpenGL ES 2.0 because it is not supported in the specification,
unless either EXT_sRGB or EXT_sRGB_write_control are implemented, as
they add this format as supported.
But when creating the OpenGL context, it can be either 2.0 or an upper
version. If 3.0+ is returned, this version supports this format without
those extensions, and thus the test should pass.
So this change ensures that if OpenGL ES 3.0+ context is returned, then
the use of GL_SRGB8_ALPHA8 in RenderBuffer should work.
Affected tests:
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.srgb8_alpha8
Components: OpenGL
VK-GL-CTS issue: 1137
Change-Id: Ibb95736959ff9d5b0ff972ccf3983abc98795be3
Ostrowski, Igor [Fri, 9 Feb 2018 10:56:15 +0000 (11:56 +0100)]
Add tests for VK_KHR_draw_indirect_count
This change add new tests for VK_KHR_draw_indirect_count
extension.
New Tests:
dEQP-VK.draw.indirect_draw.*.indirect_draw_count.*
dEQP-VK.draw.indirect_draw.*.indirect_draw_first_instance.*
dEQP-VK.draw.indirect_draw.*.indirect_draw_count_first_instance.*
dEQP-VK.draw.indirect_draw.*.indirect_draw_count_instanced.*
Affected tests:
dEQP-VK.api.info.device.extensions
Components: Vulkan, Framework
VK-GL-CTS issue: 1004
Change-Id: I3d53806eb1a45293a77b940d9c2fa540a6d83d50
(cherry picked from commit
7b47cd53c6656b866e7c3a3c0a590da85f3b2de1)
Tony Zlatinski [Thu, 3 May 2018 18:35:51 +0000 (13:35 -0500)]
Vulkan: Fix WIN32 NativeHandle importMemory leaks
importMemory(), incorrectly calls handle.disown()
that discards the reference that the handle originally
added via its copy constructor to the underlying memory
handle.
Affects:
dEQP-VK.api.external.memory.opaque_win32
Components: Vulkan
VK-GL-CTS issue: 1139
Change-Id: Idb5111b7efc2dfbf7d693d79b7ab57814329f33e
Alexander Galazin [Fri, 11 May 2018 14:45:49 +0000 (16:45 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I8ddf54dafd3de02f14526e98aa135176a6d3f3a3
Alexander Galazin [Fri, 11 May 2018 13:28:20 +0000 (15:28 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/vulkan-cts-1.1.0
Change-Id: I06a95f88214707d9108a46f7374a5e8e0f9bdb59
James Glanville [Tue, 24 Apr 2018 21:26:17 +0000 (22:26 +0100)]
Remove some problematic texture_functions tests
Some of the tests in dEQP-GLES3.functional.shaders.texture_functions
are overly sensitive to rounding modes and precision of the CPU
reference implementation. For this reason they were removed from
AOSP. This change removes them from mustpass to match.
VK-GL-CTS issue: 1146
Components: OpenGL
Affects:
dEQP-GLES3.functional.shaders.texture_functions.texturelodoffset.usampler2darray_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureprojlodoffset.isampler3d_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler3d_bias_fixed_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler3d_bias_float_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.isampler3d_bias_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.usampler3d_bias_fragment
Change-Id: Id6bfc025a350deb0914d27151e0bae88b42710b6
Chris Forbes [Wed, 2 May 2018 23:31:10 +0000 (16:31 -0700)]
Move unspecified-precision tests from ES2/ES3 to ES3.1
Got significant pushback from vendors about enforcing these tests on
ES2/ES3 -- ends up being a vendor choice between breaking shipping
content or failing CTS.
Moved all of these tests to ES3.1 only as a compromise.
Change-Id: I5a827064472f73908b01fa85e0097bda21038136
Components: AOSP
(cherry picked from commit
047891af31d1c8827a84e49e81b5b526ee5ee485)
Juan A. Suarez Romero [Thu, 10 May 2018 16:54:21 +0000 (16:54 +0000)]
Remove line expression tests
Using #line directive with an expression is considered as undefined
behaviour. Thus, remove these tests.
Removed:
dEQP-GLES2.functional.shaders.preprocessor.builtin.line_and_file_expression_fragment
dEQP-GLES2.functional.shaders.preprocessor.builtin.line_and_file_expression_vertex
dEQP-GLES2.functional.shaders.preprocessor.builtin.line_expression_fragment
dEQP-GLES2.functional.shaders.preprocessor.builtin.line_expression_vertex
dEQP-GLES3.functional.shaders.preprocessor.builtin.line_and_file_expression_fragment
dEQP-GLES3.functional.shaders.preprocessor.builtin.line_and_file_expression_vertex
dEQP-GLES3.functional.shaders.preprocessor.builtin.line_expression_fragment
dEQP-GLES3.functional.shaders.preprocessor.builtin.line_expression_vertex
Components: OpenGL
VK-GL-CTS issue: 1145
Change-Id: Ib8cb58a8e712397114eb33d8d36c1957b3f5e9b0
Alexander Galazin [Fri, 11 May 2018 11:53:34 +0000 (07:53 -0400)]
Merge "Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master"
Slawomir Cygan [Wed, 18 Apr 2018 13:14:23 +0000 (15:14 +0200)]
Multiview: do not use inline renderpass with secondary command buffers
There is a regression introduced in 7b76766 alongside the new render
pass begin utility:
The new utility sets the render pass contents flag to 'INLINE' by
default. This was overlooked in some multiview tests cases, which use
secondary command buffers - the default should be overriden to
'SECONDARY_COMMAND_BUFFERS'.
Components: Vulkan
VK-GL-CTS Issue: 1133
Affects:
dEQP-VK.multiview.secondary_cmd_buffer_geometry
dEQP-VK.multiview.secondary_cmd_buffer
Change-Id: Ibe42ba4c3e6d2b43ed18ac3684ba480f9dc659a8
Mateusz Zych [Sat, 14 Apr 2018 00:35:25 +0000 (20:35 -0400)]
Fix pipeline barrier for clearing multiview attachment
Specify correct destination access mask (VK_ACCESS_TRANSFER_WRITE_BIT) and
destination pipeline stage (VK_PIPELINE_STAGE_TRANSFER_BIT) for
transfer operation clearing all Views (array layers) of multiview attachment
using vkCmdClearColorImage().
Components: Vulkan
VK-GL-CTS Issue: 1085
Affects:
dEQP-VK.multiview.*
Change-Id: Ic87cd1d5a4c7373c3678c96fe942a5dde46ea03f
Mateusz Zych [Sat, 14 Apr 2018 00:11:14 +0000 (20:11 -0400)]
Clear all Views of Framebuffer Attachment to reference background color
The VK_KHR_multiview spec defines that during implicit clear (LOAD_OP_CLEAR)
all Active Views of Framebuffer attachment are cleared.
ViewMask defines which Views are active during particular subpass,
therefore a View is considered active during RenderPass
if it was active in any subpass of that RenderPass.
Without explicit clear of inactive Views their content will be undefined,
making test results unreliable.
This change removes MultiViewReadbackTestInstance::beforeDraw() and
relies on MultiViewRenderTestInstance::beforeDraw()
to clear all Views (array layers) of framebuffer attachment
by calling vkCmdClearColorImage().
Components: Vulkan
VK-GL-CTS Issue: 1085
Affects:
dEQP-VK.multiview.readback*
Change-Id: I70d8b1c48cb157df2518b7d241a302c54d5842f3
Alexander Galazin [Fri, 11 May 2018 10:29:10 +0000 (12:29 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: Ie711cb881e2de39c6bc881ae0ad72e16301145a3
Alexander Galazin [Fri, 11 May 2018 09:09:40 +0000 (11:09 +0200)]
Freeze 3.2.4.x mustpass
Change-Id: I1ed8e5fc0860c1e01d2eb7ed66f1ba411c31eef1
Paavo Pessi [Fri, 20 Apr 2018 11:56:37 +0000 (14:56 +0300)]
Fix validation errors in image tests
Image tests using VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR
and VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR had a pipeline barrier with
an invalid pipeline stage flag. The flag was changed to a valid value.
Affects:
dEQP-VK.image.texel_view_compatible.compute.basic.image_load.*
dEQP-VK.image.texel_view_compatible.compute.basic.texel_fetch.*
dEQP-VK.image.texel_view_compatible.compute.basic.texture.*
dEQP-VK.image.texel_view_compatible.compute.basic.image_store.*
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.basic.attachment_write.*
dEQP-VK.image.texel_view_compatible.graphic.basic.texture_write.*
dEQP-VK.image.texel_view_compatible.graphic.extended.attachment_write.*
dEQP-VK.image.texel_view_compatible.graphic.extended.texture_write.*
dEQP-VK.image.extended_usage_bit.attachment_write.*
dEQP-VK.image.extended_usage_bit.texture_write.*
Components: Vulkan
VK-GL-CTS issue: 1051
Change-Id: Ie76fd515f04462d7f6ec2c2474d0af65737ccd9c
Ari Suonpaa [Fri, 20 Apr 2018 09:24:31 +0000 (12:24 +0300)]
Randomize image layout in renderpass attachment allocation test
Renderpass attachment allocation tests were using subpass image
layout of VK_IMAGE_LAYOUT_GENERAL. Now the layout is randomized
whenever possible.
Affects:
dEQP-VK.renderpass.*.attachment_allocation.input_output.*
Components: Vulkan
VK-GL-CTS issue: 1136
Change-Id: If59d42c50a2809c661ad56f0226b230659bc471f
Graeme Leese [Thu, 8 Mar 2018 15:54:13 +0000 (15:54 +0000)]
Check ballot requirement in subgroup basic tests
If ballot operations are not supported then the tests should return
NotSupported.
Components: Vulkan
Affects: dEQP-VK.subgroups.basic.*_framebuffer
VK-GL-CTS issue: 1127
Change-Id: I2c72a0821799ec2b94c08d2791f9d013ef7d122c
Mark Adams [Mon, 16 Apr 2018 20:39:06 +0000 (16:39 -0400)]
Fix window size issues in several new tests
Some of the new tests added in the last 6 months fail when run with
non-default window sizes. In two cases, the tests were hardcoded to use
64x64 without checking the underlying size and thus could end up
with corruption if the window size was smaller.
In another case, the test changes the framebuffer to zero mid-test
instead of to the default framebuffer, resulting in invalid results
with deqp-surface-type=fbo.
Finally, the generated texture data's alpha is intended to always
be 1.0, but it can vary slightly due to numerical instability
depending on the window size. It is now hardcoded to ensure we
get the intended result.
VK-GL-CTS issue: 1126
Components: OpenGL
Affects:
KHR-GL*.internalformat.renderbuffer.*
KHR-GL*.internalformat.texture2d.*
KHR-GLES*.shaders.aggressive_optimizations.*
Change-Id: I3c1779cc7818ba5b1a798ec683af2780eeb9c9f4
Rahul Jain [Tue, 8 May 2018 11:16:49 +0000 (16:46 +0530)]
Fixes wrong MIN_MAP_BUFFER_ALIGNMENT limit
As per GL spec 4.6 P:632, Table 23.55,
It is given that MIN_MAP_BUFFER_ALIGNMENT should be aleast 64 or higher
Currently CTS test is limiting to 64 as maximum.
Affects:
KHR-GL46.limits.min_map_buffer_alignment
KHR-GL46.map_buffer_alignment.query
KHR-GL46.map_buffer_alignment.functional
Components: OpenGL
VK-GL-CTS issue: 1158
Change-Id: I6e4feea6e91bbf0e030b0dfcdbc49c716ffd8145
Chris Forbes [Thu, 3 May 2018 17:11:46 +0000 (10:11 -0700)]
Merge remote-tracking branch 'aosp/master' into deqp-dev
Change-Id: I24e845d3dd6283d88fed3fb17db9a5379e620a99
Chris Forbes [Thu, 3 May 2018 17:11:30 +0000 (10:11 -0700)]
Merge commit '
1d8110d34037070f007347a41b8212088d44df1e' into deqp-dev
Change-Id: Ifbbc3a9c5ebc1c4bc343369c227c2254162533a1
Chris Forbes [Wed, 2 May 2018 23:31:10 +0000 (16:31 -0700)]
Move unspecified-precision tests from ES2/ES3 to ES3.1
Got significant pushback from vendors about enforcing these tests on
ES2/ES3 -- ends up being a vendor choice between breaking shipping
content or failing CTS.
Moved all of these tests to ES3.1 only as a compromise.
Change-Id: I5a827064472f73908b01fa85e0097bda21038136
Components: AOSP
android-build-prod (mdb) [Tue, 1 May 2018 17:27:58 +0000 (10:27 -0700)]
[automerger skipped] Merge "DO NOT MERGE: Merge remote-tracking branch 'khronos/vulkan-cts-1.0.2' into HEAD" into oreo-mr1-cts-dev
am:
ea8d8c6e51 -s ours
Change-Id: Iafc1890dde07fdf56154e1742ce2d59648bc02af
android-build-prod (mdb) [Tue, 1 May 2018 17:23:07 +0000 (17:23 +0000)]
Merge "DO NOT MERGE: Merge remote-tracking branch 'khronos/vulkan-cts-1.0.2' into HEAD" into oreo-mr1-cts-dev