History log of /external/mesa3d/src/mesa/vbo/vbo_exec_array.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
db7404defd47aa22082b52a6a31a08fb39fab626 18-Dec-2011 Marek Olšák <maraeo@gmail.com> mesa: implement new DrawTransformFeedback functions

Acked-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
fcebb157f0eb6c2f374dee609a01b0b14856e7fc 27-Jun-2012 Marek Olšák <maraeo@gmail.com> vbo: optimize validation for glMultiDrawElements

Some parameters need to be checked only once.
check_valid_to_render needs to be called only once.

The validate function is based on the one for DrawElements.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
62b971673950148eb949ba23d7fdc47debea16f0 27-Jun-2012 Marek Olšák <maraeo@gmail.com> vbo: first ASSERT_OUTSIDE_BEGIN_END then FLUSH, not the other way around

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
d9eb1a12254add75f6842fdebe5b78512855d04d 27-Jun-2012 Marek Olšák <maraeo@gmail.com> vbo: don't call twice _mesa_valid_to_render in DrawArraysInstancedBaseInstance

It's called in _mesa_validate_DrawArraysInstanced already.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
9881bf6e69b52efc1eb57a4027d9a8817ef8cbcb 27-Jun-2012 Brian Paul <brianp@vmware.com> mesa: more const qualifiers to match the latest glext.h

For some reason regular gcc on Linux didn't catch these but the mingw
compiler did (generated errors, not warnings).

v2: include the changes in src/mapi/ too
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.c
862667b6d96022d75046c765aa1e9d8846b9d313 08-May-2012 Jordan Justen <jordan.l.justen@intel.com> vbo: use software primitive restart in the VBO module

When PrimitiveRestartInSoftware is set, the VBO module will handle
primitive restart scenarios before calling the vbo->draw_prims
drawing function.

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
014306578be1f7aeb883e7b22eb255eda82fa011 09-May-2012 Brian Paul <brianp@vmware.com> mesa: implement DEBUG_ALWAYS_FLUSH debug option

This flag has been around for a while but it wasn't actually used anywhere.

Now, setting this flag causes a glFlush() to be issued after each
drawing call (including glBegin/End, glDrawElements, glDrawArrays,
glDrawPixels, glCopyPixels and glBitmap).
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.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_exec_array.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_exec_array.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_exec_array.c
6fc565a94bc0de7ad617c28db7b8b6dfa4102d49 22-Apr-2012 Marek Olšák <maraeo@gmail.com> vbo: do FLUSH_CURRENT before validating and updating state

This fixes an assertion failure since:
commit 81afdd20f3f574ce29559d8ad77df5c77652009e
vbo: don't check twice whether it's valid to render

FLUSH_CURRENT may set _NEW_CURRENT_ATTRIB.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.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_exec_array.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_exec_array.c
81afdd20f3f574ce29559d8ad77df5c77652009e 16-Apr-2012 Marek Olšák <maraeo@gmail.com> vbo: don't check twice whether it's valid to render

It's already done in _mesa_validate_Draw* and it's not needed to do it again
unless I am missing something.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
576c8c592a4be7047a00b0c8fe3851b09f10d8d4 16-Apr-2012 Marek Olšák <maraeo@gmail.com> mesa: add _NEW_VARYING_VP_INPUTS for gl_context::varying_vp_inputs

This is a frequently-updated state and _NEW_ARRAY already causes revalidation
of the vbo module. It's kinda counter-productive to recompute arrays
in the vbo module if _NEW_ARRAY is set and then set _NEW_ARRAY again.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
784dd51198433e5c299da4a7742c68d21d68d1c1 16-Apr-2012 Marek Olšák <maraeo@gmail.com> mesa,vbo: properly detect when vertex arrays need to be recalculated

This moves the RebindArrays flag into the vbo module, consolidates the code,
and adds missing vbo_draw_method calls.

Also with this change, the vertex arrays are not needlessly recalculated twice.
The issue with the old code was:
- If recalculate_input_bindings updates vp_varying_inputs, _NEW_ARRAY is set.
- _mesa_update_state is called and the vp_varying_inputs change causes
regeneration of the fixed-function shaders, which also sets _NEW_PROGRAM.
- The occurence of either _NEW_ARRAY or _NEW_PROGRAM sets
the recalculate_inputs flag to TRUE again.
- The new code sets the flag to FALSE after the second _mesa_update_state,
because there can't possibly be any change which would require recalculating
the arrays.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
fd4a3d463c103192311aacc04f5f871f4a1035df 09-Feb-2012 Dave Airlie <airlied@redhat.com> mesa/vbo: inline vbo_sizeof_ib_type.

