summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* llvmpipe: initial fence implementationBrian Paul2009-12-112-0/+169
|
* llvmpipe: implement lp_rast_load_color()Brian Paul2009-12-111-2/+24
|
* llvmpipe: checkpoint: more thread/queuing changesBrian Paul2009-12-113-75/+84
| | | | | Now mapping/unmapping the framebuffer is done by a rasteizer thread rather than the main calling thread.
* gallium: comments and minor re-org in p_thread.hBrian Paul2009-12-111-6/+34
| | | | | | | | There's more work to do in this file: 1. Implement condvars for Windows via Win32 CONDITION_VARIABLE type. 2. Implement barriers for Windows 3. Try to get rid of PIPE_THREAD_HAVE_CONDVAR (only used in trace driver) 4. Why the 2 in _P_THREAD2_H_?
* gallium: added pipe_barrier type and functionsBrian Paul2009-12-111-1/+60
|
* llvmpipe: remove unused lp_rasterizer::fb fieldBrian Paul2009-12-112-2/+0
|
* llvmpipe: improve framebuffer/surface codeBrian Paul2009-12-112-41/+34
|
* llvmpipe: fix-up #includesBrian Paul2009-12-111-1/+1
|
* llvmpipe: fix inverted util_framebuffer_state_equal() resultBrian Paul2009-12-111-1/+1
|
* gallium/util: added util_unreference_framebuffer_state()Brian Paul2009-12-111-0/+16
|
* gallium/util: simplify util_framebuffer_state_equal()Brian Paul2009-12-112-10/+16
| | | | And copy width, height in util_copy_framebuffer_state().
* llvmpipe: remove unused fb parameterBrian Paul2009-12-111-3/+2
|
* llvmpipe: minor comment fixBrian Paul2009-12-111-1/+1
|
* llvmpipe: checkpoint: use empty/full bin queuesBrian Paul2009-12-102-8/+64
|
* llvmpipe: updated commentBrian Paul2009-12-101-3/+4
|
* llvmpipe: simplify llvmpipe_set_framebuffer_state()Brian Paul2009-12-101-20/+5
|
* gallium/util: added framebuffer compare, copy util funcsBrian Paul2009-12-102-0/+58
|
* llvmpipe: added some bin queue debug codeBrian Paul2009-12-101-0/+8
|
* llvmpipe: updated commentsBrian Paul2009-12-101-6/+3
|
* llvmpipe: added some debug/info codeBrian Paul2009-12-091-0/+15
|
* llvmpipe: simplify the tiles_x, tiles_y code a bitBrian Paul2009-12-093-16/+11
|
* progs/demos/gloss: press 'n' to advance by one frameBrian Paul2009-12-091-0/+3
|
* llvmpipe: use the empty_bins queue nowBrian Paul2009-12-092-6/+21
|
* progs/demos: call glutDestroyWindow() in gloss.cBrian Paul2009-12-091-1/+3
|
* llvmpipe: checkpoint: begin plugging in bin queue codeBrian Paul2009-12-095-4/+56
|
* llvmpipe: added new lp_bin_queue.[ch] filesBrian Paul2009-12-094-0/+213
| | | | | The queues will be used for keeping track of full and empty bins so we can overlap setup with the rasterization threads.
* llvmpipe: use new lp_setup_get_current_bins() functionBrian Paul2009-12-093-25/+44
| | | | This stub function will interface to the queue system...
* llvmpipe: more bin functions for create/destroy/queriesBrian Paul2009-12-092-0/+56
|
* llvmpipe: Use number of CPUs as default number of threads.José Fonseca2009-12-082-2/+4
| | | | Also bump MAX_THREADS to 8.
* llvmpipe: remove some left-over debug codeBrian Paul2009-12-071-6/+3
|
* llvmpipe: implement threaded rasterizationBrian Paul2009-12-072-43/+170
| | | | | | The LP_NUM_THREADS env var controls how many threads are created. The default (and max) is 4, for now. If LP_NUM_THREADS = 0, threading is not used.
* gallium: added pipe_semaphore and related codeBrian Paul2009-12-071-0/+50
|
* llvmpipe: repartition lp_rasterizer state for threadingBrian Paul2009-12-075-72/+133
| | | | | Some of the state is per-thread. Put that state in new lp_rasterizer_task struct.
* llvmpipe: use bin iteration functions when rasterizing binsBrian Paul2009-12-071-6/+20
|
* llvmpipe: introduce mutex and bin iteration functionsBrian Paul2009-12-072-0/+79
|
* llvmpipe: still more bin code reorganizationBrian Paul2009-12-046-102/+130
| | | | | Move tiles_x,y fields from setup state into bin state. Move more bin-adding commands into lp_bin.[ch].
* llvmpipe: remove dead code left over from a previous commitBrian Paul2009-12-041-30/+0
|
* llvmpipe: reorganization of binning data structions and funtionsBrian Paul2009-12-047-138/+209
| | | | | | | | New lp_bins struct contains all bin information. More move bin-related code into lp_bin.[ch] Use new/updated bin-access functions to hide implementation details. The result is more/cleaner separation between the setup and rast components. This will make double-buffering of the bins easier, etc.
* llvmpipe: move lp_rasterize_bin() into lp_rast.cBrian Paul2009-12-043-42/+42
| | | | First step of moving bin rasterization/execution code out of lp_setup.c
* llvmpipe: simplify framebuffer state codeBrian Paul2009-12-044-24/+21
|
* llvmpipe: use LP_DBG() macro everywhereBrian Paul2009-12-043-33/+34
|
* llvmpipe: fix-up polygon culling/windingBrian Paul2009-12-041-0/+11
|
* llvmpipe: add missing sources to MakefileBrian Paul2009-12-041-0/+2
|
* llvmpipe: comments and minor clean-upsBrian Paul2009-12-042-8/+26
|
* llvmpipe: move bin-related structures and functions into new lp_bin.[ch]Brian Paul2009-12-048-149/+243
| | | | And put lp_ prefixes on some functions.
* llvmpipe: remove lp_rast_triangle::oneoverarea fieldBrian Paul2009-12-042-19/+18
| | | | Makes lp_rast_triangle a little smaller (now 280 bytes on a 32-bit system).
* llvmpipe: bin state-change commandsBrian Paul2009-12-046-47/+101
| | | | | | | | | | | Previously, each triangle had a pointer to the state to use for shading. Now we insert state-change commands into the bins. When we execute one of those commands we just update a 'current state' pointer and use that pointer when calling the jit shader. When inserting state-change commands into a bin we check if the previous command was also a state-change command and simply replace it. This avoids accumulating useless/redundant state-change commands.
* llvmpipe: struct cmd_binBrian Paul2009-12-042-9/+21
| | | | Just introducing a new structure to represent a per-tile bin.
* llvmpipe: fix typo, whitespaceBrian Paul2009-12-041-2/+1
|
* llvmpipe: dynamic allocation of triangle a0/dadx/dady arraysBrian Paul2009-12-042-6/+14
| | | | Much less memory per triangle now.