History log of /external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
4465efc3bf8d755a9afb7a4bb5382e2f5bf113e1 21-Sep-2011 Brian Paul <brianp@vmware.com> draw: add support for guard-band clipping
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
6c0dc4bafbdbdc0cb4b6e5934fe064226dbd47ec 20-Aug-2010 Keith Whitwell <keithw@vmware.com> draw: specialized cliptesting routines
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
aaf51ed7c24a5d9488f8225972e5d5d108c6c197 09-Aug-2010 Chia-I Wu <olv@lunarg.com> draw: No need to make max_vertices even.

Triangle strip alternates the front/back orientation of its triangles.
max_vertices was made even so that varray never splitted a triangle
strip at the wrong positions.

It did not work with triangle strips with adjacencies. And it is no
longer relevant with vsplit.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
c3fee80f2b35f6a7e48d6015bfc759c66b7e1a2c 07-Aug-2010 Chia-I Wu <olv@lunarg.com> draw: Remove DRAW_PIPE_MAX_VERTICES and DRAW_PIPE_FLAG_MASK.

The higher bits of draw elements are no longer used for the stipple or
edge flags.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
f132498347c41294042db0cc6830abe928d827de 07-Aug-2010 Chia-I Wu <olv@lunarg.com> draw: Add prim flags to middle ends.

Update the middle end interface to pass the primitive flags from the
frontends to the pipeline. No frontend sets the flags yet.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
f141abdc8fdbff41e16b0ce53fa3fa8fba32a7f9 07-Aug-2010 Chia-I Wu <olv@lunarg.com> draw: Add flags to draw_prim_info.

A primitive may be splitted in frontends. The splitted primitives
should convey certain flag bits so that the decomposer can correctly
decide the stipple or edge flags.

This commit adds flags to draw_prim_info and updates the decomposer to
honor the flags. Frontends and middle ends will be updated later.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
ba2cc3b8e6ad161181b67fd2575c6bc768584d23 29-Jul-2010 Brian Paul <brianp@vmware.com> gallium: implement bounds checking for constant buffers

Plumb the constant buffer sizes down into the tgsi interpreter where
we can do bounds checking. Optional debug code warns upon out-of-bounds
reading. Plus add a few other assertions in the TGSI interpreter.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
7a9246c5d72290ed8455a426801b85b54374e102 25-Jun-2010 Chia-I Wu <olv@lunarg.com> draw: Work around an invalid write.

SSE vertex shader does not seem to honor the execution mask. Pad the
output array as a workaround.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
bf2d2772a21748b6279c1fc3397ab75450aff74e 23-Jun-2010 Brian Paul <brianp@vmware.com> draw: use gallium's TRUE/FALSE
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
64682da8ab7aff7b4ce651db99a32ed1fd8b178c 23-Jun-2010 Keith Whitwell <keithw@vmware.com> draw: don't try to precalculate the pipeline output primitive

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.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
287531772ccea82c8a6c4dab5656d751a8943524 16-Jun-2010 Zack Rusin <zackr@vmware.com> draw: rewrite stream output to handle all the dark corners

register masks, multiple output buffers, multiple primitives,
non-linear vertices (elts) and stride semantics.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
a192b5eeafae80f9f9e7e7e442abc5b44d583d1a 15-Jun-2010 Zack Rusin <zackr@vmware.com> draw: finish the new pipeline setup

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.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
b85a361ccbac956d2842251395c048a4b3f4c440 14-Jun-2010 Keith Whitwell <keithw@vmware.com> draw wip
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
4d0baa73c9e1a40b4ac089c786af79dc7f1ff219 10-Jun-2010 Zack Rusin <zack@kde.org> draw: geometry shader fixes

don't overwrite the inputs and make sure the correct primitive
is used on entry
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
9ef6d34f7e03f3d33c0ebad4191f3300a9062c4a 10-Jun-2010 Zack Rusin <zack@kde.org> draw: make sure that the gs never outputs more data than we allocated for
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
1d11eac93f408053a0807783b434624a6dfcb3fb 09-Jun-2010 Zack Rusin <zack@kde.org> draw: make sure geometry shader correctly iterates the output buffer
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
da4185ca77395b9dddc362891d8f7bbc2fa924cd 09-Jun-2010 Zack Rusin <zack@kde.org> draw: make sure the buffer is big enough to fit everything emitted by the gs
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
d4ef0f6c67aefe06d8dd647acf8d9005df39a709 09-Jun-2010 Zack Rusin <zack@kde.org> geometry shaders: make gs work with changable primitives and variable number 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.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
c9db97c8229689060fab0edee7df717f804b99ce 31-May-2010 Zack Rusin <zack@kde.org> gallium: a lot more complete implementation of stream output

