Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | llvmpipe: implement scissor test in triangle setup | Brian Paul | 2010-01-15 | 5 | -3/+15 |
| | |||||
* | llvmpipe: remove lp_rast_triangle::min/max fields | Brian Paul | 2010-01-15 | 2 | -16/+10 |
| | | | | These values aren't needed outside the do_triangle_ccw() function. | ||||
* | llvmpipe: skip 4x4 in/out test code | Brian Paul | 2010-01-15 | 1 | -14/+4 |
| | | | | | It's a litte faster to just do the in/out testing in the shader jit code. | ||||
* | llvmpipe: added comment about lookup-tables vs. computation | Brian Paul | 2010-01-15 | 1 | -0/+3 |
| | |||||
* | llvmpipe: change 'in' to boolean, add comments | Brian Paul | 2010-01-15 | 1 | -4/+4 |
| | |||||
* | llvmpipe: generate two shader varients, one omits triangle in/out testing | Brian Paul | 2010-01-15 | 8 | -52/+142 |
| | | | | | | | When we know that a 4x4 pixel block is entirely inside of a triangle use the jit function which omits the in/out test code. Results in a few percent speedup in many tests. | ||||
* | llvmpipe: asst code changes in lp_state_fs.c | Brian Paul | 2010-01-15 | 1 | -27/+32 |
| | |||||
* | llvmpipe: put labels on some value refs | Brian Paul | 2010-01-15 | 1 | -1/+5 |
| | |||||
* | llvmpipe: add extra flags to DEFINES, no CFLAGS | Brian Paul | 2010-01-15 | 1 | -1/+1 |
| | | | | | Doesn't make any real difference but -D flags are put into DEFINES everywhere else. | ||||
* | progs/trival: updated tri-scissor-tri.c test | Brian Paul | 2010-01-14 | 1 | -11/+47 |
| | | | | | The scissor left/right/bottom/top bounds can be moved by pressing the l/r/b/t and L/R/B/T keys. | ||||
* | llvmpipe: implement scissor testing | Brian Paul | 2010-01-14 | 8 | -7/+134 |
| | | | | | | | | | | | The scissor test is implemented as another per-quad operation in the JIT code. The four scissor box params are passed via the lp_jit_context. In the JIT code we compare the quad's x/y coords against the clip bounds and create a new in/out mask that's AND'd with the main quad mask. Note: we should also do scissor testing in the triangle setup code to improve efficiency. That's not done yet. | ||||
* | llvmpipe: minor comment update | Brian Paul | 2010-01-14 | 1 | -1/+1 |
| | |||||
* | llvmpipe: clean-up, fixing up frame dump/debug code | Brian Paul | 2010-01-14 | 1 | -7/+12 |
| | |||||
* | gallium/util: added debug_dump_texture() and ppm output | Brian Paul | 2010-01-14 | 2 | -0/+79 |
| | | | | Now we can get dump debug images on Linux too. | ||||
* | llvmpipe: remove redundant code in llvmpipe_set_blend_color() | Brian Paul | 2010-01-14 | 1 | -3/+0 |
| | |||||
* | llvmpipe: assorted clean-ups in texture code | Brian Paul | 2010-01-14 | 3 | -33/+29 |
| | |||||
* | llvmpipe: use one loop in lp_rast_clear_zstencil() | Brian Paul | 2010-01-13 | 1 | -4/+3 |
| | | | | This is just a tiny bit faster. | ||||
* | llvmpipe: optimize lp_rast_clear_color() for non-gray colors | Brian Paul | 2010-01-13 | 1 | -6/+22 |
| | | | | | This makes a big difference in progs that clear to a non-gray color. Some demos are 30-50% faster. | ||||
* | llvmpipe: minor assorted clean-ups | Brian Paul | 2010-01-13 | 1 | -10/+12 |
| | |||||
* | llvmpipe: check render targets before other textures | Brian Paul | 2010-01-13 | 1 | -6/+9 |
| | |||||
* | llvmpipe: also check render target textures in lp_setup_is_texture_referenced() | Brian Paul | 2010-01-13 | 1 | -0/+9 |
| | |||||
* | llvmpipe: indentation fixes | Brian Paul | 2010-01-13 | 1 | -4/+4 |
| | |||||
* | llvmpipe: re-get scene pointer after flushing | Brian Paul | 2010-01-13 | 1 | -0/+3 |
| | |||||
* | llvmpipe: check for texture usage in all scenes | Brian Paul | 2010-01-13 | 2 | -10/+16 |
| | |||||
* | llvmpipe: add scene texture referencing code | Brian Paul | 2010-01-13 | 2 | -9/+22 |
| | |||||
* | llvmpipe: added scene functions for texture reference counting | Brian Paul | 2010-01-13 | 2 | -0/+64 |
| | | | | | | When a texture is used in the scene we add it to a list of texture references. The lp_scene_is_textured_referenced() function tells us if a texture is referenced by the scene. | ||||
* | llvmpipe: comments | Brian Paul | 2010-01-13 | 1 | -0/+4 |
| | |||||
* | llvmpipe: comments | Brian Paul | 2010-01-13 | 1 | -3/+5 |
| | |||||
* | llvmpipe: added llvmpipe_texture_const() | Brian Paul | 2010-01-13 | 1 | -0/+7 |
| | |||||
* | llvmpipe: minor comment upgrades | Brian Paul | 2010-01-13 | 1 | -2/+2 |
| | |||||
* | llvmpipe: Opaque shader implies complete colormask too. | José Fonseca | 2010-01-13 | 1 | -0/+2 |
| | |||||
* | llvmpipe: Reset the bin when shading a whole tile with an opaque shader. | José Fonseca | 2010-01-13 | 7 | -16/+48 |
| | |||||
* | llvmpipe: add bin debugger | Keith Whitwell | 2010-01-13 | 1 | -5/+52 |
| | | | | | | | Adjust definition of empty_bin according to what's actually in empty bins. We often have a state packet before/after load commands. Still need to do something about the fence packets. | ||||
* | llvmpipe: implement lp_rast_load_zstencil | Keith Whitwell | 2010-01-13 | 1 | -2/+34 |
| | | | | | Load zbuffer contents for binned scenes that don't start with a clear and which have a bound zbuffer. | ||||
* | llvmpipe: added debug warning | Brian Paul | 2010-01-13 | 1 | -0/+1 |
| | |||||
* | llvmpipe: comments and LLVMValueRef naming | Brian Paul | 2010-01-13 | 1 | -0/+7 |
| | |||||
* | llvmpipe: tweak subpixel_snap() arithmetic | Brian Paul | 2010-01-13 | 1 | -1/+1 |
| | | | | | This adjustment fixes some rasterization differences between llvmpipe and softpipe (and other renderers). | ||||
* | llvmpipe: improve empty-bin test further | Keith Whitwell | 2010-01-13 | 1 | -3/+13 |
| | | | | Remove unused param, add comments. Thanks to Brian for review. | ||||
* | llvmpipe: improve empty-bin test | Keith Whitwell | 2010-01-13 | 1 | -1/+1 |
| | | | | We emit at most two clear packets (color and z respectively). | ||||
* | llvmpipe: quick hack to short-circuit empty bins | Keith Whitwell | 2010-01-13 | 2 | -2/+25 |
| | |||||
* | llvmpipe: fix indentation, comment typo | Brian Paul | 2010-01-12 | 1 | -4/+4 |
| | |||||
* | llvmpipe: debug checks: make sure scene is empty at key points | Brian Paul | 2010-01-12 | 1 | -0/+4 |
| | |||||
* | llvmpipe: assert that we're putting data into a valid bin | Brian Paul | 2010-01-12 | 1 | -0/+3 |
| | |||||
* | llvmpipe: clamp maxx,maxy to framebuffer size (in terms of tiles) | Brian Paul | 2010-01-12 | 1 | -0/+5 |
| | | | | | | | | | | | In some corner cases the right-most / bottom-most vertex can be right on the edge of the framebuffer. Because the maxx, maxy vals are computed with a series of float/int, pixel/tile transformations we can end up with maxx >= scene->x_tiles or maxy >= scene->y_tiles. This leads to putting data into bins that never get processed, or reset. This becomes stale data that can lead to segfaults. Clamping fixes this. | ||||
* | llvmpipe: added lp_scene_is_empty() | Brian Paul | 2010-01-12 | 2 | -0/+24 |
| | |||||
* | llvmpipe: silence unused var warnings | Brian Paul | 2010-01-12 | 1 | -3/+5 |
| | |||||
* | llvmpipe: remove unused #define | Brian Paul | 2010-01-12 | 1 | -3/+0 |
| | |||||
* | llvmpipe: disable the all in/out test code for now | Brian Paul | 2010-01-11 | 1 | -1/+1 |
| | | | | | It's still faster not to try to special case the "all pixels are known to be inside the triangle" case. | ||||
* | llvmpipe: move, update comments | Brian Paul | 2010-01-11 | 1 | -17/+10 |
| | |||||
* | llvmpipe: refactor generate_fragment() code | Brian Paul | 2010-01-11 | 1 | -62/+76 |
| | | | | | This will make it easier to generate multiple versions of the fragment code per variant. |