summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/gallivm/lp_bld_logic.c
AgeCommit message (Collapse)Author
2010-12-02gallivm/llvmpipe: remove lp_build_context::builderBrian Paul
The field was redundant. Use the gallivm->builder value instead.
2010-11-30gallivm/llvmpipe: squash merge of the llvm-context branchBrian Paul
This branch defines a gallivm_state structure which contains the LLVMBuilderRef, LLVMContextRef, etc. All data structures built with this object can be periodically freed during a "garbage collection" operation. The gallivm_state object has to be passed to most of the builder functions where LLVMBuilderRef used to be used. Conflicts: src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c src/gallium/drivers/llvmpipe/lp_state_setup.c
2010-10-09gallivm: prefer blendvb for integer argumentsKeith Whitwell
2010-10-08gallivm: Warn when doing inefficient integer comparisons.José Fonseca
2010-09-16gallivm: Start collecting bitwise arithmetic helpers in a new module.José Fonseca
2010-09-11gallivm: Add a new debug flag to warn about performance issues.José Fonseca
2010-09-05gallivm: Pass condition masks as an unsigned bitmask.José Fonseca
Much more convenient than boolean arrays.
2010-08-10gallivm: Fix bitwise operations for floats, division for integersnobled
http://bugs.freedesktop.org/29407 Signed-off-by: José Fonseca <jfonseca@vmware.com>
2010-08-10gallivm: Even more type checkingnobled
http://bugs.freedesktop.org/29407 Signed-off-by: José Fonseca <jfonseca@vmware.com>
2010-07-27gallivm: Add lp_build_select_bitwise() alternative to lp_build_select_bitwiseJosé Fonseca
When (mask & a) | (~mask & b) is meant instead of mask ? a : b
2010-07-06gallivm: Use SSE4.1's BLENDV instructions for lp_build_select().José Fonseca
2010-07-06gallivm: Fix 8bit comparisons.José Fonseca
2010-04-27gallivm: Ensure all allocas are in the first block.José Fonseca
Refactor the code to make this easier.
2010-03-17gallivm: added lp_build_andc()Brian Paul
2010-03-15gallivm/llvmpipe: rename some constant building functionsBrian Paul
2010-03-11gallivm/llvmpipe: include os_llvm.h instead of llvm-c/Core.hBrian Paul
2010-03-11gallivm: move declarations to silence unused var warningsBrian Paul
2010-03-11gallivm: Use bitmasks for scalar masks.José Fonseca
We could use single 1 bit conditions for scalar masks, but a lot of code expects masks. The compiler easily optimzes away masks extensions/truncations so consistency is preferable. We can revisit this when LLVM backends have more support for vector conditions.
2010-03-10llvmpipe: Finally found a way to do vector comparisons without using intrinsics.José Fonseca
Only works well with LLVM >= 2.7
2010-03-09gallivm: checkpoint: nearest mipmap filteringBrian Paul
The LOD is computed from texcoord partial derivatives and used to select a mipmap level. Still some bugs in texel fetching. Lots of rough edges and unfinished parts but the basics are in place. Lots of changes to the lp_bld_arit.c code to support non-vector/scalar datatypes.
2010-03-04gallivm: commentsBrian Paul
2010-02-08llvmpipe: switch to using dynamic stack allocation instead of registersZack Rusin
with mutable vars we don't need to follow the phi nodes. meaning that control flow becomes trivial as we don't have scan the rest of the tgsi to figure out the variable usage anymore. futhermore the memory2register pass promotes alloca/store/load to registers while inserting the right phi nodes. so we get simplicity and performance.
2010-02-08llvmpipe: export the tgsi translation code to a common layerZack Rusin
the llvmpipe tgsi translation is a lot more complete than what was in gallivm so replacing the latter with the former. this is needed since the draw llvm paths will use the same code. effectively the proven llvmpipe code becomes gallivm.