Alexander Galazin [Fri, 25 Aug 2017 14:19:26 +0000 (16:19 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: Id2e9909ac0e558d2b4ba45e2e273ab6ed8c0d152
Alexander Galazin [Fri, 25 Aug 2017 14:19:24 +0000 (16:19 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Change-Id: Ie767abf5246afabb12297249474728e1ad52afe2
Piotr Byszewski [Fri, 4 Aug 2017 10:49:43 +0000 (12:49 +0200)]
Enforce precision matching rules
GLSL ES 320 requires precisions to match for default uniforms,
but not for uniforms in UBOs.
Components: OpenGL
VK-GL-CTS issue: 17
Affects:
KHR-GLES3.shaders.uniform_block.common.precision_matching
KHR-GLES32.shaders.negative.used_uniform_precision_matching
KHR-GLES32.shaders.negative.unused_uniform_precision_matching
Change-Id: Id5bc39b918091caf413e76c7ba5b74297e70872b
Pyry Haulos [Mon, 12 Jun 2017 20:52:42 +0000 (13:52 -0700)]
Framework support for VK_KHR_sampler_ycbcr_conversion
Change-Id: I749b92c79766f933ea34bb183d3d34c102e023c2
Paavo Pessi [Tue, 15 Aug 2017 06:12:17 +0000 (09:12 +0300)]
Test arbitrary large descriptor binding numbers
Added tests where descriptor sets use very large binding numbers
with huge gaps between numbers. The largest binding number used
is 0xFFFEu as it is the largest value accepted by Glslang.
Large binding numbers are tested with various shader stages and
buffer types.
New tests:
dEQP-VK.binding_model.shader_access.*.multiple_arbitrary_descriptors.*
Components: Vulkan
VK-GL-CTS issue: 390
Change-Id: I7cac48ec04ef7f5a500014d567682a19e927bd27
Mika Isojärvi [Thu, 4 May 2017 22:55:19 +0000 (15:55 -0700)]
Add support for 10 and 12bit packed unorm formats
10 and 12bit unsigned normalized values are packed into highers bits
of 16bit unsigned int.
Change-Id: I18a88547ba29003961bf0806a50cb17995c72f13
Components: Framework
James Helferty [Tue, 1 Aug 2017 16:42:33 +0000 (12:42 -0400)]
Check KHR robust buffer access behavior
Updates the storage buffer test for robust buffer access behavior to
verify against the narrower set of conditions imposed by the KHR
version of the extension. In the event that the KHR behavior is not
required, it will fall back to the old behavior.
VK-GL-CTS issue 499
Components: OpenGL
Affects:
* KHR-GLES32.robust.robust_buffer_access_behavior.storage_buffer
* KHR-GL43/44/45.robust_buffer_access_behavior.storage_buffer
Change-Id: I84d5cc10a99b58386c080eccd0e0801a02549477
Jesse Hall [Fri, 4 Aug 2017 21:54:25 +0000 (14:54 -0700)]
Add Android target API option
Components: Framework
Change-Id: I9c86d2fac0dcf9067db9276a2096d849ea2775de
Jesse Hall [Fri, 4 Aug 2017 21:24:10 +0000 (14:24 -0700)]
Support Android NDK r15
Most of the changes vs. r11 are for dealing with the the NDK's new
Unified Headers: there is now just one set of headers for all ABIs and
all API versions, but libraries are still per-ABI and per-API.
Building with NDK r15 requires CMake 3.2; otherwise, CMake 2.8 is
still supported.
Components: Framework
Change-Id: I4e64b4516c5ac9f59ac97adf331e01fa8be8eae0
Jesse Hall [Fri, 11 Aug 2017 17:18:32 +0000 (10:18 -0700)]
Provide dedicated image when importing memory if required
The test was using dedicated images when creating memory to be exported,
but not when importing that same memory.
Affects:
dEQP-VK.api.external.memory.*.dedicated.image.bind_export_import_bind
dEQP-VK.api.external.memory.*.dedicated.image.export_bind_import_bind
dEQP-VK.api.external.memory.*.dedicated.image.export_import_bind_bind
Components: Vulkan
VK-GL-CTS issue: 635
Change-Id: I5a063f10677aca8f373e29e39a34af293bf0a220
Peter Kohaut [Tue, 22 Aug 2017 13:52:12 +0000 (15:52 +0200)]
Fix barries for framebuffer attachment tests
Test was using incorrect stages for vkCmdResolveImage from graphics
pipeline instead of transfer pipeline.
Components: Vulkan
VK-GL-CTS issue: 638
Affected tests:
dEQP-VK.pipeline.framebuffer_attachment.*
Change-Id: I79d552da6f2c91257f0592b82aaeb98d9c676913
Bas Nieuwenhuizen [Tue, 15 Aug 2017 20:55:06 +0000 (22:55 +0200)]
Clear all attachment layers for the multiview tests
We check them all in the end, even though a clear only touches the
layers which are rendered to as views in the renderpass.
As we do not clear the entire image, and we still check all the
unused layers for 0, this fails randomly on drivers that don't
zero-initialize memory.
This adds the clear instead of removing the checks, so we keep some
superficial check that the unused layers aren't modified.
Affects:
dEQP-VK.multiview.*
Components: Vulkan
VK-GL-CTS issue: 630
Change-Id: I48f46708c983f9f273affe223ddc06c7a95cec88
Piers Daniell [Tue, 8 Aug 2017 22:03:35 +0000 (16:03 -0600)]
Avoid out-of-range depth values
The "d32_sfloat_large_depth" variants of the
dEQP-VK.glsl.builtin_var.fragdepth.* tests rely on undefined behavior
because it uses an out-of-range depth value. The unextended Vulkan spec
requires depth values to be in the range of 0.0..1.0. The test was using
a depth value of 20.0..21.0 and expecting the implementation to clamp.
Instead of disabling this part of the test entirely, only run it if the
implementation exposes the VK_EXT_depth_range_unrestricted device
extension, which does have defined behavior with depth values outside
the range of 0.0..1.0.
Affects:
dEQP-VK.glsl.builtin_var.fragdepth.*d32_sfloat_large_depth
Components: Vulkan
VK-GL-CTS issue: 623
Change-Id: I436b8b98bebe3ef37bd306d93da2bf8c40eee6c8
Alexander Galazin [Fri, 25 Aug 2017 07:07:21 +0000 (09:07 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I8e52b3a8e515b16a476bbf2d86431fc2169691f4
Alexander Galazin [Fri, 25 Aug 2017 07:07:15 +0000 (09:07 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Change-Id: Ibe051866b7182c79e129ddc920f17e91890756b4
Vikram Kushwaha [Wed, 12 Jul 2017 21:04:21 +0000 (14:04 -0700)]
Add tests for device group memory allocation with device masks
New tests:
dEQP-VK.memory.device_group_allocation*
Components: Vulkan
VK-GL-CTS issue: 110
Change-Id: I90b88f3d4a199370245b90b06d7b6ec569779604
Espen Amodt [Wed, 23 Aug 2017 04:13:43 +0000 (12:13 +0800)]
Remove max anisotropic level draw test
Based on EXT_texture_filter_anisotropic where it says : "Should an
implementation-defined limit for the maximum maximum degree of
anisotropy be get-able?
RESOLUTION: YES. But you should not assume that a high maximum
maximum degree of anisotropy implies anything about texture
filtering performance or quality."
affects:
KHR-GL44.texture_filter_anisotropic.drawing
KHR-GLES3.texture_filter_anisotropic.drawing
Components: OpenGL
VK-GL-CTS issue: 637
Change-Id: I2c5efcc1553f184f3995cda7d15385095055560b
Vikram Kushwaha [Fri, 9 Jun 2017 21:44:17 +0000 (14:44 -0700)]
Add tests for device group creation and device group queries
Tests for creating device groups, object management and
querying memory features/present capabilities with device groups
New tests:
dEQP-VK.api.info.instance.physical_device_groups
dEQP-VK.api.object_management.single.device_group
dEQP-VK.api.object_management.multiple_unique_resources.device_group
dEQP-VK.api.object_management.multiple_shared_resources.device_group
dEQP-VK.api.object_management.max_concurrent.device_group
dEQP-VK.api.object_management.multithreaded_per_thread_resources.device_group
dEQP-VK.api.object_management.multithreaded_shared_resources.device_group
dEQP-VK.api.object_management.single_alloc_callbacks.device_group
dEQP-VK.api.object_management.alloc_callback_fail.device_group
dEQP-VK.api.info.device_group.peer_memory_features
dEQP-VK.wsi.xlib.surface.query_devgroup_present_capabilities
dEQP-VK.wsi.xlib.surface.query_devgroup_present_modes
dEQP-VK.wsi.xcb.surface.query_devgroup_present_capabilities
dEQP-VK.wsi.xcb.surface.query_devgroup_present_modes
dEQP-VK.wsi.wayland.surface.query_devgroup_present_capabilities
dEQP-VK.wsi.wayland.surface.query_devgroup_present_modes
dEQP-VK.wsi.mir.surface.query_devgroup_present_capabilities
dEQP-VK.wsi.mir.surface.query_devgroup_present_modes
dEQP-VK.wsi.android.surface.query_devgroup_present_capabilities
dEQP-VK.wsi.android.surface.query_devgroup_present_modes
dEQP-VK.wsi.win32.surface.query_devgroup_present_modes
dEQP-VK.wsi.win32.surface.query_devgroup_present_capabilities
Components: Vulkan
VK-GL-CTS issue: 110
Change-Id: I829582dd294a54bbbbc021db438334c94d7712ee
Jeannot Breton [Wed, 26 Jul 2017 18:24:17 +0000 (13:24 -0500)]
Use RGBA_BPTC_UNORM instead of RGB8_ETC2
This change uses GL_COMPRESSED_RGBA_BPTC_UNORM instead of
GL_COMPRESSED_RGB8_ETC2 to avoid issue on implementations that
don't compress GL_COMPRESSED_RGB8_ETC2 internally.
GL_COMPRESSED_RGBA_BPTC_UNORM should not be emulated by the
implementation, so this format should be fine
Affects:
KHR-GL45.get_texture_sub_image.functional_test
Components: OpenGL
VK-GL-CTS issue: 599
Change-Id: Iab62cb24e6bbd024adfd3db7fa55bc4980fd85e6
Jeannot Breton [Mon, 31 Jul 2017 18:59:59 +0000 (13:59 -0500)]
drawCall error optional if beginXFB failed
Make the draw call failure optional if the beginTransformFeedback
failed
Affects:
KHR-GLES32.core.tessellation_shader.single.xfb_captures_data_from_correct_stage
Components: OpenGL
VK-GL-CTS issue: 609
Change-Id: If2a47bf2bef866d1618b7071f6adb9e887422c88
(cherry picked from commit
bb0a7d17b1c3ba5f92e44b00b6aa9d456f05479f)
Jeannot Breton [Mon, 31 Jul 2017 18:59:59 +0000 (13:59 -0500)]
drawCall error optional if beginXFB failed
Make the draw call failure optional if the beginTransformFeedback
failed
Affects:
KHR-GLES32.core.tessellation_shader.single.xfb_captures_data_from_correct_stage
Components: OpenGL
VK-GL-CTS issue: 609
Change-Id: If2a47bf2bef866d1618b7071f6adb9e887422c88
James Helferty [Wed, 26 Jul 2017 17:16:07 +0000 (13:16 -0400)]
Fix sparse buffer test for atomics
When binding a buffer for an array of atomics, the buffer size needs
to be large enough to cover the entire array, or else you will get
undefined behavior. For the atomic buffer case where using
glBindBufferRange to bind only part of the sparse buffer, we were
only providing a size argument large enough for half of the array.
VK-GL-CTS issue 595
Components: OpenGL
Affects:
KHR-GL43.sparse_buffer_tests.BufferStorageTest
KHR-GL44.sparse_buffer_tests.BufferStorageTest
KHR-GL45.sparse_buffer_tests.BufferStorageTest
Change-Id: I8e0a67619801a6071cf53374ae9f06672782dfa0
James Helferty [Fri, 28 Jul 2017 22:34:35 +0000 (18:34 -0400)]
Call glViewport before rendering to FBO
The gl_Layer variant of this test wasn't setting the viewport before
rendering to FBO.
VK-GL-CTS issue 608
Component: OpenGL
Affects:
* KHR-GL45.shader_viewport_layer_array.ShaderLayerFramebufferNonLayeredTestCase
* KHR-GL45.shader_viewport_layer_array.ShaderLayerFramebufferLayeredTestCase
Change-Id: I7cda78a25a745816508a65d6dce0708da3c0e53f
James Helferty [Tue, 1 Aug 2017 19:48:58 +0000 (15:48 -0400)]
Update GetTextureImage test for revised DSA error
As of GL 4.6, GetTextureImage (and other related DSA entry points)
generate INVALID_OPERATION instead of INVALID_ENUM if a texture
argument does not have the accepted texture target type.
VK-GL-CTS issue: 610
Components: OpenGL
Affects:
KHR-GL45.direct_state_access.textures_image_query_errors
Change-Id: I6252599a86cd84b5946cb2e3d34d2ceb56199a05
Mika Isojärvi [Fri, 18 Aug 2017 17:20:17 +0000 (10:20 -0700)]
Add missing struct types to vulkan header
Add missing struct types that were added by VK_KHX_device_group.
Change-Id: I8636403f048b32f8d2e177b6d19394e140a56c6d
Components: Vulkan
Alexander Galazin [Fri, 18 Aug 2017 11:44:48 +0000 (13:44 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: If0522fee34abd42178dce1878d65f663c60a5d5a
Adam Czupryna [Fri, 18 Aug 2017 09:46:16 +0000 (11:46 +0200)]
Fix to PolygonOffsetClamp windows build
This is windows build fix to undefined identifier 'uint32_t' error.
Affects:
KHR-GL45.polygon_offset_clamp.*
KHR-GLES31.core.polygon_offset_clamp.*
Components: OpenGL
Change-Id: I59c9e615bcef2a1273ed12f68454f10e16af0df5
Alexander Galazin [Fri, 18 Aug 2017 11:38:50 +0000 (13:38 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/master
Change-Id: I4c219f1f910595ad8fe5aef4e53131555e2f28e6
Ari Suonpaa [Mon, 14 Aug 2017 12:01:08 +0000 (15:01 +0300)]
Add tests for reading 2x2 matrices in UBO without padding.
Add compute and graphics shader tests that read 2x2 matrices in
UBO packed as vec4s.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.ubo_padding.*
dEQP-VK.spirv_assembly.instruction.graphics.ubo_padding.*
Components: Vulkan
VK-GL-CTS issue: 56
Change-Id: I8ef46d61a59cd43c8ce40b2bc9ebbb2d839eb0fa
Paavo Pessi [Thu, 10 Aug 2017 12:30:40 +0000 (15:30 +0300)]
Test OpAtomicCompareExchange in image atomic tests
dEQP-VK.image.atomic_operations.* was extended to cover
OpAtomicCompareExchange.
New tests:
dEQP-VK.image.atomic_operations.compare_exchange.*
Components: Vulkan
VK-GL-CTS issue: 528
Change-Id: I473e35db84f7d7ab9353d8b3d865b9c3beda7c9d
Jeannot Breton [Wed, 26 Jul 2017 18:14:03 +0000 (13:14 -0500)]
Buffer size query is zero with BindBufferBase
The test expected the result to be the buffer size, but when bound
with glTransformFeedbackBufferBase we should follow the behavior
defined for BindBufferBase, and a result of 0 should be expected
Affects:
KHR-GL45.direct_state_access.xfb_buffers
Components: OpenGL
VK-GL-CTS issue: 598
Change-Id: I65e6e3117f1f77953c304e8f4f95263de4eca75d
James Helferty [Thu, 27 Jul 2017 15:37:55 +0000 (11:37 -0400)]
Initialize variables for error tests
This set of tests intentionally provides erroneous call arguments in
order to generate GL errors. As a result, the GL functions' output
arguments won't always be written to. The problem is, we bounce these
functions through CallLogWrapper, which expects the output arguments
to have valid contents, and will attempt to log them to file,
potentially resulting in unexpected process termination.
This change initializes the output arguments beforehand to valid values
so that CallLogWrapper doesn't unintentionally access invalid memory.
VK-GL-CTS issue 603
Components: OpenGL
Affects:
* KHR-GLES31.core.program_interface_query.invalid-enum
* KHR-GLES31.core.program_interface_query.invalid-operation
* KHR-GLES31.core.program_interface_query.invalid-value
* KHR-GL43/44/45.program_interface_query.invalid-enum
* KHR-GL43/44/45.program_interface_query.invalid-operation
* KHR-GL43/44/45.program_interface_query.invalid-value
Change-Id: I5fae2d4505e9c70cbcb2fbd11bdf900c0b4c751a
Tim Hughes [Fri, 14 Jul 2017 12:56:54 +0000 (13:56 +0100)]
Fix missing invalidates for output buffers.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.*
Component: Vulkan
VK-GL-CTS issue: 631
Change-Id: I4ca377acfec6a02a3b2ffe333223176ca6c7b9f4
Slawomir Cygan [Thu, 27 Jul 2017 14:01:37 +0000 (16:01 +0200)]
Add missing location qualifier on shader input
glslang requires locations for I/O since 1d585ac.
Affects:
dEQP-VK.api.smoke.create_shader
Components: Vulkan
VK-GL-CTS issue: 601
Change-Id: I55fde33883e8f221eb205314c6fdff267d820b26
Alexander Galazin [Thu, 17 Aug 2017 06:53:31 +0000 (08:53 +0200)]
Fix cts-runner for KHR-NoContext.*
KHR-NoContext.* tests were not properly filtered based on the requested API.
Components: OpenGL
VK-GL-CTS issue: 611
Affects: KHR-NoContext.*
Change-Id: I400e4b80fd5923a63a3d1ee6da3a368366cb6e61
David Sodman [Thu, 18 May 2017 16:30:17 +0000 (09:30 -0700)]
Remove dEQP-GLES31.*vertex_array.*_invalid_map tests
Tests made assumptions about GL error returned from glDrawElements*
functions when passed a mapped buffer object, but, that error is not
supported by the specification.
Affects: dEQP-GLES31.*vertex_array.*
Components: AOSP
Bug:
37942569
Change-Id: Ic066dfbe717ff1e7741bec8ee870b09b99362dc7
(cherry picked from commit
428a2256159883c651a409c4e0cbe031953f4c4e)
Alexander Galazin [Fri, 11 Aug 2017 09:03:50 +0000 (11:03 +0200)]
Check for tessellation/geometry extensions being exposed
Some sample_variables tests use tessellation/geometry shaders.
Need to check that the relevant extensions are exposed.
Components: AOSP
Affects:
dEQP-GLES31.functional.debug.negative_coverage.*.oes_sample_variables.access_built_in_types_inside_other_shaders
Change-Id: Iff74939d474082938955e5b7ebfc41ea3b4a6ec5
(cherry picked from commit
573154bb7bb4c40fbdce77b6633ebc8919e6a641)
Alexander Galazin [Wed, 28 Jun 2017 07:31:31 +0000 (09:31 +0200)]
Add RENDERBUFFER_VALID bit to R8, RG8 definition
FBO completness tests missed that R8/RG8 are valid internal formats
for glRenderbufferStorage* calls starting from GLES3. This caused
the tests to expect error on some implementations.
VK-GL-CTS issue: 532
Components: AOSP
Affects:
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.r8
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.rg8
Change-Id: I394ac0e75f83f0a5ca03634629293f109fc0cbb7
(cherry picked from commit
1d7c8df82e40052467289e49dd5d20c39a229943)
Alexander Galazin [Wed, 12 Jul 2017 12:38:01 +0000 (14:38 +0200)]
Report Android extension pack tests as not supported
Android extension pack tests can't run on GLES31-only GPUs.
Report such tests as NotSupported.
Components: AOSP
Change-Id: I88ab61e5d0b263428c41a644c6417e24e2f7f234
(cherry picked from commit
71b18bb8898a12d095e19f8b1d5b98d343282240)
Alexander Galazin [Wed, 19 Jul 2017 08:58:54 +0000 (10:58 +0200)]
Query MAX_DRAW_BUFFERS if NV_draw_buffers is supported
MAX_DRAW_BUFFERS can be queried when
GL_NV_draw_buffers/GL_EXT_draw_buffers is exposed.
Components: AOSP
Affects: dEQP-GLES2.functional.shaders.builtin_variable.max_draw_buffers*
Change-Id: I552ea98c8b6f1db1706858bebac6db1aa3c2640f
(cherry picked from commit
7b7c7f0089e4de5467cbb5d38c14946ddca0ae5b)
Kalle Raita [Tue, 18 Jul 2017 21:52:15 +0000 (14:52 -0700)]
Add triangle edge guardband for Tex2D lookup diff
Previously 3D and cube textures allowed pixels along the seam of
triangles to use data from either triangle. This change copies that
allowance to the 2D texture computeTextureLookupDiff. The projection
values chosen for the mipmap.2d.projected group make the data
discontinous over the edge, making it sensitive to tie-breaker
resolution. This change resolves the issue.
Affects: framework
Test: Executed mipmap.2d.projected group with failing result images
Bug:
63335787
Change-Id: Ibaed590fb5e1bc9eb837c9027ddadcea2081f629
(cherry picked from commit
dcb5991811ed287fc4a72126663136a94eb7dc39)
Alexander Galazin [Fri, 9 Jun 2017 14:26:32 +0000 (16:26 +0200)]
Skip OOB SSBO fragment tests for ES3.1 GPUs
GPUs supporting GLES 3.1 may expose 0 SSBOs in fragment shaders.
This change extends fix made in
cf65c56f.
Google bug:
36891454
Components: AOSP
Affects:
dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bounds*.shader_storage_block.fragment
Change-Id: I1d821198d3dba3d3ad1e6b25758d0d434bf08a30
(cherry picked from commit
f5fc3c8409969bb0afc5487f82ed883cf6566896)
Alexander Galazin [Tue, 6 Jun 2017 11:22:58 +0000 (13:22 +0200)]
Ignore A channel in EGL RGB5_A1 clear color tests
Dithering can siginifcantly impact alpha channel and the framework
can't fully account it.
Components: AOSP
Affects:
dEQP-EGL.functional.color_clears.*.rgba5551*
Bug:
62383988
Change-Id: Ic8fa4da1a840da56f74af3e076d0728d9abbdadc
(cherry picked from commit
9da1b45a8ed2489a46dd698953d963fa8bfbf1e7)
Alexander Galazin [Thu, 17 Aug 2017 08:05:55 +0000 (10:05 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: I2144843957db34a4d7e90f33d08740ecea0ee3ec
Mika Isojrvi [Wed, 16 Aug 2017 23:58:28 +0000 (23:58 +0000)]
Fix texture mip level size in framebuffer fetch tests
am:
be0d165a5d
Change-Id: I3fcbe493a87c270e64b6c3e3ed3fa8329d877d1b
Mika Isojärvi [Wed, 16 Aug 2017 20:40:22 +0000 (13:40 -0700)]
Fix texture mip level size in framebuffer fetch tests
Bug:
64280744
Test: Ran tests with multiple Google devices
Change-Id: I369a3c9b16270655332d5a608207f0da2633e0fe
james.glanville [Wed, 16 Aug 2017 19:02:41 +0000 (19:02 +0000)]
Merge "Use safe glFramebufferTexture* function"
am:
ec5ccbe144
Change-Id: Ic1a4ef9c96f1d2ea1500f175d5c7d601240cb17d
Michael Chock [Wed, 16 Aug 2017 19:02:25 +0000 (19:02 +0000)]
Merge "Do not use degenerate frames in EGL tests"
am:
f5971fe17f
Change-Id: Id81232def28656d87c26d69853ac54383e360327
Treehugger Robot [Wed, 16 Aug 2017 18:59:45 +0000 (18:59 +0000)]
Merge "Use safe glFramebufferTexture* function"
Treehugger Robot [Wed, 16 Aug 2017 18:59:42 +0000 (18:59 +0000)]
Merge "Do not use degenerate frames in EGL tests"
Alexander Galazin [Wed, 16 Aug 2017 18:41:58 +0000 (18:41 +0000)]
Merge "Report tests using Draw*BaseVertex as NotSupported"
am:
f96636fdfa
Change-Id: I1f262d8f3a4c772b3903653fb5e5080cd65bd868
Treehugger Robot [Wed, 16 Aug 2017 18:36:54 +0000 (18:36 +0000)]
Merge "Report tests using Draw*BaseVertex as NotSupported"
Alexander Galazin [Wed, 16 Aug 2017 18:18:24 +0000 (18:18 +0000)]
Merge "Fix error double accounting in fuzzyCompare()"
am:
0cf17c4bf8
Change-Id: Ie3cd66fceec9ac3a73d5d5fb237baf62660ed049
Treehugger Robot [Wed, 16 Aug 2017 18:06:52 +0000 (18:06 +0000)]
Merge "Fix error double accounting in fuzzyCompare()"
Michael Chock [Mon, 14 Aug 2017 18:55:14 +0000 (11:55 -0700)]
Do not use degenerate frames in EGL tests
The dEQP-EGL.functional.buffer_age.* and
dEQP-EGL.functional.partial_update.* tests use randomly-generated frames
for rendering. The test allows the generation of frames with a width or
height of 0, but the tcu::PixelBufferAccess interface does not permit
0-sized subregions (see assertions inside getSubregion overloads in
tcuTextureUtil.cpp).
Skip the rendering of degenerate frames in the reference renderer, as
they are unsupported but would not affect the rendering if they were.
Change-Id: I3977c3c293715db633dde74132e56b5d9303ab28
james.glanville [Wed, 16 Aug 2017 10:50:19 +0000 (11:50 +0100)]
Use safe glFramebufferTexture* function
glFramebufferTexture() is only supported when GL_EXT_geometry_shader is
present. Use glFramebufferTextureLayer() instead so that testing is
possible on unextended ES3.1 contexts.
Components: AOSP
Affects:
dEQP-GLES31.functional.shaders.framebuffer_fetch.basic.framebuffer_texture_level
Alexander Galazin [Wed, 16 Aug 2017 09:36:01 +0000 (11:36 +0200)]
Report tests using Draw*BaseVertex as NotSupported
Draw*BaseVertex methods were added in GLES 3.2.
Report tests using these methods as NotSupported if
GLES 3.1 context is returned.
Components: AOSP
Affects: dEQP-GLES31.functional.draw_base_vertex.*
Change-Id: I87c918d5f66a0a5b547f8e625c662203a7f85048
Alexander Galazin [Wed, 16 Aug 2017 07:16:35 +0000 (09:16 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: Ide170f0a90fd5bceb5028878d9638107f22d31f1
Alexander Galazin [Wed, 16 Aug 2017 00:30:11 +0000 (00:30 +0000)]
Check for tessellation/geometry extensions being exposed
am:
573154bb7b
Change-Id: Ib37ad273d16588101b8b4f6ade7f6f9e227faf5c
Alexander Galazin [Fri, 11 Aug 2017 16:13:49 +0000 (18:13 +0200)]
Add spirv-binaries validation step
Run external/vulkancts/scripts/build_spirv_binaries.py
as a build validation step to ensure that SPIR-V binaries
are not broken.
Components: Framework
VK-GL-CTS issue: 628
Change-Id: I74a88a16b26aa7be5f0b3c44dbeb71bae738049c
Vikram Kushwaha [Mon, 10 Jul 2017 20:35:26 +0000 (13:35 -0700)]
Add vulkan header changes for device groups
Base changes for device groups:
Add a command line option to query device group ID
Add a query function to enumerate physical device groups
Add VK_KHR_bind_memory2 extension
Components: Vulkan
VK-GL-CTS issue: 110
Change-Id: Id68404a45749408ce0d6749a7d45ab26e5ddd3d9
Alexander Galazin [Fri, 11 Aug 2017 18:01:02 +0000 (20:01 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I09a662342244af2eb5843842c5c918c4e08d7e80
Alexander Galazin [Fri, 11 Aug 2017 17:34:19 +0000 (19:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Change-Id: I90a5ab2f101b2dcd7372ac8721b944d7bcbb95d0
Gary Sweet [Thu, 27 Jul 2017 09:42:14 +0000 (10:42 +0100)]
Respect sampleRateShading availability in interpolate tests
Most of the tests in the dEQP-VK.pipeline.multisample_interpolation
group use one of the interpolatAt*() functions in their shaders.
These are only valid if sampleRateShading is available.
The multisampleStateInfo also blindly sets sampleShadingEnable
to true without checking.
Affects:
dEQP-VK.pipeline.multisample_interpolation.*
Components: Vulkan
VK-GL-CTS issue: 600
Change-Id: I0d8a85bcf9b59f1b9513482abef8cbf4ecabace3
Alexander Galazin [Fri, 11 Aug 2017 16:32:00 +0000 (18:32 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Change-Id: Iae127509ee1d187291e37c0ee9da7d331b070646
Alexander Galazin [Fri, 11 Aug 2017 16:02:58 +0000 (18:02 +0200)]
Merge vk-gl-cts/opengl-cts-next-dev into vk-gl-cts/master
Change-Id: I9c4f2379ae7c1beacc6bbd451b5b0c4f4bc1dfb9
Cygan, Slawomir [Tue, 18 Jul 2017 11:27:12 +0000 (13:27 +0200)]
This implements waiver from bug 13788 for texture_barrier tests.
If the waiver is enabled, the surface width is reduced to 16382 to avoid
rasterization problems.
As previously the waiver was GTF-only, this change moves it to shared
openglcts / kc-cts file.
Affects:
KHR-GL45.texture_barrier.*
KHR-GL45.texture_barrier_ARB.*
Component: OpenGL
VK-GL-CTS issue: 580
Change-Id: I1149f5a8810de0a5f00ecd4b6b8252511346f106
Maciej Jesionowski [Mon, 24 Jul 2017 13:08:35 +0000 (15:08 +0200)]
Allow wider range of statistics query results
Implementations may execute additional operations that count towards
the query counters.
Affects:
dEQP-VK.query_pool.statistics_query.*
Components: Vulkan
VK-GL-CTS issue: 589
Change-Id: I247ffdf415ba89bbb94ca88d9c71c45ffb7d9141
Gary Sweet [Wed, 26 Jul 2017 09:50:31 +0000 (10:50 +0100)]
Keep buffer memory alive through BufferView creation
The device memory used to create a buffer was going out
of scope and being freed too early. A buffer view was
subsequently made using the buffer. This is invalid.
This change extends the lifetime of the buffer memory to
match the buffer.
Affects:
dEQP-VK.api.buffer_view.create.*
Components: Vulkan
VK-GL-CTS issue: 574
Change-Id: I6605da750d6494587781285447a157ef12018459
Dave Airlie [Thu, 27 Jul 2017 19:43:53 +0000 (05:43 +1000)]
Fix combined depth/stencil clear colors.
This test was clearing depth to 256.0, values > 1.0 are undefined.
This fixes the the combined depth/stencil clears to use valid values
for depth and stencil.
Affects:
dEQP-VK.api.copy_and_blit.core.image_to_image.all_formats.depth_stencil.*
VK-GL-CTS Issue: 591
Change-Id: I75fd7e2bf17a84f7a2730f36b4bcdc066af1177c
Oivind Boge [Thu, 10 Aug 2017 10:24:02 +0000 (12:24 +0200)]
Fixed incorrect calculation of GCD
The calculation of greatest common divisor was
implemented incorrect when first added.
The function was using the input parameter instead
of its local copy of the input, which is updated
for each iteration of the calculation.
Affects:
dEQP-VK.api.image_clearing.*
Components: Vulkan
VK-GL-CTS issue: 625
Change-Id: I6619e4a30d89148d2567a725dbd27161fcf29a47
James Helferty [Mon, 19 Jun 2017 19:51:56 +0000 (15:51 -0400)]
Bump GLSL version for gl_PerVertex validation test
While gl_PerVertex was introduced into desktop GL in version 3.2, it
wasn't legal to redeclare it until after ARB_separate_shader_objects,
which became part of core in GL 4.1. This change bumps shader versions
up to GL 4.1 so we don't have to check for ARB_separate_shader_objects
all over the place.
Also add an error message in the event a subtest fails, so that it's
easier to identify which subtest(s) failed.
Components: OpenGL
VK-GL-CTS issue 505
Affects:
* KHR-GL41.CommonBugs.CommonBug_PerVertexValidation
* KHR-GL42.CommonBugs.CommonBug_PerVertexValidation
* KHR-GL43.CommonBugs.CommonBug_PerVertexValidation
* KHR-GL44.CommonBugs.CommonBug_PerVertexValidation
* KHR-GL45.CommonBugs.CommonBug_PerVertexValidation
Change-Id: I81405952e186377cb617e2d77063d09a0f5ce8fc
David Neto [Tue, 1 Aug 2017 14:13:55 +0000 (10:13 -0400)]
Parameterize SPIR-V assembly common types by block storage class
The default is "Uniform" but can be changed with an explicit argument
to getComputeAsmCommonTypes.
Now tests assemble and validate.
Fixes a bad merge into master.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.opatomic.*
dEQP-VK.spirv_assembly.instruction.compute.opatomic_storage_buffer.*
Components: Vulkan
VK-GL-CTS issue: 582
Change-Id: I6323eb279a62aabe62dfd50c25c77dd56e4ccd71
Oivind Boge [Sat, 8 Jul 2017 12:09:12 +0000 (14:09 +0200)]
Fix layout transition for WSI tests
The initial layout of the renderpass can't be
COLOR_ATTACHMENT_OPTIMAL without any transition
happening upfront.
Affects:
dEQP-VK.wsi.android.display_timing.*
dEQP-VK.wsi.android.incremental_present.*
Components: Vulkan
VK-GL-CTS issue: 565
Change-Id: Ie62f7aee21c52145090bf228db7031c0e4afb347
Gary Sweet [Thu, 27 Jul 2017 10:42:40 +0000 (11:42 +0100)]
Respect sampleRateShading availability in interpolate tests
Most of the tests in the dEQP-VK.pipeline.multisample_interpolation
group use one of the interpolatAt*() functions in their shaders.
These are only valid if sampleRateShading is available.
The multisampleStateInfo also blindly sets sampleShadingEnable
to true without checking.
Affects:
dEQP-VK.pipeline.multisample_interpolation.*
Components: Vulkan
VK-GL-CTS issue: 600
Change-Id: I95f91af9a7abb1e55ff2a3da0c0daefb819226f9
Tony Barbour [Wed, 28 Jun 2017 16:41:39 +0000 (10:41 -0600)]
Fix MultisampleRenderPassTest layout transitions
Section 6.6 of the Vulkan spec says:
If vkCmdPipelineBarrier is called within a render pass instance, the
oldLayout and newLayout members of an element of pImageMemoryBarriers
must be equal
so move the layout transition in this test to be outside the renderpass
Affects:
dEQP-VK.renderpass.multisample_resolve.*
Components: Vulkan
VK-GL-CTS Issue: 540
(cherry picked from commit
4e82d99e448dd22a697e3eff3b0fd1faf1e017c6)
Change-Id: Icddf8d7cb2b584a0db9e4569dcff6be66af1736e
Slawomir Cygan [Mon, 31 Jul 2017 12:22:50 +0000 (14:22 +0200)]
Fix regressions in synchronization tests for dedicated allocations
Pass image memory requirements to allocation routine in allocateAndBindMemory.
VK_KHR_get_memory_requirements2 is a device extension (not instance).
Throw NotSupported when external handle requires dedicated allocation,
but 'suballocated' variant of test is being run.
Affects:
dEQP-VK.synchronization.cross_instance.*
Components: Vulkan
VK-GL-CTS issue: 604
Change-Id: I3636779459300f5dee2e22b0a2e04762eb7b0601
Piotr Byszewski [Mon, 31 Jul 2017 14:59:32 +0000 (16:59 +0200)]
Test TF in separable program objects
Enforce that only attributes taken from the program object active
on the upstream shader are captured by transform feedback.
Components: OpenGL
VK-GL-CTS issue: 38
Affects:
KHR-GL45.separable_programs_tf.*
KHR-GLES32.core.separable_programs_tf.*
Change-Id: Ia9a0da88a4a4e110893d4b928b8c847a69047df1
Alexander Galazin [Wed, 9 Aug 2017 13:33:09 +0000 (15:33 +0200)]
Re-enable GLES2 gl_MaxDrawBuffers tests
Components: OpenGL
VK-GL-CTS issue: 279
Affects:
dEQP-GLES2.functional.shaders.builtin_variable.max_draw_buffers*
Change-Id: Iad76a50d5b1907811e8bce5fe1b6349efee0d830
Alexander Galazin [Thu, 20 Jul 2017 06:18:17 +0000 (08:18 +0200)]
Re-enable GLES2 gl_MaxVaryingVectors tests
Components: OpenGL
VK-GL-CTS issue: 279
Affects:
dEQP-GLES2.functional.shaders.builtin_variable.max_varying_vectors*
Change-Id: I8479923346a412a772db2b01d93132737941c5a5
Alexander Galazin [Thu, 20 Jul 2017 06:12:33 +0000 (08:12 +0200)]
Re-enable GLES2 negative copyteximage2d tests
Components: OpenGL
VK-GL-CTS issue: 289
Affects:
dEQP-GLES2.functional.negative_api.texture.copyteximage2d_invalid_border_tex2d
dEQP-GLES2.functional.negative_api.texture.copyteximage2d_invalid_border_cube_pos_x
dEQP-GLES2.functional.negative_api.texture.copyteximage2d_invalid_border_cube_pos_y
dEQP-GLES2.functional.negative_api.texture.copyteximage2d_invalid_border_cube_pos_z
dEQP-GLES2.functional.negative_api.texture.copyteximage2d_invalid_border_cube_neg_x
dEQP-GLES2.functional.negative_api.texture.copyteximage2d_invalid_border_cube_neg_y
dEQP-GLES2.functional.negative_api.texture.copyteximage2d_invalid_border_cube_neg_z
Change-Id: I25f59a7aaca830a0a2832dccade9469bc6d9f5b7
Arkadiusz Sarwa [Fri, 9 Jun 2017 15:58:01 +0000 (17:58 +0200)]
VK_KHR_maintenance2: View block-compressed formats
Add tests:
* dEQP-VK.image.texel_view_compatible.compute.image_load.*
* dEQP-VK.image.texel_view_compatible.compute.texel_fetch.*
* dEQP-VK.image.texel_view_compatible.compute.texture.*
* dEQP-VK.image.texel_view_compatible.compute.image_store.*
* dEQP-VK.image.texel_view_compatible.graphic.attachment_read.*
* dEQP-VK.image.texel_view_compatible.graphic.attachment_write.*
* dEQP-VK.image.texel_view_compatible.graphic.texture_read.*
* dEQP-VK.image.texel_view_compatible.graphic.texture_write.*
Components: Vulkan
VK-GL-CTS issue: 124
Change-Id: I8f12778e764144198dab603dbef72257faed0503
Boris Zanin [Mon, 10 Apr 2017 17:14:55 +0000 (19:14 +0200)]
VK_KHR_maintenance2: Point clipping
Updated tests:
* dEQP-VK.clipping.clip_volume.clipped.large_points
* dEQP-VK.rasterization.primitives.lines_wide
* dEQP-VK.rasterization.primitives.line_strip_wide
* dEQP-VK.rasterization.primitives_multisample_2_bit.lines_wide
* dEQP-VK.rasterization.primitives_multisample_4_bit.lines_wide
* dEQP-VK.rasterization.primitives_multisample_8_bit.lines_wide
Components: Vulkan
VK-GL-CTS issue: 126
Change-Id: Id0cecb96e8a448ec3eb09e2a25d6c82acd837057
Alexander Galazin [Fri, 11 Aug 2017 09:03:50 +0000 (11:03 +0200)]
Check for tessellation/geometry extensions being exposed
Some sample_variables tests use tessellation/geometry shaders.
Need to check that the relevant extensions are exposed.
Components: AOSP
Affects:
dEQP-GLES31.functional.debug.negative_coverage.*.oes_sample_variables.access_built_in_types_inside_other_shaders
Change-Id: Iff74939d474082938955e5b7ebfc41ea3b4a6ec5
Chih-Hung Hsieh [Thu, 10 Aug 2017 16:08:51 +0000 (16:08 +0000)]
Suppress non-critical warnings in external/deqp.
am:
b7ae0d8484
Change-Id: If56d6bd9d79e56a1030f2dfe2a051f3757892519
Marcin Rogucki [Fri, 21 Jul 2017 11:44:23 +0000 (13:44 +0200)]
Tests for VK_KHR_bind_memory2
Regular and aliased bindings with suballocated and
dedicatedly allocated memory are exercised.
Added tests:
* dEQP-VK.memory.binding.*
Components: Vulkan
VK-GL-CTS issue: 434
Change-Id: I853ca8b007a9b2f6340ed60cca1a5cb35887ec11
Alexander Galazin [Thu, 10 Aug 2017 08:13:06 +0000 (10:13 +0200)]
Add *test-issues files to GL mustpass
Components: OpenGL
Change-Id: Idfa558c35f6a838dd47d7e79ac680bbc1a98473a
James Helferty [Wed, 9 Aug 2017 15:56:27 +0000 (11:56 -0400)]
mustpass-- shader_subroutine.multiple_contexts
Temporarily remove shader_subroutine.multiple_contexts from the
mustpass lists until the shared context creation routines can be
reimplemented.
VK-GL-CTS issue: 624
Components: OpenGL
Affects:
* KHR-GL40.shader_subroutine.multiple_contexts
* KHR-GL41.shader_subroutine.multiple_contexts
* KHR-GL42.shader_subroutine.multiple_contexts
* KHR-GL43.shader_subroutine.multiple_contexts
* KHR-GL44.shader_subroutine.multiple_contexts
* KHR-GL45.shader_subroutine.multiple_contexts
Change-Id: Iae8bfdfe5351e87fa155d4ff79124941dc660f64
Alexander Galazin [Tue, 8 Aug 2017 11:15:40 +0000 (13:15 +0200)]
Fix error double accounting in fuzzyCompare()
fuzzyCompare() has a loop to go through all the pixels and generate error sum.
It skips some pixels using random number generator between 0-8.
Random number generator sometime generate 0 and it ends up
calculating error sum twice for the same pixel.
If this pixel has error, then this add up error sum twice.
Components: Framework
Change-Id: I08e06e29faedb99cfd8fa479e97a437c06008848
Chih-Hung Hsieh [Wed, 9 Aug 2017 23:23:07 +0000 (16:23 -0700)]
Suppress non-critical warnings in external/deqp.
* We should enable those warnings after fixing the upstream source code.
Bug:
64487164
Test: build with WITH_TIDY=1
Change-Id: Ie4961d23b8f57e8d3a3ada0e64df82ed18dd366f
Piers Daniell [Thu, 20 Jul 2017 21:53:13 +0000 (15:53 -0600)]
Clear the stencil attachment if it exists
The test uses VK_STENCIL_OP_INCREMENT_AND_WRAP which needs the
stencil attachment in a known state in order to produce
predictable results.
Affects:
dEQP-VK.renderpass.suballocation.multisample.s8_uint.samples_*
dEQP-VK.renderpass.suballocation.multisample.d16_unorm_s8_uint.samples_*
dEQP-VK.renderpass.suballocation.multisample.d24_unorm_s8_uint.samples_*
dEQP-VK.renderpass.suballocation.multisample.d32_sfloat_s8_uint.samples_*
dEQP-VK.renderpass.multisample.s8_uint.samples_*
dEQP-VK.renderpass.multisample.d16_unorm_s8_uint.samples_*
dEQP-VK.renderpass.multisample.d24_unorm_s8_uint.samples_*
dEQP-VK.renderpass.multisample.d32_sfloat_s8_uint.samples_*
Components: Vulkan
VK-GL-CTS issue: 584
Change-Id: I7ed5ced8b77a4563301320e50b2c247e95c34936
Gary Sweet [Tue, 8 Aug 2017 08:44:35 +0000 (09:44 +0100)]
Respect maximum workgroup count in SpvAsmInstructionTests
The createOpAtomic group was using a hard-coded 1000000
for numElements which is later used as the workgroup count.
The minimum mandatory workgroup count is 65535, far less
than the 1000000 being used.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.opatomic*
Components: Vulkan
VK-GL-CTS issue: 613
Change-Id: I523451d33dbb116e6ca2aaa00a948ec6782382b3
Alexander Galazin [Wed, 9 Aug 2017 09:35:32 +0000 (11:35 +0200)]
Update KC CTS reference
Components: OpenGL
VK-GL-CTS issue: 575
Change-Id: I3715585599319c4523ffafbfd72eb571a3435ba4
Piotr Byszewski [Fri, 21 Jul 2017 13:35:33 +0000 (15:35 +0200)]
Disallow unsized array of atomic_uint
It is a compile-time error to declare an unsized array of
atomic_uint.
Components: OpenGL
VK-GL-CTS issue: 398
Affects:
KHR-GLES31.core.shader_atomic_counters.negative-unsized-array
KHR-GL45.shader_atomic_counters.negative-unsized-array
Change-Id: Ib0f1e40660fa9fce830ae0710a3c51b9db9f4244
Iago Toral Quiroga [Thu, 6 Jul 2017 12:17:58 +0000 (14:17 +0200)]
Make DSA subimage/storage tests signal unsupported cases
The current implementation has a single test instance that
loops over a collection of types and sizes and produces a
single pass/fail result. Because some of the framebuffer
configurations produced may not be supported by the driver,
the test skips silently such configurations, which is not
desirable.
This patch rewrites the implementation so that we have a
separate test instance for each configuration instead. This
allows us to signal independent pass/fail/unsupported results
for each one.
Components: OpenGL
VK-GL-CTS issue: 494
Affects:
KHR-GL45.direct_state_access.textures_storage_and_subimage (removed)
KHR-GL45.direct_state_access.textures_storage_<imgtype>_<format> (added)
KHR-GL45.direct_state_access.textures_subimage_<imgtype>_<format> (added)
Change-Id: Id09459311df675f6e85579d12a30f8240fa5f703
Piotr Byszewski [Thu, 22 Jun 2017 08:18:18 +0000 (10:18 +0200)]
Add shader constant expression tests
This change adds common constant expression test that validates
calculated constant and uses it to size an array.
Components: OpenGL
VK-GL-CTS issue: 135, 136
Affects:
KHR-GL43.constant_expressions.*
KHR-GLES3.core.constant_expressions.*
KHR-GLES31.core.constant_expressions.*
KHR-GLES32.core.constant_expressions.*
Change-Id: I2462302850d664ea86226d4ad7d3243ce5b5fd62
Maciej Jesionowski [Wed, 26 Jul 2017 13:33:59 +0000 (15:33 +0200)]
Sparse buffer test: allocate memory in one big chunk
The test made excessive small memory allocations breaking the
maxMemoryAllocationCount limit.
Affects:
dEQP-VK.sparse_resources.buffer.transfer.sparse_binding.buffer_size_2_24
Components: Vulkan
VK-GL-CTS issue: 592
Change-Id: Ic7c1c07db2b805806e2c940d3fd4d96e12043aaf
Alexander Galazin [Tue, 8 Aug 2017 14:07:02 +0000 (16:07 +0200)]
Update GL mustpass after merge from AOSP
Components: OpenGL
Change-Id: I2226544ef43e3ce6f46c01200c60d78ef96cc12b
Alexander Galazin [Tue, 8 Aug 2017 11:06:03 +0000 (13:06 +0200)]
Merge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
Change-Id: I52520a9a723bc202cf54b8be5998fb2e9f58b7d5
Alexander Galazin [Tue, 8 Aug 2017 09:49:08 +0000 (11:49 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: I24587d5dd09eb63f4a4e846b30dc41d6634d2be2