Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-01-12 | llvmpipe: debug checks: make sure scene is empty at key points | Brian Paul | |
2010-01-12 | llvmpipe: assert that we're putting data into a valid bin | Brian Paul | |
2010-01-12 | llvmpipe: clamp maxx,maxy to framebuffer size (in terms of tiles) | Brian Paul | |
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. | |||
2010-01-12 | llvmpipe: added lp_scene_is_empty() | Brian Paul | |
2010-01-12 | llvmpipe: silence unused var warnings | Brian Paul | |
2010-01-12 | llvmpipe: remove unused #define | Brian Paul | |
2010-01-11 | llvmpipe: disable the all in/out test code for now | Brian Paul | |
It's still faster not to try to special case the "all pixels are known to be inside the triangle" case. | |||
2010-01-11 | llvmpipe: move, update comments | Brian Paul | |
2010-01-11 | llvmpipe: refactor generate_fragment() code | Brian Paul | |
This will make it easier to generate multiple versions of the fragment code per variant. | |||
2010-01-11 | llvmpipe: do the all-in test on the scalar c0 instead of vector c0 | Brian Paul | |
This still isn't faster, but committing it for posterity. | |||
2010-01-11 | llvmpipe: force constant interpolation of flatshade colors | Keith Whitwell | |
Nice speedup for gears. | |||
2010-01-11 | llvmpipe: remove opencoded constant | Keith Whitwell | |
2010-01-11 | llvmpipe: remove scissor cliprect derived state | Keith Whitwell | |
Was previously calculating the intersection of the scissor rectangle and the framebuffer dimensions. Rendering is already restricted to framebuffer dimensions by other means, so scissor testing (when implemented) can just use the scissor state directly. | |||
2010-01-10 | llvmpipe: initial mrt support | Keith Whitwell | |
Non-mrt apps work, and the code looks correct, but not many mrt test apps handy atm... | |||
2010-01-08 | llvmpipe: optimize case when all four pixels are inside the triangle | Brian Paul | |
When the incoming c0,c1,c2 values are equal to INT_MIN it means that all pixels are inside the triangle. Thus we can skip the detailed pixel inside/outside triangle tests. Use the new lp_build_if()/endif() functions to generate the branching code. The code is disabled ATM however because it's actually a little slower than the original code. A little more tuning may fix that though... | |||
2010-01-08 | llvmpipe: fix more if/else/endif design bugs | Brian Paul | |
2010-01-08 | llvmpipe: move some fields to the private lp_build_flow_if struct | Brian Paul | |
2010-01-08 | llvmpipe: free the phi array | Brian Paul | |
2010-01-08 | llvmpipe: checkpoint if/else/endif contructs work | Brian Paul | |
The LLVM IR looks correct now. Basic blocks are where they're supposed to be and the Phi functions have the right (var,block) information. | |||
2010-01-08 | Merge remote branch 'origin/master' into lp-binning | José Fonseca | |
Conflicts: src/gallium/auxiliary/util/u_surface.c src/gallium/drivers/llvmpipe/Makefile src/gallium/drivers/llvmpipe/SConscript src/gallium/drivers/llvmpipe/lp_bld_arit.c src/gallium/drivers/llvmpipe/lp_bld_flow.c src/gallium/drivers/llvmpipe/lp_bld_interp.c src/gallium/drivers/llvmpipe/lp_clear.c src/gallium/drivers/llvmpipe/lp_context.c src/gallium/drivers/llvmpipe/lp_context.h src/gallium/drivers/llvmpipe/lp_draw_arrays.c src/gallium/drivers/llvmpipe/lp_jit.c src/gallium/drivers/llvmpipe/lp_jit.h src/gallium/drivers/llvmpipe/lp_prim_vbuf.c src/gallium/drivers/llvmpipe/lp_setup.c src/gallium/drivers/llvmpipe/lp_setup_point.c src/gallium/drivers/llvmpipe/lp_state.h src/gallium/drivers/llvmpipe/lp_state_blend.c src/gallium/drivers/llvmpipe/lp_state_derived.c src/gallium/drivers/llvmpipe/lp_state_fs.c src/gallium/drivers/llvmpipe/lp_state_sampler.c src/gallium/drivers/llvmpipe/lp_state_surface.c src/gallium/drivers/llvmpipe/lp_tex_cache.c src/gallium/drivers/llvmpipe/lp_tex_cache.h src/gallium/drivers/llvmpipe/lp_tex_sample.h src/gallium/drivers/llvmpipe/lp_tile_cache.c | |||
2010-01-08 | tgsi: Cleanup dot-product opcodes in interpreter. | Michal Krol | |
2010-01-08 | nv20: Fix build for the latest nouveau_class.h changes. | Francisco Jerez | |
2010-01-08 | scons: Don't build xlib when dri is enabled. | José Fonseca | |
Hopefully adddresses fdo 25828. | |||
2010-01-08 | lvmpipe: Initialize all coordinates. | José Fonseca | |
Fixes assertion failure with fp-incomplete-tex (fdo 24298). | |||
2010-01-08 | scons: Output a meaningful message when xlib libGL.so can't be built. | José Fonseca | |
2010-01-07 | st/xorg: remove unused xorg_exa_get_pixmap_handle function | Keith Whitwell | |
2010-01-07 | nv50: preallocate TEMPs written first time in a subroutine | Christoph Bumiller | |
Otherwise we risk overwriting them with temporary GPRs if they're not used immediately after the CALL. | |||
2010-01-07 | nv50: handle TGSI_OPCODE_SAD,UADD | Christoph Bumiller | |
2010-01-07 | nv50: handle TGSI_OPCODE_IMAX,IMIN,UMAX,UMIN | Christoph Bumiller | |
2010-01-07 | nv50: handle integer SET operations | Christoph Bumiller | |
2010-01-07 | nv50: handle TGSI_OPCODE_SHL,ISHR,USHR | Christoph Bumiller | |
2010-01-07 | nv50: handle TGSI_OPCODE_F2I,F2U,I2F,U2F plus src mods | Christoph Bumiller | |
2010-01-07 | tgsi: add assertion to verify legal register file | Brian Paul | |
This assertion fails with piglit glsl-vs-mov-after-deref test because we're double freeing the memory. It seems there's some confusion between what's placed in the hash table and what isn't. | |||
2010-01-07 | tgsi: fix incorrectly placed braces, add more braces to be clear | Brian Paul | |
2010-01-07 | tgsi: move register checking code before check_register_usage() | Brian Paul | |
check_register_usage() frees the scan_register *reg data so we were reading from freed memory. This fixes a valgrind error found with piglit's glsl-vs-mov-after-deref test. | |||
2010-01-07 | gallium/util: remove useless assertions | Brian Paul | |
2010-01-07 | gallium/util: update comment: s/src_pitch/src_stride | Brian Paul | |
2010-01-07 | gallium/util: make src_y unsigned like the other x/y params | Brian Paul | |
2010-01-07 | llvmpipe: Remove TGSI sampler pointers from JIT context too. | José Fonseca | |
2010-01-07 | llvmpipe: Remove more loose ends of TGSI exec sampling. | José Fonseca | |
2010-01-07 | i965g: updates for draw retval | Keith Whitwell | |
2010-01-07 | llvmpipe: Axe texture sampling code inherited from softpipe. | José Fonseca | |
Was used only as a reference, since texture sampling is now code generated. Already axed in the lp-binning branch too. This fixes the llvmpipe build after recent sampling changes. | |||
2010-01-07 | gallium: Fix texture sampling with explicit LOD in softpipe. | Michal Krol | |
2010-01-07 | gallium: Pass per-element (not per-quad) LOD bias values down to texture ↵ | Michal Krol | |
sampler. | |||
2010-01-07 | tgsi: Cleanup exec_tex(). | Michal Krol | |
2010-01-07 | svga: Fix fs key size computation and key comparison. | Michal Krol | |
This also allows us to have texture_target back as a bitfield and save us a few bytes. | |||
2010-01-06 | llvmpipe: checkpoint commit of new if/else/endif flow control | Brian Paul | |
Totally untested at this point. More work to do. | |||
2010-01-06 | llvmpipe: more comments in flow builder code | Brian Paul | |
2010-01-06 | r300g: add back-face color VS outputs | Marek Olšák | |
Required for two-sided lighting. BTW we are approaching softpipe-level quality. ;) | |||
2010-01-06 | r300g: fix SWTCL stream locations of texture coordinates | Marek Olšák | |
It might have caused hardlocks when TCL was bypassed, not sure. |