Alexander Galazin [Fri, 14 Sep 2018 17:36:46 +0000 (19:36 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5
Change-Id: I162d821fa9df2cee46e91754c7ebf68595f4ee87
Alexander Galazin [Fri, 14 Sep 2018 17:36:42 +0000 (19:36 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4
Change-Id: I9105f8b1353709392afeab3163f1025ca4d3abcc
Alexander Galazin [Fri, 14 Sep 2018 17:36:40 +0000 (19:36 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.2 into vk-gl-cts/opengl-es-cts-3.2.3
Change-Id: I3216622efcb450b7bea13b54661955b479d68e99
Tapani Pälli [Mon, 3 Sep 2018 07:10:04 +0000 (10:10 +0300)]
Allow reading GL_BYTE surfaces to GL_RGBA output.
EXT_render_snorm specification:
"For 8bit signed normalized fixed-point rendering surfaces, the
combination format RGBA and type BYTE is accepted. For a 16bit signed
normalized fixed point buffer, the combination RGBA and SHORT is
accepted.
OpenGL ES 3.1 specification:
"If G, B, or A values are not present in the internal format, they are
taken to be zero, zero, and one respectively."
Components: OpenGL ES
VK-GL-CTS issue: 1338
Affects: KHR-GLES3.packed_pixels*snorm
Change-Id: I48df036fc3da80a06e1adef32bd59dac5b551cec
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Lujin Wang [Tue, 28 Aug 2018 00:08:42 +0000 (17:08 -0700)]
Fix the memory stomp running *core.internalformat.texture2d.depth_stencil*
On QNX, we hit "Malloc Check Failed" and crash running CTS 3.2.5.0 with,
Test case 'KHR-GLES*.core.internalformat.texture2d.depth_stencil_unsigned_int_24_8_depth24_stencil8'..
Malloc Check Failed: :/builds/workspace/sdp700/build_aarch64/lib/c/alloc/dlist.c:1134
In InternalformatCaseBase::convertUInt_24_8(), two unsigned int data were modified
instead of one, which led to memory stomp and crash during the returning of function
InternalformatCaseBase::generateTextureData(). Rewrite function convertUInt_24_8()
to properly convert float color vec to unsigned_int_24_8_depth24_stencil8.
Affects:
KHR-GLES*.core.internalformat.texture2d.depth_stencil_unsigned_int_24_8_depth24_stencil8
Compoments: OpenGL
VK-GL-CTS issue: 1329
Change-Id: I95dfa2be272136e7ecf71b4ef49b43b90813f077
Yabin Zheng [Fri, 31 Aug 2018 07:35:16 +0000 (15:35 +0800)]
Add specific RGB10A2 data for BlendHSLHue and BlendHSLSaturation
Some original input test data will cause divide by 0 issue. This issue
is not handled by spec, but the test should assure the valid data.
Affects: KHR-GLES31.core.blend_equation_advanced.*
VK-GL-CTS issue: 919
Components: OpenGL
Change-Id: I6278ed77de0a38aede7d840bac7b7ec57e869110
Jiayuan Ren [Tue, 14 Aug 2018 19:09:01 +0000 (12:09 -0700)]
Fix: rendering complete times not monotonic
We run into an intermittent issue that two neighboring
frames have the same rendering complete timestamp.
The timers will always have finite granularity.
The timestamp is in nanosecond but the timer producing
these timestamps might not actually be able to produce
timestamps at 1ns resolution. When the timer used for
these events has not enough granularity, events that
happen very quickly right after one another will appear
as if they appear at the same point in time.
Two neighboring frames have the same timestamp is allowed.
Components: AOSP
VK-GL-CTS issue: 1311
Bug: b/
112778381
Affects:
dEQP-EGL.functional.get_frame_timestamps.*
(cherry picked from commit
59b6ba9bb2b8a280a30e931fb9b69f492650d14d)
Change-Id: I10c9f7d50d079fcad000baee028a97fea5b69c3c
Yabin Zheng [Mon, 13 Aug 2018 09:25:29 +0000 (17:25 +0800)]
Check the bits of channel when calling glCopyTexImage2D
This test copies some data from render target to a texture by
glCopyTexImage2D command. According to the GLES3.2 spec, "An
INVALID_OPERATION error is generated if the component sizes of
internalformat do not exactly match the corresponding component sizes of
the source buffer's effective internal format." when executing the
glCopyTexImage2D command.
Because GLES3.2 spec does not force GL_RGB10 to be a renderable format,
so in a test case, if GL_RGB10 isn't renderable, then the render target
format will be GL_RGBA8, but the texture format is GL_RGB10. So this
behavior conflicts with the spec.
I think we can check the status whether the component sizes of format
will match before calling glCopyTexImage2D.
If the GL_RGB10 is renderable by some companies, then it will call the
gl.copyTexImage2D command directly(skip the checking logical because of
completed FBO). If GL_RGB10 isn't renderable by other companies, then it
will check the corresponding component sizes of buffer between source
and dest(because of incompleted FBO).
Components: OpenGL
VK-GL-CTS issue: 1307
Affects: KHR-GLES2.core.internalformat.copy_tex_image.*
Change-Id: I91e6b6674506f2709f97796a541e203bd052030b
Yabin Zheng [Tue, 28 Aug 2018 09:09:24 +0000 (17:09 +0800)]
Modify the negative test related to glShaderBinary
Input 0 to binary parameter of glShaderBinary will lead to GL_INVALID_VALUE
accoridng to the GLES3.2 spec "An INVALID_VALUE error is generated if the
data pointed to by binary does not match the specified binaryformat."
The spec doesn't point out the order when we input more than one invalid
parameters. Add more conditions when checking the returned error messages.
Components: OpenGL
Affects: dEQP-GLES2.functional.negative_api.shader.shader_binary
VK-GL-CTS issue: 1331
Change-Id: I4c29a88175acf78f7a90262914890b9a53dbd3b5
Yabin Zheng [Wed, 16 May 2018 08:18:35 +0000 (16:18 +0800)]
Wrong statues effects KHR-GLES32.core.internalformat.* tests
glReadPixels() will report a GL_INVALID_OPERATION because of some wrong
status before.
Some tests(KHR-GLES32.core.geometry_shader) execute the commands on the
default FBO. If the geometry_shader tests remove the texture from color
attachment0 in the deinit() function, that will lead to an incomplete
default FBO. According to the GLES spec(May 14, 2018) 3.2(P406), When we
run some tests in the KHR-GLES32.core.internalformat.* suite, the
glReadPixels() will report a GL_INVALID_OPERATION because of "An
INVALID_OPERATION error is generated if the read framebuffer is
not framebuffer complete."
Taking into account the impact of different config ID on the tests, I
think creating a new FBO is not suitable for KHR-GLES32.core.internalformat.*
Components: OpenGL
Affects:
KHR-GLES32.core.internalformat.*
KHR-GLES32.core.geometry_shader.*
VK-GL-CTS issue: 1244
Change-Id: I0158df8bdea829048b8b35f151d16b7f47f057f8
Yabin Zheng [Fri, 27 Jul 2018 06:29:20 +0000 (14:29 +0800)]
Throw NotSupported if MAX_FRAGMENT_IMAGE_UNIFORMS = 0
GLES 3.1 implementations may expose MAX_FRAGMENT_IMAGE_UNIFORMS = 0
which would prevent KHR-GLES31.shaders.layout_location.*image.* tests
from running.
Components: OpenGL
Affects:
KHR-GLES31.shaders.layout_location.*
VK-GL-CTS issue: 1284
Change-Id: I41299b58da0e7ec46587f2893dfb4a3859516669
James Glanville [Wed, 4 Jul 2018 09:59:44 +0000 (10:59 +0100)]
Allow glFramebufferTexture2D with level!=0 in ES2 tests with ES3
These ES2 tests were expecting GL errors when attaching non-zero
levels to a framebuffer where GL_OES_fbo_render_mipmap is not
supported. This functionality is core in ES3 contexts, so the tests
much assume support for mippmapped rendering in this case.
Affects:
dEQP-GLES2.functional.negative_api.buffer.framebuffer_texture2d
dEQP-GLES2.functional.fbo.api.texture_levels
Components:
dEQP
VK-GL-CTS issue: 1263
Change-Id: I3dc7c8f1f2cc7efb5c227a0aec11983b185be03c
(cherry picked from commit
ccd2cb41bc3813de087747a7f173cd2c8d8180c2)
Alexander Galazin [Mon, 6 Aug 2018 06:55:21 +0000 (08:55 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5
Change-Id: I02ed0b86e13f8210020fbfd8baaca74b60a1551f
Tate Hornbeck [Fri, 20 Jul 2018 16:20:50 +0000 (12:20 -0400)]
Update CTS version of gl.xml
Pulls in fix for getGraphicsResetStatusEXT
Components: OpenGL
VK-GL-CTS issue: 1247
Affects:
dEQP-EGL.functional.robustness.create_context.no_reset_notification
Change-Id: I3081d0b6dbfa4436e29cb7b4d52840575f9d40a0
Alexander Galazin [Fri, 27 Jul 2018 10:54:39 +0000 (12:54 +0200)]
Update GLES mustpass
Components: OpenGL
Change-Id: Id6a3d2dd92e70b7b9729bda74f8caaa2b8e91527
Yabin Zheng [Tue, 17 Jul 2018 06:41:57 +0000 (14:41 +0800)]
Update transform feedback tests
GLES3.2 spec made a change in 2018/5/14 version, that The
TRANSFORM_FEEDBACK_BUFFER_BINDING generic buffer binding point has now
been moved to context state, rather than per-object state, and should
be unaffected by glBindTransformFeedback command.
Some tests follow the old standard that they use glBindTransformFeedback
function to change the binding point status.
Components: OpenGL
Affects: KHR-GLES31.core.vertex_attrib_binding.advanced-iterations
VK-GL-CTS issue: 1275
Change-Id: I9a0296ef273321ef8b039986b92baf2353838a99
Juan A. Suarez Romero [Thu, 7 Jun 2018 10:22:18 +0000 (10:22 +0000)]
Call eglSwapBuffers() to ensure wayland surface is attached
Resize surface tests initially create a window and a surface, ensure
that both has the same size, then perform a window resize, and ensure
that both windows and the surface has the same size.
When using a Wayland target, checking the window size is done calling
wl_egl_window_get_attached_size(). This actually returns the size of the
attached buffer, which is done calling wl_surface_attach().
But wl_surface_attach() is only guaranteed to be done when calling
eglSwapBuffers(); if wl_egl_window_get_attached_size() is invoked
before, it can return 0, as no buffer is attached yet.
To avoid this problem, ensure a buffer is attached before getting the
window size.
Affects:
dEQP-EGL.functional.resize.surface_size.*
Components: OpenGL
VK-GL-CTS issue: 594
Change-Id: I74fb9a10b269ea1e1f7a63457fb0df76f8604547
Fei Yang [Mon, 2 Jul 2018 08:48:40 +0000 (16:48 +0800)]
Fix dEQP-GLES3.functional.fbo.multiview.*
When the width of render target is an odd value, these tests failed.
The reason is these tests set default sample parameters and sample from
a 512x512 surface, where the left/right views have different colors.
When the width of render target is an odd value, the color of central
line is undefined.
As these tests' purpose is mainly want to verify whether the left/right
views have the different color, but not exactly care what the central
line is, a simple solution is just skip the check of central line.
Components: OpenGL
VK-GL-CTS issue: 1256
Affects: dEQP-GLES3.functional.fbo.multiview.*
Change-Id: I62c86dc7269864a3919b11a331178bfc54d65ab0
Yabin Zheng [Tue, 22 May 2018 03:02:27 +0000 (11:02 +0800)]
Loosen threshold in Texture3D tests
The verification function should consider both src and dst formats
when computing allowed error threshold.
Components: OpenGL
Affects:
KHR-GLES2.texture_3d.sub_image.*
VK-GL-CTS issue: 1243
Change-Id: Ie53aed63724aa75a0da697e30e7625a309acf76b
Yabin Zheng [Fri, 22 Jun 2018 01:50:06 +0000 (09:50 +0800)]
Some glCopyTexSubImage3D related tests conflict with GLES3.2 spec
According to the GLES3.2 spec, An INVALID_OPERATION error is generated if the
component sizes of internalformat do not exactly match the corresponding
component sizes of the source buffer's effective internal format when call the
glCopyTExSubImage3D function.
The test format is GL_RGBA8, while different config ID will result in different
format in the render buffer. The number of channel bits of some format are not
equal to GL_RGBA8. So we should add a new FBO to restrict the test behavior.
Components: OpenGL
Affects: KHR-GLES2.texture_3d.copy_sub_image.*
VK-GL-CTS issue: 1240
Change-Id: I35c066fce990038e95da1e04197d659929fd8e86
Lujin Wang [Tue, 26 Jun 2018 18:47:39 +0000 (11:47 -0700)]
Fix swap_buffers_with_damage.resize* hang on X11
In SwapBuffersWithDamageTest, the second time setSurfaceSize() was
called, because the size values were the same as the first call, the
test would hang with XNextEvent() in XlibWindow::setDimensions() waiting
for a ConfigureNotify event that Xserver would not deliver in
ConfigureWindow() if size was not changed.
Changing the if conditions causes size values to change for neighboring
setSurfaceSize calls and resolves the hang.
Affects:
dEQP-EGL.functional.swap_buffers_with_damage.resize*
Components: egl
VK-GL-CTS issue: 1238
Change-Id: I78177ffbef4f7f380d850ad43d83317f82401c7b
Oliver Wohlmuth [Fri, 6 Jul 2018 12:19:17 +0000 (14:19 +0200)]
Correct getProcAddress() handling in robustness tests
The below robustness tests don't use the OpenGL ES extension name when
calling getProcAddress() in an OpenGL ES environment. This change fixes
it by removing the getProcAddress() calls and use gl.XXX() to call these
functions. gl.XXX() takes care of the context it is running in.
Affects:
KHR-NoContext.*.robustness.no_reset_notification
KHR-NoContext.*.robustness.getnuniform
KHR-NoContext.*.robustness.readnpixels
Components: OpenGL
VK-GL-CTS issue: 1267
Change-Id: I4ed18990626f1dd744eebf6b99c18a60a29dad5f
Tate Hornbeck [Wed, 27 Jun 2018 16:53:11 +0000 (12:53 -0400)]
Remove shaders.negative.unused_uniform_precision_matching
The GLSL spec was updated to "the types, precisions and any location
specifiers of all statically used uniform variables with the same name
must match across shaders that are linked into a single program."
which makes the unused_uniform_precision_matching test invalid.
Updating this test to use statically used uniforms would be
redundant to used_uniform_precision_matching.
Components: OpenGL
VK-GL-CTS issue: 1249
Affects:
KHR-GLES32.shaders.negative.unused_uniform_precision_matching
Change-Id: I6a60c9355144f1d539a6463d913844129e6dfc8d
Juan A. Suarez Romero [Mon, 25 Jun 2018 15:22:48 +0000 (17:22 +0200)]
Shaders Derivate Tests: fix threshold
Derivate tests are calculating the threshold used for validating results
by taking in account a scale. Apparently this is incorrect, and is
causing some tests to fail.
A similar situation happened in Vulkan, and the proper fix was to do not
take in account the scale for the threshold calculation. Hence, applying
the same fix here fixes all the failing tests.
Affects:
dEQP-GLES3.functional.shaders.derivate.*
dEQP-GLES31.functional.shaders.derivate.*
Components: OpenGL
VK-GL-CTS issue: 1237
Change-Id: I106e36a708a6f75768c15ccdb4b064eb562cb28f
Alexander Galazin [Wed, 27 Jun 2018 07:59:49 +0000 (09:59 +0200)]
Exclude tests causing OOM
Components: OpenGL
Affects:
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_separate_grid_1000x1000_drawcount_5000
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_combined_grid_1000x1000_drawcount_5000
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawelements_separate_grid_1000x1000_drawcount_5000
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawelements_combined_grid_1000x1000_drawcount_5000
VK-GL-CTS issue: 1241
Change-Id: I3bc753391e2739387879ca117e9da29c98286cec
Juan A. Suarez Romero [Tue, 19 Jun 2018 07:23:13 +0000 (07:23 +0000)]
Allow glReadPixels() differences due precision errors
When comparing the results from glReadPixels() passing user-space memory
and using a PBO, there could be differences due drivers implementation
following different paths, and thus generating differences because of
precision errors.
Like in dEQP-GLES3.functional.read_pixels.* tests, add a threshold under
which the differences are acceptable.
Affects:
dEQP-GLES3.functional.pbo.*
Components: OpenGL
VK-GL-CTS issue: 1228
Change-Id: I7c9ac5de359cff8deba039b010357eae0da3eaaf
Yabin Zheng [Thu, 21 Jun 2018 01:41:20 +0000 (09:41 +0800)]
Robust_buffer_access_behavior.texel_fetch relies on undefined behavior
The failed test behavior is :
Create a mipmap texture as a dst texture and attach its level 1 texture
to the framebuffer colorattachment0 as render target. Create a mipmap
texture as a src texture and fill some data to its level 1 texture.
Use "texelFetch" in the fragment shader to sample level 1 source
texture(mipmap) and draw it to the dst texture.
According to the GLES3.2 spec:
The results of texelFetch builtins are undefined if the computed level
of detail is not the texture's base level and the texture's minification
filter is NEAREST or LINEAR.
Modify the test for the mipmap case.
Components: OpenGL
Affects:
KHR-NoContext.es32.robust_buffer_access_behavior.texel_fetch
VK-GL-CTS issue: 1236
Change-Id: Id67ea894a3dd423bba611ccc11a131b80d38fc64
Juan A. Suarez Romero [Wed, 20 Jun 2018 16:37:58 +0000 (18:37 +0200)]
Increase threshold GLES3 blend tests
The threshold used in dEQP-GLES3.functional.fragment_ops.blend.* is
computed using a non-scientific ad hoc formula.
As stated in a comment, when using few color bits, the blend operations
brings extra inaccuracy, which requires to increase the threshold.
Apparently, the current threshold value is not enough when using a RGB565
configuration, and it should be increased.
Moreover, the threshold used in GLES2 blend tests is a bit bigger, and
using this threshold for the GLES3 blend tests fixes the problems with
RGB565.
Thus this commit applies the GLES2 blend tests threshold to GLES3 tests.
Affects:
dEQP-GLES3.functional.fragment_ops.blend.default_framebuffer.*
Components: OpenGL
VK-GL-CTS issue: 1230
Change-Id: I7269768a9591fc70532312d8cc13481252a6f6e2
Juan A. Suarez Romero [Fri, 8 Jun 2018 08:27:33 +0000 (08:27 +0000)]
Do not fail if no config is available
If the backend does not support any EGL config with the required
attributes, make the test UnSupported rather than Fail.
Affects:
dEQP-EGL.functional.wide_color.*
Components: OpenGL
VK-GL-CTS issue: 1210
Change-Id: Ic3c37e68530b4ac0fac72e713023542645bd8288
Juan A. Suarez Romero [Wed, 6 Jun 2018 14:29:37 +0000 (14:29 +0000)]
Get an EGLConfig supporting pbuffers
Several tests create pbuffer surfaces, but they are asking for EGL
configuration that supports windows, instead of pbuffers.
Affected tests:
dEQP-EGL.functional.multicontext.*
dEQP-EGL.functional.sharing.gles2.multithread.*
Components: OpenGL
VK-GL-CTS issue: 1204
Change-Id: Ifcee406eb37cbf5fb16ffba851247772909992b6
Alexander Galazin [Sun, 8 Jul 2018 12:45:02 +0000 (14:45 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5
Change-Id: I7c25701183541186be93af679e622f169f5d37e1
Alexander Galazin [Sun, 8 Jul 2018 12:44:59 +0000 (14:44 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.3 into vk-gl-cts/opengl-es-cts-3.2.4
Change-Id: Ice7c3e12cfbc1982ab7d9e363670d81c77c6e7e4
Alexander Galazin [Wed, 13 Jun 2018 12:33:29 +0000 (14:33 +0200)]
Remove undefined EGL test cases
Affects:
dEQP-EGL.functional.reusable_sync.invalid.wait_server_invalid_flag
dEQP-EGL.functional.reusable_sync.valid.wait_server
VK-GL-CTS issue: 1196
Change-Id: I5f2484242139a2589a47413076555fba9fc1fa30
Alexander Galazin [Wed, 13 Jun 2018 12:33:29 +0000 (14:33 +0200)]
Remove undefined EGL test cases
Affects:
dEQP-EGL.functional.reusable_sync.invalid.wait_server_invalid_flag
dEQP-EGL.functional.reusable_sync.valid.wait_server
VK-GL-CTS issue: 1196
Change-Id: I5f2484242139a2589a47413076555fba9fc1fa30
Alexander Galazin [Wed, 13 Jun 2018 12:33:29 +0000 (14:33 +0200)]
Remove undefined EGL test cases
Affects:
dEQP-EGL.functional.reusable_sync.invalid.wait_server_invalid_flag
dEQP-EGL.functional.reusable_sync.valid.wait_server
VK-GL-CTS issue: 1196
Change-Id: I5f2484242139a2589a47413076555fba9fc1fa30
Juan A. Suarez Romero [Tue, 29 May 2018 15:03:13 +0000 (15:03 +0000)]
wayland: search for GLESv1 toggle DEQP_SUPPORT_GLES1 on if found
Some tests require GLES1 support and report test failure if support
has not been built.
Search for GLES1 libraries and enable it.
Components: Framework
VK-GL-CTS issue: 1161
Change-Id: Iea0bb9f9362a4529cbf452efddd06b417cd74c76
Yabin Zheng [Wed, 6 Jun 2018 03:09:25 +0000 (11:09 +0800)]
generatemipmap_zero_level_array_compressed may reuse stale object
The test should add a new individual texture object for this sub-test.
Components: OpenGL
Affects:
dEQP-GLES2.functional.negative_api.texture.generatemipmap_zero_level_array_compressed
VK-GL-CTS issue: 1206
Change-Id: I3af22e04c110f7e08a90596c198a9ae3da76fcdc
Alexander Galazin [Fri, 1 Jun 2018 09:22:21 +0000 (11:22 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/opengl-es-cts-3.2.5
Change-Id: Ie074683ba2b3818d0ceff54719c40e259deb3e71
Juan A. Suarez Romero [Mon, 14 May 2018 15:24:04 +0000 (15:24 +0000)]
Skip BC/DXT formats in Texture3D tests
These formats only supports 2D images.
Affects:
KHR-GLES2.texture_3d.compressed_texture.negative_compressed_tex_image
KHR-GLES2.texture_3d.compressed_texture.negative_compressed_tex_sub_image
Components: OpenGL
VK-GL-CTS issue: 1163
Change-Id: I806dccfdbb2969b51c0ee9a1010c04107154733a
(cherry picked from commit
a0b8363a7837546c73e4d30a6c6d37da21ea8645)
Juan A. Suarez Romero [Wed, 16 May 2018 11:01:52 +0000 (11:01 +0000)]
GL_SRG8_ALPHA8 also supported in OpenGL ES 3.0+
dEQP-GLES2.functional.fbo.completeness.renderable.texture.color0.srgb8_alpha8
assumes that using GL_SRGB8_ALPHA8 in GLES2 should fail unless proper
extensions are supported.
But the OpenGL ES context created can be either 2.0 or an upper version,
and upper versions (3.0+) supports this format without extensions.
Thus, if OpenGL ES 3.0+ context is returned, this test should assume
that rendering is possible.
This is an extension of fix done in Change-ID
Ibb95736959ff9d5b0ff972ccf3983abc98795be3.
Affectd tests:
dEQP-GLES2.functional.fbo.completeness.renderable.texture.color0.srgb8_alpha8
Components: OpenGL
VK-GL-CTS issue: 1137
Change-Id: I733a8595b1eba7756787cde4a6bca2391dc345d7
(cherry picked from commit
dd951adf61b3b6ad6cdab92b26b00c6931235681)
Yabin Zheng [Wed, 21 Mar 2018 01:38:40 +0000 (09:38 +0800)]
Fix gl_FragData[u_index] test in OpenGL ES 3.x context
The test is valid if GL_EXT_draw_buffers or GL_NV_draw_buffers
is supported
Affects:
dEQP-GLES3.functional.shaders.fragdata.draw_buffers
Components: OpenGL
VK-GL-CTS issue: 1168
Change-Id: I44b41330ca37614920ed1cb0d6d021a8bc1e0fa3
Juan A. Suarez Romero [Thu, 19 Apr 2018 15:35:40 +0000 (15:35 +0000)]
GL_SRG8_ALPHA8 also supported in OpenGL ES 3.0+
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.srgb8_alpha8
assumes that using GL_SRGB8_ALPHA8 format in RenderBuffer should fail
for OpenGL ES 2.0 because it is not supported in the specification,
unless either EXT_sRGB or EXT_sRGB_write_control are implemented, as
they add this format as supported.
But when creating the OpenGL context, it can be either 2.0 or an upper
version. If 3.0+ is returned, this version supports this format without
those extensions, and thus the test should pass.
So this change ensures that if OpenGL ES 3.0+ context is returned, then
the use of GL_SRGB8_ALPHA8 in RenderBuffer should work.
Affected tests:
dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.srgb8_alpha8
Components: OpenGL
VK-GL-CTS issue: 1137
Change-Id: Ibb95736959ff9d5b0ff972ccf3983abc98795be3
(cherry picked from commit
a72652c15bbb6bbeed3fdf357630166095c44d91)
James Glanville [Tue, 24 Apr 2018 21:26:17 +0000 (22:26 +0100)]
Remove some problematic texture_functions tests
Some of the tests in dEQP-GLES3.functional.shaders.texture_functions
are overly sensitive to rounding modes and precision of the CPU
reference implementation. For this reason they were removed from
AOSP. This change removes them from mustpass to match.
VK-GL-CTS issue: 1146
Components: OpenGL
Affects:
dEQP-GLES3.functional.shaders.texture_functions.texturelodoffset.usampler2darray_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureprojlodoffset.isampler3d_vertex
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler3d_bias_fixed_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.sampler3d_bias_float_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.isampler3d_bias_fragment
dEQP-GLES3.functional.shaders.texture_functions.textureprojoffset.usampler3d_bias_fragment
Change-Id: Id6bfc025a350deb0914d27151e0bae88b42710b6
Chris Forbes [Wed, 2 May 2018 23:31:10 +0000 (16:31 -0700)]
Move unspecified-precision tests from ES2/ES3 to ES3.1
Got significant pushback from vendors about enforcing these tests on
ES2/ES3 -- ends up being a vendor choice between breaking shipping
content or failing CTS.
Moved all of these tests to ES3.1 only as a compromise.
Change-Id: I5a827064472f73908b01fa85e0097bda21038136
Components: AOSP
(cherry picked from commit
047891af31d1c8827a84e49e81b5b526ee5ee485)
Juan A. Suarez Romero [Thu, 10 May 2018 16:54:21 +0000 (16:54 +0000)]
Remove line expression tests
Using #line directive with an expression is considered as undefined
behaviour. Thus, remove these tests.
Removed:
dEQP-GLES2.functional.shaders.preprocessor.builtin.line_and_file_expression_fragment
dEQP-GLES2.functional.shaders.preprocessor.builtin.line_and_file_expression_vertex
dEQP-GLES2.functional.shaders.preprocessor.builtin.line_expression_fragment
dEQP-GLES2.functional.shaders.preprocessor.builtin.line_expression_vertex
dEQP-GLES3.functional.shaders.preprocessor.builtin.line_and_file_expression_fragment
dEQP-GLES3.functional.shaders.preprocessor.builtin.line_and_file_expression_vertex
dEQP-GLES3.functional.shaders.preprocessor.builtin.line_expression_fragment
dEQP-GLES3.functional.shaders.preprocessor.builtin.line_expression_vertex
Components: OpenGL
VK-GL-CTS issue: 1145
Change-Id: Ib8cb58a8e712397114eb33d8d36c1957b3f5e9b0
Mark Adams [Mon, 16 Apr 2018 20:39:06 +0000 (16:39 -0400)]
Fix window size issues in several new tests
Some of the new tests added in the last 6 months fail when run with
non-default window sizes. In two cases, the tests were hardcoded to use
64x64 without checking the underlying size and thus could end up
with corruption if the window size was smaller.
In another case, the test changes the framebuffer to zero mid-test
instead of to the default framebuffer, resulting in invalid results
with deqp-surface-type=fbo.
Finally, the generated texture data's alpha is intended to always
be 1.0, but it can vary slightly due to numerical instability
depending on the window size. It is now hardcoded to ensure we
get the intended result.
VK-GL-CTS issue: 1126
Components: OpenGL
Affects:
KHR-GL*.internalformat.renderbuffer.*
KHR-GL*.internalformat.texture2d.*
KHR-GLES*.shaders.aggressive_optimizations.*
Change-Id: I3c1779cc7818ba5b1a798ec683af2780eeb9c9f4
Mark Adams [Mon, 23 Apr 2018 16:27:14 +0000 (12:27 -0400)]
Re-remove negative ES2 tests
As per previous WG decision.
Components: OpenGL
Affects:
dEQP-GLES2.functional.shaders.texture_functions.invalid.texture2d_bias_in_vertex
dEQP-GLES2.functional.shaders.texture_functions.invalid.texturecube_bias_in_vertex
dEQP-GLES2.functional.shaders.texture_functions.invalid.texture2dlod_in_fragment
dEQP-GLES2.functional.shaders.constant_expressions.invalid.precision_specifier
Change-Id: I9c2640fd30b52c3d0aa7e957ea52249e213b2096
Jamie Madill [Mon, 16 Apr 2018 17:26:06 +0000 (13:26 -0400)]
GLES 2/3: Fix masked color clear tests.
This corrects the generating truth table to use the proper flags
for using a non-scissored masked clear.
Components: OpenGL
Affects:
dEQP-GLES2.functional.color_clear.masked_rgb
dEQP-GLES2.functional.color_clear.masked_rgba
dEQP-GLES3.functional.color_clear.masked_rgb
dEQP-GLES3.functional.color_clear.masked_rgba
Google bug: b/
78103598
VK-GL-CTS issue: 1125
Change-Id: I8b9e6db49ddfd76b887d1d7825caa005ab0bbb0c
Graeme Leese [Mon, 16 Apr 2018 15:04:07 +0000 (16:04 +0100)]
Use layered image bindings correctly
Where the shader uses, for example, image3d the image binding in the API
must be layered, otherwise behaviour is undefined.
Components: OpenGL
Affects: KHR-GLES31.shaders.layout_location.*
VK-GL-CTS Issue: 1123
Change-Id: I8267428d847d426945f1356bd654fb4f6c374881
Alexander Galazin [Thu, 12 Apr 2018 10:21:17 +0000 (12:21 +0200)]
Add OpenGL ES CTS 3.2.5.x mustpass
Components: OpenGL
Change-Id: I860e4f6ee17c854066868f6b00e3cb0f41fb357b
Alexander Galazin [Thu, 12 Apr 2018 08:15:01 +0000 (10:15 +0200)]
Merge vk-gl-cts/opengl-es-cts-3.2.4 into vk-gl-cts/master
Change-Id: I312b8f9df9f294a1bd5a63a7d5bba8bd5ae6da22
Tapani Pälli [Thu, 5 Apr 2018 05:13:46 +0000 (08:13 +0300)]
Prefer KHR entrypoints instead of EXT for robustness tests
When resolving function entrypoints, framework resolves EXT
entrypoints after KHR to the same pointers. There are drivers that
implement only KHR entrypoints, prefer KHR over EXT so that KHR
entrypoints will be the ones used if both extensions are supported
by the driver.
Components: OpenGL ES
VK-GL-CTS issue: 1107
Affects:
KHR-NoContext.es32.robustness.getnuniform
KHR-NoContext.es32.robustness.readnpixels
Change-Id: Iec5f7cbdd53061e105b3445f7613ee41fccc4553
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Mika Väinölä [Tue, 20 Mar 2018 11:40:57 +0000 (13:40 +0200)]
Fix GCC 7 implicit fallthrough warnings
GCC 7 with -Wextra or -Wimplicit-fallthrough enabled warns when
a switch case falls through. For cases where this is intentional
the warning can be suppressed with a comment. Breaks and returns
were also added for cases which end in DE_FATAL.
Removing a fallthrough in vktSparseResourcesShaderIntrinsics.cpp
resulted in new test cases.
Affects: *
New tests:
dEQP-VK.sparse_resources.shader_intrinsics.3d_sparse_fetch.*
Components: Framework, Vulkan, OpenGL
VK-GL-CTS issue: 1067
Change-Id: I0306f96cf3a50e85144b4dd22a9a88cd908607d3
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