platform/upstream/VK-GL-CTS.git
6 years agoRemove vsnprintf from OpenGL CTS, part 1
Piotr Byszewski [Fri, 14 Jul 2017 09:13:45 +0000 (11:13 +0200)]
Remove vsnprintf from OpenGL CTS, part 1

This change replaces usage of vsnprintf with tcu::TestLog.

Components: OpenGL

VK-GL-CTS issue: 482

Affects:
KHR-GL43.compute_shader.*
KHR-GL43.program_interface_query.*
KHR-GL42.shader_image_load_store.*

Change-Id: I4460f5f5ae37608735322a5735a526f6c2f0f941

6 years agoMerge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Alexander Galazin [Mon, 17 Jul 2017 11:40:08 +0000 (13:40 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master

Change-Id: Iad6b2950a640b206d24865503d18c391df79fe64

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Sun, 16 Jul 2017 13:26:28 +0000 (15:26 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: Ic5acd954861de80294f738176198bb72fb433043

6 years agoDon't use layout qualifiers on function parameters
Antia Puentes [Mon, 3 Jul 2017 11:43:34 +0000 (13:43 +0200)]
Don't use layout qualifiers on function parameters

- From the GLSL 4.5 specification, revision 7:
"Layout qualifiers cannot be used on formal function parameters,
and layout qualification is not included in parameter matching."

Affects:

KHR-GL45.shader_image_load_store.basic-glsl-misc

Components: OpenGL

VK-GL-CTS issue: 551

Change-Id: I4b67ad40ee48e150068ad1c2f0292c739bf657fd

6 years agoSet correct xfb_stride
Juan A. Suarez Romero [Mon, 19 Jun 2017 11:44:03 +0000 (11:44 +0000)]
Set correct xfb_stride

This test is setting xfb_stride = 32, but it requires at least 48 bytes.

Affects:
KHR-GL45.enhanced_layouts.xfb_block_member_stride

VK-GL-CTS issue: 512
Components: OpenGL

Change-Id: I0a71a4a9ab840e2fab123cedb19566e17cf7e829

6 years agoNon-zero stream outputs can't be used in fragment shaders.
Juan A. Suarez Romero [Thu, 6 Jul 2017 09:19:56 +0000 (11:19 +0200)]
Non-zero stream outputs can't be used in fragment shaders.

According to ARB_gpu_shader5 spec, "Geometry Shader Vertex Streams"
section:

    "The primitives emitted to all vertex streams are passed to the transform
    feedback stage to be captured and written to buffer objects in the manner
    specified by the transform feedback state.  The primitives emitted to all
    streams but stream zero are discarded after transform feedback.
    Primitives emitted to stream zero are passed to subsequent pipeline stages
    for clipping, rasterization, and subsequent fragment processing."

Thus, it is an error trying to use a GS output as FS input that was
emitted through non-zero stream.

Affects:
KHR-GL45.enhanced_layouts.xfb_vertex_streams

Components: OpenGL

VK-GL-CTS issue: 557

Change-Id: I008c929b600905b1f3eb27a05753c8c75bf82ac5

6 years agoDon't set geometry shader output as array
Jeannot Breton [Fri, 7 Jul 2017 17:48:28 +0000 (12:48 -0500)]
Don't set geometry shader output as array

Only geometry shader inputs needs to be arrayed, not the output

Affects:

KHR-GL45.enhanced_layouts.varying_block_member_locations

Components: OpenGL

VK-GL-CTS issue: 564

Change-Id: Ia7bf0ffe6c5e60db2f620bb2f378f055b325ac0d

6 years agoAll scalar or vector VS Inputs use one location
Jeannot Breton [Tue, 11 Jul 2017 22:25:06 +0000 (17:25 -0500)]
All scalar or vector VS Inputs use one location

GetLocations() was returning 2 locations for dvec3 and dvec4, this
was incorrect for vertex shader input.

Affects:

KHR-GL45.enhanced_layouts.varying_location_limit

Components: OpenGL

VK-GL-CTS issue: 569

Change-Id: I884aa05dddb209f690beae3762d05edc3d56ca2e

6 years agoFix xfb_override_qualifiers_with_api
Jeannot Breton [Tue, 11 Jul 2017 23:23:27 +0000 (18:23 -0500)]
Fix xfb_override_qualifiers_with_api

This change fixes various issue in xfb_override_qualifiers_with_api

- Remove one output variable for we don't request more than 16
varying location

- Change the way the source and expected random data is generate so
they match

- Specify that xfb data is tightly pack when calling GetSize

Affects:

KHR-GL45.enhanced_layouts.xfb_override_qualifiers_with_api

Components: OpenGL

VK-GL-CTS issue: 570

Change-Id: I166a1f6a03ac2d5003cd110ad895f13dccaebbef

6 years agocopies_and_blitting: fix ambiguous signed normalized 1.0 value
Slawomir Cygan [Thu, 6 Jul 2017 17:24:18 +0000 (19:24 +0200)]
copies_and_blitting: fix ambiguous signed normalized 1.0 value

Below tests copy floats to signed normalized 8-bit values.
In that process it happens that 1.0 float value is copied to 8_snorm
elements as: {0x00, 0x00, 0x80, 0x3f}

According to spec, on SNORM values:

"Note that while zero is exactly expressible in this representation,
one value (-128 in the example) is outside the representable range,
and must be clamped before use."

The problem occurs when 0x80 == 128 value is copied to buffer:
as it falls outside of <-1,1> range, it may be clamped to 0x81 (both values
represent -1.0 SNORM value).

The change here processes all result and expected data buffers to remove
all ambiguites by converting to float and back to signed normalized format.

Affects:
dEQP-VK.api.copy_and_blit.*.image_to_image.all_formats.color.r32_sfloat.a8b8g8r8_snorm_pack32.*
dEQP-VK.api.copy_and_blit.*.image_to_image.all_formats.color.r32_sfloat.r8g8b8a8_snorm.*

Components: Vulkan

VK-GL-CTS issue: 563

Change-Id: I175665f39811cf6a80862967ad0a9bb8e13527e9

6 years agoRelax threshold in cube map filtering tests
Yanjun Zhang [Fri, 7 Jul 2017 20:45:59 +0000 (13:45 -0700)]
Relax threshold in cube map filtering tests

Use the same colorThreshold calculation as GLES CTS so Vulkan CTS
has the same behavior as GLES CTS.

Components: Vulkan

Affects:
dEQP-VK.pipeline.sampler.view_type.cube.format.r5g6b5_unorm_pack16.*

VK-GL-CTS issue: 561

Change-Id: I9bd632bb242f653b1f2d8bb50ee9867da926e95b

6 years agocross_instance sync: run without VK_KHR_get_memory_requirements2
Slawomir Cygan [Fri, 7 Jul 2017 14:41:30 +0000 (16:41 +0200)]
cross_instance sync: run without VK_KHR_get_memory_requirements2

This extension is used in the test, to check if resource needs dedicated
allocations (to be used created by dependent VK_KHR_dedicated_allocation
extension).

If the extension is not supported assume there is no need for dedicated
allocations.

Affects: dEQP-VK.synchronization.cross_instance.*

VK-GL-CTS issue: 548
Components: Vulkan

Change-Id: Icb4f5a34b98da213d0cb665bcc4e6b048d7b8a3c

6 years agoRefactor synchronization test code to avoid compiler warning
gkbldval [Fri, 14 Jul 2017 16:49:26 +0000 (18:49 +0200)]
Refactor synchronization test code to avoid compiler warning

vkt::synchronization::s_resources is unused in recently
added file, causing -Wunused warning (treated as error).

Affects: dEQP-VK.synchronization.*

Components: Vulkan

VK-GL-CTS issue: 578

Change-Id: Ifd8ce0812673e6b2da7c28bacb4384b3c80f65d1

6 years agoFix gcc 5.4 warnings
Alexander Galazin [Wed, 5 Jul 2017 15:09:38 +0000 (17:09 +0200)]
Fix gcc 5.4 warnings

gcc 5.4 (default in Ubuntu 16.04) reports conversion to int
warnings/errors for bitwise or and assign operator.

GCC bug: 40752

Components: Framework, Vulkan

Change-Id: Ia857c44cf54d5571d857e1fada0e2aaa8f4b950d
(cherry picked from commit 0bd8828618d95d2a83bc7475179a9227bfd22f5f)

6 years agoAdd option to skip fetch external sources
Alexander Galazin [Fri, 14 Jul 2017 07:48:05 +0000 (09:48 +0200)]
Add option to skip fetch external sources

Added option to check_build_sanity.py to skip running
fetch_sources.py. Allows to run multiple concurrent invocations
of check_build_sanity.py using the same source folder.

Components: Framework

Change-Id: I6289920860fb20287c405cefc0213c27f326857b

6 years agoMerge "Report Android extension pack tests as not supported"
Mika Isojarvi [Fri, 14 Jul 2017 22:19:28 +0000 (22:19 +0000)]
Merge "Report Android extension pack tests as not supported"
am: 03c395c60f

Change-Id: I605ac0bf0a499ad175e7d667843734eea16141c2

6 years agoMerge "Report Android extension pack tests as not supported"
Mika Isojarvi [Fri, 14 Jul 2017 22:11:54 +0000 (22:11 +0000)]
Merge "Report Android extension pack tests as not supported"

6 years agoresolve merge conflicts of 7782ec5b to deqp-dev
Mika Isojärvi [Fri, 14 Jul 2017 19:46:08 +0000 (12:46 -0700)]
resolve merge conflicts of 7782ec5b to deqp-dev

Test: Build the apk and ran scripts/check_build_sanity.p.
Change-Id: I0ac3ec6a73a4751bd5b075aaf59bb24c48f14f5c

6 years agoMerge "resolve merge conflicts of ae3759c7 to deqp-dev" into deqp-dev
Treehugger Robot [Fri, 14 Jul 2017 18:39:46 +0000 (18:39 +0000)]
Merge "resolve merge conflicts of ae3759c7 to deqp-dev" into deqp-dev

6 years agoresolve merge conflicts of ae3759c7 to deqp-dev
Mika Isojärvi [Fri, 14 Jul 2017 18:34:35 +0000 (11:34 -0700)]
resolve merge conflicts of ae3759c7 to deqp-dev

Test: Build deqp apk and ran scripts/check_build_sanity.py
Change-Id: I2aad44982a04d1066c7a7f37fac139b735c5211b

6 years agoMerge "Compilation fixes for QNX platform" into deqp-dev
Treehugger Robot [Fri, 14 Jul 2017 18:18:52 +0000 (18:18 +0000)]
Merge "Compilation fixes for QNX platform" into deqp-dev

6 years agoCompilation fixes for QNX platform
Abhinav Shukla [Fri, 7 Jul 2017 11:31:22 +0000 (17:01 +0530)]
Compilation fixes for QNX platform

Modifies some CMakeLists.txt to add QNX specific checks
using the 'DE_OS_QNX' or 'DE_OS_IS_QNX' compilation flags.

Doesn't change functionality for any other platform.

VK-GL-CTS issue: 537

Components: Framework

Change-Id: I34d4091f2b0f064f22abc4996abb4bed94e4a83f

6 years agoAdded tests for NMin, NMax and NClamp instructions
Jari Komppa [Tue, 4 Jul 2017 06:05:05 +0000 (09:05 +0300)]
Added tests for NMin, NMax and NClamp instructions

The NMin, NMax and NClamp instructions are not generated by glslang
nor tested by spriv-assembly.

Due to the fact that the vulkan spec allows implementations that do
not implement NaN handling, the tests have to be somewhat relaxed;
either the NaN is handled correctly, or NaNs are considered huge
values.

All three instructions return NaN in all cases if all parameters are
NaN.

NMin always returns the other value if paired with NaN: if NaNs are
handled, the instruction should pick the other value. If NaNs are
not handled, the other value will always be smaller.

NMax may return either the other value (if NaNs are handled), or NaN
(if NaNs are not handled).

NClamp is only defined if the min and max values are not NaN, so those
cases are not tested, except for the case where all three values are
NaN. If the clamped value is NaN, the result may either be the min
value (if NaNs are handled) or max value (if NaNs are not handled).

In addition to the NaN case testing, various random non-NaN values are
tested for all three instructions.

Affects:

dEQP-VK.spirv_assembly.instruction.compute.opnmin.all
dEQP-VK.spirv_assembly.instruction.compute.opnmax.all
dEQP-VK.spirv_assembly.instruction.compute.opnclamp.all

Components: Vulkan

VK-GL-CTS issue: 171

Change-Id: I59e884d51dac4eee047af2e52eebee3318e57776

6 years agoRefactor large test groups
Paavo Pessi [Thu, 15 Jun 2017 10:46:47 +0000 (13:46 +0300)]
Refactor large test groups

Large test groups were split into smaller groups. Undescriptive
groups and cases were renamed to better represent their function.

dEQP-VK.api.buffer.*
- VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT is listed in the array of
  possible buffer usage modes but is never actually used.
  Test cases using said mode were added.

Affects:

dEQP-VK.api.buffer.*
dEQP-VK.pipeline.vertex_input.*
dEQP-VK.api.buffer_view.create.*
dEQP-VK.api.image_clearing.clear_color_image.*
dEQP-VK.texture.filtering.*
dEQP-VK.ubo.*

Components: Vulkan

VK-GL-CTS issue: 420

Change-Id: I201b1a087ee8b8b83cc0654f48f2e5da471d6421

6 years agoUpdate GL wrapper to newest API.
Mika Isojärvi [Thu, 13 Jul 2017 17:55:43 +0000 (10:55 -0700)]
Update GL wrapper to newest API.

Components: Framework
Affects: headers generation
Test: Run some of the functional deqp GLES tests on couple of Pixel
      and Nexus devices
Bug: 63669033

Change-Id: Id5e8924a1cec9bc72156efa51625d566ed2681ca

6 years agoFetch gl.xml, egl.xml from Github repos
Alexander Galazin [Fri, 24 Feb 2017 20:47:42 +0000 (21:47 +0100)]
Fetch gl.xml, egl.xml from Github repos

SVN repository containing gl.xml and egl.xml is no longer updated.
The new locations for these files are OpenGL-Registry and
EGL-Registry repositories on Github.
Adjust fetching scripts to use the new locations.

Components: Framework
Affects: headers generation

Change-Id: Ic091a46c636d446b6a4751bd3b797bcd19f90014

6 years agoReport Android extension pack tests as not supported
Alexander Galazin [Wed, 12 Jul 2017 12:38:01 +0000 (14:38 +0200)]
Report Android extension pack tests as not supported

Android extension pack tests can't run on GLES31-only GPUs.
Report such tests as NotSupported.

Components: AOSP

Change-Id: I88ab61e5d0b263428c41a644c6417e24e2f7f234

6 years agoMerge "Fix ShaderExecutor usage for core OpenGL" into deqp-dev
Treehugger Robot [Thu, 13 Jul 2017 19:34:56 +0000 (19:34 +0000)]
Merge "Fix ShaderExecutor usage for core OpenGL" into deqp-dev

6 years agoMask compared bits in atomic operation tests. am: b2ed9fbe1a am: 4d1d6446da am: b78f9...
Mika Isojrvi [Wed, 12 Jul 2017 22:57:34 +0000 (22:57 +0000)]
Mask compared bits in atomic operation tests. am: b2ed9fbe1a am: 4d1d6446da am: b78f9b0e57
am: 6e213b6fdc

Change-Id: I84abe9d601d4067b3bc6d3cf3480c11b86471f86

6 years agoMask compared bits in atomic operation tests. am: b2ed9fbe1a am: 4d1d6446da
Mika Isojrvi [Wed, 12 Jul 2017 22:55:28 +0000 (22:55 +0000)]
Mask compared bits in atomic operation tests. am: b2ed9fbe1a am: 4d1d6446da
am: b78f9b0e57

Change-Id: I8c3f63b90541d59965f4af1e60cb8654ce734faa

6 years agoMask compared bits in atomic operation tests. am: b2ed9fbe1a
Mika Isojrvi [Wed, 12 Jul 2017 22:53:28 +0000 (22:53 +0000)]
Mask compared bits in atomic operation tests. am: b2ed9fbe1a
am: 4d1d6446da

Change-Id: I9931765924b1102c011bd1d75522f9b4f7089dd2

6 years agoMask compared bits in atomic operation tests.
Mika Isojrvi [Wed, 12 Jul 2017 22:51:27 +0000 (22:51 +0000)]
Mask compared bits in atomic operation tests.
am: b2ed9fbe1a

Change-Id: I2f7b4cfbf2d926966af7c9956db670080771c164

6 years agoAdd missing files to Android.mk
Mika Isojrvi [Wed, 12 Jul 2017 20:02:22 +0000 (20:02 +0000)]
Add missing files to Android.mk
am: 58f3ba4184  -s ours

Change-Id: Ic30ccfcb844d0d8e61abf5b9384d8895bce4d831

6 years agoAdd RENDERBUFFER_VALID bit to R8, RG8 definition
Alexander Galazin [Wed, 12 Jul 2017 20:02:19 +0000 (20:02 +0000)]
Add RENDERBUFFER_VALID bit to R8, RG8 definition
am: 1d7c8df82e

Change-Id: I94f23b583d76a015c1c56376bb1f72dc606f8419

6 years agoCheck that threads started in multithreading tests
Mark Adams [Wed, 12 Jul 2017 20:02:15 +0000 (20:02 +0000)]
Check that threads started in multithreading tests
am: 9937c63c41

Change-Id: If1b3f506a83d4edd3c438f8395e63182b3058b41

6 years agoReduce scope of mustpass exclusions due to 22760309
Pyry Haulos [Wed, 12 Jul 2017 20:02:12 +0000 (20:02 +0000)]
Reduce scope of mustpass exclusions due to 22760309
am: 5d86672aa0

Change-Id: Ifc1529bd4403d2e997474c8d7f6a5459712bb684

6 years agoAdd new large constant array indexing tests
John Richardson [Wed, 12 Jul 2017 20:02:07 +0000 (20:02 +0000)]
Add new large constant array indexing tests
am: fc35227a44  -s ours

Change-Id: I2cbc0e2b934e120c64544a42d59ef5dc1a5b64bc

6 years agoReset GL_FRAMEBUFFER_SRGB state for ES tests
james.glanville [Wed, 12 Jul 2017 20:02:05 +0000 (20:02 +0000)]
Reset GL_FRAMEBUFFER_SRGB state for ES tests
am: 695727058b

Change-Id: I189e5fdf08cbdb81c66aa091778eaab9b010a6cc

6 years agoApply sRGB conversion to reference in sRGB framebuffer fetch test
james.glanville [Wed, 12 Jul 2017 20:02:00 +0000 (20:02 +0000)]
Apply sRGB conversion to reference in sRGB framebuffer fetch test
am: c76765be1f

Change-Id: Id5d54413683ae39e6a48ef17f6e406b4dcb1818d

6 years agoFix for integer formats in framebuffer extension tests
John Richardson [Wed, 12 Jul 2017 20:01:55 +0000 (20:01 +0000)]
Fix for integer formats in framebuffer extension tests
am: 3bb47b5c57  -s ours

Change-Id: Ia085cbf839e30caec207880994b988de08141ade

6 years agoAdd new framebuffer fetch extension tests
John Richardson [Wed, 12 Jul 2017 20:01:52 +0000 (20:01 +0000)]
Add new framebuffer fetch extension tests
am: 2a609fb223  -s ours

Change-Id: Ib770a9b16e12b79b745931ec132514dc99900b86

6 years agoCode clean up in swizzle math operations script
John Richardson [Wed, 12 Jul 2017 20:01:49 +0000 (20:01 +0000)]
Code clean up in swizzle math operations script
am: fc24d7d28c

Change-Id: I1b2ce0201d639c2c956856734eda7a3801590cd3

6 years agoAdd new swizzle math operation tests
John Richardson [Wed, 12 Jul 2017 20:01:44 +0000 (20:01 +0000)]
Add new swizzle math operation tests
am: 821035bbc9  -s ours

Change-Id: Ide35e7484eab18a038d61c104e49e9ed2516d94e

6 years agoFix compute.exceed_atomic_counters_limit
Pyry Haulos [Wed, 12 Jul 2017 20:01:41 +0000 (20:01 +0000)]
Fix compute.exceed_atomic_counters_limit
am: 5b837a5b21

Change-Id: I33d9033711ddb32961e4f23d437ffc4681077cf3

6 years agoEnsure vertex shader presence if a geometry shader exists
Alexander Galazin [Wed, 12 Jul 2017 20:01:38 +0000 (20:01 +0000)]
Ensure vertex shader presence if a geometry shader exists
am: 5dd0c1077c

Change-Id: I28aa78b0e4eb591769379df93dc6aef6ab3be4c5

6 years agoAdd negative OES_sample_variables tests
Michael Hadley [Wed, 12 Jul 2017 20:01:36 +0000 (20:01 +0000)]
Add negative OES_sample_variables tests
am: d30cb29294  -s ours

Change-Id: Ifaacb62cd978fc75ebdb7aed462b035565b9a71b

6 years agoAdd new compute negative coverage tests
John Richardson [Wed, 12 Jul 2017 20:01:34 +0000 (20:01 +0000)]
Add new compute negative coverage tests
am: db4a886f3f  -s ours

Change-Id: Ide57d07d9bba37691bbf0f172640cf3a6586bb59

6 years agoAdd new EGL enum negative case to robustness tests
John Richardson [Wed, 12 Jul 2017 20:01:32 +0000 (20:01 +0000)]
Add new EGL enum negative case to robustness tests
am: c77b3cf9f3

Change-Id: I0cb1cdd6af70d74902fd236eed9a3ac088386776

6 years agoAdd negative sRGB texture/sampler API tests
Michael Hadley [Wed, 12 Jul 2017 20:01:30 +0000 (20:01 +0000)]
Add negative sRGB texture/sampler API tests
am: a237c0c9ac

Change-Id: I11c4e6e6a0bec4fa076daac297d99f8f03afbb7b

6 years agoFix DrawRangeElementsBaseVertex tests with negative basevertex
Alexander Galazin [Wed, 12 Jul 2017 20:01:28 +0000 (20:01 +0000)]
Fix DrawRangeElementsBaseVertex tests with negative basevertex
am: bf0b29365e

Change-Id: I85921f82f3f55187f8793d6144c15ff78d4e7a30

6 years agoAdd new draw elements base vertex tests
John Richardson [Wed, 12 Jul 2017 20:01:26 +0000 (20:01 +0000)]
Add new draw elements base vertex tests
am: 3c865084eb  -s ours

Change-Id: If68f8da7f9788c3016bc01620e03316a94a03303

6 years agoFix typo in framebuffer_srgb_unsupported_enum
Pyry Haulos [Wed, 12 Jul 2017 20:01:25 +0000 (20:01 +0000)]
Fix typo in framebuffer_srgb_unsupported_enum
am: b46d559e07

Change-Id: I72cd36eb013532467a54d08ce61ace5c55a27774

6 years agoAdd sRGB write decode negative case
John Richardson [Wed, 12 Jul 2017 20:01:21 +0000 (20:01 +0000)]
Add sRGB write decode negative case
am: 6644e7bfef  -s ours

Change-Id: I3ca1620efe31a4a7fce3267f6c788d1e5f5ea064

6 years agoAdd sRGB write decode tests
Michael Hadley [Wed, 12 Jul 2017 20:01:18 +0000 (20:01 +0000)]
Add sRGB write decode tests
am: 50d8f31f52  -s ours

Change-Id: Ia9a7bc1a1a23792a3a6d7a22588e74559a5f2b98

6 years agoUpdate GLES EGL mustpass after gl.xml update
Alexander Galazin [Wed, 12 Jul 2017 13:23:46 +0000 (15:23 +0200)]
Update GLES EGL mustpass after gl.xml update

Components: OpenGL

Change-Id: I967565b0f89547cc12a418dc20e5cc3dd2aa4541

6 years agoUpdate gl.xml revision
Alexander Galazin [Wed, 12 Jul 2017 08:03:11 +0000 (10:03 +0200)]
Update gl.xml revision

Components: AOSP, Framework

Change-Id: I5272c877c3a696b2727fa335a5d4f8ab62df4d7c

6 years agoAdded logging of thread count in more mt tests
Jari Komppa [Tue, 11 Jul 2017 12:28:18 +0000 (15:28 +0300)]
Added logging of thread count in more mt tests

This allows checking between two runs of the test suite to verify
that the same number of threads were used when running the tests.

Gerrit change 1214 added logging to one set of tests:
dEQP-VK.api.object_management.multithreaded_per_thread_device.*

This change does the same for the other multithreaded tests
under object_management.

Affects:

dEQP-VK.api.object_management.multithreaded_per_thread_resources.*
dEQP-VK.api.object_management.multithreaded_shared_resources.*

Components: Vulkan

VK-GL-CTS issue: 80

Change-Id: Iab96e1c249f9113c74ebc851e27558611cb1ede7

6 years agoAdd missing files to Android.mk
Mika Isojärvi [Fri, 7 Jul 2017 22:46:05 +0000 (15:46 -0700)]
Add missing files to Android.mk

Change-Id: I843a5b2967b130f3c7399865e1d0e56af840c1ae

6 years agoAdd RENDERBUFFER_VALID bit to R8, RG8 definition
Alexander Galazin [Wed, 28 Jun 2017 07:31:31 +0000 (09:31 +0200)]
Add RENDERBUFFER_VALID bit to R8, RG8 definition

FBO completness tests missed that R8/RG8 are valid internal formats
for glRenderbufferStorage* calls starting from GLES3. This caused
the tests to expect error on some implementations.

VK-GL-CTS issue: 532

Components: AOSP

Affects:
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.r8
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.rg8

Change-Id: I394ac0e75f83f0a5ca03634629293f109fc0cbb7

6 years agoCheck that threads started in multithreading tests
Mark Adams [Mon, 19 Jun 2017 15:19:16 +0000 (11:19 -0400)]
Check that threads started in multithreading tests

The EGL GLES2 multithreading sharing tests could interpret a thread
that hadn't started yet as a finished thread.

Commit fd41d5d addressed the same issue but only changed one of the
two test iteration functions.

Author: Onni Kosomaa <okosomaa@nvidia.com>

Change-Id: Ie35390a8d57d9a0e8a679250a63ebb68e100de47

6 years agoReduce scope of mustpass exclusions due to 22760309
Pyry Haulos [Fri, 12 May 2017 18:26:59 +0000 (11:26 -0700)]
Reduce scope of mustpass exclusions due to 22760309

Bug: 22760309

Change-Id: I65b3e8ac836c87d038ee0f2a1aa033242ae19a1a

6 years agoAdd new large constant array indexing tests
John Richardson [Tue, 28 Mar 2017 15:54:13 +0000 (16:54 +0100)]
Add new large constant array indexing tests

New shader library tests for indexing into large constant arrays with
varied sizes and data types (float, vec4).

New tests:
- dEQP-GLES3.functional.shaders.large_constant_arrays.indexing.*

Change-Id: I2d41cc35930969078737b3490c5a2377e7c65446

6 years agoReset GL_FRAMEBUFFER_SRGB state for ES tests
james.glanville [Wed, 17 May 2017 12:45:37 +0000 (13:45 +0100)]
Reset GL_FRAMEBUFFER_SRGB state for ES tests

GL_EXT_sRGB_write_control adds new state "GL_FRAMEBUFFER_SRGB" which
is enabled by default. This was not reset between tests, meaning state
could leak between tests.

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

Components: AOSP

6 years agoApply sRGB conversion to reference in sRGB framebuffer fetch test
james.glanville [Thu, 18 May 2017 10:24:06 +0000 (11:24 +0100)]
Apply sRGB conversion to reference in sRGB framebuffer fetch test

Framebuffer fetch returns linear values when the framebuffer format
is sRGB and GL_FRAMEBUFFER_SRGB is enabled (default). This conversion
was not applied when generating reference textures for framebuffer
fetch tests. glReadPixels() does not apply any conversion, so the
final reference value must also be converted back to sRGB.

Affects: dEQP-GLES31.functional.shaders.framebuffer_fetch.
framebuffer_format.srgb8_alpha8

Components: AOSP

6 years agoFix for integer formats in framebuffer extension tests
John Richardson [Thu, 30 Mar 2017 09:53:48 +0000 (10:53 +0100)]
Fix for integer formats in framebuffer extension tests

Use UVec4 and IVec4 types when calculating composite color for
unsigned and signed integer formats respectively.

Affected tests:
- dEQP-GLES31.functional.shaders.framebuffer_fetch.framebuffer_format.*

Change-Id: I01cea4a6d99df51939740712b952b5e9191ed1f2

6 years agoAdd new framebuffer fetch extension tests
John Richardson [Mon, 20 Mar 2017 17:29:54 +0000 (17:29 +0000)]
Add new framebuffer fetch extension tests

New tests for EXT_shader_framebuffer_buffer_fetch extension. Test cases
for accessing existing framebuffer data as input in the fragment shader.
Includes negative tests cases for invalid shader usage.

New tests:
- dEQP-GLES31.functional.shaders.framebuffer_fetch.basic.*
- dEQP-GLES31.functional.shaders.framebuffer_fetch.framebuffer_format.*
- dEQP-GLES31.functional.debug.negative_coverage.*.framebuffer_fetch.*

Change-Id: I8f8aa2312e26c2c709d3e2e2733c497e24669da8

6 years agoCode clean up in swizzle math operations script
John Richardson [Wed, 29 Mar 2017 08:49:52 +0000 (09:49 +0100)]
Code clean up in swizzle math operations script

Remove redundant arguments in SwizzleCase constructor in gen swizzle
math operations script.

Change-Id: Ib1786db43682a6aa30b5d64ba770ad565ca23ea5

6 years agoAdd new swizzle math operation tests
John Richardson [Thu, 23 Mar 2017 09:54:09 +0000 (09:54 +0000)]
Add new swizzle math operation tests

New tests for combined swizzle and math operations using various vector
types. Includes addition, subtraction, multiplication, and division
operations with repeated and non-repeated swizzles.

New tests:
- dEQP-GLES3.functional.shaders.swizzle_math_operations.vector_add.*
- dEQP-GLES3.functional.shaders.swizzle_math_operations.vector_subtract.*
- dEQP-GLES3.functional.shaders.swizzle_math_operations.vector_multiply.*
- dEQP-GLES3.functional.shaders.swizzle_math_operations.vector_divide.*

Change-Id: I4541a88057f70dd41f4f27b81313748094e76037

6 years agoFix compute.exceed_atomic_counters_limit
Pyry Haulos [Mon, 3 Apr 2017 15:37:57 +0000 (08:37 -0700)]
Fix compute.exceed_atomic_counters_limit

Tests were using large offset instead of large binding value when
attempting to exceed atomic counter limit.

Affects:

dEQP-GLES31.functional.debug.negative_coverage.*.compute.exceed_atomic_counters_limit

Change-Id: I9c89b64de4983ec383a9c76cc44f3ac9f2e782f4

6 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

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Tue, 11 Jul 2017 14:23:12 +0000 (16:23 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: Ia6c79e1d0c516b4e58984fbe87238670a8bbab25

6 years agoWindows build fix. Use deUint types
Boris Zanin [Tue, 11 Jul 2017 12:31:58 +0000 (14:31 +0200)]
Windows build fix. Use deUint types

uint32_t and uint64_t have been replaced with
deUint32 and deUint64 recognizable by Windows.

Components: Vulkan

VK-GL-CTS issue: 358

Change-Id: I5b80d861a63005011f3d0b663d802f97321148f8

6 years agoMerge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/master
Alexander Galazin [Tue, 11 Jul 2017 09:39:46 +0000 (11:39 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/master

Change-Id: I38c411fd5bdd838539af37d5ccbebecb2118159d

6 years agoMerge vk-gl-cts/opengl-es-cts-3.2.2 into vk-gl-cts/opengl-es-cts-3.2.3
Alexander Galazin [Tue, 11 Jul 2017 09:39:43 +0000 (11:39 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.2 into vk-gl-cts/opengl-es-cts-3.2.3

Change-Id: I151494637b7f30099fe55c84c5578fec9da270dd

6 years agoAvoid accessing out-of-bounds input patch vertices
Ilia Mirkin [Sun, 25 Jun 2017 16:43:32 +0000 (12:43 -0400)]
Avoid accessing out-of-bounds input patch vertices

Fixes github issue #48.

Affects:

KHR-GL45.shader_subroutine.subroutines_with_separate_shader_objects

Components: OpenGL
(cherry picked from commit a02d5d805e14805aacc4c8aea5600410e6a75439)

Change-Id: I74a9ce73e6ef1b82ca36d5a47ade9a6bc7724bdb

6 years agoRestore few tests in 1.0.3/master mustpass
Alexander Galazin [Mon, 10 Jul 2017 19:54:44 +0000 (21:54 +0200)]
Restore few tests in 1.0.3/master mustpass

Change-Id: I1f4d981d73ea0e5d06e4be8e7e011932a09ef103

6 years agoMerge branch vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master
Alexander Galazin [Mon, 10 Jul 2017 19:15:01 +0000 (21:15 +0200)]
Merge branch vk-gl-cts/vulkan-cts-1.0.2 into vk-gl-cts/master

Change-Id: I393c1b28bd020822cb2bb6d564b5de2b6b87b55a

6 years agoMerge vk-gl-cts/vulkan-cts-1.0.2-confidential-rc into vk-gl-cts/vulkan-cts-1.0.2
Alexander Galazin [Mon, 10 Jul 2017 15:52:41 +0000 (17:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.0.2-confidential-rc into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I328c6582580bf287a02201c200fb4e477c259508

6 years agoFix MultisampleRenderPassTest layout transitions
Tony Barbour [Wed, 28 Jun 2017 16:41:39 +0000 (10:41 -0600)]
Fix MultisampleRenderPassTest layout transitions

Section 6.6 of the Vulkan spec says:

If vkCmdPipelineBarrier is called within a render pass instance, the
oldLayout and newLayout members of an element of pImageMemoryBarriers
must be equal

so move the layout transition in this test to be outside the renderpass

Affects:

dEQP-VK.renderpass.multisample_resolve.*

Components: Vulkan

VK-GL-CTS Issue: 540

Change-Id: Ifb61c1d00db9fa6042aa51d4955c8eb89f021f1e

6 years agoMove context flags tests to custom context package
Piotr Byszewski [Wed, 21 Jun 2017 07:52:12 +0000 (09:52 +0200)]
Move context flags tests to custom context package

Previously context flags tests were only executed for ES32. In this
change they were moved to common folder and are executed from
package that has no default context.

Components: OpenGL

VK-GL-CTS issue: 351

Affects: KHR-NoContext.*.context_flags.*

Change-Id: Ib68cc85e8c3188ca4bfcb15046da85c9d00b55e7

6 years agoAdded logging of thread count in some mt tests
Jari Komppa [Tue, 27 Jun 2017 12:14:25 +0000 (15:14 +0300)]
Added logging of thread count in some mt tests

This allows checking between two runs of the test suite to verify that
the same number of threads were used when running the tests.

The number of threads is (already) clamped between 2 and 8.

Affects:

dEQP-VK.api.object_management.multithreaded_per_thread_device*

Components: Vulkan

VK-GL-CTS issue: 80

Change-Id: I23ad351377a539865f42c1d57f3e01bb81be17e0

6 years agoAdd tests for vkCmdClearColorImage with VK_REMAINING_ARRAY_LAYERS
Paavo Pessi [Tue, 4 Jul 2017 06:50:15 +0000 (09:50 +0300)]
Add tests for vkCmdClearColorImage with VK_REMAINING_ARRAY_LAYERS

Tests were added to verify that using VK_REMAINING_ARRAY_LAYERS
as layerCount in VkImageSubresourceRange works as intended when
clearing color and depth image layers.

New tests:

dEQP-VK.api.image_clearing.clear_color_image.1d_*_remaining_array_layers
dEQP-VK.api.image_clearing.clear_color_image.2d_*_remaining_array_layers
dEQP-VK.api.image_clearing.clear_depth_stencil_image.2d_*_remaining_array_layers

Affects:

dEQP-VK.api.image_clearing.clear_color_image.*
dEQP-VK.api.image_clearing.clear_depth_stencil_image.*

Components: Vulkan

VK-GL-CTS issue: 544

Change-Id: Ic4cd1d567bd7e45855dfeb7bfd58e45b986e07b1

6 years agoTest for usage of enable all extensions
Piotr Byszewski [Mon, 3 Jul 2017 15:16:32 +0000 (17:16 +0200)]
Test for usage of enable all extensions

After removing GTF there was a coverage loss related to testing enable all.
This patch resolves that by extending invalid behavior tests.

Components: OpenGL

VK-GL-CTS issue: 453

Affects:
KHR-GLES3.shaders.preprocessor.extensions.invalid_behavior_3_*

Change-Id: Iceb7da497f50d91f905efd5a37d8c45b21e98080

6 years agoAdd exposed extensions test
Piotr Byszewski [Tue, 4 Jul 2017 08:29:08 +0000 (10:29 +0200)]
Add exposed extensions test

GL implementations should not expose any OES extensions
except GL_OES_EGL_image.
GLES implementations should not expose any ARB extensions.

Components: OpenGL

VK-GL-CTS issue: 49

Affects:
KHR-GL40.exposed_extensions.*
KHR-GLES3.exposed_extensions.*

Change-Id: Ic3a11850bb1b5c4414cdd9f04614b51d428d6a4f

6 years agoAdd negative OES_sample_variables tests
Michael Hadley [Tue, 14 Mar 2017 15:42:34 +0000 (15:42 +0000)]
Add negative OES_sample_variables tests

New Tests:
- dEQP-GLES31.functional.debug.negative_coverage.callbacks.oes_sample_variables.*
- dEQP-GLES31.functional.debug.negative_coverage.log.oes_sample_variables.*
- dEQP-GLES31.functional.debug.negative_coverage.get_error.oes_sample_variables.*

Change-Id: I83bf9b48ca0ac7133419099b1a54ebc4d1cacf20

6 years agoAdd new compute negative coverage tests
John Richardson [Mon, 6 Feb 2017 11:28:21 +0000 (11:28 +0000)]
Add new compute negative coverage tests

Test groups added to:
- dEQP-GLES31.functional.debug.negative_coverage.*.compute (new)

New tests:
- program_not_active

- invalid_program_query
- invalid_dispatch_compute_indirect
- invalid_maximum_work_group_counts
- invalid_maximum_work_group_sizes
- invalid_layout_qualifiers
- invalid_write_built_in_constants

- exceed_uniform_block_limit
- exceed_shader_storage_block_limit
- exceed_texture_image_units_limit
- exceed_image_uniforms_limit
- exceed_shared_memory_size_limit
- exceed_uniform_components_limit
- exceed_atomic_counter_buffer_limit
- exceed_atomic_counters_limit

Change-Id: Ifd798652df3b138e174c1d9408b6ecdb003ce7f9

6 years agoAdd new EGL enum negative case to robustness tests
John Richardson [Wed, 29 Mar 2017 13:19:56 +0000 (14:19 +0100)]
Add new EGL enum negative case to robustness tests

New test case for verifying EGL versions < 1.5 do not accept
EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY enum in their attribute
list when creating an EGL context.

Test group:
- dEQP-EGL.functional.robustness.negative_context

New tests:
- invalid_notification_strategy_enum

Change-Id: I6027e880a2e3a97dfaa218c7b094ea727afcc996

6 years agoAdd negative sRGB texture/sampler API tests
Michael Hadley [Wed, 7 Dec 2016 16:11:05 +0000 (16:11 +0000)]
Add negative sRGB texture/sampler API tests

Added sRGB tests to the following:
- dEQP-GLES31.functional.debug.negative_coverage.callbacks.texture.*
- dEQP-GLES31.functional.debug.negative_coverage.callbacks.shader.*

Change-Id: I1ebd5a95c8605a39e4bbb5b4516d0f7b8c11898e

6 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

6 years agoAdd new draw elements base vertex tests
John Richardson [Tue, 14 Feb 2017 09:27:14 +0000 (09:27 +0000)]
Add new draw elements base vertex tests

New tests for EXT_draw_elements_base_vertex extension
exercising the following draw calls

- DrawElementsBaseVertex()
- DrawRangeElementsBaseVertex()
- DrawElementsInstancedBaserVertex()

New test groups:
- dEQP-GLES31.functional.draw_elements_base_vertex.*

New tests:
- indices.*
- base_vertex.*
- builtin_variable.*
- points.*
- triangles.*
- triangle_fan.*
- triangle_strip.*
- lines.*
- line_strip.*
- line_loop.*

Extend dEQP-GLES31.functional.debug.negative_coverage.callbacks.vertex_array.*
tests to include additional mapping and mismatched primitive mode
errors for base vertex draw calls.

New tests:
- *.primitive_mode_mismatch
- *.invalid_map

Change-Id: Iefc9bcddd3fe8831d2bb20f2e46d06f92daa6d6b

6 years agoFix typo in framebuffer_srgb_unsupported_enum
Pyry Haulos [Mon, 3 Apr 2017 15:32:07 +0000 (08:32 -0700)]
Fix typo in framebuffer_srgb_unsupported_enum

Test case was not assigning gl.getError() return value into a variable
causing tests to always fail on implementations that don't support ES3.2
or GL_EXT_sRGB_write_control.

Affects:

dEQP-GLES31.functional.fbo.srgb_write_control.framebuffer_srgb_unsupported_enum

Change-Id: Iafc38b8152f3371ce8c016c4f70feb2bb4604c69

6 years agoAdd sRGB write decode negative case
John Richardson [Thu, 30 Mar 2017 14:11:43 +0000 (15:11 +0100)]
Add sRGB write decode negative case

Test to check drivers that don't expose EXT_sRGB_write control return
GL_INVALID_ENUM for related gl calls.

New Tests:
- dEQP-GLES31.functional.fbo.srgb_write_control.framebuffer_srgb_unsupported_enum

Change-Id: I605f70894ead6e5dd317a340d061dcec9a6180c8

6 years agoAdd sRGB write decode tests
Michael Hadley [Wed, 8 Mar 2017 13:28:09 +0000 (13:28 +0000)]
Add sRGB write decode tests

New Tests:
- dEQP-GLES31.functional.fbo.srgb_write_control.*

Change-Id: Ieaaee4c7dc49cc530d8fc42a060e40c706d86e5c

6 years agoFix ShaderExecutor usage for core OpenGL
Piotr Byszewski [Thu, 6 Jul 2017 10:41:37 +0000 (12:41 +0200)]
Fix ShaderExecutor usage for core OpenGL

Tessellation shader tests were failing on GL43 due to
INVALID_OPERATION error generated by glDrawArrays().
The error was generated due to lack of a vertex array being bound.

Components: AOSP

Change-Id: I56f7430f93ee3ae861b0168e852a948fbb0f9bed

6 years agoFix gcc 5.4 warnings
Alexander Galazin [Wed, 5 Jul 2017 15:09:38 +0000 (17:09 +0200)]
Fix gcc 5.4 warnings

gcc 5.4 (default in Ubuntu 16.04) reports conversion to int
warnings/errors for bitwise or and assign operator.

GCC bug: 40752

Components: Framework, Vulkan

Change-Id: Ia857c44cf54d5571d857e1fada0e2aaa8f4b950d

6 years agoFix for variable pointer (writes) in tess.control
Ehsan Nasiri [Fri, 30 Jun 2017 22:58:19 +0000 (18:58 -0400)]
Fix for variable pointer (writes) in tess.control

Use patch index to avoid multiple increments

VK-GL-CTS issue: 543

Components: Vulkan

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.graphics.writes*tess*

Change-Id: If518fdae084722cc28f19044186dbda07880a50c

6 years agocross_instance sync tests: add support for non-KMT Win32 handles
Slawomir Cygan [Mon, 3 Jul 2017 13:45:47 +0000 (15:45 +0200)]
cross_instance sync tests: add support for non-KMT Win32 handles

This adds tests for *HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR
handle types.

Affects: dEQP-VK.synchronization.cross_instance.*win32*

VK-GL-CTS issue: 547
Components: Vulkan

Change-Id: I70a577195f5b303c7fd80f88606f35b83a1b2b11

6 years agoWrong handle in external fence reset tests
Slawomir Cygan [Mon, 3 Jul 2017 16:50:01 +0000 (18:50 +0200)]
Wrong handle in external fence reset tests

The `importFence()` function resets the passed handle at the end,
so in two consecutive calls the second one is going to use the
wrong handle.

To avoid that the handle is duplicated.

Affects: dEQP-VK.api.external.fence.*reset_*

VK-GL-CTS issue: 549
Components: Vulkan

Change-Id: I2218d2f5ceffe52afe6a2306c3eebac79a24b5a9

6 years agoFix gcc 6.3 warnings
Alexander Galazin [Wed, 5 Jul 2017 13:29:21 +0000 (15:29 +0200)]
Fix gcc 6.3 warnings

Components: Vulkan

Change-Id: I0e4f8d09fef5a6d08a7b7db975de4a68879ea3f8

6 years agoAdd a test for creating device with unsupported features.
Ari Suonpaa [Wed, 28 Jun 2017 07:51:30 +0000 (10:51 +0300)]
Add a test for creating device with unsupported features.

Affects:

dEQP-VK.api.device_init.create_device_unsupported_features

Components: Vulkan

VK-GL-CTS issue: 403

Change-Id: Ibf3b583e3f64e412972493a85f5437502d205db0