History log of /external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c538846e313c43858fb118db012b592513c0ed29 26-Oct-2016 Brian Paul <brianp@vmware.com> mesa: rename gl_client_array -> gl_vertex_array

The term "client array" is a legacy thing dating back to the pre-VBO
era when _all_ vertex arrays lived in client memory.

Nowadays, it only contains vertex array state which is derived from
gl_array_attributes and gl_vertex_buffer_binding. It's used by the
VBO module and some drivers.

Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
c63e8b1193fd380e999b8ef258a20e57884820f4 30-Jul-2015 Marek Olšák <marek.olsak@amd.com> vbo: pass the stream from DrawTransformFeedbackStream to drivers

Reviewed-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.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/mesa/vbo/vbo_split_inplace.c
80ac616fca709ab10f7aae062d96ec18d05097a7 05-Apr-2013 Christoph Bumiller <e0425955@student.tuwien.ac.at> mesa: add indirect drawing buffer parameter to draw functions

Split from patch implementing ARB_draw_indirect.

v2: Const-qualify the struct gl_buffer_object *indirect argument.
v3: Fix up some more draw calls for new argument.
v4: Fix up rebase conflicts in i965.
v5: Undo const-qualification

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
3998cfa933dcd9134b75d9f0ae2c9cfcd6f2ee45 05-Jun-2013 Rico Schüller <kgbricola@web.de> mesa: remove outdated version lines in comments

Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
3d8d5b298a268b119d840bc9bae0ee9e0c9244a9 21-Apr-2013 Kenneth Graunke <kenneth@whitecape.org> mesa: Restore 78-column wrapping of license text in C-style comments.

The previous commit introduced extra words, breaking the formatting.

This text transformation was done automatically via the following shell
command:
$ git grep 'THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY' | sed 's/:.*$//' | xargs -I {} sh -c 'vim -e -s {} < vimscript

where 'vimscript' is a file containing:
/THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY/;/\*\// !fmt -w 78 -p ' * '
:wq

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
96ff2edc73ccf11d4d198ba3665507f73ae4a9f7 21-Apr-2013 Kenneth Graunke <kenneth@whitecape.org> mesa: Add "OR COPYRIGHT HOLDERS" to license text disclaiming liability.

This brings the license text in line with the MIT License as published
on the Open Source Initiative website:

http://opensource.org/licenses/mit-license.php

Generated automatically be the following shell command:
$ git grep 'THE AUTHORS BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \
sed -i 's/THE AUTHORS/THE AUTHORS OR COPYRIGHT HOLDERS/' {}

This introduces some wrapping issues, to be fixed in the next commit.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
dd404bc94f78a1766527becee03f8ef6ae3a799b 21-Apr-2013 Kenneth Graunke <kenneth@whitecape.org> mesa: Change "BRIAN PAUL" to "THE AUTHORS" in license text.

Generated automatically be the following shell command:
$ git grep 'BRIAN PAUL BE LIABLE' | sed 's/:.*$//g' | xargs -I '{}' \
sed -i 's/BRIAN PAUL/THE AUTHORS/' {}

The intention here is to protect all authors, not just Brian Paul. I
believe that was already the sensible interpretation, but spelling it
out is probably better.

More practically, it also prevents people from accidentally copy &
pasting the license into a new file which says Brian is not liable when
he isn't even one of the authors.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
a1287f549a3e6527b8cf3bf5b5f563ba63c6f48c 22-Jul-2012 Brian Paul <brianp@vmware.com> mesa: move more format helper functions to glformats.c
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
ae5d7d5e8970f90b9713897387d7d46a2b4485ab 18-Jun-2012 Fredrik Höglund <fredrik@kde.org> mesa: Add support for GL_ARB_base_instance

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
c5e473fbe25b20cb27aac44ff6e269701abd33a8 16-Apr-2012 Marek Olšák <maraeo@gmail.com> mesa: add gl_context::NewDriverState and use it for vertex arrays

The vbo module recomputes its states if _NEW_ARRAY is set, so it shouldn't use
the same flag to notify the driver. Since we've run out of bits in NewState
and NewState is for core Mesa anyway, we need to find another way.

This patch is the first to start decoupling the state flags meant only
for core Mesa and those only for drivers.

The idea is to have two flag sets:
- gl_context::NewState - used by core Mesa only
- gl_context::NewDriverState - used by drivers only (the flags are defined
by the driver and opaque to core Mesa)

It makes perfect sense to use NewState|=_NEW_ARRAY to notify the vbo module
that the user changed vertex arrays, and the vbo module in turn sets
a driver-specific flag to notify the driver that it should update its vertex
array bindings.

The driver decides which bits of NewDriverState should be set and stores them
in gl_context::DriverFlags. Then, Core Mesa can do this:
ctx->NewDriverState |= ctx->DriverFlags.NewArray;

This patch implements this behavior and adapts st/mesa.
DriverFlags.NewArray is set to ST_NEW_VERTEX_ARRAYS.

Core Mesa only sets NewDriverState. It's the driver's responsibility to read
it whenever it wants and reset it to 0.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
50f7e75f9e945cfbb2ae868cc961a2205a0b6e73 23-Apr-2012 Marek Olšák <maraeo@gmail.com> mesa: move gl_client_array*[] from vbo_draw_func into gl_context

