History log of /external/mesa3d/src/mesa/vbo/vbo_save_draw.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_save_draw.c
e81aaeba37f5419323d8f88bc10943c77e25ed14 20-Oct-2016 Timothy Arceri <timothy.arceri@collabora.com> r200/i915/st/mesa/compiler: use common inputs read field

And set set inputs_read directly in shader_info.

To avoid regressions between changes this change is a squashed
version of the following patches.

st/mesa changes where:
Reviewed-by: Marek Olšák <marek.olsak@amd.com>

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
81faead818a0b2fde131df019f5dfb0baef49273 18-Oct-2016 Timothy Arceri <timothy.arceri@collabora.com> mesa/i965/i915/r200: eliminate gl_vertex_program

Here we move the only field in gl_vertex_program to the
ARB program fields in gl_program.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
b730960e779c842d27192f812b33686f025431ff 17-Jun-2016 Mathias Fröhlich <mathias.froehlich@web.de> mesa: Remove set but not used gl_client_array::Stride.

The field is only read for printing today and
there it was probably a leftover.

Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
56c65cd31538bd78b3ad9e516ddcb73438c535c9 17-Jun-2016 Mathias Fröhlich <mathias.froehlich@web.de> mesa: Remove set but not used gl_client_array::Enabled.

The way it is used today does not care about the
Enabled flag anymore.

Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
0e73d9454d626f4ac96be51733d3d3db4b77392c 22-May-2016 Mathias Fröhlich <mathias.froehlich@web.de> vbo: Use a bitmask to track the active arrays in vbo_save*.

The use of a bitmask makes functions iterating only active
attributes less visible in profiles.

v2: Use _mesa_bit_scan{,64} instead of open coding.
v3: Use u_bit_scan{,64} instead of _mesa_bit_scan{,64}.

Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.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_save_draw.c
05e7f7f4388bde882b7ce74124000a4d435affff 22-Apr-2015 Zoë Blade <zoe@bytenoise.co.uk> Fix a few typos

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
1a93e7690dc90211164082d6a2d26d93da8127ef 25-Feb-2015 Marius Predut <marius.predut@intel.com> mesa: use fi_type in vertex attribute code

For 32-bit builds, floating point operations use x86 FPU registers,
not SSE registers. If we're actually storing an integer in a float
variable, the value might get modified when written to memory. This
patch changes the VBO code to use the fi_type (float/int union) to
store/copy vertex attributes.

Also, this can improve performance on x86 because moving floats with
integer registers instead of FP registers is faster.

Neil Roberts review:
- include changes on all places that are storing attribute values.
- check with and without -O3 compiler flag.
Brian Paul review:
- use fi_type type instead gl_constant_value type
- fix a bunch of nit-picks.
- fix compiler warnings

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82668
Signed-off-by: Marius Predut <marius.predut@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
26ee6f23a9aec6b1f392baa0e3f1f2c62c038a57 15-Sep-2014 Kenneth Graunke <kenneth@whitecape.org> mesa: Delete VAO _MaxElement code and index buffer bounds checking.

Fredrik's implementation of ARB_vertex_attrib_binding introduced new
gl_vertex_attrib_array and gl_vertex_buffer_binding structures, and
converted Mesa's older gl_client_array to be derived state. Ultimately,
we'd like to drop gl_client_array and use those structures directly.

One hitch is that gl_client_array::_MaxElement doesn't correspond to
either structure (unlike every other field), so we'd have to figure out
where to store it. The _MaxElement computation uses values from both
structures, so it doesn't really belong in either place. We could put
it in the VAO, but we'd have to pass it around everywhere.

It turns out that it's only used when ctx->Const.CheckArrayBounds is
set, which is only set by the (rarely used) classic swrast driver.
It appears that drivers/x11 used to set it as well, which was intended
to avoid segmentation faults on out-of-bounds memory access in the X
server (probably for indirect GLX clients). However, ajax deleted that
code in 2010 (commit 1ccef926be46dce3b6b5c76e812e2fae4e205ce7).

The bounds checking apparently doesn't actually work, either. Non-VBO
attributes arbitrarily set _MaxElement to 2 * 1000 * 1000 * 1000.
vbo_save_draw and vbo_exec_draw remark /* ??? */ when setting it, and
the i965 code contains a comment noting that _MaxElement is often bogus.

