summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/llvmpipe
Commit message (Collapse)AuthorAgeFilesLines
* llvmpipe: enable primitive restartBrian Paul2010-10-211-0/+2
|
* llvmpipe: Remove unnecessary header.Vinson Lee2010-10-211-1/+0
|
* llvmpipe/draw: always enable LLVMAddInstructionCombiningPass()Brian Paul2010-10-201-7/+1
| | | | | | We were working around an LLVM 2.5 bug but we're using LLVM 2.6 or later now. This basically reverts commit baddcbc5225e12052b3bc8c07a8b65243d76574d. This fixes the piglit bug/tri-tex-crash.c failure.
* llvmpipe: Initialize variable.Vinson Lee2010-10-191-0/+1
|
* llvmpipe: Initialize state variable in debug_bin function.Vinson Lee2010-10-191-1/+1
|
* llvmpipe: Don't test rounding of x.5 numbers.José Fonseca2010-10-181-1/+4
| | | | | SSE4.1 has different rules, and so far this doesn't seem to cause any problems with conformance test suites.
* llvmpipe: remove lp_setup_coef*.c files from MakefileBrian Paul2010-10-181-2/+0
|
* llvmpipe: remove unused arg from jit_setup_tri functionKeith Whitwell2010-10-173-6/+3
|
* llvmpipe: remove unused fileKeith Whitwell2010-10-172-2/+0
|
* Merge remote branch 'origin/master' into lp-setup-llvmKeith Whitwell2010-10-1741-1242/+2086
|\ | | | | | | | | | | | | | | | | | | | | 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
| * llvmpipe: fail cleanly on malloc failure in lp_setup_alloc_triangleKeith Whitwell2010-10-171-4/+4
| |
| * llvmpipe: Return non-zero exit code for lp_test_round failures.Vinson Lee2010-10-171-10/+9
| |
| * llvmpipe: Initialize bld ctx via lp_build_context_init instead of ad-hoc and ↵José Fonseca2010-10-172-8/+2
| | | | | | | | broken code.
| * llvmpipe: Fix bad refactoring.José Fonseca2010-10-171-2/+1
| | | | | | | | | | 'i' and 'chan' have random values here, which could cause a buffer overflow in debug builds, if chan > 4.
| * llvmpipe: Ensure z_shift and z_width is initialized.José Fonseca2010-10-171-1/+1
| |
| * llvmpipe: Fix depth-stencil regression.José Fonseca2010-10-171-21/+26
| | | | | | | | | | | | | | If stencil is enabled then we need to load the z_dst, even if depth testing is disabled. This fixes reflect mesa demo.
| * llvmpipe: Move makefile include to before targetsJakob Bornecrantz2010-10-151-2/+2
| | | | | | | | Or plain make inside of the directory wont build libllvmpipe.a
| * llvmpipe: validate color outputs against key->nr_cbufsKeith Whitwell2010-10-151-1/+2
| |
| * llvmpipe: check shader outputs are non-null before usingKeith Whitwell2010-10-151-2/+2
| |
| * llvmpipe: fix non-sse build after recent changesKeith Whitwell2010-10-151-2/+2
| |
| * llvmpipe: use aligned loads/stores for plane valuesKeith Whitwell2010-10-152-9/+9
| |
| * llvmpipe: do plane calculations with intrinsicsKeith Whitwell2010-10-151-57/+148
| | | | | | | | This is a step towards moving this code into the rasterizer.
| * gallium: move some intrinsics helpers to u_sse.hKeith Whitwell2010-10-151-58/+0
| |
| * llvmpipe: don't store plane.ei value in binned dataKeith Whitwell2010-10-155-26/+8
| | | | | | | | Further reduce the size of a binned triangle.
| * llvmpipe: slightly shrink the size of a binned triangleKeith Whitwell2010-10-1512-292/+316
| |
| * llvmpipe: don't pass frontfacing as a floatKeith Whitwell2010-10-159-13/+13
| |
| * llvmpipe: reintroduce SET_STATE binner commandKeith Whitwell2010-10-159-46/+100
| | | | | | | | But bin lazily only into bins which are receiving geometry.
| * llvmpipe: code to dump bytecode to file (disabled)Brian Paul2010-10-141-0/+6
| |
| * llvmpipe: don't try to emit non-existent color outputsKeith Whitwell2010-10-141-8/+9
| |
| * llvmpipe: Generalize the x8z24 fast path to all depth formats.José Fonseca2010-10-131-111/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | Together with the previous commit, this generalize the benefits of d2cf757f44f4ee5554243f3279483a25886d9927 to all depth formats, in particular: - simpler float -> 24unorm conversion - avoid unsigned comparisons (not directly supported on SSE) by aligning to the least significant bit - avoid unecessary/repeated mask ANDing Verified with trivial/tri-z that the exact same assembly is produced for X8Z24.
| * llvmpipe: Unbreak Z32_FLOAT.José Fonseca2010-10-133-64/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | Z32_FLOAT uses <4 x float> as intermediate/destination type, instead of <4 x i32>. The necessary bitcasts got removed with commit 5b7eb868fde98388d80601d8dea39e679828f42f Also use depth/stencil type and build contexts consistently, and make the depth pointer argument a ordinary <i8 *>, to catch this sort of issues in the future (and also to pave way for Z16 and Z32_FLOAT_S8_X24 support).
| * draw/llvmpipe: replace DRAW_MAX_TEXTURE_LEVELS with PIPE_MAX_TEXTURE_LEVELSBrian Paul2010-10-121-3/+3
| | | | | | | | | | There's no apparent reason for the former to exist. And they didn't even have the same value.
| * llvmpipe: make sure intrinsics code is guarded with PIPE_ARCH_SSEKeith Whitwell2010-10-121-40/+42
| |
| * llmvpipe: improve mm_mullo_epi32José Fonseca2010-10-121-4/+3
| | | | | | | | | | Apply Jose's suggestions for a small but measurable improvement in isosurf.
| * Revert "llvmpipe: try to keep plane c values small"Keith Whitwell2010-10-122-24/+17
| | | | | | | | | | | | | | This reverts commit 9773722c2b09d5f0615a47cecf4347859474dc56. Looks like there are some floor/rounding issues here that need to be better understood.
| * gallium: move sse intrinsics debug helpers to u_sse.hKeith Whitwell2010-10-122-116/+0
| |
| * llvmpipe: Fix MSVC build.José Fonseca2010-10-121-18/+18
| | | | | | | | MSVC doesn't accept more than 3 __m128i arguments.
| * llvmpipe: fix typo in last commitKeith Whitwell2010-10-121-2/+2
| |
| * llvmpipe: try to keep plane c values smallKeith Whitwell2010-10-122-17/+24
| | | | | | | | Avoid accumulating more and more fixed point bits.
| * llvmpipe: add debug helpers for epi32 etcKeith Whitwell2010-10-121-0/+115
| |
| * llvmpipe: try to do more of rast_tri_3_16 with intrinsicsKeith Whitwell2010-10-122-9/+271
| | | | | | | | | | | | | | | | There was actually a large quantity of scalar code in these functions previously. This tries to move more into intrinsics. Introduce an sse2 mm_mullo_epi32 replacement to avoid sse4 dependency in the new rasterization code.
| * llvmpipe: Do not dispose the execution engine.José Fonseca2010-10-121-3/+0
| | | | | | | | The engine is a global owned by gallivm module.
| * llvmpipe: Use lp_tgsi_info.José Fonseca2010-10-114-30/+31
| |
| * llvmpipe: Remove outdated comment about stencil testing.José Fonseca2010-10-111-9/+2
| |
| * gallivm: Cleanup the rest of the flow module.José Fonseca2010-10-091-10/+2
| |
| * gallivm: Remove support for Phi generation.José Fonseca2010-10-091-4/+0
| | | | | | | | Simply rely on mem2reg pass. It's easier and more reliable.
| * gallivm: Don't generate Phis for execution mask.José Fonseca2010-10-092-9/+7
| |
| * llvmpipe: Fix MSVC build. Enable the new SSE2 code on non SSE3 systems.José Fonseca2010-10-091-42/+44
| |
| * llvmpipe: simplified SSE2 swz/unswz routinesKeith Whitwell2010-10-092-146/+107
| | | | | | | | | | | | | | | | We've been using these in the linear path for a while now. Based on Chris's SSSE3 code, but using only sse2 opcodes. Speed seems to be identical, but code is simpler & removes dependency on SSE3. Should be easier to extend to other rgba8 formats.
| * llvmpipe: clean up shader pre/postamble, try to catch more early-zKeith Whitwell2010-10-093-103/+193
| | | | | | | | | | | | | | | | | | Specifically, can do early-depth-test even when alpahtest or kill-pixel are active, providing we defer the actual z write until the final mask is avaialable. Improves demos/fire.c especially in the case where you get close to the trees.