Can't see any reason this wouldn't be better off as an inline.

Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
6e738d35c5c88769ececbadd5f4ac14d36647168 08-Feb-2012 Kenneth Graunke <kenneth@whitecape.org> vbo: Eliminate short-circuiting in invalid-start case.

Now that we have a index_range_invalid flag, we can just use that rather
than calling vbo_validated_drawrangeelements directly and returning.

NOTE: This is a candidate for release branches.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
112b02c32402d96fd7d526ab84877bb66dc12de4 08-Feb-2012 Kenneth Graunke <kenneth@whitecape.org> vbo: Rework checking of 'end' against _MaxElement.

This failed to take basevertex into account:

If basevertex < 0:
(end + basevertex) might actually be in-bounds while 'end' is not.
We would have clamped in this case when we probably shouldn't.
This could break application drawing.

If basevertex > 0:
'end' might be in-bounds while (end + basevertex) might not.
We would have failed to clamp in this place. There's a comment
indicating the TNL module depends on max_index being in-bounds;
if so, it would likely break horribly.

Rather than trying to clamp correctly in the face of basevertex, simply
delete the clamping code and indicate that we don't have a valid range.
This causes _tnl_vbo_draw_prims to use vbo_get_minmax_indices() to
compute the actual bounds, which is much safer.

NOTE: This is a candidate for release branches.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
f00c97b23f78f3ccd1ea554ceebe7a33de7f81cf 08-Feb-2012 Kenneth Graunke <kenneth@whitecape.org> vbo: Ignore invalid element ranges which are outside VBO bounds.

Some applications, such as Regnum Online, appear to pass invalid
start/end values to glDrawRangeElements. In particular, the 'start'
index sometimes exceeds the maximum array element. This is clearly
invalid behavior, and although the spec isn't clear, seems to result
in undefined, implementation-specific behavior.

This patch takes the conservative approach and simply ignores the range,
while issuing a warning indicating that the application is broken and
should be fixed.

NOTE: This is a candidate for release branches.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=45214
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44701
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=41152
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=40361
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=28138
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com> [v1]
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
f9be8543aab9005c30b38331b9f7250a01720942 08-Feb-2012 Kenneth Graunke <kenneth@whitecape.org> vbo: Remove pedantic warning about 'end' beind out of bounds.

The application supplied [start, end] range is merely a conservative
hint of the ranges of index values inside the index buffer. There is no
requirement that all vertices in the range [start, end] be referenced.

Passing an 'end' value larger than the maximum legal index is perfectly
acceptible; applications can legally pass 0xffffffff when they don't
have a tighter bound readily available.

Thus, the warning doesn't indicate a correctness issue; it could only
indicate a performance issue. However, it does not even do that.

glDrawRangeElements is designed to optimize non-VBO vertex data uploads
by providing an upper bound on the size of buffers a driver would need
to allocate. With VBOs, the data is already in an uploaded buffer, so
the range doesn't help.

The clincher is: we only know _MaxElement for VBOs. For user-space
arrays, we just set it to 2,000,000,000 (see mesa/main/varray.h:63.)
So we can only check this in the case where it is not useful.

Many applications, including the Unigine demos, currently trigger this
warning, which suggests the applications are buggy when they're actually
fine. Eliminating the warning should confuse users less while not
actually losing any benefit to application developers.

NOTE: This is a candidate for release branches.

Suggested-by: Jose Fonseca <jfonseca@vmware.com>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
f8be4f33d31d004bfcf090fa7d4aa37b750e43af 02-Feb-2012 Chih-Wei Huang <cwhuang@linux.org.tw> vbo: fix a building error

Signed-off-by: Marek Olšák <maraeo@gmail.com>

NOTE: This is a candidate for the 8.0 branch.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
90d654b09d98fc597ca273c65c2b1b00a9c35f09 12-Jan-2012 Brian Paul <brianp@vmware.com> vbo: fix breakage from previous commit

