platform/upstream/VK-GL-CTS.git
7 years agoFix shader bugs in OOB tests
Alexander Galazin [Wed, 5 Apr 2017 07:30:06 +0000 (09:30 +0200)]
Fix shader bugs in OOB tests

1. Check that the required number of vertex shader storage blocks is supported,
   throw NotSupported otherwise.
2. Use an array instead of a vector in local_array tests.
3. Try harder to defeat compiler optimizations on arrays, i.e. initialize it
   with different values.

Components: AOSP

Affects:
dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bounds_non_robust.*.shader_storage_block.vertex*
dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bounds_non_robust.*.local_array.*

Google bug: 36891454

Change-Id: I2aeb2d454295993126d4048759e5981421d5c0db

7 years agoUse new LOD approximation rules for OpenGL ES
Pyry Haulos [Sun, 2 Apr 2017 23:21:57 +0000 (23:21 +0000)]
Use new LOD approximation rules for OpenGL ES
am: 0b6dbeb93e

Change-Id: I6b21c0e848086e1d0d37f24a68728adf2858727c

7 years agoRelax LOD computation bounds
Pyry Haulos [Sun, 2 Apr 2017 23:21:54 +0000 (23:21 +0000)]
Relax LOD computation bounds
am: a9a793142c

Change-Id: I57b81a54c124694adde363aa5d27d92707ce58e2

7 years agoMerge Vulkan CTS 1.0.2.2 into aosp/master
Pyry Haulos [Sat, 1 Apr 2017 01:06:32 +0000 (01:06 +0000)]
Merge Vulkan CTS 1.0.2.2 into aosp/master
am: d4891aeb29

Change-Id: Id94d2f40cda6be6d83d7d5f4d920e9294f5b40c4

7 years agoUse new LOD approximation rules for OpenGL ES
Pyry Haulos [Tue, 28 Mar 2017 20:17:39 +0000 (13:17 -0700)]
Use new LOD approximation rules for OpenGL ES

This change updates OpenGL ES texture LOD approximation bounds to match
Vulkan. Since rules are now same for both APIs the LodPrecision
parameter introduced in 9f0ff9f49ae3359d9b2e50f5d720fc77460d0f4f is
removed.

Affects:

dEQP-GLES2.texture.*
dEQP-GLES3.texture.*
dEQP-GLES31.texture.*

Khronos spec bug: 16179
Google bug: 28200359
Components: AOSP, Vulkan, Framework

Change-Id: I55ff2e6296c7947af7ee5b7cf915d24c260ae374

7 years agoRelax LOD computation bounds
Pyry Haulos [Tue, 28 Mar 2017 20:10:53 +0000 (13:10 -0700)]
Relax LOD computation bounds

This change updates LOD approximation rules to match proposed spec
language in Vulkan texture filtering and mipmap tests.

This is partial cherry-pick of 9f0ff9f49ae3359d9b2e50f5d720fc77460d0f4f.
Mustpass changes are not included.

Affects: dEQP-VK.texture.*

Change-Id: Ic786bc733913a76d27f0cba31f3a61a10f8144fc

7 years agoMerge Vulkan CTS 1.0.2.2 into aosp/master
Pyry Haulos [Fri, 31 Mar 2017 21:12:43 +0000 (14:12 -0700)]
Merge Vulkan CTS 1.0.2.2 into aosp/master

Bug: 36780905

New tests:

 * Add tests for VK_KHR_incremental_present
 * Add tests for VK_GOOGLE_display_timing
 * Handle VK_EXT_swapchain_colorspace in swapchain tests

Fixes:

 * Imgtec Waiver for SNORM linear filtering
 * Check DynamicIndexing in pipeline.image count tests
 * Add missing barrier in synchronization tests
 * Fix invalid SPIR-V in dEQP-VK.sparse_resources
 * Add missing flushes for basic draws
 * Add missing flushes for indirect draws
 * Fix precision mismatch issues in dEQP-VK.glsl
 * Fix validation errors in dEQP-VK.tessellation
 * Fix precision mismatch in dEQP-VK.binding_model
 * Fix depth stencil aspect flag in render pass input tests
 * Fix image layout in dEQP-VK.image
 * Fix validation errors in dEQP-VK.geometry
 * Fix issues in pipeline.timestamp.transfer_tests
 * Refactor vktShaderExecutor
 * Improve precision handling in texture.explicit_lod
 * Fix a compilation error on GCC 5.4
 * Fix a compilation error on MSVC12
 * Fix bug in reallocation callback validation
 * Fix input attachment layout in renderpass tests

Change-Id: I76a768de047020d4624afa0aee2232e9e022f8d2

7 years agoMerge "Update runtime hints for master and Nougat"
Kalle Raita [Thu, 30 Mar 2017 21:09:15 +0000 (21:09 +0000)]
Merge "Update runtime hints for master and Nougat"
am: c29c5a7b35

Change-Id: I84161628d6b7ccc47fc2a12074a1f26f2814a3ff

7 years agoRevert "Allow old behavior in image format property tests"
Pyry Haulos [Thu, 30 Mar 2017 21:09:05 +0000 (21:09 +0000)]
Revert "Allow old behavior in image format property tests"
am: 6d962c2a6f

Change-Id: I41419ba8efe22223a4d16e79198e10e07dfad084

7 years agoMerge "Update runtime hints for master and Nougat"
Treehugger Robot [Thu, 30 Mar 2017 21:07:26 +0000 (21:07 +0000)]
Merge "Update runtime hints for master and Nougat"

7 years agoRevert "Allow old behavior in image format property tests"
Pyry Haulos [Thu, 30 Mar 2017 19:11:43 +0000 (12:11 -0700)]
Revert "Allow old behavior in image format property tests"

