summaryrefslogtreecommitdiffstats
path: root/src/gallium/tests
Commit message (Collapse)AuthorAgeFilesLines
* graw: Set the vertex shader constant buffer.José Fonseca2013-04-251-1/+1
| | | | We were setting the fragment shader, which wasn't needed.
* graw: Simple utilities to dump and disassemble TGSI tokens.José Fonseca2013-04-253-0/+97
| | | | | Useful for core dumps, where calling tgsi_dump() from gdb is not an alternative.
* gallium: Replace gl_rasterization_rules with lower_left_origin and ↵José Fonseca2013-04-2312-12/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | half_pixel_center. Squashed commit of the following: commit 04c5fa2cbb8e89d6f2fa5a75af1cca03b1f6b852 Author: José Fonseca <jfonseca@vmware.com> Date: Tue Apr 23 17:37:18 2013 +0100 gallium: s/lower_left_origin/bottom_edge_rule/ commit 4dff4f64fa83b9737def136fffd161d55e4f1722 Author: José Fonseca <jfonseca@vmware.com> Date: Tue Apr 23 17:35:04 2013 +0100 gallium: Move diagram to docs. commit 442a63012c8c3c3797f45e03f2ca20ad5f399832 Author: James Benton <jbenton@vmware.com> Date: Fri May 11 17:50:55 2012 +0100 gallium: Replace gl_rasterization_rules with lower_left_origin and half_pixel_center. This change is necessary to achieve correct results when using OpenGL FBOs. Reviewed-by: Marek Olšák <maraeo@gmail.com>
* gallivm: Fix assignment of unsigned values to OUT register.José Fonseca2013-04-221-0/+9
| | | | | | | | | | | | | | TEMP is not the only register file that accept unsigned. OUT too. Actually, what determines the appropriate type of the destination value is not the opcode, but rather the register. Also cleanup/simplify code. Add a few more asserts, but also make code more robust by handling graceful if assert fails. This fixes segfault / assertion in the included vert-uadd.sh graw shader. Reviewed-by: Roland Scheidegger <sroland@vmware.com>
* build: Build pipe-loader before gallium testsMatt Turner2013-04-151-4/+0
| | | | | | | | | And don't build it from other Makefiles. That's awful, and breaks distclean. Tested-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-and-Tested-by: Andreas Boll <andreas.boll.dev@gmail.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
* llvmpipe: implement ucmpZack Rusin2013-04-041-0/+11
| | | | | | | and add a test for it Signed-off-by: Zack Rusin <zackr@vmware.com> Reviewed-by: José Fonseca <jfonseca@vmware.com>
* graw/gs: add missing max output vertices to all testsZack Rusin2013-03-274-0/+4
| | | | | | | | A few tests were missing this crucial property. Signed-off-by: Zack Rusin <zackr@vmware.com> Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: José Fonseca <jfonseca@vmware.com>
* gallium/tests: check format in compute tests, make selectableChristoph Bumiller2013-03-121-17/+52
|
* gallium/util: fix glClear with MRT by making the FS write to all cbufsMarek Olšák2013-01-151-1/+2
| | | | Reviewed-by: Brian Paul <brianp@vmware.com>
* gallium/tests/unit: Convert to automakeAndreas Boll2013-01-102-49/+34
|
* gallium/tests/trivial: Convert to automakeAndreas Boll2013-01-102-54/+34
|
* gallium: extend pipe_context::flush for it to accept an END_OF_FRAME flagMarek Olšák2013-01-0418-18/+18
| | | | | | | | | | | | | | | | | Usage with pipe_context: pipe->flush(pipe, NULL, PIPE_FLUSH_END_OF_FRAME); Usage with st_context_iface: st->flush(st, ST_FLUSH_END_OF_FRAME, NULL); The flag is only a hint for drivers. Radeon will use it for buffer eviction heuristics in the kernel (e.g. for queries like how many frames have passed since a buffer was used). The flag is currently only generated by st/dri on SwapBuffers. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
* gallium/tests: fix build breakage after pipe_surface::usage removalMarek Olšák2012-12-211-1/+0
|
* gallium: remove pipe_surface::usageMarek Olšák2012-12-1211-12/+0
| | | | | | Not really used by anybody now. Reviewed-by: Brian Paul <brianp@vmware.com>
* gallium/tests/trivial: updates for transfer functions changesAndreas Boll2012-11-271-10/+4
| | | | | | | | | Fixes build error with configure option --enable-gallium-tests introduced in 369e46888904c6d379b8b477d9242cff1608e30e Compile tested only. Reviewed-by: Marek Olšák <maraeo@gmail.com>
* gallium/tests/trivial: updates for CSO interface changesAndreas Boll2012-11-271-2/+2
| | | | | | | | Fixes build error with configure option --enable-gallium-tests introduced in ea6f035ae90895bd4ee3247408eb179dfdf96d22 Cc: Brian Paul <brianp@vmware.com> Reviewed-by: Marek Olšák <maraeo@gmail.com>
* gallium/tests/trivial: updates for util_draw_vertex_buffer changesAndreas Boll2012-11-272-2/+2
| | | | | | | Fixes build error with configure option --enable-gallium-tests introduced in e73bf3b805de78299f1a652668ba4e6eab9bac94 Reviewed-by: Marek Olšák <maraeo@gmail.com>
* gallium/tests: update .gitignore filesAndreas Boll2012-11-212-0/+7
|
* gallium: add start_slot parameter to set_vertex_buffersMarek Olšák2012-10-3115-15/+15
| | | | | | | | | | | | | | | | | | | | | This allows updating only a subrange of buffer bindings. set_vertex_buffers(pipe, start_slot, count, NULL) unbinds buffers in that range. Binding NULL resources unbinds buffers too (both buffer and user_buffer must be NULL). The meta ops are adapted to only save, change, and restore the single slot they use. The cso_context can save and restore only one vertex buffer slot. The clients can query which one it is using cso_get_aux_vertex_buffer_slot. It's currently set to 0. (the Draw module breaks if it's set to non-zero) It should decrease the CPU overhead when using a lot of meta ops, but the drivers must be able to treat each vertex buffer slot as a separate state (only r600g does so at the moment). I can imagine this also being useful for optimizing some OpenGL use cases. Reviewed-by: Brian Paul <brianp@vmware.com>
* graw/fs-test: Use user constant buffers.José Fonseca2012-10-261-56/+14
| | | | Much simpler. More interesting.
* graw: Ensure new members are zeroed.José Fonseca2012-10-2614-0/+16
| | | | | Several new state members were added, and they were not being zeroed, causing random crashes.
* tests/graw: Update occlusion query example.José Fonseca2012-10-261-4/+4
|
* tests: Use printf instead of debug_printf in u_format_compatible_test.Vinson Lee2012-10-251-1/+1
| | | | | | | | | | | Use printf instead of debug_printf to be consistent with print statements in rest of unit tests. This also fixes the lack of print output with the MinGW build of u_format_compatible_test. Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Brian Paul <brianp@vmware.com>
* tgsi: Add support to parse IMM[x] too.José Fonseca2012-10-171-2/+2
| | | | Thanks to Brian for pointing this out.
* gallium: unify transfer functionsMarek Olšák2012-10-116-38/+18
| | | | | | | | | | | | | | "get_transfer + transfer_map" becomes "transfer_map". "transfer_unmap + transfer_destroy" becomes "transfer_unmap". transfer_map must create and return the transfer object and transfer_unmap must destroy it. transfer_map is successful if the returned buffer pointer is not NULL. If transfer_map fails, the pointer to the transfer object remains unchanged (i.e. doesn't have to be NULL). Acked-by: Brian Paul <brianp@vmware.com>
* Use the correct macro _WIN32 for Windows.Vinson Lee2012-09-053-3/+3
| | | | | | | | | | | | | | The correct predefined macro for Windows is _WIN32, not WIN32 or __WIN32__. _WIN32 is defined for 32-bit and 64-bit version of Windows by both MSVC and MinGW compilers. http://sourceforge.net/p/predef/wiki/OperatingSystems http://msdn.microsoft.com/en-us/library/b0084kay.aspx This patch also fixes a MinGW automake build error. Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Brian Paul <brianp@vmware.com>
* gallium/tests/trivial: updates for CSO interface changesBrian Paul2012-08-031-2/+2
|
* tests: Updated tests to properly handle NaN for half floats.James Benton2012-06-292-7/+31
| | | | Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
* translate_test: add support for half floatsBrian Paul2012-06-061-0/+8
| | | | | | Fixes assertion reported in https://bugs.freedesktop.org/show_bug.cgi?id=44519 but there's still failing cases.
* gallium/graw: stop using user_buffer_createMarek Olšák2012-05-1215-73/+93
| | | | This is compile-tested.
* Merge branch 'gallium-userbuf'Marek Olšák2012-05-113-5/+5
|\ | | | | | | | | | | | | | | Conflicts: src/gallium/docs/source/screen.rst src/gallium/drivers/nv50/nv50_state.c src/gallium/include/pipe/p_defines.h src/mesa/state_tracker/st_draw.c
| * gallium: change set_constant_buffer to be UBO-friendlyMarek Olšák2012-04-303-5/+5
| |
* | gallium/tests/trivial: Import compute unit tests.Francisco Jerez2012-05-112-1/+1594
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a test program that tries to exercise some of the language features commonly used by compute programs at the Gallium API level: - Correctness of the values returned by the grid parameters. - Proper functioning of resource LOADs and STOREs. - Subroutine calls. - Argument passing to the compute parameter through the INPUT memory space. - Mapping of buffer objects to the GLOBAL memory space. - Proper functioning of the PRIVATE and LOCAL memory spaces. - Texture sampling and constant buffers. - Support for multiple kernels in the same program. - Indirect resource indexing. - Formatted resource loads and stores (i.e. with channel conversion and scaling) using several different formats. - Proper functioning of work-group barriers. - Atomicity and semantics of the atomic opcodes. As of now all of them seem to pass on my nvA8.
* | gallium/tests/trivial: Switch to the pipe loader.Francisco Jerez2012-05-113-36/+39
|/ | | | | | | | It simplifies things slightly, and besides, it makes possible to execute the trivial tests on a hardware device instead of being limited to software rendering. Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
* Add a test for the compare opcode.Alex Corscadden2012-02-231-0/+12
| | | | | This is a test for the compare opcode (CMP). This should draw a green triangle in the fs-test.
* tests/graw: Add a bunch of tests.José Fonseca2012-02-2210-372/+1794
| | | | | | | | These were rotting in an internal branch, but contain nothing confidential, and would be much more useful if kept up-to-date with latest gallium interface changes. Several authors including Keith Whitwell, Zack Rusin, and Brian Paul.
* Squash-merge branch 'gallium-clip-state'Marek Olšák2012-01-1011-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/tgsi/tgsi_strings.c src/mesa/state_tracker/st_atom_clip.c commit d919791f2742e913173d6b335128e7d4c63c0840 Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Fri Jan 6 17:59:22 2012 +0100 d3d1x: adapt to new clip state commit cfec82bca3fefcdefafca3f4555285ec1d1ae421 Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Fri Jan 6 14:16:51 2012 +0100 gallium/docs: update for clip state changes commit c02bfeb81ad9f62041a2285ea6373bbbd602912a Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Fri Jan 6 14:21:43 2012 +0100 tgsi: add TGSI_PROPERTY_PROHIBIT_UCPS commit d4e0a785a6a23ad2f6819fd72e236acb9750028d Author: Brian Paul <brianp@vmware.com> Date: Thu Jan 5 08:30:00 2012 -0700 tgsi: consolidate TGSI string arrays in new tgsi_strings.h There was some duplication between the tgsi_dump.c and tgsi_text.c files. Also use some static assertions to help catch errors when adding new TGSI values. v2: put strings in tgsi_strings.c file instead of the .h file. Reviewed-by: Dave Airlie <airlied@redhat.com> commit c28584ce0d8c62bd92c8f140729d344f88a0b3cd Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Fri Jan 6 12:48:09 2012 +0100 gallium: extend user_clip_plane_enable to apply to clip distances commit f1d5016c07f786229ed057effbe55fbfd160b019 Author: Marek Olšák <maraeo@gmail.com> Date: Fri Jan 6 02:39:09 2012 +0100 nvfx: adapt to new clip state commit 6f6fa1c26bd19f797c1996731708e3569c9bfe24 Author: Marek Olšák <maraeo@gmail.com> Date: Fri Jan 6 01:41:39 2012 +0100 st/mesa: fix DrawPixels with GL_DEPTH_CLAMP commit c86ad730aa1c017788ae88a55f54071bf222be12 Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Tue Jan 3 23:51:30 2012 +0100 nv50: adapt to new clip state commit 3a8ae6ac243bae5970729dc4057fe02d992543dc Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Tue Jan 3 23:32:36 2012 +0100 nvc0: adapt to new clip state commit 6243a8246997f8d2fcc69ab741a2c2dea080ff11 Author: Marek Olšák <maraeo@gmail.com> Date: Thu Dec 29 01:32:51 2011 +0100 draw: initalize pt.user.planes in draw_init This fixes a crash in glean/fpexceptions. commit e3056524b19b56d473f4faff84ffa0eb41497408 Author: Marek Olšák <maraeo@gmail.com> Date: Mon Dec 26 06:26:55 2011 +0100 svga: adapt to new clip state commit c5bfa8b37d6d489271df457229081d6bbb51b4b7 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 14:11:51 2011 +0100 r600g: adapt to new clip state commit f11890905362f62627c4a28a8255b76eb7de7df2 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 14:10:26 2011 +0100 r300g: adapt to new clip state commit e37465327c79a01112f15f6278d9accc5bf3103f Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 12:39:16 2011 +0100 draw: adapt to new clip state This adds a regression in the LLVM clipping path. Can anybody see anything wrong with the code? It works for every other case, just glean/fpexceptions crashes when doing the "Infinite clip plane test". commit b474d2b18c72d965eefae4e427c269cba5ce6ba2 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 13:14:59 2011 +0100 u_blitter: don't save/set/restore clip state commit 9dd240ea91f523a677af45e8d0adb9e661e28602 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 13:11:56 2011 +0100 gallium: don't cso_save/set/restore clip state The enable bits are in the rasterizer state. commit a4f7031179f5f4ad524b34b394214b984ac950f6 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 12:58:55 2011 +0100 gallium: default depth_clip to 1 depth_clip = !depth_clamp commit fe21147a00ab90e549d63fe12ee4625c9c2ffcc3 Author: Marek Olšák <maraeo@gmail.com> Date: Mon Dec 26 06:14:19 2011 +0100 trace,util: update state logging to new clip state Also dump the other missing flags. commit 2a3b96e84ac872dcc5bc1de049fe76bb58d64b23 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 10:43:43 2011 +0100 st/mesa: adapt to new clip state commit b7b656a42fca19d7c85267f42649a206a85a2c72 Author: Marek Olšák <maraeo@gmail.com> Date: Sat Dec 17 15:45:19 2011 +0100 gallium: move state enable bits from clip_state to rasterizer_state
* gallium: rename ZS stencil type to UINT (v2)Dave Airlie2011-10-111-12/+12
| | | | | | | | | | these are never USCALED, always UINT in reality. taken from some work by Christoph Bumiller v2: fixup formatting of table + tabs Signed-off-by: Dave Airlie <airlied@redhat.com>
* graw: fix tests to build on msvc again.Dave Airlie2011-09-1910-10/+10
| | | | | | Should fix https://bugs.freedesktop.org/show_bug.cgi?id=40997 Signed-off-by: Dave Airlie <airlied@redhat.com>
* gallium: move clear paths from rgba to a pointer to a color union (v2)Dave Airlie2011-09-1812-32/+32
| | | | | | | | | | | | | | | This moves the gallium interface for clears from using a pointer to 4 floats to a pointer to a union of float/unsigned/int values. Notes: 1. the value is opaque. 2. only when the value is used should it be interpretered according to the surface format it is going to be used with. 3. float clears on integer buffers and vice-versa are undefined. v2: fixed up vega and graw, dropped hunks that shouldn't have been in patch. Signed-off-by: Dave Airlie <airlied@redhat.com>
* tests/unit: Fix include styleKai Wasserbäch2011-08-291-5/+5
| | | | | | | | | | | As explained in the thread starting at [0], the internal include style should be »#include "path/to/header.h"« for non-system includes. [0] <http://news.gmane.org/find-root.php?message_id=%3c4E5802BE.6020206%40vmware.com%3e> Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org> Signed-off-by: Brian Paul <brianp@vmware.com>
* gallium/tests/trivial: update commentBrian Paul2011-06-241-1/+1
|
* gallium/tests/trivial: use CXX to do final linkBrian Paul2011-06-241-1/+1
|
* gallium/tests/trivial: make it buildAlon Levy2011-06-243-6/+11
| | | | | Signed-off-by: Alon Levy <alevy@redhat.com> Signed-off-by: Brian Paul <brianp@vmware.com>
* gallium: s/bool/boolean/Brian Paul2011-06-081-2/+2
|
* graw: Replace dead symlinks to delete python statetracker shaders with their ↵José Fonseca2011-04-2364-2/+818
| | | | contents.
* st/python: Remove bindings, and all its dependencies.José Fonseca2011-04-0681-5179/+0
| | | | | | | | | Because: - bindings are not fully automatic, and they are broken most of the time - unit tests/samples can be written in C on top of graw - tracing/retracing is more useful at API levels with stable ABIs such as GL, producing traces that cover more layers of the driver stack and and can be used for regression testing
* tests: Use elts in translate_test.José Fonseca2011-04-011-8/+14
|
* scons: Add aliases for unit tests.José Fonseca2011-04-011-4/+4
|
* gallium: remove flags from the flush functionMarek Olšák2011-03-1112-12/+12
| | | | | | | | | | The drivers have been changed so that they behave as if all of the flags were set. This is already implicit in most hardware drivers and required for multiple contexts. Some state trackers were also abusing the PIPE_FLUSH_RENDER_CACHE flag to decide whether flush_frontbuffer should be called. New flag ST_FLUSH_FRONT has been added to st_api.h as a replacement.