Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | llvmpipe: initial fence implementation | Brian Paul | 2009-12-11 | 2 | -0/+169 |
| | |||||
* | llvmpipe: implement lp_rast_load_color() | Brian Paul | 2009-12-11 | 1 | -2/+24 |
| | |||||
* | llvmpipe: checkpoint: more thread/queuing changes | Brian Paul | 2009-12-11 | 3 | -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.h | Brian Paul | 2009-12-11 | 1 | -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 functions | Brian Paul | 2009-12-11 | 1 | -1/+60 |
| | |||||
* | llvmpipe: remove unused lp_rasterizer::fb field | Brian Paul | 2009-12-11 | 2 | -2/+0 |
| | |||||
* | llvmpipe: improve framebuffer/surface code | Brian Paul | 2009-12-11 | 2 | -41/+34 |
| | |||||
* | llvmpipe: fix-up #includes | Brian Paul | 2009-12-11 | 1 | -1/+1 |
| | |||||
* | llvmpipe: fix inverted util_framebuffer_state_equal() result | Brian Paul | 2009-12-11 | 1 | -1/+1 |
| | |||||
* | gallium/util: added util_unreference_framebuffer_state() | Brian Paul | 2009-12-11 | 1 | -0/+16 |
| | |||||
* | gallium/util: simplify util_framebuffer_state_equal() | Brian Paul | 2009-12-11 | 2 | -10/+16 |
| | | | | And copy width, height in util_copy_framebuffer_state(). | ||||
* | llvmpipe: remove unused fb parameter | Brian Paul | 2009-12-11 | 1 | -3/+2 |
| | |||||
* | llvmpipe: minor comment fix | Brian Paul | 2009-12-11 | 1 | -1/+1 |
| | |||||
* | llvmpipe: checkpoint: use empty/full bin queues | Brian Paul | 2009-12-10 | 2 | -8/+64 |
| | |||||
* | llvmpipe: updated comment | Brian Paul | 2009-12-10 | 1 | -3/+4 |
| | |||||
* | llvmpipe: simplify llvmpipe_set_framebuffer_state() | Brian Paul | 2009-12-10 | 1 | -20/+5 |
| | |||||
* | gallium/util: added framebuffer compare, copy util funcs | Brian Paul | 2009-12-10 | 2 | -0/+58 |
| | |||||
* | llvmpipe: added some bin queue debug code | Brian Paul | 2009-12-10 | 1 | -0/+8 |
| | |||||
* | llvmpipe: updated comments | Brian Paul | 2009-12-10 | 1 | -6/+3 |
| | |||||
* | llvmpipe: added some debug/info code | Brian Paul | 2009-12-09 | 1 | -0/+15 |
| | |||||
* | llvmpipe: simplify the tiles_x, tiles_y code a bit | Brian Paul | 2009-12-09 | 3 | -16/+11 |
| | |||||
* | progs/demos/gloss: press 'n' to advance by one frame | Brian Paul | 2009-12-09 | 1 | -0/+3 |
| | |||||
* | llvmpipe: use the empty_bins queue now | Brian Paul | 2009-12-09 | 2 | -6/+21 |
| | |||||
* | progs/demos: call glutDestroyWindow() in gloss.c | Brian Paul | 2009-12-09 | 1 | -1/+3 |
| | |||||
* | llvmpipe: checkpoint: begin plugging in bin queue code | Brian Paul | 2009-12-09 | 5 | -4/+56 |
| | |||||
* | llvmpipe: added new lp_bin_queue.[ch] files | Brian Paul | 2009-12-09 | 4 | -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() function | Brian Paul | 2009-12-09 | 3 | -25/+44 |
| | | | | This stub function will interface to the queue system... | ||||
* | llvmpipe: more bin functions for create/destroy/queries | Brian Paul | 2009-12-09 | 2 | -0/+56 |
| | |||||
* | llvmpipe: Use number of CPUs as default number of threads. | José Fonseca | 2009-12-08 | 2 | -2/+4 |
| | | | | Also bump MAX_THREADS to 8. | ||||
* | llvmpipe: remove some left-over debug code | Brian Paul | 2009-12-07 | 1 | -6/+3 |
| | |||||
* | llvmpipe: implement threaded rasterization | Brian Paul | 2009-12-07 | 2 | -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 code | Brian Paul | 2009-12-07 | 1 | -0/+50 |
| | |||||
* | llvmpipe: repartition lp_rasterizer state for threading | Brian Paul | 2009-12-07 | 5 | -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 bins | Brian Paul | 2009-12-07 | 1 | -6/+20 |
| | |||||
* | llvmpipe: introduce mutex and bin iteration functions | Brian Paul | 2009-12-07 | 2 | -0/+79 |
| | |||||
* | llvmpipe: still more bin code reorganization | Brian Paul | 2009-12-04 | 6 | -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 commit | Brian Paul | 2009-12-04 | 1 | -30/+0 |
| | |||||
* | llvmpipe: reorganization of binning data structions and funtions | Brian Paul | 2009-12-04 | 7 | -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.c | Brian Paul | 2009-12-04 | 3 | -42/+42 |
| | | | | First step of moving bin rasterization/execution code out of lp_setup.c | ||||
* | llvmpipe: simplify framebuffer state code | Brian Paul | 2009-12-04 | 4 | -24/+21 |
| | |||||
* | llvmpipe: use LP_DBG() macro everywhere | Brian Paul | 2009-12-04 | 3 | -33/+34 |
| | |||||
* | llvmpipe: fix-up polygon culling/winding | Brian Paul | 2009-12-04 | 1 | -0/+11 |
| | |||||
* | llvmpipe: add missing sources to Makefile | Brian Paul | 2009-12-04 | 1 | -0/+2 |
| | |||||
* | llvmpipe: comments and minor clean-ups | Brian Paul | 2009-12-04 | 2 | -8/+26 |
| | |||||
* | llvmpipe: move bin-related structures and functions into new lp_bin.[ch] | Brian Paul | 2009-12-04 | 8 | -149/+243 |
| | | | | And put lp_ prefixes on some functions. | ||||
* | llvmpipe: remove lp_rast_triangle::oneoverarea field | Brian Paul | 2009-12-04 | 2 | -19/+18 |
| | | | | Makes lp_rast_triangle a little smaller (now 280 bytes on a 32-bit system). | ||||
* | llvmpipe: bin state-change commands | Brian Paul | 2009-12-04 | 6 | -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_bin | Brian Paul | 2009-12-04 | 2 | -9/+21 |
| | | | | Just introducing a new structure to represent a per-tile bin. | ||||
* | llvmpipe: fix typo, whitespace | Brian Paul | 2009-12-04 | 1 | -2/+1 |
| | |||||
* | llvmpipe: dynamic allocation of triangle a0/dadx/dady arrays | Brian Paul | 2009-12-04 | 2 | -6/+14 |
| | | | | Much less memory per triangle now. |