summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe
AgeCommit message (Collapse)Author
2010-09-22llvmpipe: fix sprite texcoord setup for non-projective texturingBrian Paul
Normally the Mesa state tracker uses TXP instructions for texturing. But if a fragment shader uses texture2D() that's a TEX instruction. In that case we were incorrectly computing the texcoord coefficients in the point sprite setup code. Some new comments in the code explain things.
2010-09-22llvmpipe: Make rgb/alpha bland func/factors match, when there is no alpha.José Fonseca
Makes AoS blending easier, and state more canonical.
2010-09-22llvmpipe: Special case complementary and identify blend factors in SoA.José Fonseca
One multiplication instead of two. Also fix floating point random number generation and verification. TODO: Do the same for AoS blending.
2010-09-21llvmpipe: When failing free fs shader too.José Fonseca
2010-09-21llvmpipe: Describe how to profile llvmpipe.José Fonseca
2010-09-21Merge branch 'sprite-coord'Brian Paul
2010-09-21llvmpipe: fix flatshading in new line codeKeith Whitwell
Calculate interpolants before rearranging the vertices.
2010-09-20llvmpipe: check bitshift against PIPE_MAX_SHADER_OUTPUTSBrian Paul
2010-09-20llvmpipe: implement sprite coord origin modesBrian Paul
2010-09-20llvmpipe: rename sprite field, add sprite_coord_originBrian Paul
2010-09-20llvmpipe: clean-up, comments in setup_point_coefficient()Brian Paul
2010-09-20llvmpipe: reformatting, remove trailing whitespace, etcBrian Paul
2010-09-20llvmpipe: indentation fixBrian Paul
2010-09-20llvmpipe: maintain fragment shader state for draw moduleBrian Paul
2010-09-20llvmpipe: fix query bug when no there's no sceneBrian Paul
2010-09-17llvmpipe: Default to no threading on single processor systems.José Fonseca
2010-09-16gallivm: Start collecting bitwise arithmetic helpers in a new module.José Fonseca
2010-09-16llvmpipe: add DEBUG_FS to dump variant informationKeith Whitwell
2010-09-16llvmpipe: add LP_PERF flag to disable various aspects of rasterizationKeith Whitwell
Allows disabling various operations (mainly texture-related, but will grow) to try & identify bottlenecks. Unlike LP_DEBUG, this is active even in release builds - which is necessary for performance investigation.
2010-09-15llvmpipe: s/boolean/unsigned/ in bitfield to silence warningBrian Paul
Using non-int types for bitfields is a gcc extension. The size of the struct is not effected by this change.
2010-09-15llvmpipe: cast to silence warningBrian Paul
2010-09-15llvmpipe: return zero from floor_pot(zero)Keith Whitwell
2010-09-15llvmpipe: remove duplicate codeKeith Whitwell
Bad rebase presumably.
2010-09-15llvmpipe: brackets around macro argKeith Whitwell
2010-09-14llvmpipe: Remove unnecessary header.Vinson Lee
2010-09-14llvmpipe: Initialize variable for potentially unhandled switch case.Vinson Lee
2010-09-14gallium: introduce get_shader_param (ALL DRIVERS CHANGED) (v3)Luca Barbieri
Changes in v3: - Also change trace, which I forgot about Changes in v2: - No longer adds tessellation shaders Currently each shader cap has FS and VS versions. However, we want a version of them for geometry, tessellation control, and tessellation evaluation shaders, and want to be able to easily query a given cap type for a given shader stage. Since having 5 duplicates of each shader cap is unmanageable, add a new get_shader_param function that takes both a shader cap from a new enum and a shader stage. Drivers with non-unified shaders will first switch on the shader and, within each case, switch on the cap. Drivers with unified shaders instead first check whether the shader is supported, and then switch on the cap. MAX_CONST_BUFFERS is now per-stage. The geometry shader cap is removed in favor of checking whether the limit of geometry shader instructions is greater than 0, which is also used for tessellation shaders. WARNING: all drivers changed and compiled but only nvfx tested
2010-09-13llvmpipe: Fix non SSE2 builds.José Fonseca
Should fix fdo 30168.
2010-09-13llvmpipe: 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-13llvmpipe: Unbreak rasterization on 64bit.José Fonseca
2010-09-13llvmpipe: use gcc asm only with gccJosé Fonseca
2010-09-12llvmpipe: introduce tri_3_4 for tiny trianglesKeith Whitwell
2010-09-12llvmpipe: allow tri_3_16 at any 4-aligned location within a tileKeith Whitwell
Doesn't require 16-alignment, so catch more cases.
2010-09-12llvmpipe: refactor tri_3_16Keith Whitwell
Keep step array as a set of four m128i's and reuse throughout the rasterization.
2010-09-12llvmpipe: pass linear masks to fragment shaderKeith Whitwell
Fragment shader can extract the correct bits for each quad.
2010-09-12llvmpipe: fix warnings on both 32 and 64 bit buildsKeith Whitwell
2010-09-12llvmpipe: fix wierd performance regression in isosurfKeith Whitwell
I really don't understand the mechanism behind this, but it seems like the way data blocks for a scene are malloced, and in particular whether we treat them as stack or a queue, and whether we retain the most recently allocated or least recently allocated has a real affect (~5%) on isosurf framerates... This is probably specific to my distro or even just my machine, but none the less, it's nicer not to see the framerates go in the wrong direction.
2010-09-12llvmpipe: Only generate the whole shader specialization for opaque shaders.José Fonseca
If not opaque, then the color buffer will have to be read any way, therefore the specialization is pointless.
2010-09-11llvmpipe: Silence some warnings.José Fonseca
2010-09-11llvmpipe: Don't store display the alpha ref value in the key.José Fonseca
It's never used.
2010-09-11gallivm: s/lp_build_broadcast_aos/lp_build_swizzle_scalar_aos/José Fonseca
More accurate description of this function purpose.
2010-09-11llvmpipe: restore larger command blocksKeith Whitwell
2010-09-11llvmpipe: move some debug to DEBUG_SCENEKeith Whitwell
2010-09-11llvmpipe: add DEBUG_MEM optionKeith Whitwell
2010-09-11llvmpipe: allow bigger scenesKeith Whitwell
2010-09-09llvmpipe: remove redundant tgsi_dup_tokens() callBrian Paul
We were calling this twice so the first allocation was orphaned/leaked.
2010-09-07llvmpipe: Add lp_rast_debug.c to Makefile.Chia-I Wu
2010-09-07llvmpipe: Refactor lp_scene_add_resource_referenceJosé Fonseca
Less goto spaghetti.
2010-09-07llvmpipe: Fix negated logic in lp_scene_add_resource_reference().José Fonseca
Fixes performance regression.
2010-09-07llvmpipe: move more coef setup into lp_setup_coef.cKeith Whitwell