summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary
Commit message (Collapse)AuthorAgeFilesLines
* mesa/st+tgsi: Provide a free callback to match with ureg_get_tokens().José Fonseca2010-05-112-0/+10
| | | | | | This fixes crashes with the memory debugging routines on Windows. NOTE: This is a candidate for the 7.8 stable branch
* gallivm/llvmpipe: move an old comment to a better locationBrian Paul2010-05-101-0/+11
|
* gallivm: Silent warning.José Fonseca2010-05-101-1/+1
|
* gallivm: Add missing lvalue.José Fonseca2010-05-101-1/+1
|
* gallivm: Temporarily disable custom LLVMDumpValue on MSVC.José Fonseca2010-05-101-2/+3
| | | | | | | Seeing very weird crashes during std::cout initialization. The fault probably lies in the way I build LLVM on MSVC, but disable for now to allow more time to investigate.
* gallivm: cosf/sinf are macros on MSVC.José Fonseca2010-05-101-2/+12
| | | | So taking the function address does not work.
* gallivm: Add an alternative to LLVMDumpValue that works with Windows GUI apps.José Fonseca2010-05-086-7/+111
|
* gallivm: Fix mipfiltering with negative lod bias.José Fonseca2010-05-081-2/+4
| | | | | | | In particular, don't use the clamped lod to compute level + 1, or lod in [-1, 0] range will actually interpolate with level 1. This makes Mipfilter DCT pass 100%.
* gallivm: Actually do floor/ceil/trunc for scalars.José Fonseca2010-05-083-166/+34
| | | | | | Also start axing the code duplication for scalar case. The olution is to treat the scalar case specially in a few innermost functions, and leave outer functions untouched.
* gallivm: Import the code to compute the minimax polynomials.José Fonseca2010-05-081-0/+85
| | | | | | It's quite a pain to remember the details after a while, and it is quite likely we'll want to use this again, either for different polynomial orders or different functions, so commit it here.
* gallivm: Use a minimax polynomial for exp2 in range [0,1] instead [-0.5,5].José Fonseca2010-05-081-14/+41
| | | | | | | | | | The advantage of range[-0.5, 0.5] is that it doesn't require floor (for which intrinsics are only available in SSE4.1). But the EXP opcode pretty much forces us to use floor, and there is a good floor approximation around truncation available anyway. This fixes EXP failures in VShader DCT.
* gallivm: Don't hardcode number of args twice.José Fonseca2010-05-081-1/+1
|
* gallivm: The the JIT engine to use our sinf()/cosf() on Windows.José Fonseca2010-05-081-18/+79
| | | | | A quick hack to get the right results, as there are many DCT tests which use these opcodes to generate data to test other opcodes.
* gallivm: Fix BREAK/CONT translation.José Fonseca2010-05-081-44/+63
| | | | | | | | | | The cont_mask must be restored and exec mask recomputed in order to decide whether to repeat the loop or not. Unlike the continue mask, the break_mask must be preserved across loop iterations. Fixes several VShader DCT cases, and no regressions with glean.
* gallivm: Fix segfaul when inserting allocas in an empty function.José Fonseca2010-05-081-3/+10
|
* gallivm: Centralize SoA swizzling into a single place.José Fonseca2010-05-085-70/+128
|
* gallivm: Support predicates.José Fonseca2010-05-082-8/+101
|
* gallium/draw: additional comments in the clipping codeBrian Paul2010-05-071-5/+10
|
* tgis: fix SOA aliasing for MUL instruction in SSE codegenBrian Paul2010-05-071-4/+11
| | | | Part of a fix for piglit trinity-fp1 test failure.
* gallivm: Require SSE2 for draw_llvm/llvmpipe due to LLVM PR6960.Török Edwin2010-05-061-1/+8
| | | | | | | | Note that this also requires X86 for llvm, if llvmpipe/draw_llvm works on PPC then the condition should be extended to include && x86. Signed-off-by: Török Edwin <[email protected]> Signed-off-by: José Fonseca <[email protected]>
* tgsi: make SSE ADD instruction SOA-safeBrian Paul2010-05-061-5/+13
| | | | | | | | | | | To properly execute an instruction such as "ADD tmp, tmp.wzyx, foo;" with SOA we (sometimes) need to put the results into temporaries before writing the results to the destination register. This patch fixes the ADD instruction but this needs to be done for many more instructions. Helps to fix piglit fp-long-alu test (fd.o bug 27989).
* tgsi: code refactoringBrian Paul2010-05-061-16/+34
|
* tgsi: added tgsi_get_processor_name()Brian Paul2010-05-062-0/+18
|
* tgsi: fix tgsi_exec_machine_bind_shader() to handle NULL tokens, samplersBrian Paul2010-05-061-1/+20
| | | | | | This lets us unbind a shader from the tgsi_exec_machine. Since shaders aren't ref counted we need this to properly clean up when deleting shaders elsewhere.
* gallium/tgsi: remove unused tgsi_exec_labels codeBrian Paul2010-05-062-22/+0
|
* util: Recognize FALSE and F in debug_get_bool_optionJakob Bornecrantz2010-05-061-0/+4
| | | | | Concidering that we actually print FALSE when displaying the option we should also accept that value.
* gallium: untrack u_indices_gen.c and u_indices_gen.cJosé Fonseca2010-05-064-6123/+2
| | | | | | | | | | | | These files are built with make and removed with make clean, so it does not seem necessary to track them. Looking at the Makefile, it seems that the two u_indices_* files are handled similarly to u_format_srgb.c u_format_table.c and u_half.c, and these 3 files are already untracked and in .gitignore Signed-off-by: Xavier Chantry <[email protected]> Signed-off-by: José Fonseca <[email protected]>
* Revert "gallium: untrack u_indices_gen.c and u_indices_gen.c"José Fonseca2010-05-061-2/+0
| | | | | | This incomplete patch got commited by mistake. This reverts commit 2142c769a4ebfe1a7c3facb036af8b75c5288616.
* gallium: untrack u_indices_gen.c and u_indices_gen.cXavier Chantry2010-05-061-0/+2
| | | | | | | | | | | | These files are built with make and removed with make clean, so it does not seem necessary to track them. Looking at the Makefile, it seems that the two u_indices_* files are handled similarly to u_format_srgb.c u_format_table.c and u_half.c, and these 3 files are already untracked and in .gitignore Signed-off-by: Xavier Chantry <[email protected]> Signed-off-by: José Fonseca <[email protected]>
* gallium: untrack u_indices_gen.c and u_indices_gen.cXavier Chantry2010-05-061-0/+2
| | | | | | | | | | | | These files are built with make and removed with make clean, so it does not seem necessary to track them. Looking at the Makefile, it seems that the two u_indices_* files are handled similarly to u_format_srgb.c u_format_table.c and u_half.c, and these 3 files are already untracked and in .gitignore Signed-off-by: Xavier Chantry <[email protected]> Signed-off-by: José Fonseca <[email protected]>
* gallium: still more provoking vertex fixesBrian Paul2010-05-052-11/+22
| | | | | This fixes edge flags for polygons and provoking vertex for filled quads.
* gallium: added edge flag print/debug code (disabled)Brian Paul2010-05-051-0/+20
|
* gallium: rename draw() to draw_elements() in vbuf codeBrian Paul2010-05-055-24/+24
| | | | | Now we have draw_elements() and draw_arrays() to be consistent with the pipe_context drawing functions.
* gallium: rework provoking vertex codeBrian Paul2010-05-055-49/+123
| | | | | | | | | | | | | | Builds on commit ddb0e18f6c5582d4d2cc59ffd16ad9c4639ed059 and fixes regressions in glean clipFlat test. We assume that Gallium drivers observe flatshade_first for all triangles and that all the assorted per-triangle calls in the 'draw' module also follow flatshade_first. Everything else builds on those rules. Gallium does not use follow flatshade_first for GL quads, quad strips and polygons; the "last" vertex is always the provoking vertex for those prims. So now there are separate QUAD_FIRST_PV and QUAD_LAST_PV macros in the draw primitive decomposition code instead of one QUAD macro.
* tgsi: make dumping work on non-debug buildsMarek Olšák2010-05-051-1/+1
|
* draw: Remove unnecessary header.Vinson Lee2010-05-041-1/+0
|
* util: Remove unnecessary headers.Vinson Lee2010-05-043-3/+0
|
* draw: Preserve the provoking vertex both when decomposing and clipping.José Fonseca2010-05-052-23/+31
| | | | Based on John Lawless' feedback.
* draw: Adjust wideline vertex coords for D3D.Brian Paul2010-05-051-27/+34
|
* gallium/util: added is_format_compressed()Brian Paul2010-05-041-0/+20
|
* u_blitter: fix creating fragment shadersWiktor Janas2010-05-041-7/+6
| | | | | | See FDO bug #27887. Signed-off-by: Marek Olšák <[email protected]>
* gallivm: Proper implementation of TXL opcode.José Fonseca2010-05-044-68/+96
|
* gallivm: Fix several glitches introduced in the prev commit.José Fonseca2010-05-043-6/+7
|
* gallivm: Implement TXD.José Fonseca2010-05-044-37/+58
|
* gallium: move surface utility functions into u_surface.cBrian Paul2010-05-036-179/+175
| | | | This is a better place than in u_rect.c
* gallivm: Increase the TGSI translation limits and centralize them in a header.José Fonseca2010-05-042-13/+69
|
* gallicm: Newton-Raphson step to improve precision.José Fonseca2010-05-041-2/+27
| | | | | Disabled as it doesn't make VS/PSPrecision DCT happy, and it would unnecessarily slow some cases where it is not needed.
* cso: use framebuffer utility functionsBrian Paul2010-05-031-41/+7
|
* gallium: move framebuffer utility functions into a new fileBrian Paul2010-05-036-84/+162
|
* util: add util_format_short_nameMarek Olšák2010-05-031-0/+13
|