summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-12-11llvmpipe: initial fence implementationBrian Paul
2009-12-11llvmpipe: implement lp_rast_load_color()Brian Paul
2009-12-11llvmpipe: checkpoint: more thread/queuing changesBrian Paul
Now mapping/unmapping the framebuffer is done by a rasteizer thread rather than the main calling thread.
2009-12-11gallium: comments and minor re-org in p_thread.hBrian Paul
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_?
2009-12-11gallium: added pipe_barrier type and functionsBrian Paul
2009-12-11llvmpipe: remove unused lp_rasterizer::fb fieldBrian Paul
2009-12-11llvmpipe: improve framebuffer/surface codeBrian Paul
2009-12-11llvmpipe: fix-up #includesBrian Paul
2009-12-11llvmpipe: fix inverted util_framebuffer_state_equal() resultBrian Paul
2009-12-11gallium/util: added util_unreference_framebuffer_state()Brian Paul
2009-12-11gallium/util: simplify util_framebuffer_state_equal()Brian Paul
And copy width, height in util_copy_framebuffer_state().
2009-12-11llvmpipe: remove unused fb parameterBrian Paul
2009-12-11llvmpipe: minor comment fixBrian Paul
2009-12-10llvmpipe: checkpoint: use empty/full bin queuesBrian Paul
2009-12-10llvmpipe: updated commentBrian Paul
2009-12-10llvmpipe: simplify llvmpipe_set_framebuffer_state()Brian Paul
2009-12-10gallium/util: added framebuffer compare, copy util funcsBrian Paul
2009-12-10llvmpipe: added some bin queue debug codeBrian Paul
2009-12-10llvmpipe: updated commentsBrian Paul
2009-12-09llvmpipe: added some debug/info codeBrian Paul
2009-12-09llvmpipe: simplify the tiles_x, tiles_y code a bitBrian Paul
2009-12-09progs/demos/gloss: press 'n' to advance by one frameBrian Paul
2009-12-09llvmpipe: use the empty_bins queue nowBrian Paul
2009-12-09progs/demos: call glutDestroyWindow() in gloss.cBrian Paul
2009-12-09llvmpipe: checkpoint: begin plugging in bin queue codeBrian Paul
2009-12-09llvmpipe: added new lp_bin_queue.[ch] filesBrian Paul
The queues will be used for keeping track of full and empty bins so we can overlap setup with the rasterization threads.
2009-12-09llvmpipe: use new lp_setup_get_current_bins() functionBrian Paul
This stub function will interface to the queue system...
2009-12-09llvmpipe: more bin functions for create/destroy/queriesBrian Paul
2009-12-08llvmpipe: Use number of CPUs as default number of threads.José Fonseca
Also bump MAX_THREADS to 8.
2009-12-07llvmpipe: remove some left-over debug codeBrian Paul
2009-12-07llvmpipe: implement threaded rasterizationBrian Paul
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.
2009-12-07gallium: added pipe_semaphore and related codeBrian Paul
2009-12-07llvmpipe: repartition lp_rasterizer state for threadingBrian Paul
Some of the state is per-thread. Put that state in new lp_rasterizer_task struct.
2009-12-07llvmpipe: use bin iteration functions when rasterizing binsBrian Paul
2009-12-07llvmpipe: introduce mutex and bin iteration functionsBrian Paul
2009-12-04llvmpipe: still more bin code reorganizationBrian Paul
Move tiles_x,y fields from setup state into bin state. Move more bin-adding commands into lp_bin.[ch].
2009-12-04llvmpipe: remove dead code left over from a previous commitBrian Paul
2009-12-04llvmpipe: reorganization of binning data structions and funtionsBrian Paul
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.
2009-12-04llvmpipe: move lp_rasterize_bin() into lp_rast.cBrian Paul
First step of moving bin rasterization/execution code out of lp_setup.c
2009-12-04llvmpipe: simplify framebuffer state codeBrian Paul
2009-12-04llvmpipe: use LP_DBG() macro everywhereBrian Paul
2009-12-04llvmpipe: fix-up polygon culling/windingBrian Paul
2009-12-04llvmpipe: add missing sources to MakefileBrian Paul
2009-12-04llvmpipe: comments and minor clean-upsBrian Paul
2009-12-04llvmpipe: move bin-related structures and functions into new lp_bin.[ch]Brian Paul
And put lp_ prefixes on some functions.
2009-12-04llvmpipe: remove lp_rast_triangle::oneoverarea fieldBrian Paul
Makes lp_rast_triangle a little smaller (now 280 bytes on a 32-bit system).
2009-12-04llvmpipe: bin state-change commandsBrian Paul
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.
2009-12-04llvmpipe: struct cmd_binBrian Paul
Just introducing a new structure to represent a per-tile bin.
2009-12-04llvmpipe: fix typo, whitespaceBrian Paul
2009-12-04llvmpipe: dynamic allocation of triangle a0/dadx/dady arraysBrian Paul
Much less memory per triangle now.