Age | Commit message (Collapse) | Author | Files | Lines |
|
This patch changes where the OpenCL tests get their run_concurrent flag
from. After this patch it is computed automatically, leaving no need to
set the flag manually unless one wants to force a non default behavior
for their platform.
v2: - fix some formatting
XXX: This assumes Thomas Stellard's
"opencv: Automatically run tests concurrently..." patch
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This simplifies a egl specific tests.
|
|
This allows the simplification of a large number of tests, reducing them
to one argument, or at least reducing the number of lines that they
occupy (or should occupy with reasonable line wrapping).
|
|
This adds the ability for the group_manager method to take additional
keyword arguments that are passed to the underlying Test constructor.
This allows groups that all need the same arguments (say platform
requirements), but be passed to the constructor and be added by the
adder.
>>> prof = TestProfile()
>>> with prof.group_manater(Test, 'group', required_platforms=['glx']) as g:
... g(['glx-foobar'])
>>> prof.test_list['group/glx-foobar'].required-platforms == ['glx']
True
|
|
This removes the tests attribute from TestProfile, which has been
deprecated for some time. The problem with tests is that it uses a
nested tree structure, which has to be flattened before tests can be
run. This creates a significant amount of overhead.
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>
TODO: tests this..
|
|
This drops some nested functions, and makes a few calls simpler.
TODO: Test this...
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
v2: - Fix function to work if run_concurrent is not set
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This works much like the shader_test and glsl parser test options, the
difference being that rather than searching the whole tree only the
directories with asmparser tests are searched.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This patch is massive, with a huge amount of churn, because it rewrites almost
the entirety of all.py. It has to touch all of the helper functions as well. Of
these I modified them appropriately or removed them. Criteria for removal was
based on the complexity of the wrapper, and the frequency of use. Very simple
functions or those used only a couple of times were removed.
v2: - remove duplicate tests entries.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This adds a very powerful method to the TestProfile class,
group_manager. This group_manager method is a context_manager (it's used
with the 'with' statement), and is passed a test class and a flattened
group name (such as one returned by grouptools.join), and yields a
callable that is used to add tests to the profile.
This gives us a lot of advantages. First, it means that tests are added
in a context, so if we need to define data structures for adding tests
to a specific group (say a list of texture formats supported by a
specific version of GL), that data structure is defined in a nested
scope, so it cannot be accidentally be used in a different group.
Second, it means not passing a group around anymore, in fact, it creates
an abstraction on top of the group data structure so it doesn't matter
how we're representing it. Third the function itself is more flexible
than anything we've had before. It can either take an explicit name, or
it can call ' '.join() on the arguments to the Test, and use that as a
name, which can help make Test assignments much less verbose.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This makes it a lot easier to read and work with all.py, which is still
absolutely massive.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
These tests are already formated using grouptools, with no intermediate
tree structures. Moving them to the flat test list reduces the amount of
time spent migrating them to test_list before running tests.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Fix GCC unused-variable warning.
resource-index.c: In function ‘piglit_init’:
resource-index.c:211:23: warning: unused variable ‘i’ [-Wunused-variable]
GLuint prog, shader, i;
^
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
Don't look up uniform names for non-zero array elements, as this is illegal per GL4.5.
>From the discussion of GetProgramResourceIndex in the GL4.5 spec:
If name exactly matches the name string of one of the active resources for
programInterface, the index of the matched resource is returned. Additionally, if
name would exactly match the name string of an active resource if "[0]" were
appended to name, the index of the matched resource is returned. Otherwise, name
is considered not to be the name of an active resource, and INVALID_INDEX is
returned. Note that if an interface enumerates a single active resource list entry for
an array variable (e.g., "a[0]"), a name identifying any array element other than
the first (e.g., "a[1]") is not considered to match.
Instead, strip the "[xxx]" part of the name for the lookup.
The NVIDIA proprietary driver enforces this rule of the specification, while Mesa
is more permissive. Piglit shouldn't rely on the implementation being lax.
Signed-off-by: Arthur Huillet <ahuillet@nvidia.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
readpix.c:238:10: warning: using integer absolute value function 'abs' when argument is of floating point type [-Wabsolute-value]
dd = abs(actual - expected);
^
readpix.c:238:10: note: use function 'fabs' instead
dd = abs(actual - expected);
^~~
fabs
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
|
|
getcompressedtextureimage.c:121:7: warning: using floating point absolute value function 'fabs' when argument is of integer type [-Wabsolute-value]
if (fabs((int)data[i] - (int)expected[i]) > tolerance) {
^
getcompressedtextureimage.c:121:7: note: use function 'abs' instead
if (fabs((int)data[i] - (int)expected[i]) > tolerance) {
^~~~
abs
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
|
|
These are needed to pass tests, but they weren't being installed for
running out of tree. Fixes ~100 warns when running out of tree with
beignet. Trivial.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
By flattening the if statements we cut 213 instructions from the
fragment shader (601 -> 388, or 35%), and we remove all register
spilling on i965.
Reduces runtime of "ext_transform_feedback-max-varyings" by
-73.0547% +/- 0.682694% (n=27).
Reviewed-by: Mark Janes <mark.a.janes@intel.com>
|
|
By flattening the if statements we cut 288 instructions from the
fragment shader (806 -> 518, or 35%), and we remove all register
spilling on i965.
Reduces runtime of "varying-packing-simple int separate" by
-81.4453% +/- 0.255875% (n=483).
Also consistently print 3 digits in the varying's names, to make
reading/sorting simpler.
Reviewed-by: Mark Janes <mark.a.janes@intel.com>
|
|
The i965 driver has a pass that merges comparisons with zero into the
instruction that generated the result. For example:
add tmp x y
cmp.ge.f0 null tmp 0.0
is optimized into
add.ge.f0 tmp x y
If the types of tmp are different in the add and cmp, comparisons
against zero might not work the same. For instance if the addition is on
unsigned integers, they may generate a result of 0x80000000 which is
-0.0 reinterpreted as a float.
I think this test triggers the same bug as this bug report.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89317
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
|
|
commit 36b63cbbe7 fixed the execution of two tests, but didn't fix the
fact that two tests are stored with the same name, thereby replacing the
first with the second. This corrects that.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
Acked-by: Laura Ekstrand <laura@jlekstrand.net>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
Test passes on Nvidia GTX 660 (binary driver version 331.38).
v2: separate atomic counter index subtest (Ilia Mirkin)
+ code and shader cleanups
+ added subroutine index query test
v3: fix indentation (argh!)
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
|
|
I recently tried the junit backend's ability to ignore expected
failures/crashes and found it a godsend -- instead of having to look as
test graph results periodically, I can just tell jenkins to email me
when things go south.
The only drawback is that by reporting the expected issues as passing it
makes it too easy to forget about them and misinterpret the pass-rates.
So this change modifies the junit backend to report the expected issues
as skipped, making it more obvious when looking at the test graphs that
these tests are not really passing, and that whatever functionality they
target is not being fully covered.
This change also makes use of the junit `message` attribute to explain
the reason of the skip. (In fact, we could consider using the `message`
attribute on other kind of failures to inform the piglit result, instead
of using the non-standard `type`.)
Reviewed-by: Mark Janes <mark.a.janes@intel.com>
Acked-by: Dylan Baker <baker.dylan.c@gmail.com>
|
|
Void pointer arithmetic is not supported on MSVC, so passing
-Werror=pointer-arith will make it easier for everybody to catch this
sort of portability issues as the code is written.
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
Although CL tests are not built with MSVC, this is the single instance
of void pointer arithmetic in them, so updating it to not use void
pointer arithmetic will enable us to use -Werror=pointer-arith option
universally in a follow on change.
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
It's not supported by MSVC.
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
To test the blit with FRAMEBUFFER_SRGB disabled, if the option
'disabled' was passed to the command line, was not being done.
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
|
|
v2: review from Tapani
- add some documentation
- set the minimum GL version to 2.0
v3:
- set the minimum GL version to 3.1 core (Ilia)
- do some clean up at the end of the test
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
v2:
- rename some subtests (Ian)
v3: review from Tapani
- add some documentation
- set the minimum GL version to 2.0
v4:
- set the minimum GL version to 3.1 core (Ilia)
- do some clean up at the end of the test
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
v2:
- rename some subtests (Ian)
v3: review from Tapani
- add some documentation
- set the minimum GL version to 2.0
v4:
- set the minimum GL version to 3.1 core (Ilia)
- do some clean up at the end of the test
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
v2:
- rename some subtests (Ian)
v3: review from Tapani
- add some documentation
- set the minimum GL version to 2.0
v4: review from Tapani
- verify that the GL extension is present before testing it
v5:
- set the minimum GL version to 3.1 core (Ilia)
- explicitly skip tests instead of silently skipping them
- do some clean up at the end of the test
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
-v2:
- rename some subtests (Ian)
v3: review from Tapani
- add some documentation
- set the minimum GL version to 2.0
v4:
- set the minimum GL version to 3.1 core (Ilia)
- do some clean up at the end of the test
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
v2: review from Tapani
- add the copyright for Intel
- add some documentation
- set the minimum GL version to 2.0
- use piglit_build_simple_program_unlinked
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
v3:
- rewrite the test for GL 3.1 core (Ilia)
- delete the copyright from vmware as none of the code is left
- improve the cleanup at the end of the test
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
|
|
v2: review from Tapani
- add the copyright for Intel
- add some documentation
- set the minimum GL version to 2.0
- use piglit_build_simple_program_unlinked
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
v3:
- rewrite the test for GL 3.1 core (Ilia)
- do not hardcode the tolerance (Laura)
- delete the copyright from vmware as none of the code is left
- improve the cleanup at the end of the test
v4:
- use the extern variable piglit_tolerance (Ilia & Laura)
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
|
|
v2: review from Tapani
- add the copyright for Intel
- add some documentation
- set the minimum GL version to 2.0
- use piglit_build_simple_program_unlinked
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
v3:
- rewrite the test for GL 3.1 core (Ilia)
- do not hardcode the tolerance (Laura)
- delete the copyright from vmware as none of the code is left
- improve the cleanup at the end of the test
v4:
- use the extern variable piglit_tolerance (Ilia & Laura)
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
|
|
Also add the relevant quote from the spec.
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
The problem was in all.py where the argument was not specified as an array
but rather in the same string as the binary's path..
v2: Review from Ilia Mirkin
- Get rid of some debugging left-overs
- remove an extra space
Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
|
|
The "counters in range" subtest was not reported.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
|
|
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
|
|
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
|
|
Uniform interface blocks can have different instance names across shaders.
These tests check that array rules are applied correctly.
Test results:
AMD Radeon HD 6670 - Catalyst 14.501.1003 OpenGL 4.4
uniform-block-array-instance-name-mismatch - pass
uniform-block-array-size-and-instance-name-mismatch - fail
Reviewed-by: Mark Janes <mark.a.janes@intel.com>
|
|
Uniform interface blocks can have different instance names across shaders. These tests check that array rules are applied correctly.
Test results:
Intel Ivybridge - Mesa 10.6
uniform-block-array-instance-name-mismatch - pass
uniform-block-array-size-and-instance-name-mismatch - pass
AMD Radeon HD 6670 - Catalyst 14.501.1003 OpenGL 4.4
uniform-block-array-instance-name-mismatch - pass
uniform-block-array-size-and-instance-name-mismatch - fail
Reviewed-by: Mark Janes <mark.a.janes@intel.com>
|
|
Patch adds array to GetProgramResourceLocation test and 3 subtests
for invalid indexing of array. Case 2 fails on Nvidia GTX 660
(binary driver version 331.38).
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
|
|
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
|
|
We were never processing the WM_QUIT message, as GetMessage returns 0 in
that case, and we were falling in an infinite loop.
We also never see WM_CLOSE messages when pressing Alt-F4 or closing the
window via the taskbar. We do however see WM_SYSCOMMAND::SC_CLOSE mesage.
So handle that instead.
With this change we always quit properly, regardless of the method
(Escape/Alt-F4/Close window).
Reviewed-by: Brian Paul <brianp@vmware.com>
|
|
Instead pass through the escape char. user_keyboard_func or
piglit_escape_exit_key will handle it already.
Reviewed-by: Brian Paul <brianp@vmware.com>
|