Age | Commit message (Collapse) | Author | Files | Lines |
|
Exposes a bug in i965, fixed by
i965: fix noop_scissor range issue on width/height
Reviewed-by: Brian Paul <brianp@vmware.com>
|
|
Reviewed-by: Brian Paul <brianp@vmware.com>
|
|
In some cases we called it from piglit_display, and in others we had it
open-coded in a reshape function.
Reviewed-by: Brian Paul <brianp@vmware.com>
|
|
Some were wrong, and Pekka noted that we can simply leave them out and
Doxygen will do the right thing.
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
|
|
Reviewed-by: Brian Paul <brianp@vmware.com>
|
|
This includes both SSO and non-SSO versions of the same test, as they
can end up hitting slightly different code paths.
Note: this presently fails on all intel generations
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
|
|
The problem with the chosen depth values was that the depth values
naturally got viewport-transformed to values below 0.5 (for those
quads drawn) or above 0.5 (for those not drawn).
This allowed buggy implementations (in particular llvmpipe) to pass
the test, even though llvmpipe a) couldn't handle swapped near/far and
b) didn't actually do any clamping whatsoever in this particular case.
So change the depth values so that transformed values actually end up
"on the wrong side" of the depth range.
Tested-by: Ilia Mirkin <imirkin@alum.mit.edu>
|
|
Drivers can miss the need to refcount their GEM handles, and the
destroy of the image/texture pair for tex2 will result in tex1 no
longer being usable.
This fails to piglit_report_result(PIGLIT_FAIL) on vc4 (which is
missing the handle code), because tex1's shadow tiled temporary
already has the texture contents in it when the shadow linear->tiled
blit fails, but the driver does make a noisy warning on stderr. On
intel, if you drop the global name lookup in libdrm, the driver
exit()s due to the -EINVAL from the draw call.
v2: add to all.py.
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
I want to be able to sample more than one dmabuf in the scene.
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
It's a weird pair of things to do in one helper function, and I need
to be able to do them separately for the refcount test.
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
This will get reused from refcount testing.
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
Less code, and it may be useful if we want to extend the tests to
desktop at some point.
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
I need to reuse this part, without the destruction, for refcounting
tests.
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
Previously the dmabuf tests only worked on the intel driver. However,
thanks to the new GBM BO mapping interface by Rob Herring, we can make
a generic framework for other drivers.
Reviewed-by: Rob Clark <robdclark@gmail.com>
|
|
The tests try to use target mem type aligned access.
Generated tests pass (except vstore-half which skips) on intel(cpu), beignet, nvidia CUDA
v2: Move code to main function, update copyright
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Acked-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
|
|
Use explicit conversion from regexp matched array values
v2: distance between two half numbers is 8192 single float ulps
no need to place converted float in the middle of single precision range
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Acked-by: Tom Stellard <thomas.stellard@amd.com>
|
|
This changes gles3 the use the more standard bin variable rather than
the exe variable. The old version is still supported, but a deprecation
warning will be issued if they're used.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Rather than relying on just setting the option in the configuration file
turning on the functionality add a switch.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This also changes the environment variable of deqp-gles3, but adds a
deprecation warning if using the old environment variable and honors it.
At some point it should be removed. There is also a small change in the
default value of the mustpass variable in the conf file to reflect the
modern location of the mustpass lists.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This patch generalizes the mustpass list functionality in deqp_gles3.py.
While the idea is the same, this implementation is considerably
different than the version in deqp_gles3, since it bypasses calling the
binary to generate a test list altogether, and simply replaces the
iter_deqp_test_cases function by providing output that the make_profile
function can consume.
The end result is that this is simpler (though more LOC are added since
this actually has tests), and can be applied to gles2 and gles31.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
In the past piglit has added or removed options from that part of the
results without caring too much. The reason for this is that these
values are really meant for developers to manually inspect, and for
resuming. We don't support resuming a run on a different version of
piglit than it started (and that's crazy, we never will), so allowing
these values to change arbitrarily is fine.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This is required following a change in 8X multisample positions
in i965 driver.
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
|
|
This set focus on checking invalid structs
initializations. Specifically, adds a test to check that only implicit
conversions are perform and vector conversions of the type vec3 to
vec2 through dropping the z component are not allowed.
Acked-by: Timothy Arceri <timothy.arceri@collabora.com>
Signed-off-by: Andres Gomez <agomez@igalia.com>
|
|
This set focus on checking invalid structs construction. Specifically,
adds a test to check that only implicit conversions are perform and
vector conversions of the type vec3 to vec2 through dropping the z
component are not allowed.
Acked-by: Timothy Arceri <timothy.arceri@collabora.com>
Signed-off-by: Andres Gomez <agomez@igalia.com>
|
|
The test was trying to use timer queries on any desktop GL, even
though timer queries were a fairly late extension. Instead, check for
occlusion queries and use those, which should work on much more
hardware (GL 2.0).
Fixes test failure on vc4.
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
This adds the necessary bits to make dEQP-EGL work.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
Reviewed-by: Mark Janes <mark.a.janes@intel.com>
Tested-by: Mark Janes <mark.a.janes@intel.com>
|
|
Currently the python layer tries to dispatch shader_tests to the right
binary (gles2, gles3 or gl). But the implementation is pretty dumb. It
basically assumes either >= or == are the only operators used, and makes
wrong assignments for < or <=, which are allowed. Is also only
understands 2.0 and 3.0 as GLES versions, which is problematic.
This version uses the closes equivalent of a match statement that python
has, to try to pick the right GLES version, otherwise it uses the GL
version. It also shares this picking mechanism with the Fast Skip
mechanism, so they always have the same result.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
cc: mark.a.janes@intel.com
cc: currojerez@riseup.net
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
Fix for-loop-analysis warning.
khr_compressed_astc-sliced-3d-miptree.c:313:3: warning: variable 'block_dims' is incremented both in the loop header
and in the loop body [-Wfor-loop-analysis]
block_dims++;
^
khr_compressed_astc-sliced-3d-miptree.c:277:50: note: incremented here
for ( ; block_dims < ARRAY_SIZE(block_dim_str); block_dims++) {
^
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
|
|
Fix unused-const-variable warnings.
oes_compressed_astc-miptree-3d.c:108:20: warning: unused variable 'green' [-Wunused-const-variable]
static const float green[3] = {0.0, 1.0, 0.0};
^
oes_compressed_astc-miptree-3d.c:109:20: warning: unused variable 'red' [-Wunused-const-variable]
static const float red[3] = {1.0, 0.0, 0.0};
^
oes_compressed_astc-miptree-3d.c:110:20: warning: unused variable 'black' [-Wunused-const-variable]
static const float black[3] = {0.0, 0.0, 0.0};
^
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
|
|
v2: move the array definitions out of line (Ilia)
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
|
|
Test polygon stipple and its interaction with a simple fragment shader.
Exposes a bug that lived in Gallium's stipple emulation for a very long
time until it was hit by Kodi (reported by Christian König).
v2:
- require only OpenGL 2.1 (Brian Paul)
- use a larger window size for Windows (Brian Paul)
Reviewed-by: Brian Paul <brianp@vmware.com>
|
|
OpenGL originally never did sRGB decode/encode for BlitFramebuffer.
OpenGL ES 3.x has always done sRGB decode/encode for BlitFramebuffer.
OpenGL 4.x specifications attempted to unify this behavior, and
ultimately settled on doing decode/encode if GL_FRAMEBUFFER_SRGB is
enabled, which allows the full flexibility. In the process, 4.1,
4.2, early 4.3, and later 4.3 all had somewhat broken rules.
This test was originally written when the latest specification (early
4.3) contained completely contradictory rules, and so simply enforced
a "copy the data unchanged" policy. This patch updates it to follow
the rules they finally settled on for GL 4.4 and 4.5.
Thanks to Gu Yang and Miao Qiankun for their help analyzing the
differences between the various specifications.
This fixes 20 subtests with NVIDIA 367.35 on a GTX 980:
- blit {renderbuffer,texture} {linear_to_srgb,srgb_to_linear}
{downsample, msaa, scaled, single_sampled, upsample} enabled
This will break those test cases for Mesa drivers. I have patches
to make i965 handle the updated rules correctly.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
For a long time, Mesa has contained a hack to override color spaces to
sRGB when doing multisample resolves, with the following justification:
* It has been observed that mulitisample resolves produce slightly better
* looking images when averaging is done using destination format. NVIDIA's
* proprietary OpenGL driver also follow this approach. So, we choose to
* follow it in our driver.
*
* When multisampling, if the source and destination formats are equal
* (aside from the color space), we choose to blit in sRGB space to get
* this higher quality image.
I've never understood the purpose of this hack. It sort of makes sense
in a "never decode, never encode" world. But with the new GL 4.4 rules,
where encoding and decoding is optional, I'm not sure that it has any
place - the colorspaces should be application directed.
That said, this Piglit test appears to expect that resolves will be
done in the sRGB color space for TEST_TYPE_SRGB, so let's make it
explicitly request OpenGL to make that happen.
This makes a number of subtests pass on NVIDIA 367.35 on a GTX 980:
- accuracy {2,4,8,32} srgb depthstencil
- accuracy {2,4,8,32} srgb depthstencil linear
- accuracy {2,4,8,32} srgb small depthstencil
- accuracy {2,4,8,32} srgb small depthstencil linear
(The 16x and all_samples variants still fail on NVIDIA.)
No change on i965, as it currently ignores GL_FRAMEBUFFER_SRGB but
has the hack to do resolves in sRGB regardless. It will soon drop
the hack, but start respecting GL_FRAMEBUFFER_SRGB. Ditto for Gallium.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
This appears to be redundant with spec/arb_framebuffer_srgb/blit
which tests many more configurations.
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
minimum-maximums.txt was created by copy-and-pasting directly from the
GL_OES_geometry_shader extension followed by some by-hand cleanups.
This is why the names are not listed in alphabetic order (or in the
same order as the glsl-es-3.00 test).
v2: Add test to all.py. Suggested by Dylan.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
|
|
v2: Simplify the OES vs ARB string handling. Suggested by Tapani.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
desktop and ES
Previous to this, running the test on OpenGL ES 3.1 would generate
spurious warnings from Mesa:
Mesa: User error: GL_INVALID_ENUM in CreateShader(GL_GEOMETRY_SHADER)
This fixes that in a way that is understandable. It also allows the
desktop geometry shader check to be simplified.
This also prevents spurious failures when we enable
GL_OES_geometry_shaders in Mesa.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
I've found this to be rather useful with longer shader_test scripts.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
|
|
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
When using the GL binary to run GLES tests the appropriate ES
compatibility extension is added to the fast skipping requirements, but
not to the command line options. It needs to be added to the command
line options too, so that it will be skipped properly when not using the
fast-skipping layer.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Currently if a C style comment has a blank line in it:
/*
* my comment
*
* more
*/
The parser will choke and die. That's not good, so fix it.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This Mixin is currently broken because it doesn't handle warn statuses,
but it really needs to handle them because the underlying Test class is
going to turn a number of statuses it expects to be 'pass' into 'warn'
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This is currently being set to True, but valid options are "some",
"all", or "none".
This fixes the JSON validity unit test.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|