summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary
Commit message (Collapse)AuthorAgeFilesLines
* gallium/util: fix pipe_sampler_view_reference() callsBrian Paul2010-06-251-7/+2
| | | | The conditionals aren't needed.
* draw: Work around an invalid write.Chia-I Wu2010-06-251-1/+1
| | | | | SSE vertex shader does not seem to honor the execution mask. Pad the output array as a workaround.
* draw: use gallium's TRUE/FALSEBrian Paul2010-06-232-2/+2
|
* draw: don't try to precalculate the pipeline output primitiveKeith Whitwell2010-06-238-34/+46
| | | | | | | | | | | | | | | | We were previously calculating a value which was either the geometry shader output primitive or the application's input primitive, and passing that to the various front/middle/back components for use as the ultimate rendering primtive. Unfortunately, this was not correct -- if the vcache decomposition path is active and geometry shaders are *not* active, we can end up with a third primitive -- specifically the decomposed version of the input primitive. Rather than trying to precalculate this, just let the individual components inform their successors about which primitive type they are recieving.
* draw: mask off DRAW_PIPE_FLAG_MASK bits in prim decompose codeBrian Paul2010-06-231-25/+25
| | | | | | | | Any elt may potentially have flags bits set so mask off those bits everywhere. Fixes crashes with demos/gamma.c, redbook/polys.c, etc. but polygon stippling is still broken.
* u_math: Add align function npot alignmentsJakob Bornecrantz2010-06-221-0/+14
|
* gallium: add a timestamp disjoint queryZack Rusin2010-06-221-1/+1
| | | | | | allows application to not only request the frequency of the TIME_ELAPSED clock but also to detect if that frequency was consistent throughout the entire bracketed range of graphics commands.
* gallium: add a temporary array register fileZack Rusin2010-06-189-131/+324
| | | | | | | | | | | | | | like normal temporaries, but allows to define a number of distinct arrays, all of which make it explicit that they contain /indexable/ registers. as a side-effect we're adding support for multi-dimensional destination registers. The whole thing looks like this: DCL TEMPX[0][0..128] # 0 array with 128 registers ADD TEMPX[0][0], IN[0], IMM[0] ADD TEMPX[0][1], IN[0], IMM[0] ABS OUT[0], TEMPX[0][TEMP[0]]
* gallium: add a new register file - immediate arrayZack Rusin2010-06-188-59/+227
| | | | | | allows one to specify a safe (bound checked) array filled with immediates. it works just like a const array and declares much like our current immediates.
* draw: implement triangle strips with adjacency in geometry shaderZack Rusin2010-06-171-1/+12
|
* draw: implement triangle lists with adjacency support in gsZack Rusin2010-06-172-1/+31
|
* draw: fix a silly errorZack Rusin2010-06-171-1/+1
|
* draw: implement line strip adjacencyZack Rusin2010-06-171-0/+5
|
* draw: implement lines with adjacency in geometry shadersZack Rusin2010-06-172-18/+48
|
* draw: validate stream output buffersZack Rusin2010-06-171-1/+16
| | | | fixes a crash.
* draw: fix some unsigned issueZack Rusin2010-06-171-4/+4
| | | | spotted by Vinson
* draw: make sure we correctly iterate over output buffers on stream outZack Rusin2010-06-161-5/+11
| | | | | we kept overwriting the first attribute of a vertex in a single-stream- out-buffer case
* draw: add stream output decomposition fileZack Rusin2010-06-161-0/+123
|
* draw: rewrite stream output to handle all the dark cornersZack Rusin2010-06-166-124/+190
| | | | | register masks, multiple output buffers, multiple primitives, non-linear vertices (elts) and stride semantics.
* translate: don't crash on elts paths with instancesZack Rusin2010-06-161-10/+13
|
* util: add alloc checkAlan Hourihane2010-06-161-0/+2
|
* draw: add alloc checkAlan Hourihane2010-06-161-0/+2
|
* draw: handle some out of memory conditionsAlan Hourihane2010-06-1612-35/+69
|
* draw: Remove unnecessary headers.Vinson Lee2010-06-152-2/+0
|
* gs: make sure we end primitives when finishing executing shadersZack Rusin2010-06-153-26/+23
|
* draw/gs: make sure gs works with elts and doesn't overrun the bufferZack Rusin2010-06-152-11/+43
|
* draw: run the pipeline with the correct number of vertsZack Rusin2010-06-151-1/+1
| | | | verts per primitive, not total count
* draw: fix primitive indexing in the pipelineZack Rusin2010-06-151-2/+4
| | | | spotted by Keith
* draw: finish the new pipeline setupZack Rusin2010-06-159-245/+238
| | | | | | | Keith came up with a new way of running the pipeline which involves passing a few info structs around (for fetch, vertices and prims) and allows us to correctly handle cases where we endup with multiple primitives generated by the pipeline itself.
* draw wipKeith Whitwell2010-06-158-319/+342
|
* gallivm: Omit references to NoFramePointerElimNonLeafJosé Fonseca2010-06-141-3/+0
| | | | It was added after 2.7.
* util: Use int type for format field width.José Fonseca2010-06-141-1/+1
| | | | As suggested by gcc warning.
* gallivm: Override some of the default target options.José Fonseca2010-06-142-0/+31
| | | | | | | In particular: - enable LLVM <-> GDB integration for JIT code - disable frame-pointer elimination on debug/profile builds - enable fast-math.
* gallivm: Use func_to_pointer().José Fonseca2010-06-141-16/+1
|
* util: Add a func_to_pointer util function too.José Fonseca2010-06-141-0/+11
|
* draw/gs: copy the outputs only if we emitted somethingZack Rusin2010-06-121-3/+5
|
* gallium/softpipe/draw: support samplers in geometry shadersZack Rusin2010-06-112-4/+10
|
* tgsi: support 2d indirect addressingZack Rusin2010-06-115-18/+86
|
* draw: forgot to add a fileZack Rusin2010-06-101-0/+129
|
* draw: rewrite geometry shader pipelineZack Rusin2010-06-102-103/+142
| | | | | done to handle strips correctly as inputs - we need to decompose the strips
* draw: geometry shader fixesZack Rusin2010-06-105-27/+109
| | | | | don't overwrite the inputs and make sure the correct primitive is used on entry
* draw: make sure that the gs never outputs more data than we allocated forZack Rusin2010-06-101-17/+25
|
* draw: make sure geometry shader correctly iterates the output bufferZack Rusin2010-06-092-5/+11
|
* draw: make sure the buffer is big enough to fit everything emitted by the gsZack Rusin2010-06-092-48/+27
|
* draw: fix geometry shader which emit multiplie primitivesZack Rusin2010-06-091-18/+20
|
* geometry shaders: make gs work with changable primitives and variable number ↵Zack Rusin2010-06-0912-97/+149
| | | | | | | | of vertices lots and lots of fixes for geometry shaders. in particular now we work when the gs emits a different primitive than the one the pipeline was started with and also we work when gs emits more vertices than would fit in the original buffer.
* draw: Remove unnecessary headers.Vinson Lee2010-06-082-2/+0
|
* util: reference vertex buffers in blitterMarek Olšák2010-06-092-0/+18
|
* gallium: scream when one of two unimplemented features in draw is usedZack Rusin2010-06-081-6/+12
| | | | plus used the correctly specified stride
* gallium: make draw auto work and add relevant caps and docsZack Rusin2010-06-082-0/+10
|