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

8 years agoAdd reset command pool reuseing test
Arkadiusz Sarwa [Mon, 17 Oct 2016 13:27:01 +0000 (15:27 +0200)]
Add reset command pool reuseing test

New test:
- dEQP-VK.api.command_buffers.pool_reset_reuse

Fixes #453

Change-Id: If21e5c833880530fc0a1f9e19e2c579d0b288ef9

8 years agoAdd geometry shader tests
Arkadiusz Sarwa [Tue, 27 Sep 2016 09:10:05 +0000 (11:10 +0200)]
Add geometry shader tests

New tests:
- dEQP-VK.geometry.*

Fixes #63

Change-Id: If1da0ce5e171ca6cb7396421f2fb8ffbcc55ce88

8 years agoAdd license check to scripts/src_util/check_all.py
Pyry Haulos [Fri, 11 Nov 2016 15:57:59 +0000 (07:57 -0800)]
Add license check to scripts/src_util/check_all.py

Change-Id: Id63ff1e351d01bc72253f298e373bfba963e2735

8 years agoFix license in a few files
Pyry Haulos [Fri, 11 Nov 2016 15:57:37 +0000 (07:57 -0800)]
Fix license in a few files

Change-Id: Ie26dfa6e9d151b71ddba7e00d05759532632b408

8 years agoUse VK_REMAINING_MIP_LEVELS in image clearing tests
Maciej Jesionowski [Mon, 26 Sep 2016 10:47:54 +0000 (12:47 +0200)]
Use VK_REMAINING_MIP_LEVELS in image clearing tests

Modified tests:
- dEQP-VK.api.image_clearing.clear_color_image.*
- dEQP-VK.api.image_clearing.* (refactor)

Tests were refactored to use images with more than one mip map,
but multiple mip maps were only added to clear_color_image tests.

Image is now cleared with two distinct colors, one for explicit
range of mip maps, the other for VK_REMAINING_MIP_LEVELS.

Fixes #459

Change-Id: Ia02289bf81faebd47c2e4c86a6bd8a4d06ddf34d

8 years agoUse all KHR and EXT extensions by default
Arkadiusz Sarwa [Fri, 4 Nov 2016 12:22:30 +0000 (13:22 +0100)]
Use all KHR and EXT extensions by default

Change-Id: If6111170be15db7a90692a730bffdfb7c5382be8

8 years agoFix wrong barriers in D+S texture upload routines in vkt::pipeline tests
Slawomir Cygan [Wed, 2 Nov 2016 17:16:30 +0000 (18:16 +0100)]
Fix wrong barriers in D+S texture upload routines in vkt::pipeline tests

Affects tests:
dEQP-VK.texture.shadow.2d.nearest.less_or_equal_d24_unorm_s8_uint
dEQP-VK.texture.shadow.2d.nearest.less_or_equal_d32_sfloat_s8_uint
...and possibly other dEQP-VK.texture.shadow.*d.*.*d*s8_uint

In case of D+S textures, there was an invalid aspect mask used in
barriers before and after the copy to image operation in
vkt::pipeline::uploadTestTextureInternal.

Because the upload of textures was split into D-only and S-only phases,
the barriers were operating separately on D and S aspects of DS texture,
what is forbidden by spec:

"""
If image has a depth/stencil format with both depth and stencil
components, then aspectMask member of subresourceRange must include
both VK_IMAGE_ASPECT_DEPTH_BIT and VK_IMAGE_ASPECT_STENCIL_BIT".
"""

This change batches D & S uploads together (uploadTestTextureInternal is
called once), so full DS aspect mask is used in case of D+S textures.

Change-Id: Ib9d8b2a0156ffc8437edc0d5ed76c54116dd736b

8 years agoFix fetching geometry in dEQP-VK.renderpass test
Slawomir Cygan [Thu, 27 Oct 2016 18:11:15 +0000 (20:11 +0200)]
Fix fetching geometry in dEQP-VK.renderpass test

The renderpass test uses 48 byte vertex buffer for 6x 2-element float
values. At the same time pipeline tries to fetch 4-element atributes,
so the last vertex from buffer is outside of bounds (and may be zeroed).

Affected: All dEQP-VK.renderpass* that have the render geoemtry visible
in tested attachments.

Change-Id: If58e18c4df0ea053aa0a766b2bab381a0648326f