This reverts commit a25304112b0a3dba4082a1e7904b4f8149b2b9c8.

7 years agoUpdate runtime hints for master and Nougat
Kalle Raita [Thu, 30 Mar 2017 18:15:44 +0000 (11:15 -0700)]
Update runtime hints for master and Nougat

Update runtime hints used by the Android CTS to reflect measured times
for recent automated runs.

Test: run build_android_mustpass.py and diff check
Bug: 36776549
Change-Id: I77b0e95666ca6e220b2a618280fcece0b1c3a858

7 years agoFix tests in dEQP-EGL.functional.robustness*
James Glanville [Fri, 24 Mar 2017 16:26:25 +0000 (16:26 +0000)]
Fix tests in dEQP-EGL.functional.robustness*
am: fd0b6eda1c

Change-Id: I433792d201c95baddda44d1937288a05faf5f69d

7 years agoFix GL entry point loading in robustness tests
Pyry Haulos [Fri, 24 Mar 2017 16:26:13 +0000 (16:26 +0000)]
Fix GL entry point loading in robustness tests
am: ee81fc2044

Change-Id: I28f7222d49ec629dd05984f58d034b178b52864d

7 years agoFix tests in dEQP-EGL.functional.robustness*
James Glanville [Wed, 22 Mar 2017 14:02:48 +0000 (14:02 +0000)]
Fix tests in dEQP-EGL.functional.robustness*

The shader storage buffer used for compute was not
correctly bound. This caused glDispatchCompute()
to return an error instead of submitting work, so
the context would never reset.

Affects:
dEQP-EGL.functional.robustness*compute
Components: AOSP
Google bug: 36565815

Change-Id: I4fb807b49ab806c7de968b54b8e5fd5abfd87fcd
(cherry picked from commit a7a065346ffe38a895c461b638f2c6377cbd7bcf)

7 years agoFix GL entry point loading in robustness tests
Pyry Haulos [Thu, 23 Mar 2017 21:00:44 +0000 (14:00 -0700)]
Fix GL entry point loading in robustness tests

Tests were not loading robustness-related entry points if implementation
supported only GL_EXT_robustness and thus had EXT-suffixed entry points.

Bug: 36564789
Bug: 34887315
Change-Id: I70e610dd3083e7c09050e24ef829c71f950d82a1

7 years agoAdd tests for VK_KHR_incremental_present
Mika Isojärvi [Mon, 14 Nov 2016 20:47:29 +0000 (12:47 -0800)]
Add tests for VK_KHR_incremental_present

VK-GL-CTS issue: 228

Change-Id: Ib295de6e449fce56b1f94f2e80a9de52faa56a11
(cherry picked from commit 5319ab26dd8586121adfcc98bcd9f907a5a21aac)

7 years agoHandle VK_EXT_swapchain_colorspace in swapchain tests
Pyry Haulos [Wed, 15 Mar 2017 17:24:15 +0000 (10:24 -0700)]
Handle VK_EXT_swapchain_colorspace in swapchain tests

VK_EXT_swapchain_colorspace adds new surface formats. Driver can enumerate
the formats regardless of whether VK_EXT_swapchain_colorspace was enabled,
but using them without enabling the extension is not allowed. Thus we have
two options:

1) Filter out non-core formats to stay within valid usage.

2) Enable VK_EXT_swapchain colorspace if advertised by the driver.

We opt for (2) as it provides basic coverage for the extension as a bonus.

Affects: dEQP-VK.wsi.*.swapchain.*
Components: Vulkan
VK-GL-CTS issue: 237