In the future we'd like to treat vertex arrays as a state and
not as a parameter to the draw function. This is the first step
towards that goal. Part of the goal is to avoid array re-validation
for every draw call.

This commit adds:
const struct gl_client_array **gl_context::Array::_DrawArrays.

The pointer is changed in:
* vbo_draw_method
* vbo_rebase_prims - unused by gallium
* vbo_split_prims - unused by gallium
* st_RasterPos

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
14bb957b996dcc5392b8fa589bd3ffa5c55cb6b4 09-Dec-2011 Marek Olšák <maraeo@gmail.com> mesa: implement DrawTransformFeedback from ARB_transform_feedback2

It's like DrawArrays, but the count is taken from a transform feedback
object.

This removes DrawTransformFeedback from dd_function_table and adds the same
function to GLvertexformat (with the function parameters matching GL).

The vbo_draw_func callback has a new parameter
"struct gl_transform_feedback_object *tfb_vertcount".

The rest of the code just validates states and forwards the transform
feedback object into vbo_draw_func.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
90ff6178a2350cdf7b1c1a28bf3a8c9a66da3d4b 18-Jan-2011 Brian Paul <brianp@vmware.com> vbo: initialize num_instances in a few places

This fixes https://bugs.freedesktop.org/show_bug.cgi?id=33247
There might still be some issues with drawing multiple instances
with VBO splitting to investigate someday.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
5a64626ee57183a404827e2cda8359db3529b180 17-Jan-2011 Brian Paul <brianp@vmware.com> vbo: init num_instances in split_prims()

Fixes a VTK regression after adding GL_ARB_draw_instanced.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
f9995b30756140724f41daf963fa06167912be7f 12-Oct-2010 Kristian Høgsberg <krh@bitplanet.net> Drop GLcontext typedef and use struct gl_context instead
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
64da2aeebc04a98c999e4dac9290999d03c1e3d5 03-Feb-2010 Keith Whitwell <keithw@vmware.com> vbo: fix void * arithmetic warning
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
db0eb3a437fbc88429b2d73444335b61035d824f 03-Feb-2010 Francisco Jerez <currojerez@riseup.net> vbo: Fix up in-place splitting for non-contiguous/indexed primitives.

The in-place splitting code wasn't dealing with index buffers at all
(and it was being called from vbo_split_prims for too big index
buffers, causing some occasional corruption).

Additionally, it wasn't taking into account primitives arrays with
non-contiguous indices (e.g. given prim[0].start = 0 and prim[1].start
= max_verts, it would happily call back the driver with (max_index -
min_index) still greater than max_verts, causing infinite recursion).

It still doesn't handle too large indexed vertex buffers: use
vbo_split_copy for that.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
2708ddfb06a36d8568e2aa130bf1f7d551fcd309 11-Aug-2009 Eric Anholt <eric@anholt.net> vbo: Avoid extra validation of DrawElements.

This saves mapping the index buffer to get a bounds on the indices that
drivers just drop on the floor in the VBO case (cache win), saves a bonus
walk of the indices in the CheckArrayBounds case, and other miscellaneous
validation. On intel it's a particularly a large win (50-100% in my app)
because even though we let the indices stay in both CPU and GPU caches, we
still end up waiting for the GPU to be done with the buffer before reading
from it.

Drivers that want the min/max_index fields must now check index_bounds_valid
and use vbo_get_minmax_index before using them.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
1e9d3ad4e1d987e1130e4bcd2ffc35f0e18064c3 30-Jul-2009 Michal Krol <michal@vmware.com> vbo: Fix build on windows.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
afd687b0dcf9ac842b4c4832247c6ffe5cc844b1 05-Jul-2009 Maciej Cencora <m.cencora@gmail.com> mesa/vbo: always recalculate min_index and max_index when splitting vertices
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
4f6b704f9796775d8d9937c3cf75a2901b99b896 07-May-2009 Brian Paul <brianp@vmware.com> mesa: move the NullBufferObj from GLcontext to gl_shared_state

Since shared array objects may point to the null/default buffer object,
the null/default buffer object should be part of the shared state.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
452a592ca4b1bac78eee53fb9f2f1deac7832840 31-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> mesa: Apply MSVC portability fixes from Alan Hourihane.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
c223c6b663cd5db39ba19c2be74b88cc3b8f53f3 04-Jul-2007 Brian <brian.paul@tungstengraphics.com> Be more consistant with paths in #includes. Eventually, eliminate a bunch of -I flags.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
893526b8a823fe1b88f2b46376155afb91c84016 30-Jan-2007 Keith Whitwell <keith@tungstengraphics.com> Use new rebase helper. Remove other rebase code.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
82152a2a8e1afeb61710318e769b1379be6c02c6 15-Jan-2007 keithw <keithw@keithw-laptop.(none)> Remove debug, reenable inplace splitting.
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c
a38cb37913b7cd2f9c3c7aa11dcbb9485d623924 15-Jan-2007 keithw <keithw@keithw-laptop.(none)> New files to manage splitting drawing commands
/external/mesa3d/src/mesa/vbo/vbo_split_inplace.c