8 years agoFix GLSL precision in dEQP-VK.memory.pipeline_barrier.*storage_buffer
Slawomir Cygan [Thu, 27 Oct 2016 16:37:24 +0000 (18:37 +0200)]
Fix GLSL precision in dEQP-VK.memory.pipeline_barrier.*storage_buffer

The GLSL global precision qualifier in many shaders in this test was malformed
 - it essentially did not change any default precision.

Additionally *storage_buffer.65536 cases require higp integer precision in
 storage_buffer fragment shaders - otherwise the buffer indexing can wrap.

Change-Id: Ic5e965b8e418b1c68bee3a058a771d2b894c0f63

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Tue, 25 Oct 2016 05:36:23 +0000 (22:36 -0700)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I766de7d6d392d4a2503caae6e321836fde09c804

8 years agodEQP-VK.api.image_clearing: Use the correct aspects for depth/stencil attachments
Jason Ekstrand [Sat, 22 Oct 2016 16:16:55 +0000 (09:16 -0700)]
dEQP-VK.api.image_clearing: Use the correct aspects for depth/stencil attachments

These tests were blindly setting the aspectMask field of VkClearAttachment
to VK_IMAGE_ASPECT_DEPTH_BIT | VK_IMAGE_ASPECT_STENCIL_BIT even though the
format of the attachment may be a depth-only format.  This affects the
following tests:

dEQP-VK.api.image_clearing.clear_depth_stencil_attachment.2d_d16_unorm
dEQP-VK.api.image_clearing.clear_depth_stencil_attachment.2d_d32_sfloat
dEQP-VK.api.image_clearing.clear_depth_stencil_attachment.2d_x8_d24_unorm_pack32
dEQP-VK.api.image_clearing.partial_clear_depth_stencil_attachment.2d_d16_unorm
dEQP-VK.api.image_clearing.partial_clear_depth_stencil_attachment.2d_d32_sfloat
dEQP-VK.api.image_clearing.partial_clear_depth_stencil_attachment.2d_x8_d24_unorm_pack32

Change-Id: I7c0de07de97ae8529e429c26b1b99798cc1443a4

8 years agocopy_and_blit.blit_image: loosen threshold of float/float blits
Lionel Landwerlin [Sat, 15 Oct 2016 00:01:03 +0000 (01:01 +0100)]
copy_and_blit.blit_image: loosen threshold of float/float blits

In commit bd6f90c07f4bd0e0667ada50e134b479eeab78c5 :

  blit_image: compute validation threshold based on I/O formats

We tried to introduce an error threshold for unorm/integer formats and
removed all the precomputed thresholds for floating point formats. Also
introducing a bug where the threshold was ceiled to 1.0 (making a lot of
tests pass no matter the results).

In commit 161314f0ff255dfe47e280dd4945292295dab1ed :

  copy_and_blit.blit_image: fix threshold computation

We fixed the threshold to computation for unorm/integer formats but now all
threshold would be computed on the assumption that the resolution of numbers
is based of the number of bits in the fractional part of the number's
representation (which is incorrect for floating point formats).

This commit brings back the precomputed thresholds for floating point
formats, while still computing a threshold based on the number of bits in
the fractional part of the unorm formats.

Affected tests:
- dEQP-VK.api.copy_and_blit.blit_image.all_formats.*float*float*

Change-Id: I52034a58d145a8e046fb33bcc6becb9e83774d73

8 years agoCheck dependency between multiViewport and geometry
Maciej Jesionowski [Wed, 19 Oct 2016 09:48:30 +0000 (11:48 +0200)]
Check dependency between multiViewport and geometry

Modified tests:
- dEQP-VK.api.info.device.features

Public issue #25

Change-Id: Ifea108a909113f4628a7bfb1a75d9bdbd10866f3

8 years agoCheck for geometryShader in multi-viewport scissor
Maciej Jesionowski [Wed, 19 Oct 2016 09:32:29 +0000 (11:32 +0200)]
Check for geometryShader in multi-viewport scissor

Affected tests:
- dEQP-VK.fragment_operations.scissor.multi_viewport.*

Public issue #25

Change-Id: I82c45e7bff2f771b9874966246341d14d3371d8a

8 years agoRemove XML mustpass lists
Pyry Haulos [Wed, 24 Aug 2016 22:19:40 +0000 (15:19 -0700)]
Remove XML mustpass lists

Android CTS no longer uses per-package XML test lists.

(cherry picked from commit af8270690ae19b52cf673bdda853a57755b7d3fe)

Change-Id: I66c76af2c9b8dafbec7db9a9a7c150d4e5400ac2

