summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe
AgeCommit message (Collapse)Author
2010-09-05llvmpipe: Remove some broken MinGW hacks in the sin/cos reference code.José Fonseca
2010-09-05llvmpipe: Fix perspective divide interpolation.José Fonseca
Intuition != mathematics, so this time I actually worked out the right formula for first order approximation of perspective interpolation. Ironically, per quad divide actually makes things slower when compared with per pixel divide -- probably because the divide hardware unit is rarely used, whereas the multiply unit is typically already saturated and the first order approximation imply more multiplications.
2010-09-05llvmpipe: Relax the colormask constraint on opaque.José Fonseca
Also, include the color buffer in the key. Not having it there causes a tight knots in the logic to determine when it is OK or not to discard previous color buffer contents.
2010-09-05gallivm: Pass condition masks as an unsigned bitmask.José Fonseca
Much more convenient than boolean arrays.
2010-08-31llvmpipe: slightly simplify build_maskKeith Whitwell
2010-08-31llvmpipe: combine linear mask calculationKeith Whitwell
2010-08-31llvmpipe: intrinsics versions of build_mask functionsKeith Whitwell
2010-08-28llvmpipe: Include missing header in lp_flush.c.Vinson Lee
Include p_screen.h for complete type to pipe_screen.
2010-08-28llvmpipe: Remove unnecessary header.Vinson Lee
2010-08-27llvmpipe: use util_iround in place of roundKeith Whitwell
Fix mingw build.
2010-08-27llvmpipe: eliminate tri->dx, tri->dy valuesKeith Whitwell
Use an internal struct for line setup information.
2010-08-27llvmpipe: point sprites rasterizationHui Qi Tay
Point sprites now done in the rasterizer setup code instead of going through the draw module.
2010-08-27llvmpipe: native point rasterization with better pixel rasterizationHui Qi Tay
A few subpixel_snap and fixed width changes. Conflicts: src/gallium/drivers/llvmpipe/lp_setup_point.c
2010-08-27llvmpipe: native point rasterizationHui Qi Tay
Conflicts: src/gallium/drivers/llvmpipe/lp_setup_context.h src/gallium/drivers/llvmpipe/lp_setup_line.c src/gallium/drivers/llvmpipe/lp_setup_tri.c
2010-08-27llvmpipe: update line rasterization code to current masterKeith Whitwell
2010-08-27llvmpipe: native line rasterization with correct pixel rasterizationHui Qi Tay
Line rasterization that follows diamond exit rule. Can still optimize logic for start/endpoints.
2010-08-27llvmpipe: native rasterization for linesHui Qi Tay
Rasterize lines directly by treating them as 4-sided polygons. Still need to check the exact pixel rasteration.
2010-08-27llvmpipe: add lp_setup_coef to makefileKeith Whitwell
2010-08-27llvmpipe: intrinsics version of triangle coeficient calculationKeith 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-26llvmpipe: fix PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS queryBrian Paul
Fixes crashes in glean glsl1 and demos/src/glsl/vert-tex. See comments for details.
2010-08-25llvmpipe: fix bad patch applicationKeith Whitwell
2010-08-25llvmpipe: Remove unnecessary header.Vinson Lee
2010-08-25llvmpipe: track drawing region as a single u_rectKeith Whitwell
2010-08-25llvmpipe: better triangle debuggingKeith Whitwell
2010-08-25llvmpipe: cull zero-area triangles earlyKeith Whitwell
2010-08-25llvmpipe: more rasterization countersKeith Whitwell
2010-08-25llvmpipe: move some fence functions into lp_screen.cKeith Whitwell
2010-08-25llvmpipe: wake all threads waiting on a fenceKeith Whitwell
2010-08-25llvmpipe: fence debugging, add llvmpipe_finishKeith Whitwell
2010-08-25llvmpipe: remove dead codeKeith Whitwell
2010-08-25gallium: Use draw_set_index_buffer and others.Chia-I Wu
Update all drivers to use draw_set_index_buffer, draw_set_mapped_index_buffer, and draw_vbo. Remove draw_set_mapped_element_buffer and draw_set_mapped_element_buffer_range.
2010-08-22llvmpipe: reduce size of fragment shader variant keyKeith Whitwell
Don't spend as much time comparing them.
2010-08-22llvmpipe: remove unused member from lp_fragment_shader_variant_keyKeith Whitwell
2010-08-22llvmpipe: don't clear unused binsKeith Whitwell
If bins outside the current scene bounds are being corrupted, we'll need to fix that separately. Currently seems ok though.
2010-08-20gallium: make all checks for PIPE_TEXTURE_2D check for PIPE_TEXTURE_RECT tooLuca Barbieri
Searched for them with: git grep -E '[!=]=.*PIPE_TEXTURE_2D|PIPE_TEXTURE_2D.*[!=]=|case.*PIPE_TEXTURE_2D' Behavior hasn't been changed.
2010-08-15llvmpipe: special case triangles which fall in a single 16x16 blockKeith Whitwell
Check for these and route them to a dedicated handler with one fewer levels of recursive rasterization.
2010-08-15llvmpipe: consolidate several loops in lp_rast_triangleKeith Whitwell
2010-08-15llvmpipe: remove all traces of step arrays, pos_tablesKeith 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-15llvmpipe: eliminate last usage of step array in rast_tmp.hKeith Whitwell
For 16 and 64 pixel levels, calculate a mask which is linear in x and y (ie not in the swizzle layout). When iterating over full and partial masks, figure out position by manipulating the bit number set in the mask, rather than relying on postion arrays. Similarly, calculate the lower-level c values from dcdx, dcdy and the position rather than relying on the step array.
2010-08-15llvmpipe: don't refer to plane->step when dcdx or dcdy would doKeith Whitwell
2010-08-15llvmpipe: also use build_mask at 16, 64 pixel levelsKeith Whitwell
2010-08-15llvmpipe: version of block4 which doesn't need the full step arrayKeith Whitwell
No noticable slowdown with isosurf.
2010-08-15llvmpipe: reorganize block4 loop, nice speedupKeith Whitwell
isosurf 95->115 fps just by exchanging the two inner loops in this function...
2010-08-11llvmpipe: Debug code to dump interpolation coefficients.José Fonseca
2010-08-11llvmpipe: Use single precision divide for one over area computation.José Fonseca
2010-08-10llvmpipe: Always use floating-point operators for floating-point typesnobled
See: http://bugs.freedesktop.org/29404 http://bugs.freedesktop.org/29407 Signed-off-by: José Fonseca <jfonseca@vmware.com>
2010-08-09util: Move _mm_shuffle_epi8() to u_sse.h.José Fonseca
It's bound to be useful elsewhere.
2010-08-06gallium: remove stray semicolonsBrian Paul
2010-08-05llvmpipe: Only get no rast option onceJakob Bornecrantz
2010-07-30llvmpipe: Silence unused value warning.Vinson Lee