Given that the code is complex, rarely used, and dubiously functional,
it doesn't seem worth maintaining going forward. This patch drops it.

This will probably mean the classic swrast driver may begin crashing on
out of bounds vertex buffer access in some cases, but I believe that is
allowed by OpenGL (and probably happened for non-VBO accesses anyway).
There do not appear to be any Piglit regressions, either.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Roland Scheidegger <sroland@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
dca350201e00c7cf1cfb009158f4abf27fbc96d2 06-Feb-2014 Marek Olšák <marek.olsak@amd.com> mesa: allow buffers to be mapped multiple times

OpenGL allows a buffer to be mapped only once, but we also map buffers
internally, e.g. in the software primitive restart fallback, for PBOs,
vbo_get_minmax_index, etc. This has always been a problem, but it will
be a bigger problem with persistent buffer mappings, which will prevent
all Mesa functions from mapping buffers for internal purposes.

This adds a driver interface to core Mesa which supports multiple buffer
mappings and allows 2 mappings: one for the GL user and one for Mesa.

Note that Gallium supports an unlimited number of buffer and texture
mappings, so it's not really an issue for Gallium.

v2: fix unmapping in xm_dd.c, remove the GL errors there
v3: fix the intel driver (by Fredrik)

Reviewed-by: Fredrik Höglund <fredrik@kde.org>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.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_save_draw.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_save_draw.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_save_draw.c
ecea61e414bf772944aff7d9a0899fe8f68af90a 02-May-2013 Brian Paul <brianp@vmware.com> vbo: fix error detection in vbo_save_playback_vertex_list()

The old code didn't make sense. The clause in question did the
same thing as the next else-if clause. If we're already executing
a glBegin/End pair and we're starting a new primitive, that's an
error.

Fixes more failures in piglit gl-1.0-beginend-coverage test.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.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_save_draw.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_save_draw.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_save_draw.c
976b529b7c977e11a487c61d92bc5037cfd32155 23-Apr-2013 Brian Paul <brianp@vmware.com> mesa: use new _mesa_inside_begin_end() function

Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
b76f6d9557ff27140e18cf8aa2b57db8876d5d4d 17-Apr-2013 Brian Paul <brianp@vmware.com> mesa: remove #include "mfeatures.h" from numerous source files

None of the remaining FEATURE_x symbols in mfeatures.h are used anymore.

Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
c2665aacdd14beec9580246736c602e3ff04d7ae 06-Mar-2013 Brian Paul <brianp@vmware.com> vbo: fix crash found with shared display lists

This fixes a crash when a display list is created in one context
but executed from a second one. The vbo_save_context::vertex_store
memeber will be NULL if we never created a display list with the
context. Just check for that before dereferencing the pointer.

Fixes http://bugzilla.redhat.com/show_bug.cgi?id=918661

Note: This is a candidate for the stable branches.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
acf438f5375e2426386694e541b843dc6f8fd11a 30-Oct-2012 Marek Olšák <maraeo@gmail.com> vbo: fix glVertexAttribI* functions

The functions were broken, because they converted ints to floats.
Now we can finally advertise OpenGL 3.0. ;)

In this commit, the vbo module also tracks the type for each attrib
in addition to the size. It can be one of FLOAT, INT, UNSIGNED_INT.

The little ugliness is the vertex attribs are declared as floats even though
there may be integer values. The code just copies integer values into them
without any conversion.

This implementation passes the glVertexAttribI piglit test which I am going
to commit in piglit soon. The test covers vertex arrays, immediate mode and
display lists.

NOTE: This is a candidate for the stable branches.

Reviewed-by: Brian Paul <brianp@vmware.com>

v2: cosmetic changes as suggested by Brian
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
4f9d351ef186314a58e58795936de38e1b765f18 10-Oct-2012 Eric Anholt <eric@anholt.net> mesa: Remove support for NV_vertex_program's special attributes aliasing

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
09df07373bfd209e8e7129272c4c257e050bb961 11-Sep-2012 Oliver McFadden <oliver.mcfadden@linux.intel.com> mesa: remove FEATURE_dlist define.

