summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* llvmpipe: comments regarding lp_rast_triangleBrian Paul2009-12-031-1/+4
|
* llvmpipe: comment about blend colorBrian Paul2009-12-031-0/+1
|
* llvmpipe: commentsBrian Paul2009-12-031-4/+11
|
* llvmpipe: new comment in do_triangle_ccw()Brian Paul2009-12-031-0/+5
|
* llvmpipe: fix incorrect array indexing when saving blend colorBrian Paul2009-12-031-1/+1
|
* llvmpipe: comments, clean-ups in lp_rast_priv.hBrian Paul2009-12-031-12/+17
|
* llvmpipe: checkpoint some initial state binning codeBrian Paul2009-12-032-3/+15
|
* llvmpipe: comments and a stub for lp_rast_set_state()Brian Paul2009-12-031-0/+28
|
* llvmpipe: commentsBrian Paul2009-12-031-4/+4
|
* llvmpipe: set LP_SETUP_NEW_FS in lp_setup_set_fs()Brian Paul2009-12-031-0/+1
| | | | | Fixes progs/trivial/tri-blend.c, but I think we're just getting lucky in this case.
* llvmpipe: more debug infoBrian Paul2009-12-031-4/+8
|
* llvmpipe: fix blend debug stringsBrian Paul2009-12-031-5/+5
|
* progs/trivial: readback and print Z value in tri-z-eq.cBrian Paul2009-12-031-3/+11
|
* llvmpipe: quick & dirty implementation of lp_rast_store_zstencil()Brian Paul2009-12-031-3/+50
| | | | | This allows us to do a glReadPixels(GL_DEPTH_COMPONENT) to see what's in the depth buffer to help debugging.
* llvmpipe: additional comment about float->uint conversionBrian Paul2009-12-031-0/+4
|
* llvmpipe: commentsBrian Paul2009-12-031-0/+9
|
* llvmpipe: execute shaders on 4x4 blocks instead of 8x2Brian Paul2009-12-024-63/+116
| | | | | | | This matches the convention used by the recursive rasterizer. Also fixed assorted typos, comments, etc. Now tri-z.c, gears.c, etc look basically right but there's still some cracks in triangle rasterization.
* llvmpipe: whitespace for readabilityBrian Paul2009-12-021-7/+7
|
* llvmpipe: added assertionsBrian Paul2009-12-011-3/+4
| | | | And remove unused BLOCKSIZE.
* llvmpipe: simplify mask computationBrian Paul2009-12-011-4/+6
| | | | Make this a little easier to understand.
* llvmpipe: replace shifts with multiplies to be clearerBrian Paul2009-12-011-18/+18
| | | | | The compiler will still do the multiplies with shifts. It's just a bit easier to follow the logic with multiplies.