Don't know how that slipped by.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
bbc74ffad6551272a4551f8dd9de5b34916c0ac2 12-Jan-2012 Brian Paul <brianp@vmware.com> vbo: fix void * arithmetic compilation error on MSVC

Also, call vbo_sizeof_ib_type() once and fix argument cast in
MapBufferRange() call.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
42d4972bf0b147b0241c2be7e6579fd64cf2c216 31-Dec-2011 Yuanhan Liu <yuanhan.liu@linux.intel.com> vbo: introduce vbo_get_minmax_indices function

Introduce vbo_get_minmax_indices() function to handle the min/max index
computation for nr_prims(>= 1). The old code just compute the first
prim's min/max index; this would results an error rendering if user
called functions like glMultiDrawElements(). This patch servers as
fixing this issue.

As when nr_prims = 1, we can pass 1 to paramter nr_prims, thus I made
vbo_get_minmax_index() static.

v2: per Roland's suggestion, put the indices address compuation into
vbo_get_minmax_index() instead.

Also do comination if possible to reduce map/unmap count

v3: per Brian's suggestion, use a pointer for start_prim to avoid
structure copy per loop.

Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
efa1fac2158c9146b87f0d4340a864661721de21 28-Dec-2011 Yuanhan Liu <yuanhan.liu@linux.intel.com> vbo: introduce vbo_sizeof_ib_type() function

introduce vbo_sizeof_ib_type() function to return the index data type
size. I see some place use switch(ib->type) to get the index data type,
which is sort of duplicate.

Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
91d950bad1f1b94fb1751109ae8c139376f38156 01-Nov-2011 Mathias Fröhlich <Mathias.Froehlich@web.de> vbo: Clean up recalculate_input_bindings.

Now the gl_array_object's layout matches the one used in
recalculate_input_bindings. Make use of this and remove the
bind_array_obj function.

Signed-off-by: Mathias Froehlich <Mathias.Froehlich@web.de>
Reviewed-by: Brian Paul <brianp@vmare.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.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_exec_array.c
762c9766c93697af8d7fbaa729aed118789dbe8e 31-Oct-2011 Mathias Fröhlich <Mathias.Froehlich@web.de> mesa: Use VERT_ATTRIB_* indexed array in gl_array_object.

Replace the distinct struct gl_client_array members in gl_array_object by
an array of gl_client_arrays indexed by VERT_ATTRIB_*.
Renumber the vertex attributes slightly to keep the old semantics of the
distinct array members. Make use of the upper 32 bits in VERT_BIT_*.
Update all occurances of the distinct struct members with the array
equivalents.

Signed-off-by: Mathias Froehlich <Mathias.Froehlich@web.de>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.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_exec_array.c
a0a5bd4bb30a73c10b02c3c3b914940a03f9b790 23-Nov-2011 Yuanhan Liu <yuanhan.liu@linux.intel.com> mesa: move ElementArrayBufferObj to gl_array_object

According opengl spec 4.2.pdf table 6.12 (Vertex Array Object State) at
page 515, the element buffer object is listed in vertex array object.

So, move the ElementArrayBufferObj inside gl_array_object to make
element buffer object per-vao.

This would fix most of(3 left) intel oglc vao test fail

NOTE: this is a candidate for the 7.11 branch.

Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
409748ac0b92aacae6ad9c2bcedca4fef8986eea 03-Aug-2011 Mathias Froehlich <Mathias.Froehlich@web.de> vbo: Clean up unused variables in the vbo module.

Remove some unused or unused but set variables
from the vbo module.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
8c7c589c4e70d7cdcceb350aa4edd3d9eec4403e 06-Oct-2011 Chad Versace <chad@chad-versace.us> vbo: Redeclare bind_array() as non-static vbo_bind_array()

This is necessary because i965 will need to call vbo_bind_array() when
cleaning up after a buffer resolve meta-op.

Detailed Explanation
--------------------
The vbo module tracks vertex attributes separately from the gl_context.
Specifically, the vbo module maintins vertex attributes in
vbo_exec_context::array::inputs, which is synchronized with
gl_context::Array::ArrayObj::VertexAttrib by vbo_bind_array().
vbo_draw_arrays() calls vbo_bind_array() to perform the synchronization
before calling the real draw call, vbo_context::draw_arrays.

