summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary
Commit message (Collapse)AuthorAgeFilesLines
* cell: fix typo in EMIT_ macroBrian Paul2008-11-121-1/+1
|
* util: Optimise log2().Michal Krol2008-11-121-1/+2
|
* rtasm: Use INLINE keyword. Compile for all platforms, not only GALLIUM_CELL.Michal Krol2008-11-121-9/+5
|
* util: Add log2() definition for MSC.Michal Krol2008-11-121-0/+5
|
* tgsi: Fix a bug with saving/restoring xmm registers upon func call.Michal Krol2008-11-121-3/+3
|
* rtasm: Compile only for GALLIUM_CELL.Michal Krol2008-11-121-0/+4
|
* draw: Add missing include.Michal Krol2008-11-121-0/+1
|
* CELL: two-sided stencil fixesRobert Ellison2008-11-111-2/+5
| | | | | | | | | | | | | | | | | | | With these changes, the tests/stencil_twoside test now works. - Eliminate blending from the stencil_twoside test, as it produces an unneeded dependency on having blending working - The spe_splat() function will now work if the register being splatted and the destination register are the same - Separate fragment code generated for front-facing and back-facing fragments. Often these are the same; if two-sided stenciling is on, they can be different. This is easier and faster than generating code that does both tests and merges the results. - Fixed a cut/paste bug where if the back Z-pass stencil operation were different from all the other operations, the back Z-fail results were incorrect.
* Merge commit 'origin/gallium-0.1' into gallium-0.2Brian Paul2008-11-102-2/+4
|\ | | | | | | | | | | Conflicts: src/gallium/auxiliary/util/u_math.c
| * gallium: fix typos in commentsBrian Paul2008-11-101-2/+2
| |
| * gallium: actually flip the coordinatesZack Rusin2008-11-101-1/+2
| |
| * util: Fix util_fast_pow/exp2/log2.Brian2008-11-092-69/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Use a lookup table for log2. - Compute (float) (1 << ipart) by tweaking with the exponent directly to avoid integer overflow and float conversion. - Also table negative exponents to avoid float division and branching. - Implement util_fast_exp as function of util_fast_exp2. -------- Cherry-picked from gallium-0.2: 8415d06d90a197e16554dab98d160334fd9f9f93 This fixes some pow() glitches seen in fslight.c, spectex.c, etc. Conflicts: src/gallium/auxiliary/util/u_math.h
| * gallium: _debug_vprintf() should be silent if DEBUG is not definedBrian2008-11-091-0/+2
| |
* | gallium: use PIPE_ARCH_SSE to protect use of SSE instrinsics onlyBrian2008-11-092-10/+34
| | | | | | | | | | | | This allows us to use SSE codegen with debug builds again. When PIPE_ARCH_SSE is set (w/ gcc -msse -msse2) we will also use the gcc SSE intrinsic functions.
* | gallium: implement SSE codegen for TGSI_OPCODE_NRM/NRM4Brian2008-11-081-1/+33
| |
* | gallium: added SSE for DP2, DP2ABrian Paul2008-11-071-2/+22
| |
* | gallium: implement TGSI_OPCODE_DP2A, add sqrt to NRM3/NRM4Brian Paul2008-11-071-3/+19
| |
* | Merge commit 'origin/gallium-0.1' into gallium-0.2Brian Paul2008-11-071-1/+58
|\|
| * gallium: implement TGSI_OPCODE_NRM/NRM4 in tgsi_exec.cBrian2008-11-061-1/+58
| |
* | Merge commit 'origin/gallium-0.1' into gallium-0.2Brian Paul2008-11-063-5/+121
|\|
| * gallium: debug code to print vertex array data (disabled)Brian Paul2008-11-061-0/+89
| |
| * gallium: check execution mask in indirect register loadsBrian2008-11-051-0/+23
| | | | | | | | | | Zero-out the index for disabled execution channels to avoid using potential garbage values (thus avoiding bad array indexing).
| * gallium: don't range check tgsi register index for indirect accessesBrian2008-11-051-5/+9
| | | | | | | | Fixes progs/vp/arl.txt test.
* | gallium: actually flip the coordinatesZack Rusin2008-11-061-1/+2
| |
* | gallium: s/mmDestroy/u_mmDestroy/Brian Paul2008-11-051-1/+1
| |
* | Merge commit 'origin/gallium-0.1' into gallium-0.2Brian Paul2008-11-058-4/+111
|\| | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/rtasm/rtasm_execmem.c src/mesa/shader/slang/slang_emit.c src/mesa/shader/slang/slang_log.c src/mesa/state_tracker/st_atom_framebuffer.c
| * gallium: call tgsi_set_exec_mask() and use exec mask in SSE ARL codeBrian Paul2008-11-053-3/+52
| | | | | | | | | | This prevents vertex shaders from referencing invalid memory locations when the shader is operating on less than four vertices or fragments.
| * gallium: added tgsi_set_exec_mask()Brian Paul2008-11-051-0/+25
| |
| * gallium: added some sanity check assertions for constant buffer indexingBrian Paul2008-11-051-0/+4
| |
| * gallium: added some debug code (disabled)Brian Paul2008-11-051-0/+24
| |
| * gallium: disable some debug outputBrian Paul2008-11-051-1/+2
| |
| * draw: Implement TGSI_OPCODE_TRUNC.michal2008-11-051-0/+14
| |
| * tgsi: Implement OPCODE_TRUNC.michal2008-11-051-1/+17
| |
| * gallium: new sanity assertions in mmAllocMem()Brian Paul2008-10-291-0/+4
| |
| * gallium: fix copy&paste bugBrian Paul2008-10-291-1/+1
| |
| * gallium: fix alignment parameter passed to u_mmAllocMem()Brian Paul2008-10-291-2/+2
| | | | | | | | | | | | Was 32, now 5. The param is expressed as a power of two exponent. The net effect is that the alignment was a no-op on X86 but on PPC we always got the same memory address everytime rtasm_exec_malloc() was called.
* | draw: Implement TGSI_OPCODE_TRUNC.michal2008-11-051-0/+14
| |
* | tgsi: Implement OPCODE_TRUNC.michal2008-11-051-1/+17
| |
* | gallium: Silence compiler warnings on Windows.Michal Krol2008-11-031-2/+2
| |
* | gallium: Read from PIPE_FORMAT_Z32_FLOAT.José Fonseca2008-11-031-0/+29
| | | | | | | | Mainly for debugging purposes for now.
* | gallium: WinCE portability fixes.José Fonseca2008-11-032-2/+39
| |
* | gallium: Fix typo.José Fonseca2008-11-031-1/+1
| |
* | pipebuffer: Ensure refcounts of live buffer objects are never zero.José Fonseca2008-11-032-5/+13
| |
* | gallium: Fix msvc warning.José Fonseca2008-11-031-1/+1
| |
* | gallivm: replace the temp parameters of the JIT function with alloca'ed ↵Stephane Marchesin2008-10-304-30/+41
| | | | | | | | temps. This avoids useless writes of temporary results.
* | gallium: grow SPE instruction buffer as neededBrian Paul2008-10-291-16/+41
| |
* | gallium: no longer pass max_inst to ppc_init_func()Brian Paul2008-10-293-3/+3
| |
* | gallium: use execmem for PPC code, grow instruction buffer as neededBrian Paul2008-10-293-21/+58
| |
* | gallium: fix alignment parameter passed to u_mmAllocMem()Brian Paul2008-10-291-2/+2
| | | | | | | | | | | | Was 32, now 5. The param is expressed as a power of two exponent. The net effect is that the alignment was a no-op on X86 but on PPC we always got the same memory address everytime rtasm_exec_malloc() was called.
* | gallium: prefix memory manager functions with u_ to differentiate from ↵Brian Paul2008-10-294-21/+21
| | | | | | | | functions in mesa/main/mm.c