8 years agoMerge aosp/upstream-vulkan-cts-1.0-dev into aosp/master
Pyry Haulos [Thu, 20 Oct 2016 18:42:41 +0000 (11:42 -0700)]
Merge aosp/upstream-vulkan-cts-1.0-dev into aosp/master

Change-Id: Ia92eae5ac913055ba0cd769b8ca3ac877e02d48c

8 years agoAdd excluded copy and blit tests back to mustpass
Pyry Haulos [Thu, 29 Sep 2016 21:43:55 +0000 (14:43 -0700)]
Add excluded copy and blit tests back to mustpass

See #431

Change-Id: I4d06edd0ad05e62fabe9f14c192aec3eb8d457c8

8 years agoAdd user clip plane tests back to mustpass
Pyry Haulos [Thu, 29 Sep 2016 21:22:06 +0000 (14:22 -0700)]
Add user clip plane tests back to mustpass

See #420

Change-Id: If0c5265298281241d50691a092b8af9720c1d2d7

8 years agoEnable some of dEQP-VK.glsl.texture_functions.texelfetchoffset.*
Slawomir Cygan [Tue, 20 Sep 2016 10:56:27 +0000 (12:56 +0200)]
Enable  some of dEQP-VK.glsl.texture_functions.texelfetchoffset.*

These are still disabled:
dEQP-VK.glsl.texture_functions.texelfetchoffset.sparse_sampler*

These tests were blacklisted as a part of issue 410, but it seems it was because of driver bug.

Change-Id: I01e3fdff78edef37dc0e7e72f129bd50e600b4aa

8 years agoAdd fragment sampled images to pipeline barrier tests
Mika Isojärvi [Thu, 15 Sep 2016 22:55:05 +0000 (15:55 -0700)]
Add fragment sampled images to pipeline barrier tests

Change-Id: I100f97a18206fc8e92e28b8c62289666048de6ea

8 years agoAdd fragment storage images to pipeline barrier tests
Mika Isojärvi [Fri, 9 Sep 2016 19:55:14 +0000 (12:55 -0700)]
Add fragment storage images to pipeline barrier tests

Change-Id: I34614de9bbc6ac567ba5a0faab1fc78c7b6375ca

8 years agoAdd fragment storage texel buffers to pipeline barrier tests
Mika Isojärvi [Wed, 7 Sep 2016 21:42:24 +0000 (14:42 -0700)]
Add fragment storage texel buffers to pipeline barrier tests

Change-Id: Id1ea453508d36b10908e46e79c4a7c2e4f7add5b

8 years agoAdd fragment uniform texel buffers to pipeline barrier tests
Mika Isojärvi [Wed, 7 Sep 2016 18:23:33 +0000 (11:23 -0700)]
Add fragment uniform texel buffers to pipeline barrier tests

Change-Id: I6a3bf3d522f952d0e0eb9ce623ff0f4efa4343c9

8 years agoAdd fragment storage buffers to pipeline barrier tests
Mika Isojärvi [Thu, 1 Sep 2016 22:51:56 +0000 (15:51 -0700)]
Add fragment storage buffers to pipeline barrier tests

Change-Id: Iac04ac1015064e8f5159c2d0f9838ccc79e33072

8 years agoAdd fragment uniform buffers to pipeline barrier tests
Mika Isojärvi [Thu, 1 Sep 2016 21:03:37 +0000 (14:03 -0700)]
Add fragment uniform buffers to pipeline barrier tests

Change-Id: I9a5ef06501c1969ee71f4adc37bbe5dd142646bb

8 years agoSplit pipeline barrier tests over multiple iterations
Mika Isojärvi [Wed, 31 Aug 2016 00:37:03 +0000 (17:37 -0700)]
Split pipeline barrier tests over multiple iterations

- Split different pipeline barrier test stages over multiple iterate() calls.
- Instead of running 100 ops once for each memory type run 50ops 5 times.
- Reduces resource usage, but increases number of operations performed.

Change-Id: I16f46ef94591cc45877f880dcf871f6302744c06

8 years agoExtend renderpass tests to use input attachments
Mika Isojärvi [Wed, 17 Aug 2016 20:23:36 +0000 (13:23 -0700)]
Extend renderpass tests to use input attachments

- Render only values 0 and 1 to all attachments.
- The value depends on attachment, subpass and pixel location.
- Depth formats also sets gl_FragDepth to 0.0 or 1.0 depending on location.
- Stencil uses only values 0 and 0xff.
- Verification requires that the quads are rasterized exactly and
  that all result values are either 0 or 1.
