summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/llvmpipe
Commit message (Collapse)AuthorAgeFilesLines
* llvmpipe: added some debug assertions, but disabledBrian Paul2010-11-041-0/+10
|
* llvmpipe: add a castBrian Paul2010-11-021-1/+1
|
* llvmpipe: assign context's frag shader pointer before using itBrian Paul2010-11-021-2/+2
| | | | | | The call to draw_bind_fragment_shader() was using the old fragment shader. This bug would have really only effected the draw module's use of the fragment shader in the wide point stage.
* llvmpipe: guard against NULL task->query pointerKeith Whitwell2010-11-021-2/+5
| | | | | | This doesn't seem like it should be possible, but some test suites manage to hit this case. Avoid crashing release builds under those circumstances.
* llvmpipe: avoid generating tri_16 for tris which extend past tile boundsKeith Whitwell2010-11-022-14/+35
| | | | | | | | | | 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).
* scons: Revamp how to specify targets to build.José Fonseca2010-11-012-61/+10
| | | | | | | | | | | | | | | | | | | | | | Use scons target and dependency system instead of ad-hoc options. Now is simply a matter of naming what to build. For example: scons libgl-xlib scons libgl-gdi scons graw-progs scons llvmpipe and so on. And there is also the possibility of scepcified subdirs, e.g. scons src/gallium/drivers If nothing is specified then everything will be build. There might be some rough corners over the next days. Please bare with me.
* gallivm: Remove the EMMS opcodes.José Fonseca2010-10-281-5/+0
| | | | | Unnecessary now that lp_set_target_options() successful disables MMX code emission.
* gallium: Avoid using __doc__ in python scripts.José Fonseca2010-10-281-2/+2
|
* Fix build on systems where "python" is python 3.Kenneth Graunke2010-10-271-1/+1
| | | | | | | | | | | First, it changes autoconf to use a "python2" binary when available, rather than plain "python" (which is ambiguous). Secondly, it changes the Makefiles to use $(PYTHON) $(PYTHON_FLAGS) rather than calling python directly. Signed-off-by: Xavier Chantry <[email protected]> Signed-off-by: Matthew William Cox <[email protected]> Signed-off-by: Kenneth Graunke <[email protected]>
* 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.