Change-Id: I5f905e5fb7ceaf83dacca57ef60d65487ff96d5d
(cherry picked from commit 703e4baead3c08331ee7604539d7a68a8b960c84)

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Pyry Haulos [Thu, 23 Mar 2017 16:47:05 +0000 (09:47 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I73deeb16880948addabb1d8755ee00084aa346cf

7 years agoImgtec Waiver for SNORM linear filtering
Pyry Haulos [Thu, 16 Mar 2017 21:50:40 +0000 (14:50 -0700)]
Imgtec Waiver for SNORM linear filtering

Due to an error in bit replication of the fixed point SNORM values,
linear filtered negative SNORM values will differ slightly from ideal
precision in the last bit, moving the values towards 0.

This occurs on all members of the PowerVR Rogue family of GPUs

Affected tests are changed to allow for larger error and issue
QualityWarning when inaccurate results are found.

Affects:

dEQP-VK.pipeline.sampler.view_type*format*_snorm*_filter.linear

Components: Vulkan

VK-GL-CTS issue: 229

Change-Id: I59fa0f7acdcaa49fc84f17b22be1cc805da593a2

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Pyry Haulos [Thu, 23 Mar 2017 16:28:51 +0000 (09:28 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I3c3914cc9fe22c4815b3261c9b0fbcf1e184316b

7 years agoCheck DynamicIndexing in pipeline.image count tests
Alex Walters [Thu, 23 Mar 2017 11:42:50 +0000 (11:42 +0000)]
Check DynamicIndexing in pipeline.image count tests

The pipeline.image.sampling_type*count_* tests where the count of images
is greater than 1 use an array of images/samplers which requires the use
of shaderSampledImageArrayDynamicIndexing, which the test does not
currently check for.

Adds a check and throws NotSupportedError if the feature is not present.

Affects:

dEQP-VK.pipeline.image.sampling_type*count_*

Components: Vulkan

VK-GL-CTS issue: 296

Change-Id: I7b4244bcf4371e41c2121812362db166dc1d4c16

7 years agoAdd missing barrier in synchronization tests
Iago Toral Quiroga [Tue, 21 Mar 2017 11:34:07 +0000 (12:34 +0100)]
Add missing barrier in synchronization tests

The *read_vertex_input* tests write to a storage
buffer in the vertex stage, which will later
be mapped by the host to read and verify the
results. Add a barrier before attemptig to read
the data from the host.

Components: Vulkan
Vk-GL-CTS issue: 266

Affected tests:
dEQP-VK.synchronization.op.single_queue.semaphore.*read_vertex_input*

Change-Id: Ibda3c54aaa0ba82bdb29422aadcf5df90101411d

7 years agoRemove retire event from eglGetFrameTimestamps
Brian Anderson [Mon, 20 Mar 2017 23:53:54 +0000 (23:53 +0000)]
Remove retire event from eglGetFrameTimestamps
am: 1c43c47725

Change-Id: Ib41e15d994f2675815ed3d21b711ce817e46c9c8

7 years agoRemove retire event from eglGetFrameTimestamps
Brian Anderson [Fri, 17 Mar 2017 23:18:11 +0000 (16:18 -0700)]
Remove retire event from eglGetFrameTimestamps

This will be removed from the API and transparently
translated to the present event instead.

Test: --deqp-case=dEQP-EGL*get_frame_timestamps*

Change-Id: If33653efcaaca8a701008ccb0e6c9450e2c0e9dc

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Pyry Haulos [Mon, 20 Mar 2017 16:35:30 +0000 (09:35 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I9f1ac0266e8b5f869e70ef3d8eaec9a7481fdef9

7 years agoFix invalid SPIR-V in dEQP-VK.sparse_resources
Andrey Tuganov [Thu, 2 Mar 2017 20:23:02 +0000 (15:23 -0500)]
Fix invalid SPIR-V in dEQP-VK.sparse_resources

Fixed issue:
SPIR-V code generated in
 - vktSparseResourcesShaderIntrinsicsStorage.cpp
 - vktSparseResourcesShaderIntrinsicsSampled.cpp
violates non-aggregate type declaration uniqueness rule of SPIR-V
specification.

Affects: dEQP-VK.sparse_resources.shader_intrinsics.*
Components: Vulkan

VK-GL-CTS issue: 230

Change-Id: Id39663a17684923f37924559917af524cf68f6c0

7 years agoFix warning introduced in 2c9e3ec9 am: 521361d83d am: 19bf995047
Pyry Haulos [Fri, 17 Mar 2017 12:26:54 +0000 (12:26 +0000)]
Fix warning introduced in 2c9e3ec9 am: 521361d83d am: 19bf995047
am: c4c0f6d489

Change-Id: I35d4537a215f067ca3d0a6547d867980cd312c7c

7 years agoFix warning introduced in 2c9e3ec9 am: 521361d83d
Pyry Haulos [Fri, 17 Mar 2017 12:13:38 +0000 (12:13 +0000)]
Fix warning introduced in 2c9e3ec9 am: 521361d83d
am: 19bf995047

Change-Id: I15737bc9d84ca0c75026de084d77dbfe833d6539

7 years agoFix warning introduced in 2c9e3ec9
Pyry Haulos [Fri, 17 Mar 2017 12:09:41 +0000 (12:09 +0000)]
Fix warning introduced in 2c9e3ec9
am: 521361d83d

Change-Id: I82a9917cb875a166583a41e3d1bb7702ae2d3db8

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Pyry Haulos [Thu, 16 Mar 2017 20:26:40 +0000 (13:26 -0700)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

7 years agoAdd missing flushes for basic draws
Gary Sweet [Thu, 16 Mar 2017 13:17:39 +0000 (13:17 +0000)]
Add missing flushes for basic draws

Buffers were being mapped and written, but not flushed
before use. This affected the basic draw tests when running
with a non-coherent heap.

Affects:

dEQP-VK.draw.basic_draw.*

Components: Vulkan

VK-GL-CTS issue: 210

Change-Id: Ib0f9b77a3b0cd4488b9dc4cee6ebd6de4840262c

7 years agoAdd missing flushes for indirect draws
Gary Sweet [Thu, 16 Mar 2017 13:26:53 +0000 (13:26 +0000)]
Add missing flushes for indirect draws

Buffers were being mapped and written, but not flushed
before use. This affected the indirect draw tests when running
with a non-coherent heap.

Affects:

dEQP-VK.draw.indirect_draw.*

Components: Vulkan

VK-GL-CTS issue: 210

Change-Id: Ie8920bea727419a1da22b8e2d9babcca2c6593fe

7 years agoFix warning introduced in 2c9e3ec9
Pyry Haulos [Wed, 15 Mar 2017 19:23:06 +0000 (12:23 -0700)]
Fix warning introduced in 2c9e3ec9

Change-Id: I42bef21b2cc7274f107e5455dea1e382d8a419f4
(cherry picked from commit d8b452a7533c195b1328918bb696a819542ff044)

7 years agoFix warning introduced in 2c9e3ec9
Pyry Haulos [Wed, 15 Mar 2017 20:50:33 +0000 (20:50 +0000)]
Fix warning introduced in 2c9e3ec9
am: d8b452a753

Change-Id: I384874c7a404f9cd777f5787429d592ecef3d68a

7 years agoFix warning introduced in 2c9e3ec9
Pyry Haulos [Wed, 15 Mar 2017 19:23:06 +0000 (12:23 -0700)]
Fix warning introduced in 2c9e3ec9

Change-Id: I42bef21b2cc7274f107e5455dea1e382d8a419f4

7 years agoMerge "Further relax line verification in primitive bbox tests" into nougat-cts-dev...
Alexander Galazin [Wed, 15 Mar 2017 18:49:54 +0000 (18:49 +0000)]
Merge "Further relax line verification in primitive bbox tests" into nougat-cts-dev am: 0532365740 am: 468843cf08
am: 085f13d8da

Change-Id: I4ec0b85479b8ba62bd53d58f6de8fbb823f7c547

7 years agoFix warnings in new EGL tests
Pyry Haulos [Wed, 15 Mar 2017 18:44:44 +0000 (18:44 +0000)]
Fix warnings in new EGL tests
am: de0c0ce818

Change-Id: I891ab8168781999b4d22c4bd7755d54680fbd7c9

7 years agoMerge "Further relax line verification in primitive bbox tests" into nougat-cts-dev...
Alexander Galazin [Wed, 15 Mar 2017 18:40:38 +0000 (18:40 +0000)]
Merge "Further relax line verification in primitive bbox tests" into nougat-cts-dev am: 0532365740
am: 468843cf08

Change-Id: I9122ba56c736bdbb628dff8b5b8cc28c9979801f

7 years agoMerge "Further relax line verification in primitive bbox tests" into nougat-cts-dev
Alexander Galazin [Wed, 15 Mar 2017 18:35:35 +0000 (18:35 +0000)]
Merge "Further relax line verification in primitive bbox tests" into nougat-cts-dev
am: 0532365740

Change-Id: I12be73b76f9ae43955fbca0071f36b897e82f0d9

7 years agoMerge "Further relax line verification in primitive bbox tests" into nougat-cts-dev
Treehugger Robot [Wed, 15 Mar 2017 18:30:21 +0000 (18:30 +0000)]
Merge "Further relax line verification in primitive bbox tests" into nougat-cts-dev

7 years agoFix warnings in new EGL tests
Pyry Haulos [Wed, 15 Mar 2017 17:06:30 +0000 (10:06 -0700)]
Fix warnings in new EGL tests

Change-Id: I6d87c0bf5a61dcbb0f292dd7efa6fcb101b7442d

7 years agoUse glReadnPixels only if KHR_robustness is supported am: d99ba132d9 am: d01980d03d
Alexander Galazin [Wed, 15 Mar 2017 15:37:27 +0000 (15:37 +0000)]
Use glReadnPixels only if KHR_robustness is supported am: d99ba132d9 am: d01980d03d
am: 19b4a4e7ac

Change-Id: I36d68d2fdfe1ee677d26994b2ff95fa8b29b4c0b

7 years agoUse glReadnPixels only if KHR_robustness is supported am: d99ba132d9
Alexander Galazin [Wed, 15 Mar 2017 15:27:25 +0000 (15:27 +0000)]
Use glReadnPixels only if KHR_robustness is supported am: d99ba132d9
am: d01980d03d

Change-Id: If10695499f41c716416cb4277170529a1f325596

7 years agoUse glReadnPixels only if KHR_robustness is supported
Alexander Galazin [Wed, 15 Mar 2017 15:22:52 +0000 (15:22 +0000)]
Use glReadnPixels only if KHR_robustness is supported
am: d99ba132d9

Change-Id: Icd032ba51a9c2c6141b21083b300e8709ecd7b45

7 years agoAdd tests for VK_GOOGLE_display_timing
Ian Elliott [Sun, 15 Jan 2017 22:28:01 +0000 (14:28 -0800)]
Add tests for VK_GOOGLE_display_timing

New tests:

dEQP-VK.wsi.*.display_timing.*

Changed tests:

dEQP-VK.api.info.android.no_unknown_extensions

VK-GL-CTS issue: 227

Change-Id: I50ae75ee0301668e4ad255625f7098387365def8
(cherry picked from commit 4ca1b5ba618a69f9ab748417c9ac5247d182dff4)

7 years agoMerge "Fix stencil bits when creating reference image in depth stencil tests"
Kenneth Graunke [Mon, 13 Mar 2017 20:07:38 +0000 (20:07 +0000)]
Merge "Fix stencil bits when creating reference image in depth stencil tests"
am: 1f9e724a41

Change-Id: I9422abe161e2a8817757c205b6ad22a4587f7425

7 years agoMerge "Fix stencil bits when creating reference image in depth stencil tests"
Treehugger Robot [Mon, 13 Mar 2017 19:56:27 +0000 (19:56 +0000)]
Merge "Fix stencil bits when creating reference image in depth stencil tests"

7 years agoFix precision mismatch issues in dEQP-VK.glsl
Pyry Haulos [Thu, 9 Mar 2017 18:55:20 +0000 (10:55 -0800)]
Fix precision mismatch issues in dEQP-VK.glsl

Changed tests:

dEQP-VK.glsl.functions.*
dEQP-VK.glsl.linkage.*
dEQP-VK.glsl.scoping.*
dEQP-VK.glsl.swizzles.*

Removed tests:

dEQP-VK.glsl.linkage.varying.rules.differing_precision_1
dEQP-VK.glsl.linkage.varying.rules.differing_precision_2
dEQP-VK.glsl.linkage.varying.rules.differing_precision_3

VK-GL-CTS issue: 214
Components: Vulkan

Change-Id: I48c7a5573b485340daa5be9db6aab1fbc70a6fc5

7 years agoFix validation errors in dEQP-VK.tessellation
Pyry Haulos [Thu, 9 Mar 2017 21:39:17 +0000 (13:39 -0800)]
Fix validation errors in dEQP-VK.tessellation

This fixes several invalid VkExtent3D::depth values for 2D image
operations as well as couple of interface mismatches.

Changed tests: dEQP-VK.tessellation.*

VK-GL-CTS issue: 222
Components: Vulkan

Change-Id: I3da2de6fdf5df7cb89717e35bade73b43e9d3a7d

7 years agoFix precision mismatch in dEQP-VK.binding_model
Pyry Haulos [Thu, 9 Mar 2017 20:44:57 +0000 (12:44 -0800)]
Fix precision mismatch in dEQP-VK.binding_model

Changed tests:

dEQP-VK.binding_model.shader_access.*vertex*

VK-GL-CTS issue: 212
Components: Vulkan

Change-Id: I34b565329c6261f7a12d19f67451c13537dfd914

7 years agoFix stencil bits when creating reference image in depth stencil tests
Kenneth Graunke [Sat, 11 Mar 2017 17:26:19 +0000 (09:26 -0800)]
Fix stencil bits when creating reference image in depth stencil tests

renderReference expects the number of stencil bits, but we were passing
the number of depth bits.

Affects:
- dEQP-GLES2.functional.fragment_ops.depth_stencil.*
- dEQP-GLES3.functional.fragment_ops.depth_stencil.*

Patch authored by Iago Toral.  See also:
https://bugs.freedesktop.org/show_bug.cgi?id=94455

Change-Id: Id20a4a976c11d5dbe099e0acacc2f7c38dddeb17

7 years agoFix depth stencil aspect flag in render pass input tests
Mika Isojärvi [Thu, 9 Mar 2017 20:33:48 +0000 (12:33 -0800)]
Fix depth stencil aspect flag in render pass input tests

Affected tests:
dEQP-VK.renderpass.* -groups depth and stencil tests

VK-GL-CTS issue: 216
Components: Vulkan

Change-Id: Ib84e42d09e5fea9fbe2f1270c5369b14eb9d688b

7 years agoFix image layout in dEQP-VK.image
Pyry Haulos [Thu, 9 Mar 2017 20:51:24 +0000 (12:51 -0800)]
Fix image layout in dEQP-VK.image

Image load and store ops are only supported in VK_IMAGE_LAYOUT_GENERAL.

Changed tests:

dEQP-VK.image.load_store.*
dEQP-VK.image.format_reinterpret.*
dEQP-VK.image.qualifiers.restrict.*

VK-GL-CTS issue: 217
Components: Vulkan

Change-Id: I2b9048176ce0e79b3d1db8cb36d384c1b4c4c9d4

7 years agoFix validation errors in dEQP-VK.geometry
Pyry Haulos [Thu, 9 Mar 2017 21:45:30 +0000 (13:45 -0800)]
Fix validation errors in dEQP-VK.geometry

Fixes VkExtent3D::depth value as well as interface precision mismatch
issues.

VK-GL-CTS issue: 224
Components: Vulkan

Change-Id: Ida6f3ae2ba73cab3de22090a32a49e54b7af339c

7 years agoFix issues in pipeline.timestamp.transfer_tests
Pyry Haulos [Thu, 9 Mar 2017 17:46:29 +0000 (09:46 -0800)]
Fix issues in pipeline.timestamp.transfer_tests

This change fixes two issues:

 * Buffer overrun in vkCmdCopyBufferToImage and vkCmdCopyImageToBuffer
tests.

 * Validation error (srcStageMask must not be 0).

VK-GL-CTS issue: 185
Components: Vulkan

Change-Id: I9679566f08c4a914eb6066bab248abd6d51e0f7e

7 years agoFurther relax line verification in primitive bbox tests
Alexander Galazin [Mon, 6 Mar 2017 18:44:38 +0000 (19:44 +0100)]
Further relax line verification in primitive bbox tests

The original relaxation patch
ba45591407d0207e8ba0634ea5636fd721ed781f
allowed lines to be 1 pixel thinner or thicker compared
to the expected width. Unfortunately it missed the case
of a line with the width of 1 pixel that has extra verification
in the framework. This change covers this gap.

Google bug: 35987764

Change-Id: I193d76ae13738702c9d7361d1957f15ea7600c4f

7 years agoFix typo in dEQP-GLES31.functional.srgb_texture_decode.skip_decode.*
Sunny Sun [Fri, 10 Mar 2017 18:25:42 +0000 (18:25 +0000)]
Fix typo in dEQP-GLES31.functional.srgb_texture_decode.skip_decode.*
am: e05b3a9c94

Change-Id: I1f42053fc4ea360b21f0abb13648e3b4dad3b601

7 years agoUse glReadnPixels only if KHR_robustness is supported
Alexander Galazin [Thu, 23 Feb 2017 12:01:18 +0000 (13:01 +0100)]
Use glReadnPixels only if KHR_robustness is supported

glReadnPixels is introduced in KHR_robustness/GLES 3.2.
Use of this function in GLES 3.1 tests will result in segfault
on implementations that don't support KHR_robustness.

Components: AOSP, Framework

Affects: dEQP-GLES31.functional.debug.negative_coverage.callbacks.buffer.read_pixels_format_mismatch

VK-GL-CTS issue: 166
Google bug: 36122027

Change-Id: Idbe8734f7d82882ea99c75a8b74d693ac6dd831f
(cherry picked from commit 219019495770c221e92f43df3e76a954c613210d)

7 years agoFix typo in dEQP-GLES31.functional.srgb_texture_decode.skip_decode.*
Sunny Sun [Fri, 10 Mar 2017 06:46:23 +0000 (14:46 +0800)]
Fix typo in dEQP-GLES31.functional.srgb_texture_decode.skip_decode.*

Change-Id: I1432dbff1db24b0f1dd2c9a297822b4fbdb1aa76

7 years agoRefactor vktShaderExecutor
Pyry Haulos [Wed, 8 Mar 2017 21:05:00 +0000 (13:05 -0800)]
Refactor vktShaderExecutor

ShaderExecutor Vulkan port had several issues:

 * Lifetime of ShaderExecutor was designed to extend from TestCase to
TestInstance. This was done in order to allow generating shader sources at
TestCase and later reuse same object to do actual execution when Vulkan
device was available. Result was total lifetime mess and leak of Vulkan
objects beyond TestInstance lifetime.

 * Whole UniformSetup system was badly designed mess that provided
functionality for just a few tests.

Following cleanups and fixes have been made:

 * ShaderExecutor objects are now expected to be live only when Vulkan
device is available, i.e. only within vkt::TestInstance. Shader source
generation part has been moved into a separate utility.

 * UniformSetup mess is removed and replaced with much leaner and
extensible way to supply additional resources. Descriptor set 1 is
reserved for test case specific resources and those can be provided by
supplying custom descriptor layout and descriptor set. Tests using old
UniformSetup system have been adjusted accordingly.

There is still room for additional improvements, such as moving much of
pipeline construction from ShaderExecutor::execute() into constructors,
but these can be done in follow-up CLs.

Affects following test groups:

dEQP-VK.glsl.builtin.*
dEQP-VK.glsl.opaque_type_indexing.
dEQP-VK.texture.explicit_lod.*

VK-GL-CTS issue: 182
Components: Vulkan

Change-Id: Icfc45a36cb4651f39f12608842ef347a55353d84

7 years agoImprove precision handling in texture.explicit_lod
Pyry Haulos [Mon, 13 Feb 2017 21:11:53 +0000 (13:11 -0800)]
Improve precision handling in texture.explicit_lod

This change improves precision requirement handling in
dEQP-VK.texture.explicit_lod test group by adding separate controls for
format conversion and filtering math.

Changed tests:
dEQP-VK.texture.explicit_lod.*

Components: Vulkan

Change-Id: Id64da1d63d87d02c73c757a3f2d5d50f2fbc19c0
(cherry picked from commit 4269dc0c1e513c550d3d45c16f2760450dfcef5c)

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Pyry Haulos [Thu, 9 Mar 2017 23:01:33 +0000 (15:01 -0800)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I14e2b7bbfe3940ace0e6ae9b661f2a56a49edf98

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1
Pyry Haulos [Thu, 9 Mar 2017 23:01:31 +0000 (15:01 -0800)]
Merge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1

Change-Id: Ica55df93dd12ea2c6460ec7c6fbb1383e6d38f4d

7 years agoFix a compilation error on GCC 5.4
Maciej Jesionowski [Wed, 8 Mar 2017 13:15:55 +0000 (14:15 +0100)]
Fix a compilation error on GCC 5.4

Components: Vulkan
Change-Id: I6c6681d16613f18b2a3192368927f6d176f63a64

7 years agoFix flakiness of compositeDeadline check of eglGetFrameTimestsmps
Brian Anderson [Wed, 8 Mar 2017 23:54:32 +0000 (23:54 +0000)]
Fix flakiness of compositeDeadline check of eglGetFrameTimestsmps
am: 40fd86f16f

Change-Id: I35b0be79672d223b67d1d4c45d08296656d10995

7 years agoFix flakiness of compositeDeadline check of eglGetFrameTimestsmps
Brian Anderson [Tue, 7 Mar 2017 00:34:03 +0000 (16:34 -0800)]
Fix flakiness of compositeDeadline check of eglGetFrameTimestsmps

maxDeadline already has some slack built into the check.
This ensures proper slack for the mindDeadline too.

Test: --deqp-case=dEQP-EGL*get_frame_timestamps*

7 years agoMerge "Modify EGL robustness tests to use VBOs"
John Richardson [Mon, 6 Mar 2017 20:32:50 +0000 (20:32 +0000)]
Merge "Modify EGL robustness tests to use VBOs"
am: c9dcf19f73

Change-Id: I1714d2246abf3567f64c5228051bd02febbc9153

7 years agoMerge "Modify EGL robustness tests to use VBOs"
Treehugger Robot [Mon, 6 Mar 2017 19:54:49 +0000 (19:54 +0000)]
Merge "Modify EGL robustness tests to use VBOs"

7 years agoModify EGL robustness tests to use VBOs
John Richardson [Fri, 3 Mar 2017 12:01:08 +0000 (12:01 +0000)]
Modify EGL robustness tests to use VBOs

Remove use of client-side vertex arrays and use buffer objects instead.
Delete buffers on teardown and in destructor.
Move test description logs to start log file.

Affected tests:
- dEQP-EGL.functional.robustness.reset_context.*

Change-Id: I9432258f30d6c7e02362c0b2f6c36fc3694bd72d

7 years agoFix "null" ID in sRGB decode tests
Pyry Haulos [Fri, 3 Mar 2017 23:46:49 +0000 (23:46 +0000)]
Fix "null" ID in sRGB decode tests
am: ab0a5da69e

Change-Id: If565564c9d688b98251e22d99393366e4324510b

7 years agoFix "null" ID in sRGB decode tests
Pyry Haulos [Fri, 3 Mar 2017 16:44:08 +0000 (08:44 -0800)]
Fix "null" ID in sRGB decode tests

Use 0 as "null" GL object ID as -1 is potentially valid ID.

Change-Id: I95f9f0c300d5b6e95c0c7c81e29fd28ac9ca3b82

7 years agoModify single_tessellation_stage to check for GL_NV_gpu_shader5
Mark Adams [Thu, 2 Mar 2017 19:18:04 +0000 (19:18 +0000)]
Modify single_tessellation_stage to check for GL_NV_gpu_shader5
am: 2c74c73891

Change-Id: I8403a6326362debb827a2d1bcac73d0c15e26796

7 years agoModify single_tessellation_stage to check for GL_NV_gpu_shader5
Mark Adams [Thu, 2 Mar 2017 15:19:49 +0000 (10:19 -0500)]
Modify single_tessellation_stage to check for GL_NV_gpu_shader5

That extension permits the use of a tessellation control shader
without a tessellation evaluation shader. Affected tests:

dEQP-GLES31.functional.debug.negative_coverage.*.tessellation.single_tessellation_stage

7 years agoFix a compilation error on MSVC12
Maciej Jesionowski [Thu, 2 Mar 2017 11:51:39 +0000 (12:51 +0100)]
Fix a compilation error on MSVC12

There's a problem with uint32_t, so better just use delib defines.

Components: Vulkan

Change-Id: I589ac7f220a7e651ed31910d16c643866314f681

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2
Pyry Haulos [Wed, 1 Mar 2017 15:53:46 +0000 (07:53 -0800)]
Merge vk-gl-cts/vulkan-cts-1.0.1 into vk-gl-cts/vulkan-cts-1.0.2

Change-Id: I1a17ff8600abeab32614212bdab2e4646e50bc25

7 years agoMerge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1
Pyry Haulos [Wed, 1 Mar 2017 15:53:44 +0000 (07:53 -0800)]
Merge vk-gl-cts/vulkan-cts-1.0.0 into vk-gl-cts/vulkan-cts-1.0.1

Change-Id: I9eec4dd1fa88a85374eba8d0851b00a28c50b4ac

7 years agoAdd new robustness extension tests
John Richardson [Tue, 28 Feb 2017 18:50:21 +0000 (18:50 +0000)]
Add new robustness extension tests
am: 83c250d247

Change-Id: I6948a8bacbe8d65b7b814085a58ea1212f8e0223

7 years agoAdd new robustness extension tests
John Richardson [Wed, 1 Feb 2017 15:00:53 +0000 (15:00 +0000)]
Add new robustness extension tests

New tests for KHR_robustness extension. Attempts to provoke context
reset scenarios and test GL state after a reset has occurred.

New test group:
- dEQP-EGL.functional.robustness.*

New tests:
- create_context.query_robust_access
- create_context.no_reset_notification
- create_context.lose_context_on_reset

- reset_context.shaders.infinite_loop.*   (various shaders)
- reset_context.shaders.out_of_bounds.*   (various resource types)
- reset_context.fixed_function_pipeline.* (index and vertex buffers)

- negative_context.invalid_robust_context_creation
- negative_context.invalid_robust_shared_context_creation

Note: Test groups ending in *_non_robust are for internal use only.

Change-Id: I91d7e3e95ec52f908dbaa1f49c56dcd94d60fd8f

7 years agoFix tessellation support checks in negative binding tests
Mika Isojrvi [Tue, 28 Feb 2017 00:38:50 +0000 (00:38 +0000)]
Fix tessellation support checks in negative binding tests
am: 698b728335

Change-Id: Ic18ca67f2ee63511af0334c1e14a99ec7aa2e970

7 years agoFix tessellation support checks in negative binding tests
Mika Isojärvi [Wed, 22 Feb 2017 21:25:59 +0000 (13:25 -0800)]
Fix tessellation support checks in negative binding tests

Bug: 35618877
Test: Run the tests on couple of devices supporting tessellation
Change-Id: Ieca6a28a57a278a07ff688f760eb7da807e66d49

7 years agoMerge Vulkan CTS 1.0.2.1 into AOSP
Pyry Haulos [Mon, 27 Feb 2017 22:38:56 +0000 (22:38 +0000)]
Merge Vulkan CTS 1.0.2.1 into AOSP
am: 71ddde91a1

Change-Id: I563ec933a1b8618bee02654891be7b2bfea2a9fb

7 years agoMerge Vulkan CTS 1.0.2.1 into AOSP
Pyry Haulos [Mon, 27 Feb 2017 19:26:45 +0000 (11:26 -0800)]
Merge Vulkan CTS 1.0.2.1 into AOSP

Change-Id: Ib0aaf12ec60902ebc31d00ad02291bd3d1cd7fae

7 years agoFix bug in reallocation callback validation
Pyry Haulos [Thu, 23 Feb 2017 22:11:27 +0000 (14:11 -0800)]
Fix bug in reallocation callback validation

vk::validateAllocationCallbacks() didn't correctly handle a case where
reallocate(NULL, size) returned previously seen pointer value.

VK-GL-CTS issue: 176
Components: Vulkan

Change-Id: I0822f8e4176d20d7bf296cd85f5c5223e189d250

7 years agoFix input attachment layout in renderpass tests
Igor Ostrowski [Mon, 27 Feb 2017 12:47:12 +0000 (13:47 +0100)]
Fix input attachment layout in renderpass tests

Input attachment layout was hardcoded for descriptor set update.
Added input attachment layout getter.

Affects:

dEQP-VK.renderpass.*

Components: Vulkan

VK-GL-CTS issue: 189

Change-Id: I2083c7b0cf4c68072f98d369f6c3089c6eb2b184

7 years agoFix extension support checks in negative api tests
Graeme Leese [Sat, 25 Feb 2017 22:18:25 +0000 (22:18 +0000)]
Fix extension support checks in negative api tests
am: 0297569515

Change-Id: I40dfed65aec5fd9b300e21fbdb416d3a519ac4a5

7 years agoFix extension support checks in negative api tests
Graeme Leese [Thu, 23 Feb 2017 16:56:10 +0000 (16:56 +0000)]
Fix extension support checks in negative api tests

Add checks for tessellation and geometry shader support for negative
shader storage and primitive bounding box tests.

Move all uses of cubemap array textures inside the extension checks in
the texture tests.

Bug: 29835218
Change-Id: I6051fff231285ed7d9c71015c2bb11a9fc7b909b
Signed-off-by: Pierre Couillaud <pierre@broadcom.com>
7 years agoMerge "Drop MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS to 2048"
Pyry Haulos [Fri, 24 Feb 2017 16:59:34 +0000 (16:59 +0000)]
Merge "Drop MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS to 2048"
am: eae50b9cdb

Change-Id: I37e5f993fcdafd1a2f304ec9deba53f2dc2c4fb0

7 years agoMerge "Drop MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS to 2048"
Pyry Haulos [Fri, 24 Feb 2017 16:52:34 +0000 (16:52 +0000)]
Merge "Drop MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS to 2048"

7 years agoModify tessellation_not_active to check for GL_NV_gpu_shader5
Mark Adams [Thu, 23 Feb 2017 22:27:31 +0000 (22:27 +0000)]
Modify tessellation_not_active to check for GL_NV_gpu_shader5
am: 0e7a9e61ae

Change-Id: I39d7e05e29ab408467c46929672e01b9e112da47

7 years agoDrop MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS to 2048
Pyry Haulos [Thu, 23 Feb 2017 20:50:22 +0000 (12:50 -0800)]
Drop MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS to 2048

GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS minmax has been changed to
2048 (from 4096) in OpenGL ES 3.2 spec in response to bug 12823.

Bug: 35619900
Change-Id: I59d75d23df02d339bf7094a8e73d3a24d2e785be

7 years agoModify tessellation_not_active to check for GL_NV_gpu_shader5
Mark Adams [Wed, 22 Feb 2017 22:03:36 +0000 (17:03 -0500)]
Modify tessellation_not_active to check for GL_NV_gpu_shader5

That extension permits use of GL_PATCHES for stages other than
tessellation stages. Affected test:

dEQP-GLES31.functional.debug.negative_coverage.get_error.tessellation.tessellation_not_active

Bug 35670519

7 years agoMerge "Fix whitespace issues"
Pyry Haulos [Wed, 22 Feb 2017 19:53:08 +0000 (19:53 +0000)]
Merge "Fix whitespace issues"
am: 09b0225a8a

Change-Id: Ie42bd577ea465b047bee4df2ec6d3f970bf4c267

7 years agoAdd non-seperable TCS-but-no-TES subcase and fix draw time check subcase
John Richardson [Wed, 22 Feb 2017 19:52:58 +0000 (19:52 +0000)]
Add non-seperable TCS-but-no-TES subcase and fix draw time check subcase
am: 59999de58c

Change-Id: I43199430d5a6e55c4efa6067b298a22865a5d2c1

7 years agoMerge "Fix whitespace issues"
Treehugger Robot [Wed, 22 Feb 2017 19:44:27 +0000 (19:44 +0000)]
Merge "Fix whitespace issues"

7 years agoAdd non-seperable TCS-but-no-TES subcase and fix draw time check subcase
John Richardson [Mon, 20 Feb 2017 11:26:04 +0000 (11:26 +0000)]
Add non-seperable TCS-but-no-TES subcase and fix draw time check subcase

- Add a non-separable TCS-but-no-TES (new subcase).

Section 7.3 of the OpenGL ES 3.2 specification says:

   "Linking can fail for [...] any of the following reasons:

    * program contains an object to form a tessellation evaluation
      shader [...] and [...] the program is not separable and
      contains no object to form a tessellation control shader"

Add a test to ensure the implementation does raise a link error.

- Make program separable in TES-but-no-TCS draw time check test (fix)

Since the test is trying to check for a draw time error, it should use
a separable program - otherwise we may hit a link error.

Changes made to test case:
dEQP-GLES31.functional.debug.negative_coverage.*.tessellation.single_tessellation_stage

Bug: 35354738
Change-Id: I902106864059cfbe7d718da0d0527284de04a915

7 years agoAdd GetFrameTimestamps tests
Brian Anderson [Wed, 22 Feb 2017 18:11:11 +0000 (18:11 +0000)]
Add GetFrameTimestamps tests
am: e288d40afc

Change-Id: I8429c7d4979a2cac18501f6e68cbfbdd60b659cc

7 years agoFix whitespace issues
Pyry Haulos [Wed, 22 Feb 2017 18:05:57 +0000 (10:05 -0800)]
Fix whitespace issues

Change-Id: I31cd4e4d3e113192fce0bccd20fd8fa14d182620

7 years agoAdd GetFrameTimestamps tests
Brian Anderson [Sun, 22 Jan 2017 00:03:19 +0000 (16:03 -0800)]
Add GetFrameTimestamps tests

Add tests for EGL_ANDROID_get_frame_timestamps.

Verifies:
1) Frame IDs properly identify frames.
2) The frame timestamp ordering is correct
3) The compositor timing values are reasonable.
4) All timestamps from the most recently swapped frame can
   be retrieved without additional swaps.

Test: --deqp-case=dEQP-EGL*get_frame_timestamps*
Change-Id: I393a3bc79f019951a2fddb83760b6e1d919663b6

7 years agoMerge "Fix multiple resource leaks in new srgb_texture_decode tests"
Mark Adams [Tue, 21 Feb 2017 18:58:47 +0000 (18:58 +0000)]
Merge "Fix multiple resource leaks in new srgb_texture_decode tests"
am: d4a9effab0

Change-Id: I48306394fd0d053c2a8a7f75b0bf6cadab196416