- Input attachment containing 1s and 0s are interpreted as true and
  false bools and input values are combined with boolean operations and
  written to shader outputs.

See #447
Change-Id: I4ebe3d9b5151d40558e473a028ee458cf6285a85

8 years agoFixes invalid subresource defs in *.simple_tests.
Dominik Witczak [Fri, 14 Oct 2016 14:18:15 +0000 (16:18 +0200)]
Fixes invalid subresource defs in *.simple_tests.

Affects dEQP-VK.api.copy_and_blit.blit_image.simple_tests

Fixes #519

Change-Id: I3c8331f27495333ece5bd43c160128fa49a7950d

8 years agoMerge "Check for EXT_color_buffer_float in read_pixels_fbo_format_mismatch" into...
Tina Zhou [Wed, 19 Oct 2016 18:13:50 +0000 (18:13 +0000)]
Merge "Check for EXT_color_buffer_float in read_pixels_fbo_format_mismatch" into nougat-cts-dev
am: 544e0e3b1d

Change-Id: I9b6b41060c199df465bb1aaf602b6c4e65170f19

8 years agoCheck for EXT_color_buffer_float in read_pixels_fbo_format_mismatch
Pyry Haulos [Wed, 19 Oct 2016 18:13:49 +0000 (18:13 +0000)]
Check for EXT_color_buffer_float in read_pixels_fbo_format_mismatch
am: 37e360591e

Change-Id: Iebccb4130e83bc05880ed19700b627920bd2c195

8 years agoMerge "CP: Use empty region when buffer age is not supported" into nougat-cts-dev
Tina Zhou [Wed, 19 Oct 2016 18:13:35 +0000 (18:13 +0000)]
Merge "CP: Use empty region when buffer age is not supported" into nougat-cts-dev
am: b82263e2ad

Change-Id: I48d7e3cf7abc24ea85d15e2c8e1cc28f495a715b

8 years agoCP: Use empty region when buffer age is not supported
Kalle Raita [Wed, 19 Oct 2016 18:13:34 +0000 (18:13 +0000)]
CP: Use empty region when buffer age is not supported
am: 8230646213

Change-Id: If04b5b6d5d8fc49177eae42772be8d8cfa5df7dd

8 years agoMerge "Fix deStrnlen fall-back implementation" into nougat-cts-dev
Tina Zhou [Wed, 19 Oct 2016 18:13:17 +0000 (18:13 +0000)]
Merge "Fix deStrnlen fall-back implementation" into nougat-cts-dev
am: a04db6628e

Change-Id: Iab81c26287e321d1ae9d15873866617690977868

8 years agoFix deStrnlen fall-back implementation
Pyry Haulos [Wed, 19 Oct 2016 18:13:16 +0000 (18:13 +0000)]
Fix deStrnlen fall-back implementation
am: 54ebe093a9

Change-Id: Ib970fc5430045b05006dee1fb47a08de6997c5df

8 years agoMerge "Remove a few preprocessor cases testing undefined behavior" into nougat-cts-dev
Tina Zhou [Wed, 19 Oct 2016 18:13:06 +0000 (18:13 +0000)]
Merge "Remove a few preprocessor cases testing undefined behavior" into nougat-cts-dev
am: 4275d2099c

Change-Id: I6dddd9f4d9f8223e6a639266cc9d2a3afe800598

8 years agoresolve merge conflicts of e5f7483 to master
Pyry Haulos [Wed, 19 Oct 2016 16:16:00 +0000 (09:16 -0700)]
resolve merge conflicts of e5f7483 to master

Change-Id: Id295761e33e8e58447f4b0bc9726f1bb03887d53

8 years agoMerge "Check for EXT_color_buffer_float in read_pixels_fbo_format_mismatch" into...
Tina Zhou [Wed, 19 Oct 2016 15:59:19 +0000 (15:59 +0000)]
Merge "Check for EXT_color_buffer_float in read_pixels_fbo_format_mismatch" into nougat-cts-dev

8 years agoMerge "CP: Use empty region when buffer age is not supported" into nougat-cts-dev
Tina Zhou [Wed, 19 Oct 2016 15:58:07 +0000 (15:58 +0000)]
Merge "CP: Use empty region when buffer age is not supported" into nougat-cts-dev