Signed-off-by: Oliver McFadden <oliver.mcfadden@linux.intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.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_save_draw.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_save_draw.c
a7ac9c9c7dc7401ca6143d1e7476df5e3c2758b7 23-Apr-2012 Marek Olšák <maraeo@gmail.com> vbo: move vbo_draw_method into vbo_context.h

I'll need vbo_context in that function soon.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
802ca81e260f6ccfe2cf492e96b2887131bed09c 22-Apr-2012 Marek Olšák <maraeo@gmail.com> vbo: call UpdateState directly when notifying a driver about _NEW_ARRAY

Core Mesa doesn't need to know about this.

This also removes the hack in recalculate_input_bindings.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
97e2f625b8bcba96acde29dcd017031e036f4a24 16-Apr-2012 Marek Olšák <maraeo@gmail.com> vbo: remove vbo_context::mat_currval

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
8c990de0d682bbedfd7e1988d4f8948ea99b0cc3 16-Apr-2012 Marek Olšák <maraeo@gmail.com> vbo: remove vbo_context::generic_currval

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
fa48137f292bbf8cbcd65e9caf33633cddc96600 16-Apr-2012 Marek Olšák <maraeo@gmail.com> vbo: remove vbo_context::legacy_currval

It's not nice when you have several variables pointing to the same array
and you wanna ask your editor "where is this used" and you only get an answer
for one of the four currval, legacy_currval, generic_currval, mat_currval,
which is quite useless, because you never see the whole picture.

Let's get rid of the additional pointers.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
781f84a3c2f7a06cb9e6cc44b8d5d08b39577c25 07-Feb-2012 Brian Paul <brianp@vmware.com> vbo: unmap vertex store before executing lists

We don't want our VBOs mapped when we're drawing. This change checks
if the vertex store VBO is mapped before we execute a list, unmaps it,
then remaps it after drawing. This situation pops up when building a
nested display list in GL_COMPILE_AND_EXECUTE mode.

Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
e53557996ece5ab877652b8f83ae40bb4c483453 01-Feb-2012 Brian Paul <brianp@vmware.com> vbo: fix node_attrsz[] usage in vbo_bind_vertex_list()

The node_attrsz[] array is initially copied from the node->attrsz[]
array but some values get rewritten. Thereafter, we need to use the
node_attrsz[] values.

Fixes a bug when replaying a display list that uses generic vertex
array[16] (at least).

NOTE: This is a candidate for the 8.0 branch.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
0a7602b938893e1b04a01ca8680376cbeec053ab 26-Dec-2011 Brian Paul <brianp@vmware.com> vbo: signal _NEW_ARRAY when transitioning between glBegin/End, glDrawArrays

This fixes a regression seen with the isosurf demo when switching between
glBegin/End and glDrawArrays (do it several times). The problem was the
driver wasn't getting _NEW_ARRAY when the arrays were subtly changed:
(vertex3f, normal3f) vs. (normal3f, vertex3f).

This patch fixes that by signaling _NEW_ARRAY whenever we transition
between glBegin/End and glDrawArrays mode and display lists.

The patch also fixes up the initialization of the map_vp_none[] array
to stop putting strange values in the last five elements of the array.

v2: remove DRAW_ELEMENTS, don't distinguish between glDrawArrays and
glDrawElements

v3: add DRAW_DISPLAY_LIST for the display list case, just to be safe.

Reviewed-by: Mathias Froehlich <Mathias.Froehlich@web.de>
Tested-by: Mathias Froehlich <Mathias.Froehlich@web.de>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.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_save_draw.c
dca6a28a14f22d77273d79d44f57b0d853c0242d 31-Oct-2011 Mathias Fröhlich <Mathias.Froehlich@web.de> mesa: Make gl_program::InputsRead 64 bits.

Make gl_program::InputsRead a 64 bits bitfield.
Adapt the intel and radeon driver to handle a 64 bits
InputsRead value.

Signed-off-by: Mathias Froehlich <Mathias.Froehlich@web.de>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
ed42c2580717527b2005580940fc766d95bb6b0b 31-Oct-2011 Mathias Fröhlich <Mathias.Froehlich@web.de> vbo: Use The VERT_{ATTRIB,BIT} defines.

