platform/upstream/VK-GL-CTS.git
8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 2 Dec 2016 23:51:17 +0000 (15:51 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: Ib54e6e75d11508c1ee4194ae90815666088c79d7

8 years agoMerge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1
Pyry Haulos [Fri, 2 Dec 2016 23:51:14 +0000 (15:51 -0800)]
Merge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1

Change-Id: I4f62b1e39978bea366e0b7e2f745b0f7a25a0f66

8 years agoMerge aosp/master into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 2 Dec 2016 23:48:21 +0000 (15:48 -0800)]
Merge aosp/master into gerrit/vulkan-cts-1.0-dev

Change-Id: Ic50054c78a4bb736f9fcfa2768968ea8bbc1bd41

8 years agoClarify --deqp-log-filename usage in README.md
Pyry Haulos [Fri, 2 Dec 2016 22:29:24 +0000 (14:29 -0800)]
Clarify --deqp-log-filename usage in README.md

Vulkan CTS issue: #525

Change-Id: Idb0f23cd13e548aaea21682ec02d89e52adee579

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 2 Dec 2016 22:26:30 +0000 (14:26 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: Ida8369e7d121c8282069fd3a70a64efb4490bddd

8 years agoFix VkPipelineLayout overwriting
Arkadiusz Sarwa [Tue, 29 Nov 2016 10:43:38 +0000 (11:43 +0100)]
Fix VkPipelineLayout overwriting

Fixes #527

Change-Id: Ia053e9ead201f62fc1310d07e7dafd76139ba173

8 years agoMerge gerrit/vulkan-cts-1.0-dev into aosp/master
Pyry Haulos [Fri, 2 Dec 2016 21:38:22 +0000 (13:38 -0800)]
Merge gerrit/vulkan-cts-1.0-dev into aosp/master

Change-Id: Ic9e43c0554d8976766507fab6916be6a037505a7

8 years agoAdd new files to Android.mk
Pyry Haulos [Fri, 2 Dec 2016 21:36:36 +0000 (13:36 -0800)]
Add new files to Android.mk

Change-Id: I75be28ac1a62e9ee3f797e8eb4adaffc75486826

8 years agoBugfix: Use PointSize in draw tests
Maciej Jesionowski [Mon, 28 Nov 2016 15:12:23 +0000 (16:12 +0100)]
Bugfix: Use PointSize in draw tests

Tests that rasterize points have to write to PointSize variable.
Also fix nonCoherentAtomSize errors from validation.

Affected tests:
- dEQP-VK.draw.basic_draw.draw.point_list.*
- dEQP-VK.draw.basic_draw.draw_indexed.point_list.*
- dEQP-VK.draw.basic_draw.draw_indirect.point_list.*
- dEQP-VK.draw.basic_draw.draw_indexed_indirect.point_list.*
- dEQP-VK.draw.instanced.draw_vk_primitive_topology_point_list
- dEQP-VK.draw.instanced.draw_indexed_vk_primitive_topology_point_list
- dEQP-VK.draw.instanced.draw_indirect_vk_primitive_topology_point_list
- dEQP-VK.draw.instanced.draw_indexed_indirect_vk_primitive_topology_point_list

Fixes #536

Change-Id: Ief9df51887babfc3765b0d11c6431765f322c634

8 years agoFix variable declaring location in SPIR-V assembly.
Lei Zhang [Wed, 30 Nov 2016 23:10:36 +0000 (18:10 -0500)]
Fix variable declaring location in SPIR-V assembly.

The spec validation rules require that all OpVariable instructions
in a function must be as the first instructions in the first block.

Change-Id: If054bd7882eaf5ffc00899fbdef9a9b71d544019

8 years agoBugfix: upload stencil data in pipeline image util
Maciej Jesionowski [Wed, 30 Nov 2016 11:37:01 +0000 (12:37 +0100)]
Bugfix: upload stencil data in pipeline image util

Fixes:
- Upload stencil data to the image with mixed DS formats
- Respect 4 byte offset alignment for formats <4 bytes
- Fix some nonCoherentAtomSize validation errors

Affected tests:
- dEQP-VK.texture.shadow.*d16_unorm
- dEQP-VK.texture.shadow.*x8_d24_unorm_pack32
- dEQP-VK.texture.shadow.*d32_sfloat
- dEQP-VK.texture.shadow.*s8_uint
- dEQP-VK.texture.shadow.*d16_unorm_s8_uint
- dEQP-VK.texture.shadow.*d24_unorm_s8_uint
- dEQP-VK.texture.shadow.*d32_sfloat_s8_uint

Issue #556

Change-Id: I56c0e7eef9c1bfc82790eb8ba6e48b95dc65f521

8 years agoAdd new tests Render To Image
Arkadiusz Sarwa [Tue, 22 Nov 2016 13:05:03 +0000 (14:05 +0100)]
Add new tests Render To Image

New tests:
- dEQP-VK.pipeline.render_to_image.*

Issue #535

Change-Id: I3854942c69d95b034cd9358cc7970f04b1c85d5b

8 years agoAdd tests for bulk object allocation failures
Maciej Jesionowski [Tue, 22 Nov 2016 11:30:45 +0000 (12:30 +0100)]
Add tests for bulk object allocation failures

New tests:
- dEQP-VK.api.object_management.alloc_callback_fail_multiple.*

Issue #532

Change-Id: I1a8050c8000abf083435910e2e65c6ee045364af

8 years agoAdd test: sparse buffer usage
Maciej Jesionowski [Mon, 7 Nov 2016 15:18:58 +0000 (16:18 +0100)]
Add test: sparse buffer usage

Test UBO, SSBO, VB, IB, InB with sparse buffers using:
- sparse binding
- sparse residency
- sparse aliasing
- residencyNonResidentStrict (with UBOs)

New tests:
- dEQP-VK.sparse_resources.buffer.ubo.*
- dEQP-VK.sparse_resources.buffer.vertex_buffer.*
- dEQP-VK.sparse_resources.buffer.index_buffer.*
- dEQP-VK.sparse_resources.buffer.indirect_buffer.*

Renamed tests:
in dEQP-VK.sparse_resources:
- .buffer_sparse_binding.* -> .buffer.transfer.sparse_binding.*
- .buffer_sparse_residency.* -> .buffer.ssbo.sparse_residency.*
- .buffer_sparse_memory_aliasing.* -> .buffer.ssbo.sparse_binding_aliased.*

Issue: #401

Change-Id: Iba583a16eba0b688849175813a86d44c9b038f0d

8 years agoExtend copyImage tests with depth/stencil formats
Szilard Ledan [Tue, 26 Jul 2016 12:43:02 +0000 (14:43 +0200)]
Extend copyImage tests with depth/stencil formats

Add tests with all depth/stencil formats into image to image copies cases.
It was needed to fix the 'uploadImage' and 'readImage' functions, because
the copying combined dept/stencil data between buffers and images are not
supprted at the same time.

Update and fix the generation of expected image.

Update the mustpass lists.

Fix conflict after rebase.

This affects:
 * dEQP-VK.api.copy_and_blit.image_to_image.all_formats.depth_stencil_*
 * dEQP-VK.api.copy_and_blit.blit_image.all_formats.scaling_partial_d16_unorm_d16_unorm_nearest
 * dEQP-VK.api.copy_and_blit.blit_image.all_formats.scaling_partial_x8_d24_unorm_pack32_x8_d24_unorm_pack32_nearest
 * dEQP-VK.api.copy_and_blit.blit_image.all_formats.scaling_partial_d32_sfloat_d32_sfloat_nearest
 * dEQP-VK.api.copy_and_blit.blit_image.all_formats.scaling_partial_s8_uint_s8_uint_nearest
 * dEQP-VK.api.copy_and_blit.blit_image.all_formats.scaling_partial_d16_unorm_s8_uint_d16_unorm_s8_uint_nearest
 * dEQP-VK.api.copy_and_blit.blit_image.all_formats.scaling_partial_d24_unorm_s8_uint_d24_unorm_s8_uint_nearest
 * dEQP-VK.api.copy_and_blit.blit_image.all_formats.scaling_partial_d32_sfloat_s8_uint_d32_sfloat_s8_uint_nearest

Fixes #488

Change-Id: I29bdaf1d87d7bdba112fd55526f8e661865baa6e

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 2 Dec 2016 16:42:53 +0000 (08:42 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I9afe7efd004ee04a7edd465457e5376b03e0abc0

8 years agoFix post-copy barrier in readImageAspect()
Pyry Haulos [Fri, 2 Dec 2016 16:34:43 +0000 (08:34 -0800)]
Fix post-copy barrier in readImageAspect()

 * Barrier was using TOP_OF_PIPE_BIT for flushing buffer contents for
host access. HOST_BIT must be used instead.

 * For combined depth stencil formats image was left in wrong image layout
for later stencil aspect copy.

Affects combined DS format cases in:

dEQP-VK.api.copy_and_blit.blit_image.all_formats.*

Change-Id: I80263efbc12da21c8205768687725416419e923e

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 2 Dec 2016 00:33:32 +0000 (16:33 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Non-trivial merge of 0b0c5dba7daed6439ec6352aacf3cd216d1c1dd5

Change-Id: I1fa72e1814387b05b935cd781126880e603c91b4

8 years agoDo not generate constructor utils if API creates multiple objects
Pyry Haulos [Thu, 1 Dec 2016 23:23:12 +0000 (15:23 -0800)]
Do not generate constructor utils if API creates multiple objects

See #541

Change-Id: I1aa9ddae3bb758a70f6a72d1eb31e58c524ca9f4

8 years agoFix combined depth stencil handling in dEQP-VK.api.copy_and_blit
Pyry Haulos [Tue, 25 Oct 2016 08:41:48 +0000 (17:41 +0900)]
Fix combined depth stencil handling in dEQP-VK.api.copy_and_blit

The existing code had several bugs related to handling of combined DS
formats that manifested on implementations that support blitting of
said formats.

vk::isSupportedByFramework(VkFormat) utility function is added for
checking whether format is mappable to tcu::TextureFormat. This query
is used to filter out test cases that will always result in InternalError,
namely all cases that attempted to exercise formats with 64-bit channels.

Vulkan null driver is updated to advertise
VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT to allow easier testing.

Affects:

dEQP-VK.api.copy_and_blit.*

See #488
See #515

Change-Id: Ic03c523aea6a4bc9115568ec486200c53ec37d80

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Thu, 1 Dec 2016 22:23:53 +0000 (14:23 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I8723ff8e2442c4311dad5b9c305d5def12d3a4f0

8 years agoMerge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1
Pyry Haulos [Thu, 1 Dec 2016 22:23:51 +0000 (14:23 -0800)]
Merge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1

Change-Id: I1881729f313bd8fbee7dcc2d305ac89e7aaf2761

8 years agoIncrease blit source to avoid extreme blit scaling
Oivind Boge [Tue, 22 Nov 2016 13:21:00 +0000 (14:21 +0100)]
Increase blit source to avoid extreme blit scaling

Fixes #548

Change-Id: Ied146b91dc748f9efe41b7b64d11c5da870e5ac0

8 years agoImprove coverage of dEQP-VK.pipeline.image test group
Dominik Witczak [Tue, 15 Nov 2016 08:51:05 +0000 (09:51 +0100)]
Improve coverage of dEQP-VK.pipeline.image test group

Change-Id: I711edd83f8c75e980d6e979a56810f67bbe2e204

8 years agoAdd test: image views with VK_REMAINING_* levels/layers
Maciej Jesionowski [Thu, 13 Oct 2016 14:18:07 +0000 (16:18 +0200)]
Add test: image views with VK_REMAINING_* levels/layers

Test image view subresource range with VK_REMAINING_MIP_LEVELS and VK_REMAINING_ARRAY_LAYERS.

New tests:
- dEQP-VK.pipeline.image_view.view_type.*.subresource_range.lod_base_mip_level_remaining_levels
- dEQP-VK.pipeline.image_view.view_type.*.subresource_range.base_array_layer_remaining_layers
- dEQP-VK.pipeline.image_view.view_type.*.subresource_range.lod_base_mip_level_base_array_layer_remaining_levels_and_layers

Fixes #504

Change-Id: I9b78c8ba345b45231d7a931de9effdbde8aa0fc2

8 years agoAdd granularity test cases.
Gabor Abraham [Mon, 10 Oct 2016 15:12:19 +0000 (17:12 +0200)]
Add granularity test cases.

New test:
- dEQP-VK.api.granularity.*

Change-Id: Ib3b045a0199aeb7195dd17a603c089834c64b904

8 years agoCheck in vulkan.h for generating framework code
Pyry Haulos [Wed, 30 Nov 2016 22:27:07 +0000 (14:27 -0800)]
Check in vulkan.h for generating framework code

Having copy of vulkan.h checked in makes it easier to re-generate
framework when needed.

vulkan.h is checked in as vulkan.h.in to discourage anyone from ever
attempting to include it directly in test code.

As part of this framework is updated to vulkan.h version 1.0.35.

Change-Id: I6e202a01d3633fe19855cf62afbf16e2b0ea67ea

8 years agoMove Vulkan CTS scripts to external/vulkancts/scripts
Pyry Haulos [Wed, 30 Nov 2016 22:23:57 +0000 (14:23 -0800)]
Move Vulkan CTS scripts to external/vulkancts/scripts

Change-Id: I928d848225d08f03d93fd700a80d36ac3fbc3ada

8 years agodEQP-VK.sparse_resources.shader_intrinsics fixes
Dominik Witczak [Thu, 17 Nov 2016 15:08:44 +0000 (16:08 +0100)]
dEQP-VK.sparse_resources.shader_intrinsics fixes

Some of the tests in the group form invalid SPIR-V code,
which tries to pass two arguments to the OpFAdd instruction,
whose number of components differs.

This change fixes this.

Khronos issue: #545

Change-Id: I3cad57d393f986cfb5b9bce85f758dcca3686d8a

8 years agoAdjust {Max,Min}Coords for {proj}offset texture tests with 3D texture targets
Iago Toral Quiroga [Tue, 22 Nov 2016 10:55:44 +0000 (06:55 -0400)]
Adjust {Max,Min}Coords for {proj}offset texture tests with 3D texture targets

As it is now, the computed lod ends up being ~0.962, which is very close to the
threshold that separates selection of the first two mipmap levels. At least on
Intel GPUs this leads to test failures because the miplevel selected by CTS to
produce the expected result does not match the one actually selected by the
hardware.

This patch alters the coordinates used with these tests so the comuted lod
isn't too close to a mipmap level threshold.

Affects:
dEQP-VK.glsl.texture_functions.texture{proj}offset.sampler3d*

Khronos issue: #552

Change-Id: I6ec766133905d2085cd795eea8aaf0b04e830278

8 years agoFixes incorrect usage of textureSamples().
Dominik Witczak [Fri, 18 Nov 2016 12:13:12 +0000 (13:13 +0100)]
Fixes incorrect usage of textureSamples().

The function should not be called against single-sample
images. See #538 for more details.

Tests affected: dEQP-VK.glsl.texture_functions.query.texturesamples.isampler*ms*

Change-Id: I7ce507c657b33cbcf99c9e3202fdafaee5ea1577

8 years agoFramework: Add assert to position deviation image compare
Maciej Jesionowski [Tue, 29 Nov 2016 12:38:22 +0000 (13:38 +0100)]
Framework: Add assert to position deviation image compare

When using position deviation tolerance it's easy to forget
about the depth and effectively skip the check for the whole
image.

Change-Id: Ide873be57ba19e7e9e45606d27aae403f9c131ec

8 years agoShaderRenderCaseInstance::uploadSparseImage() fix
Dominik Witczak [Thu, 17 Nov 2016 15:13:32 +0000 (16:13 +0100)]
ShaderRenderCaseInstance::uploadSparseImage() fix

The function is used by various test cases to fill sparse images
with actual content. What they are unaware of is that the func
does not assign memory backing to odd tiles.

This change fixes this by removing the malicious if() block.
The change affects dEQP-VK.glsl.*sparse* tests

Change-Id: Ia2b157181d5fdba2d4fa0bcaf37dc02c4a6fe320

8 years agoFix memory management, image layout issues in uploadImageSparse()
Dominik Witczak [Thu, 17 Nov 2016 12:10:19 +0000 (13:10 +0100)]
Fix memory management, image layout issues in uploadImageSparse()

Fixes an issue where ShaderRenderCaseInstance::uploadSparseImage()
would first configure sparse image bindings and then deallocate
the memory objects, prior to actually sampling the image.

Fixes an issue where the sparse image, after having been filled with
contents, would first be transitioned to SHADER_READ_ONLY_OPTIMAL
layout, and then used in a DS which was expecting it to be in
GENERLA layout.

Finally, the patch addresses a problem, where the function would not
correctly recognize the VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT,
as reported by the running driver.

The change affects dEQP-VK.glsl.*sparse* tests

Khronos issue: #543

Change-Id: Ie5717841fe0ef9c0672b5075380ff96bba9855b9

8 years agoDo not remove old SPIR-V binaries before running vk-build-programs
Pyry Haulos [Fri, 18 Nov 2016 18:46:55 +0000 (10:46 -0800)]
Do not remove old SPIR-V binaries before running vk-build-programs

vk-build-programs can update pre-built binary directory in a smarter way
when there are existing binaries.

Test: Run external/vulkancts/build_spirv_binaries.py
Change-Id: I2a6afdc2855b7da1baf02682e8214a73a35cebda

8 years agoMerge aosp/upstream-vulkan-cts-1.0-dev into aosp/master
Pyry Haulos [Fri, 18 Nov 2016 18:40:54 +0000 (10:40 -0800)]
Merge aosp/upstream-vulkan-cts-1.0-dev into aosp/master

Change-Id: I656d82525b18e936b6c4a78dd73cbb9ef65a06a4

8 years agoAdd vktTextureFilteringAnisotropyTests.cpp to Android.mk
Pyry Haulos [Fri, 18 Nov 2016 18:40:10 +0000 (10:40 -0800)]
Add vktTextureFilteringAnisotropyTests.cpp to Android.mk

8 years agoAdd anisotropic filtering tests
Arkadiusz Sarwa [Wed, 19 Oct 2016 13:43:19 +0000 (15:43 +0200)]
Add anisotropic filtering tests

New tests:
- dEQP-VK.texture.filtering_anisotropy.basic.*
- dEQP-VK.texture.filtering_anisotropy.mipmap.*

Fixes #512

Change-Id: I96649846503e7ab349c774ad934f654388b01d0a

8 years agoExtends rasterization culling tests with polygonModes
Zoltan Janos Szabo [Wed, 26 Oct 2016 13:51:22 +0000 (15:51 +0200)]
Extends rasterization culling tests with polygonModes

Fixes #523

Change-Id: I2665e999f5ecb6bacd0d670b88e037bfbb0d5b2e

8 years agoAdd test: UBO out of order block member offsets
Maciej Jesionowski [Tue, 11 Oct 2016 09:35:24 +0000 (11:35 +0200)]
Add test: UBO out of order block member offsets

New tests:
- dEQP-VK.ubo.random.all_out_of_order_offsets.*

Modified tests:
- dEQP-VK.ubo.* - changed GLSL version from '310 es' to '450'
- dEQP-VK.ubo.random.all_* - include arrays of arrays

Version change is required to support 'offset' layout in GLSL.

Fixes #490

Change-Id: I0c07dcebd85874d64146e48db8fefe8ad9f88877

8 years agoAdd test: validate memoryTypeBits for buffers/images
Maciej Jesionowski [Wed, 5 Oct 2016 14:28:38 +0000 (16:28 +0200)]
Add test: validate memoryTypeBits for buffers/images

Query VkMemoryRequirements for various buffer and image configurations
and check:
- memoryTypeBits and alignment
- spec-imposed guarantees

New test:
- dEQP-VK.memory.requirements.*

Fixes #492

Change-Id: I3901cc4aa5501539404bdd900c5a1b4d3a62befb

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 18 Nov 2016 17:48:25 +0000 (09:48 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I0800a091d1025c0ff6efc7f22f901285e198fd38

8 years agoMerge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1
Pyry Haulos [Fri, 18 Nov 2016 17:48:22 +0000 (09:48 -0800)]
Merge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1

Change-Id: Ib79da8c670b790d009cdf977039ece08c4e14320

8 years agoBugfix: use per-subpass pipeline in MS image tests
Maciej Jesionowski [Wed, 16 Nov 2016 14:21:28 +0000 (15:21 +0100)]
Bugfix: use per-subpass pipeline in MS image tests

The tests created a single graphics pipeline with a subpass index 0
and incorrectly reused it across different subpasses within the
same renderpass.

Affected tests:
- dEQP-VK.pipeline.multisample.sampled_image.*
- dEQP-VK.pipeline.multisample.storage_image.*

Change-Id: I71463748f10f7bb8cf194622b07ce44a855d823a

8 years agoUse highp in linkage.varying.rules.differing_name_*
Pyry Haulos [Thu, 20 Oct 2016 20:07:45 +0000 (13:07 -0700)]
Use highp in linkage.varying.rules.differing_name_*

This resolves RelaxedPrecision mismatches

Affects:

dEQP-VK.glsl.linkage.varying.rules.differing_name_1
dEQP-VK.glsl.linkage.varying.rules.differing_name_2

See #518

Change-Id: I7a152138e2d6ff2092c04d4226f7d00c8a40f4e0

8 years agoFix RelaxedPrecision mismatch in shader return statement tests
Pyry Haulos [Thu, 20 Oct 2016 20:17:33 +0000 (13:17 -0700)]
Fix RelaxedPrecision mismatch in shader return statement tests

Affects:

dEQP-VK.glsl.return.single_return_vertex
dEQP-VK.glsl.return.double_return_vertex
dEQP-VK.glsl.return.last_statement_in_main_vertex
dEQP-VK.glsl.return.return_in_infinite_loop_vertex

See #518

Change-Id: I981b7623f7dc2eed2e438092226f3fa3bde44d58

8 years agoUse highp by default in ShaderLibrary-based tests
Pyry Haulos [Thu, 20 Oct 2016 20:07:45 +0000 (13:07 -0700)]
Use highp by default in ShaderLibrary-based tests

This resolves numerous RelaxedPrecision mismatches

Affects:

dEQP-VK.glsl.arrays.*
dEQP-VK.glsl.conditionals.*
dEQP-VK.glsl.constants.*
dEQP-VK.glsl.conversions.*
dEQP-VK.glsl.functions.*
dEQP-VK.glsl.linkage.*
dEQP-VK.glsl.scoping.*
dEQP-VK.glsl.swizzles.*

See #518

Change-Id: I7b79f10c6dbdd5ae8da31359b680ac52ce2ad28c

8 years agoFix RelaxedPrecision mismatch in binding_model tests
Pyry Haulos [Thu, 20 Oct 2016 20:06:49 +0000 (13:06 -0700)]
Fix RelaxedPrecision mismatch in binding_model tests

Affects: dEQP-VK.binding_model.*

See #518

Change-Id: Iccda14ae17c7852c5283547e01573907f2eef18a

8 years agoFix race condition between query pool reset and accessing query results
Slawomir Cygan [Mon, 14 Nov 2016 16:57:31 +0000 (17:57 +0100)]
Fix race condition between query pool reset and accessing query results

Affects tests:
dEQP-VK.query_pool.occlusion_query.get_results*(wait_query|wait_none)*

These tests access query pool results on host, without any synchronization
with command buffer which performs the query - they either use
VK_QUERY_RESULT_WAIT_BIT or allow for incomplete results to be captured.

This may have a race condition, mentioned by spec:

"""
Applications must take care to ensure that use of the
VK_QUERY_RESULT_WAIT_BIT bit has the desired effect. For example, if
a query has been used previously and a command buffer records the
commands vkCmdResetQueryPool, vkCmdBeginQuery, and vkCmdEndQuery for
that query, then the query will remain in the available state until the
 vkCmdResetQueryPool command executes on a queue.
"""

In affected tests, this change moves vkCmdResetQueryPool to separate
command buffer that is sumitted and completed before query is used on
device & host.

Additionally code handling RESULTS_MODE_COPY mode is refactored to use
new haveSeparateCopyCmdBuf() function instead of tons of flags and conditions.

Change-Id: Id4a538b912030f2a86b09593fecaae37f1819a71

8 years agoMerge "Fix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA." into marshmal...
Tina Zhou [Thu, 17 Nov 2016 17:17:43 +0000 (17:17 +0000)]
Merge "Fix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA." into marshmallow-cts-dev am: a5af1b076f
am: c2c27aa562

Change-Id: I92de6f7a0cd6b064f8d0391fac2f70b464acd8d4

8 years agoFix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA. am: ea5589c748
Kenneth Graunke [Thu, 17 Nov 2016 17:17:34 +0000 (17:17 +0000)]
Fix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA. am: ea5589c748
am: ab691d3f7e

Change-Id: Ic377ad147e7a774685c6dcc3190f8f3e95f45049

8 years agoMerge "Fix internal format/type for 3D + depth/stencil negative API tests." into...
Tina Zhou [Thu, 17 Nov 2016 17:17:24 +0000 (17:17 +0000)]
Merge "Fix internal format/type for 3D + depth/stencil negative API tests." into marshmallow-cts-dev am: d962b86909
am: 080d0d5005

Change-Id: I52ff978738ebe738d3d705c4a321a31b4786fa58

8 years agoFix internal format/type for 3D + depth/stencil negative API tests. am: d2f3b468db
Kenneth Graunke [Thu, 17 Nov 2016 17:17:10 +0000 (17:17 +0000)]
Fix internal format/type for 3D + depth/stencil negative API tests. am: d2f3b468db
am: f5414b15bb

Change-Id: I36fd5090772f6881a14135edcaf9c1ae8dab22fe

8 years agoMerge "Fix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA." into marshmal...
Tina Zhou [Thu, 17 Nov 2016 17:10:28 +0000 (17:10 +0000)]
Merge "Fix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA." into marshmallow-cts-dev
am: a5af1b076f

Change-Id: I01c65d693d7ad5befe9244cb0d24814750a80bd2

8 years agoFix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA.
Kenneth Graunke [Thu, 17 Nov 2016 17:10:28 +0000 (17:10 +0000)]
Fix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA.
am: ea5589c748

Change-Id: I7358276f100608371da5b44ebc8e102a54706197

8 years agoMerge "Fix internal format/type for 3D + depth/stencil negative API tests." into...
Tina Zhou [Thu, 17 Nov 2016 17:10:12 +0000 (17:10 +0000)]
Merge "Fix internal format/type for 3D + depth/stencil negative API tests." into marshmallow-cts-dev
am: d962b86909

Change-Id: I6a82d71f2fed9f848a953ae21c30079bacb07052

8 years agoFix internal format/type for 3D + depth/stencil negative API tests.
Kenneth Graunke [Thu, 17 Nov 2016 17:10:05 +0000 (17:10 +0000)]
Fix internal format/type for 3D + depth/stencil negative API tests.
am: d2f3b468db

Change-Id: Id43b369d67e04cf3a6d6b5b4e3303f02c7a35b87

8 years agoMerge "Fix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA." into marshmal...
Tina Zhou [Thu, 17 Nov 2016 17:03:36 +0000 (17:03 +0000)]
Merge "Fix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA." into marshmallow-cts-dev

8 years agoMerge "Fix internal format/type for 3D + depth/stencil negative API tests." into...
Tina Zhou [Thu, 17 Nov 2016 17:02:44 +0000 (17:02 +0000)]
Merge "Fix internal format/type for 3D + depth/stencil negative API tests." into marshmallow-cts-dev

8 years agoUpdate SPIRV-Headers
Maciej Jesionowski [Thu, 17 Nov 2016 09:44:36 +0000 (10:44 +0100)]
Update SPIRV-Headers

Add constants required for VK_KHR_shader_draw_parameters

Change-Id: I3cbf7cfa68714c47c205be019ece7f1218a66e00

8 years agoMerge "Add the support to device connection via TCP/IP" into marshmallow-cts-dev...
Tina Zhou [Thu, 17 Nov 2016 00:51:28 +0000 (00:51 +0000)]
Merge "Add the support to device connection via TCP/IP" into marshmallow-cts-dev am: 6cea9dbc62
am: 87d5ca1e30

Change-Id: Idcc451614d0eda5e48c3ef83de2d5f40f4dba72a

8 years agoAdd the support to device connection via TCP/IP am: 4ccc9fd56c
Chun-Ta Lin [Thu, 17 Nov 2016 00:51:19 +0000 (00:51 +0000)]
Add the support to device connection via TCP/IP am: 4ccc9fd56c
am: 7e2d9f83ff

Change-Id: If4a219377c77d0c121f58a82779da7cc2a4459f8

8 years agoMerge "Add the support to device connection via TCP/IP" into marshmallow-cts-dev
Tina Zhou [Thu, 17 Nov 2016 00:43:40 +0000 (00:43 +0000)]
Merge "Add the support to device connection via TCP/IP" into marshmallow-cts-dev
am: 6cea9dbc62

Change-Id: I3525d88dbc3e04b702cef54d1759f406222047b2

8 years agoAdd the support to device connection via TCP/IP
Chun-Ta Lin [Thu, 17 Nov 2016 00:43:39 +0000 (00:43 +0000)]
Add the support to device connection via TCP/IP
am: 4ccc9fd56c

Change-Id: I16ab5038ff64448458aaafc7bda43128e0941e4e

8 years agoMerge "Add the support to device connection via TCP/IP" into marshmallow-cts-dev
Tina Zhou [Thu, 17 Nov 2016 00:38:13 +0000 (00:38 +0000)]
Merge "Add the support to device connection via TCP/IP" into marshmallow-cts-dev

8 years agoFix typo in check_license.py error message
Pyry Haulos [Wed, 16 Nov 2016 18:17:26 +0000 (10:17 -0800)]
Fix typo in check_license.py error message

Change-Id: Id1d0ec96e8b81cb434f7b39dcde1ba087418fc2e

8 years agoUpdate to latest SPIRV-Tools
David Neto [Wed, 16 Nov 2016 16:25:58 +0000 (11:25 -0500)]
Update to latest SPIRV-Tools

Requested for use by https://gerrit.khronos.org/#/c/279/

Test: Android build; also "vk-build-programs -v" under Linux

Change-Id: Ic207f64f861c9e3824f77f09b301b3855351c7c4

8 years agoAdd getInstanceExtensions() to Context
Arkadiusz Sarwa [Tue, 15 Nov 2016 12:38:12 +0000 (13:38 +0100)]
Add getInstanceExtensions() to Context

Change-Id: I7d442578c3dbea007bbf77bdeac0177fde9b87cd

8 years agoAdd runtime to CtsDeqpTestCases
Aaron Holden [Wed, 16 Nov 2016 00:12:10 +0000 (00:12 +0000)]
Add runtime to CtsDeqpTestCases
am: bf0076a424

Change-Id: I6e2e3cef5581db27c34538bc3d5292d79b0d3881

8 years agoMerge "Revert "Update SPIR-V dependencies"" into vulkan-cts-1.0-dev
Pyry Haulos [Tue, 15 Nov 2016 22:09:47 +0000 (17:09 -0500)]
Merge "Revert "Update SPIR-V dependencies"" into vulkan-cts-1.0-dev

8 years agoRevert "Update SPIR-V dependencies"
Pyry Haulos [Tue, 15 Nov 2016 22:09:41 +0000 (18:09 -0400)]
Revert "Update SPIR-V dependencies"

Reverted since latest SPIRV-Tools breaks Android build.

This reverts commit 53331f8a91b6ab5f6ea57707620c92435bc06dde.

Change-Id: Ib4de2ecb13a51c5ce3c664b85cf0004c7e4df403

8 years agoAdd runtime to CtsDeqpTestCases
Aaron Holden [Tue, 15 Nov 2016 01:47:00 +0000 (17:47 -0800)]
Add runtime to CtsDeqpTestCases

Test: cts-tradefed run cts -m CtsDeqpTestCases
Bug:32843094
Change-Id: I6ea71f0d6658b1f06354374ece54743609472345

8 years agoFix warnings reported by VS 2015
Pyry Haulos [Mon, 14 Nov 2016 17:05:16 +0000 (09:05 -0800)]
Fix warnings reported by VS 2015

Change-Id: Ifc12df928d6d2f939d01c39a55a48bf861c51be7

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Mon, 14 Nov 2016 16:56:12 +0000 (08:56 -0800)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I4a9d3481a1f3c3d4975fb7b8c1fad0262beea8b0

8 years agoMerge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1
Pyry Haulos [Mon, 14 Nov 2016 16:56:10 +0000 (08:56 -0800)]
Merge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1

Change-Id: I620cf36a16740b6697c9d46b0cb7b7d013bd529b

8 years agoUpdate to latest libpng release
Pyry Haulos [Mon, 14 Nov 2016 16:51:13 +0000 (08:51 -0800)]
Update to latest libpng release

Previously used release 1.6.17 has been deprecated due to security bugs.

Change-Id: Ie5b749eea96e34f88a6833fbfab40c59cd3d162c

8 years agoMove MatrixLoadFlags from vktTestCase.hpp
Pyry Haulos [Mon, 14 Nov 2016 14:44:11 +0000 (06:44 -0800)]
Move MatrixLoadFlags from vktTestCase.hpp

vktTestCase.hpp is wildly inappropriate place for such data type. Both
UBO and SSBO tests use it currently and it is now duplicated to both of
them. UBO and SSBO tests do contain a quite bit of duplication already
(describing blocks, layout computation, etc.) and dedup should be done
as a part of bigger refactoring.

Change-Id: I5d4b8a947522192ba0dd4e807e04c940c1770eef

8 years agoUse conformant main() signature for CTS suite
Michael Chock [Sat, 12 Nov 2016 00:11:31 +0000 (16:11 -0800)]
Use conformant main() signature for CTS suite

C++ requires compilers to accept at least two signatures (3.6.1 in the
2014 and 2017 working drafts):

- a function of () returning int and
- a function of (int, pointer to pointer to char) returning int

There is no guarantee that a compiler will accept variations of argv
that use const. Use the second required form.

See #534.

Change-Id: I212b00e82b927fe25c5b2b20134db472c08e4c17

8 years agoMerge aosp/upstream-vulkan-cts-1.0-dev into aosp/master
Pyry Haulos [Fri, 11 Nov 2016 22:53:54 +0000 (14:53 -0800)]
Merge aosp/upstream-vulkan-cts-1.0-dev into aosp/master

Change-Id: I68f026a0c2f69918f03b14e479ad5473db08a7a0

8 years agoUpdate SPIR-V dependencies
Maciej Jesionowski [Wed, 9 Nov 2016 16:42:32 +0000 (17:42 +0100)]
Update SPIR-V dependencies

This will add support for SPV_KHR_shader_draw_parameters.

Change-Id: I172be89240c37e46e52dc005c5ae310e990672b8

8 years agoAdd Vulkan WSI support to the Wayland platform
Jason Ekstrand [Wed, 9 Nov 2016 17:38:22 +0000 (09:38 -0800)]
Add Vulkan WSI support to the Wayland platform

Change-Id: I572e30710202cd53d503036310c379f2fd5468a7

8 years agoEnable multithreading in glslang
Pyry Haulos [Fri, 11 Nov 2016 00:19:52 +0000 (16:19 -0800)]
Enable multithreading in glslang

Glslang is internally synchronized and able to support multithreaded
compilation as long as global lock is implemented.

This change provides 12x speedup in building SPIR-V binaries on a
40-core machine.

Change-Id: I27b8ce22db980c3657ac3ba67b7cec1543859d0d

8 years agoReuse binary indices when rebuilding SPIR-V binaries
Pyry Haulos [Fri, 28 Oct 2016 22:35:30 +0000 (07:35 +0900)]
Reuse binary indices when rebuilding SPIR-V binaries

When prebuilt SPIR-V binaries are stored in a version control system,
we want to minimize churn (rewritten files) when updating binaries in
response to test or compiler changes.

This change makes vk::BinaryRegistyWriter significantly smarter when
updating binary registry. Old binary files (and thus indices) are
reused if possible. Any newly unused binaries are removed, and new
indices are allocated only for binaries that haven't been present
before.

Change-Id: Ieac61ff32821e4381480dd56ff27dbcdd44e50cb

8 years agoMerge aosp/upstream-vulkan-cts-1.0-dev into aosp/master
Pyry Haulos [Fri, 11 Nov 2016 16:43:37 +0000 (08:43 -0800)]
Merge aosp/upstream-vulkan-cts-1.0-dev into aosp/master

Change-Id: I1bf942ca0cb3f4b92c522d60aed6b49a78ec1354

8 years agoAdd new files to Android.mk
Pyry Haulos [Fri, 11 Nov 2016 16:42:38 +0000 (08:42 -0800)]
Add new files to Android.mk

Change-Id: I68305d2ac6cc1f79bcb49ad9ee7611038bfbf634

8 years agoAdd test: queue bind sparse api
Maciej Jesionowski [Mon, 17 Oct 2016 15:32:50 +0000 (17:32 +0200)]
Add test: queue bind sparse api

Test vkQueueBindSparse with wait and signal semaphores,
zero bindInfos, etc.

New test:
- dEQP-VK.sparse_resources.queue_bind.*

See issue #401

Change-Id: If2201095cb9508bf9fa79f3c57e7de5a7dd03616

8 years agoRefactor sparse resources module
Maciej Jesionowski [Mon, 17 Oct 2016 15:30:33 +0000 (17:30 +0200)]
Refactor sparse resources module

Get rid of unused functions and custom classes where common
framework-provided utilities suffice.

Affected tests:
- dEQP-VK.sparse_resources.shader_intrinsics.*_sparse_sample_explicit_lod.*
- dEQP-VK.sparse_resources.shader_intrinsics.*_sparse_sample_implicit_lod.*
- dEQP-VK.sparse_resources.shader_intrinsics.*_sparse_gather.*
- dEQP-VK.sparse_resources.* (only code changed)

Sparse sample tests now use a different graphics pipeline, but their
behavior should remain unchanged.

Change-Id: Ib3b5158f142630360c1b5e176f16b2f604de8dfe