8 years agoMerge "Fix deStrnlen fall-back implementation" into nougat-cts-dev
Tina Zhou [Wed, 19 Oct 2016 15:56:53 +0000 (15:56 +0000)]
Merge "Fix deStrnlen fall-back implementation" into nougat-cts-dev

8 years agoMerge "Remove a few preprocessor cases testing undefined behavior" into nougat-cts-dev
Tina Zhou [Wed, 19 Oct 2016 15:56:21 +0000 (15:56 +0000)]
Merge "Remove a few preprocessor cases testing undefined behavior" into nougat-cts-dev

8 years agoMerge "Check for shader type support in negative precise tests" into nougat-cts-dev
Tina Zhou [Wed, 19 Oct 2016 15:54:14 +0000 (15:54 +0000)]
Merge "Check for shader type support in negative precise tests" into nougat-cts-dev
am: c30d04b8e7

Change-Id: I51397ade865e084fda6ea469615b19eeeefe38bd

8 years agoCheck for shader type support in negative precise tests
Pyry Haulos [Wed, 19 Oct 2016 15:54:13 +0000 (15:54 +0000)]
Check for shader type support in negative precise tests
am: 4a3a2d79a0

Change-Id: If11ec3c8cffdf5c152da4ebe8ea434aa67a61671

8 years agoMerge "Check for shader type support in negative shader directive tests" into nougat...
Tina Zhou [Wed, 19 Oct 2016 15:53:59 +0000 (15:53 +0000)]
Merge "Check for shader type support in negative shader directive tests" into nougat-cts-dev
am: a3513e86ff

Change-Id: I2c16e596fd38fb2a2b0455df8dab147fe69a8d99

8 years agoCheck for shader type support in negative shader directive tests
Pyry Haulos [Wed, 19 Oct 2016 15:53:58 +0000 (15:53 +0000)]
Check for shader type support in negative shader directive tests
am: cf6e6ab134

Change-Id: I575d8bebe3e3fdda7cb97b87325715bf940aeef3

8 years agoMerge "Check for shader type support in negative precise tests" into nougat-cts-dev
Tina Zhou [Wed, 19 Oct 2016 15:52:15 +0000 (15:52 +0000)]
Merge "Check for shader type support in negative precise tests" into nougat-cts-dev

8 years agoMerge "Check for shader type support in negative shader directive tests" into nougat...
Tina Zhou [Wed, 19 Oct 2016 15:50:37 +0000 (15:50 +0000)]
Merge "Check for shader type support in negative shader directive tests" into nougat-cts-dev

8 years agoFix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA.
Kenneth Graunke [Sun, 4 Sep 2016 07:34:47 +0000 (00:34 -0700)]
Fix sample_mask_in.bit_count_per_two_samples tests for 2x MSAA.

The dEQP-GLES31.functional.shaders.sample_variables.sample_mask_in.
bit_count_per_two_samples.multisample_{texture,renderbuffer}_{1,2}
tests report:

    Verifying gl_SampleMaskIn.
    Fragment shader may be invoked [ceil(numSamples/2), numSamples] times.
    => gl_SampleMaskIn should have the number of bits set in range
       [1, numSamples - ceil(numSamples/2) + 1]:

which suggests that maxBitCount should be ceil(2/2) + 1 = 1 + 1 = 2.

However, it then says:

    Setting minBitCount = 1, maxBitCount = 1.

Having two bits should be acceptable for 2x MSAA.

This patch drops the special case for 1x/2x MSAA, making them work
like all the other MSAA levels.

Change-Id: Ie615c82150588dab53226dc46670182a29d85ef5
(cherry picked from commit 724519b8fda9c2a92d646c3dfd1478e0daa282e9)

8 years agoFix internal format/type for 3D + depth/stencil negative API tests.
Kenneth Graunke [Mon, 12 Sep 2016 19:37:08 +0000 (12:37 -0700)]
Fix internal format/type for 3D + depth/stencil negative API tests.

According to the ES 3.2 specification:

   "Textures with a base internal format of DEPTH_COMPONENT, DEPTH_STENCIL
    or STENCIL_INDEX are supported by texture image specification commands
    only if target is TEXTURE_2D, TEXTURE_2D_MULTISAMPLE, TEXTURE_2D_ARRAY,
    TEXTURE_2D_MULTISAMPLE_ARRAY, TEXTURE_CUBE_MAP or TEXTURE_CUBE_MAP_ARRAY.
    Using these formats in conjunction with any other target will result in
    an INVALID_OPERATION error."

