Age | Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
At some point OpenGL 3.2 was shortened to OpenGL, which is clearly wrong
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
This adds a very basic Test class that works for apis that use Test, but
provides only no-op implementations.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Reviewed-by: Vinson Lee <vlee@freedesktop.org>
|
|
This just adds support for the ARB_vertex_attrib_64bit interface.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
The number of elements is at index 4, not 3 (like in vec)
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Dave Airlie <airlied@redhat.com>
|
|
It seems like when parsing a value like 0xc0d1cbdd371d381f with strtoll,
it returns 0x7fffffffffffffff, presumably because it goes out of bounds.
I guess this issue didn't happen with float, but seems safe to fix it as
well.
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Dave Airlie <airlied@redhat.com>
|
|
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
|
|
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
|
|
Take into account the aspect ratio of piglit_width to piglit_height.
The assumption is made that the console window is 80 x 24.
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
|
|
Reviewed-by: Laura Ekstrand <laura@jlekstrand.net>
|
|
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
This fix https://bugs.freedesktop.org/show_bug.cgi?id=86361
Reviewed-by: Jan Vesely <jan.vesely@rutgers.edu>
|
|
Mesa only exposes fp64 on core profiles.
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
|
|
Trivial.
|
|
This reverts commit 897b549c0f793385d49f8227e2fe28109a8be74e.
Not necessary with MSVC 2013 U4.
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
|
|
It has importants fixes to C parser.
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
|
|
This makes the relevant tests pass on nvc0.
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
|
|
MSVC doesn't seem to like function calls inside struct initializers.
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
|
|
Test all image atomic built-in functions without using their return
value to make sure that they aren't optimized out by the compiler
accidentally and because some implementations may use different
hardware instructions for the same atomic operation depending on
whether the return value of the built-in is used or not.
|
|
Test the image unit and image uniform binding commands and then check
that the state query APIs return the expected values for all bound
image units.
|
|
Test the relative ordering of memory transactions before and after a
call to the memoryBarrier() GLSL built-in.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Test that image built-in functions do what they are supposed to do by
comparing their results with a simulation run on the CPU with similar
inputs. The test is repeated for all built-ins, shader stages,
formats and texture targets either sequentially or combinatorially
depending on the --quick flag.
|
|
Test if the implementation is incorrectly assuming that different
image uniforms point to disjoint locations in memory, which could lead
to incorrect code transformations and break valid GLSL programs.
|
|
Test that no changes are observed when an optional image qualifier is
omitted (e.g. access qualifiers may be omitted, format qualifiers may
be omitted when the "writeonly" qualifier is present), and test
several combinations of binding access modes and access qualifiers.
|
|
|
|
Test that images work as expected up to the maximum texture dimensions
reported by the implementation for each target. The test is carried
out one dimension at a time to avoid creating huge textures (a 16Kx16K
RGBA32F texture is already 4GB), but this is not always possible
because e.g. both dimensions of a cubemap necessarily have to be
equal. There is a hard-coded limit for the total texture size (which
is especially stringent in quick mode) to make sure that the
implementation doesn't make us do anything stupid like creating a 32 GB
cubemap array texture.
|
|
Test that the limits of supported image units (GL_MAX_IMAGE_UNITS),
per-shader image uniforms (GL_MAX_*_IMAGE_UNIFORMS), and combined
image uniforms (GL_MAX_COMBINED_IMAGE_UNIFORMS) are true by setting up
a GL pipeline that reaches some of the limits and checking that it
renders as expected.
v2: Don't assume that the implementation supports images on the
vertex/tesselation/geometry shader.
|
|
Test that image loads and stores land in the correct mipmap level of
the texture when a level other than the first is bound to an image
unit.
|
|
Test binding of individual layers from a layered texture and the
simultaneous binding of all layers (layered binding). For textures
targets that don't have multiple layers we just test that the layered
and unlayered binding modes have no effect as required by the spec.
|
|
Test a number of cases like reading or writing outside the limits of
the image that the spec defines as being invalid either return zero or
have no effect depending on the specific built-in. In addition test
that other cases that according to the spec cause undefined results
don't lead to program termination.
|
|
Test that indexing of image arrays using dynamically uniform
expressions works as expected.
v2: Add support for shader stages other than fragment.
|
|
Add tests for the glMemoryBarrier() API which provides a way to
serialize shader memory transactions issued by previous drawing
commands with respect to subsequent GL commands.
v2: Skip indirect draw and transform feedback tests when the
extensions they rely on are not supported.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
The extension defines an input layout qualifier that allows the
application to force early fragment tests for a specified shader
program. This has several consequences that are verified by this
test, including that the fragment shader is guaranteed not to be
executed if the depth test fails, that the depth value computed by the
fragment shader is ignored, and that fragments discarded during or
after fragment shader execution are nevertheless counted by occlusion
queries.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Test that image stores and atomics have no effect when called from
fragment shader invocations that aren't covered by a primitive or have
been discarded.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Test the cache coherency of images declared as "coherent" or
"volatile" when accessed from different combinations of dependent
shader stages.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
The ARB_shader_image_load_store extension allows the reinterpretation
of the binary contents of an existing image as an image of a different
compatible format. The resulting values should be predictable and are
defined in terms of the usual GL pixel transfer operations.
v2: Actually bind the image with the bitcasted format.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Import a number of tests intended to check if the read-modify-write
built-in functions defined by the spec are carried out atomically.
v2: Disable the locking imageAtomicExchange test and use a lockless
algorithm instead to test the built-in. Avoids GPU hang on Intel
hardware.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
to the build system.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Define helper functions that are able to run a piece of GLSL code on
an arbitrary shader stage (as of now VS, TCS, TES, GS, FS and CS are
supported) for a given execution size. This makes every shader stage
expose a consistent interface that looks like a sort of primitive
two-dimensional compute grid, with the peculiarity that you can run
several stages at the same time and chain the results of one stage
into the arguments of the next.
This is useful in cases where one needs to run the exact same test on
a number of shader stages and using code generators or duplicating
code would be inconvenient.
v2: Fix crash when generate_program() is called with unsupported
shader stage arguments.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Define helper data structures and functions to query several kinds of
information for any supported image format, target or shader stage,
like the matching pixel transfer type and format for a given image
format, GLSL type information, error tolerance, maximum supported
dimensions and samples for a given image dimensionality, number of
supported image uniforms for a given shader stage, etc.
This also defines the image_info data structure that aggregates some
combination of image target, format and dimensions in a single object
to avoid having to repeat the same three arguments constantly when
working with images.
v2: Encode per-image base datatype information in a struct instead of
having separate switch-case statements spread over several query
functions. Add comment explaining the reason why there are no
specific semantics attached to image dimensions. (Ian)
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Define a variant of piglit_compile_shader_text() that doesn't call
piglit_report_result() on failure killing the program, which is quite
annoying for tests that expect a compilation to fail and for tests
that are structured in a number of subtests, because a single sub-test
failing to compile a shader will prevent the remaining tests from
running.
I guess this would ideally be the default behavior of
piglit_compile_shader_text(), but with >300 callers in tree it seems
rather difficult to change at this stage.
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Glenn Kennard <glenn.kennard@gmail.com>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
|
|
Reviewed-by: Dylan Baker <dylanx.c.baker@intel.com>
|
|
Ken pointed out cucul_flop in the original libcaca patch, but going
back to 2008-09-27, r2821,
http://caca.zoy.org/browser/libcaca/trunk/caca/caca.h?rev=2821#L251
caca_flop seems to be preferred.
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
|
|
Test currently fails because INVALID_OPERATION generated by
program_pipeline_check_status is not read and piglit_check_gl_error
is called for another call later. This change makes the test pass as
expected.
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
|
|
This script manipulates the python path to get at some modules, because
of this pylint gives an error (as opposed to a warning) about not being
able to import that module. This patch silences that error.
Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
|