Signed-off-by: Mathias Froehlich <Mathias.Froehlich@web.de>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
28249bd260f4c52badf3eb61ade2744604b21bca 22-Aug-2011 Ian Romanick <ian.d.romanick@intel.com> mesa: Eliminate dd_function_table::MapBuffer

Replace all calls to dd_function_table::MapBuffer with appropriate
calls to dd_function_table::MapBufferRange, then remove all the cruft.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
6c8aa3491a19535e8c39a47a3766bf8524e80582 22-Aug-2011 Ian Romanick <ian.d.romanick@intel.com> mesa: Remove target parameter from dd_function_table::GetBufferSubData

No driver used that parameter, and most drivers ended up with a bunch
of unused-parameter warnings because it was there.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
12d924c5ae14a1c6a05a3dcae29b77e7668e227d 22-Aug-2011 Ian Romanick <ian.d.romanick@intel.com> mesa: Remove target parameter from dd_function_table::MapBuffer

No driver used that parameter, and most drivers ended up with a bunch
of unused-parameter warnings because it was there.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
56f0c00f125ee75caeadc1c9e8cab8a488635e5e 22-Aug-2011 Ian Romanick <ian.d.romanick@intel.com> mesa: Remove target parameter from dd_function_table::UnmapBuffer

No driver used that parameter, and most drivers ended up with a bunch
of unused-parameter warnings because it was there.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
62811057f41bf7c027da6156a44383266c7f3952 08-Jun-2011 Brian Paul <brianp@vmware.com> vbo: remove node->count > 0 test in vbo_save_playback_vertex_list()

See piglit dlist-fdo31590.c test and
http://bugs.freedesktop.org/show_bug.cgi?id=31590

In this case we had node->prim_count=1 but node->count==0 because the
display list started with glBegin() but had no vertices. The call to
glEvalCoord1f() triggered the DO_FALLBACK() path. When replaying the
display list, the old condition basically no-op'd the call to
vbo_save_playback_vertex_list call(). That led to the invalid operation
error being raised in glEnd().

NOTE: This is a candidate for the 7.10 branch.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
584d1e23096ed103ae62c13685a435b220b482f2 07-Apr-2011 José Fonseca <jfonseca@vmware.com> mesa: Update _ElementSize in a few more places.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
204991bf5d29caa3fa54df9e4f6898faa73752cf 07-Apr-2011 Brian Paul <brianp@vmware.com> mesa: Update _ElementSize.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
5a01361ceaf29614ba008278e31cf2ffe85f251b 27-Dec-2010 Marek Olšák <maraeo@gmail.com> vbo: notify a driver that we change buffer offsets, strides, etc.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
14b36cd568b7f3ae963430248fcd7ef0b7a165f6 09-Jan-2011 Vinson Lee <vlee@vmware.com> vbo: Include mfeatures.h in files that perform feature tests.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.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_save_draw.c
8585c01265c5b5cf9c6aa93fbc0cbbb7dc1506ec 05-Jun-2010 Brian Paul <brianp@vmware.com> vbo: misc clean-ups
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
8d5c83c467f83b44f5f2e271c4f9cca2d45af518 12-May-2010 Chia-I Wu <olv@lunarg.com> mesa/es: Remove omit list.

vbo/vbo_save* are the last members on the omit list. Test FEATURE_dlist
in the sources and remove the omit list.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
298be2b028263b2c343a707662c6fbfa18293cb2 19-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> Replace the _mesa_*printf() wrappers with the plain libc versions
/external/mesa3d/src/mesa/vbo/vbo_save_draw.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_save_draw.c
8b2ebd15310cbd5d905b08761b5e950f8e2580e5 16-Apr-2009 Keith Whitwell <keithw@vmware.com> vbo: cache last dlist vertex in malloced memory

Avoids repeated mapping of the VBO buffer on display list replay. We
need access to the final vertex in order to update the GL current attrib
values.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
8ae04f3c46e7ac26a71e00759a2b25fd35a4d8d6 15-Mar-2009 Michal Krol <michal@vmware.com> vbo: Silence integer-to-pointer warnings.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
e97681c7f551a2a2a6bd5eff0f4192a870c816c0 09-Feb-2009 Brian Paul <brianp@vmware.com> mesa: merge gallium-0.2 into gallium-master-merge