Intel hardware accomplishes buffer resolves with a meta-op. Frequently,
that meta-op must be performed within glDraw* in the moment immediately
before the draw occurs (The hardware designers hate us...). After
performing the meta-op, but before calling vbo_bind_array(), the
gl_context's vertex attributes will have been restored to their original
state (that is, their state before the meta-op began), but the vbo
module's vertex attribute are those used in the last meta-op. Therefore we
must manually synchronize the two with vbo_bind_array() before continuing
with the original draw command (that is, the one requested with glDraw*).

See brw_predraw_resolve_buffers(), which will be added in a future commit.

Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Chad Versace <chad@chad-versace.us>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
c19f8ab2796a68d5e0c3c6334e7597f7f1c4c757 14-Oct-2011 Ian Romanick <ian.d.romanick@intel.com> mesa/vbo: Treat attribute 0 and vertex as the same

This is supported by the pseudo-code on pages 27 and 28 (pages 41 and
42 of the PDF) of the OpenGL 2.1 spec. The last part of the
implementation of ArrayElement is:

if (generic attribute array 0 enabled) {
if (generic vertex attribute 0 array normalization flag is set, and
type is not FLOAT or DOUBLE)
VertexAttrib[size]N[type]v(0, generic vertex attribute 0 array element i);
else
VertexAttrib[size][type]v(0, generic vertex attribute 0 array element i);
} else if (vertex array enabled) {
Vertex[size][type]v(vertex array element i);
}

Page 23 (page 37 of the PDF) of the same spec says:

"Setting generic vertex attribute zero specifies a vertex; the
four vertex coordinates are taken from the values of attribute
zero. A Vertex2, Vertex3, or Vertex4 command is completely
equivalent to the corresponding VertexAttrib* command with an
index of zero."

Fixes piglit test attribute0.

NOTE: This is a candidate for stable branches.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
655c7d7498390ab69623e308abe5db4a8489a25c 22-Aug-2011 Ian Romanick <ian.d.romanick@intel.com> mesa: Only map the necessary buffer range in vbo_get_minmax_index

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_exec_array.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_exec_array.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_exec_array.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_exec_array.c
c251d83d916336f95109363e919920a024947230 04-Aug-2011 Marek Olšák <maraeo@gmail.com> vbo: do not call _mesa_max_buffer_index in debug builds

That code drops performance in Unigine Heaven and Tropics
by a factor of 10. That's too crazy even for a debug build.

NOTE: This is a candidate for the 7.11 branch.

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
b6df603e650527d5fa7f0fc1448be1bb57f47fbb 22-Jun-2011 Dave Airlie <airlied@redhat.com> vbo: minor optimisation in vbo_exec_DrawRangeElements

this moves getting the context into the debug in this function,

just spotted it trawling callgrind traces for other things.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
8852e35e29ff941172540e1ec7158b9259f46c3c 13-Jun-2011 Brian Paul <brianp@vmware.com> vbo: minor simplification in print_draw_arrays() debug function
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
09201cc7a0c4c50871bb8aa5d00ac70aa4e9e670 31-May-2011 Pierre-Eric Pelloux-Prayer <pelloux@gmail.com> mesa: add implementation of glDrawElementsInstancedBaseVertex

Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
0630593c5fb22fe0f98f2c815c4a315056a9e3d2 15-Apr-2011 Brian Paul <brianp@vmware.com> vbo: init prim[] array with memset()

This fixes a Coverity warning about uninitialized data.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
23d75936a72b9a9b9e1d04a901a86a75d93dbffb 06-Apr-2011 José Fonseca <jfonseca@vmware.com> mesa/st: Prevent 'end' < 'start' in vbo_exec_DrawRangeElementsBaseVertex()

We adjust 'end' to fit into _MaxElement, but that may result into a 'start'
value bigger than 'end' being passed downstream, causing havoc.

This could be seen with arb_robustness_draw-vbo-bounds, due to an
application bug.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
ef58598c1cf2ac689f67c75b2f477f2c404fce98 07-Mar-2011 Marek Olšák <maraeo@gmail.com> vbo: mark vertex arrays as dirty when re-binding

This fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=34378
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
7b3bec87dfb02e8ee43f64da12c928d76883aa61 01-Mar-2011 Brian Paul <brianp@vmware.com> vbo: silence unused var warning
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
6d1f28d6c045f768da2eee779006535acf382cce 22-Feb-2011 Brian Paul <brianp@vmware.com> vbo: added vbo_check_buffers_are_unmapped() debug function
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
7ea729a1855e93b3c41c72781950f8612221fd5c 18-Feb-2011 Brian Paul <brianp@vmware.com> vbo: add debug code to verify that buffers are unmapped before drawing
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
cfaf217135d8a8e903b3fbf380f18170df018f0c 12-Feb-2011 Marek Olšák <maraeo@gmail.com> vbo: bind arrays only when necessary

We don't need to call bind_arrays in the vbo module if the states
which the function depends on are not dirty.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
72f2551017e03f888d63fa9040120740c6d40620 17-Jan-2011 Brian Paul <brianp@vmware.com> mesa: s/primcount/numInstances/

primcount is also a parameter to glMultiDrawElements(). Use numInstances
to avoid confusion between these things.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
be45255ab1f63c10fefcf2f399ac7d1c9294cf6a 22-Oct-2010 Brian Paul <brianp@vmware.com> vbo: support for primitive restart

We handle splitting of glDrawArrays() calls into two primitives here
so that drivers don't have to worry about it.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.c
7dcb3050006a12c8afa44e436902b8a663855bc8 13-Sep-2010 Kristian Høgsberg <krh@bitplanet.net> mesa: Revert accidentally committed vertex code chunk
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
4ebf07a426771b62123e5fcb5a8be0de24037af1 13-Sep-2010 Kristian Høgsberg <krh@bitplanet.net> glx: Don't destroy DRI2 drawables for legacy glx drawables

For GLX 1.3 drawables, we can destroy the DRI2 drawable when the GLX
drawable is destroyed. However, for legacy drawables, there os no
good way of knowing when the application is done with it, so we just
let the DRI2 drawable linger on the server. The server will destroy
the DRI2 drawable when it destroys the X drawable or the client exits
anyway.

https://bugs.freedesktop.org/show_bug.cgi?id=30109
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
9eca0e2c3e9409b5da49d9a5052d3665e7d45bb1 02-Sep-2010 Brian Paul <brianp@vmware.com> mesa: fix some printf warnings with casts
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
33c2dbe5b0dc70349fd7793d11d1d83dd7ba5d77 31-May-2010 Vinson Lee <vlee@vmware.com> vbo: Remove unnecessary header.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
9aae67ca3a29ee44ea6d1d003502c079b9f0fc60 27-May-2010 Brian Paul <brianp@vmware.com> vbo: remove dead code
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
b6187057be07a9652e807e2cfab872eb410c1fa7 27-May-2010 Brian Paul <brianp@vmware.com> vbo: update/add comments
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
3b7ac45162412a79c3cd4d4dbc16bd54db597608 05-Apr-2010 Brian Paul <brianp@vmware.com> mesa: implement core Mesa support for GL_ARB_draw_instanced
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.c
32f2fd1c5d6088692551c80352b7d6fa35b0cd09 19-Feb-2010 Kristian Høgsberg <krh@bitplanet.net> Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versions
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
36a54885a4b2eb2b23361f2add3d66e385a322cf 15-Feb-2010 Brian Paul <brianp@vmware.com> vbo: fix broken glMultiDrawElements()

Seems to be a regression from commit 60b08eb1fdf287d28ec66b9282513ab35a61aee0.

(cherry picked from commit c5a4cfb03ff17955c049f16ac805f5837ea4b633)
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
5ce9183c1c535d924a79c2b6b280c6a2648cec19 29-Jan-2010 Brian Paul <brianp@vmware.com> vbo: fix missing state validation bugs

Commit 2708ddfb06a36d8568e2aa130bf1f7d551fcd309 caused a few regressions.
We need to check/validate state after calling bind_arrays() because
it might set the _NEW_ARRAYS flag if the varying VP inputs change.

The symptom of this problem was some attribute arrays being ignored
(or interpreted as constant-valued) in glDrawRangeElements or
glMultiDrawElements.

A follow-on patch will add some additional asserts to try to catch
this kind of thing in the future.

