History log of /external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
65ef78e8611556780fce0bee1feba805347ec627 17-Nov-2014 Marek Olšák <marek.olsak@amd.com> draw: implement TGSI_PROPERTY_VS_WINDOW_SPACE_POSITION

Required by Nine. Tested with util_run_tests.
It's added to softpipe, llvmpipe, and r300g/swtcl.

Tested-by: David Heidelberg <david@ixit.cz>
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
877128505431adaf817dc8069172ebe4a1cdf5d8 17-Jan-2014 José Fonseca <jfonseca@vmware.com> s/Tungsten Graphics/VMware/

Tungsten Graphics Inc. was acquired by VMware Inc. in 2008. Leaving the
old copyright name is creating unnecessary confusion, hence this change.

This was the sed script I used:

$ cat tg2vmw.sed
# Run as:
#
# git reset --hard HEAD && find include scons src -type f -not -name 'sed*' -print0 | xargs -0 sed -i -f tg2vmw.sed
#

# Rename copyrights
s/Tungsten Gra\(ph\|hp\)ics,\? [iI]nc\.\?\(, Cedar Park\)\?\(, Austin\)\?\(, \(Texas\|TX\)\)\?\.\?/VMware, Inc./g
/Copyright/s/Tungsten Graphics\(,\? [iI]nc\.\)\?\(, Cedar Park\)\?\(, Austin\)\?\(, \(Texas\|TX\)\)\?\.\?/VMware, Inc./
s/TUNGSTEN GRAPHICS/VMWARE/g

# Rename emails
s/alanh@tungstengraphics.com/alanh@vmware.com/
s/jens@tungstengraphics.com/jowen@vmware.com/g
s/jrfonseca-at-tungstengraphics-dot-com/jfonseca-at-vmware-dot-com/
s/jrfonseca\?@tungstengraphics.com/jfonseca@vmware.com/g
s/keithw\?@tungstengraphics.com/keithw@vmware.com/g
s/michel@tungstengraphics.com/daenzer@vmware.com/g
s/thomas-at-tungstengraphics-dot-com/thellstom-at-vmware-dot-com/
s/zack@tungstengraphics.com/zackr@vmware.com/

