summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/util
AgeCommit message (Collapse)Author
2009-03-23util: Add a new macro for testing empty lists.José Fonseca
2009-03-20gallium/util: add upload manager helper moduleKeith Whitwell
Add a module that will manage uploading and coalescing multiple user-buffers, malloc-buffers and other random data that doesn't happen to be in a GPU buffer already. The module stuffs multiple little uploads into larger GPU buffers to reduce create/destroy overheads, etc.
2009-03-18util: avoid clashprone UINT, UBYTE enum valuesKeith Whitwell
2009-03-17util: Realloc takes bytes.José Fonseca
2009-03-16util: bitmask data type.José Fonseca
2009-03-13gallium: consolidate bypass_vs and bypass_clipping flagsKeith Whitwell
The draw module provides a similar interface to the driver which is retained as various bits of hardware may be able to take on incremental parts of the vertex pipeline. However, there's no need to advertise all this complexity to the state tracker. There are basically two modes now - normal and passthrough/screen-coords.
2009-03-13gallium: no need to keep a copy of shader tokens in state trackerKeith Whitwell
Any driver who needs a copy of the shader tokens must organize to do so itself. This has been the case for a long time, but there was still defensive code in the state tracker, which is now removed. Any bugs resulting from this need to be fixed in the offending driver...
2009-03-13gallium: Remove do_flip argument from surface_copyJakob Bornecrantz
I should have gotten most uses and implementation correctly fixed, but things might break. Feel free to blame me.
2009-03-12util: fix debug_assert() to avoid unused variable warnings in release buildsKeith Whitwell
2009-03-05gallium: added null ptr check in align_free()Brian Paul
2009-03-04gallium: Remove some superfluous instances of #include "p_inlines.h".Michel Dänzer
2009-03-04gallium: Unify reference counting.Michel Dänzer
The core reference counting code is centralized in p_refcnt.h. This has some consequences related to struct pipe_buffer: * The screen member of struct pipe_buffer must be initialized, or pipe_buffer_reference() will crash trying to destroy a buffer with reference count 0. u_simple_screen takes care of this, but I may have missed some of the drivers not using it. * Except for rare exceptions deep in winsys code, buffers must always be allocated via pipe_buffer_create() or via screen->*buffer_create() rather than via winsys->*buffer_create().
2009-02-27util: set vbuf.max_index in draw_vertex_buffer()Keith Whitwell
(cherry picked from commit 1350f2efba5eeceebe0e711db6152c29e9889ce7)
2009-02-25gallium: Add support for BSD operating systems, tested with FreeBSDBenjamin Close
BSD supports pipe in the same way as linux hence options which are safe for linux are also safe for BSD. Define PIPE_OS_BSD in include/pipe/p_config.h and adjust the defines to make use of it. Also define MAP_ANONYMOUS for BSD systems which use MAP_ANON Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
2009-02-24util: Don't use 0-sized arrays.José Fonseca
Not supported by MSVC.
2009-02-24gallium: Add pipe_buffer_write/read inlines.José Fonseca
Saves code, and will simplify future interface changes.
2009-02-23Merge commit 'origin/gallium-0.1'José Fonseca
Conflicts: src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c src/gallium/auxiliary/util/u_tile.c
2009-02-20util: Use a checkboard pattern instead of asserting for unknown formats.José Fonseca
Useful to replay traces which use DXTC textures...
2009-02-20util/debug: need to fflush(stderr) on windowsKeith Whitwell
Hard to believe... but true.
2009-02-20util: Also output messages to stderr on windows.José Fonseca
When there is a console attached, and no debugger attached.
2009-02-20util: Stack backtracing facilities.José Fonseca
Not much useful until we have symbol lookup.
2009-02-20gallium: Improve makefiles for librariesJakob Bornecrantz
The template makefile that most libraries in gallium included was based on dri and had a bunch unrelevant junk in it. Update it and improve the depending makefiles.
2009-02-19util: Support PIPE_FORMAT_Z32_FLOAT in pipe_tile_raw_to_rgbaJosé Fonseca
2009-02-19mesa: Free the util shaders with the gallium's FREE.José Fonseca
2009-02-19util: Use right include.José Fonseca
2009-02-18Merge branch 'gallium-texture-transfer'Michel Dänzer
Conflicts: src/gallium/drivers/softpipe/sp_tile_cache.c
2009-02-16Merge branch 'master' into gallium-texture-transferKeith Whitwell
Conflicts: src/mesa/state_tracker/st_cb_accum.c src/mesa/state_tracker/st_cb_drawpixels.c
2009-02-18util: Move p_debug.h into util module.José Fonseca
The debug functions depend on several util function for os abstractions, and these depend on debug functions, so a seperate module is not possible.
2009-02-18util: (Re)enable memory debugging for all windows platforms.José Fonseca
2009-02-12gallium: Fix a couple of potential NULL pointer dereferences.Michel Dänzer
A lot more test programs work.
2009-02-12Cosmetic: Rename struct pipe_transfer pointers from 'ps' to 'pt'.Michel Dänzer
Missed these for the initial gallium-texture-transfer commit.
2009-02-11gallium: const-correctness for u_linear.c functionsBrian Paul
2009-02-11gallium: silence warnings about void ptr arithmeticBrian Paul
2009-02-05gallium: No longer allow CPU mapping surfaces directly.Michel Dänzer
Instead, a new pipe_transfer object has to be created and mapped for transferring data between the CPU and a texture. This gives the driver more flexibility for textures in address spaces that aren't CPU accessible. This is a first pass; softpipe/xlib builds and runs glxgears, but it only shows a black window. Looks like something's off related to the Z buffer, so the depth test always fails.
2009-02-02gallium: remove pipe_buffer from surfacesZack Rusin
this change disassociates, at least from the driver perspective, the surface from buffer. surfaces are technically now views on the textures so make it so by hiding the buffer in the internals of textures.
2009-02-01util: List new file in sconscript.José Fonseca
2009-01-31gallium: initialize simple screen in driversZack Rusin
2009-01-30gallium: add a convience wrapper for simple screensZack Rusin
forwards screen calls to the winsys
2009-01-30gallium: make p_winsys internalZack Rusin
move it to pipe/internal/p_winsys_screen.h and start converting the state trackers to the screen usage
2009-01-30Merge branch 'gallium-0.2' into gallium-winsys-privateJosé Fonseca
2009-01-30util: Define ffs for MinGW.José Fonseca
2009-01-29gallium: give the screen priority when it comes to buffer allocationsZack Rusin
allows the driver to overwrite buffer allocation, first step on the way to making winsys interface internal to the drivers. state trackers and the code above it will go through the screen
2009-01-27gallium: standardize api on the prefix "nr"Zack Rusin
2009-01-27gallium: standardize on stride instead of pitch in the interfaceZack Rusin
2009-01-20gallium: Remove the standalone surfaces.José Fonseca
This commit is mostly just a cosmetic change that cleans-up the interfaces, replacing pipe_winsys::surface_* calls by /** * Allocate storage for a display target surface. * * Often surfaces which are meant to be blitted to the front screen (i.e., * display targets) must be allocated with special characteristics, memory * pools, or obtained directly from the windowing system. * * This callback is invoked by the pipe_screenwhen creating a texture marked * with the PIPE_TEXTURE_USAGE_DISPLAY_TARGET flag to get the underlying * buffer storage. */ struct pipe_buffer *(*surface_buffer_create)(struct pipe_winsys *ws, unsigned width, unsigned height, enum pipe_format format, unsigned usage, unsigned *stride); Most drivers were updated but not all were tested. Use the softpipe pipe driver and the xlib winsys changes as a reference when fixing other drivers.
2009-01-19util: add reduced prim helperKeith Whitwell
2009-01-19Merge commit 'origin/gallium-0.2' into gallium-xlib-reworkKeith Whitwell
2009-01-17debug: add noprefix version of debug_dump_enumKeith Whitwell
2009-01-14gallium: Disable memory debugging for Windows OGL.José Fonseca
Unfortunately both Mesa and Gallium use the same defines for memory allocation (MALLOC, FREE, etc), and worse, some times memory is allocated with one set and freed with the other set, causing the homegrown memory debugger to trip on itself. In the future mesa and gallium should use different names, but for now, memory debugging on Windows will have to be carried with different tools..
2009-01-06gallium: Fix typeo in mipmap filter for GL_UNSIGNED_SHORT_1_5_5_5_REVBrian Paul
This is copied from Ian's commit a330933bb75c38148668637cd22b90d75d39506f