(cherry picked from commit 3cba779e16935f7c3a0bfd8af48bd5e015068e96)
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
4886f677ecf121c863f8f65a846284ab9d26cbea 29-Jan-2010 Brian Paul <brianp@vmware.com> mesa: Warn when indices are out of bounds, but do not skip the draw in debug builds.

The driver (or preferably the hardware) should handle out of bounds
indices.

If there are problems then it's better to detect those in the debug
builds.

(cherry picked from commit e3257912e006120f6ab611e77005eed1a464030a)
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
dd89ac249c56d04bbc23ecd9877426af9f09269c 28-Jan-2010 Brian Paul <brianp@vmware.com> mesa: fix int/uint comparison warnings

Reported by Karl Schultz.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
cbecb8fc8e85cfafed7fd8fd0e2dd1143efcf62b 26-Jan-2010 Brian Paul <brianp@vmware.com> vbo: if 'end' is out of bounds, clamp it

If we determine that the 'end' parameter to glDrawElements() is out of
bounds, clamp it to the max legal index value.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
645e297a0019eb2f7513bd801ffdaac03187f29f 26-Jan-2010 Brian Paul <brianp@vmware.com> vbo: clamp DrawElements start/end to max possible values

Some apps are sloppy with their start/end values. Clamp them to
max possible values to prevent problems later.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
94d238e7571413cb0be8a4fe6e231b739644d588 13-Jan-2010 Vinson Lee <vlee@vmware.com> vbo: Remove unnecessary header from vbo_exec_array.c.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
133501bef2933395f14b2ebdfeda84279be93c60 18-Nov-2009 Brian Paul <brianp@vmware.com> mesa: fix assorted compiler warnings
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
f9784072fee016e14e0319c705420becb2490bf9 15-Oct-2009 Brian Paul <brianp@vmware.com> vbo: clean-ups, reformatting
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
ade1cc992410c8696fdfe0f84fb613fd0dc8099f 15-Oct-2009 Brian Paul <brianp@vmware.com> mesa: added MESA_VERBOSE option 'draw' to debug glDrawArrays/Elements, etc.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
29d27229a95837d085db785a2b4abb654457dafa 25-Sep-2009 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_6_branch'

Conflicts:

src/mesa/vbo/vbo_exec_array.c
1a816117258e594a073f6925edfcd2387071904d 24-Sep-2009 Brian Paul <brianp@vmware.com> vbo: limit number of warnings to 10

Otherwise some apps will emit tons of warnings.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
94a020cfe6cb1da04695897eed38b530af31f524 22-Sep-2009 Brian Paul <brianp@vmware.com> vbo: added comment about max array index
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
9a3333f43600ed4b9a17e49f79004f0c8d289378 22-Sep-2009 Brian Paul <brianp@vmware.com> vbo: restore some lost warning output
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
40603526f478a59b89a4c0a07c75a97dfe56b8c3 21-Sep-2009 Brian Paul <brianp@vmware.com> mesa: refine the error checking vbo_exec_DrawRangeElements()

If the 'end' index is out of bounds issue a warning as before. But instead
of just no-op'ing the draw call, examine the actual array indices to see
if they're OK. If the max array index is out of bounds, issue another
warning and no-op the draw call. Otherwise, draw normally. This is a
debug build-only feature since it could impact performance.

This "fixes" the missing torus in the OGL Distilled / Picking demo.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
2655d437569c5bce7c56782792cbd4460b9f758b 21-Sep-2009 Brian Paul <brianp@vmware.com> mesa: refine the error checking vbo_exec_DrawRangeElements()

If the 'end' index is out of bounds issue a warning as before. But instead
of just no-op'ing the draw call, examine the actual array indices to see
if they're OK. If the max array index is out of bounds, issue another
warning and no-op the draw call. Otherwise, draw normally. This is a
debug build-only feature since it could impact performance.

This "fixes" the missing torus in the OGL Distilled / Picking demo.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
92d7ed8a20d4a018ce5324e6537ae7b478b9e5bf 27-Aug-2009 Eric Anholt <eric@anholt.net> mesa: Add support for ARB_draw_elements_base_vertex.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
60b08eb1fdf287d28ec66b9282513ab35a61aee0 31-Aug-2009 Eric Anholt <eric@anholt.net> mesa: Make MultiDrawElements submit multiple primitives at once.