This subtest tried to check the above error condition, but it specified
GL_DEPTH_STENCIL / GL_DEPTH_COMPONENT as format, rather than internalFormat.
Since the above text calls out "base internal format", we should specify
it as internalFormat.

We also change GL_DEPTH_STENCIL to use GL_UNSIGNED_INT_24_8 rather than
GL_UNSIGNED_BYTE, as that combination was illegal for a different reason
than the one the test intended to check.

Change-Id: I44bf607533b59f93fa42415bd6cad8783352582d
(cherry picked from commit ae7f8e0a07730e693b24d3dc7a23d2372319145e)

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Tue, 18 Oct 2016 20:03:42 +0000 (13:03 -0700)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I8e8460156cb2ea58c3610c29d4df7134d38a58dc

8 years agoRemove tess/geom tests relying on default PointSize
Maciej Jesionowski [Fri, 30 Sep 2016 09:14:40 +0000 (11:14 +0200)]
Remove tess/geom tests relying on default PointSize

Some of these test cases assumed a default point size of 1.0 in
tessellation and geometry stages (as in GLES), but in Vulkan shaders
have to explicitly write to PointSize or the results are undefined.

Removed tests:
- dEQP-VK.tessellation.geometry_interaction.point_size.vertex_set_control_set
- dEQP-VK.tessellation.geometry_interaction.point_size.vertex_set_eval_default
- dEQP-VK.tessellation.geometry_interaction.point_size.vertex_set_evaluation_set_geometry_default

Public issue #26

Change-Id: I987580c0b7e638910c99f62c1d65b5722272f818

8 years agoFix -Wc++11-narrowing warnings
Colin Cross [Mon, 17 Oct 2016 22:49:30 +0000 (15:49 -0700)]
Fix -Wc++11-narrowing warnings

The platform default -std=gnu++14 is going to be applied to NDK modules,
cast DE_OFFSET_OF to deUint32 instead of int to prevent a new -Werror
failure.

Test: mma -j
Change-Id: Ief5620089bc069006664d39d68090ea8310344ac

8 years agoMerge aosp/master into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 14 Oct 2016 23:15:10 +0000 (16:15 -0700)]
Merge aosp/master into gerrit/vulkan-cts-1.0-dev

Change-Id: Ibf4b35b71a439aea29fcc520887e21c6365d89a3

8 years agoMerge changes Ib045a836,Idaf62182,I6ae192e6 into vulkan-cts-1.0-dev
Pyry Haulos [Fri, 14 Oct 2016 23:14:40 +0000 (19:14 -0400)]
Merge changes Ib045a836,Idaf62182,I6ae192e6 into vulkan-cts-1.0-dev

* changes:
  Parallelize vk-build-programs
  Fix issues in de::ThreadSafeRingBuffer<>
  Fix a few things in de::PoolArray<T>

8 years agoParallelize vk-build-programs
Pyry Haulos [Sat, 1 Oct 2016 00:34:39 +0000 (17:34 -0700)]
Parallelize vk-build-programs

Rewrite vk-build-program to take advantage of multiple cores. The speedup
is limited by the fact that glslang is still requires a big global lock.

Assembling and validating SPIR-V is fully parallelized.

Change-Id: Ib045a836089f566f43b89d627bebadf305ea4d2b

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 14 Oct 2016 21:32:37 +0000 (14:32 -0700)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I2b277e75191041a5e18a268c45e20a0912ef3923

8 years agoCherry-pick framework changes from 41702fa7
Pyry Haulos [Fri, 14 Oct 2016 21:28:37 +0000 (14:28 -0700)]
Cherry-pick framework changes from 41702fa7

Change-Id: Id2f016dd7034cd688494613b4f4aa74c4f373902

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 14 Oct 2016 21:06:57 +0000 (14:06 -0700)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: Ia73dcdf2af13f57e6c0f52df4a4c591a35c01a2f

8 years agoAdd VK_REMAINING_* defines to vulkan framework
Maciej Jesionowski [Thu, 22 Sep 2016 09:15:18 +0000 (11:15 +0200)]
Add VK_REMAINING_* defines to vulkan framework

Change-Id: I4d4693bab868cdf904d2b4c706fdb954f282ab13
(cherry picked from commit 5f247ec91a80d8d55d29243d770b29222ad8103e)

8 years agoFix issues in de::ThreadSafeRingBuffer<>
Pyry Haulos [Sat, 1 Oct 2016 00:33:33 +0000 (17:33 -0700)]
Fix issues in de::ThreadSafeRingBuffer<>

 * Use size_t for size-like values
 * Use std::vector<> for memory lifetime management

