summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* gallivm: Require SSE2 for draw_llvm/llvmpipe due to LLVM PR6960.Török Edwin2010-05-062-2/+18
| | | | | | | | 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]>
* softpipe: fix dangling references to shaders in the TGSI executorBrian Paul2010-05-064-20/+22
| | | | | | | | | | | | | | | If a shader was bound to the fragment shader TGSI executor and it was then deleted and a new shader was allocated at the same address as the old shader, the new fragment shader would not get properly bound to the TGSI machine and we'd wind up using the old one. This would not have been a problem if shaders were refcounted. Now the TGSI machine is owned by the context rather than the quad pipeline's shader stage so that the softpipe_delete_fs_state() function can access it. Fixes sporadic failures of the piglit fp-long-alu test (fd.o bug 27989).
* 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
|
* llvmpipe: Fix fence wait.José Fonseca2010-05-061-1/+4
| | | | | Avoids crashing when fence is NULL (LP_NUM_THREADS=0) and leaking when it is not.
* scons: Disable graw-null on msvc until linkage works.José Fonseca2010-05-061-1/+3
|
* graw-null: Try to fix MSVC linkage problems.José Fonseca2010-05-061-1/+4
|
* svga: Fix scons buildJakob Bornecrantz2010-05-061-0/+2
|
* llvmpipe: implement occlusion queryQicheng Christopher Li2010-05-0614-50/+277
| | | | | | | OpenGL occlusion queries work now. The Mesa demos, glean test and piglit tests all pass. A few enhancements are possible in the future. -Brian Signed-off-by: Brian Paul <[email protected]>
* 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]>
* raw/clear: Make it portable.José Fonseca2010-05-061-2/+3
|
* graw-null: New target to ensure we always have a graw implementation available.José Fonseca2010-05-064-3/+145
|
* graw-xlib: Remove duplicate graw.h file.José Fonseca2010-05-062-37/+1
|
* 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-0510-47/+47
| | | | | Now we have draw_elements() and draw_arrays() to be consistent with the pipe_context drawing functions.
* llvmpipe: update driver's provoking vertex codeBrian Paul2010-05-052-93/+179
| | | | | Note that the lp_setup_vbuf.c code is very, very similar to the corresponding code in softpipe. It could probably be shared.
* gallium: rework provoking vertex codeBrian Paul2010-05-057-164/+321
| | | | | | | | | | | | | | 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
|
* llvmpipe: added a new assertion as a hint to CoverityBrian Paul2010-05-051-0/+1
| | | | Looks like coverity found a false positive for an out of bounds array write.
* nouveau: only advertise PIPE_FORMAT_DXT* if s3tc availableXavier Chantry2010-05-053-8/+27
|
* graw-xlib: Revert the output dir lib change.José Fonseca2010-05-051-1/+3
|
* svga: Remove unnecessary header.Vinson Lee2010-05-041-1/+0
|
* draw: Remove unnecessary header.Vinson Lee2010-05-041-1/+0
|
* util: Remove unnecessary headers.Vinson Lee2010-05-043-3/+0
|
* llvmpipe: Remove unnecessary headers.Vinson Lee2010-05-042-2/+0
|
* r300g: Fix memory leak on error path.Vinson Lee2010-05-041-0/+1
|
* gallium: remove trailing comma in enum listBrian Paul2010-05-041-2/+2
|
* llvmpipe: predicate LLVMDumpModule() on DEBUG_JITBrian Paul2010-05-041-3/+2
|
* tests/raw: Get it building with scons.José Fonseca2010-05-054-5/+8
|
* 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
|
* llvmpipe: fix broken compressed cube mapsBrian Paul2010-05-041-27/+47
| | | | | | When the cube faces were stored in a compressed format, the img_stride values were wrong and didn't match the per-face size computed in the tex_image_face_size() function. This caused bad rendering or segfaults.
* gallium/util: added is_format_compressed()Brian Paul2010-05-041-0/+20
|
* llvmpipe: do some null pointer checkingBrian Paul2010-05-041-17/+22
|
* llvmpipe: add some tests for malloc() returning NULL.Brian Paul2010-05-042-22/+38
| | | | | Start propogating NULL pointers from allocation functions and checks for NULL in the callers...
* r300g: advertise S3TC only when it's available in GalliumMarek Olšák2010-05-041-0/+5
|
* 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-045-70/+100
|
* gallivm: Fix several glitches introduced in the prev commit.José Fonseca2010-05-043-6/+7
|
* gallivm: Implement TXD.José Fonseca2010-05-045-40/+62
|
* gallium: move surface utility functions into u_surface.cBrian Paul2010-05-0313-181/+182
| | | | 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
|