summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary
Commit message (Collapse)AuthorAgeFilesLines
* draw: re-order optimization passes depending on LLVM version, 32/64-bitBrian Paul2010-07-221-2/+15
| | | | | This is a work-around for an apparent bug in LLVM seen with piglit's glsl-vs-sqrt-zero test.
* draw: added new assertions to clipping codeBrian Paul2010-07-221-1/+10
|
* draw: disable depth clipping if depth clamp is enabledMarek Olšák2010-07-213-4/+11
|
* cso: handle depth clampMarek Olšák2010-07-211-0/+4
|
* draw: tweak aa line width threshold and samplingBrian Paul2010-07-211-4/+6
| | | | | | Set sampler max_lod to avoid sampling the 1x1 and 2x2 mipmap levels. Fixes piglit line-aa-width test, fd.o bug 29160.
* gallivm: replace has_indirect_addressing field with indirect_files fieldBrian Paul2010-07-211-8/+17
| | | | | | | | | | Instead of one big boolean indicating indirect addressing, use a bitfield indicating which register files are accessed with indirect addressing. Most shaders that use indirect addressing only use it to access the constant buffer. So no need to use an array for temporary registers in this case.
* tgsi: added tgsi_shader_info::indirect_files fieldBrian Paul2010-07-212-0/+19
| | | | Indicates which register files are accessed with indirect addressing.
* gallivm: refactor code into get_indirect_offsets() functionBrian Paul2010-07-211-23/+34
|
* gallivm: added commentBrian Paul2010-07-211-0/+6
|
* gallivm: remove extraneous bracesBrian Paul2010-07-211-20/+18
|
* gallivm: no longer do indirect addressing in get_temp_ptr()Brian Paul2010-07-211-20/+15
|
* gallivm: implement correct indirect addressing of temp registersBrian Paul2010-07-211-11/+29
| | | | | As with indexing the const buffer, the ADDR reg may have totally different values for each element. Need to use a gather operation.
* gallivm: re-org, comments for get_temp_ptr()Brian Paul2010-07-211-3/+13
|
* draw: whitespace clean-upBrian Paul2010-07-211-33/+33
|
* gallivm: rename a var to avoid compiler warningsBrian Paul2010-07-211-2/+2
|
* gallivm: fix indirect addressing of constant bufferBrian Paul2010-07-201-25/+83
| | | | | | | | | The previous code assumed that all elements of the address register were the same. But it can vary from pixel to pixel or vertex to vertex so we must use a gather operation when dynamically indexing the constant buffer. Still need to fix this for the temporary register file...
* gallivm: added lp_build_const_int32() helperBrian Paul2010-07-201-0/+8
|
* draw: correctly handle max_index=0xffffffff case in vcache codeBrian Paul2010-07-201-6/+14
| | | | | | | | | | If max_index=0xffffffff and elt_bias > 0 the test for elt_bias + max_index >= DRAW_PIPE_MAX_VERTICES was wrong. Check earlier if max_index=0xffffffff and do the "fail" case. This fixes the piglit draw-elements-base-vertex test (and probably some other things).
* util: mempool: initialize last block's magic number in a pageMarek Olšák2010-07-201-0/+1
|
* draw: fix incorrect instancing divisor in LLVM codeBrian Paul2010-07-191-3/+6
|
* util: remove the dummy field in mempoolMarek Olšák2010-07-192-14/+4
| | | | It should allocate less memory now.
* util: add dummy field to empty structure typesBrian Paul2010-07-192-2/+2
| | | | | Empty structure types aren't allowed with MSVC. I haven't tested this change. Hope I haven't broken it...
* util: add a memory pool for equally sized memory allocationsMarek Olšák2010-07-194-0/+267
| | | | malloc/free are in O(1).
* scons: Fix Cygwin build.Vinson Lee2010-07-161-3/+3
| | | | The Cygwin SCons build needed several file names to be fully qualified.
* draw: updated debug/dump codeBrian Paul2010-07-161-12/+25
|
* draw: added array element debug / bounds checking code (disabled)Brian Paul2010-07-161-4/+24
|
* draw/llvm: adjust the instance id at run timeZack Rusin2010-07-163-16/+29
| | | | fixes instancing in draw llvm
* draw: use the instance id when fetching vertex dataZack Rusin2010-07-161-3/+11
|
* draw: update comments for drawing functionsBrian Paul2010-07-151-5/+16
|
* draw: move prototype, update commentBrian Paul2010-07-151-3/+3
|
* tgsi: Remove dead assignment in uprcase function.Vinson Lee2010-07-151-1/+1
|
* Merge branch 'mesa-2d-registers'Zack Rusin2010-07-133-5/+14
|\
| * tgsi: make sure that we print out the adjacency prims correctlyZack Rusin2010-07-101-1/+5
| |
| * draw: fix decomposition to work with adjacency primitivesZack Rusin2010-07-101-3/+8
| |
| * mesa: get the translation from mesa 2d regs to tgsi workingZack Rusin2010-07-101-1/+1
| | | | | | | | first working version of arb_geometry_shader4
* | os: remove gratuitous pipe_barrier placeholder codenobled2010-07-121-21/+1
| | | | | | | | | | | | | | There's already an implementation of pipe_barrier using the other pipe_* primitives; just use that on Windows, too. Now Windows passes pipe_barrier_test.
* | os, rbug: remove PIPE_THREAD_HAVE_CONDVARnobled2010-07-121-1/+0
| | | | | | | | | | The new default implementation of pipe_condvar makes it unnecessary.
* | os: Implement pipe_condvar on Windows Vista and laternobled2010-07-121-0/+30
| | | | | | | | | | | | | | | | Unfortunately compiling with these defines enabled would mean Gallium can't run on Windows XP/2003 or older. Todo: Need a macro to declare if we don't care about WinXP compatibililty.
* | os: Implement pipe_condvar on win32nobled2010-07-121-7/+27
| | | | | | | | | | | | | | | | Or at least a little of it. This version will sleep for a fixed amount of time instead of just deadlocking, which is a slight improvement. Also do the same thing on any unrecognized platform.
* | u_blitter: add draw_rectangle callback which can be overridden by a driverMarek Olšák2010-07-122-19/+104
| |
* | u_blitter: clean up the texcoord computationsMarek Olšák2010-07-121-28/+35
| |
* | u_blitter: simplify blitter_set_rectangleMarek Olšák2010-07-121-19/+32
| |
* | u_blitter: rename blitter->base, add a way to get a pipe context from blitterMarek Olšák2010-07-122-70/+80
|/
* draw: Fix off-by-one error in assert.Vinson Lee2010-07-081-1/+1
| | | | textures is an array of size PIPE_MAX_VERTEX_SAMPLERS.
* gallivm: restore const qualifierBrian Paul2010-07-071-1/+1
|
* gallivm: fix cube map LOD computationBrian Paul2010-07-071-38/+54
| | | | | | | | | | | | | | | First, this undoes commit e503af4baa2c709ae5743bb278b277d3faaba076 so we use iround() in lp_build_nearest_mip_level(). Second, in lp_build_sample_general() we need to check if we're sampling a cube map before anything else. Choose the cube face and then recompute the partial derivatives of (S,T) with respect to the chosen cube face. Before, we were using the directional (S,T,R) derivatives to compute the LOD. Third, work around an apparent bug in LLVM 2.7 where setting the lod variable to a const(0) value results in bad x86 code. See comments in the code.
* draw: Remove unnecessary header.Vinson Lee2010-07-061-1/+0
|
* gallivm: Remove unnecessary header.Vinson Lee2010-07-061-1/+0
|
* util: print help for debug options on non-debug buildsMarek Olšák2010-07-071-2/+2
| | | | I'd like to see the help when I request it.
* gallivm: use trunc, not round in lp_build_nearest_mip_level()Brian Paul2010-07-061-1/+1
| | | | Fixes fd.o bug 28036 (piglit fbo-cubemap.c regression)