interface wise we have everything needed by d3d10 and gl transform feedback.
the draw module misses implementation of some corner cases (e.g. when stream
output wants different number of components per output than normal rendering
paths)
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
63cb6f59eac91ba34cf80ff3736568e40b094fe1 22-Feb-2010 Michal Krol <michal@vmware.com> gallium: Remove bypass_vs_clip_and_viewport from rasteriser state.

Needs testing.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
9851644435f991a1a1bbb145333a97601627b37d 25-Jan-2010 Michal Krol <michal@vmware.com> gallium: Enable multiple constant buffers for vertex and geometry shaders.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
83d2b4d4a65958172cf3e30b314d4bffdebefd0b 28-Jan-2010 Vinson Lee <vlee@vmware.com> gallium/draw: Remove unnecessary headers.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
dee52d5bd31c7bd70883fd7fe496445bb49aad1f 16-Jan-2010 Chia-I Wu <olvaffe@gmail.com> gallium: Fix uninitialized instance divisor and index.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
9b21b3c52a8a7d58d08151d1a6bf25c472dec213 05-Jan-2010 Michal Krol <michal@vmware.com> Merge branch 'master' into instanced-arrays

Conflicts:
src/gallium/auxiliary/tgsi/tgsi_dump.c
src/gallium/include/pipe/p_shader_tokens.h
543b9566bdaa48fea2df1866fa1310c1cdbcde27 30-Dec-2009 Michal Krol <michal@vmware.com> Add lame support for instanceID to draw module.

It's all screaming for integer support -- fake it with float for now.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
89d8577fb3036547ef0b47498cc8dc5c77f886e0 14-Dec-2009 Zack Rusin <zackr@vmware.com> gallium: add geometry shader support to gallium
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
a0127b6ced257919180ba3a1bf534b68d9c750be 14-Dec-2009 Roland Scheidegger <sroland@vmware.com> gallium: more work for edgeflags changes

fixes, cleanups, etc.
not working yet
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
a08e348a84f57ed5e8bf5888f1ce13934d2ce8fa 09-Dec-2009 Keith Whitwell <keithw@vmware.com> gallium: first steps to treat edgeflags as regular vertex element

The idea here is to eliminate the set_edgeflags() call in pipe_context
by treating edgeflags as a regular vertex element.

Edgeflags provoke special treatment in hardware, which means we need to
label them in some way, in this case we'll be passing them through the
vertex shader and labelling the vertex shader output with a new TGSI
semantic (TGSI_SEMANTIC_EDGEFLAG).
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
c6b3c2f34b5fdc30e679068d4e6130ba30efc1e4 30-Apr-2009 Keith Whitwell <keithw@vmware.com> gallium/draw: cope with unused vertex_elements
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
683e7091a953204c9aee1410ac44be3b69bae9fc 13-Mar-2009 Keith Whitwell <keithw@vmware.com> gallium: consolidate bypass_vs and bypass_clipping flags

The draw module provides a similar interface to the driver which
is retained as various bits of hardware may be able to take on
incremental parts of the vertex pipeline. However, there's no
need to advertise all this complexity to the state tracker.

There are basically two modes now - normal and passthrough/screen-coords.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
befa4ff50ec4728de70c04532f8c7342fbd70147 17-Feb-2009 Keith Whitwell <keithw@vmware.com> draw: add map/unmap directives for swtnl driver interface

Previously draw module asked for a pointer into (mapped) vertex data,
which it would incrementally fill and emit draw commands against. This
was hard for the drivers to deal with, especially in the case where a
draw command would force a flush and thus an unmap of the vertex data.

With this change, the draw module explicitly maps & then unmaps vertex
data prior to emitting draw commands.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
e6887a5752774c18cf527477fdd3e57e4893ff3b 25-Aug-2008 Keith Whitwell <keith@tungstengraphics.com> draw: attempt atomic submit of large drawelements calls
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
4f25420bdd834e81a3e22733304efc5261c2998a 25-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: refactor/replace p_util.h with util/u_memory.h and util/u_math.h

Also, rename p_tile.[ch] to u_tile.[ch]
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
a13475ff0057f1de8e3bc08d6ca42b9e135a3f5a 23-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: replace align_int() with align()

The two functions are identical. Removed align_int() from p_util.h
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
f1401385587882bb9d18a5f5b01dcbb71ddf0a2f 18-Jun-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: additional fixes to ensure even number of vertices per buffer
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
0a4aea0e86a897d9afb9f2a0ec27f03faf8f1b21 02-Jun-2008 Keith Whitwell <keith@tungstengraphics.com> draw: respect driver's max vertex buffer size
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
4a7198fdcfe3256bdefff5d1d766327ae7f18b35 29-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> psb: Make msvc happy.