Previously, MultiDrawElements just called DrawElements a bunch of times.
By sending several primitives down the pipeline at once, we avoid a bunch
of validation. On my GL demo, this improves fps by 2.5% (+/- .41%) and
reduces CPU usage by 70.5% (+/- 2.9%) (n=3).

Reviewed by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
e3d47515f9b376b00743137529b4ca35a8436c92 14-Aug-2009 Brian Paul <brianp@vmware.com> vbo: call _mesa_valid_to_render()
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
bd4c6a2e503db43e81ef41f77d876308badd93eb 12-Aug-2009 Brian Paul <brianp@vmware.com> vbo: use _mesa_is_bufferobj()
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
855374a76a6e83cc0ad4af143b74e655e7b77d5e 12-Aug-2009 Brian Paul <brianp@vmware.com> vbo: fix incorrect pointer
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.c
c55f1a6c9917a87cc6b29808b4132b83cf516e05 09-Jun-2009 Brian Paul <brianp@vmware.com> vbo: more glDrawElements debug code (disabled)
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
0b6a0b367fdb575048b69d80ad4202d164a61f1e 04-Jun-2009 Brian Paul <brianp@vmware.com> vbo: minor reformatting
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
aa18e54ac9a70883a98f803c097d45f8ee84e717 04-Jun-2009 Brian Paul <brianp@vmware.com> vbo: move/refactor debug code
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
13f6d07521119afc4b6d9e6daa94d5091f4b9c65 04-Jun-2009 Brian Paul <brianp@vmware.com> vbo: added debug code to check array data validity (disabled)
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
ab4fd185843033cde0c58e8e0da932dbac7b8df2 02-Jun-2009 Brian Paul <brianp@vmware.com> vbo: tweak out-of-bounds VBO access error message

Subtract 1 from _MaxElement to be clearer.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
2d30dafaddc2e50697bd1b55235fd45fd08d09fd 22-May-2009 Brian Paul <brianp@vmware.com> mesa: fix warning message in vbo_exec_DrawRangeElements()
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
8e3f6c0f96eb22198ec436990acc85d44aca7d8e 22-May-2009 Brian Paul <brianp@vmware.com> mesa: use Elements() for loop limit
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
4a95185c9f30c2de7a03bb1a0653f51b53b1111d 22-May-2009 Brian Paul <brianp@vmware.com> mesa: rename MAX_VERTEX_ATTRIBS to MAX_VERTEX_GENERIC_ATTRIBS

Be clearer that this is the number of generic vertex program/shader
attributes, not counting the legacy attributes (pos, normal, color, etc).
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
8b91778f46bf7f48efacf5f14d3cc9023a1986ae 22-May-2009 Brian Paul <brianp@vmware.com> vbo: fix build breakage...oops
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
3bfe312d0136c95b2a8518d65fa32c89ed474987 22-May-2009 Brian Paul <brianp@vmware.com> vbo: comments, whitespace clean-ups
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
7e2fb129816df48a103da3e4e6937530bd86cac8 22-May-2009 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_5_branch'
8da09e6924ca22ba7951d5a7673dfab2a711a997 22-May-2009 Brian Paul <brianp@vmware.com> vbo: fix incorrect loop limit in bind_array_obj()

The generic_array[] is 16 elements in size, but the loop was doing 32
iterations. The out of bounds array write was clobbering the following
inputs[] array but as luck would have it, that didn't matter.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
d4fb7615b5a9c514d48fc78a01c52cb721b889c6 22-May-2009 Brian Paul <brianp@vmware.com> mesa: use MAX_ values instead of literals
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
8fa0cb2b422abaeee1b69f82ca7e9f02dc8393b9 21-May-2009 Brian Paul <brianp@vmware.com> mesa: added gl_array_object::Weight array field

We don't really implement vertex weights but in the VBO code this
fixes and odd case for the legacy_array[] setup. Before, the
vbo->draw_prims() call was always indicating that the vertex weight
array was present/enabled when it really wasn't.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
a185bcbdec856cc98c26098e4e447a683eed14d1 14-May-2009 Brian Paul <brianp@vmware.com> mesa: move gl_array_attrib::_MaxElement to gl_array_object::_MaxElement