Change-Id: Idaf621829df4608968e7d8f3e60b7f3c948f0b04

8 years agoFix a few things in de::PoolArray<T>
Pyry Haulos [Sat, 1 Oct 2016 00:32:24 +0000 (17:32 -0700)]
Fix a few things in de::PoolArray<T>

 * Fix operator-> for iterators
 * Add more standard iterator typedefs
 * Add front() and back()

Change-Id: I6ae192e682dfc1f304ccc83ad96409c0a10c5c4d

8 years agoMerge aosp/upstream-vulkan-cts-1.0-dev into aosp/master
Pyry Haulos [Fri, 14 Oct 2016 20:48:05 +0000 (13:48 -0700)]
Merge aosp/upstream-vulkan-cts-1.0-dev into aosp/master

Change-Id: I782798e35e4537d7cc0dbbc7a2f46f6adebc682d

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 14 Oct 2016 20:47:48 +0000 (13:47 -0700)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I9def7f39ac7f4d4312b1c0469f718e17b6a3d673

8 years agoRelax precision in OpTextureQueryLod tests
Pyry Haulos [Tue, 11 Oct 2016 20:09:28 +0000 (13:09 -0700)]
Relax precision in OpTextureQueryLod tests

This change allows for the full LOD implementation range allowed by the
specification.

Affects dEQP-VK.glsl.texture_functions.query.texturequerylod.*

Fixes #510

Change-Id: Iacb73ea840052983a9ab8402460e4e0a9e911b07

8 years agocopy_and_blit.blit_image: fix threshold computation
Lionel Landwerlin [Wed, 12 Oct 2016 18:03:31 +0000 (19:03 +0100)]
copy_and_blit.blit_image: fix threshold computation

Threshold should not be ceiled, affecting all blit tests with
floating point format as destination :

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

Also use the source texture to get the source format.

Fixes #516

Change-Id: I4c49007070306d597e36f7b79ee969ef5081d19e

8 years agoFix OpVariable position in OpInBoundsAccessChain tests.
Gabor Abraham [Thu, 8 Sep 2016 15:15:35 +0000 (17:15 +0200)]
Fix OpVariable position in OpInBoundsAccessChain tests.

Fixes #489

Change-Id: I4ee027fd82f5a5f5d54dd3abd4d9b50250eb3e31
(cherry picked from commit 5f7c4c5e0bdd9090a6ae5cab8bdf73d726bb2c41)

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 14 Oct 2016 20:16:49 +0000 (13:16 -0700)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I29c4d7be30a0e5c0dae2218922e5c7b90de18d16

8 years agoUpdate glslang (use SampledImage with OpImageQueryLod)
Maciej Jesionowski [Wed, 12 Oct 2016 15:36:59 +0000 (17:36 +0200)]
Update glslang (use SampledImage with OpImageQueryLod)

Affected tests:
- dEQP-VK.glsl.texture_functions.query.texturequerylod.*

Fixes #514

Change-Id: Iea4c3f6007dc34a618e2171358a6ecc1cf57424d

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 14 Oct 2016 20:15:18 +0000 (13:15 -0700)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I2772754cee9cc11e196225d9f5ebe402f6124f75

8 years agoUse tex lookup verifier in ImageSamplingInstance
Pyry Haulos [Thu, 22 Sep 2016 01:26:31 +0000 (18:26 -0700)]
Use tex lookup verifier in ImageSamplingInstance

Simple image comparison is ill-equipped to handle all possible precision
and behavior differences (cube map corner filtering for example). This
change replaces old image comparison method with use of texture lookup
verification utilities.

Instead of rendering a reference image, texture coordinates generated by
the reference rasterizer are captured. The captured coordinates are then
used to verify the result color values retured by the implementation
using the texture lookup verification code.

This affects:
 * dEQP-VK.pipeline.image.*
 * dEQP-VK.pipeline.sampler.*
 * dEQP-VK.pipeline.image_view.*

Fixes #297
Fixes #340

Change-Id: I856000bd4d4aa7ab6c1e69af09f3655b63018b93

8 years agoCOUNT_1_BIT is required min for sampledImageIntegerSampleCounts
Alexander Galazin [Thu, 13 Oct 2016 11:10:35 +0000 (13:10 +0200)]
COUNT_1_BIT is required min for sampledImageIntegerSampleCounts