# Remove dead links
s@Tungsten Graphics (http://www.tungstengraphics.com)@Tungsten Graphics@g

# C string src/gallium/state_trackers/vega/api_misc.c
s/"Tungsten Graphics, Inc"/"VMware, Inc"/

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
2ab4e1d1e6091f2170b1395b8d1bb30d42f133a7 18-Sep-2013 José Fonseca <jfonseca@vmware.com> draw: Ensure draw_pt_middle_end::bind_parameters is never NULL.

Prevents calling NULL pointer with softpipe in certain cases.

Trivial.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
29853ab7b8656cee9b92a53bec43f6e9f1e49691 09-May-2013 Zack Rusin <zackr@vmware.com> draw: don't crash on vertex buffer overflow

We would crash when stride was bigger than the size of the buffer.
The correct behavior is to just fetch zero's in this case.
Unfortunatly with user_buffer's there's no way to validate the size
because currently we're just not getting it. Adjust the draw interface
to pass the size along the mapped buffer, which works perfectly
for buffer backed vertex_buffers and, in future, it will allow
us to plumb user_buffer sizes through the same interface.

Signed-off-by: Zack Rusin <zackr@vmware.com>
Reviewed-by: José Fonseca <jfonseca@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
f0f623a9075107461438468e1aea6bca3a3234f3 07-Jan-2012 Brian Paul <brianp@vmware.com> draw: replace assert(0) with debug_warn_once()

If the assertion was hit, it probably meant that we were unable to allocate
or map a vertex buffer. Instead of dying in a debug build, issue a warning
and continue.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
994c33db875c6af2f5b535a7a173ff3bfa24fc32 07-Jan-2012 Brian Paul <brianp@vmware.com> draw: whitespace fixes, etc.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
488dd2c1912132fe7ee5e81b05fb64ba62a46098 07-Jan-2012 Brian Paul <brianp@vmware.com> gallium: make vbuf_render::set_primitive() return void

All the implementations of this function always return TRUE.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
3733da31e8b4405b65e1b6ca3b6599ecc5af5fe7 31-Mar-2011 José Fonseca <jfonseca@vmware.com> draw: Prevent out-of-bounds vertex buffer access.

Based on some code and ideas from Keith Whitwell.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
cdca3c58aa2d9549f5188910e2a77b438516714f 10-Jan-2011 Marek Olšák <maraeo@gmail.com> gallium: remove pipe_vertex_buffer::max_index

This is redundant to pipe_draw_info::max_index and doesn't really fit
in the optimizations I plan.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
b7e150605d402224cdd8fa3d186924bdee3c6c49 16-Dec-2010 Brian Paul <brianp@vmware.com> draw: s/varient/variant/
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
6c0dc4bafbdbdc0cb4b6e5934fe064226dbd47ec 20-Aug-2010 Keith Whitwell <keithw@vmware.com> draw: specialized cliptesting routines
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
d29d7807c1e2c53336b1adaf0ecdeb3e35b39969 07-Aug-2010 Chia-I Wu <olv@lunarg.com> draw: Remove UNDEFINED_VERTEX_ID checks in emit pathes.

UNDEFINED_VERTEX_ID is used by draw_pipe_vbuf to decide whether a vertex
has been emitted or not. The non-pipeline pathes do not use it (they
tell the frontend the max vertex count when prepare() is called).
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.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_emit.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_emit.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_emit.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_emit.c
740e50c60f03d194aafab93d5251699964800979 05-May-2010 Brian Paul <brianp@vmware.com> gallium: rename draw() to draw_elements() in vbuf code

Now we have draw_elements() and draw_arrays() to be consistent with the
pipe_context drawing functions.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
2a30d3d74a0b87f8066659952628ccd072a4e2b0 26-Apr-2010 José Fonseca <jfonseca@vmware.com> draw: Pass-through pipe_buffer::max_index to translate.

max_index must be observed to prevent crashes due to bad index data.

I've been using this patch for some time without regressions.

Some places, where we use internal vertex buffer, it is not entirely
clear what max_index should be, so passing just ~0 to avoid regressions
for now.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
84a8347b9f6ef0c1b2519e9bd5fef2ce3c85afb7 25-Mar-2010 Jakob Bornecrantz <wallbraker@gmail.com> draw: Use translate function instead of switch cases
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.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_emit.c
dc544ad9c6e6e24fd2f19dfe83aa294d218f7310 22-Jan-2010 Vinson Lee <vlee@vmware.com> draw: Remove unnecessary headers.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
337480e1f85844b7bd4a4d47cef93a217e3ad464 02-Oct-2009 Brian Paul <brianp@vmware.com> gallium: remove // comment and extra whitespace
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.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_emit.c
1c4f67b980b6bec5788336a9cdd18c4fcec5e492 17-Feb-2009 Keith Whitwell <keith@tungstengraphics.com> draw: second argument to unmap is max, not count
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.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_emit.c
872b515e8f0bb1be5bad85fd9d01529c71f07ba2 26-Jan-2009 Zack Rusin <zack@tungstengraphics.com> gallium: standardize on stride instead of pitch in the interface
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
b716de47798defa7d22b0f15b201af6fba27f0b9 10-Dec-2008 Alan Hourihane <alanh@tungstengraphics.com> gallium: change 65535 to UNDEFINED_VERTEX_ID
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
a8e7852b05f95cc695f3a05692a6ccd36298faf7 10-Dec-2008 Alan Hourihane <alanh@tungstengraphics.com> gallium: more vertex count checks
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
e3f5370d637f367dbfe7d21f726e84185ad1e07d 10-Dec-2008 Alan Hourihane <alanh@tungstengraphics.com> gallium: temporary check for > 65535 vertices
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
53d4706c6c0922160f310834daaec5718ff1c511 10-Sep-2008 Keith Whitwell <keith@tungstengraphics.com> make draw's vertex_info struct smaller/quicker to compare with memcmp()
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
af9cfea9cc80411351f9879d8eeb525bf7b4ca50 01-Oct-2008 Keith Whitwell <keith@tungstengraphics.com> draw: don't keep refetching constant inputs
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.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_emit.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_emit.c
7d7f3e2c9451b2233c196d82d523c50b5d2616cc 18-Jun-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: split long prims into chunks with an even number of vertices

This fixes culling "parity" errors when splitting long tri strips. Splitting
strips into chunks with an odd number of vertices causes front/back-face
orientation to get reversed and upsets culling.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
463a47bf59398e850d5a6537da1186d855bd2919 06-Jun-2008 Keith Whitwell <keith@tungstengraphics.com> draw: fix intermediate buffer confusion in draw_vs_varient.c

The final output buffer can't be used to hold intermediate results
as the intermediate vertex size may be greater than the final vertex
size, and in any case the output buffer may be uncached in hw drivers.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.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_emit.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_emit.c
62628c4d3d497cbca73fde869c9069fa90e6453e 29-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: share machine
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
7b85ea19de09d4e7e077ca147528e90e52683690 27-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: support psize in vs_varient paths

Preserve the vinfo "EMIT_*" format descriptors in the varient key,
and deal with PSIZE directly in each implementation.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
fd20d1c7e8bbe2f40d73679b1514023772cfd8f6 27-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: add disabled debug code
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
660fee8351542dadc0d5550164e753f7c2d67261 27-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: ensure vs outputs mapped correctly to vinfo attribs
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
f8762ba5234fd1b44e11e76bb5f58d2305c90572 27-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: explicitly list nr_inputs, outputs in varient key
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
9752ebd99e16646fed3c14712fc0af2c34c9e48f 27-May-2008 Jakob Bornecrantz <jakob@tungstengraphics.com> draw: Fix for EMIT_4UB case
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
a08c574bfcf72c7f7ffbeb35c10347b491ef87fb 27-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: hook up viewport / rhw emit to varient key state
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
a5c3b499fa40f46298389900e74f1db04f99166a 22-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: fse works with elts, remove assert
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
889473b3f5a216bd753c357974d6bae29fe3c41d 21-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: add viewport to varient state
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
7c99d7fe60e7bb0b7cf103a851aeef4614278ca6 15-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: create specialized vs varients incorporating fetch & emit
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
b23706454bb165a62888d264e95a98a2e4cf139c 13-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: get rid of fetch-shade-emit frontend hack

The code is now living in it's intended place as a pt middle end.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
bbda45ec769120324f44febf00c6bb170f594f23 12-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: turn fse path into a middle end

Also add some util functions in pt_util.c
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c
b5e5369da5fc50d63a6ece931fac44b555eb0314 12-May-2008 Keith Whitwell <keith@tungstengraphics.com> draw: add fetch-shade-emit path

Enable with TEST_FSE=t. Performs fetch from API-provided vertex buffers,
transformation with one of three (two working) hard-coded shaders, and
final emit to hardware vertices all in a single pass.

Currently only really useful for profiling in conjunction with SP_NO_RAST=t.
/external/mesa3d/src/gallium/auxiliary/draw/draw_pt_fetch_shade_emit.c