Slawomir Cygan [Fri, 9 Mar 2018 17:53:43 +0000 (18:53 +0100)]
Require protectedMemory feature for non-zero queue create flags
Protected memory feature is required for using
VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT.
Components: Vulkan
VK-GL-CTS Issue: 1068
Affects:
dEQP-VK.api.device_init.create_device_queue2_unmatched_flags
Change-Id: I0a83fd3aaf2ab20836ab706adc9a62534ac56864
Alexander Galazin [Wed, 11 Apr 2018 08:48:52 +0000 (10:48 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: I945204f314bc75c95e8b6c4056b01d24911bb92c
Piers Daniell [Fri, 6 Apr 2018 17:16:47 +0000 (11:16 -0600)]
Fix resource buffers used for the Op?Convert graphics tests
I didn't catch this when reviewing CL 2240. The "graphics"
variants of the OpUConvert/OpSConvert/OpFConvert tests are
writing the shader results to a UBO instead of an SSBO. UBOs
are read-only and writing to one has undefined results.
This CL simply changes the resources to use SSBOs rather than
UBOs, which follows the same template of most of the other
dEQP-VK.spirv_assembly.instruction.graphics.* tests.
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.sconvert.*
dEQP-VK.spirv_assembly.instruction.graphics.uconvert.*
dEQP-VK.spirv_assembly.instruction.graphics.fconvert.*
Change-Id: Iab4014e6ca5e1482f74ff6d8bec7f04793b0e69d
Components: Vulkan
Jari Komppa [Tue, 10 Apr 2018 09:59:55 +0000 (12:59 +0300)]
Release info script without spir-v tools fix
This fix (based on work by imirkin) checks whether the spir-v tools
source files are available before trying to use them to generate the
release info include file.
Affects:
None
Components: Framework
VK-GL-CTS issue: 1114
Change-Id: I6764a469738a8e6a7797746d963da197b8380301
Graeme Leese [Wed, 21 Mar 2018 12:10:34 +0000 (12:10 +0000)]
Use the subgroups 'supportedCheck' helpers
This function exists in each test module but was only being used by one
out of the two places that the code is needed.
Components: Vulkan
Affects: dEQP-VK.subgroups.*
Change-Id: Idec5bf036b44b384c1c404d0a7d68805981a4ae4
Slawomir Cygan [Tue, 27 Mar 2018 14:41:33 +0000 (16:41 +0200)]
Fix stack overflow on vkGetPhysicalDeviceSparseImageFormatProperties
Function may return random number of structs overwriting
the sparseImageFormatProperties variable.
Components: Vulkan
VK-GL-CTS Issue: 1103
Affects: dEQP-VK.texture.*.sparse_*
Change-Id: I101b72360145c23cef14cfeb50c7f9cd02e62e2f
Caio Marcelo de Oliveira Filho [Mon, 5 Mar 2018 23:20:18 +0000 (15:20 -0800)]
Test using gl_ViewportIndex in tessellation shader
Needs VK_EXT_shader_viewport_index_layer extension. Test works by
setting up N viewports forming a grid and each pair of triangles is
assigned to one of the viewports. Colors are used to distinguish each
pair, and by consequence, each cell in the grid.
It reuses most of parts from the similar test for vertex shader.
New tests:
dEQP-VK.draw.shader_viewport_index.tessellation_shader_*
VK-GL-CTS issue: 1043
Components: Vulkan
Change-Id: Ie55be3e188f5ded3c8aafb90b97af8cf3af3f243
Alexander Galazin [Fri, 6 Apr 2018 08:16:25 +0000 (10:16 +0200)]
Update Vulkan Readme
Update Vulkan Readme with the new CTS version
Components: Vulkan
Change-Id: I4bbb541c3924efe32986e30051a4e82a2aaca50e
Alexander Galazin [Fri, 6 Apr 2018 08:15:15 +0000 (04:15 -0400)]
Merge "Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master"
Alexander Galazin [Fri, 6 Apr 2018 07:47:50 +0000 (09:47 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: Iece73f9d69d002433e394ed5f9ed472ccad037e9
Alexander Galazin [Mon, 26 Mar 2018 12:34:28 +0000 (14:34 +0200)]
Update spriv-tools
Change-Id: I7d24e707b2e0ef8b9591db20897c3c813664b41d
Alexander Galazin [Thu, 5 Apr 2018 19:21:04 +0000 (21:21 +0200)]
Update Vulkan Readme
Update Vulkan Readme to reflect the current CTS version
Components: Vulkan
Change-Id: I1e69df3934e2d35a072823e7bf9e5d2d03b011fe
Chris Forbes [Thu, 5 Apr 2018 17:24:12 +0000 (10:24 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev
Change-Id: Ib9e725f708993d7561a5251d4d3d3e8aa982bc00
Chris Forbes [Thu, 5 Apr 2018 16:50:52 +0000 (09:50 -0700)]
Merge remote-tracking branch 'aosp/master' into deqp-dev
Change-Id: Ibfcf52370db2296033a396dce933808c325fe645
Alexander Galazin [Thu, 5 Apr 2018 15:46:12 +0000 (17:46 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: Ie5c0fcea75496b342059629bb3c34c64c9f73226
Damien Leone [Mon, 30 Oct 2017 23:15:25 +0000 (16:15 -0700)]
Do not fail display tests when there is no display
Instead, we should mark these tests as not supported. It is valid per the
Vulkan spec to have the extension report 0 displays connected.
Affects: dEQP-VK.wsi.display.*
Component: Vulkan
VK-GL-CTS issue: 1105
Change-Id: Idfe09ec588be7b4c6c782e306e7bf1506d78808f
Alexander Galazin [Thu, 5 Apr 2018 12:02:09 +0000 (14:02 +0200)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: Ice19bfdd5c995157824851fa183611a84d9b4c0a
Alexander Galazin [Thu, 5 Apr 2018 12:02:08 +0000 (14:02 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Change-Id: Ie3f6aca2d39bc1c7c1600d3ba4d809c39ed91efa
Alexander Galazin [Thu, 5 Apr 2018 12:02:04 +0000 (14:02 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4
Change-Id: Id621f75848b554dc234d3b489a8a80773ac437bd
Alexander Galazin [Thu, 5 Apr 2018 08:34:26 +0000 (10:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: I84a639633f77095edfd99f1d5873b77896f35c97
Jarred Davies [Thu, 5 Apr 2018 09:51:23 +0000 (10:51 +0100)]
Drop linear filter requirement from YCbCr tests
Remove requirement for YCbCr base formats to support
VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT from
format_properties tests.
The standard does not require support for this feature
from any YCbCr format.
Affects:
dEQP-VK.api.info.format_properties.g8_b8_r8_3plane_420_unorm
dEQP-VK.api.info.format_properties.g8_b8r8_2plane_420_unorm
Components: Vulkan
VK-GL-CTS issue: 1090
Change-Id: I6fa1c6c7a7f9768c2001972ae1f04173310aa652
Alexander Galazin [Thu, 5 Apr 2018 07:58:39 +0000 (09:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Idaa7c167a7485b1cc290dab87fab146e922887e9
Ari Suonpaa [Fri, 9 Mar 2018 12:06:11 +0000 (14:06 +0200)]
Use common utility function for render pass begin and end
Render pass begin and end are used in almost every test case. Some test
groups already implement an utility function for these. Others do it
inline. These are now replaced with common utility functions.
Affects:
dEQP-VK.glsl.*
dEQP-VK.api.*
dEQP-VK.device_group.*
dEQP-VK.draw.*
dEQP-VK.dynamic_state.*
dEQP-VK.fragment_operations.*
dEQP-VK.geometry.*
dEQP-VK.image.*
dEQP-VK.memory.*
dEQP-VK.multiview.*
dEQP-VK.pipeline.*
dEQP-VK.protected_memory.*
dEQP-VK.query_pool.*
dEQP-VK.rasterization.*
dEQP-VK.renderpass.*
dEQP-VK.robustness.*
dEQP-VK.sparse_resources.*
dEQP-VK.spirv_assembly.*
dEQP-VK.subgroups.*
dEQP-VK.synchronization.*
dEQP-VK.tessellation.*
dEQP-VK.texture.*
dEQP-VK.wsi.*
dEQP-VK.ubo.*
Components: Vulkan, Framework
VK-GL-CTS issue: 1056
Change-Id: If69a7bde883f7abfd1fd1362562abf1a5c550bd5
Slawomir Cygan [Wed, 14 Feb 2018 17:30:48 +0000 (18:30 +0100)]
Add tests for freeing descriptor sets followed by pool reset
This change adds new test cases for resetting a descriptor set pool
which is created with VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT
flag and already has some descriptor sets freed.
VK-GL-CTS Issue: 1020
Component: Vulkan
Affects: dEQP-VK.api.descriptor_pool.*
Change-Id: I791bfafc4b5bf85454e33e5d5de5d153b4b6a5ed
Slawomir Cygan [Wed, 7 Mar 2018 17:02:56 +0000 (18:02 +0100)]
Add tests for checking YCbCr format enums in Vulkan 1.1
Check that YCbCr format enums added in Vulkan 1.1 are
recognized by implementation, even when samplerYcbcrConversion
feature is not supported.
This change splits 'checkYcrbrConversionSupport' into:
- API support (if VkFormats are recognized by the implementation)
- the actual conversion support.
YCbCr feature check tests are run always when API is supported,
even if YCbCr conversion it not. However, support for format properties
and image format properties is still not required, if YCBCr conversion feature is
not supported.
Component: Vulkan
VK-GL-CTS Issue: 1059
Affects:
dEQP-VK.api.info.format_properties.*
dEQP-VK.api.info.*image_format_properties*
Change-Id: I84280eaa481a566e05ce028b9e4ec407f2d27599
Paavo Pessi [Fri, 16 Mar 2018 13:33:05 +0000 (15:33 +0200)]
Test viewport with zero height
New tests were added to verify that the driver does not crash and that
triangle primitives are not drawn when using a viewport with zero
height.
New tests:
dEQP-VK.draw.zero_viewport_height.*
Components: Vulkan
VK-GL-CTS issue: 1048
Change-Id: I886f604944ad6224e31eb70a72917e505d4e11c5
Arkadiusz Sarwa [Wed, 28 Feb 2018 16:52:10 +0000 (17:52 +0100)]
Alignment tests of 16bit types in structs
Add tests:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16struct_to_32struct.*
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_32struct_to_16struct.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.uniform_16struct_to_32struct.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.uniform_32struct_to_16struct.*
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.struct_mixed_types.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.struct_mixed_types.*
Components: Vulkan
VK-GL-CTS issue: 1061
Change-Id: I9f206431cd313c736bc12b4b8a002426ffbf6398
Yunchao He [Fri, 16 Mar 2018 03:26:58 +0000 (11:26 +0800)]
Fix: Use correct format/type for RGB9_E5 internalformat
According to GLES 3.* specifications (say Table 8.3 in ES32 spec),
the original internalformat/format/type combination for RGB9_E5 is
not correct. The texture storage is not allocated at all.
So the followed test case can not verify what it really want to
test. This small change revises the format/type and make it to be
a correct combination for RGB9_E5.
Components: OpenGL
Affects:
dEQP-GLES31.functional.debug.negative_coverage.*.texture.copytexsubimage2d_texture_internalformat
Change-Id: I529f4aaed1f507f67d3dc5806eb5cb0e6c27d858
Peter Quayle [Wed, 28 Mar 2018 17:18:28 +0000 (18:18 +0100)]
Fix improper use of vkCmdWaitEvents
dEQP-VK.synchronization.smoke.events was calling vkCmdWaitEvents inside
a render-pass, which is not allowed if the event is later triggerd using
vkSetEvent. Additionally, the test was only waiting 1ns to determine if
a queue had made forward progress, which is too short to give the
implementation a chance to do any work.
Affects:
dEQP-VK.synchronization.smoke.events
Components: Vulkan
VK-GL-CTS issue: 1089
Change-Id: I6d9c9a635d82840f49fd3d9ed3736f91c4b6f88d
Graeme Leese [Thu, 1 Mar 2018 17:48:57 +0000 (17:48 +0000)]
Fix random shader generator
Put parentheses around the RHS when converting L == R into
abs(L - R) < 0.001.
Affects: dEQP-GLES2.functional.shaders.random.*
dEQP-GLES3.functional.shaders.random.*
Components: OpenGL
VK-GL-CTS issue: 286
Change-Id: I95d43ed40944c2815d7ce464ac4dc4993f87a4e9
Mikael Tuomisalo [Wed, 7 Feb 2018 14:45:36 +0000 (16:45 +0200)]
Add missing SConvert, FConvert and UConvert tests
Different variations of SConvert, FConvert and UConvert weren't properly
tested in compute and graphics shaders.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.sconvert.*
dEQP-VK.spirv_assembly.instruction.compute.uconvert.*
New tests:
dEQP-VK.spirv_assembly.instruction.compute.sconvert.int32_to_*int16
dEQP-VK.spirv_assembly.instruction.compute.sconvert.int64_to_*
dEQP-VK.spirv_assembly.instruction.compute.sconvert.uint*
dEQP-VK.spirv_assembly.instruction.compute.sconvert.*vec*
dEQP-VK.spirv_assembly.instruction.compute.uconvert.uint32_to_uint16
dEQP-VK.spirv_assembly.instruction.compute.uconvert.uint64_to_*
dEQP-VK.spirv_assembly.instruction.compute.fconvert.*
dEQP-VK.spirv_assembly.instruction.graphics.sconvert.*
dEQP-VK.spirv_assembly.instruction.graphics.uconvert.*
dEQP-VK.spirv_assembly.instruction.graphics.fconvert.*
Components: Vulkan
VK-GL-CTS issue: 880
Change-Id: Id84c7a20749cd15e84a9c85993c1e6574712889e
Jari Komppa [Mon, 29 Jan 2018 11:57:57 +0000 (13:57 +0200)]
Added shader cache to speed up runtime
Added shader cache which hashes incoming shader sources and saves the
resulting binaries on disk, avoiding unneccessary recompilation.
On testing it was found that the conformance suite calls shader
compilation about 500k times while only about 30k shaders are unique.
When all shaders are prebuilt on disk, complete runtime is reduced by
about 30%.
The shader cache also affects vk-build-programs. If shaders already
exist and shader validation is not enabled, vk-build-programs runs about
95% faster.
The timings above are based on debug builds on a desktop PC. Release
builds get less benefit, but this may be helpful on mobile platforms.
The shader cache does not affect targets which do not include spir-v
tools.
Affects:
dEQP-VK.*
Components: Framework, Vulkan
VK-GL-CTS issue: 899
Change-Id: I9b1ea915b3c9d94be85adb17161c12f453175d78
Tony Wasserka [Tue, 3 Apr 2018 14:40:21 +0000 (15:40 +0100)]
Consider rounding mode differences in mipmap tests
The tests already tolerate a threshold for rounding mode differences
for the result of a downscaling vkCmdBlitImage, however the accumulated
difference between Round-To-Nearest and Round-To-Zero may exceed the
current threshold. With this change, the expected result is generated
from the preceding device-rendered mipmap instead, so any legitimate
error will always be within the threshold now.
Affects:
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.generate_mipmaps.*_linear
Components: Vulkan
VK-GL-CTS issue: 1106
Change-Id: I0999419320d1b2384f42fbc8eddda29e79147bd4
Juan A. Suarez Romero [Tue, 20 Mar 2018 16:29:11 +0000 (17:29 +0100)]
Add GL_ARB_draw_indirect extension
Add wrapper functions defined by this extension.
Components: Framework
VK-GL-CTS issue: 1087
Affects:
GTF-GL3*.gtf31.GL3Tests.primitive_restart.primitive_restart_draw_elements
GTF-GL3*.gtf32.GL3Tests.vertex_array_bgra.vertex_array_bgra_draw_calls
Change-Id: I0e13535a099b6599be3127685c473cbab120b0d4
asokolow [Mon, 12 Mar 2018 07:45:11 +0000 (08:45 +0100)]
Fix glTransformFeedbackBufferRange defintion
There is a mismatch between TransformFeedbackBufferRange
definitions in test and OpenGL spec.
The last parameter type is GLsizeiptr accoding
to spec (and XML registry).
Components: OpenGL
VK-GL-CTS Issue: 1093
Affects:
KHR-GL45.direct_state_access.xfb_buffers
Change-Id: Iaf688016234de106b642593d9808d88c7d765edd
Marcin Rogucki [Mon, 29 Jan 2018 14:23:42 +0000 (15:23 +0100)]
Test for return values of vkGet*ProcAddr
This change tests vkGet*ProcAddr. It also removes special
case for vkGetDeviceProcAddr which now is considered by a
framework as a device-level function.
Components: Framework, Vulkan
VK-GL-CTS issue: 948
Affects:
dEQP-VK.api.version_check.entry_points
dEQP-VK.*
Change-Id: I629bceaae25534e5eff9550034e7af0ab2668aa9
Alexander Galazin [Fri, 30 Mar 2018 16:38:50 +0000 (18:38 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: I4ebb0dcf96e37806528ee00bb78c586706224680
Alexander Galazin [Fri, 30 Mar 2018 16:38:40 +0000 (18:38 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: I752717cf0180806e0745a0a7d055e3471a2b203b
Piotr Byszewski [Thu, 8 Mar 2018 13:12:15 +0000 (14:12 +0100)]
Request proper features in spirv_asembly tests
image_sampler and ubo_padding tests used stores to SSBOs without
requesting proper features. In this change implementation of
ShaderTestUtil was modified to enable possibility to create test
for individual stages. Now proper features could be requested
before performing the tests for specified stages.
Components: Vulkan
VK-GL-CTS issue: 1049
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.image_sampler.*
dEQP-VK.spirv_assembly.instruction.graphics.ubo_padding.*
dEQP-VK.spirv_assembly.instruction.graphics.*
Change-Id: I03441b385097340faa72b18e17f09a07eba49efb
Chris Forbes [Thu, 29 Mar 2018 20:27:19 +0000 (13:27 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev
Change-Id: I93f0ba87fc282346c4d7bd6b4521b105826328aa
Mika Väinölä [Fri, 23 Feb 2018 14:40:28 +0000 (16:40 +0200)]
Test QueueSubmit with null SubmitInfo and fence
This test matches
VkLayerTest.TwoQueueSubmitsOneQueueNullQueueSubmitWithFence found in
layer validation tests which fails on some shipping drivers.
New tests:
dEQP-VK.api.command_buffers.submit_two_buffers_one_buffer_null_with_fence
Components: Vulkan
VK-GL-CTS issue: 836
Change-Id: I57eb96bb724406dafc522041c95ac99fd0e103b4
Jesse Hall [Tue, 27 Mar 2018 23:49:03 +0000 (16:49 -0700)]
Add glu::BufferOffsetAsPointer utility
Clang 6.x adds a warning that doing arithmetic involving a NULL
pointer is a GNU extension. This affects the common GL pattern
(deUint8*)DE_NULL + offset
used to pass an offset into a bound buffer object as a client pointer
parameter.
This change replaces that pattern with a call to a new utility
function glu::BufferOffsetAsPointer(), which will hopefully be
warning-free on all compilers.
Change-Id: I8be939297b02c44091441c71ae75e45ceab30639
Components: Framework, OpenGL, AOSP
Igor Ostrowski [Wed, 6 Dec 2017 14:52:40 +0000 (15:52 +0100)]
Add tests for VK_EXT_post_depth_coverage
Additional tests for sample mask with depth test without extension
New tests:
dEQP-VK.pipeline.multisample.sample_mask_with_depth_test.*
Components: Vulkan
VK-GL-CTS issue: 888
Change-Id: I2cecb9f9db52ca471fea9a8630923dab68730e59
Alexander Galazin [Wed, 28 Mar 2018 10:54:36 +0000 (12:54 +0200)]
Merge vk-gl-cts/aosp-deqp-dev into vk-gl-cts/master
Change-Id: Ia97d8543cbf11fa2a525cdb96d4c23a644645a61
Oliver Wohlmuth [Wed, 28 Mar 2018 14:54:15 +0000 (16:54 +0200)]
Backported invalid test removal to gles-cts 3.2.4
Invalid random shader tests have been removed from master mustpass
in commit
1bb2c97165cdd13bea670fb2d39cd63019d69265
This patchset applies the same changes to gles-cts 3.2.4 so they
can be cherry picked.
Affects:
dEQP-GLES2.functional.shaders.random.all_features.fragment.16
dEQP-GLES2.functional.shaders.random.all_features.fragment.56
Components: OpenGL
VK-GL-CTS issue: 1100
Change-Id: I976504d1246e9f025aec47f4f13b047428ad007d
Alexander Galazin [Wed, 28 Mar 2018 10:40:00 +0000 (06:40 -0400)]
Merge "Merge vk-g-cts/opengl-cts-4.6.0 into vk-gl-cts/master"
Alexander Galazin [Tue, 27 Mar 2018 13:06:33 +0000 (15:06 +0200)]
Merge vk-g-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: Ibf1a7adea71d5d7c94205bcc83e5200b6c86b91c
Slawomir Cygan [Tue, 27 Mar 2018 11:29:35 +0000 (13:29 +0200)]
vktApiFeatureInfo.cpp: fix one 'Wshadow' warning on GCC
Components: Vulkan
VK-GL-CTS Issue: 1101
Affects: None
Change-Id: Iba44a66378f12543d54967afba25f496f6bc3ab4
Kenneth Graunke [Wed, 28 Mar 2018 00:35:29 +0000 (00:35 +0000)]
Merge "Require GL_EXT_sRGB_write_control for GL_FRAMEBUFFER_SRGB enable/disable" into oreo-mr1-cts-dev
am:
c6b5415220
Change-Id: I36d5a70037b66e27342c76a050fadc7607906531
Treehugger Robot [Wed, 28 Mar 2018 00:32:19 +0000 (00:32 +0000)]
Merge "Require GL_EXT_sRGB_write_control for GL_FRAMEBUFFER_SRGB enable/disable" into oreo-mr1-cts-dev
Matthew Netsch [Tue, 27 Mar 2018 21:55:58 +0000 (14:55 -0700)]
Fixes cap check for 16bit storage stress test
Missing cap check for StorageUniformBufferBlock16
Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16_to_16.stress_test
Components: Vulkan
VK-GL-CTS issue: 1091
Change-Id: Ifaf31eab31ca2b8fe9cf23c94087cf25542bd8ed
Ari Suonpaa [Mon, 5 Mar 2018 08:16:19 +0000 (10:16 +0200)]
Use common utility function for command buffer begin and end
Command buffer begin and end is used in almost every test case. Some test
groups already implement an utility function for these. Others do it
inline. These are now replaced with common utility functions.
Affects:
dEQP-VK.compute.*
dEQP-VK.fragment_operations.*
dEQP-VK.geometry.*
dEQP-VK.image.*
dEQP-VK.pipeline.*
dEQP-VK.protected_memory.*
dEQP-VK.query_pool.*
dEQP-VK.renderpass.*
dEQP-VK.sparse_resources.*
dEQP-VK.spirv_assembly.*
dEQP-VK.synchronization.*
dEQP-VK.tessellation.*
dEQP-VK.clipping.*
dEQP-VK.ycbcr.query.*
dEQP-VK.glsl.*
dEQP-VK.api.*
dEQP-VK.device_group.*
dEQP-VK.draw.*
dEQP-VK.dynamic_state.*
dEQP-VK.memory.*
dEQP-VK.multiview.*
dEQP-VK.pipeline.*
dEQP-VK.robustness.*
dEQP-VK.ssbo.*
dEQP-VK.binding_model.shader_access.*
dEQP-VK.texture.*
dEQP-VK.wsi.*
dEQP-VK.ycbcr.*
dEQP-VK.rasterization.*
dEQP-VK.ubo.*
Components: Vulkan, Framework
VK-GL-CTS issue: 1022
Change-Id: I84bec62fb2d0a5ce408a85cd243e7f629acc5867
Slawomir Cygan [Tue, 27 Mar 2018 10:46:35 +0000 (12:46 +0200)]
Fix off indentation in vktApiFeatureInfo.cpp
Components: Vulkan
VK-GL-CTS Issue: 1102
Affects: None
Change-Id: Id05617e0bc2895de1ae67ea3925f4300c5d55d3f
Dae Kim [Tue, 27 Mar 2018 09:54:23 +0000 (10:54 +0100)]
Fixed rounding issue in spirv_assembly tests
The test assumes that the host system and the device use the same
rounding mode. When this is not the case, the derived rounding errors
make the test fail unexpectedly. By rounding the input values down we
avoid differences in the test output caused by the rounding modes in
use.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.loop_control.dependency_infinite
Components: Vulkan
VK-GL-CTS issue: 1097
Change-Id: I3678e38cbe5c6d57cecef91e7398df0d04763851
Tapani Pälli [Mon, 26 Mar 2018 12:10:16 +0000 (15:10 +0300)]
Fixes to EGL.functional.hdr_metadata.* tests
- Adjust given values to fit uint16_t (range used in smpte2086
and cta861.3 specs).
- Allow EGL_BAD_PARAMETER error happen when setting parameters,
per spec this means values passed are not supported by the
implementation. Output attribute and given values in this
case for debugging purposes.
v2: skip unsupported but check supported attributes (Courtney)
Change-Id: I1f386b414c95e65d3532bf10719dc7671e826489
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Alexander Galazin [Mon, 26 Mar 2018 12:01:52 +0000 (14:01 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Change-Id: Id1abb58d7a7c93277531a74ca38eaf5d5e6d7550
Slawomir Cygan [Mon, 19 Mar 2018 11:56:50 +0000 (12:56 +0100)]
Fix regression after adding run time report (
4758c8d4)
qpXmlWriter_endDocument was not called after the end of test
case timing XML block, leaving XML writer in bad state.
This causes assert on subsequent XML blocks being started.
VK-GL-CTS Issue: 1086
Components: Framework
Change-Id: I8bf2fd48517a5389671389dcb0883e168a587da7
Affects: all
Alexander Galazin [Mon, 26 Mar 2018 08:50:18 +0000 (10:50 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: Ibcd4407ae531a32d85f7e6f6fc263247a1f25da3
Michael Chock [Thu, 8 Mar 2018 19:41:05 +0000 (11:41 -0800)]
Move khr_debug tests to NoContext
As implemented, the KHR-GL4*.khr_debug.* tests can terminate the EGL
display used by other tests. As recommended, move these tests to the
KHR-NoContext.* group.
Since the test names are already changing, fix the spelling of
'receiving' in one test case.
Components: OpenGL
VK-GL-CTS Issue: 1062
Renamed tests:
KHR-GL4*.khr_debug.* -> KHR-NoContext.gl43.khr_debug.*
Change-Id: I766131f77206cad1cb34955426a81cf10b50e159
Tate Hornbeck [Mon, 22 Jan 2018 16:41:46 +0000 (11:41 -0500)]
Fix SSBO tests that assume VS is invocated once per vertex
Some implementations may execute vs shaders more than
once per vertex as allowed per spec.
Affects:
KHR-GLES31.core.shader_storage_buffer_object.advanced-usage-sync-vsfs
KHR-GLES31.core.shader_storage_buffer_object.basic-atomic-case3-vsfs
KHR-GLES31.core.shader_storage_buffer_object.basic-atomic-case4-vsfs
Components: OpenGL ES
VK-GL-CTS issue: 949
Change-Id: I40d4ef540c9868db43554f898b92c333a79eac18
Tapani Pälli [Mon, 26 Feb 2018 09:53:33 +0000 (11:53 +0200)]
Fix compute shader in KHR-NoContext.es32.robustness.getnuniform
Patch removes unnecessary difference in compute shader between
desktop and ES profiles, now both output to SSBO in same manner.
Problem with the shader on ES was that some compilers detected
declared shared variables as dead and optimized them away which
made uniforms inactive.
Components: OpenGL ES
VK-GL-CTS issue: 1036
Affects:
KHR-NoContext.es32.robustness.getnuniform
Change-Id: I8a4aeed926faa03a62c7973fe21ef979fb61bf53
Juan A. Suarez Romero [Fri, 23 Feb 2018 17:27:35 +0000 (17:27 +0000)]
RGB10_A2UI renderbuffer case requires integer data
Most of the cases in KHR-GL40.internalformat.renderbuffer.* test are
float-based, and thus the shaders as well as the functions used to read
the pixels are based on floats.
But for this specific format, we need to use integer data, both when the
shader writes out the colors as well as when we read it back with
readPixels(). And later we need to convert the results to floats in
order to compare with the expected results (which are float-based
values).
Components: OpenGL
VK-GL-CTS issue: 1001
Affects:
KHR-GLES*.core.internalformat.renderbuffer.*
KHR-GL*.internalformat.renderbuffer.*
Change-Id: I44c051817672614fb1ed6ed1927f917afcaadc96
Juan A. Suarez Romero [Tue, 27 Feb 2018 15:59:15 +0000 (15:59 +0000)]
Try to use a separated FBO for copy operation
If the FBO can not be created because the format under testing does not
allow it (FBO not complete), then the copy will be done from the main
FBO.
Components: OpenGL
VK-GL-CTS issue: 1000
Affects:
KHR-GLES*.core.internalformat.copy_tex_image.*
KHR-GL*.internalformat.copy_tex_image.*
Change-Id: I64f05a9d542abcc2abbeb865e5d638bfa64a0ad3
Juan A. Suarez Romero [Wed, 7 Feb 2018 16:47:54 +0000 (16:47 +0000)]
Add tests for OpSwitch operator
This create tests for SPIR-V OpSwitch with different integer types.
It provides tests using 32-bit and 64-bit signed and unsigned integers.
But it is designed to easily extend to other types, like 16-bit
integers.
New tests:
dEQP-VK.spirv_assembly.type.scalar.*.switch_*
VK-GL-CTS issue: 995
Components: Vulkan
Change-Id: I4940f5853c81dff0191c3d352ddbf439eb0ea560
Slawomir Cygan [Fri, 2 Mar 2018 16:37:20 +0000 (17:37 +0100)]
Check VkPhysicalDevicePushDescriptorPropertiesKHR
This adds test for getting VkPhysicalDevicePushDescriptorPropertiesKHR
using vkGetPhysicalDeviceProperties2. The test also verifies
maxPushDescriptors against spec requiremnts.
Components: Vulkan
VK-GL-CTS Issue: 1053
Affects:
dEQP-VK.api.info.get_physical_device_properties2.properties
Change-Id: I44ee1b0a3005d149cc7fb3c60414a412e36c45a4
Boris Zanin [Thu, 22 Feb 2018 10:30:42 +0000 (11:30 +0100)]
Remove debugs from vktSpvAsmGraphicsShaderTestUtil.cpp
Remove debug messages represented by two SPIR-V instructions:
* OpName
* OpMemberName
Affects:
* dEQP-VK.spirv_assembly.instruction.graphics.module.*
Components: Vulkan
VK-GL-CTS issue: 963
Change-Id: I3091f6f8772aecfdf6f7d799660dfc3175d6476f
Paavo Pessi [Wed, 7 Mar 2018 13:23:18 +0000 (15:23 +0200)]
Fix validation errors in pipeline tests
All validation errors found in dEQP-VK.pipeline.* were fixed.
Affects:
dEQP-VK.pipeline.stencil.*
dEQP-VK.pipeline.blend.*
dEQP-VK.pipeline.image.*
dEQP-VK.pipeline.sampler.*
dEQP-VK.pipeline.multisample.*
dEQP-VK.pipeline.vertex_input.*
dEQP-VK.pipeline.input_assembly.*
dEQP-VK.pipeline.timestamp.*
dEQP-VK.pipeline.cache.*
dEQP-VK.pipeline.render_to_image.*
dEQP-VK.pipeline.framebuffer_attachment.*
Components: Vulkan
VK-GL-CTS issue: 1057
Change-Id: I494ee517dbba529957593577f3927937fdab37a2
Paavo Pessi [Fri, 9 Mar 2018 10:28:18 +0000 (12:28 +0200)]
Fix invalid command pool create flag in image tests
Many image tests use a command pool that has been created using a
parameter of type VkCommandPoolResetFlagBits instead of
VkCommandPoolCreateFlags. The flag was changed to a proper type while
still retaining the original bit value.
Affects:
dEQP-VK.image.store.*
dEQP-VK.image.load_store.*
dEQP-VK.image.format_reinterpret.*
dEQP-VK.image.qualifiers.restrict.*
Components: Vulkan
VK-GL-CTS issue: 576
Change-Id: I99ecfafa6d320d262fec74508ad39ae3d2cb374c
Ari Suonpaa [Mon, 12 Feb 2018 08:19:41 +0000 (10:19 +0200)]
Combined duplicate code
There were several places where sparse binding and buffer to
image copies were done. These are now using common functions for
better code maintenance.
Affects:
dEQP-VK.glsl.*texture*
dEQP-VK.texture.*
dEQP-VK.spirv_assembly.*.compute.*
Components: Vulkan
VK-GL-CTS issue: 996
Change-Id: I53b01555ed6ef6e502b227e3cf026f2b05fd8f2a
Paavo Pessi [Fri, 2 Mar 2018 08:01:44 +0000 (10:01 +0200)]
Fix invalid memory scope in SPIR-V tests
Existing SPIR-V assembly tests using CrossDevice memory scope in atomic
operations were modified to use Device scope instead.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.opatomic.load
dEQP-VK.spirv_assembly.instruction.compute.opatomic.store
dEQP-VK.spirv_assembly.instruction.compute.opatomic_storage_buffer.load
dEQP-VK.spirv_assembly.instruction.compute.opatomic_storage_buffer.store
Components: Vulkan
VK-GL-CTS issue: 991
Change-Id: I30a2db6e4614296f08e2ed2c2717315aef0afb6e
Caio Marcelo de Oliveira Filho [Fri, 23 Mar 2018 00:16:06 +0000 (00:16 +0000)]
Handle gcc 7 warnings am:
3677383919
am:
2d4c86a43b
Change-Id: I661bc617fbc55db9c013a63dc337c431b263bd10
Caio Marcelo de Oliveira Filho [Fri, 23 Mar 2018 00:10:32 +0000 (00:10 +0000)]
Handle gcc 7 warnings
am:
3677383919
Change-Id: I058154400ec6755a9eaf873a6421942fcad4cd11
Robert Morell [Wed, 10 Jan 2018 21:31:33 +0000 (13:31 -0800)]
Fix XCreateWindow BadMatch with depth 32 visuals
For the common case of a depth 24 root window, when creating a window
with a visual of depth 32, attempting to use a depth of CopyFromParent
will result in a BadMatch error.
Fix this by passing the visual's depth to XCreateWindow explicitly --
fortunately the VisualInfo structure was already queried.
Components: Framework
VK-GL-CTS issue: 938
Change-Id: I54b142b6105c7f328e76d7ea0f9b01e635380e4e
(cherry picked from commit
af57c99056538393e99925d6c3bee0253889a7c3)
Piers Daniell [Thu, 15 Feb 2018 19:33:15 +0000 (12:33 -0700)]
Account for differences in nan with fp16 comparison
When comparing fp16 values it's not possible to use a bitwise
comparison because there can be many different bit patterns
representing nan values, and all nans are equal. This CL updates
the computeCheckBuffersFloats function which compares two
buffers of fp16 values to take into account different forms
of nan.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16_to_16.stress_test
Components: Vulkan
VK-GL-CTS issue: 1018
Change-Id: I77013b49ce070d9615b287eae24dd32731b314b1
(cherry picked from commit
92d5909ab99bc97dc2ae4dd67e1cfa592dafb246)
Caio Marcelo de Oliveira Filho [Thu, 22 Feb 2018 01:54:57 +0000 (17:54 -0800)]
Handle gcc 7 warnings
- "-Wimplicit-fallthrough" warns on case conditions that
fallthrough. GCC does have a way to accept conditions that have a
comment about falling through inside the cases, but the codebase has
other cases where a single comment explains the fallthrough for the
whole switch. This warning is being ignored. It was not possible to
use "-Wno-error=WARNING" because older GCCs fail -- but they do
accept "-Wno-WARNING" where WARNING is unknown (since at least gcc
4.6.4).
- "-Wint-in-bool-context" warns (among other things) about result of
multiplication being used in boolean context. Code was changed to
use de::max() instead.
- "-Wmaybe-uninitialized" warned about some attributes of a struct not
being initialized depending on the case. Code was changed to
initialize the struct in question.
Components: Framework, Vulkan
Bug: b/
74405145
Change-Id: Iabb26f01e047353c6e2a704ab27b673e85b185be
(cherry picked from commit
f1ee9253e64f7434cdba7c8ac048c0e9baccc133)
Kenneth Graunke [Sat, 9 Sep 2017 06:26:15 +0000 (23:26 -0700)]
Require GL_EXT_sRGB_write_control for GL_FRAMEBUFFER_SRGB enable/disable
This test required GL_EXT_sRGB_write_control or ES 3.2. But glEnable
and glDisable of GL_FRAMEBUFFER_SRGB requires the extension - ES 3.2
doesn't provide that functionality. ES 3.2 implementations without the
extension would fail. Now they report NotSupported.
Affects:
dEQP-GLES31.functional.fbo.srgb_write_control.framebuffer_srgb_enabled
Components: AOSP
Bug: b/
75898891
Change-Id: I9d6b3fba892288354620ecbbc51ef7a351507e43
(cherry picked from commit
f5bc215a968512ba967ce68cc3640c45bc776f2c)
Chris Forbes [Sat, 17 Mar 2018 01:07:42 +0000 (18:07 -0700)]
Merge remote-tracking branch 'aosp/master' into deqp-dev
Change-Id: Ia487f499b5e677146b0422c17a6aa00439ed3525
Gustavo Lima Chaves [Mon, 12 Feb 2018 01:19:30 +0000 (17:19 -0800)]
Add more context for SPIR-V build log outputs.
This can help newcomers write new SPIR-V tests.
VK-GL-CTS issue: 1029
Change-Id: I9673847a599839c61b15fe438b0e28b1c3294c32
Chris Forbes [Fri, 16 Mar 2018 20:17:54 +0000 (13:17 -0700)]
Merge remote-tracking branch 'khronos/master' into deqp-dev
Change-Id: I391929e9887ffa793eefacead5444fff103acbbb
Yunchao He [Fri, 16 Mar 2018 09:34:19 +0000 (17:34 +0800)]
Revise the context version for BindBufferRange tests
Shader storage buffer and stomic counter buffer can be supported
since ES 3.1, not ES 3.2.
Components: OpenGL
Affects:
dEQP-GLES31.functional.debug.negative_coverage.*.buffer.bind_buffer_range
Change-Id: I60a2d7c80e0e3adc88bc8cef78bf14bb6929f643
Caio Marcelo de Oliveira Filho [Sun, 7 Jan 2018 19:46:30 +0000 (11:46 -0800)]
Test using gl_ViewportIndex in a vertex shader
Needs VK_EXT_shader_viewport_index_layer extension. Test works by
setting up N viewports forming a grid and each pair of triangles is
assigned to one of the viewports. Colors are used to distinguish each
pair, and by consequence, each cell in the grid.
This test has some similarities with how the multi_viewport scissors
test in vulkan/fragment_ops/.
New tests:
dEQP-VK.draw.shader_viewport_index.vertex_shader_*
VK-GL-CTS issue: 1043
Components: Vulkan
Change-Id: I311012126f0f4acc18cc31350e16f1c36dd35c62
Paavo Pessi [Wed, 28 Feb 2018 12:13:58 +0000 (14:13 +0200)]
Test waiting for fences without waitAll
Two command buffers and two fences are created. Both command buffers
are submitted to a queue, and vkWaitForFences with waitAll set to
VK_FALSE is used to wait for either one of the fences to be signaled.
New tests:
dEQP-VK.synchronization.basic.fence.multi_waitall_false
Components: Vulkan
VK-GL-CTS issue: 1037
Change-Id: I78762b2561e8d28a9a4278a054cbe169af10366a
Paavo Pessi [Tue, 27 Feb 2018 13:00:42 +0000 (15:00 +0200)]
Test push constant ranges with overlapping shader stages
New tests were added to exercise push constant ranges where multiple
shader stages overlap. Offset and size of each push constant is
selected arbitrarily. Some ranges are only partially updated.
New tests:
dEQP-VK.pipeline.push_constant.graphics_pipeline.overlap_2_shaders_vert_frag
dEQP-VK.pipeline.push_constant.graphics_pipeline.overlap_3_shaders_vert_geom_frag
dEQP-VK.pipeline.push_constant.graphics_pipeline.overlap_4_shaders_vert_tess_frag
dEQP-VK.pipeline.push_constant.graphics_pipeline.overlap_5_shaders_vert_tess_geom_frag
Components: Vulkan
VK-GL-CTS issue: 1009
Change-Id: Ibcbf7f6f21a4827c3089719f06e02dde138f183b
Paavo Pessi [Wed, 28 Feb 2018 12:45:35 +0000 (14:45 +0200)]
Fix test with invalid viewport size
Viewport dimensions and scissor extent were changed to match the values
used in VkPositiveLayerTest.DestroyPipelineRenderPass.
Affects:
dEQP-VK.api.pipeline.renderpass.destroy_pipeline_renderpass
Components: Vulkan
VK-GL-CTS issue: 1045
Change-Id: Ie39c516237cf3a14078a83b0c51dc401c30f7672
Paavo Pessi [Tue, 13 Feb 2018 09:30:02 +0000 (11:30 +0200)]
Test pipeline layout lifetime
This test has the same functionality as
VkLayerTest.DescriptorSetCompatibility, which breaks some shipping
drivers in the validation tests.
The test creates a pipeline layout and uses that layout to create a
pipeline. The pipeline layout object is destroyed immediately after
binding the pipeline to a command buffer.
The test passes as long as no crash happens.
New tests:
dEQP-VK.api.pipeline.pipeline_layout.lifetime.graphics
dEQP-VK.api.pipeline.pipeline_layout.lifetime.compute
Components: Vulkan
VK-GL-CTS issue: 824
Change-Id: I0b72ad681528388577678b4e5dfe96eef6f3486e
Alexander Galazin [Wed, 14 Mar 2018 12:44:28 +0000 (13:44 +0100)]
Merge vk-gl-cts/opengl-cts-4.6.0 into vk-gl-cts/master
Change-Id: Ia75cc2e00a0502ab5b2d3fa83261cd9cf20839ba
Alexander Galazin [Wed, 14 Mar 2018 11:48:19 +0000 (12:48 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Change-Id: I87b9b049c6e21dc45629284cf78f02fc57a0317c
Alexander Galazin [Wed, 14 Mar 2018 11:44:53 +0000 (12:44 +0100)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4
Change-Id: Iff05f0c3ed7725c4cff850649a83b78d98b341e1
Paavo Pessi [Mon, 19 Feb 2018 13:00:05 +0000 (15:00 +0200)]
Add pipeline cache corner cases
Two new test cases were added. The first case creates a pipeline cache
using valid previously retrieved data, but sets the initial cache size
to zero.
The second case creates multiple pipeline caches using previously
retrieved data, which is valid apart from cache header version, vendor
ID, device ID and pipeline cache ID.
New tests:
dEQP-VK.pipeline.cache.misc_tests.zero_size_test
dEQP-VK.pipeline.cache.misc_tests.invalid_blob_test
Components: Vulkan
VK-GL-CTS issue: 1012
VK-GL-CTS public issue: 81
Change-Id: Ie28b10f97adc2e4b2d1a2239ec5c6c1d75416087
Alexander Galazin [Wed, 14 Mar 2018 08:46:20 +0000 (09:46 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.1 into vk-gl-cts/master
Change-Id: I768567546e111ed9af5e35293d4af079453abccf
Alexander Galazin [Wed, 14 Mar 2018 08:46:16 +0000 (09:46 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.0 into vk-gl-cts/vulkan-cts-1.1.1
Change-Id: Id0a9cedc7822a3b3206e162f217f790d087c3392
Alexander Galazin [Wed, 14 Mar 2018 08:38:20 +0000 (09:38 +0100)]
Fix GL CTS Readme
Update the README to state the correct version
of the required Android API
Components: OpenGL
Public issue: 86
Change-Id: I60d7b6952957ac6803864a16eed82c9f28e07e88
Arkadiusz Sarwa [Fri, 12 Jan 2018 14:13:30 +0000 (15:13 +0100)]
Add runtime time report of a CTS run
New section have been added to file TestResults.qpa.
"#beginTestsCasesTime" - section contains a time summary for groups.
bottleneck_report.py - script which helps to find bottlenecks in CTS
Components: Framework
VK-GL-CTS issue: 879
Change-Id: I73773d820ddcd0f5b3c50c2128b8961cd1227b0e
Caio Marcelo de Oliveira Filho [Mon, 12 Mar 2018 17:25:58 +0000 (10:25 -0700)]
Fetch new tags when fetching new Git sources
Change-Id: I1a906ebf2698eac33c3acbf1da74df9642b775a2
Component: Framework
(cherry picked from commit
204d597504c94fa52ed0f5a2c21895482236d5cc)
Caio Marcelo de Oliveira Filho [Mon, 12 Mar 2018 17:25:58 +0000 (10:25 -0700)]
Fetch new tags when fetching new Git sources
Change-Id: I1a906ebf2698eac33c3acbf1da74df9642b775a2
Component: Framework
Caio Marcelo de Oliveira Filho [Thu, 22 Feb 2018 01:22:46 +0000 (17:22 -0800)]
Use sys.executable instead of "python"
When Python scripts call other python scripts, prefer using whatever
interpreter was used for the topmost call instead of "python". In some
environments "python" is already pointing to a Python 3 interpreter.
Components: Framework
Change-Id: Ifba9b2965901ffcf9c1897ccabe5fa183f359707
Caio Marcelo de Oliveira Filho [Thu, 22 Feb 2018 01:54:57 +0000 (17:54 -0800)]
Handle gcc 7 warnings
- "-Wimplicit-fallthrough" warns on case conditions that
fallthrough. GCC does have a way to accept conditions that have a
comment about falling through inside the cases, but the codebase has
other cases where a single comment explains the fallthrough for the
whole switch. This warning is being ignored. It was not possible to
use "-Wno-error=WARNING" because older GCCs fail -- but they do
accept "-Wno-WARNING" where WARNING is unknown (since at least gcc
4.6.4).
- "-Wint-in-bool-context" warns (among other things) about result of
multiplication being used in boolean context. Code was changed to
use de::max() instead.
- "-Wmaybe-uninitialized" warned about some attributes of a struct not
being initialized depending on the case. Code was changed to
initialize the struct in question.
Components: Framework, Vulkan
Change-Id: Iabb26f01e047353c6e2a704ab27b673e85b185be
Piotr Byszewski [Tue, 27 Feb 2018 12:34:13 +0000 (13:34 +0100)]
Fix internal formats conversions
This change resolves Windows compilation errors that
were triggered by the use of snprintf. This function was
replaced with StringTemplate.
This change also fixes few warnings.
Components: OpenGL
Affects:
KHR-GLES3.copy_tex_image_conversions.*
Change-Id: I70c9fdaac3f971e563378a2bcffc65b5386ca914
Jari Komppa [Thu, 1 Mar 2018 12:49:25 +0000 (14:49 +0200)]
Replaced deprecated windows version detect
The old windows version reporting API has been deprecated and has been
lying since Windows 8.1 - all windows versions since that version have
been reported as Windows 8.0. (It is possible to add manifest files to
the executable to accept later windows versions, but that would require
the UUID of every existing and future versions of Windows).
There is no direct replacement, as Microsoft would prefer applications
to be written against available features instead of relying on Windows
version numbers.
The official workaround is to look at the version numbers in system DLL
files. In addition, the registry contains several strings which tell the
version number. This change attempts to do both, in case future Windows
versions change this behavior.
Windows can also lie about the bit-ness of the operating system; reading
the windows version from registry from a 32bit application may report
the operating system as 32 bit even if it's actually 64 bit. Separate
64-bit detect function is also included. (Hypothetical future 128 bit
Windows will likely report as 64 bit, but I'll leave that problem to the
future generations).
Affects:
dEQP-VK.info.platform
Components: Framework
VK-GL-CTS issue: 1044
Change-Id: I80062d6eefb14b2ce04818a6c3176db0b172419e
James Glanville [Thu, 22 Feb 2018 14:58:05 +0000 (14:58 +0000)]
Restrict alpha range for rgba5551 surfaces
The tests were blending against an rgba5551 surface and expecting alpha
to be quantized to 1 bit between every drawcall. The spec does not
forbid implementations to use higher precision internal representations
where this quantisation may not occur to the same extent. This change
restricts fragment outputs to be either 0 or 1, so the issue is avoided
Components: OpenGL
VK-GL-CTS issue: 988
Affects:
dEQP-EGL.functional.render.*rgba5551*
Change-Id: Id8fa5068931124d79ae7fa1b9b8a41845c73e507