summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe/lp_rast.c
AgeCommit message (Collapse)Author
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-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-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: 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: use LP_DBG() macro everywhereBrian Paul
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-03llvmpipe: checkpoint some initial state binning codeBrian Paul
2009-12-03llvmpipe: comments and a stub for lp_rast_set_state()Brian Paul
2009-12-03llvmpipe: quick & dirty implementation of lp_rast_store_zstencil()Brian Paul
This allows us to do a glReadPixels(GL_DEPTH_COMPONENT) to see what's in the depth buffer to help debugging.
2009-12-02llvmpipe: execute shaders on 4x4 blocks instead of 8x2Brian Paul
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.
2009-11-30llvmpipe: add a bunch of commentsBrian Paul
2009-10-22llvmpipe: fix the worst of the depth regressions since switch to 4x4Keith Whitwell
2009-10-21llvmpipe: remove one of two definitions of TILESIZEKeith Whitwell
2009-10-20llvmpipe: pass mask as a linear encoding of the 4x4 blockKeith Whitwell
2009-10-20llvmpipe: precalculate some offsetsKeith Whitwell
2009-10-19llvmpipe: remove a leftover 8x2 usageKeith Whitwell
2009-10-19llvmpipe: calculate masks in format desired by shaderKeith Whitwell
Also remove branches calculating masks for quads.
2009-10-09llvmpipe: Use framebuffer coords consistently.José Fonseca
2009-10-09llvmpipe: Undo debug override.José Fonseca
2009-10-09llvmpipe: properly clip tile writesKeith Whitwell
2009-10-09llvmpipe: Pass framebuffer coords to shader.José Fonseca
2009-10-09llvmpipe: correct binning maths for iterating over whole tilesKeith Whitwell
2009-10-09llvmpipe: Get jit_context/jit_function across the rasterizer.José Fonseca
2009-10-09llvmpipe: trivial/clear worksKeith Whitwell
2009-10-09llvmpipe: more debugKeith Whitwell
2009-10-09llvmpipe: debug, crash fixesKeith Whitwell
2009-10-09llvmpipe: use union lp_cmd_rast_arg directly, rather than through a pointerKeith Whitwell
The union itself consists of pointers. We don't need to be passing pointer to pointers.
2009-10-09llvmpipe: Follow write_color/write_zstencil.José Fonseca
2009-10-09llvmpipe: calculate overall width and height, pass to rasterizerKeith Whitwell
2009-10-08llvmpipe: work on clears and coefficientsKeith Whitwell
2009-10-08llvmpipe: Remove quad headers.José Fonseca
2009-10-08llvmpipe: Fix typo.José Fonseca
2009-10-08llvmpipe: Final adjustments to rasterizer methods.José Fonseca
2009-10-08llvmpipe: Complete more rasterizer methods..José Fonseca
2009-10-08llvmpipe: Implement some of the rasterizer functions.José Fonseca
2009-10-08llvmpipe: remove some old sampler support structsKeith Whitwell
2009-10-08llvmpipe: Fix up lp_rast_shade_quads.José Fonseca
2009-10-08llvmpipe: Update includes and copyright headers.José Fonseca
2009-10-08llvmpipe: Add the rast -> jit shader glue.José Fonseca
Ugly code. Will eventually be reduced to a very thin inlined function.
2009-10-08llvmpipe: more wippingKeith Whitwell