platform/upstream/VK-GL-CTS.git
7 years agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
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

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
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

7 years agoEnforce precision matching rules
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

7 years agoFramework support for VK_KHR_sampler_ycbcr_conversion
Pyry Haulos [Mon, 12 Jun 2017 20:52:42 +0000 (13:52 -0700)]
Framework support for VK_KHR_sampler_ycbcr_conversion

Change-Id: I749b92c79766f933ea34bb183d3d34c102e023c2

7 years agoTest arbitrary large descriptor binding numbers
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

7 years agoAdd support for 10 and 12bit packed unorm formats
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

7 years agoCheck KHR robust buffer access behavior
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

7 years agoAdd Android target API option
Jesse Hall [Fri, 4 Aug 2017 21:54:25 +0000 (14:54 -0700)]
Add Android target API option

Components: Framework
Change-Id: I9c86d2fac0dcf9067db9276a2096d849ea2775de

7 years agoSupport Android NDK r15
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

7 years agoProvide dedicated image when importing memory if required
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

7 years agoFix barries for framebuffer attachment tests
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

7 years agoClear all attachment layers for the multiview tests
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

7 years agoAvoid out-of-range depth values
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

7 years agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
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

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
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

7 years agoAdd tests for device group memory allocation with device masks
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

7 years agoRemove max anisotropic level draw test
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

7 years agoAdd tests for device group creation and device group queries
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

7 years agoUse RGBA_BPTC_UNORM instead of RGB8_ETC2
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

7 years agodrawCall error optional if beginXFB failed
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)

7 years agodrawCall error optional if beginXFB failed
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

7 years agoFix sparse buffer test for atomics
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

7 years agoCall glViewport before rendering to FBO
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

7 years agoUpdate GetTextureImage test for revised DSA error
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

7 years agoAdd missing struct types to vulkan header
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

7 years agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
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

7 years agoFix to PolygonOffsetClamp windows build
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

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/master
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

7 years agoAdd tests for reading 2x2 matrices in UBO without padding.
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

7 years agoTest OpAtomicCompareExchange in image atomic tests
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

7 years agoBuffer size query is zero with BindBufferBase
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

7 years agoInitialize variables for error tests
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

7 years agoFix missing invalidates for output buffers.
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

7 years agoAdd missing location qualifier on shader input
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

7 years agoFix cts-runner for KHR-NoContext.*
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

7 years agoRemove dEQP-GLES31.*vertex_array.*_invalid_map tests
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)

7 years agoCheck for tessellation/geometry extensions being exposed
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)

7 years agoAdd RENDERBUFFER_VALID bit to R8, RG8 definition
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)

7 years agoReport Android extension pack tests as not supported
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)

7 years agoQuery MAX_DRAW_BUFFERS if NV_draw_buffers is supported
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)

7 years agoAdd triangle edge guardband for Tex2D lookup diff
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)

7 years agoSkip OOB SSBO fragment tests for ES3.1 GPUs
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)

7 years agoIgnore A channel in EGL RGB5_A1 clear color tests
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)

7 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
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

7 years agoFix texture mip level size in framebuffer fetch tests
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

7 years agoFix texture mip level size in framebuffer fetch tests
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

7 years agoMerge "Use safe glFramebufferTexture* function"
james.glanville [Wed, 16 Aug 2017 19:02:41 +0000 (19:02 +0000)]
Merge "Use safe glFramebufferTexture* function"
am: ec5ccbe144

Change-Id: Ic1a4ef9c96f1d2ea1500f175d5c7d601240cb17d

7 years agoMerge "Do not use degenerate frames in EGL tests"
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

7 years agoMerge "Use safe glFramebufferTexture* function"
Treehugger Robot [Wed, 16 Aug 2017 18:59:45 +0000 (18:59 +0000)]
Merge "Use safe glFramebufferTexture* function"

7 years agoMerge "Do not use degenerate frames in EGL tests"
Treehugger Robot [Wed, 16 Aug 2017 18:59:42 +0000 (18:59 +0000)]
Merge "Do not use degenerate frames in EGL tests"

7 years agoMerge "Report tests using Draw*BaseVertex as NotSupported"
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

7 years agoMerge "Report tests using Draw*BaseVertex as NotSupported"
Treehugger Robot [Wed, 16 Aug 2017 18:36:54 +0000 (18:36 +0000)]
Merge "Report tests using Draw*BaseVertex as NotSupported"

7 years agoMerge "Fix error double accounting in fuzzyCompare()"
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

7 years agoMerge "Fix error double accounting in fuzzyCompare()"
Treehugger Robot [Wed, 16 Aug 2017 18:06:52 +0000 (18:06 +0000)]
Merge "Fix error double accounting in fuzzyCompare()"

7 years agoDo not use degenerate frames in EGL tests
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

7 years agoUse safe glFramebufferTexture* function
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

7 years agoReport tests using Draw*BaseVertex as NotSupported
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

7 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
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

7 years agoCheck for tessellation/geometry extensions being exposed
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

7 years agoAdd spirv-binaries validation step
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

7 years agoAdd vulkan header changes for device groups
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

7 years agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
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

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
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

7 years agoRespect sampleRateShading availability in interpolate tests
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

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
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

7 years agoMerge vk-gl-cts/opengl-cts-next-dev into vk-gl-cts/master
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

7 years agoThis implements waiver from bug 13788 for texture_barrier tests.
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

7 years agoAllow wider range of statistics query results
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

7 years agoKeep buffer memory alive through BufferView creation
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

7 years agoFix combined depth/stencil clear colors.
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

7 years agoFixed incorrect calculation of GCD
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

7 years agoBump GLSL version for gl_PerVertex validation test
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

7 years agoParameterize SPIR-V assembly common types by block storage class
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

7 years agoFix layout transition for WSI tests
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

7 years agoRespect sampleRateShading availability in interpolate tests
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

7 years agoFix MultisampleRenderPassTest layout transitions
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

7 years agoFix regressions in synchronization tests for dedicated allocations
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

7 years agoTest TF in separable program objects
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

7 years agoRe-enable GLES2 gl_MaxDrawBuffers tests
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

7 years agoRe-enable GLES2 gl_MaxVaryingVectors tests
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

7 years agoRe-enable GLES2 negative copyteximage2d tests
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

7 years agoVK_KHR_maintenance2: View block-compressed formats
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

7 years agoVK_KHR_maintenance2: Point clipping
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

7 years agoCheck for tessellation/geometry extensions being exposed
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

7 years agoSuppress non-critical warnings in external/deqp.
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

7 years agoTests for VK_KHR_bind_memory2
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

7 years agoAdd *test-issues files to GL mustpass
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

7 years agomustpass-- shader_subroutine.multiple_contexts
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

7 years agoFix error double accounting in fuzzyCompare()
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

7 years agoSuppress non-critical warnings in external/deqp.
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

7 years agoClear the stencil attachment if it exists
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

7 years agoRespect maximum workgroup count in SpvAsmInstructionTests
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

7 years agoUpdate KC CTS reference
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

7 years agoDisallow unsized array of atomic_uint
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

7 years agoMake DSA subimage/storage tests signal unsupported cases
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

7 years agoAdd shader constant expression tests
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

7 years agoSparse buffer test: allocate memory in one big chunk
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

7 years agoUpdate GL mustpass after merge from AOSP
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

7 years agoMerge vk-gl-cts/master into vk-gl-cts/vulkan-cts-next-dev
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

7 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
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