Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-11-04 | llvmpipe: added some debug assertions, but disabled | Brian Paul | |
2010-11-02 | llvmpipe: avoid generating tri_16 for tris which extend past tile bounds | Keith Whitwell | |
Don't trim triangle bounding box to scissor/draw-region until after the logic for emitting tri_16. Don't generate tri_16 commands for triangles with untrimmed bounding boxes outside the current tile. This is important as the tri-16 itself can extend past tile bounds and we don't want to add code to it to check against tile bounds (slow) or restrict it to locations within a tile (pessimistic). | |||
2010-10-17 | llvmpipe: remove unused arg from jit_setup_tri function | Keith Whitwell | |
2010-10-17 | Merge remote branch 'origin/master' into lp-setup-llvm | Keith Whitwell | |
Conflicts: src/gallium/drivers/llvmpipe/lp_setup_coef.c src/gallium/drivers/llvmpipe/lp_setup_coef.h src/gallium/drivers/llvmpipe/lp_setup_coef_intrin.c src/gallium/drivers/llvmpipe/lp_setup_point.c src/gallium/drivers/llvmpipe/lp_setup_tri.c src/gallium/drivers/llvmpipe/lp_state_derived.c src/gallium/drivers/llvmpipe/lp_state_fs.h | |||
2010-10-17 | llvmpipe: fail cleanly on malloc failure in lp_setup_alloc_triangle | Keith Whitwell | |
2010-10-15 | llvmpipe: use aligned loads/stores for plane values | Keith Whitwell | |
2010-10-15 | llvmpipe: do plane calculations with intrinsics | Keith Whitwell | |
This is a step towards moving this code into the rasterizer. | |||
2010-10-15 | llvmpipe: don't store plane.ei value in binned data | Keith Whitwell | |
Further reduce the size of a binned triangle. | |||
2010-10-15 | llvmpipe: slightly shrink the size of a binned triangle | Keith Whitwell | |
2010-10-15 | llvmpipe: don't pass frontfacing as a float | Keith Whitwell | |
2010-10-15 | llvmpipe: reintroduce SET_STATE binner command | Keith Whitwell | |
But bin lazily only into bins which are receiving geometry. | |||
2010-10-12 | Revert "llvmpipe: try to keep plane c values small" | Keith Whitwell | |
This reverts commit 9773722c2b09d5f0615a47cecf4347859474dc56. Looks like there are some floor/rounding issues here that need to be better understood. | |||
2010-10-12 | llvmpipe: try to keep plane c values small | Keith Whitwell | |
Avoid accumulating more and more fixed point bits. | |||
2010-10-08 | llvmpipe: add rast_tri_4_16 for small lines and points | Keith Whitwell | |
2010-10-08 | llvmpipe: clean up setup_tri a little | Keith Whitwell | |
2010-10-08 | llvmpipe: avoid overflow in triangle culling | Keith Whitwell | |
Avoid multiplying fixed-point values. Calculate triangle area in floating point use that for culling. Lift area calculations up a level as we are already doing this in the triangle_both() case. Would like to share the calculated area with attribute interpolation, but the way the code is structured makes this difficult. | |||
2010-10-08 | llvmpipe: fail gracefully on oom in scene creation | Keith Whitwell | |
2010-09-25 | llvmpipe: handle up to 8 planes in triangle binner | Keith Whitwell | |
2010-09-18 | llvmpipe: use llvm for attribute interpolant calculation | Keith Whitwell | |
Basically no change relative to hard-coded version, but this will be useful for other changes later. | |||
2010-09-15 | llvmpipe: return zero from floor_pot(zero) | Keith Whitwell | |
2010-09-13 | llvmpipe: Change asm to __asm__. | Witold Baryluk | |
According to gcc documentation both are equivalent, second are prefered as first can make conflict with existing symbols. Signed-off-by: José Fonseca <jfonseca@vmware.com> | |||
2010-09-13 | llvmpipe: Unbreak rasterization on 64bit. | José Fonseca | |
2010-09-13 | llvmpipe: use gcc asm only with gcc | José Fonseca | |
2010-09-12 | llvmpipe: introduce tri_3_4 for tiny triangles | Keith Whitwell | |
2010-09-12 | llvmpipe: allow tri_3_16 at any 4-aligned location within a tile | Keith Whitwell | |
Doesn't require 16-alignment, so catch more cases. | |||
2010-09-07 | llvmpipe: move more coef setup into lp_setup_coef.c | Keith Whitwell | |
2010-09-07 | llvmpipe: use opcodes instead of function pointers in bins | Keith Whitwell | |
Also, move some state from rasterizer struct to the scene. | |||
2010-09-07 | llvmpipe: enforce fixed memory limit on scenes | Keith Whitwell | |
2010-09-07 | llvmpipe: move whole-tile emit into a function | Keith Whitwell | |
2010-08-27 | llvmpipe: update line rasterization code to current master | Keith Whitwell | |
2010-08-27 | llvmpipe: native rasterization for lines | Hui Qi Tay | |
Rasterize lines directly by treating them as 4-sided polygons. Still need to check the exact pixel rasteration. | |||
2010-08-27 | llvmpipe: intrinsics version of triangle coeficient calculation | Keith Whitwell | |
Looks nice, but makes almost no impact on performance - maybe a percent or so in isosurf, nothing elsewhere. May be of use later on. | |||
2010-08-25 | llvmpipe: track drawing region as a single u_rect | Keith Whitwell | |
2010-08-25 | llvmpipe: better triangle debugging | Keith Whitwell | |
2010-08-25 | llvmpipe: cull zero-area triangles early | Keith Whitwell | |
2010-08-15 | llvmpipe: special case triangles which fall in a single 16x16 block | Keith Whitwell | |
Check for these and route them to a dedicated handler with one fewer levels of recursive rasterization. | |||
2010-08-15 | llvmpipe: remove all traces of step arrays, pos_tables | Keith Whitwell | |
No need to calculate these values any longer, nor to store them in the bin data. Improves isosurf a bit more, 115->123 fps. | |||
2010-08-11 | llvmpipe: Debug code to dump interpolation coefficients. | José Fonseca | |
2010-08-11 | llvmpipe: Use single precision divide for one over area computation. | José Fonseca | |
2010-07-14 | llvmpipe: Remove redundant alignments. | José Fonseca | |
The lp_rast_shader_inputs' alignment is irrelevant now that it contains pointers instead of actual data. Likewise, lp_rast_triangle's size alignment is meaningless. | |||
2010-07-13 | llvmpipe: eliminate the set_state rasterizer command | Keith Whitwell | |
Just put a pointer to the state in the tri->inputs struct. Remove some complex logic for eliminating unused statechanges in bins at the expense of a slightly larger triangle struct. | |||
2010-07-13 | llvmpipe: pass mask into fragment shader | Keith Whitwell | |
Move this code back out to C for now, will generate separately. Shader now takes a mask parameter instead of C0/C1/C2/etc. Shader does not currently use that parameter and rasterizes whole pixel stamps always. | |||
2010-06-30 | llvmpipe: Don't reset the bin when there's a zsbuf bound. | José Fonseca | |
The previous rendering may have secondary effects on the zsbuf. Fixes the missing tiles on gearbox. | |||
2010-06-01 | llvmpipe: Use struct lp_shader_input in the interpolator. | José Fonseca | |
Eliminates all this identical yet slightly different code to decide how shader inputs should be interpolated. As bonus, don't interpolate the position twice when it is listed in the TGSI shader inputs. | |||
2010-06-01 | llvmpipe: Don't waste time interpolating unused input channels. | José Fonseca | |
2010-05-30 | llvmpipe: Pass the fs variant to the rasterizer. | José Fonseca | |
2010-05-28 | llvmpipe: add out of memory checking to triangle setup path | Brian Paul | |
2010-05-17 | llvmpipe: fix front/back tri culling mix-up | Brian Paul | |
2010-05-14 | gallium: convert rasterizer state to use gl-style front/back concepts | Keith Whitwell | |
Use front/back instead of cw/ccw throughout. Also, use offset_point/line/fill instead of offset_cw/ccw. Brings gallium representation of this state into line with its main user, and also what turns out to be the most common hardware representation. This fixes a long-standing bias in the interface towards the architecture of the software rasterizer. | |||
2010-05-05 | llvmpipe: update driver's provoking vertex code | Brian Paul | |
Note that the lp_setup_vbuf.c code is very, very similar to the corresponding code in softpipe. It could probably be shared. |