platform/upstream/VK-GL-CTS.git
7 years agoFix sparse cubemap array tests issues
Jeannot Breton [Thu, 25 May 2017 20:48:20 +0000 (15:48 -0500)]
Fix sparse cubemap array tests issues

Add cubeMapArrayRefZDef, a new shader token used as <compare>
parameters on some shadow cube map array texture instructions

Add <CUBE_REFZ_DEF> to some FunctionToken argument list definitions.
It will be replaced by the value of cubeMapArrayRefZDef.

Copy the depth reference value to s.cubeMapArrayRefZDef when we
generate the shader tokens

Change the way cube map array texture coordinate are computed in
the shader to support array with more than 6 layers

Specify that textureGradClampARB on shadow cubemap array is not
supported

Generate cube map array texture coordinate attributes as a vec4
with different coordinate for each layer

Affects:

KHR-GL45.sparse_texture2_tests.*
KHR-GL45.sparse_texture_clamp_tests.*

Components: OpenGL

VK-GL-CTS issue: 445

Change-Id: Ia9fb2240396ab4a34dd697d0b96985da35dfe802

7 years agoSkip height validation on TEXTURE_1D_ARRAY
Jeannot Breton [Wed, 24 May 2017 21:21:13 +0000 (16:21 -0500)]
Skip height validation on TEXTURE_1D_ARRAY

In verifyTexStorageInvalidValueErrors the test validate that a
GL_INVALID_VALUE error is returned by the GL when the height
parameters of the texStorage call is invalid.

The height is ignored by the texStorage call for 1d array, so the
error is never generated.

We should skip this validation for 1d array

Affects:

KHR-GL45.sparse_texture_tests.*

Components: OpenGL

VK-GL-CTS issue: 437

Change-Id: Ibe93db467deb560f5394b4b658dfa3f32a953709

7 years agoFix texPageCommitment alignment test
Jeannot Breton [Thu, 25 May 2017 00:10:18 +0000 (19:10 -0500)]
Fix texPageCommitment alignment test

In verifyInvalidValueErrors, the test wants to validate that
texPageCommitment returns a GL_INVALID_VALUE error when the page
depth offset is not a multiple of pageSizeZ.
However if pageSizeZ equals 1, any z offset will be a multiple of
pageSizeZ and the test should not return an error.

Logic is added to make sure there's really an alignment error

Affects:

KHR-GL45.sparse_texture_tests.*

Components: OpenGL

VK-GL-CTS issue: 438

Change-Id: If7a00dee071c1dafabbda608f7cdbb14d1eb56b3

7 years agotextureClamp texcoord with shadow 1d uses vec3
Jeannot Breton [Thu, 25 May 2017 18:08:39 +0000 (13:08 -0500)]
textureClamp texcoord with shadow 1d uses vec3

This change modifies the current shader generation for textureClamp
subtests.
s.coordType and s.sizeDef will now use vec3 for sampler1DArrayShadow
and sampler1DShadow

Affects:

KHR-GL45.sparse_texture_clamp_tests.*

Components: OpenGL

VK-GL-CTS issue: 443

Change-Id: I025061981877a62b6eed6bcc6c783f6fdc68c7d3

7 years agoInitialize FunctionToken for every iteration
Jeannot Breton [Thu, 25 May 2017 14:34:52 +0000 (09:34 -0500)]
Initialize FunctionToken for every iteration

The change initializes the variable inside the loop so it gets
re-initialized at every iteration.

This help avoid issues where changes accumulates at every iteration

Affects:

KHR-GL45.sparse_texture_clamp_tests.*

Components: OpenGL

VK-GL-CTS issue: 442

Change-Id: I10eac411a03b3eff5139026ac004dc2df0c025f0

7 years agoSet uncommited region access expected data to 0
Jeannot Breton [Thu, 25 May 2017 14:02:56 +0000 (09:02 -0500)]
Set uncommited region access expected data to 0

In the GL_TEXTURE_CUBE_MAP path, the expected data is initialized
to 0xff. This seems incorrect.
The test will only fecth the uncommitted region of the texture which
should return 0.

This change fixes this issue and initializes the data to 0

Affects:

KHR-GL45.sparse_texture2_tests.*
KHR-GL45.sparse_texture_clamp_tests.*

Components: OpenGL

VK-GL-CTS issue: 441

Change-Id: Ic00cdfde24248d1640fe458c8f0a547d7d174e3d

7 years agoReturn an error if the pagesize index is invalid
Jeannot Breton [Wed, 24 May 2017 20:27:14 +0000 (15:27 -0500)]
Return an error if the pagesize index is invalid

In verifyTexStorageVirtualPageSizeIndexError, the test call
texStorage with a VIRTUAL_PAGE_SIZE_INDEX texture parameter set
to NUM_VIRTUAL_PAGE_SIZES + 1.

However the verifyError after the texStorage expect GL_NO_ERROR.
It should be GL_INVALID_OPERATION

Affects:

KHR-GL45.sparse_texture_tests.*

Components: OpenGL

VK-GL-CTS issue: 436

Change-Id: I43d02dcbee4bbe2c81feb4a17e9fde7386375656

7 years agoFix pack alignment issue on odd window width
Jeannot Breton [Mon, 22 May 2017 20:26:07 +0000 (15:26 -0500)]
Fix pack alignment issue on odd window width

The test allocates a buffer of width*height elements and expects the
readPixels to only write to this memory.

This is not correct if the window width is not a multiple of 4

Adding a gl.pixelStorei(GL_PACK_ALIGNMENT, 1) before the readPixels
fixes the issue

Affects:

KHR-GL45.indirect_parameters_tests.MultiDrawArraysIndirectCount

Components: OpenGL

VK-GL-CTS issue: 433

Change-Id: I7f8b92af7b5a27a6770e7cde23e51df30508a3c0

7 years agoRemove OUT_OF_MEMORY coverage of buffer api
James Helferty [Wed, 24 May 2017 15:54:42 +0000 (11:54 -0400)]
Remove OUT_OF_MEMORY coverage of buffer api

The OpenGL spec leaves much of the behaviour around OUT_OF_MEMORY
errors undefined, which makes it difficult to test for them. Regardless
of whether the error is generated or not, the GL context is by
definition left in an undefined state, which could invalidate any
subsequent tests' results.

This change removes OUT_OF_MEMORY test coverage.

VK-GL-CTS issue 435

Component: OpenGL

Affects:

KHR-GL45.direct_state_access.buffers_errors

Change-Id: I6436d4d72a0a7b7cd08336895e400d85bea8da15

7 years agoAdded CTS_ARB_shader_ballot specification proposal
Filip Demczewski [Wed, 4 Jan 2017 13:30:28 +0000 (14:30 +0100)]
Added CTS_ARB_shader_ballot specification proposal

affects:

GL45-CTS.shader_ballot_tests.*

components: OpenGL

VK-GL-CTS issue: 143

Change-Id: Ida320ac444665f09edd86d6a69aae9af7515a237