dEQP-VK.glsl.texture_functions.query.texturesamples.isampler*ms*
should work for VK_SAMPLE_COUNT_1_BIT sample count as these
tests check both MS and integer formats.

Fixes #517

Change-Id: I2f3362b630921f4c1111d84ab0ba291caeb80e9a

8 years agoBugfix: use SPARSE_BINDING flag in sparse_resources test
Maciej Jesionowski [Fri, 7 Oct 2016 10:15:03 +0000 (12:15 +0200)]
Bugfix: use SPARSE_BINDING flag in sparse_resources test

Affected tests:
- dEQP-VK.sparse_resources.buffer_sparse_residency.*

Fixes #508

Change-Id: I8aabcc66501e49138ff51925a07b47d13b4a5664

8 years agodEQP-VK.sparse_resources.shader_intrinsics: OpCompositeExtract needs value id
Slawomir Cygan [Thu, 6 Oct 2016 14:45:31 +0000 (16:45 +0200)]
dEQP-VK.sparse_resources.shader_intrinsics: OpCompositeExtract needs value id

This fixes SPIR-V code used by dEQP-VK.sparse_resources.shader_intrinsics.

This adds missing OpLoad on vaying variable pointer, as pointers cannot be
passed directly to OpCompositeExtract.

Change-Id: I801aae7d49213771ffe17a0ed7fa096ab80b0b37

8 years agoMerge "dEQP-VK.sparse_resources.shader_intrinsics*gather: fix possible of-by-one...
Pyry Haulos [Fri, 14 Oct 2016 19:54:50 +0000 (15:54 -0400)]
Merge "dEQP-VK.sparse_resources.shader_intrinsics*gather: fix possible of-by-one errors" into vulkan-cts-1.0.1

8 years agodEQP-VK.sparse_resources.shader_intrinsics*gather: fix possible of-by-one errors
Slawomir Cygan [Thu, 6 Oct 2016 15:31:47 +0000 (17:31 +0200)]
dEQP-VK.sparse_resources.shader_intrinsics*gather: fix possible of-by-one errors

The test seems to perform GATHER sampling from center of pixels

On un-even image sizes this may cause failures, as texcoord (being float32)
may not exactly represent pixel center, what can cause different 2x2 rectangle to
be gathered.

The fix is to bias texcoord by half a texel, so sampling is always performed
from centre of 2x2 rectangle.

Fixes following tests (for me):
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.r32i.503_137_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.r32i.11_37_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.r16i.503_137_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.r16i.11_37_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.r8i.503_137_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.r8i.11_37_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.rgba32ui.503_137_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.rgba32ui.11_37_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.rgba16ui.503_137_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.rgba16ui.11_37_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.rgba8ui.503_137_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_sparse_gather.rgba8ui.11_37_1
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.r32i.503_137_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.r32i.11_37_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.r16i.503_137_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.r16i.11_37_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.r8i.503_137_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.r8i.11_37_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.rgba32ui.503_137_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.rgba32ui.11_37_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.rgba16ui.503_137_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.rgba16ui.11_37_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.rgba8ui.503_137_3
dEQP-VK.sparse_resources.shader_intrinsics.2d_array_sparse_gather.rgba8ui.11_37_3

Affects: dEQP-VK.sparse_resources.shader_intrinsics.*gather*

Change-Id: I218d68033e3c83d5270c54731eac3a72c6899173

8 years agoMerge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev
Pyry Haulos [Fri, 14 Oct 2016 19:37:12 +0000 (12:37 -0700)]
Merge gerrit/vulkan-cts-1.0.1 into gerrit/vulkan-cts-1.0-dev

Change-Id: I0681cde0cd048ed8c7973c70458d82e568e2fa26

8 years agoMerge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1
Pyry Haulos [Fri, 14 Oct 2016 19:37:10 +0000 (12:37 -0700)]
Merge gerrit/vulkan-cts-1.0.0 into gerrit/vulkan-cts-1.0.1

Change-Id: I623cc43f95bd5d7c967ebbf397bc9fa214585d73

8 years agoFix alignment issues in uploading image data in ShaderExecutor
Pyry Haulos [Tue, 27 Sep 2016 22:49:46 +0000 (15:49 -0700)]
Fix alignment issues in uploading image data in ShaderExecutor

Fixes #485

Change-Id: If04aebab19fb25ef26b51b4af86e718004438d82
(cherry picked from commit 9141d25d08d53c203f8ac5a9c5937a41e1d83d02)