Merge commit 'origin/gallium-0.2' into gallium-master-merge

Conflicts:

Makefile
docs/relnotes-7.4.html
docs/relnotes.html
src/mesa/drivers/dri/i965/brw_wm.h
src/mesa/main/imports.c
src/mesa/main/mtypes.h
src/mesa/main/texcompress.c
src/mesa/main/texenvprogram.c
src/mesa/main/version.h
src/mesa/vbo/vbo_exec_api.c
src/mesa/vbo/vbo_save_draw.c
dea0d4d56326f148a42c766bdbaf1b5bb247cc59 03-Feb-2009 Brian Paul <brianp@vmware.com> mesa: fix GLSL issue preventing use of all 16 generic vertex attributes

Only 15 actually worked before since we always reserved generic[0] as an
alias for vertex position.

The case of vertex attribute 0 is tricky. The spec says that there is no
aliasing between generic vertex attributes 0..MAX_VERTEX_ATTRIBS-1 and the
conventional attributes. But it also says that calls to glVertexAttrib(0, v)
are equivalent to glVertex(v). The distinction seems to be in glVertex-mode
versus vertex array mode.

So update the VBO code so that if the shader uses generic[0] but not gl_Vertex,
route the attribute data set with glVertex() to go to shader input generic[0].

No change needed for the glDrawArrays/Elements() path.

This is a potentially risky change so regressions are possible. All the usual
tests seem OK though.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
ded949ed06e02ef26b1168b101daba04be78155e 24-Jan-2009 Brian Paul <brianp@vmware.com> mesa: set the new array->Format field in VBO code

Should help to solve failed assertion in i965 driver (see bug 19708)
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
239617fbe22d4dd7b2794510a6665f09602b5adf 07-Oct-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: replace GLuint with GLbitfield to be clearer about usage

Also, fix up some comments to be doxygen style.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
4070dba28a486bc0d14df028a085601ae7299f46 07-Oct-2008 Keith Whitwell <keith@tungstengraphics.com> mesa: update state after binding vertex list in dlist path
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
1680ef869625dc1fe9cf481b180382a34e0738e7 03-Oct-2008 Keith Whitwell <keith@tungstengraphics.com> mesa: avoid generating constant vertex attributes in fixedfunc programs

Keep track of enabled/active vertex attributes.
Keep track of potential vertex program outputs.

When generating fragment program, replace references to fragment attributes
which are effectively non-varying and non-computed passthrough attributes with
references to the new CURRENT_ATTRIB tracked state value.

Only downside is slight ugliness in VBO code where we need to validate state
twice in succession.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
fa1b533012030cd67148b5bf1e018fd5e30c96f8 03-Oct-2008 Keith Whitwell <keith@tungstengraphics.com> mesa: add new internal state for tracking current vertex attribs
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
a69fc5129bdf2f245c5bf2e0fe7b542caf7809a9 04-Sep-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: improved gl_buffer_object reference counting

Use new _mesa_reference_buffer_object() function wherever possible.
Fixes buffer object/display list crash reported in ParaView.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
37c74af01ce52b603f565a6c8a9094500d5cb87a 04-Sep-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: improved gl_buffer_object reference counting

Use new _mesa_reference_buffer_object() function wherever possible.
Fixes buffer object/display list crash reported in ParaView.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
ffbd455a36f1d7600bd5b60e91768133d901d2f4 16-May-2008 Brian Paul <brian.paul@tungstengraphics.com> fix an attr/src mix-up when setting-up/binding vertex arrays

This fixes problems with incorrect material coefficients when glMaterial
is called per-vertex.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
a2e6beade196aef269bda6bb3efb68809f85a683 16-May-2008 Brian Paul <brian.paul@tungstengraphics.com> fix an attr/src mix-up when setting-up/binding vertex arrays