Conflicts:

src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
82605d7bcd533d7c96cc619c45970efd7229dc3b 29-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: draw_range_elements trial
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
2f0d1396e4c1626b3b1ac799bd29e86a9530369e 13-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: move some state into a new 'vs' area
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
fe586f8612dd517b9a1f0d87fbaf3a75e3caf588 07-May-2008 Zack Rusin <zack@tungstengraphics.com> redo the linear paths
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
abb08e9335b5d7cb004dc9e6cec390ab6968abe5 04-May-2008 Zack Rusin <zack@tungstengraphics.com> implement linear emition and fetching and plug it in the varray paths
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
58d3dff0d3115ddd5397b7f77b5bcf4f9ca616b6 28-Apr-2008 Michal Krol <michal@ubuntu-vbox.(none)> gallium: Generate SSE code to swizzle and unswizzle vs inputs and outputs.

Change SSE_SWIZZLES #define to 0 to disable it.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
0588858702d1a5c9c08573ea6817e2e149473cf6 22-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: allow drivers to query pipeline state more easily

Also, provide a separate flag to say whether the driver can handle
clipping/rhw tasks, in addition to the API flag which indicates they
have already been done.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
0d4ece4c5a243dc4b684331bad49f220311e5520 21-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: propogate lots of errors
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
7d72607e142c0412b88183b849fd701e698b8f79 19-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: move incoming vertex state into draw->pt

This state is effectively private to the vertex processing part
of the draw module.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
2dae208fb19e79c7446a29ee5dee53e50283b57c 19-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: make room for extra_vs_outputs
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
bee1d31641674c67676de86fbb4b35ca5bf7f33f 19-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: move pt_pipeline code to draw_pipe.c

This is now the drawing interface to the pipeline. No more
calling into pipeline.first->tri(), etc.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
c898eae27221bd23b11327553c215a94369eeb99 19-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: always emit header in draw_pt_fetch.c
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
a773f06e969a3992451dd7fe6fd55ea96b2774fa 18-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: split off all the extra functionality in the vertex shader

This will at least allow us to make the initial gains to get decent
vertex performance much more quickly & with higher confidence of getting
it right.

At some later point can look again at code-generating all the
fetch/cliptest/viewport extras in the same block as the vertex shader.
For now, just need to get some decent baseline performance.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
c503e55d74cf84f87f82b3dab3cb4d38b201d47a 17-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: move hw vertex emit to a new module
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
280bcff1fa200b790d8712946a4ffbaa47a67433 17-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: add vertex shader run_linear function
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
3be453bf7fcffd945ee0238e66ff4247a4491f1c 16-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: allow pt paths to run without a vbuf render stage
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
a8582efaca35d09c8ca18918a243a9284583356d 16-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: make pt run pipeline when need_pipeline is true, not just when clipped
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
a5a7dc24ba2dcf9bbdd73709c4c182e324bdc3a5 15-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> gallium: Switch one vertex path over to new translate module

Will eventually do this for all instances where we are converting vertices
from one format to another.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
8cac6f3fcf9d6c08959efc20f8fce9eddbdcd0ef 15-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: increment output vertex properly
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
7eb6f130a1dfb8179ff371eb4e75b47d6ee45d2a 15-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: fix first glitch in vertex emit
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
6a26a9c58cc38ff636ee88ce01fed40eea500fc0 15-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: fetch_shade_pipeline needs to translate to hw vertex format (from get_vertex_info)
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
983b6a73e1842b436d158dc1d018bd483a1c9929 14-Apr-2008 Zack Rusin <zack@tungstengraphics.com> use the new macro
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
2ba6e1fa71be07a2d75abe2d085d485046c0932b 14-Apr-2008 Zack Rusin <zack@tungstengraphics.com> silence some warnings
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
e3309197855b5caf7c4c167d1e7beedf33ed2fdd 14-Apr-2008 Zack Rusin <zack@tungstengraphics.com> pass vertex size to shaders so that callee can decide on the size
of the vertices and not always have to use the maximum vertex
allocation size for them
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
36bacf97a6b10f7274f0d3fcf37bf7ebf9388161 14-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: always malloc verts for fetch_shade_pipeline
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
a82e4996a13ef3cae1497fef95c2fca7631cd889 14-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: flush pipeline before trying to allocate more hw vertices
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
e106b2d3d65585b0aaa0e60afd541da020d9e220 14-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> draw: move vertex header init out of fetch_shade_pipeline.c
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
0c1cb54923f3ab31caa2821e095685277174dd2f 13-Apr-2008 Zack Rusin <zack@tungstengraphics.com> Implement fetch/shade/pipeline or emit vertex passthrough.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c