This value is per array object.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
899c524a49fe5dc7413656380ebd65bbd061c042 14-May-2009 Brian Paul <brianp@vmware.com> vbo: s/8/MAX_TEXTURE_COORD_UNITS/
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
f37cccde3c2f4d63ba45be5b50b2358eb8ef98b4 07-May-2009 Brian Paul <brianp@vmware.com> vbo: in glDraw[Range]Element() code, check for out of bounds indexes

No-op the bad drawing command rather than go out of bounds and render
garbage. Print a warning to alert the developer to the bad drawing call.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
2e798e4b7e5956dbf3c7fde18f408b5d4c1b151c 07-Mar-2009 Brian Paul <brianp@vmware.com> vbo: make bind_array_obj() code a little more concise
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
a3b7db0326337117ccdea526818040d2c24d83b4 03-Mar-2009 Brian Paul <brianp@vmware.com> mesa: save some useful VBO debug/dump code (disabled)
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.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_exec_array.c
026e7731e549e0777c010348460fd48b3d75a843 25-Aug-2008 Keith Whitwell <keith@tungstengraphics.com> vbo: seed initial max_element value with a more likely candidate
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
d378f7b3dfda3b549e4b02380e492671cc34bb59 25-Jun-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: point size arrays
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
feb722fa98f04a4487b7ec4746bcc8c7296899c8 05-Jun-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: added _mesa_DrawArrays, DrawElements, DrawRangeElements() wrappers for VBO funcs
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
53174afeeb68a79e471185cb463c13ff90af698f 31-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> mesa: Apply MSVC portability fixes from Alan Hourihane.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
d758479b9fbff803bdac15f3f39d32ef9064db71 11-Apr-2008 Brian Paul <brian.paul@tungstengraphics.com> mesa: Fix glBegin-time test for invalid programs/shaders.

Cherry-picked from master.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.c
7d8ed0f5f5960a492734cb415b8a85ef4ad79846 14-Feb-2007 Roland Scheidegger <sroland@tungstengraphics.com> fix typo preventing generic arrays from working with ARB_vp (bug #9952)
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
fcccf8943213a20957f305161e8aae7fef55baab 09-Feb-2007 Zou Nan hai <nanhai.zou@intel.com> array overflow fix
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
893526b8a823fe1b88f2b46376155afb91c84016 30-Jan-2007 Keith Whitwell <keith@tungstengraphics.com> Use new rebase helper. Remove other rebase code.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
38e9f8b6f297bafba639ce192fc9926c8e890271 25-Jan-2007 Roland Scheidegger <sroland@tungstengraphics.com> do not rebase index buffers as it does not work currently (tested with r200 and sw mesa)
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
2cb3594af9cd1434aa2c408cd6f8d51bcd12e8ea 18-Jan-2007 Aapo Tahkola <aapo@aapo-desktop.(none)> Fix invalid enums passed to MapBuffer
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
584def75ad8dd13add5b4ed7e364d13202539539 15-Jan-2007 Keith Whitwell <keith@tungstengraphics.com> Remove unused index buffer.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
2421b25dd777ebfd614ae45907fd4af8c2713102 15-Jan-2007 Keith Whitwell <keith@tungstengraphics.com> Remove special-case handling for index and edgeflag

This isn't required with the changes to core mesa and the new
attribute layout.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
c3da1501b81a31e92f485ee9fbd99e60cc3a4337 03-Nov-2006 Roland Scheidegger <rscheidegger@gmx.ch> need to call bind_arrays() in vbo_exec_DrawRangeElements.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
01e238e5d51dabd28646356de825aa43a7290373 02-Nov-2006 Keith Whitwell <keith@tungstengraphics.com> Fix typo in last commit
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
301acdf34ad01315f41c14638d92aa7fe0c2d2dc 02-Nov-2006 Keith Whitwell <keith@tungstengraphics.com> Similarly, fill in missing input slots in the vertex-array +
NV_vertex_program path.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.c
5a652f595716a82ebd79e33011f6082199c4b0d0 02-Nov-2006 Keith Whitwell <keith@tungstengraphics.com> Fill in missing input slots in the vertex-array + no-vertex-program
path.
/external/mesa3d/src/mesa/vbo/vbo_exec_array.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_exec_array.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_exec_array.c