7 years agoMerge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/master
Alexander Galazin [Wed, 24 May 2017 15:15:11 +0000 (17:15 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/master

Change-Id: I95690b5479602db484d2f89bdc711a683afe96b4

7 years agoFix uniform location use in robust_buffer_access
Graeme Leese [Thu, 11 May 2017 15:17:02 +0000 (16:17 +0100)]
Fix uniform location use in robust_buffer_access

Common code will try to set the texture at uniform location 0, so change
the ES shader to use location 0.

Affects: KHR-GLES32.robust.robust_buffer_access_behavior.texel_fetch

Components: OpenGL
VK-GL-CTS Issue: 416

Change-Id: I6e4e291b33072b16e1ab73eb8592afd00687adc7

7 years agoRemove dEQP-GLES31.*.vertex_array.*_invalid_map
Alexander Galazin [Wed, 17 May 2017 09:39:12 +0000 (11:39 +0200)]
Remove dEQP-GLES31.*.vertex_array.*_invalid_map

The tests expects GL_INVALID_OPERATION to be generated if
a non-zero buffer object name is bound to an enabled array
or the element array and the buffer object's data store
is currently mapped.

Such behavior is not required by the specification.

Components: OpenGL

Affects:
dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_elements_base_vertex_invalid_map
dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_elements_instanced_base_vertex_invalid_map
dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_range_elements_base_vertex_invalid_map

VK-GL-CTS issue: 429

Change-Id: Ib7e9c95dde9b86f227b3d014210a2fe732315f31

7 years agoRemove unused function from es31fSRGBDecodeTests.cpp
Pyry Haulos [Tue, 16 May 2017 14:25:35 +0000 (07:25 -0700)]
Remove unused function from es31fSRGBDecodeTests.cpp

Unused function causes compiler warnings to appear with recent GCC
versions.

Change-Id: I941c579994acbc9146df86acf5b9da9ee85341f5
(cherry picked from commit 1ee59ff98641dc0be7511e03e37b5843ff7eed82)

7 years agoFix texture/sampler mapping in sRGB tests
Alexander Galazin [Thu, 11 May 2017 12:27:20 +0000 (14:27 +0200)]
Fix texture/sampler mapping in sRGB tests

sRGB decode tests assume that an API side texture with index i
is connected with a shader sampler variable uTexture with index i.

This relation was however incorrectly established, e.g.
the tests were mapping texture0 to a sampler with location 0, while
such sampler was not necessarily uTexture0.

This change fixes the mapping and makes the relation more obvious.

Components: AOSP
Affects:
dEQP-GLES31.functional.srgb_texture_decode.skip_decode.*.toggled
dEQP-GLES31.functional.srgb_texture_decode.skip_decode.*.conversion_gpu

Google bug: 38257749
VK-GL-CTS issue: 428

Change-Id: I16508f6033b31583b1c5973b70a610dd59e78e8f
(cherry picked from commit c8efb45eadba4a910ab5770b2207582cf1bb7ca0)

7 years agoAdjust out of surface verification for wide lines
Alexander Galazin [Wed, 10 May 2017 08:36:53 +0000 (10:36 +0200)]
Adjust out of surface verification for wide lines

Wide lines rasterization tests may draw lines out of
the allocated surfaces. Such situation causes verification
failures.
This change adjust the verification algorithm to ignore
missing pixels for out of surface rendering.

Components: Framework

Affects:
dEQP-GLES2.functional.rasterization.primitives.lines_wide
dEQP-GLES2.functional.rasterization.primitives.line_strip_wide
dEQP-GLES2.functional.rasterization.primitives.line_loop_wide

VK-GL-CTS issue: 427

Change-Id: Ia70f33fb6daad0d3774ae9edbd438bd14296f1d3
(cherry picked from commit c065847203ba5c1ec0bba76fe06e0b7a17cbc6af)

7 years agoEnsure vertex shader presence if a geometry shader exists
Alexander Galazin [Mon, 8 May 2017 12:59:38 +0000 (14:59 +0200)]
Ensure vertex shader presence if a geometry shader exists

Certain tests verify that INVALID_OPERATION is generated
if a geometry shader is active and mode is incompatible with
the input primitive type of the geometry shader in the currently
installed program object. However these tests have no vertex shader and
this is the real reason why INVALID_OPERATION is generated.
This change ensures that the vertex shader is present.

Components: AOSP

VK-GL-CTS issue: 426

Affects:
dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_elements_base_vertex_primitive_mode_mismatch
dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_elements_instanced_base_vertex_primitive_mode_mismatch
dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_range_elements_base_vertex_primitive_mode_mismatch

Change-Id: I36bcee8892e4f641feadb0b444a53ed35273b727
(cherry picked from commit f5f087e9bd571b5aee3b810957af7051cd82d2c0)

7 years agoFix DrawRangeElementsBaseVertex tests with negative basevertex
Alexander Galazin [Tue, 9 May 2017 08:44:12 +0000 (10:44 +0200)]
Fix DrawRangeElementsBaseVertex tests with negative basevertex

DrawRangeElementsBaseVertex tests with negative basevertex call
glDrawRangeElementsBaseVertex with start = 0 and basevertex = -1.
According to the spec: If no element array buffer is bound, the vertex ID of
the ith element transferred is indices[i] + basevertex...
If the vertex ID is larger than the maximum value representable by type,
it should behave as if the calculation were upconverted to 32-bit unsigned
integers (with wrapping on overflow conditions).
Behavior of DrawElementsOneInstance is undefined if the vertex ID is negative
for any element, and should be handled as described in section 6.4.

This change ensures that indexMin + baseVertex will be zero or positive value.

Components: AOSP

VK-GL-CTS issue: 425

Affects:
dEQP-GLES31.functional.draw_base_vertex.draw_range_elements_base_vertex.base_vertex.index_neg_byte
dEQP-GLES31.functional.draw_base_vertex.draw_range_elements_base_vertex.base_vertex.index_neg_short
dEQP-GLES31.functional.draw_base_vertex.draw_range_elements_base_vertex.base_vertex.index_neg_int

Change-Id: I07a9e6bc60d4340784d400b5087bb8fff01f0e57
(cherry picked from commit e490e2f2158aa9d3aec7d8e385ca3995fefc9ffd)

7 years agoFix negative CompressedTexImage2D tests
Alexander Galazin [Mon, 8 May 2017 12:31:15 +0000 (14:31 +0200)]
Fix negative CompressedTexImage2D tests

Certain tests expect GL_INVALID_VAULE for
glCompressedTexImage2D(GL_TEXTURE_2D, -1, 0x8b90, 0, 0, 0, 0, 0).

0x8b90 is a palette format PALETTE4_RGB8 and
the OES_compressed_paletted_texture extension allows
negative values for the level parameter:
    Accepted by the <level> parameter of CompressedTexImage2D
        Zero and negative values.  |level| + 1 determines the number of
        mip levels defined for the paletted texture.

This change fixes the tests in presence of
the OES_compressed_paletted_texture extension.

Components: AOSP
Google bug: 38109626
VK-GL-CTS issue: 424

Affects:
dEQP-GLES2.functional.negative_api.texture.compressedteximage2d_neg_level_tex2d
dEQP-GLES2.functional.negative_api.texture.compressedteximage2d_neg_level_cube

Change-Id: Ia37e3fecaf3547abfb209803378114043c63a243
(cherry picked from commit 9de005f0355e389f1782543f34e0fb3c65a0a700)

7 years agoCorrect the test conditions for sRGB_write_control
Graeme Leese [Tue, 9 May 2017 14:21:53 +0000 (15:21 +0100)]
Correct the test conditions for sRGB_write_control

The extension is not part of ES3.2, so the not-supported version of the
tests should be run on ES3.2 implementations without the
GL_EXT_sRGB_write_control extension.

VK-GL-CTS Issue: 389
Components: AOSP

Affects:
dEQP-GLES31.functional.fbo.srgb_write_control.framebuffer_srgb_enabled
dEQP-GLES31.functional.fbo.srgb_write_control.framebuffer_srgb_unsupported_enum

Change-Id: I42a531aa7d1ad38f7a85cde1a5da659f780ec5d5
(cherry picked from commit 2d987e3b1e3c564ddc197124b1c7689aed060b8e)

7 years agoUpdate KC CTS ref
Alexander Galazin [Wed, 24 May 2017 06:59:51 +0000 (08:59 +0200)]
Update KC CTS ref

Components: OpenGL

VK-GL-CTS issue: 430

Affects:
GTF-GL45.gtf30.GL3Tests.framebuffer_srgb.framebuffer_srgb_draw

Change-Id: I01b5d5bb9ae37b24a44427c1a7cd735f98e60675

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Pyry Haulos [Mon, 22 May 2017 19:34:20 +0000 (12:34 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: Ie841d0a435d1d587450b7c2d57307b37b3295bbb

7 years agoRefactor X11 and wayland platforms to run alongside each other
Slawomir Cygan [Wed, 11 Jan 2017 16:17:11 +0000 (17:17 +0100)]
Refactor X11 and wayland platforms to run alongside each other

This adds a capability for running Vulkan WSI ane EGL tests on both
X11 and wayland compositors from one binary built in 'default' target.

The change replaces X11 & wayland tcu::Platform-s with one common
'linux' platform, that is parametrized by DEQP_SUPPORT_
(X11|GLX|XCB|WAYLAND) at compile time.

This new platform supports creating WSI displays and EGL contexts
for each of compositors enabled at build-time. To choose EGL compositor
use --deqp-egl-display-type=x11 or Wayland.

No functional change is made to 'wayland' target: it is still possible
to build Wayland-only binary using that target.

VK-GL-CTS issue: 83
Components: Framework
Affects: dEQP-VK.wsi.* and all tests using EGL.

Change-Id: I1d8725d1329e1071ac545f765c374d2d7d5a29df

7 years agoFix compute shader in robustness tests to produce an output
Iago Toral Quiroga [Thu, 11 May 2017 09:11:48 +0000 (11:11 +0200)]
Fix compute shader in robustness tests to produce an output

The compute shader only writes to shared variables, which means
that it doesn't produce any useful output. Shader compiler
backends can see this and mark all uniform variables declared
by the shader as "inactive" and remove them, which would defeat
the purpose of the 'getnuniform' test and lead to a failure.
Fix this by making the compute shader write to a shader storage
buffer object instead, so that uniforms remain active for being
involved in generating a shader output.

Component: OpenGL
VK-GL-CTS issue: 415

Affects:
KHR-GL45.robustness.getnuniform

Change-Id: I67b3fd8eb3a63012b6c46713e17c86d51b42d82e

7 years agoTie TCS XFB to Desktop GL + NV_gpu_shader5
James Helferty [Mon, 10 Apr 2017 18:20:30 +0000 (14:20 -0400)]
Tie TCS XFB to Desktop GL + NV_gpu_shader5

This change ties the ability to read PATCHES data directly from a
tessellation control shader via transform feedback to the presence of
NV_gpu_shader5 and a desktop context. Any other use of transform
feedback from a tessellation control shader is considered an error.

As part of this change, we also revert a change that used the wrong
notation for consuming PATCHES data with transform feedback.

(Reverts part of 1ab254234c4f6c45036ba68f67980858e0ef5001)

Affects:

KHR-GLES31.core.tessellation_shader.single.xfb_captures_data_from_correct_stage
KHR-GLES32.core.tessellation_shader.single.xfb_captures_data_from_correct_stage
KHR-GL44.tessellation_shader.single.xfb_captures_data_from_correct_stage
KHR-GL45.tessellation_shader.single.xfb_captures_data_from_correct_stage

Component: OpenGL

VK-GL-CTS issue: 365

Change-Id: Ie5619f9146448c54906401d2805de676000b34e8

7 years agoRemove copy_image special path for rgb9e5/rg11b10
Jeannot Breton [Wed, 10 May 2017 19:25:02 +0000 (14:25 -0500)]
Remove copy_image special path for rgb9e5/rg11b10

Copy_image is similar to a memcpy. When analyzing copy_image result,
the test have a special path for rgb9e5 and rg11b10.
Instead of using a memcmp, it converts each component to float and
then compare values.

This could be problematic, when data from other formats is
reinterpreted as rgb9e5/rg11b10, the result can be INF or NAN.

Doing a float equal comparison on 2 NAN values will return false,
so we can have 2 identical 32-bits values that are considered
different by the test because they are reinterpreted as float.

This change remove the special path for rgb9e5 and rg11b10.
I don't think it is required since copy_image should be like a
memcpy, a memcmp should be enough to verify the result

Affects:

KHR-GL45.copy_image.functional

Components: OpenGL

VK-GL-CTS issue: 404

Change-Id: Ifc7f7b4c8d62692e9364510ebc4e4162468e9568

7 years agoKHR-GL44.khr_debug: create texture before calling glObjectLabel
Slawomir Cygan [Wed, 10 May 2017 17:09:07 +0000 (19:09 +0200)]
KHR-GL44.khr_debug: create texture before calling glObjectLabel

The test does not call glBindTexture after glGenTextures, so
texture object is not created.

This causes later glObjectLabel GL error checks to fail due to wrong
 GL error codes.

Affects: KHR-GL44.khr_debug.*
Components: OpenGL
VK-GL-CTS Issue: 410

Change-Id: I9036264b2c549c58a5a80fb1ec89e1fdaae4b6b7

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Pyry Haulos [Thu, 18 May 2017 23:02:57 +0000 (16:02 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: I305e5144dee58d10e2284e1824d9d4683a9c67d8

7 years agoFix Vulkan null driver
Pyry Haulos [Thu, 18 May 2017 22:42:53 +0000 (15:42 -0700)]
Fix Vulkan null driver

Vulkan platform was changed to use vkGetInstanceProcAddr(NULL, pName)
for loading all platform-level functions, except vkGetInstanceProcAddr
itself, in commit bbd3dce44fafaa4b1952b63564022f19b3a65ca3. Null
driver was not adjusted for that change and that resulted calling into
null function pointer early in the initialization code.

Additionally, null driver now advertises HOST_COHERENT memory.

Change-Id: I65c8b37722950de08e337d7df95aa46a0e826c7b

7 years agoFix extension check in ES3.2 BoundingBox test
Graeme Leese [Thu, 11 May 2017 16:03:23 +0000 (17:03 +0100)]
Fix extension check in ES3.2 BoundingBox test

The test is still using the suffixed name to access gl_BoundingBox[EXT],
which means it still needs to enable the extension.

Affects: dEQP-GLES31.functional.android_extension_pack.shaders.es32.
extension_directive.ext_primitive_bounding_box

Components: AOSP

VK-GL-CTS issue: 423

Change-Id: I652e59b6ca29b1d237028eac57fc860731378c35
(cherry picked from commit abef7613781dfc4b07b8a37cd17ab5fe3dfe0c01)

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Pyry Haulos [Tue, 16 May 2017 18:03:58 +0000 (11:03 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: Icf7defc7279b1b0cf9f6b13498de3d1456239e9c

7 years agoUpdate vulkan.h.in to 1.0.49 and strip unused exts
Pyry Haulos [Wed, 10 May 2017 16:54:23 +0000 (09:54 -0700)]
Update vulkan.h.in to 1.0.49 and strip unused exts

This change updates vulkan.h.in to match header version 49.
Vendor-specific extensions and KHX extensions that are not covered by CTS
are removed.

gen_framework.py now auto-detects function class from its first argument,
except for vkGet*ProcAddr, which require special handling.

Components: Vulkan

Change-Id: If6e1d959091a9064585bf29ef9983d03649ce513

7 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Pyry Haulos [Tue, 16 May 2017 16:12:09 +0000 (09:12 -0700)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: Iee00ded195e3178e685470b19df25a9b352ddfb5

7 years agoRemove unused function from es31fSRGBDecodeTests.cpp
Pyry Haulos [Tue, 16 May 2017 16:03:30 +0000 (16:03 +0000)]
Remove unused function from es31fSRGBDecodeTests.cpp
am: 1ee59ff986

Change-Id: I0bf132f2d1a09e66768bddc5818906aa0e066967

7 years agoRemove unused function from es31fSRGBDecodeTests.cpp
Pyry Haulos [Tue, 16 May 2017 14:25:35 +0000 (07:25 -0700)]
Remove unused function from es31fSRGBDecodeTests.cpp

Unused function causes compiler warnings to appear with recent GCC
versions.

Change-Id: I941c579994acbc9146df86acf5b9da9ee85341f5

7 years agoFix texture/sampler mapping in sRGB tests
Alexander Galazin [Mon, 15 May 2017 20:17:42 +0000 (20:17 +0000)]
Fix texture/sampler mapping in sRGB tests
am: c8efb45ead

Change-Id: I23849cbcae67248ac5ca55f443f226d6b1e4389e

7 years agoFix texture/sampler mapping in sRGB tests
Alexander Galazin [Thu, 11 May 2017 12:27:20 +0000 (14:27 +0200)]
Fix texture/sampler mapping in sRGB tests

sRGB decode tests assume that an API side texture with index i
is connected with a shader sampler variable uTexture with index i.

This relation was however incorrectly established, e.g.
the tests were mapping texture0 to a sampler with location 0, while
such sampler was not necessarily uTexture0.

This change fixes the mapping and makes the relation more obvious.

Components: AOSP
Affects:
dEQP-GLES31.functional.srgb_texture_decode.skip_decode.*.toggled
dEQP-GLES31.functional.srgb_texture_decode.skip_decode.*.conversion_gpu

Google bug: 38257749

Change-Id: I16508f6033b31583b1c5973b70a610dd59e78e8f

7 years agoAdded CTS_ARB_shader_ballot tests
Filip Demczewski [Mon, 16 Jan 2017 12:27:50 +0000 (13:27 +0100)]
Added CTS_ARB_shader_ballot tests

Added CTS_ARB_shader_ballot cases:
ShaderBallotAvailabilityTestCase
ShaderBallotBitmasksTestCase
ShaderBallotFunctionBallotTestCase
ShaderBallotFunctionReadTestCase

affects:

GL45-CTS.shader_ballot_tests.*

components: OpenGL

VK-GL-CTS issue: 143

Change-Id: I28c724a84adab7e40edb542e70bc019cde0a0156

7 years agoFix VS2013 build by avoiding using non-standard C extension
Boris Zanin [Mon, 15 May 2017 08:00:50 +0000 (10:00 +0200)]
Fix VS2013 build by avoiding using non-standard C extension

Avoid using C++14 0b prefix.

Affects:
 * GL45-CTS.shader_atomic_counter_ops_tests.*

Components: OpenGL

VK-GL-CTS issue: 175

Change-Id: Ia500db76e1112933ad3471e9ac29423ccda81d4f

7 years agoAdded CTS_ARB_shader_group_vote tests
Filip Demczewski [Thu, 16 Mar 2017 15:17:13 +0000 (16:17 +0100)]
Added CTS_ARB_shader_group_vote tests

Added CTS_ARB_shader_group_vote cases:
ShaderGroupVoteAvailabilityTestCase
ShaderGroupVoteAllInvocationsTestCase
ShaderGroupVoteAnyInvocationTestCase
ShaderGroupVoteAllInvocationsEqualTestCase

affects:

GL45-CTS.shader_group_vote_tests.*

components: OpenGL

VK-GL-CTS issue: 211

Change-Id: I479b09277d8386c41b007075465f8ea383fb7f0a

7 years agoresolve merge conflicts of 633ab6f3 to deqp-dev
Pyry Haulos [Fri, 12 May 2017 20:46:38 +0000 (13:46 -0700)]
resolve merge conflicts of 633ab6f3 to deqp-dev

Change-Id: I879838e31c3fc6bbceb102c9b2720a2372360c1a

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Pyry Haulos [Fri, 12 May 2017 20:30:28 +0000 (13:30 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: Icd63416e0133bca1c1580e3c36b950caa7b1bc23

7 years agoImport fixes from Android Vulkan CTS 1.0.2 branch
Pyry Haulos [Fri, 12 May 2017 20:26:36 +0000 (13:26 -0700)]
Import fixes from Android Vulkan CTS 1.0.2 branch

 * Android copy of mustpass is updated to exclude waived tests.

 * Add missing file to Android.mk

 * Add -fwrapv and -Wno-delete-non-virtual-dtor to Android.mk

Change-Id: I9cdb0b0490dbad4134ad085216c3969cda40747a

7 years agoRemove tcuWin32GLES3Platform.*
Pyry Haulos [Fri, 12 May 2017 18:03:48 +0000 (11:03 -0700)]
Remove tcuWin32GLES3Platform.*

GLES3 wrapper is no longer supported so these are clearly broken.

Components: Framework

Change-Id: I656b70aecc5f0380d99b471a516d271f5b820836

7 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Pyry Haulos [Fri, 12 May 2017 17:53:03 +0000 (10:53 -0700)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: I2d372c38240ffa856509c479b4f24b03ca95649c

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Pyry Haulos [Fri, 12 May 2017 17:31:32 +0000 (10:31 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: I94c771f530e058c9ac30185e2708fd0ac6fccf36

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Pyry Haulos [Fri, 12 May 2017 17:31:29 +0000 (10:31 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I11828b81ea4c9e67dc879dd98a9cbf91341de2c9

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1
Pyry Haulos [Fri, 12 May 2017 17:31:26 +0000 (10:31 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1

Change-Id: I6245604cf5ce44a2c4d9c064efb65b058d8f24eb

7 years agoAdd more alternatives to reflect() precision tests
Iago Toral Quiroga [Fri, 5 May 2017 06:30:15 +0000 (08:30 +0200)]
Add more alternatives to reflect() precision tests

Intel/Mesa started to generate these in some scenarios recently.

Components: Vulkan
Vk-GL-CTS Issue: 392

Affects:
dEQP-VK.glsl.builtin.precision.reflect.*

Change-Id: Ic943cf14d531e392c03adf18605e6330267be4a1

7 years agoCheck sampler_mirror_clamp_to_edge extension in tex filter tests
Yanjun Zhang [Mon, 24 Apr 2017 08:59:26 +0000 (01:59 -0700)]
Check sampler_mirror_clamp_to_edge extension in tex filter tests

Components: Vulkan
VK-GL-CTS issue: 384

Affects:
dEQP-VK.texture.filtering.*.combinations.*_mirror_clamp_to_edge_*

Change-Id: Ie829b9247cd374e6c34ac70885e9e4421d284d1e

7 years agoDo not report warning if OOM testing is incomplete
Pyry Haulos [Mon, 8 May 2017 16:15:25 +0000 (09:15 -0700)]
Do not report warning if OOM testing is incomplete

object_management.alloc_callback_fail tests are trying to exhaustively
test all OOM paths in vkCreate* functions. However, to keep test run-
time reasonable, they have a fixed maximum allocation count and if
that is exceeded report a warning since OOM testing was not
exhaustive.

Since an implementation that requires more allocations than the limit
is valid, this commit changes the tests to report clean Pass instead
of CompatibilityWarning. Note about incomplete OOM testing is included
in the test log contents instead.

Affects:

dEQP-VK.api.object_management.alloc_callback_fail.*

VK-GL-CTS issue: 399
Components: Vulkan

Change-Id: I6890321546ae42f2646b8653007172d4b8affb8a

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1
Pyry Haulos [Fri, 12 May 2017 17:15:26 +0000 (10:15 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1

7 years agoFix extension check in ES3.2 BoundingBox test
Graeme Leese [Thu, 11 May 2017 16:03:23 +0000 (17:03 +0100)]
Fix extension check in ES3.2 BoundingBox test

The test is still using the suffixed name to access gl_BoundingBox[EXT],
which means it still needs to enable the extension.

Affects: dEQP-GLES31.functional.android_extension_pack.shaders.es32.
extension_directive.ext_primitive_bounding_box

Components: AOSP

Change-Id: I652e59b6ca29b1d237028eac57fc860731378c35

7 years agoUpdate Vulkan CTS to version 1.0.2.3
Pyry Haulos [Fri, 12 May 2017 16:38:51 +0000 (09:38 -0700)]
Update Vulkan CTS to version 1.0.2.3

New tests:

 * Add tests for VK_KHR_shared_presentable_image
 * Add tests for VK_KHR_get_surface_capabilities2

Fixes:

 * makeFramebufferWithoutAttachments creates invalid framebuffer
 * Fix typo in dE-IT.build_info.de_endianness_consistent name
 * Fix - uniform buffer incorrectly dereferenced
 * Use vkGetInstanceProcAddr(NULL) to load platform funcs
 * Imgtec Waiver for texture_gather*cube*depth32f*
 * Add VK_KHR_incremental_present to the list of allowed device
extensions
 * Use -std=c++03 with GCC and clang
 * Fix GCC 6.3 warnings in vulkan-cts-1.0.2
 * Improve check_build_sanity.py
 * Relax image verification in anisotropic filtering tests
 * Respect maxColorAttachments in image tests
 * Fix SPIR-V generation in dEQP-VK.spirv_assembly
 * Fix - depth/stencil images mandatory only for VK_IMAGE_TYPE_2D
 * Add missing barrier in ssbo layout tests

Bug: 38260702
Change-Id: I1c00d4b63c339ba69990b64a5bb225c661957e4c

7 years agoMerge vk-gl-cts/master into aosp/deqp-dev
Pyry Haulos [Fri, 12 May 2017 16:20:30 +0000 (09:20 -0700)]
Merge vk-gl-cts/master into aosp/deqp-dev

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Pyry Haulos [Fri, 12 May 2017 16:16:56 +0000 (09:16 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: Ifb187a8bff7ec809e78fb53da5c84807e1569843

7 years agoCheck for INVALID_OPERATION from TextureStorage
James Helferty [Mon, 8 May 2017 21:31:59 +0000 (17:31 -0400)]
Check for INVALID_OPERATION from TextureStorage

When the effective target differs from the glTextureStorage* function
used, GL should generate an GL_INVALID_OPERATION error instead of
GL_INVALID_ENUM.

Affects:

KHR-GL45.direct_state_access.textures_storage_errors

Components: OpenGL

Issue: 407

Change-Id: I8cbfaeee7ce6bb7519cf2df9a255bfcfb3c84165

7 years agoIgnore performance messages in KHR_debug tests
Iago Toral Quiroga [Tue, 2 May 2017 11:42:05 +0000 (13:42 +0200)]
Ignore performance messages in KHR_debug tests

The KHR-GL45.khr_debug.receiveing_messages checks that only expected
messages are recorded so it should ignore spurious performance
messages that can be injected by drivers and mess up the expected
message counts.

Components: OpenGL
VK-GL-CTS issue: 394

Affects:
KHR-GL45.khr_debug.receiveing_messages

Change-Id: Iee24cb5d6de3d2c6311dc96da312540512dc2173

7 years agoFix texture_size_promotion snorm/RGB10_A2UI issue
Jeannot Breton [Tue, 2 May 2017 19:41:55 +0000 (14:41 -0500)]
Fix texture_size_promotion snorm/RGB10_A2UI issue

Read color clamping was not considered in the snorm expected value,
so the change clamp the expected value

The alpha component in RGB10_A2UI didn't have enough bits to hold
an expected value of 4. So we change the expected alpha value to 1

Affects:

KHR-GL45.texture_size_promotion.functional

Components: OpenGL

VK-GL-CTS issue: 395

Change-Id: I920eb187e558faf9557f886be0269ea0c927918b

7 years agoAdjust cull_distance position on pixel center
Jeannot Breton [Tue, 2 May 2017 20:44:43 +0000 (15:44 -0500)]
Adjust cull_distance position on pixel center

The primitive position is on the pixel edge, it should be on the
pixel center to be rendered at the expected location

Affects:

KHR-GL45.cull_distance.functional

Components: OpenGL

VK-GL-CTS issue: 396

Change-Id: I6f604c559894a4d9b1220a65935eb59b8b8e53e6

7 years agoFix DrawElements indice to use a NULL offset
Jeannot Breton [Tue, 2 May 2017 21:06:07 +0000 (16:06 -0500)]
Fix DrawElements indice to use a NULL offset

We are using the address of an array as indice parameters
to a DrawElements call.

The address will be used as an offset to the element buffer,
and it's not what we want.

Use NULL instead

Affects:

KHR-GL45.enhanced_layouts.vertex_attrib_locations

Components: OpenGL

VK-GL-CTS issue: 397

Change-Id: Ic6be8925b990107e342f609726730ab51a33da9b

7 years agoUse correct format for integer DSA buffer clears
James Helferty [Fri, 5 May 2017 21:53:26 +0000 (17:53 -0400)]
Use correct format for integer DSA buffer clears

Affects:

KHR-GL45.direct_state_access.buffers_clear

Components: OpenGL

VK-GL-CTS issue: 405

Change-Id: I86f2c463a5bcc86bd08188e42a285673ffb058d4

7 years agoshader_integer_mix is unsupported prior to 4.5
Jeannot Breton [Mon, 8 May 2017 21:04:26 +0000 (16:04 -0500)]
shader_integer_mix is unsupported prior to 4.5

This change adds logic to make sure shader_integer_mix.prototypes
with shader version prior to 4.5 is marked unsupported

It adds a new shaders45 group of tests to make sure core glsl 4.5
supports the extension

It adds the test shader_integer_mix.prototypes-negative to make sure
glsl versions that doesn't support the feature are returning an error

Finally it updates the mustpass list with the new tests

Affects:

KHR-GLES3.shaders.shader_integer_mix.prototypes-negative
KHR-GLES31.core.shader_integer_mix.prototypes-negative
KHR-GLES32.shaders.shader_integer_mix.prototypes-negative
KHR-GL33.shaders.shader_integer_mix.prototypes
KHR-GL33.shaders.shader_integer_mix.prototypes-negative
KHR-GL40.shaders.shader_integer_mix.prototypes
KHR-GL40.shaders.shader_integer_mix.prototypes-negative
KHR-GL41.shaders.shader_integer_mix.prototypes
KHR-GL41.shaders.shader_integer_mix.prototypes-negative
KHR-GL42.shaders.shader_integer_mix.prototypes
KHR-GL42.shaders.shader_integer_mix.prototypes-negative
KHR-GL43.shaders.shader_integer_mix.prototypes
KHR-GL43.shaders.shader_integer_mix.prototypes-negative
KHR-GL44.shaders.shader_integer_mix.prototypes
KHR-GL44.shaders.shader_integer_mix.prototypes-negative
KHR-GL45.shaders.shader_integer_mix.prototypes
KHR-GL45.shaders.shader_integer_mix.prototypes-negative
KHR-GL45.shaders45.shader_integer_mix.*

Components: OpenGL

VK-GL-CTS issue: 406

Change-Id: I574bec1a8d5aca0e4ec52b8df96abf45828b527a

7 years agoARB_texture_filter_minmax tests should check if the extension is supported
Iago Toral Quiroga [Wed, 10 May 2017 09:07:37 +0000 (11:07 +0200)]
ARB_texture_filter_minmax tests should check if the extension is supported

Component: OpenGL
Vk-GL-CTS issue: 409

Affects:
KHR-GL45.texture_filter_minmax_tests.*

Change-Id: Ic1e63db507afb7a25f30b3309ba06fce2889cb8a

7 years agoExpand dEQP-VK.glsl.opaque_type_indexing shader types
Pyry Haulos [Thu, 4 May 2017 19:51:04 +0000 (12:51 -0700)]
Expand dEQP-VK.glsl.opaque_type_indexing shader types

This change expands dEQP-VK.glsl.opaque_type_indexing group to cover
geometry and tessellation shaders.

VK-GL-CTS issue: 357
Components: Vulkan

Change-Id: I3a89e3d2d59b826b078504cc6831254e839bb741

7 years agoCorrect the test conditions for sRGB_write_control
Graeme Leese [Tue, 9 May 2017 14:21:53 +0000 (15:21 +0100)]
Correct the test conditions for sRGB_write_control

The extension is not part of ES3.2, so the not-supported version of the
tests should be run on ES3.2 implementations without the
GL_EXT_sRGB_write_control extension.

VK-GL-CTS Issue: 389
Components: AOSP

Affects:
dEQP-GLES31.functional.fbo.srgb_write_control.framebuffer_srgb_enabled
dEQP-GLES31.functional.fbo.srgb_write_control.framebuffer_srgb_unsupported_enum

Change-Id: I42a531aa7d1ad38f7a85cde1a5da659f780ec5d5

7 years agoAdjust out of surface verification for wide lines
Alexander Galazin [Wed, 10 May 2017 08:36:53 +0000 (10:36 +0200)]
Adjust out of surface verification for wide lines

Wide lines rasterization tests may draw lines out of
the allocated surfaces. Such situation causes verification
failures.
This change adjust the verification algorithm to ignore
missing pixels for out of surface rendering.

Components: Framework

Affects:
dEQP-GLES2.functional.rasterization.primitives.lines_wide
dEQP-GLES2.functional.rasterization.primitives.line_strip_wide
dEQP-GLES2.functional.rasterization.primitives.line_loop_wide

Change-Id: Ia70f33fb6daad0d3774ae9edbd438bd14296f1d3

7 years agoEnsure vertex shader presence if a geometry shader exists
Alexander Galazin [Mon, 8 May 2017 12:59:38 +0000 (14:59 +0200)]
Ensure vertex shader presence if a geometry shader exists

Certain tests verify that INVALID_OPERATION is generated
if a geometry shader is active and mode is incompatible with
the input primitive type of the geometry shader in the currently
installed program object. However these tests have no vertex shader and
this is the real reason why INVALID_OPERATION is generated.
This change ensures that the vertex shader is present.

Components: AOSP

Affects:
dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_elements_base_vertex_primitive_mode_mismatch
dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_elements_instanced_base_vertex_primitive_mode_mismatch
dEQP-GLES31.functional.debug.negative_coverage.get_error.vertex_array.draw_range_elements_base_vertex_primitive_mode_mismatch

Change-Id: I36bcee8892e4f641feadb0b444a53ed35273b727

7 years agoFix DrawRangeElementsBaseVertex tests with negative basevertex
Alexander Galazin [Tue, 9 May 2017 08:44:12 +0000 (10:44 +0200)]
Fix DrawRangeElementsBaseVertex tests with negative basevertex

DrawRangeElementsBaseVertex tests with negative basevertex call
glDrawRangeElementsBaseVertex with start = 0 and basevertex = -1.
According to the spec: If no element array buffer is bound, the vertex ID of
the ith element transferred is indices[i] + basevertex...
If the vertex ID is larger than the maximum value representable by type,
it should behave as if the calculation were upconverted to 32-bit unsigned
integers (with wrapping on overflow conditions).
Behavior of DrawElementsOneInstance is undefined if the vertex ID is negative
for any element, and should be handled as described in section 6.4.

This change ensures that indexMin + baseVertex will be zero or positive value.

Components: AOSP

Affects:
dEQP-GLES31.functional.draw_base_vertex.draw_range_elements_base_vertex.base_vertex.index_neg_byte
dEQP-GLES31.functional.draw_base_vertex.draw_range_elements_base_vertex.base_vertex.index_neg_short
dEQP-GLES31.functional.draw_base_vertex.draw_range_elements_base_vertex.base_vertex.index_neg_int

Change-Id: I07a9e6bc60d4340784d400b5087bb8fff01f0e57

7 years agoMerge "Fix GCC 6.3 warnings in aosp/master"
Pyry Haulos [Tue, 9 May 2017 19:16:23 +0000 (19:16 +0000)]
Merge "Fix GCC 6.3 warnings in aosp/master"
am: 1211e9fe1b

Change-Id: I26a8dd4e1e0d70c858c51dfb867fda7f4eec3fd9

7 years agoresolve merge conflicts of 9de005f0 to deqp-dev
Pyry Haulos [Tue, 9 May 2017 19:09:07 +0000 (12:09 -0700)]
resolve merge conflicts of 9de005f0 to deqp-dev

Test: scripts/check_build_sanity.py
Change-Id: Ica45697139e9e63b0e407283780246d3608457e7

7 years agoMerge "Fix GCC 6.3 warnings in aosp/master"
Treehugger Robot [Tue, 9 May 2017 18:32:17 +0000 (18:32 +0000)]
Merge "Fix GCC 6.3 warnings in aosp/master"

7 years agoFix GCC 6.3 warnings in aosp/master
Pyry Haulos [Thu, 30 Mar 2017 23:42:23 +0000 (16:42 -0700)]
Fix GCC 6.3 warnings in aosp/master

Change-Id: I0a90ba7ed2e52fdadf554236850533298b2e1a9e

7 years agoFix negative CompressedTexImage2D tests
Alexander Galazin [Mon, 8 May 2017 12:31:15 +0000 (14:31 +0200)]
Fix negative CompressedTexImage2D tests

Certain tests expect GL_VALID_VAULE for
glCompressedTexImage2D(GL_TEXTURE_2D, -1, 0x8b90, 0, 0, 0, 0, 0).

0x8b90 is a palette format PALETTE4_RGB8 and
the OES_compressed_paletted_texture extension allows
negative values for the level parameter:
    Accepted by the <level> parameter of CompressedTexImage2D
        Zero and negative values.  |level| + 1 determines the number of
        mip levels defined for the paletted texture.

This change fixes the tests in presence of
the OES_compressed_paletted_texture extension.

Components: AOSP
Google bug: 38109626

Affects:
dEQP-GLES2.functional.negative_api.texture.compressedteximage2d_neg_level_tex2d
dEQP-GLES2.functional.negative_api.texture.compressedteximage2d_neg_level_cube

Change-Id: Ia37e3fecaf3547abfb209803378114043c63a243

7 years agoExplicitly resolve template in DrawIndirect
Daniel Stone [Sat, 6 May 2017 16:40:18 +0000 (17:40 +0100)]
Explicitly resolve template in DrawIndirect

As with all the other uses of BindingPointCheck, explicitly pass 'api'
for template resolution, fixing a compile error seen on G++7, which
could not infer the correct template resolution.

Components: OpenGL

VK-GL-CTS issue: 408

Change-Id: I04e96bcc1d56493c21595ad07e4813e344b4e64d

7 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Pyry Haulos [Mon, 8 May 2017 21:24:46 +0000 (14:24 -0700)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: I0d69c6c9d5720d3c9f957244de84ca0b5a0ad906

7 years agoMerge aosp/upstream-vulkan-cts-1.0-dev into aosp/deqp-dev
Pyry Haulos [Mon, 8 May 2017 20:20:21 +0000 (13:20 -0700)]
Merge aosp/upstream-vulkan-cts-1.0-dev into aosp/deqp-dev

Change-Id: Id72fd820e5ce49e72e0e14809eb92fcebb6fb1d7

7 years agoRemove old Android build scripts
Pyry Haulos [Wed, 3 May 2017 16:07:52 +0000 (09:07 -0700)]
Remove old Android build scripts

Change-Id: I72128ec3cda3ddc78442861af9ae9768510bef25

7 years agoAdd new Android build and install scripts
Pyry Haulos [Mon, 27 Mar 2017 18:21:37 +0000 (11:21 -0700)]
Add new Android build and install scripts

This change adds new Android build and install scripts under
scripts/android. Key improvements over old ones are:

 * Build no longer relies on ant or 'android project' tools.

 * Native code build leverages scripts/build code which should fix
   incremental builds and improve compatibility.

 * Build script error reporting should be much better.

 * Final APK is now built incrementally which should enable much faster
   incremental builds once asset copy targets are fixed in main build.

This work required some changes to common code:

 * Android cross-compile toolchain is set up by including
   targets/android/ndk-r11.cmake before project() in the main
   CMakeLists.txt instead of using -DCMAKE_TOOLCHAIN_FILE. CMake native
   toolchain file support seems incredbly buggy and configuring
   toolchain in regular build files seems to be much more robust.

 * scripts/build/config.py now finds CMake automatically on OS X.

 * New HostInfo class has been added into scripts/build/config.py.

Components: AOSP, Framework

Change-Id: I4b5b78c0d4d3aff248887ba5ced0c91081e24e6b

7 years agoUse alias tag to check if ext and core funcs are same
Pyry Haulos [Tue, 25 Apr 2017 14:18:01 +0000 (16:18 +0200)]
Use alias tag to check if ext and core funcs are same

OpenGL API registry commands have <alias> tag that can be used to
determine if extension function can be treated as an alias to a core
entry point.

This change updates scripts to take advantage of alias tag to correctly
determine if ext and core entry points can be folded into one. This
fixes issues with EXT_direct_state_access where behavior has changed
between EXT and core versions.

VK-GL-CTS issue: 368
Components: Framework
Change-Id: I6addfdca02c778b7a44db1cb81d5a88aae6cf273

7 years agoImprove GLSL source program support
Pyry Haulos [Thu, 4 May 2017 22:29:08 +0000 (15:29 -0700)]
Improve GLSL source program support

Old GLSL source program support in Vulkan framework was built on top
of glu::ProgramSources. This had two problems:

1) There was no obvious way to extend/annotate sources with SPIR-V
-specific information such as target SPIR-V version.

2) Most of glu::ProgramSources, such as attribute bindings or TF
configuration, was completely ignored.

This change introduces new vk::GlslSource type that replaces
glu::ProgramSources in vk::SourceCollections. vk::GlslSource contains
shader source strings as well as build options (vk::GlslBuildOptions).

vk::GlslBuildOptions doesn't currently contain anything useful but can
be later extended to support selecting target SPIR-V version for
example.

The change is mostly transparent to existing code, except:

 * vkSpirvProgram.hpp was somewhat unnecessarily including
tcuTestLog.hpp and changing that to a forward declaration required
fixing includes in several test code files.

  * vktShaderExecutor.cpp has been extended to allow specifying build
options.

Components: Vulkan

Change-Id: I69a6cd55ea91215585515b9d41860d818cbc97ae

7 years agoAdd tests for FragCoord interaction with multisampling
David Sodman [Fri, 24 Feb 2017 19:04:46 +0000 (11:04 -0800)]
Add tests for FragCoord interaction with multisampling

Components: Vulkan
VK-GL-CTS issue: 89

Test: fragcoord_msaa, frontface, fragdepth, clipping
Change-Id: Ibf342e63f224b88fe0b0cffde59b10b34afd1faf

7 years agoRemove vktWsiTests.cpp.orig
Pyry Haulos [Thu, 4 May 2017 20:18:55 +0000 (13:18 -0700)]
Remove vktWsiTests.cpp.orig

VK-GL-CTS issue: 402

Change-Id: Ib72fcd8b8ff39013f6cd3093ee9160be320be2b0

7 years agoAdd tests for VK_KHR_display
Boris Zanin [Wed, 22 Feb 2017 14:18:07 +0000 (15:18 +0100)]
Add tests for VK_KHR_display

Implemented coverage tests for functions:
 * vkGetPhysicalDeviceDisplayPropertiesKHR
 * vkGetPhysicalDeviceDisplayPlanePropertiesKHR
 * vkGetDisplayPlaneSupportedDisplaysKHR
 * vkGetDisplayModePropertiesKHR
 * vkCreateDisplayModeKHR
 * vkGetDisplayPlaneCapabilitiesKHR
 * vkCreateDisplayPlaneSurfaceKHR

Components: Vulkan

VK_GL_CTS Issue: #155

Change-Id: Ia16ab268f6c8c001fbde64f5663f195078dd9aa4

7 years agoAdd test for FragDepth shader built-in
David Sodman [Fri, 24 Feb 2017 18:41:59 +0000 (10:41 -0800)]
Add test for FragDepth shader built-in

Components: Vulkan

VK-GL-CTS issue: 93

Test: fragdepth, frontface, clipping
Change-Id: I531e39a58dd6b577108bff14b2206d7bf9d9cd4f

7 years agoFix - checkSparseSupport missing image format check
Marcin Kańtoch [Tue, 11 Apr 2017 09:25:20 +0000 (11:25 +0200)]
Fix - checkSparseSupport missing image format check

checkSparseSupport does not check if sparse operations are supported
for image format for example for depth/stencil formats.
This fix extends checkSparseSupport with this additional check.

Affected tests:
dEQP-VK.glsl.texture_functions.textureoffset.sparse_sampler2darrayshadow_vertex
dEQP-VK.glsl.texture_functions.textureoffset.sparse_sampler2darrayshadow_fragment

Change-Id: Ib4ca34ede1b5efd382ed6491b88e10baac173895

7 years agoFix image.qualifiers.restrict tests not running without optional capability
Slawomir Cygan [Thu, 27 Apr 2017 12:17:41 +0000 (14:17 +0200)]
Fix image.qualifiers.restrict tests not running without optional capability

Tests dEQP-VK.image.qualifiers* were passsing previously, but since
645b5c6d they require shaderStorageImageReadWithoutFormat capability.
This was not intended - this change restores the test to previous
behavior.

VK-GL-CTS issue: 345
Components: Vulkan
Affects: dEQP-VK.image.qualifiers.restrict.*

Change-Id: Ie3e70b72a9f3b3b0700c3fed898c30fd1f6ae290

7 years agodEQP-VK: Fix and inline the Image::getPixelOffset helper
Jason Ekstrand [Thu, 27 Apr 2017 15:02:22 +0000 (08:02 -0700)]
dEQP-VK: Fix and inline the Image::getPixelOffset helper

The helper was wrong in a number of ways.  First, it tries to calculate
an offset to the particular mip level and array layer requested even
though the driver already provides that as part of the offset returned
by getImageSubresourceLayout.  If someone tried to use this with a
non-zero mip level or array layer they would get the wrong offset
because it would be added in twice.  Second, the calculation depended on
an array called mipLevelRectSizes array which was used but never
initialized.  This commit gets rid of the helper and just does the right
calculation inside MemoryOp::readLinear and MemoryOp::uploadLinear.

This affects the following groups of tests:

 - dEQP-VK.draw.*
 - dEQP-VK.dynamic_state.*
 - dEQP-VK.query_pool.*

Change-Id: If0da72023cbc437d2a13d60f83e1230f0f90ba39

7 years agoMerge "Fix color change verification in dithering tests" into nougat-cts-dev am:...
Pyry Haulos [Wed, 3 May 2017 16:12:41 +0000 (16:12 +0000)]
Merge "Fix color change verification in dithering tests" into nougat-cts-dev am: acf47d464f am: c2594c65ff
am: 1203cd8416

Change-Id: Idced4ef250b2fc485931b8d5358dd5ce6ee16e51

7 years agoMerge "Fix color change verification in dithering tests" into nougat-cts-dev am:...
Pyry Haulos [Wed, 3 May 2017 16:10:09 +0000 (16:10 +0000)]
Merge "Fix color change verification in dithering tests" into nougat-cts-dev am: acf47d464f
am: c2594c65ff

Change-Id: Ifd798f6964576b23950beaedc843a4efce806968

7 years agoMerge "DEPTH_STENCIL_OES as tex format requires OES_depth_texture" into nougat-cts...
Pyry Haulos [Wed, 3 May 2017 16:08:05 +0000 (16:08 +0000)]
Merge "DEPTH_STENCIL_OES as tex format requires OES_depth_texture" into nougat-cts-dev am: 9a83ec3f47 am: 90e6678bc9  -s ours
am: 18231b0d34  -s ours

Change-Id: I822a97a1a29f7dfd3525c9671b405fd0561d7834

7 years agoMerge "Fix error mask generation in checkLineContinuity" into nougat-cts-dev am:...
Alexander Galazin [Wed, 3 May 2017 16:07:43 +0000 (16:07 +0000)]
Merge "Fix error mask generation in checkLineContinuity" into nougat-cts-dev am: eebcec1b52 am: 2585331908
am: 0543f8e619

Change-Id: I113f5eb8a7cdb975e9e9928a3cbdbf55637492ff

7 years agoMerge "Fix color change verification in dithering tests" into nougat-cts-dev
Pyry Haulos [Wed, 3 May 2017 16:07:36 +0000 (16:07 +0000)]
Merge "Fix color change verification in dithering tests" into nougat-cts-dev
am: acf47d464f

Change-Id: I82bfed0cc9cee128a8552b4e8cf3fb87ced37c9f

7 years agoMerge "DEPTH_STENCIL_OES as tex format requires OES_depth_texture" into nougat-cts...
Pyry Haulos [Wed, 3 May 2017 16:05:58 +0000 (16:05 +0000)]
Merge "DEPTH_STENCIL_OES as tex format requires OES_depth_texture" into nougat-cts-dev am: 9a83ec3f47
am: 90e6678bc9  -s ours

Change-Id: I157b06b418801793909c853f0e3f51c574283d15

7 years agoMerge "Fix error mask generation in checkLineContinuity" into nougat-cts-dev am:...
Alexander Galazin [Wed, 3 May 2017 16:05:41 +0000 (16:05 +0000)]
Merge "Fix error mask generation in checkLineContinuity" into nougat-cts-dev am: eebcec1b52
am: 2585331908

Change-Id: Ibc91272a8ad15f813f273cf05bb6b6f846ae600f

7 years agoMerge "Fix color change verification in dithering tests" into nougat-cts-dev
Treehugger Robot [Wed, 3 May 2017 16:04:13 +0000 (16:04 +0000)]
Merge "Fix color change verification in dithering tests" into nougat-cts-dev

7 years agoMerge "DEPTH_STENCIL_OES as tex format requires OES_depth_texture" into nougat-cts-dev
Pyry Haulos [Wed, 3 May 2017 16:03:19 +0000 (16:03 +0000)]
Merge "DEPTH_STENCIL_OES as tex format requires OES_depth_texture" into nougat-cts-dev
am: 9a83ec3f47

Change-Id: I1dfb480ed3b5fb7f384a8fe9b0a852134fde1500

7 years agoTry to determine renderable format in lifetime tests am: c0a5dc217f am: eba26e2387
Pyry Haulos [Wed, 3 May 2017 16:03:14 +0000 (16:03 +0000)]
Try to determine renderable format in lifetime tests am: c0a5dc217f am: eba26e2387
am: d1aa6c62e3

Change-Id: I985925f6cc047cc2ba44e7d33a435809ea8a3681

7 years agoMerge "Fix error mask generation in checkLineContinuity" into nougat-cts-dev
Alexander Galazin [Wed, 3 May 2017 16:03:07 +0000 (16:03 +0000)]
Merge "Fix error mask generation in checkLineContinuity" into nougat-cts-dev
am: eebcec1b52

Change-Id: Ib4d673157f82d00d0d27ab3496ac8a1dc6634fe1

7 years agoTry to determine renderable format in lifetime tests am: c0a5dc217f
Pyry Haulos [Wed, 3 May 2017 16:01:08 +0000 (16:01 +0000)]
Try to determine renderable format in lifetime tests am: c0a5dc217f
am: eba26e2387

Change-Id: I374e4e781d4b3d89c9e6a9e97deffe466298ddea