Ari Suonpaa [Mon, 21 Aug 2017 08:58:05 +0000 (11:58 +0300)]
Add tests for chain access with different index bit sizes.
Add compute and graphics shader tests for indexing chain access
operations using 16, 32, and 64-bit indices.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.indexing.*
dEQP-VK.spirv_assembly.instruction.graphics.indexing.*
Components: Vulkan
VK-GL-CTS issue: 236
Change-Id: I7eb89493fe03dca71377f2f833028322669c819f
Ari Suonpaa [Tue, 22 Aug 2017 12:18:00 +0000 (15:18 +0300)]
Add tests for conditional branch with identical labels.
Add compute and graphics shader tests for OpBranchConditional
where both conditions point to the same branch.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.conditional_branch.same_labels*
dEQP-VK.spirv_assembly.instruction.graphics.conditional_branch.same_labels*
Components: Vulkan
VK-GL-CTS issue: 560
Change-Id: Ic2e0bfb8790469d134f413c58645d2228f933d36
Ari Suonpaa [Wed, 23 Aug 2017 10:20:30 +0000 (13:20 +0300)]
Changed large point clipping test to allow pop-free clipping.
Modified large point clipping test to allow both popful and
pop-free implementations by checking that either no points
or all points are rendered.
Affects:
dEQP-VK.clipping.clip_volume.clipped.large_points
Components: Vulkan
VK-GL-CTS issue: 414
Change-Id: I3a9b25f7562f69e085ef7f5d01cfe808e4990b97
Piotr Byszewski [Wed, 26 Jul 2017 12:20:51 +0000 (14:20 +0200)]
Test winding with tessellation shaders for OGL4.x
Conformance test case that verifies if CCW/CW qualifier specified
in TES does not changes the winding order of drawn primitives.
Components: OpenGL
VK-GL-CTS issue: 58
Affects:
KHR-GL44.tessellation_shader.winding.*
KHR-GL45.tessellation_shader.winding.*
KHR-GLES31.core.tessellation_shader.winding.*
KHR-GLES32.core.tessellation_shader.winding.*
Change-Id: I7093c935cac90ea1cc27dbdc74fcc42148589071
Boris Zanin [Mon, 12 Jun 2017 07:05:47 +0000 (09:05 +0200)]
Fix cmake warnings
Running cmake command under Windows as
cmake -G "Visual Studio 12 Win64" /path/to/vk-gl-cts
or
cmake /path/to/vk-gl-cts
there are policy warnings CMP0054 stating:
"Only interpret if() arguments as variables or keywords when unquoted"
Fix: remove unnecessary quoting at complaining lines.
Also do not use dereferencing (i.e. ${var}) on variable due to cmake
does dereferencing automatically on variables in if statement. Good
explanation is at https://stackoverflow.com/questions/
25809332/
Components: Framework
VK-GL-CTS issue: 492
Change-Id: I5258f4a5145588efb34ba2356ba25004277f9213
Slawomir Cygan [Mon, 17 Jul 2017 17:27:42 +0000 (19:27 +0200)]
Improve tests for minSampleShading
Existing tests had chicken & egg problem: they were just comparing resolved
images rendered to with minSampleShading > 0 to resolved images rendered to with
minSampleShading == 1. This means that any tests could pass in case of
consistent bug in sample shading.
This change reworks the test do proper validation of number of unique
generated samples:
- Renderpass is extended with passes for copying per-sample data into
single sampled images
- Single sampled images are than cross-checked on CPU: for each pixel,
the number of covered unique samples accross all images must be not less
than amoung expected from given minSampleShading value.
Affects:
dEQP-VK.pipeline.multisample.min_sample_shading.*
Components: Vulkan
VK-GL-CTS issue: 579
Change-Id: I24cbf471a499de5db39b028e598a13899114a3e4
Alexander Galazin [Fri, 25 Aug 2017 14:20:14 +0000 (16:20 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Change-Id: I8e084c0a4b9fc35fdc2521a6e29693e48c833498
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
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
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
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
Ian Elliott [Wed, 16 Aug 2017 21:11:57 +0000 (15:11 -0600)]
Fix flakiness in mailbox.display_timing
The "vktWsiDisplayTimingTests.cpp" file was originally written just for
a present mode of VK_PRESENT_MODE_FIFO_KHR. It has a case at image 80,
where it changes the desiredPresentTime to be 1 second earlier, and then
checks that later. Such a check doesn't work with
VK_PRESENT_MODE_MAILBOX_KHR, which can throw off the timing of images
(because some images may not be presented). This has resulted in the
test having random failures. The "image 80 test" wasn't intended to
occur with MAILBOX, and so it's now being removed.
VK-GL-CTS issue: 622
Components: Vulkan
Affects: dEQP-VK.wsi.*.display_timing.mailbox.display_timing
Change-Id: I9fbd2254b4e6fc1c7bff077c8c0a5229a6d74800
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
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
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
Alexander Galazin [Thu, 17 Aug 2017 14:16:09 +0000 (16:16 +0200)]
Add more allowed 'dot' alternatives
Expanded dot may be re-associated in multiple ways.
Add all possible alternatives to prevent precision failures.
Components: Vulkan
VK-GL-CTS issue: 634
Affects:
dEQP-VK.glsl.builtin.precision.dot.*
dEQP-VK.glsl.builtin.precision.reflect.*
Change-Id: I7fecbfa1cde04eab95bb3d418972631727d6d6af
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
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
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
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
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 09:49:08 +0000 (11:49 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: I24587d5dd09eb63f4a4e846b30dc41d6634d2be2
Alexander Galazin [Tue, 8 Aug 2017 09:03:56 +0000 (11:03 +0200)]
Fix Android EGL mustpass
Change-Id: I1e225b63f213757950bbf935d5e7db76c2b4e2d7
Alexander Galazin [Tue, 8 Aug 2017 08:50:37 +0000 (10:50 +0200)]
Fix teglGetProcAddressTests.inl
Change-Id: I64bddf85e6f0bcfc0cdf62c541578033ef9151f8
Mika Isojärvi [Mon, 7 Aug 2017 21:32:43 +0000 (14:32 -0700)]
Merge vk-gl-cts-public/master into aosp/deqp-dev
Change-Id: I48249f54d401d1dc8668690f9f30c6d5f57ab642
Alexander Galazin [Mon, 7 Aug 2017 14:39:40 +0000 (16:39 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Change-Id: I2b4820bff2ea412051cf36348d0b4c018a93559b
Adam Czupryna [Wed, 14 Jun 2017 09:03:42 +0000 (11:03 +0200)]
Add CTS_ARB_spirv_extensions test specification proposal
This is CTS_ARB_spirv_extensions specification proposal.
Components: OpenGL
VK-GL-CTS issue: 501
Change-Id: Ic7cbfc6e4a6a98c6e1f62ba5d370a2d4767ec4f2
Sławomir Cygan [Tue, 18 Jul 2017 09:31:30 +0000 (05:31 -0400)]
Fix tessellation tests do not test undefined tessLevel inputs
The spec says g gl_TessLevelOuter[2], gl_TessLevelOuter[3], and
both values in gl_TessLevelInner inputs are undefined in tessellation
evaluation shader, if isolines are tessellated.
To avoid testing undefined tessellation level inputs, change
the tessellated primitive type to QUADS
Affects:
KHR-GL45.tessellation_shader.tessellation_control_to_tessellation_evaluation.gl_tessLevel
Components: OpenGL
VK-GL-CTS issue: 488
This reverts commit
3c148ca8bc02a29c52d615a7b966671b54fcb356.
Change-Id: I9dde6ee281a3502a9205758ac9d06673ced528c5
Mika Isojarvi [Fri, 4 Aug 2017 23:04:08 +0000 (23:04 +0000)]
Merge "Release EGL resources in CTS worker threads"
am:
fde96926aa
Change-Id: Ia52375e654d91ca377183d37aad182565c78398f
Mika Isojarvi [Fri, 4 Aug 2017 22:55:11 +0000 (22:55 +0000)]
Merge "Release EGL resources in CTS worker threads"
Graeme Leese [Fri, 4 Aug 2017 22:15:38 +0000 (22:15 +0000)]
Merge "Fix extension support checks in negative api tests" into nougat-cts-dev am:
4f1051ad32 am:
5bd0fb31a1
am:
ea24f81118
Change-Id: I4e9d675338ada7ef2bbd7212ab952796703e1329
Graeme Leese [Fri, 4 Aug 2017 22:09:03 +0000 (22:09 +0000)]
Merge "Fix extension support checks in negative api tests" into nougat-cts-dev am:
4f1051ad32
am:
5bd0fb31a1
Change-Id: I2ab773e341fe8a0819963ca9351894ee740591cf
Graeme Leese [Fri, 4 Aug 2017 22:03:02 +0000 (22:03 +0000)]
Merge "Fix extension support checks in negative api tests" into nougat-cts-dev
am:
4f1051ad32
Change-Id: I4f54481292ffaaf5e1cf56a05ef24f7dfa4983f3