This fixes problems with incorrect material coefficients when glMaterial
is called per-vertex.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
8fc1a6808d88bd1dd641751f2f50c867a05dcc07 20-Sep-2007 Xiang, Haihao <haihao.xiang@intel.com> fix memory access error in vbo_bind_vertex_list
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
e04c58e06842e5157231f1bd4ba79ccbbaad8f1c 14-Sep-2007 Xiang, Haihao <haihao.xiang@intel.com> mesa: bind VBO_ATTRIB_XXX to correct input array when
executing a display list. fix #10604
/external/mesa3d/src/mesa/vbo/vbo_save_draw.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_save_draw.c
30b6f11de1f2f3b9198388451b8a1f73f012c964 13-Apr-2007 Brian <brian@yutani.localnet.net> s/version/vertex/
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
f11604a30d9ec7ab74f03be2055f8bb8ca4fe211 13-Apr-2007 Brian <brian@yutani.localnet.net> fix bug in _playback_copy_to_current(): need to skip version position data (see bug 10587)
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
2cf5fd48d1586f961910a14324a457854cb66221 09-Mar-2007 Brian <brian@yutani.localnet.net> Merge branch 'origin' into glsl-compiler-1

Conflicts:

src/mesa/main/context.c
c080123998f28d9317331aec7ddfcd1074b29daf 26-Feb-2007 Aapo Tahkola <aapo@aapo-desktop.(none)> Fix #10071 - wrong max_index in vbo draw_prims. (Papadakos Panagiotis)
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
3f4826a358cab8b6d638fc8eb46aef668a7bcf46 22-Feb-2007 Brian <brian@yutani.localnet.net> XXX comments about shaders
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
a3b4b1173950599785e4f05278e868180a2bf387 18-Jan-2007 Aapo Tahkola <aapo@aapo-desktop.(none)> Fix invalid enums passed to MapBuffer
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
6a3fdc3a1ea6c306d9543791bf172dd1052d7382 16-Jan-2007 Keith Whitwell <keith@tungstengraphics.com> Merge branch 'master' of git+ssh://keithw@git.freedesktop.org/git/mesa/mesa into vbo-0.2

Conflicts:

src/mesa/array_cache/sources
src/mesa/drivers/dri/i965/brw_context.c
src/mesa/drivers/dri/i965/brw_draw.c
src/mesa/drivers/dri/i965/brw_fallback.c
src/mesa/drivers/dri/i965/brw_vs_emit.c
src/mesa/drivers/dri/i965/brw_vs_tnl.c
src/mesa/drivers/dri/mach64/mach64_context.c
src/mesa/main/extensions.c
src/mesa/main/getstring.c
src/mesa/tnl/sources
src/mesa/tnl/t_save_api.c
src/mesa/tnl/t_save_playback.c
src/mesa/tnl/t_vtx_api.c
src/mesa/tnl/t_vtx_exec.c
src/mesa/vbo/vbo_attrib.h
src/mesa/vbo/vbo_exec_api.c
src/mesa/vbo/vbo_save_api.c
src/mesa/vbo/vbo_save_draw.c
18d52f96bb1f20b1887b67e87506835bca05d73a 02-Nov-2006 Keith Whitwell <keith@tungstengraphics.com> Fix typo in display list attrib binding.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
fd2756006a0baf63f60548d8f509de5b9a143608 30-Oct-2006 Keith Whitwell <keith@tungstengraphics.com> Move edgeflag into the VERT_ATTRIB_SEVEN slot. This means that our
NV_vertex_program implementation has slightly incorrect aliasing
behaviour. I think this is reasonable given the simplification and
the fact that the mainstream ARB_vp continues to have the correct
behaviour.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
99efde461d3b8615863bdb7308e05289e0db0422 30-Oct-2006 Keith Whitwell <keith@tungstengraphics.com> better handling of current attributes. Trivial dlist and varray tests work
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c
fd12b37dbada6f945a94b93ecf332d0b6a8eef06 29-Oct-2006 Keith Whitwell <keith@tungstengraphics.com> Checkpoint of new vbo-building code. Currently builds regular arrays
rather than VBO's - VBOs are easy but need to look closer at the
driver interface. The trivial/tri demo works.
/external/mesa3d/src/mesa/vbo/vbo_save_draw.c