platform/upstream/VK-GL-CTS.git
7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Thu, 5 Jan 2017 17:58:20 +0000 (09:58 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: If9a06423b0fb4be658187ee4df49817dcc9b0394

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Thu, 5 Jan 2017 17:58:17 +0000 (09:58 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: If550d50796597ec466efb30b1cbbd9aab4b13890

7 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2
Pyry Haulos [Thu, 5 Jan 2017 17:58:15 +0000 (09:58 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2

Change-Id: I4dc1513b1528b8182cfd75f4ed9184fa8f383e47

7 years agoMerge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1
Pyry Haulos [Thu, 5 Jan 2017 17:58:14 +0000 (09:58 -0800)]
Merge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1

Change-Id: I3ace822f33fb20acd6109886458b0d16c1624bd5

7 years agoFix assert for combined depth/stencil formats
Iago Toral Quiroga [Mon, 2 Jan 2017 11:22:29 +0000 (12:22 +0100)]
Fix assert for combined depth/stencil formats

This was using tcu::isCombinedDepthStencilType(format.type) for this,
but this only checks the type and for 24bit depth formats with a
x8 d24 setup it will incorrectly identify them as combined
depth/stencil even though the underlying format is depth-only. Fix
this by testing if the format has depth and stencil components
instead.

Prevents crashes in tests with the following signature (144 tests):
dEQP-VK.texture.shadow.*x8_d24*

Fixes #563

Change-Id: Ie43e140a0461de49c02e0d97eeed38fa8ef24040

7 years agoFix buffer size and alignment issues in api.buffer
Maciej Jesionowski [Thu, 15 Dec 2016 15:45:31 +0000 (16:45 +0100)]
Fix buffer size and alignment issues in api.buffer

- Don't use maxTexelBufferElements, it doesn't apply here
- Remove unused throw/catch blocks (catch block was never reachable)
- Add a case that exercises huge buffer sizes
- Add a check for sparseAddressSpaceSize

Modified tests:
- dEQP-VK.api.buffer.create_buffer_*

Fixes #558

Change-Id: Ia6b46d8c34a4eef4a6136532d0cb626d0b64b560

7 years agoUpdate zlib and libpng dependencies
Maciej Jesionowski [Thu, 5 Jan 2017 10:21:40 +0000 (11:21 +0100)]
Update zlib and libpng dependencies

Fixes #568

Change-Id: I8ee890a2176bf6d42d3dd8b119b7263034127960

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Wed, 4 Jan 2017 00:43:24 +0000 (16:43 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: Icef189b9af29e090fbb4940af970d91951c2d6e6

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Wed, 4 Jan 2017 00:43:21 +0000 (16:43 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: I598c6d52ece7b00a8dd0af10b31ea144ebc6ba80

7 years agoRevert "Add new files to Android.mk"
Pyry Haulos [Wed, 4 Jan 2017 00:42:53 +0000 (16:42 -0800)]
Revert "Add new files to Android.mk"

This reverts commit 4ed5a72717f9dc776f7f63aa21aca2c727524d0f.

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Wed, 4 Jan 2017 00:25:16 +0000 (16:25 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: Ieccd2e74ca11d5a4b7b06f78bae0094e5a870b69

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Wed, 4 Jan 2017 00:25:13 +0000 (16:25 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: I33cca201217f9c9a258c61e0bb6178bb7694a96e

7 years agoAdd new files to Android.mk
Pyry Haulos [Wed, 4 Jan 2017 00:24:51 +0000 (16:24 -0800)]
Add new files to Android.mk

Change-Id: Ib396f9504a3b5523314cd2d5ab9375a346dbb219

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Wed, 4 Jan 2017 00:20:18 +0000 (16:20 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: I6ae311b56b24f91aae76a908b8086bcc8afeaacf

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Wed, 4 Jan 2017 00:20:14 +0000 (16:20 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: I4b9cb490746a875501c5213b0a5899a3a487be03

7 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2
Pyry Haulos [Wed, 4 Jan 2017 00:07:06 +0000 (16:07 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2

7 years agoSkip integer formats that expose a max. sample count of 1
Jorg Wagner [Thu, 15 Dec 2016 21:52:06 +0000 (22:52 +0100)]
Skip integer formats that expose a max. sample count of 1

Actually fixes #538

As agreed in the ticket we need to skip integer formats if they
need to be sampled and only expose a max. sample count of 1.

Change-Id: Ia67c8d84cedcae09804e83cfefeb279b329d07b9

7 years agoCorrect a typo in blit image test case names
Maciej Jesionowski [Wed, 21 Dec 2016 11:20:28 +0000 (12:20 +0100)]
Correct a typo in blit image test case names

Modified test names:
- dEQP-VK.api.copy_and_blit.blit_image.simple_tests.*

Change-Id: I20b09407101eb3e395d10f324e9f402f5c1c4b77

7 years agoCorrect a typo in blit image test case names
Maciej Jesionowski [Wed, 21 Dec 2016 11:20:28 +0000 (12:20 +0100)]
Correct a typo in blit image test case names

Modified test names:
- dEQP-VK.api.copy_and_blit.blit_image.simple_tests.*

Change-Id: Ia62b9f616466b919f1e92d0a74714586ccc6e313

7 years agoGL_ARB_arrays_of_arrays: unsized dimension only array's outermost
Andres Gomez [Tue, 29 Nov 2016 15:42:16 +0000 (17:42 +0200)]
GL_ARB_arrays_of_arrays: unsized dimension only array's outermost

From the GL_ARB_arrays_of_arrays spec:

   "For unsized arrays, only the outermost dimension can be lacking a
    size. A type that includes an unknown array size cannot be formed
    into an array until it gets an explicit size."

This is later further detailed as per OpenGL® Shading Language 4.40.

From page 3 (page 9 of the PDF) of the GLSL 4.00 v9 spec:

  "* Bug 11987: Allow array-of-array constructors and initialized
     variables to have any dimension unsized (not just the outer
     dimension) and get their size from the content of the constructor
     or initializer."

From page 37 (page 43 of the PDF) of the GLSL 4.00 v9 spec:

  " vec4 a[][] = { vec4[2](vec4(0.0), vec4(1.0)), // okay, size to
                   vec4[2](vec4(0.0), vec4(1.0)), //       a[3][2]
                   vec4[2](vec4(0.0), vec4(1.0)) };"

From page 38 (page 44 of the PDF) of the GLSL 4.00 v9 spec:

  "For implicitly-sized or run-time-sized arrays, only the outermost
   dimension can be lacking a size. A type that includes an unknown
   array size cannot be formed into an array until it gets an explicit
   size, except for shader storage blocks where the only unsized array
   member is the last member of the block."

Hence, in the absence of a constructor/initializer, unsized arrays are
only allowed for the outermost dimension of an AoA.

Fixes #22.

Change-Id: I0ca0488d6fa29f37578df2270d87ee72b4ecb944

7 years agoMoved GL_KHR_blend_equation_advanced tests to common module
Filip Demczewski [Fri, 2 Dec 2016 10:03:09 +0000 (11:03 +0100)]
Moved GL_KHR_blend_equation_advanced tests to common module

Change-Id: Iaa2d4cc117d756db7226641abb20cc4db7cccf0f

7 years agoImageLoadStoreMultipleUniformsTest: fix reversed bit-field overflow check
Alejandro Piñeiro [Tue, 29 Nov 2016 12:11:59 +0000 (10:11 -0200)]
ImageLoadStoreMultipleUniformsTest: fix reversed bit-field overflow check

This class has a templated Mask struct used to store and access
bit-fields. In includes a specialization that is used if the offset is
bigger that the bitfield, that raises assert.

Without this patch, the check is reversed, so it fails on cases where
the offset is correct.

This patch changes the condition. An alternative would be change the
value of the specialization with asserts. I found this option more
natural.

This fixes the following test:
GL45-CTS.shader_image_load_store.multiple-uniforms

on the Mesa driver for Intel Haswell hw. It makes it goes from
crash to fail on Broadwell/Skylake.

Change-Id: I7341a542ad925e55ab8a6c95373567b4ea58434f

7 years agoSmarter verification of configs to be tested for ES
Alexander Galazin [Fri, 16 Dec 2016 09:50:58 +0000 (10:50 +0100)]
Smarter verification of configs to be tested for ES

Change-Id: I153cdd317228574bece32b87525e20acb52e16ab

7 years agoMove GLES mustpass to external/openglcts/data/mustpass/gles
Alexander Galazin [Fri, 16 Dec 2016 07:39:34 +0000 (08:39 +0100)]
Move GLES mustpass to external/openglcts/data/mustpass/gles

Change-Id: I4d1ec0d32504adb59e513e3bec5445283fb530e9

7 years agoUpdate GL CTS README
Alexander Galazin [Thu, 15 Dec 2016 18:36:36 +0000 (19:36 +0100)]
Update GL CTS README

Passing Criteria
* Remove duplicate sub-item in item 4
* Replace spelled numbers with digits

Running the tests on Android
* Enumerate available acitivites

Creating a submission package
* Typos

Change-Id: I76afa20a257ef91357ca0ad0d135964d9fbf94ec

7 years agoReformatting glcViewportArrayTests.cpp
Alexander Galazin [Thu, 15 Dec 2016 16:49:17 +0000 (17:49 +0100)]
Reformatting glcViewportArrayTests.cpp

Change-Id: Ic5d6ca4dc5a0016592bb5fb492880c6cbb1ea037

7 years agoDocumentation updates in preparation for the new release.
Alexander Galazin [Mon, 12 Dec 2016 13:03:36 +0000 (14:03 +0100)]
Documentation updates in preparation for the new release.

README restructuring, more detailed process
of creating a submission package.

Change-Id: Ie20291d3dafdbffda990a010d7fe85a04f6571c3

7 years agoUpdates to submission verification script
Alexander Galazin [Wed, 14 Dec 2016 16:35:11 +0000 (17:35 +0100)]
Updates to submission verification script

Change-Id: I4c2a3c897ceeecdcac586fad022a34ca18041b0d

7 years agoDo not run against EGL_EXT_yuv_surface configs
james.glanville [Thu, 15 Dec 2016 09:49:12 +0000 (09:49 +0000)]
Do not run against EGL_EXT_yuv_surface configs

Change-Id: I95750b2318c00d7d47d23076ee812dc33ad6445f

7 years agoFix uninitialized char arrays in ProgramInterfaceQueryTests.
Shane del Solar [Fri, 11 Nov 2016 02:32:05 +0000 (18:32 -0800)]
Fix uninitialized char arrays in ProgramInterfaceQueryTests.

Replicated from OpenGL/CTS Merge Request 432.

This patch initializes all of the char arrays in
the ProgramInterfaceQueryTests in the OpenGL and OpenGL ES versions of
conformance. Since they are char arrays
we should initialize them to the null terminator.

The motivation here is to prevent the verification script from
encountering unparsable tokens in the qpa result files from conformance.

This patch fixesOpengGL OSS-CTS issue 4.

Change-Id: Ia95742db876520d911b91039402dee46bbc6ebfe

7 years agoAvoid double registering of dEQP modules on Android
Alexander Galazin [Wed, 14 Dec 2016 14:23:02 +0000 (15:23 +0100)]
Avoid double registering of dEQP modules on Android

Change-Id: I0a5fad29f1bb831f891cdae0459779f513c7d282

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Thu, 15 Dec 2016 14:42:59 +0000 (06:42 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: I061ec26cc7b0e645a5c226659d051e7e12857d90

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Thu, 15 Dec 2016 14:42:56 +0000 (06:42 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: I92ebeef47df62646fb9fd2743991c43cd8893bda

7 years agoAlloc callbacks: don't report a quality warning for pooled objects
Maciej Jesionowski [Wed, 7 Dec 2016 09:55:36 +0000 (10:55 +0100)]
Alloc callbacks: don't report a quality warning for pooled objects

Modified tests:
- dEQP-VK.api.object_management.alloc_callback_fail_multiple.descriptor_set
- dEQP-VK.api.object_management.alloc_callback_fail_multiple.command_buffer_primary
- dEQP-VK.api.object_management.alloc_callback_fail_multiple.command_buffer_secondary

Change-Id: I0daea167c4b0c1e0a00039286b85af8c02e410f5
(cherry picked from commit ca634a5ac0b5278736e012f43a59bb25a5234e6f)

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Thu, 15 Dec 2016 14:14:31 +0000 (06:14 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: Idb21386b1b14b3a7302028f556da63bec86427ae

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Thu, 15 Dec 2016 14:14:28 +0000 (06:14 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: If83e62fdad4430038ba6318b99997a128f2c6c30

7 years agoFix image memory barriers for depth/stencil formats
iostrows [Tue, 13 Dec 2016 10:34:22 +0000 (11:34 +0100)]
Fix image memory barriers for depth/stencil formats

Affected tests:
- dEQP-VK.api.copy_and_blit.image_to_image.all_formats.depth_stencil*

Fixes #562

Change-Id: I59a851d2748f7ae0c2b56fdcd879978de4755ddf

7 years agoSparse resources: create correct device interface
Maciej Jesionowski [Wed, 14 Dec 2016 13:44:19 +0000 (14:44 +0100)]
Sparse resources: create correct device interface

Make sure correct function pointers are used with the a VkDevice.
This should make no actual difference on most implementations.

Affected tests:
- dEQP-VK.sparse_resources.*

Change-Id: Id39cf318c4ae24b47135e1f27308985bd20a0009

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Thu, 15 Dec 2016 13:55:34 +0000 (05:55 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: I76f3c7db1863fe3fe69a114ff835968bdc3ea6d1

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Thu, 15 Dec 2016 12:24:08 +0000 (04:24 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: I3151d603fa37a323629d83d27b7b687d3fe3693e

7 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2
Pyry Haulos [Thu, 15 Dec 2016 12:24:03 +0000 (04:24 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2

Change-Id: I5ee52225ed76297caba6ae717e897d7290c20684

7 years agoMerge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1
Pyry Haulos [Thu, 15 Dec 2016 12:24:01 +0000 (04:24 -0800)]
Merge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1

Change-Id: I82eb4eb290e5d85b44ac2f1f2efb1eb88aef062a

7 years agoAdd -Wno-delete-non-virtual-dtor to default cxxflags
Pyry Haulos [Thu, 15 Dec 2016 12:11:43 +0000 (14:11 +0200)]
Add -Wno-delete-non-virtual-dtor to default cxxflags

That warning generates some false negatives that are hard to work
around.

Change-Id: Ib451eca3af7bf2a6bfd24aa966f89496257b9f0d

7 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2
Pyry Haulos [Thu, 15 Dec 2016 12:02:11 +0000 (04:02 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2

7 years agoMerge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1
Pyry Haulos [Thu, 15 Dec 2016 12:01:22 +0000 (04:01 -0800)]
Merge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1

7 years agoSynchronization: use the correct device interface
Maciej Jesionowski [Wed, 14 Dec 2016 10:42:03 +0000 (11:42 +0100)]
Synchronization: use the correct device interface

This is a correctness change, likely has no impact
on most implementations.

Affected tests:
- dEQP-VK.synchronization.op.multi_queue.*

Change-Id: Ic2687f60c1ef2c468908c6c7240205b9e77e944c

7 years agoSynchronization: use the correct device interface
Maciej Jesionowski [Wed, 14 Dec 2016 10:42:03 +0000 (11:42 +0100)]
Synchronization: use the correct device interface

This is a correctness change, likely has no impact
on most implementations.

Affected tests:
- dEQP-VK.synchronization.op.multi_queue.*

Change-Id: I3eee09c13626e23261a7d0496aacab259265c3b9

7 years agoadd the viewport_array.* tests
Daniel Koch [Sat, 10 Dec 2016 20:12:28 +0000 (15:12 -0500)]
add the viewport_array.* tests

to the KHR-GLES32.core and KHR-GLESEXT test groups.
This adds the following 16 tests which can all be run with the
KHR-GLESEXT.viewport_array.* or KHR-GLES31.core.viewport_array.*
wildcards:

viewport_array.api_errors
viewport_array.queries
viewport_array.viewport_api
viewport_array.scissor_api
viewport_array.depth_range_api
viewport_array.scissor_test_state_api
viewport_array.draw_to_single_layer_with_multiple_viewports
viewport_array.dynamic_viewport_index
viewport_array.draw_mulitple_viewports_with_single_invocation
viewport_array.draw_multiple_layers
viewport_array.scissor
viewport_array.scissor_zero_dimension
viewport_array.scissor_clear
viewport_array.depth_range
viewport_array.depth_range_depth_test
viewport_array.provoking_vertex

Change-Id: I864cd57b70900db7ec6712919e7282960ccc0686

7 years agoReformatting with clang-format
Alexander Galazin [Thu, 15 Dec 2016 07:42:24 +0000 (08:42 +0100)]
Reformatting with clang-format

Change-Id: Ibdec4cf1cbb77f9d48787bcbbc770d9cf789f2c8

7 years agoUpdate viewport array tests to work in GLES
Daniel Koch [Mon, 12 Dec 2016 14:23:23 +0000 (09:23 -0500)]
Update viewport array tests to work in GLES

- Use shader specialization to enable the correct extensions and version.
- add supported functionality check to all tests
- Use runtime selection to determine Core vs ES functionality
  - use readpixels from a fbo attached texture in ES instead of getTexImage
  - disable provoking vertex calls for ES, and just assume LAST_CONVENTION
  - skip the subroutine tests in ES
  - Use templatized helper functions and an overloaded DepthFuncWrapper class
    to select the appropriate version of depth functionality as GL depth
    functions use GLdouble data types and ES uses GLfloat data types.

Change-Id: I9b37213acbdf41b93447741cfa097bb734ed4099

7 years agoes31: complete check for rgba32f internalformat
Alejandro Piñeiro [Wed, 23 Nov 2016 21:28:06 +0000 (19:28 -0200)]
es31: complete check for rgba32f internalformat

Right now several tests check for the extension
EXT_color_texture_buffer to know if that internalformat is
supported. But at this moment that internalformat is also supported on
core profiles, or if ARB_color_texture_buffer is available.

Note that it is not possible to just add a check for
ARB_color_texture_buffer. On core profiles, most of the functionality
got included on the spec, but deprecating some of the enums. As an
outcome, some drivers decide to not expose the extension, even if the
internalformat and other functionality is exposed.

For more info, take a look to the following commits on mesa:
3264c3e99700389f0a3958db7c9c19673107d67a
bd850cb4f2c77e2eb6716c865c40b9976633fc23

This commit gets 72 tests going from skipped to pass on
Intel Skylake and Broadwell:
GL45-CTS.sample_variables.mask.rgba32f.*
GL45-CTS.shader_multisample_interpolation.render.*.rgba32f.*

Also move es31cSampleVariableTests and es31cShaderMultisampleInterpolationTests
to common.

Tests defined on those files are used on both GLES and GL test case lists,
so it makes sense to move them to the common module.

Change-Id: I0ed09e9897f9f2a1b4efd1a40c22da00ec70bfdc

7 years agoSkip non-testable float EGLconfigs exposed via EGL_EXT_pixel_format_float
Weiwan Liu [Thu, 1 Dec 2016 22:05:30 +0000 (14:05 -0800)]
Skip non-testable float EGLconfigs exposed via EGL_EXT_pixel_format_float

OpenGL CTS issue #13

Change-Id: I6e68b03df7e823dfcba56e19c55b4618d0e41589

7 years agoAdd viewport_array support to glcts::TestCaseBase
Daniel Koch [Sat, 10 Dec 2016 22:13:09 +0000 (17:13 -0500)]
Add viewport_array support to glcts::TestCaseBase

Detect viewport_array functionality for GL 4.1 core (or later)
and for OES_viewport_array extension in ES.
Streamline code for detection of other extensions.
Add support for specialization of viewport_array shader functionality.

Change-Id: Ie07186163cfcc94988a1d83e91897812b27e59ae

7 years agoFix existing viewport_array bugs
Daniel Koch [Mon, 12 Dec 2016 07:34:26 +0000 (02:34 -0500)]
Fix existing viewport_array bugs

- was querying viewport instead of scissor box
- was requiring upper viewport bounds range of 32768

(these were pointed out by jputsman in previous review)

Affects tests: *.viewport_array.queries

Change-Id: I1914fd51cad1870ba91ef3380088aa20757ce29d

7 years agoRemove unused utility functions from ViewportArray
Daniel Koch [Sat, 10 Dec 2016 21:23:35 +0000 (16:23 -0500)]
Remove unused utility functions from ViewportArray

Change-Id: I8525051e3eb1b5518def586d4d8a3b620ee3346b

7 years agoRebase ViewportArray classes and add extParams
Daniel Koch [Sat, 10 Dec 2016 20:47:41 +0000 (15:47 -0500)]
Rebase ViewportArray classes and add extParams

Rebase the ViewportArray classes onto TestCaseBase (which supports shader specialization)
and add the extParams so that we know which type of functionality to test and can
specialize different versions of shaders.

Change-Id: I38f07580a2ee71957565a2a7f93f97fcf3073bdf

7 years agoMove Viewport array tests from gl/ to common/
Daniel Koch [Fri, 9 Dec 2016 22:23:12 +0000 (17:23 -0500)]
Move Viewport array tests from gl/ to common/

Move gl/gl4cViewportArrayTests.* to common/glcViewportArrayTests.*
Adjust relevant makefiles, namespaces, and include guards.
No other code changes were made.

Change-Id: I2d0245717cd2c507025ba256b48c7ad545e483f1

7 years agoEnable GL_OES_viewport_array in GL generation scripts
Daniel Koch [Sun, 11 Dec 2016 21:30:19 +0000 (16:30 -0500)]
Enable GL_OES_viewport_array in GL generation scripts

The actual change was in scripts/opengl/src_util.py
everything else was auto-generated.

Change-Id: Id9a18188f0e3f0d4eb7c6495adc50b6ae439582a

7 years agoGet rid of invalid buffer create flags combinations
Maciej Jesionowski [Mon, 12 Dec 2016 15:24:30 +0000 (16:24 +0100)]
Get rid of invalid buffer create flags combinations

Removed tests:
- dEQP-VK.api.buffer.createBuffer_*_2
- dEQP-VK.api.buffer.createBuffer_*_6

(cherry picked from commit bdd0a62ee565d0e7e07f05ddb95217d532e407cb)

Change-Id: I6cc6ed365de9d710f07fbfd2dde9db7edaecd007

7 years agoAdd explicit OS to some configs
Alexander Galazin [Tue, 13 Dec 2016 15:21:21 +0000 (16:21 +0100)]
Add explicit OS to some configs

Change-Id: I9176062420f3dd122456f9cf73c5e2aa12df5ec5

7 years agoGet rid of invalid buffer create flags combinations
Maciej Jesionowski [Mon, 12 Dec 2016 15:24:30 +0000 (16:24 +0100)]
Get rid of invalid buffer create flags combinations

Removed tests:
- dEQP-VK.api.buffer.createBuffer_*_2
- dEQP-VK.api.buffer.createBuffer_*_6

(cherry picked from commit bdd0a62ee565d0e7e07f05ddb95217d532e407cb)

Change-Id: I6cc6ed365de9d710f07fbfd2dde9db7edaecd007

7 years agoMove common submission verification functions to scripts/verify
Alexander Galazin [Mon, 12 Dec 2016 14:59:42 +0000 (15:59 +0100)]
Move common submission verification functions to scripts/verify

VulkanCTS submission verification functionality will be
signifcantly reused by OpenGL CTS.
It's nice to have commonly used functions in one place.

Change-Id: I61cd83556c6f961b50d1c27953dd57614c4f417a

7 years agoGet rid of invalid buffer create flags combinations
Maciej Jesionowski [Mon, 12 Dec 2016 15:24:30 +0000 (16:24 +0100)]
Get rid of invalid buffer create flags combinations

Removed tests:
- dEQP-VK.api.buffer.createBuffer_*_2
- dEQP-VK.api.buffer.createBuffer_*_6

Change-Id: I6cc6ed365de9d710f07fbfd2dde9db7edaecd007

7 years agoMerge "direct-state-access/texture-tests: Use a type compatible with the format"...
Alexander Galazin [Mon, 12 Dec 2016 12:54:01 +0000 (07:54 -0500)]
Merge "direct-state-access/texture-tests: Use a type compatible with the format" into opengl-cts-dev

7 years agoMerge "esextcTessellationShaderXFB: use individual out varyings instead of trying...
Alexander Galazin [Mon, 12 Dec 2016 12:53:33 +0000 (07:53 -0500)]
Merge "esextcTessellationShaderXFB: use individual out varyings instead of trying to get the array" into opengl-cts-dev

7 years agoesextcTessellationShaderXFB: use individual out varyings instead of trying to get...
Alejandro Piñeiro [Thu, 24 Nov 2016 17:17:35 +0000 (15:17 -0200)]
esextcTessellationShaderXFB: use individual out varyings instead of trying to get the array

Fixes:
GL45-CTS.tessellation_shader.single.xfb_captures_data_from_correct_stage

The test has a tessellation shader with a out varying like this:
          "out BLOCK_INOUT { vec4 value; } user_out[];\n"

The test uses transform feedback to get the content of user_out.

But the test is trying to use BLOCK_INOUT.value, instead of the
individual (4 in this case) elements of the array.

Additionally, this commit adds an OUT_PER_VERTEX_TCS_DECL, needed
as the out gl_PerVertex on tessellation control shaders is slightly
different compared with other stages.

From the GLSL 4.40 spec, page 123 (page 129 on the pdf):

   "In the tessellation control language, built-in variables are
    intrinsically declared as:

    <skip>
    out gl_PerVertex {
        vec4 gl_Position;
        float gl_PointSize;
        float gl_ClipDistance[];
    } gl_out[];"

Change-Id: I185aa456c4a802d71650b710d939bd749793942b

7 years agoMerge branch 'wip/apinheiro/memory-barriers' into 'master'
Alejandro Piñeiro [Tue, 22 Nov 2016 14:13:23 +0000 (12:13 -0200)]
Merge branch 'wip/apinheiro/memory-barriers' into 'master'

    Extra memory barriers needed on different tests

    We found several tests to consistently fail or to be flaky (not always failing/passing) on Intel Skylake GT2 model. Those get solved adding memory barriers. Those memory barriers are convenient as could prevent the tests failing on other hw.

    The branch includes 4 new commits, to make easier the review, but I think that they can be squashed without problems.

    See merge request !108

Change-Id: I4ec91df6c1d8721eee18f9aa0223d3c5ba6465ef

7 years agodirect-state-access/texture-tests: Use a type compatible with the format
Eduardo Lima Mitev [Wed, 23 Nov 2016 15:05:08 +0000 (16:05 +0100)]
direct-state-access/texture-tests: Use a type compatible with the format

One of the test sub-cases in ImageQueryErrorsTest family of tests is using
an incompatible format/type, when it is just checking for format and
internal-format compatibility. This is adding another failure point to the
test, making it dependent of the order of validation of the arguments in
the OpenGL driver.

Specifically, the sub-case that checks that "format is DEPTH_STENCIL and the
base internal format is not DEPTH_STENCIL" is passing GL_DEPTH_STENCIL with
type GL_UNSIGNED_INT, which would fail with INVALID_ENUM:

From OpenGL 4.5, section '18.2 Reading Pixels', page 506 of the PDF states:

    "An INVALID_ENUM error is generated if format is DEPTH_STENCIL and
     type is not UNSIGNED_INT_24_8 or FLOAT_32_UNSIGNED_INT_24_8_REV."

This is for ReadPixels, but the same pixel storage modes apply for
GetTextureImage:

From OpenGL 4.5, section '8.11 Texture Queries', page 234 of the PDF states:

    "Pixel storage modes that are applicable to ReadPixels are applied, as
     described in table 18.1 and section 18.2.9."

This patch changes the type to GL_UNSIGNED_INT_24_8, which is compatible with
the format, and will allow the subcase to unambiguosly fail if format and
internal-format are incompatible.

Change-Id: I979e007aef6e09b1707605bf4b94aebaa2d21b1c

7 years agoFix protocol auto-detection for ssh
Daniel Koch [Fri, 9 Dec 2016 21:38:50 +0000 (16:38 -0500)]
Fix protocol auto-detection for ssh

oss-cts issue 21

Change-Id: Id0bf39fc6d9eb64ef9415e5101a9a8bd042848aa

7 years agoMerge "Update KC CTS ref" into opengl-cts-dev
Alexander Galazin [Sun, 11 Dec 2016 18:35:53 +0000 (13:35 -0500)]
Merge "Update KC CTS ref" into opengl-cts-dev

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Sat, 10 Dec 2016 18:40:12 +0000 (10:40 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: I4d2ef04a4c3bb44a40888cc859d9288f8b4949ef

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Sat, 10 Dec 2016 18:39:38 +0000 (10:39 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: Ic0f43c179a3d81f5d3046b6945051d07ed86691a

7 years agoUpdate synchronization multi queue extended tests
Arkadiusz Sarwa [Thu, 6 Oct 2016 13:30:03 +0000 (15:30 +0200)]
Update synchronization multi queue extended tests

Tests now use all available queue families.

Updated tests:
- dEQP-VK.synchronization.op.multi_queue.*

Fixes #499

Change-Id: I7ec4cedc16e61addd07b85768c68410b7777bfcc

7 years agoUpdate KC CTS ref
Alexander Galazin [Sat, 10 Dec 2016 05:13:57 +0000 (06:13 +0100)]
Update KC CTS ref

Change-Id: I7f89aeac28209274c5f4d95bb99d669d50f05ef6

7 years agoMerge "Make KC CTS checkout protocol selectable." into opengl-cts-dev
Alexander Galazin [Fri, 9 Dec 2016 20:03:12 +0000 (15:03 -0500)]
Merge "Make KC CTS checkout protocol selectable." into opengl-cts-dev

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Fri, 9 Dec 2016 19:22:21 +0000 (11:22 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: Id52aef66f13e1c37f331c3459ae7224bffafc5c9

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 9 Dec 2016 19:22:18 +0000 (11:22 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: Id9582382bc20ce7bddeffef15884532be99364ef

7 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2
Pyry Haulos [Fri, 9 Dec 2016 19:21:40 +0000 (11:21 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2

Change-Id: I3ac10a34c6169dccad99dc99346f178470c26056

7 years agoMake KC CTS checkout protocol selectable.
Alexander Galazin [Thu, 8 Dec 2016 08:34:17 +0000 (09:34 +0100)]
Make KC CTS checkout protocol selectable.

The script will use the parent repo protocol by default.
SSH or HTPPS can be explicitly request from the command line.

Allowed alternatives:
* python external/fetch_kc_cts.py - checkout via parent repo protocol.
* python external/fetch_kc_cts.py --protocol=ssh - checkout via SSH.
* python external/fetch_kc_cts.py --protocol=https - checkout via HTTPS.

Fixes OpenGL OSS-CTS issue #21

Change-Id: Ie30bfc08abb0ddbfa4e381c261e18f9758d36950

7 years agoUse mipmapPrecisionBits when calculating LOD error
Maciej Jesionowski [Wed, 7 Dec 2016 12:37:15 +0000 (13:37 +0100)]
Use mipmapPrecisionBits when calculating LOD error

Affected tests:
- dEQP-VK.pipeline.image.sampling_type.*
- dEQP-VK.pipeline.image_view.view_type.*
- dEQP-VK.pipeline.sampler.view_type.*

Khronos issue: #554

Change-Id: I7cb3bedd8df6b033dd6e7ae2d1631e5e2f25673e

7 years agoCorrect a typo in if statement in synchronization module
Maciej Jesionowski [Fri, 9 Dec 2016 17:05:54 +0000 (18:05 +0100)]
Correct a typo in if statement in synchronization module

Change-Id: I13635c1c078456adb6af8e8689d809d7ef72ebb4

7 years agoMerge "Use 'default' instead of 'null' in some examples" into opengl-cts-dev
Alexander Galazin [Fri, 9 Dec 2016 16:07:16 +0000 (11:07 -0500)]
Merge "Use 'default' instead of 'null' in some examples" into opengl-cts-dev

7 years agoUse 'default' instead of 'null' in some examples
Alexander Galazin [Fri, 9 Dec 2016 09:12:53 +0000 (10:12 +0100)]
Use 'default' instead of 'null' in some examples

Change-Id: Ia819d7696fc23ddf4066eb48b5a5a53fabfb38b2

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Thu, 8 Dec 2016 19:56:26 +0000 (11:56 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: Ic004e8f199538e1d22dded2b41b62f44d1e47e39

7 years agoMerge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Thu, 8 Dec 2016 19:56:23 +0000 (11:56 -0800)]
Merge gerrit/vulkan-cts-1.0.2 into gerrit/vulkan-cts-1.0-dev

Change-Id: I6acdd3808c3f911f9c343a026fbf147c5559ce40

7 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2
Pyry Haulos [Thu, 8 Dec 2016 19:56:21 +0000 (11:56 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0.2

Change-Id: Id05a662016ed60805a17dc96614967db899e095e

7 years agoMerge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev
Pyry Haulos [Thu, 8 Dec 2016 19:19:25 +0000 (11:19 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into gerrit/opengl-cts-dev

Change-Id: I2385941b94be82955fb39482abece33d7f90798e

7 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Thu, 8 Dec 2016 19:19:05 +0000 (11:19 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: Id4737fe97bb1880757a443e0ad97d0edbc9a1546

7 years agoRemove CMAKE Compiler settings from GL CTS build mustpass script
Alexander Galazin [Thu, 8 Dec 2016 14:31:12 +0000 (15:31 +0100)]
Remove CMAKE Compiler settings from GL CTS build mustpass script

Change-Id: I08bff386b40f8643388a888d5af5aab115c9cdb2

7 years agoAlloc callbacks: don't report a quality warning for pooled objects
Maciej Jesionowski [Wed, 7 Dec 2016 09:55:36 +0000 (10:55 +0100)]
Alloc callbacks: don't report a quality warning for pooled objects

Modified tests:
- dEQP-VK.api.object_management.alloc_callback_fail_multiple.descriptor_set
- dEQP-VK.api.object_management.alloc_callback_fail_multiple.command_buffer_primary
- dEQP-VK.api.object_management.alloc_callback_fail_multiple.command_buffer_secondary

Change-Id: I0daea167c4b0c1e0a00039286b85af8c02e410f5

7 years agoUpdate the verification script to reflect git 2.9.1 changes
Alexander Galazin [Tue, 6 Dec 2016 20:54:57 +0000 (21:54 +0100)]
Update the verification script to reflect git 2.9.1 changes

git 2.9.1 changed the "working directory" message to "working
 tree". Accept both statements in the verification script.

Ref:
https://raw.githubusercontent.com/git/git/master/Documentation/RelNotes/2.9.1.txt

Fixes #559

Change-Id: Ie90097d39e1f09c1796bb1238ee92bf19aff93bf

7 years agoMerge "Update KC CTS reference" into opengl-cts-dev
Alexander Galazin [Tue, 6 Dec 2016 11:56:54 +0000 (06:56 -0500)]
Merge "Update KC CTS reference" into opengl-cts-dev

7 years agoUpdate KC CTS reference
Alexander Galazin [Tue, 6 Dec 2016 08:14:07 +0000 (09:14 +0100)]
Update KC CTS reference

Change-Id: I502ace8ea0a26595ce13101fe3a1b3140dba253e

7 years agoMerge "GL_ARB_gpu_shader_fp64: Forces UBOs to use the std140 layout" into opengl...
Alexander Galazin [Mon, 5 Dec 2016 09:53:47 +0000 (04:53 -0500)]
Merge "GL_ARB_gpu_shader_fp64: Forces UBOs to use the std140 layout" into opengl-cts-dev

7 years agoMerge "GL_ARB_shading_language_420pack: component names sets mix is forbidden" into...
Alexander Galazin [Mon, 5 Dec 2016 09:53:15 +0000 (04:53 -0500)]
Merge "GL_ARB_shading_language_420pack: component names sets mix is forbidden" into opengl-cts-dev

7 years agoGL_ARB_shading_language_420pack: component names sets mix is forbidden
Andres Gomez [Thu, 17 Nov 2016 15:57:00 +0000 (17:57 +0200)]
GL_ARB_shading_language_420pack: component names sets mix is forbidden

When refering to component names we can use xywz, rgba or stpq but not
mix them when refering to the components of a specific resulting vector
or scalar.

For example, this is illegal; float(1.5).xr, but this is legal;
float(1.5).xxxx.rgba.stpq.xywz

GL_ARB_shading_language_420pack doesn't explicitly forbid it but we can
find the following in the specs:

From The OpenGL® Shading Language 4.40, page 104:

  "  v4.xgba;   // is illegal - the component names do not come from
                                the same set."

Added another case for the following test:
    GL44-CTS.shading_language_420pack.scalar_swizzlers_invalid

Change-Id: I31889598ccf88850c44eeb0e267f43f2d89bbcf2

7 years agoGL_ARB_gpu_shader_fp64: Forces UBOs to use the std140 layout
Andres Gomez [Mon, 11 Jul 2016 20:24:53 +0000 (23:24 +0300)]
GL_ARB_gpu_shader_fp64: Forces UBOs to use the std140 layout

The max_uniform_components test for the FP64 extension was asuming
UBOs were stored in a tightly packed fashion. The way this is done is
implementation dependent; for example, mesa uses std140. The only way
of making any assumption on how an implementation is packing the data
for UBOs is, actually, by specifying the std140 layout.

Unfortunately, this also involves that the available used space for a
single UBO may be exhausted much before we get to use the maximum
uniform components. Hence, this patch also adds a check for
GL_MAX_UNIFORM_BLOCK_SIZE and limits the generated test to use the
amount of uniforms that fit in whichever limit gets exhausted first.

Fixes the following test (from fail to pass):
     GL44-CTS.gpu_shader_fp64.max_uniform_components

Change-Id: I734b090dbded4899e4db48c969754ab0a67c5245

7 years agoAdded CTS ARB_texture_filter_minmax specification proposal
Alexander Galazin [Mon, 5 Dec 2016 09:46:55 +0000 (10:46 +0100)]
Added CTS ARB_texture_filter_minmax specification proposal

Here is test specification proposal for ARB_texture_filter_minmax

See merge request !99

Change-Id: Ibb8d8f8506ab8dabd5dc00927b36f44697e1c174

7 years agoMerge "Documentation updates" into opengl-cts-dev
Alexander Galazin [Mon, 5 Dec 2016 09:41:51 +0000 (04:41 -0500)]
Merge "Documentation updates" into opengl-cts-dev

7 years agoDocumentation updates
Alexander Galazin [Fri, 2 Dec 2016 10:48:11 +0000 (11:48 +0100)]
Documentation updates

- Update README.md (typos, CTS folder structure, build instructions)
- Add CONTRIBUTING.md (moved Tips for developing new tests into this file)

Change-Id: Ia893e0cb6bc0cdd166a6f055e3951eac89788042